Introdução a UML (Unified Modeling...

Post on 12-Apr-2019

226 views 0 download

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!!!