Escolar Documentos
Profissional Documentos
Cultura Documentos
DÚVIDAS E ORIENTAÇÕES
Segunda a Sexta das 09:00 as 18:00
ATENDIMENTO AO ALUNO
editorafamart@famart.edu.br
3
Sumário
Design de Software
Para evitar tal risco, a prática comum de qualquer engenharia para se construir
um artefato complexo, um sistema de software complexo em nosso caso, é construí-
lo de acordo com um plano. Em outras palavras, projetar o sistema antes de construí-
lo. O resultado dessa atividade, também conhecida como de atividade de design, é
também chamado de design. O design facilita duas atividades que são essenciais no
ciclo de vida de um sistema de software. Primeiro, ele possibilita a avaliação do
sistema contra seus objetivos antes mesmo dele ser construído. Dessa maneira, ele
aumenta a confiança de que o sistema construído, se de acordo com o design,
alcançará seus objetivos. Obviamente, uma vez que nesse ponto há apenas o modelo
do sistema – o design –, a avaliação não será completa, mas isso também não quer
dizer que ela não ofereça resultados importantes que levem ao sucesso do sistema.
Já a outra atividade beneficiada pelo design é a própria construção do sistema, dado
que ele também serve como guia para a implementação do software.
Exemplo
Por fim, citamos uma definição de design que engloba todos estes aspectos:
Objetivos
Restrições
O produto de design deve ser viável. Dessa maneira, restrições são as regras,
requisitos, relações, convenções, ou princípios que definem o contexto do processo
de design, de forma que seu produto seja viável.
14
Representações
design se torna peça fundamental para se entender quais decisões passadas levaram
ao estado atual do design e, consequentemente, do sistema.
Soluções
para problemas complexos, objetivos são descritos num alto-nível de abstração que
dificulta ou impossibilita bastante a avaliação das soluções.
E, por fim, a maioria dos problemas de design aceita diversas soluções. Isso é
algo natural a problemas de design: uma vez que diversas alternativas podem ser
geradas a partir de um único problema de design, diversas soluções podem ser
obtidas.
Divisão e Conquista
Abstração
Encapsulamento
Modularização
Separação de preocupações
Acoplamento e coesão
Referências