A linguagem unificada de modelagem UMLUML Visão Geral.

Post on 07-Apr-2016

217 views 2 download

Transcript of A linguagem unificada de modelagem UMLUML Visão Geral.

A linguagem unificada de modelagemUML

Visão Geral

UMLVisão Geral

Origens e Criadores• OMT-2 (James Rumbaugh)• Booch-94 (Grady Booch)• OOSE (Ivar Jacobson)

UMLVisão Geral

História e padronização

UMLVisão Geral

Tradicional e ModernaClasses

Relacionamentos

Objetos Use Cases

Sistemas degrande porte

Componentes

ActiveX/COM+

ODBMS

CORBA

Java Beans

Interfaces

Sistemasde tempo real

Objetos de negócio

Design Patterns

RDBMS

UMLVisão Geral

Usos de UML• Visualização• Especificação• Documentação• Comunicação• Construção

UMLVisão Geral

Elementos essenciais

ElementosEstruturais

ElementosComportamentais

Elementos deAgrupamento

Elementos deExtensão e Anotação

UMLVisão Geral

Elementos estruturais

a lterarNom e(nome : S tring)a lterarTele fone(novoTe l: S tring)ca lcularS alario(): C urrency

nom e: S tringsobrenom e: S tringdataNascim ento : D ate

C liente um C liente: C liente

Se rvido r W e b

OBJETOCLASSE NÓ

RELACIONAMENTOSNavegabilidade

Agregação

Dependência

Herança

Realização

Associação

Composição

Cadastro.e xe

COMPONENTE

INTERFACE

IPessoa

UMLVisão Geral

Elementos comportamentais

Cadastrar cliente

USE CASE ESTADOSConectando

H

MENSAGENS e TRANSIÇÕES

ATOR

Retorno/controle

Mensagem assíncrona

Auto-(mensagem/transição)

Mensagem/transição

UMLVisão Geral

Elementos de Agrupamento

PACOTES

In terfac egrá fica

Acesso aoB an co

Reg ras d en eg óc io

UMLVisão Geral

Elementos de Extensão e Anotação

«importa»ESTEREÓTIPO

{autor=Janjão Lima data=12/105/2004}

TAGGED VALUES

{frozen}RESTRIÇÃO

Esta operação deve serchamada depois daconexão

ANOTAÇÃO Permitem adicionarnovas propriedadesaos elementosde UML.

UMLVisão Geral

Conceitos (I)• UML pode ser usado para

– Mostrar os limites de um sistema e suas principais funções, usando use cases e atores

– Ilustrar a realização dos use cases, usando os diagramas de interação

– Representar a estrutura estática de um sistema, usando diagramas de classe

UMLVisão Geral

Conceitos (II)• UML pode ser usado, também, para

– Modelar o comportamento de objetos, com diagramas de estados

– Apresentar a implementação física e a arquitetura de um sistema, com diagramas de componentes e diagramas de implantação

– Criar extensões, usando estereótipos

UMLVisão Geral

Atores• Atores são pessoas ou coisas

que interagem com o sistema em desenvolvimento

Professora

Sistema de controlede pre-requisitos

Estudante

Secretária

<<Ator>>

Coordenador

UMLVisão Geral

Use cases• Um use case é a especificação de sequências de

ações que um sistema, subsistema, ou classe pode realizar, interagindo com um dos atores

• Use cases podem incluir seqüências alternativas, ou seqüências excepcionais (de erro)

Matricular aluno Solicitarhistórico

Verificarpré-requisitos

UMLVisão Geral

Diagramas de Use cases

Estudante

Secretária

<<estende>> Solicitar histórico docurso atual

Solicitar histórico detodos os cursos

Solicitarhistórico

<<estende>>

Verificardependências

Matricularaluno<<inclue>>

Sistema de controlede pre-requisitos

UMLVisão Geral

Diagramas de Interação• Um diagrama de interação mostra um

conjunto de objetos, seus relacionamentos e as mensagens que podem ser enviadas entre eles

• Podem ser de dois tipos (isomórficos):– Diagramas de seqüência dão ênfase à

ordenação das mensagens– Diagramas de colaboração enfatizam o

relacionamento entre os objetos que trocam mensagens

UMLVisão Geral

Diagramas de Seqüência

Ja nela de entrad ad e pedid o p : Pedid o : Ite mPedid o :ItemEstoqu e

pr eparar ()

* [para cada item do pedid o]pr eparar ()

emEstoq ue := v erif ic ar ()

[emEstoqu e]re mov er () e s toque Baix o :=

v erif ic Es toqu eBaixo ()

:ItemRenov Estoqu e

:ItemEntreg a

[es toq ueBaix o]<<criar>>

[emEs toqu e]<<criar>>

UMLVisão Geral

Diagramas de ColaboraçãoJanela de entrada

de pedido

p: Pedido

: ItemPedido :ItemEs toque

:ItemRenov Es toque:ItemEntrega

1: preparar( )

1.1: *[para c ada item do pedido] preparar( )

1.1.1 : emEs toque := v erif ic ar( )1.1.2 : [emEs toque] remov er( )

1.1.2.1: es toqueBaix o := v erif ic Es toqueBaixo( )

1.1.2.2 [es toqueBaixo] <<c riar>>

1.1.3 : [emEstoque] <<c riar>>

UMLVisão Geral

Diagramas de Atividades• Os Diagramas de Atividades mostram o

fluxo entre atividades (ações não-atômicas). Ex: fluxos de processos, fluxos de eventos, detalhamento de operações.

• São um caso especial dos Diagramas de Estados, com a maioria das transições resultantes do término das atividades

• São semelhantes aos antigos fluxogramas• São muito usados para modelar

atividades concorrentes

UMLVisão Geral

Diagramas de AtividadesProcurar bebida

[achou café]

H

PessoaH

[sem café] [sem Coca]

[achou Coca]

Pegar latade Coca

Beber

Adicionar água àmáquina

Colocar caféno filtro

Colocar filtrona máquina

Ligar máquina

Filtrar café

Pegarxícara

Colocar café naxícara

UMLVisão Geral

Diagramas de classes• Os diagramas de classes são os

principais diagramas estruturais da UML• Diagramas de classe mostram classes,

interfaces e os relacionamentos entre esses elementos

• As classes especificam a estrutura e o comportamento dos objetos

• Objetos são instâncias de classes

UMLVisão Geral

Diagramas de Classe

+confirmar()+cancelar()-calcularTotal():CurrencygerarNovoCodigo: String

-codigo: Integer-dataRecebido-total: Currency

Pedido

#creditoPermitido: Currency#nivelCredibilidade()

-nome: String-endereco: String-dataPrimeiraCompra: Date-dataUltimaCompra: Date-totalComprado: Currency

Cliente

-quantidade: Integer-preco: Currency-emEstoque: Boolean

Item de PedidonomeContato: Stringtelefones[1..10]: StringCGC: StringFAX[1..3]: String

Cliente pessoa-jurídica

colocarListaNegra()

nome: StringCPF: StringnumCartaoCredito

Cliente pessoa-física

EmpregadoProduto

* representantede vendas

*

*

IPessoa

itens

UMLVisão Geral

Diagramas de objetos• Os diagramas de objetos mostram

uma “fotografia” de um sistema OO em execução

• São mostrados os objetos, com os valores de seus atributos e as ligações entre eles

• Os diagramas de objetos são úteis para a modelagem de estruturas de dados complexas

UMLVisão Geral

Diagramas de Objetos

p2: Prof es s ormatr ic ula: "205-6712-09"nome: "Jaels on Cas tro"

p1: Prof es s or

c odCurs o: "IF291"des c rição: "MPS"c odTurma: I7

: Curs o

c odCurs o: "IF185"des c rição: "A ER"c odTurma: I6

: Curs o

matr ic ula: "219846534"nome: "Nels on Mandella"

:a luno

matr ic ula: "562746134"nome: "John Major "

:a luno

: A luno

: A luno

: A luno

: A luno

c 1: Curs o

c 2: Curs o

c 3: Curs o

Bill

: A luno : A luno

Lew insky

-matrícula: String-nome: String

Professor-codDisciplina: String-descrição: String-codTurma: String

Curso

-matrícula: String-nome: String-período: Integer

Aluno

[0..10]

ministra[1..5]

*[1..3]

UMLVisão Geral

Diagramas de estados• Os diagramas de estados são usados

para modelar o comportamento de objetos (com comportamento complexo)

• Nos diagramas de estados são modelados os estados em que um objeto pode estar e os eventos que fazem o objeto passar de um estado para outro

UMLVisão Geral

Ocioso

Manutenção

fazerManutenção

Validando

Selecionando Processando

Imprimindo

[continuar][não continuar]

H

entry / lerCartão exit / ejetarCartão

cartãoInserido

cancelar

Ativo

Diagramas de estados

UMLVisão Geral

Diagramas de Componentes

• Diagramas de componentes são usados para modelar o aspecto físico de um sistema

• São mostrados componentes e os relacionamentos entre eles

• Exemplos de componentes são documentos, executáveis, e tabelas de bancos de dados

UMLVisão Geral

Diagramas de Componentes

F ormC adastro.htm l

Cadastro.e xe

P rincipal.htm l

FormE ntrada.htm l

Autenticacao.exe

<<link>>

<<link>>B anco

Usuários

S enhas

UMLVisão Geral

Diagramas de Implantação

• Os diagramas de implantação são usados para modelar o ambiente em que o o sistema será executado

• São compostos por nós e relacionamentos de comunicação

• Um nó pode ser, por exemplo, um computador, uma rede, um disco rígido, um sensor, etc.

UMLVisão Geral

Diagramas de Implantação

servid o rW eb

A u ten ticação.exe

C ad astro.exe

servid orD eA rq uivo s

FormCadas tro.html

Pr inc ipal.html

FormEntrada.html

servid o rB an co D eD ad o s

SG BD

O SGBD a s erutiliz ado aindanão f oi esc olhido.

PC - G309

N estscap eC om m u nicato r

5.0

UMLVisão Geral

Bibliografia Recomendada

• The Unified Modelling Language User Guide (Grady Booch)

• The Unified Modelling Language Reference Manual (James Rumbaugh)

• The Unified Software Development Process (Ivar Jacobson)

• UML Distilled (Martin Fowler)• http://www.eribeiro.com.br/pablo/uml