Buscar

Modulo2 aula3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Engenharia de Software2
Modulo 2 – aula 3
RUP (Rational Unified
Process)
Prof. André de Paula – Pós-graduando em Web e sistemas 
de informação e Docência do ensino superior
andrepns@gmail.com
Fluxo de Trabalho Simplificado
Toda disciplina do RUP deve ser analisada, personalizada e customizada de 
acordo com as necessidades particulares do projeto antes de sua 
implantação.
“Em um projeto com uma dimensão menor, não faz sentindo utilizar o 
framework do RUP puramente, pois este é genérico e complexo demais.”
Vamos visualizar um exemplo prático de um projeto com fluxo de trabalho 
simplificado. Digamos que iremos seguir as seguintes etapas:
1. Analisar Arquitetura
2. Analisar Caso de Uso
3. Projetar Classes
4. Projetar Banco de Dados
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
2
1. Analisar Arquitetura
• Realizar uma analise da arquitetura envolve:
• Arquitetura Inicial: Definir as principais partes do sistema, seus 
relacionamentos e quais padrões arquiteturais utilizar (ex.: MVC, em 
camadas, centralizado...)
• Segue um exemplo de arquitetura inicial
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
3
1. Analisar Arquitetura
Convenções de modelagem
• Desenvolver as convenções de modelagem, ou seja
• Que diagramas e elementos de modelagem utilizar,
• nomenclatura de casos de uso, componentes e classes
• Vamos analisar alguns exemplos de convenções de modelagem:
• Casos de uso devem ser nomeados como ações, ou seja com verbo (Cadastrar 
Cliente, Efetuar Transferência, Gerar Relatório de Efetividade, Solicitar Pedido de 
Compra);
• Cada realização de caso de uso deve conter um diagrama de classes e no mínimo um 
diagrama de sequência representando o fluxo principal de ações.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
4
1. Analisar Arquitetura
Mecanismos de análise
• Identificar os mecanismos de análise focando nos requisitos não-
funcionais do sistema e decisões estratégica sobre padrões, políticas e 
práticas a serem utilizadas no projeto.
• Vamos analisar alguns exemplos:
• Persistência;
• Comunicação;
• Gerenciamento de transações;
• Segurança.
Abstrações-chave
• Identificar Abstrações-chave definindo classes de análise preliminares, 
obtendo conhecimento do domínio, dos requisitos e outros artefatos 
(Glossário e modelo de negócio)
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
5
2. Analisar Caso de Uso/ 3. Projetar Classes
Objetivos:
• Identificar as classes que executam o fluxo de eventos do caso de uso;
• Distribuir o comportamento do caso de uso nestas classes;
• Identificar os seguintes elementos:
• Atributos;
• Responsabilidades
• Associações das classes;
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
6
2. Analisar Caso de Uso / 3. Projetar Classes
Passos para Analisar um caso de uso:
• Encontrar classes de análise;
• Distribuir comportamento entre as classes .
Vamos conhecer os passos para Analisar cada classe:
• Descrever responsabilidades;
• Descrever atributos e associações;
• Qualificar mecanismos de análise.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
7
2. Analisar Caso de Uso / 3. Projetar Classes
Passos para Analisar um caso de uso:
• Encontrar classes de análise;
• Distribuir comportamento entre as classes .
Vamos conhecer os passos para Analisar cada classe:
• Descrever responsabilidades;
• Descrever atributos e associações;
• Qualificar mecanismos de análise.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
8
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 1: Encontrar classes de análise
• O comportamento do caso de uso é distribuído em classes de análise.
• Classes de análise representam o conceito mais abstrato dos elementos do sistema e 
é o primeiro passo concreto até chegar em um sistema executável.
• Essas são convertidas para classes de projeto e servem para diminuir o gap entre os 
requisitos e projeto.
Podem ser dos seguintes tipos:
• Fronteira (<<limite>>)
• Controle (<<controle>>)
• Entidade (<<entidade>>)
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
9
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 1: Encontrar classes de análise
• Classes de Fronteira (<<limite>>)
• Intermediam a interface para qualquer coisa externa ao sistema, o papel de uma 
Classe de Fronteira é modular interfaces entre o sistema e seu ambiente
• Exemplos de classes fronteira:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
10
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 1: Encontrar classes de análise
• Classes de Fronteira (<<limite>>)
Exemplo de classe de fronteira:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
11
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 1: Encontrar classes de análise
• Classes de Entidade (<<entidade>>)
Uma Classe de Entidade tem como objetivo armazenar e gerenciar 
informações no sistema:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
12
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 1: Encontrar classes de análise
• Classes de Entidade (<<entidade>>):
Exemplo de classes de entidade:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
13
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 1: Encontrar classes de análise
• Classes de Controle (<<controle>>):
A classe de Controle gerencia o comportamento do caso de uso. É onde 
fica centrada a lógica do sistema. É a interface entre um classe de 
fronteira(limite) e uma classe de entidade. Seu papel é coordenar o 
comportamento do caso de uso.
Exemplo de Classe de Controle:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
14
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 2: Disseminar comportamento
• Esta etapa define que para cada fluxo de eventos o analista deve:
• Identificar classes de análise participantes;
• Alocar responsabilidades do caso de uso às classes de análise: A metodologia sugere 
que se usem estereótipos de análise como guia. A exemplo as classe de fronteira, 
entidade e controle a cima estudadas. Pode envolver apenas uma classe, mas pode 
ser preciso criar novas classes ou relacionamentos entre classes.
• Classes de fronteira: Classe que tem como principal papel relacionar acomunicação 
com um ator;
• Classes de entidade: Classe que tem como principal papel passar informação 
encapsulada na abstração;
• Classes de controle: Comportamento específico ao (lógica de controle do) caso de 
uso.
• Modelar interações entre as classes através dos diagramas de interação:
• Diagramas de interação, como já visto no item UML, modelam interações do 
sistema com seus atores, a interação é iniciada por um ator e envolve instâncias 
(objetos) das classes, capturam a semântica do fluxo de eventos do caso de uso, 
auxiliam a identificar classes, responsabilidades e relacionamentos, pode ser 
utilizado como um mecanismo de validação da arquitetura e pode ser desenvolvido 
sobre duas visões: Diagrama de Colaboração e Diagrama de Sequência.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
15
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 2: Disseminar comportamento
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
16
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 3: Prover Responsabilidades
Primeiramente, deve-se atualizar os diagramas de classes com as 
responsabilidades identificadas no diagrama de iteração.
As mensagens nestes diagramas resultam em responsabilidades, ou seja, 
métodos nas classes receptoras.
As classes com responsabilidades semelhantes provavelmente serão 
combinadas, já uma classe com responsabilidades independentes 
possivelmente será dividida em mais de uma classe.
Classes sem responsabilidade ou classes que interagem com muitas 
classes tendem a serem extintas. Vamos analisar o exemplo a seguir:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
17
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 3: Prover Responsabilidades
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
18
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 4: Definir Atributos e Associações
Primeiramente vamos esclarecer o que são atributos.
Atributos são as variáveis de uma classe, esses são endereços de memória 
que tem um tamanho pré-definido de acordo com um tipo de dado 
(alfanumérico, numérico...) esses dados é que caracterizam as classes e 
podem ser lidos ou escritos por operações, mas sem outro 
comportamento a não ser fornecer um valor.
Para identificar os atributos de uma classe além de identificá-los através 
do conhecimento do negócio, a metodologia passa a dica de analisar 
alguns artefatos como:
• Documento de requisitos;
• Glossário;
• Modelo do negócio.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
19
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 4: Definir Atributos e Associações
Ao analisar as variáveis (atributos) e verificar que a informação tem 
comportamento complexo ou é compartilhada, deve reavaliar e verificar 
se é o caso de gerar uma nova classe.
Localizar os relacionamentos entre as classes é uma tarefa mais fácil do 
que identificar os atributos, pois normalmente acabam sendo implícitos 
dentro do negócio, para tento deve-se analisar o grau de dependência e 
relacionamentos.
Todo relacionamento possui:
• Um tipo ( Dependências, Associações e Generalização) e um nome,
• Navegabilidade,
• Multiplicidade,
• Papéis.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
20
2. Analisar Caso de Uso / 3. Projetar Classes
Etapa 4: Definir Atributos e Associações
Vamos analisar um modelo de exemplo:
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
21
(ExecutarResponsabilidade)
(Fornecedor)
(Fornecedores de primeira linha)
4. Modelar Banco de Dados
Nesta etapa deve-se mapear as classes pelas quais os dados serão 
armazenados (persistentes) baseado no conceito de banco de dados.
Além disso, definir os tipos de dados mais adequados para o banco de 
dados e realizar as normalizações.
RUP - Rational Unified Process
P
ro
f. A
n
d
ré d
e Pau
la –
En
gen
h
aria d
e So
ftw
are 2
 -
an
d
rep
n
s@
gm
ail.co
m
22

Outros materiais