A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Processo Unificado PRISMA@COPPE/UFRJ - Toacy C. de Oliveira.

Apresentações semelhantes


Apresentação em tema: "Processo Unificado PRISMA@COPPE/UFRJ - Toacy C. de Oliveira."— Transcrição da apresentação:

1 Processo Unificado - Toacy C. de Oliveira

2 Objetivos Discutir a necessidade de um processo “padrão”
Apresentar um subconjunto do Processo Unificado. Simular a execução do processo - Toacy C. de Oliveira

3 Motivação - Toacy C. de Oliveira

4 Processos —Grady Booch
É necessário adotar um processo de desenvolvimento para manter a execução das atividades em um fluxo coerente. People are more important than any process. Good people with a good process will outperform good people with no process every time. —Grady Booch - Toacy C. de Oliveira

5 Processo Unificado Processo Iterativo e Incremental
Orientado a Casos de Uso Define um conjunto de Atividades – o que fazer Papéis – que participa Artefatos – quais dados são necessários Workflows – organização das atividades - Toacy C. de Oliveira

6 Iteração(ões) Preliminar(es)
UP - Resumo Iteração(ões) Preliminar(es) Iter. #1 Fases Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Gerenciamento de Projeto Ambiente Modelagem do Negócio Implementação Teste Análise e Projeto Disciplinas do Processo Disciplinas do Suporte Entrega Gerenciamento de Alterações e Configuração Requisitos Elaboração Transição Concepção Construção A melhor forma de apresentar como análise e projeto funcionam é através de um exemplo prático/teórico. O UP se apresenta coma uma ferramenta importante para dar diretrizes para o processo de Análise -> Projeto - Toacy C. de Oliveira

7 Fases e Disciplinas Organizam o trabalho em blocos lógicos
Fases – Identificam o momento dentro do ciclo-de-vida. Disciplinas – Identificam quais elementos de processo são usados para resolver um problema específico dentro do ciclo-de-vida. - Toacy C. de Oliveira

8 Fases Concepção: estabelece o caso de negócio para o sistema e delimita o escopo do projeto. Elaboração: envolve a análise do domínio do problema e a especificação da arquitetura do sistema. Construção: envolve a elaboração do software a partir de arquitetura em um produto completo para utilização pelos usuários. Transição: viabiliza que o software possa ser utilizado pelos usuários. - Toacy C. de Oliveira

9 Disciplinas Análise de Negócio Requisitos Análise e Projeto
Implementação Testes Entrega Gerenciamento de Mudanças Ambiente Gerenriamento de Projeto - Toacy C. de Oliveira

10 UP & Cronograma - Toacy C. de Oliveira From Larman

11 Iterativo e Incremental
No contexto do ciclo de vida de desenvolvimento de um software: Iterativo: processo que envolve o gerenciamento de uma seqüência de versões executáveis. Cada iteração pode ser vista como um mini-projeto, envolvendo um ciclo completo de desenvolvimento, resultando em uma versão de um produto executável. Incremental: processo que envolve a integração contínua da arquitetura do sistema para a produção de novas versões do sistema, onde cada nova versão incorpora aperfeiçoamentos incrementais em relação a anterior pela incorporação do produto resultante da última iteração. - Toacy C. de Oliveira

12 Experimentando - Toacy C. de Oliveira

13 Um Processo Unificado*
- Toacy C. de Oliveira * Tipicamente processos são específicos para um projeto

14 Uma Sequência - Toacy C. de Oliveira

15 O Problema (Documento de Visão)
Este projeto tem como objetivo implementar um sistema que simula um jogo de dados. O jogo começa quando o jogador arremessa dois dados. Caso a soma das faces dos dados seja 7, o jogador é vencedor, caso contrário é perdedor. Os dados possuem 6 lados e em cada lado há um número de 1 a 6 (sem repetições) REQ01: O Jogador pode iniciar um jogo novo REQ02: O Jogador arremessa os dados. REQ Não Funcionais: O sistema deverá ser desenvolvido utilizando linha de comando, ou seja, não há interface gráfica. - Toacy C. de Oliveira

16 Concepção/Elaboração
Modelo de Casos de Uso (Funcional) Diagrama de Caso de Uso Especificação de Casos de Uso Modelo de Classes (Estrutural) Classes de Análise Modelos são de extrema importância dentro do processo unificado - Toacy C. de Oliveira

17 Diagrama de Caso de Uso Especifica os atores que interagem com o sistema Especifica quais funções cada ator tem “acesso” - Toacy C. de Oliveira

18 Especificação de Caso de Uso
Texto estruturado que detalha um Caso de Uso em específico. Contém Nome do Caso de Uso Atores Envolvidos Lista com pré e pós condições para a execução do Caso de Uso Fluxos básicos e alternativos, com os passos executados pelo ator e pelo sistema. - Toacy C. de Oliveira

19 Exemplo UC: Arremessar Dados Atores : Jogador
Pré-condição : jogo inicializado Pós-condição : vencedor é conhecido Ator Sistema Solicita Arremesso de dados Simula Arremesso Apresenta resultados - Toacy C. de Oliveira

20 Importante!!!!! Como o Caso de Uso é um modelo da fase de análise não é desejável atrelá-lo a uma plataforma de execução. Quem disse que o sistema tem menu??? Será que não dá para fazer a mesma função via comando de voz? Ator Sistema Seleciona Menu Arremesso de dados Simula Arremesso Apresenta resultados - Toacy C. de Oliveira

21 Como achar Casos de Uso/Atores
Analisar Requisitos Funcionais Dica: Analisar os verbos e sujeitos presentes na especificação. Procurar ações que o sistema faz e que são perceptíveis para um elemento externo(atores). Imprimir Texto, Pagar com Cartão de Crédito, Fazer Empréstimo, etc Procurar quem dispara as ações Gerente Faz Empréstimo, Cliente Paga com Cartão, etc - Toacy C. de Oliveira

22 Atividade – Iniciar Jogo
- Toacy C. de Oliveira

23 Atividade – Arremessar Dados
- Toacy C. de Oliveira

24 Diagrama de Classes Estamos usando o Processo Unificado como referência, ou seja, a abstração utilizada na implementação será orientada a objetos. Casos de Uso organizam funções, mas não ressaltam os conceitos e relacionamentos importantes para o sistema. Classes expressam conceitos e seus relacionamentos. - Toacy C. de Oliveira

25 Classes – Modelo Conceitual
Especifica conceitos, seus atributos e relacionamentos É parte da fase de Análise Reparem como este diagrama organiza as idéias de forma a torná-las mais “digeríveis” para o mundo computacional. Classes representam conceitos importantes no sistema. Elas contêm atributos (variáveis)e métodos (operações) e pode se relacionar com outras classes através de herança, composição associação ou dependência. - Toacy C. de Oliveira

26 Importante!!! Classes de Análise não especificam operações. Estas entram no início do projeto. Não há metodos Classes de Análise também não especificam conceitos da plataforma de execução. Menu, Banco de Dados,...... Ressaltar MDA - Toacy C. de Oliveira

27 Descobrindo Classes Destacando COISAS no texto de requisitos
REQ01: O Jogador pode iniciar um jogo novo REQ02: O Jogador arremessa os dados Cartões CRC Class – Responsability - Collaboration Experiência é importante pois não há abordagem automática Analisadores Léxicos - Toacy C. de Oliveira

28 Descobrindo Operações
CRC Cenários de Execução - Toacy C. de Oliveira

29 Cenário - Iniciar Jogo Utiliza o Diagrama de Sequencia da UML para simular a execução de um Caso de Uso, distribuindo as funcionalidades pelas classes especificadas anteriormente (Classes de Análise) Ut - Toacy C. de Oliveira

30 Cenário – ArremessarDados
- Toacy C. de Oliveira

31 Classes – Modelo de Projeto
As classes de projeto refinam as classes descobertas na análise. Adicionam operações Verificam Boas Práticas de Modelagem Coesão, Acoplamento, Reuso Se conectam com a plataforma de execução Hibernate, J2EE, .NET - Toacy C. de Oliveira

32 Classes de Projeto A Classe jogador foi eliminada -> Não há necessidade durante execução Os relacionamentos foram direcionados -> Assim o acoplamento é diminuído. As operações apareceram (vieram do diagrama de sequencia) - Toacy C. de Oliveira

33 Código public class Dado { private int resultado; protected void Randomize() { // your code here } public void Arremessa() { public class Jogo { public Dado dado; public Dado dado_1; public void ApresentaResultado() { // your code here } public void ZerarSoma() { - Toacy C. de Oliveira

34 Resumindo O Processo utilizado
....foi capaz de capturar as informações necessárias para a implementação do sistema eu questão. ..facilitou o entendimento pois organizou as atividades de “raciocínio” em uma sequência. Os conceitos capturados estão claramente presentes em vários modelos e é possível rastreá-los. - Toacy C. de Oliveira

35 Mais informações... Openup UpEDU http://epf.eclipse.org/wikis/openup/
- Toacy C. de Oliveira


Carregar ppt "Processo Unificado PRISMA@COPPE/UFRJ - Toacy C. de Oliveira."

Apresentações semelhantes


Anúncios Google