Este artigo procura apresentar conceitos de padrões evidenciando suas vantagens e desvantagens inerentes à sua aplicação no desenvolvimento de software orientado a objetos. Os processos de desenvolvimento de software organizam e controlam a produção de software, enquanto os padrões fornecem boas soluções para problemas encontrados em diversas atividades do desenvolvimento. A utilização combinada desses recursos pode ser uma importante ferramenta para fornecer qualidade ao produto final.
Em que situação o tema é útil:
Na adoção de padrões em um processo de desenvolvimento de software e na geração de alternativas para se identificar quais tipos de padrões podem ser úteis em determinadas fases do processo, podendo ajudar a antecipar a solução de alguns problemas por meio da sua utilização.
Resumo DevMan:
Um padrão descreve um problema que ocorre inúmeras vezes dentro de um contexto e apresenta a solução para esse problema, de modo que esta possa ser utilizada em diversas situações. Padrões de projeto podem ser vistos como uma solução que já foi testada para um problema. Desta forma, ele descreve uma solução ou uma instância da solução que pode ser utilizada para resolver um problema específico.Assim, este artigo apresenta uma visão geral de padrões de projeto de diferentes áreas que podem ajudar a resolver problemas relacionados com a concepção e o desenvolvimento de software.
O processo de desenvolvimento de software ao longo dos anos adquiriu um grau de profissionalismo digno e característico de engenharia. Grande parte desse profissionalismo é devido à maturidade adquirida pela Engenharia de Software e da crescente complexidade dos sistemas de software que foram envolvidos como elementos ativos em tarefas críticas na indústria, medicina, setores financeiros, controle de aeronaves, e assim por diante.
A qualidade e a confiabilidade de grandes sistemas de software estão entre os mais comuns temas nas na área de Tecnologia da Informação. Organizações, tanto públicas como privadas, têm investido grandes somas em pesquisas para desenvolver metodologias para a produção de software de qualidade e confiabilidade. No entanto, muitas pessoas permanecem insatisfeitas com o progresso desta área ao longo da última década.
As metodologias atualmente empregadas para a produção de “software de qualidade” são baseadas na noção de que a qualidade está fortemente relacionada com o rigor nas especificações e textos que são concebidos ao longo do processo de projeto de software. Segundo essa visão, a qualidade será alcançada quando o software for produzido por um processo que consista em quatro etapas: obter uma clara e abrangente declaração de requisitos; construir uma especificação formal dos requisitos; derivar os programas a partir da especificação; e demonstrar de forma convincente que o programa implementado atende à especificação.
A exigência por parte dos usuários, junto com a complexidade do software, faz com que o processo utilizado para o seu desenvolvimento deva ser minuciosamente analisado e rigorosamente padronizado, de modo a assegurar um ambiente seguro e confiável para garantir a qualidade do produto final.
Esta situação e a necessidade de se contar com processos seguros para o desenvolvimento de software proporcionaram organizações e instituições acadêmicas de nível internacional a trabalhar na definição de um modelo conceitual que satisfaça a demanda de qualidade de software.
...