Post on 18-Apr-2015
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a 1
PROCESSO UNIFICADO
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
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a
3
Motivação
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
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
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
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.
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.
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
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a
10
UP & Cronograma
From Larman
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.
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a 12
Experimentando........
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
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a
14
Uma Sequência
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
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
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”
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
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
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
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
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
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
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
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
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a
Descobrindo OperaçõesCRC
Cenários de Execução
28
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)
PR
ISM
A@
CO
PPE/U
FR
J -
Toacy
C.
de O
liveir
a
Cenário – ArremessarDados
30
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
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)
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
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.
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/