33
PROCESSO UNIFICADO 1 Oliveira

PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

Embed Size (px)

Citation preview

Page 1: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a 1

PROCESSO UNIFICADO

Page 2: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

2

ObjetivosDiscutir a necessidade de um

processo “padrão”Apresentar um subconjunto do

Processo Unificado.Simular a execução do processo

Page 3: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

3

Motivação

Page 4: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

4

ProcessosÉ 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

Page 5: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

5

Processo UnificadoProcesso Iterativo e IncrementalOrientado a Casos de UsoDefine um conjunto de

◦Atividades – o que fazer◦Papéis – que participa◦Artefatos – quais dados são

necessários◦Workflows – organização das

atividades

Page 6: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

UP - Resumo

6

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çãoConcepção Construção

Page 7: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

7

Fases e DisciplinasOrganizam 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.

Page 8: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

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.

Page 9: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

9

DisciplinasAnálise de NegócioRequisitosAnálise e ProjetoImplementaçãoTestesEntregaGerenciamento de MudançasAmbienteGerenriamento de Projeto

Page 10: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

10

UP & Cronograma

From Larman

Page 11: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

11

Iterativo e IncrementalNo 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.

Page 12: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a 12

Experimentando........

Page 13: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

13

Um Processo Unificado*

* Tipicamente processos são específicos para um projeto

Page 14: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

14

Uma Sequência

Page 15: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

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.

15

Page 16: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Concepção/ElaboraçãoModelo de Casos de Uso

(Funcional)◦Diagrama de Caso de Uso◦Especificação de Casos de Uso

Modelo de Classes (Estrutural)◦Classes de Análise

16

Page 17: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Diagrama de Caso de Uso

17

Especifica os atores que interagem com o sistemaEspecifica quais funções cada ator tem “acesso”

Page 18: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Especificação de Caso de UsoTexto 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.

18

Page 19: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

ExemploUC: Arremessar DadosAtores : JogadorPré-condição : jogo inicializadoPós-condição : vencedor é

conhecido

19

Ator Sistema

Solicita Arremesso de dados Simula Arremesso

Apresenta resultados

Page 20: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

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?

20

Ator Sistema

Seleciona Menu Arremesso de dados

Simula Arremesso

Apresenta resultados

Page 21: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

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

21

Page 22: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Diagrama de ClassesEstamos 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.

24

Page 23: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Classes – Modelo Conceitual

25

Especifica conceitos, seus atributos e relacionamentosÉ parte da fase de Análise

Page 24: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

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,......

26

Page 25: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Descobrindo ClassesDestacando 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

27

Page 26: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Descobrindo OperaçõesCRC

Cenários de Execução

28

Page 27: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Cenário - Iniciar Jogo

29

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)

Page 28: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Cenário – ArremessarDados

30

Page 29: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Classes – Modelo de ProjetoAs classes de projeto refinam as

classes descobertas na análise.Adicionam operaçõesVerificam Boas Práticas de

Modelagem◦Coesão, Acoplamento, Reuso

Se conectam com a plataforma de execução◦Hibernate, J2EE, .NET

31

Page 30: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Classes de Projeto

32

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

Page 31: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

Código

public class Dado {

private int resultado;

protected void Randomize() {

// your code here }

public void Arremessa() {

// your code here } }

public class Jogo {public Dado dado;public Dado dado_1;

public void ApresentaResultado() {

// your code here }

public void ZerarSoma() {

// your code here } } 33

Page 32: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

34

ResumindoO 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.

Page 33: PROCESSO UNIFICADO 1 PRISMA@COPPE/UFRJ - Toacy C. de Oliveira

PR

ISM

A@

CO

PPE/U

FR

J -

Toacy

C.

de O

liveir

a

35

Mais informações...Openup

◦http://epf.eclipse.org/wikis/openup/

UpEDU◦http://www.upedu.org/