Introdução a UML (Unified Modeling...
Transcript of Introdução a UML (Unified Modeling...
Régis Simão 1/33
Introdução a UML
Introdução a UML(Unified Modeling Language)
Régis Patrick Silva Simão
Régis Simão 2/33
Introdução a UML
Agenda
Introdução
Histórico
Por que UNIFICADA?
Esquema de Visões 4+1
Modelos e Diagramas
Modelagem Ágil
Régis Simão 3/33
Introdução a UML
Ferramentas Processo
Notação
Introdução: Elementos-chave no Desenvolvimento de Software
Régis Simão 4/33
Introdução a UML
Introdução
UML = Unified Modeling Language
Uma linguagem de propósito geral para a modelagem orientada a objetos
Mas pode ser utilizada para modelar aplicações no paradigma Estruturado, Dataware House, portais, etc.
UML combina notações provenientes de:
Modelo Orientado a Objetos
Modelo de Dados
Modelo de Componentes
Modelo de Fluxos de Trabalho (Workflows)
Régis Simão 5/33
Introdução a UML
Histórico
Nov ‘97 UML aprovado pela OMG
19981999
2000
UML 1.2
UML 1.3
UML 1.4
2001 UML 2.0
Revisões menores
Régis Simão 6/33
Introdução a UML
Por que UNIFICADA?
Régis Simão 7/33
Introdução a UML
Por que Esquema de Visões 4+1?
Visão de Casos de Uso
Visão Lógica Visão de Implementação
Visão de ImplantaçãoVisão de Processos
Régis Simão 8/33
Introdução a UML
Por que Esquema de Visões 4+1?
Sistema
Visão de Casos de UsoVisão de Processos
Visão de Implementação
Visão de Implantação
Visão de Lógica
Régis Simão 9/33
Introdução a UML
Por que Esquema de Visões 4+1? Visão de Casos de Uso
Compreende as situações de uso do sistema que descrevem o comportamento do sistema conforme é visto pelo seus usuários finais.
Visão de Projeto (Lógica) Abrange as classes, interfaces e colaborações que formam o vocabulário
do problema e de sua solução.
Visão de Processos Abrange os processamentos paralelos, visualizando cooperação entre
programas e sincronização.
Visão de Implementação Cobre os arquivos utilizados para a montagem e fornecimento do sistema
físico.
Visão de Implantação Compreende os hardwares em que o sistema é executado.
Régis Simão 10/33
Introdução a UML
Modelos e Diagramas
Um modelo captura uma visão de um sistema do mundo real. É uma abstração desse sistema, considerando um certo propósito. Assim, o modelo descreve completamente aqueles aspectos do sistema que são relevantes para o propósito do modelo, a um apropriado nível de detalhe.
Diagrama: uma representação gráfica de uma coleção de elementos de modelagem, desenhada como um gráfico com vértices conectados por arcos.
Régis Simão 11/33
Introdução a UML
Modelos e Diagramas
Um processo de desenvolvimento de software deve oferecer um conjunto de modelos que permitam expressar o produto desde cada uma das perspectivas de interesse
O código fonte do sistema é o modelo mais detalhado do sistema (e ademais é executável). Sem dúvida, são requeridos outros modelos ...
Cada modelo é completo desde seu ponto de vista do sistema mas, sem dúvida, existem relações de rastreabilidade entre os diferentes modelos
Régis Simão 12/33
Introdução a UML
Modelos e Diagramas
Diagrama de Casos de Uso
Diagrama de Atividades
Diagrama de Classes
Diagrama de Objetos
Diagrama de Estados
Diagrama de Seqüência
Diagrama de Colaboração
Diagrama de Componentes
Diagrama de Implantação
Diagrama de Interação
Régis Simão 13/33
Introdução a UML
Modelos e Diagramas
UML 1.5
Diagrama de Casos de Uso
Diagrama de Atividades
Diagrama de Classes
Diagrama de Objetos
Diagrama de Estados
Diagrama de Seqüência
Diagrama de Colaboração
Diagrama de Componentes
Diagrama de Implantação
UML 2.0 Diagrama de Casos de Uso Diagrama de Atividades Diagrama de Classes Diagrama de Pacotes Diagrama de Objetos Diagrama de Estados Diagrama de Seqüência Diagrama de Colaboração Diagrama de Comunicação Diagrama de Visão Geral
da Interação Diagrama de Componentes Diagrama de Instalação Diagrama de Temporização
Régis Simão 14/33
Introdução a UML
Modelos e Diagramas
Mapeamento de alguns Modelos para Disciplinas do RUP
Régis Simão 15/33
Introdução a UML
Modelos e Diagramas
Mapeamento dos Diagramas para os Modelos
Régis Simão 16/33
Introdução a UML
Modelos e Diagramas
Diagrama de Casos de Uso
Verificar Operação
Cadastra Conta Corrente
Cliente
Cadastra Conta de Crédito
<<include>>
<<include>>
Régis Simão 17/33
Introdução a UML
Modelos e Diagramas
Diagrama de AtividadesBuscar Bebida
Por café no filtro Por água no depósito Pegar xícara
Por filtro na máquina
Ligar a máquina
Café em preparação
Servir café
Pegar suco
Beber
[não há café]
[há café
[não há suco]
[há suco]
/ cafeteira.On
indicador de fim
Régis Simão 18/33
Introdução a UML
Modelos e Diagramas
Diagrama de Classes
Avião militar Avião comercial
Avião de carga Avião de passageiros
Motor Vendedor de bilhetes
Avião
1..4
1
1..4
1
Piloto
Reserva
n
1
n
1
Linha aérea
Vôon1 n1
1..2
n
1..2
nn1 n1
1
n
1
n{ disjunta, completa }
{ disjunta, completa }
Régis Simão 19/33
Introdução a UML
Modelos e Diagramas
Diagrama de Transição de Estados
com empréstimos
sem empréstimos
alta baixa
emprestar devolver[ número_empréstimos = 1 ]
emprestar
devolver[ número_empréstimos > 1 ]
número_empréstimos = 0
número_empréstimos > 0
Socionúmero : intnome : char[50]número_emprestimos : int = 0
alta()baixa()
emprestar(código_livro : int, data : date)devolver(código_livro : int, data : date)
Régis Simão 20/33
Introdução a UML
Modelos e Diagramas
Diagrama de Seqüência
: Encarregado :FacEmpréstimos :Socio :Video :Empréstimo
emprestar(video, socio)
verificar situação socio
verificar situação video
registrar empréstimo
entregar recibo
Régis Simão 21/33
Introdução a UML
Modelos e Diagramas
Diagrama de Colaboração
: Encarregado
:FacEmpréstimos
:Socio
:Video
:Empréstimo
1: emprestar(video, socio)
2: verificar situação socio
3: verificar situação video
4: registrar empréstimo5: entregar recibo
Régis Simão 22/33
Introdução a UML
Modelos e Diagramas
Diagrama de ComponentesControle e Análise
Comment
Acesso a BD
CommentRotinas de Conexão
Comment
Interface de Terminal
Comment
Gestão de Contas
Comment
Régis Simão 23/33
Introdução a UML
Modelos e Diagramas
Diagrama de Implantação
Régis Simão 24/33
Introdução a UML
Modelagem Ágil
É uma atitude, não um processo prescritivo.
É um suplemento dos métodos pre-exitentes; não uma metodologia completa.
É complementar aos processos de modelagem.
É uma maneira de trabalhar em conjunto de modo eficaz para alcançar os objetivos dos clientes do projeto.
É eficaz e trata de eficácia.
É algo que funciona na prática; não uma teoria acadêmica.
Régis Simão 25/33
Introdução a UML
Modelagem Ágil
Não é uma bala de prata.
Foi feita para o desenvolvedor médio, mas não é uma substituição de pessoas competentes.
Não é um ataque a documentação.
Não é um ataque às ferramentas CASE
Régis Simão 26/33
Introdução a UML
Modelagem Ágil
Modelos Ágeis
Cuprem seu própósito.
São compreensíveis.
São suficientemente precisos.
São suficientemente consistentes.
São suficientemente detalhados.
Proporcionam valor positivo.
São os mais simples possíveis.
Régis Simão 27/33
Introdução a UML
Modelagem Ágil
Diagramas
Régis Simão 28/33
Introdução a UML
Modelagem Ágil
Diagramas
Régis Simão 29/33
Introdução a UML
Modelagem Ágil
Diagramas
Régis Simão 30/33
Introdução a UML
Modelagem Ágil
Diagramas
Régis Simão 31/33
Introdução a UML
Modelagem Ágil
Diagramas
Régis Simão 32/33
Introdução a UML
Modelagem Ágil
A UML segundo a Modelagem Ágil
A UML não é suficiente para o desenvolvimento de software de negócios.
A UML é mais completa do que a maioria dos desenvolvedores precisa.
A UML não é uma metodologia nem processo.
A visão da UML Executável está à frente do seu tempo.
Para a UML funcionar na prática
Use a UML como base de modelagem.
Adote um subconjunto básico de notação.
Eduque todos os desenvolvedores na UML.
Cuidado com a propaganda exagerada.
Régis Simão 33/33
Introdução a UML
FIM!!!