O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Projeto de software

680 visualizações

Publicada em

Projeto de software

Publicada em: Software
  • Seja o primeiro a comentar

Projeto de software

  1. 1. Prof. Marcelo H. Yamaguti (1) Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Prof. Marcelo H. Yamaguti Introdução à Engenharia de Software DESENVOLVIMENTO DE SOFTWARE Projeto e Arquitetura de Software
  2. 2. PUCRS - FACIN Prof. Marcelo H. Yamaguti (2) Referências • Estude para aprofundamento no conteúdo: – SOMMERVILLE, Ian. Engenharia de Software. 9ª ed. São Paulo: Pearson, 2011. – Capítulo 7 – PFLEEGER, Shari Lawrence. Engenharia de Software: teoria e prática. 2ª ed. São Paulo: Prentice-Hall, 2004. - Capítulo 5 – IEEE. Guide to the Software Engineering Body of Knowledge. SWEBOK. Version 3. IEEE Computer Society. 2014. – Chapter 2 – GAMMA, Erich; HELM, Richard; JOHNSON, Ralph; VLISSIDES, John. Design patterns: elements for reusable object-oriented software. Reading: Addison-Wesley, 1994. Introdução à Engenharia de Software
  3. 3. PUCRS - FACIN Prof. Marcelo H. Yamaguti (3) Projeto e Arquitetura • Projeto: – Preliminar: foco no projeto da arquitetura do software. – Detalhado: foco no projeto dos componentes (módulos) de software. Projeto preliminar Introdução à Engenharia de Software Análise Especificação de requisitos Arquitetura O QUE COMO Projeto detalhado Componentes COMO
  4. 4. PUCRS - FACIN Prof. Marcelo H. Yamaguti (4) Projeto detalhado • O projeto detalhado visa especificar os componentes (módulos) a serem implementados. • Os módulos são derivados da arquitetura do software definida e representam unidades independentes que possuem uma funcionalidade bem definida e que (idealmente) podem ser reutilizáveis. • No projeto de módulos há diretrizes que devem ser observadas, como por exemplo: – Acoplamento: mede o grau de interdependência entre os módulos. – Coesão: mede o grau de ligação dos elementos internos de um módulo. Introdução à Engenharia de Software
  5. 5. PUCRS - FACIN Prof. Marcelo H. Yamaguti (5) Projeto detalhado • Estratégias de detalhamento do projeto: – Projeto funcional – Projeto orientado a objetos – Projeto centrado em estrutura de dados – Projeto baseado em componentes Introdução à Engenharia de Software
  6. 6. PUCRS - FACIN Prof. Marcelo H. Yamaguti (6) Padrões de projeto • Semelhante aos padrões de arquitetura, no nível do projeto de componentes há diversos padrões de projeto que servem para uniformizar a especificação de componentes. • O catálogo mais conhecido são os design patterns (padrões de projeto) propostos por Erich Gamma. Introdução à Engenharia de Software
  7. 7. PUCRS - FACIN Prof. Marcelo H. Yamaguti (7) Padrões de projeto Introdução à Engenharia de Software
  8. 8. PUCRS - FACIN Prof. Marcelo H. Yamaguti (8) Especificação do projeto • A modelagem do projeto pode gerar especificações: – Textuais – Gráficas (ex.: UML) • Estas especificações podem ser agrupadas em dois grandes grupos. – Descrições de estrutura: • Ex.: Linguagens de descrição (ex.: ADL – Architectural Description Languages) • Ex.: UML – diagramas de estrutura – Descrições de comportamento: • Ex.: UML – diagramas de comportamento Introdução à Engenharia de Software
  9. 9. Prof. Marcelo H. Yamaguti (9) Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Prof. Marcelo H. Yamaguti Introdução à Engenharia de Software DESENVOLVIMENTO DE SOFTWARE Projeto e Arquitetura de Software

×