Post on 18-Apr-2015
conceitos e princípios de design 1
Conceitos e Princípios de Design
“Design é o processo de aplicar várias técnicas e princípios com o propósito de definir um dispositivo, processo ou sistema em detalhes suficientes para permitir a sua construção física”
conceitos e princípios de design 2
Transformação do modelo de análise em design:
conceitos e princípios de design 3
O processo de design Um bom projeto:
O Design deve implementar todos os requisitos explícitos do modelo de análise e os requerimentos implícitos
Deve ser legível e inteligível por todos que irão implementar, testar e manter
Deve prover uma figura completa do software (domínios de dados, funcional e comportamento)
conceitos e princípios de design 4
Evolução do design de software:
Programação modular (Dennis 73)Refinamento top-down (Wirth 71)Programação estruturada (Dahl Mills
72)Data flow design (Steven 74)Data structure design (Jackson75)(Orientação a Objetos)
conceitos e princípios de design 5
Princípios de design
O processo de design não deve sofrer de “efeito túnel”
Deve ser auditável desde o modelo de análiseNão reinventar a rodaDiminuir a distância entre o software e o
problemaExibir uniformidade e integração
conceitos e princípios de design 6
(cont ...)
Deve acomodar mudançasdegradar suavementenão é codificaçãovisar qualidade por construçãodeve ser revisado visando minimizar
erros conceituais
conceitos e princípios de design 7
Conceitos de design
Abstração abstração de procedimentos abstração de dados
Refinamento top-down
conceitos e princípios de design 8
(cont ....)
Modularidade
Número de módulos
Cus
to o
u es
forç
o
Custo de integração
Custo pormódulo
Custo total
conceitos e princípios de design 9
(cont ...)
Arquitetura de software
Fan-out
Fan-in
altura
largura
conceitos e princípios de design 10
(cont ...)
Hierarquia de controleParticionamento estrutural
horizontal
vertical
Função 1 Função 3
conceitos e princípios de design 11
(cont ...)
Estrutura de dadosProcedure de software
conceitos e princípios de design 12
(cont ...)
Proteção da informação (information hiding)
conceitos e princípios de design 13
Design Modular Efetivo
Independência funcionalCoesão
Coincidental lógico temporal procedural comunicacional sequencial funcional
conceitos e princípios de design 14
acoplamento
Sem acoplamentoacoplamento por dadosacoplamento por estampaacoplamento de controleacoplamento externoacoplamento por área comumacoplamento de conteúdo