Fase de Elaboração: Fluxo de Análise
description
Transcript of Fase de Elaboração: Fluxo de Análise
![Page 1: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/1.jpg)
Fase de Elaboração:Fluxo de Análise
Análise de Sistemas de Software
Prof. Rodrigo Ribeiro
![Page 2: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/2.jpg)
Princípios Objetivos do fluxo de análise
Modelar de maneira precisa o problemaVerificar a qualidade dos requisitosDetalhar os requisitos a um nível adequado...
Para a construção do modelo de desenho Elaboração de testes de aceitação e de integração
Produto do fluxo de análise MASw – Modelo de análise de software
![Page 3: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/3.jpg)
Atividades
![Page 4: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/4.jpg)
Atividades Detalhes das Atividades
Identificação das classes Como? Substantivos nos casos de uso Deve-se observar
Eliminar aspectos de implementação Resolver ambigüidades Considerar expressões equivalentes a substantivos Considerar substantivos que não são classes, mas objetos
Técnica útil Uso de Cartões CRC
Classes-Responsabilidades-Colaborações
![Page 5: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/5.jpg)
Atividades Exemplo
1. O caixeiro faz a abertura de venda
2. O caixeiro registra os itens vendidos informando a identificação e quantidade do item.
3. O Merci totaliza a venda para o cliente
Substantivos descobertos Abertura, venda, identificação, item vendido,
quantidade, cliente, venda.
![Page 6: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/6.jpg)
Atividades Analisar se substantivos são classes...
Abertura operação Venda classe Item vendido classe
ItemDeVenda
Identificação atributo de item de venda Quantidade atributo de item de venda Etc...
Como saber o que é classe? Não existe um método formal para isso
Vale o bom senso!
![Page 7: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/7.jpg)
Atividades Detalhes das atividades
Especificação das classes Escolher um bom nome Documentação de cada classe
Definição concisa da classe Lista de responsabilidades e colaborações Lista de regras e restrições aplicáveis Possíveis exemplos
Mais... Operações e atributos necessários Relacionamentos
![Page 8: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/8.jpg)
Atividades Descrição de classes
Descrição Informação relativa a um item de venda
Responsabilidades Comandar baixa no estoque Calcular impostos Imprimir linha em ticket fiscal
Colaborações Venda, Mercadoria
![Page 9: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/9.jpg)
Atividades Descrição de classes (continuação...)
Regras e restrições Cada item de venda linha do ticket fiscal Todo item de venda mercadoria em estoque
Exemplos 5 latas de extrato de tomate 12 latas de cerveja
Função da documentação A partir desta pode-se inferir problemas com
classes
![Page 10: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/10.jpg)
Atividades Alguns problemas...
Documentação parecida Solução: Combinar classes
Documentação longa Solução: Dividir a classe
Difícil documentação da classe Analisar mais!
Refatoração (Refactoring) Extrair classe, mover método / atributo, internalizar
classe...
![Page 11: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/11.jpg)
Atividades Organização das classes
Pacotes lógicosEstereótipos
Jacobson propõe a divisão de classes em...Entidades: Estereótipo <<entity>>Fronteira: Estereótipo <<boundary>>Controle: Estereótipo <<control>>
Identificação de relacionamentosAssociações, Agregações, ComposiçõesClasse de associação, uso de qualificador.
![Page 12: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/12.jpg)
Atividades Realizações de casos de uso
Uso de diagramas de interação Seqüência e colaboração
Identificação das operaçõesCada mensagem em um diagrama...
Deve se tornar uma operação em uma classe
Como identificar operações? Através das responsabilidades de uma classe...
No modelo de análise... Não é necessário especificar argumentos...
![Page 13: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/13.jpg)
Atividades Identificação de atributos
Só listar atributos necessários Relevantes para o domínio do problema Representam componentes de GUI Evitar os que são necessários para implementação
Definição de hierarquia de herança Revisão da análise
Verificação da MASw e ERSw
![Page 14: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/14.jpg)
Atividades Validação
Deve incluir Casos uso são completamente realizados? É possível obter dados da GUI?
A análise continua até... Todas as classes possuam todas operações Compreensão de cada operação
Fim da análise Todos os componentes de classes identificados
Atributos e operações realizam todos os casos de uso
![Page 15: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/15.jpg)
Técnicas Oficinas de detalhamento de requisitos
Personalização Preparação das instalações Treinamento
Quanto à prática de oficinas de requisitos UML
Preparação de software para Apresentação e edição de requisitos Ferramentas de modelagem O.O. Ferramentas para prototipagem rápida
![Page 16: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/16.jpg)
Técnicas Oficinas de detalhamento de requisitos
Sessões Identificação dos grupos de dados Identificação dos relacionamentos entre dados Detalhamento de interfaces gráficas Detalhamento de casos de usos – fluxos e sub-fluxos Elaboração de casos de uso – diagramas de interação
Fechamento MASw completo ERSw completa e revisada incluindo MASw Protótipos
![Page 17: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/17.jpg)
Técnicas Documentação da Análise
Diagramas de interação Somente necessário para fluxos complexos
Diagramas de classes Incluir um diagrama que mostre “grupos”
E relações entre esses grupos
Mostrar um diagrama de classes coesas... Para realizar um caso de uso complexo
Mostrar hierarquias de... Agregação e herança.
![Page 18: Fase de Elaboração: Fluxo de Análise](https://reader036.fdocumentos.com/reader036/viewer/2022082506/56814e44550346895dbbbc79/html5/thumbnails/18.jpg)
Finalmente...
Dicas para um bom MASw e ERSw...Cáp. 14 – Seção 3
Mostra como é feita um revisão destes artefatos Seguindo este roteiro de revisão...
Pode-se evitar problemas comuns E realizar um bom trabalho!