rup: fluxo de análise e projeto aspectos avançados em engenharia de software aula 4 fernanda...
TRANSCRIPT
![Page 1: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/1.jpg)
RUP: Fluxo de Análise e Projeto
Aspectos Avançados em Engenharia de Software
Aula 4
Fernanda Campos
![Page 2: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/2.jpg)
RUP – Fluxo de análise e projeto
Visão geral das • Atividades
• Responsáveis
• Artefatos
![Page 3: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/3.jpg)
O Fluxo de Análise e Projeto
Os objetivos do fluxo:
• Transformar os requisitos em um projeto (inicialmente
abstrato) do sistema
• Desenvolver uma arquitetura robusta
• Adaptar o projeto levando em consideração os requisitos
da futura implementação
Fonte: Rational
![Page 4: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/4.jpg)
Visão geral dos artefatos
Análise eprojeto
Modelo de análise e projeto
Documento daarquitetura
Modelo de caso de uso
Modelo de dadosDocumento requisitos
Glossário
Mapeamento das classes de análise em elementos de projeto
![Page 5: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/5.jpg)
Sobre os artefatos
A construção do modelo de análise e projeto é o principal objetivo deste fluxo de atividades
O modelo de análise e projeto contém as realizações de casos de uso
O mapeamento das classes de análise em classes de projeto é um artefato temporário do desenvolvimento
O documento da arquitetura é opcional e é usado para descrever em detalhes uma determinada arquitetura
A elaboração do modelo de dados está fora do escopo do curso,
mas pode conter, por exemplo, o mapeamento do modelo OO para o relacional
![Page 6: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/6.jpg)
Realização de Caso de Uso
Descreve como o caso de uso é realizado, associando o caso de uso com classes e outros elementos de projeto
Em UML, uma realização de caso de uso pode ser representada através de um conjunto de diagramas: • diagrama de classe
• diagramas de interação
• diagrama de seqüência
• diagrama de colaboração
![Page 7: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/7.jpg)
Modelo de análise e projeto
Diagramas de Sequência Diagramas de Colaboração
Diagramas de Classe
Artefato Modelo de Análise e Projeto
![Page 8: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/8.jpg)
Modelo de Análise e Projeto
Pode ser um só artefato• evoluindo de uma visão abstrata (nas
atividades de análise), para uma visão detalhada (nas atividades de projeto)
Podem ser feitos dois artefatos• um modelo de análise
• um modelo de projeto (inicia igual à última versão do modelo de análise e evolui independentemente)
![Page 9: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/9.jpg)
Análise X Projeto
Análise• Foco no problema
• Comportamento (caixa preta, sem detalhes de implementação)
• Estrutura do sistema
• Requisitos funcionais
• Modelo simples
Projeto• Foco em uma solução
• Operações e atributos
• Representação próxima do código
• Requisitos não funcionais (exemplo: desempenho), além dos funcionais
• Modelo complexo
Fonte: Rational
![Page 10: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/10.jpg)
Fluxo de Análise e Projeto Simplificado
Analisar caso de
usoProjetista
Projetista de banco de
dados
Revisar projeto
Projetar caso de
uso
Arquiteto
Revisor do projeto
Projetar base de dados
Projetar arquitetura
Projetar subsistema
Projetar classes
![Page 11: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/11.jpg)
AtividadeAnalisar Caso de Uso
![Page 12: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/12.jpg)
Analisar Caso de Uso
Analisar caso de usoProjetista
Projetista de banco de
dados
Revisar projeto
Projetar caso de
uso
Arquiteto
Revisor do projeto
Projetar base de dados
Projetar arquitetura
Projetar subsistema
Projetar classes
![Page 13: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/13.jpg)
Objetivos desta atividade
Encontrar classes de análise (fronteira, controle e entidade) e distribuir comportamento dos casos de uso entre estas (utilizando diagramas de seqüência e/ou colaboração)
Para cada classe, descrever suas responsabilidades, atributos e associações
Esta atividade é realizada para cada caso de uso!
![Page 14: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/14.jpg)
Visão geral dos artefatos
Modelo de análise e projeto
Documento daarquitetura
Modelo de caso de uso
Documento de requisitos
Glossário
Analisarcaso de uso
Realização de caso de uso
Classes de análise
Fonte: Rational
![Page 15: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/15.jpg)
Atividade Projetar Arquitetura
![Page 16: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/16.jpg)
Projetar Arquitetura
Analisar caso de usoProjetista
Projetista de banco de
dados
Revisar projeto
Projetar caso de
uso
Arquiteto
Revisor do projeto
Projetar base de dados
Projetar arquitetura
Projetar subsistema
Projetar classes
![Page 17: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/17.jpg)
Objetivos desta atividade
Avaliar o conjunto das classes de análise
Definir elementos de projeto (classes de projeto e subsistemas) e organizá-los em pacotes
Definir a estrutura da aplicaçãoNo final do projeto da arquitetura tudo deve estar pronto para que os projetistas possam detalhar as realizações dos casos de uso de maneira uniforme!
![Page 18: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/18.jpg)
Modelo de análise e projeto(classes de análise)
Projetar ArquiteturaDocumento
de requisitos
Modelo de casos de uso
Documento daarquitetura
Mapeamento das classes de análise em elementos de projeto
Modelo de análise e projeto(classes de projeto e
subsistemas)
Visão geral dos artefatos
![Page 19: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/19.jpg)
AtividadeProjetar Caso de Uso
![Page 20: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/20.jpg)
Projetar Caso de Uso
Analisar caso de usoProjetista
Projetista de banco de
dados
Revisar projeto
Projetar caso de
uso
Arquiteto
Revisor do projeto
Projetar base de dados
Projetar arquitetura
Projetar subsistema
Projetar classes
![Page 21: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/21.jpg)
Objetivos desta atividade
Refinar as realizações de casos de uso (elaboradas na análise de casos de uso) incluindo os elementos de projeto • Incorporando persistência nas realizações
O objetivo final é ter um modelo consistente que sirva de referência para a implementação do caso de uso
![Page 22: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/22.jpg)
Visão geral dos artefatos
Classes de projeto
ProjetarCaso de Uso
Caso de uso
Realização decaso de uso
Subsistemas de projetoDocumento derequisitos
Realização decaso de uso
Fonte: Rational
![Page 23: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/23.jpg)
AtividadeProjetar Subsistema
![Page 24: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/24.jpg)
Projetar Subsistema
Analisar caso de usoProjetista
Projetista de banco de
dados
Revisar projeto
Projetar caso de
uso
Arquiteto
Revisor do projeto
Projetar base de dados
Projetar arquitetura
Projetar subsistema
Projetar classes
![Page 25: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/25.jpg)
Objetivos desta atividade
Identificar elementos internos ao subsistema (classes e outros subsistemas) que realizem a interface do subsistema• O comportamento da interface deve ser distribuído entre
estes elementos, de forma análoga à análise e ao projeto de casos de uso
Este processo pode gerar novas dependências do subsistema com elementos externos
A atividade é realizada uma vez para cada subsistema, podendo ser recursiva (gerando outros subsistemas)
![Page 26: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/26.jpg)
Visão geral dos artefatos
Classes de projeto
Projeto de Subsistema
Realização de caso de uso
Subsistemas e e interfaces de projeto
Subsistemas e interfaces de projeto(atualizado)
Realização de caso de uso(atualizado)
Fonte: Rational
![Page 27: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/27.jpg)
Atividade Projetar Classes
![Page 28: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/28.jpg)
Projetar Classes
Analisar caso de usoProjetista
Projetista de banco de
dados
Revisar projeto
Projetar caso de
uso
Arquiteto
Revisor do projeto
Projetar base de dados
Projetar arquitetura
Projetar subsistema
Projetar classes
![Page 29: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/29.jpg)
Objetivos desta atividade
Detalhar a estrutura interna (atributos e operações) das classes de projeto
Identificar classes e relacionamentos adicionais Garantir que as classes fornecem o
comportamento necessário à realização dos casos de uso
Realizada para cada classe da iteração corrente
![Page 30: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/30.jpg)
Na prática...
Os passos desta atividade são realizados simultaneamente às atividades de projeto:
• projeto da arquitetura;
• projeto de casos de uso e
• projeto de subsistemas
Aqui o objetivo é rever o que foi feito, refinando e acrescentando detalhes
![Page 31: RUP: Fluxo de Análise e Projeto Aspectos Avançados em Engenharia de Software Aula 4 Fernanda Campos](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc118497959413d8c8ebc/html5/thumbnails/31.jpg)
Visão geral dos artefatos
Classes de projeto
Projetar classesRealização de casos de uso
Requisitos não funcionais
Classes de projeto
Modelo de análise e projeto