Utilizando UML e Padrões
Prof. Fábio Botelho, MSc Redes e
Sistemas Distribuídos
Recife, Março de 2010
Análise e Projeto Orientado a Objetos
• Análise e Projeto OO são essenciais para a
criação de um software bem projetado,
robusto e capaz de ser corrigido ou evoluído,
usando tecnologias e linguagens orientadas a
objetos, tais como Java, C#, C++
Análise e Projeto Orientado a Objetos
• Em relação à tecnologia de objetos, é válido o
provérbio: “Possuir um martelo não torna
alguém um arquiteto”
– Para criar sistemas orientado a objetos é preciso
pensar em termos de objetos, antes de conhecer
uma linguagem orientada a objetos
Análise e Projeto Orientado a Objetos
• Análise X Projeto
– Análise enfatiza uma investigação do problema e
dos requisitos, em vez de uma solução
• Responde-se às perguntas:
– Como o sistema deverá ser usado
– Quais as suas funções
– Melhor seria chamar: Análise de Requisitos ou
Análise orientada a objetos
Análise e Projeto Orientado a Objetos
• Análise X Projeto
– O Projeto enfatiza uma solução conceitual em
software ou em hardware que satisfaça os
requisitos
• A descrição do esquema de banco de dados e a
descrição dos objetos do sistema são exemplos
– Melhor seria definir como o projeto de objetos ou
o projeto de bancos de dados
Análise e Projeto Orientado a Objetos
• Análise X Projeto Orientados a Objetos
– Na análise orientada a objetos, há uma ênfase em
encontrar e descrever os objetos ou conceitos do
domínio do problema
• E.g., Sistema de informações de vôo inclui conceitos de
avião, vôo e piloto
Análise e Projeto Orientado a Objetos
• Análise X Projeto Orientados a Objetos
– Projeto Orientado a Objetos enfatiza a definição
dos objetos e como eles colaboram para a
satisfação dos requisitos
• E.g., Objeto avião possui atributo numDaCauda e
método obterHistoricoDoVoo
Análise e Projeto Orientado a Objetos
• Análise X Projeto Orientados a Objetos
– Na implementação ou programação OO os objetos
de projeto são implementados
• E.g., Classe Aviao em Java
Análise e Projeto Orientado a Objetos
• Análise X Projeto Orientados a Objetos
– Na implementação ou programação OO os objetos
de projeto são implementados
• E.g., Classe Aviao em Java
Análise e Projeto Orientado a Objetos
Conceito
do domínio
Visualização
do Conceito
do domínio
Representação
em uma
Linguagem OO
Aviao
numDaCauda
public class Aviao {
private String numDaCauda;
public List obterHistoricoDoVoo() { ... }
}
Análise e Projeto Orientado a Objetos
• Análise e Projeto de um Jogo de Dados
– Um jogador lança dois dados e ganha caso o
resultado seja sete
– Passos:
Definir Casos
de Uso
Definir Modelo
de Domínio
Definir Diagramas
de Interação
Definir Diagramas
de Classes de
Projeto
Análise e Projeto Orientado a Objetos
• Análise e Projeto de um Jogo de Dados
Definir Casos
de Uso
– A Análise de Requisitos pode incluir narrativas ou
cenários sobre como as pessoas usam a aplicação
• Tais narrações podem ser escritas como casos de uso
– Casos de Uso não são artefatos OO, são apenas
narrações escritas
Análise e Projeto Orientado a Objetos
• Análise e Projeto de um Jogo de Dados
Definir Casos
de Uso
– Caso de Uso Jogar um Jogo de Dados
• Um jogador pede que os dados sejam lançados. O
sistema apresenta o resultado. Se a soma do valor das
faces dos dois dados totalizar sete, o jogador vence,
caso contrário, perde.
Análise e Projeto Orientado a Objetos
• Análise e Projeto de um Jogo de Dados
Definir Modelo
de Domínio
– Mostra os conceitos ou objetos do domínio que
são relevantes
Download

Utilizando UML e Padrões