Vous êtes sur la page 1sur 34

UML - Unified Modeling

Language

Virgnia Mara Cardoso


vcardoso@dca.fee.unicamp.br

UML

Histrico

Conceitos
Viso Geral da UML

Modelos

Vises

Diagramas
Diagramas

Classes
Objetos
Casos de Uso
Sequncia
Colaborao
Estado
Atividade
Componentes
Implantao

Um Exemplo para Utilizar UML

Bibliografia

Booch, G., Jacobson, I., Rumbaugh, J., The Unified


Software Development Process, Addison-Wesley Object
Technology Series, 1999.
Larman, C., Applying UML and Patterns An Introduction
to Object-Oriented Analysis and Design, Prentice Hall,
1997.
Pressman, R. S., Software Engineering: A Practitioners
Approach, 4th Edition (1997), McGraw-Hill.
Ferramenta de Modelagem UML Poseidon, 2002, http:
//www.gentleware.com
Ferramenta de Modelagem UML Rational Rose, 2002,
http://www.rational.com
UML 1.4 Specification. Chapter 2 and 3 - UML Notation
Guide, September, 2001, http:
//www.omg.org/technology/documents/formal/uml.htm .

UML Unified Modeling


Language

O que UML?

Linguagem visual para modelar


sistemas de software.
Objetivo:

simplificar e consolidar mtodos j


conhecidos.

No proprietria.
Propsito geral.

UML Unified Modeling


Language

Propsito Geral (sistemas de


software):

especificar;
visualizar;
construir;
documentar.

UML Unified Modeling

Language

Modelagem abrange:

aspectos estticos:

aspectos dinmicos:

tipos de objetos e relacionamentos entre eles.


evoluo dos objetos no tempo e interao entre
eles.

aspectos de ambiente.
aspectos organizacionais:

particionamento de grandes sistemas;


representao de decises de implementao;
implantao do sistema (organizao em tempo de
execuo).

Histrico

Evoluo das metodologias de desenvolvimento:


anlise Estruturada e Projeto Estruturado (Yordon,
1979);
projeto Estruturado para Tempo-Real (Ward,
1985).
metodologias OO (Goldberg/Robson,83; Cox, 86;
Meyer, 88; Shlaer/Mellor, 88; CRC Wirfs-Brock et
al, 90; Coad/Yourdon, 91; Booch, 91; OMT
Rumbaugh et al, 91; Objectory Jacobson, 92)
UML Booch/ Rumbaugh/Jacobson, 1995 ;
1996 - requisio de padro pelo OMG (object
Management Group)
1997 adotada como padro pelo OMG.

Modelos de Software

Definem semntica e notao:

informao semntica: descreve o


significado ou inteno do sistema;
notao: apresentao visual

mostram o modelo de forma facilmente


compreensvel;
no adicionam semntica;

podem ser apresentados de vrias


formas, incluindo texto e diagramas.

Modelos de Software

Objetivos:

apreender e indicar precisamente


requisitos e conhecimento do domnio;
facilitar o desenvolvimento;
gerenciar complexidade:

manter informaes sobre o sistema;


visualizar o sistema sob diferentes pontos
de vista;
visualizar o sistema em diferentes nveis
de abstrao.

Vises

Diferentes pontos de vista devem ser


usados para refletir os aspectos
desejados.

Cada viso mostra um conjunto de


aspectos do sistema numa notao
adequada sua compreenso.

UML apresenta diferentes vises do


sistema sendo modelado.

Vises

A arquitetura de um sistema pode


ser refletida em cinco vises
distintas:
Projeto

Implementao
Casos de Uso

Processo

Implantao

Diagramas

Formas de apresentao, menos


detalhadas, facilitam a compreenso
do modelo descrito. Ex: diagramas
(grficos e desenhos).
UML apresenta diversos diagramas:

cada viso tem seu conjunto de


diagramas;
cada diagrama pode apresentar
diferentes verses, em diferentes nveis
de detalhamento.

Diagramas de Classes

Apresenta as classes e
relacionamentos entre elas.
Entidades Classes.
Relacionamentos generalizao,
associao,
etc.

Diagrama de Classes

Associao
Classe

Diagrama de Objetos

Retrato do sistema em
determinado instante.
Representao dos objetos e as
ligaes entre eles.
No descreve o sistema.
Facilita o entendimento e validao
do sistema e modelos.

Diagrama de Objetos

Objetos

Diagramas de Casos de
Uso

Descrevam o comportamento do
sistema.
Especifica os argumentos
funcionais que determinaro a
macro-arquitetura do sistema.
No descreve a organizao
interna do software.

Diagramas de Casos de
Uso

Elementos bsicos de modelagem:

atores, agentes externos ( clientes do


sistema);
caso de uso, unidade de funcionalidade
coerente, expressa pelas transaes
(comunicao) entre os atores e o sistema;
Comunicao, ligao entre ator e caso de
uso expressando comunicao entre eles
(associao, extenso, incluso,
generalizao).

Diagramas de Casos de
Uso
Ator

Fronteira do
sistema

Caso de
Uso

Diagrama de Seqncia

Apresenta o conjunto de mensagens trocadas


entre objetos na execuo de transaes.
Cada diagrama mostra um cenrio de execuo
de uma transao.
Elementos de Modelagem:

papis, objetos so representados pelo papel que


desempenham na transao, mas no so referenciados
diretamente;
mensagens, representam a execuo de uma operao
de uma classe ou a ocorrncia de um evento em uma
mquina de estados, e so ordenadas no tempo (de
cima para baixo);
linha de vida, representa o perodo de existncia de
um objeto;
perodo de atividade, representa os perodos em que
um objeto est ativo.

Diagrama de Seqncia

Linha de
vida

Perodo
ativo

Diagrama de Colaborao

Modela objetos e ligaes de uma


interao:

apresenta somente os objetos e


ligaes significativas para a interao;
as mensagens so numeradas
sequencialmente;
mostra implementao de operaes,
descrevendo parmetros e variveis
locais usadas.

Diagramas- Seqncia e
Colaborao
aspecto
interaes

Seqncia no
tempo

Relacionamento
entre papis
implcito

Seqncia

Visvel
(explcito)
graficamente

Implcito
Colabora (pelos
nmeros de
o
seqncia)

Visual,
relacionando
mensagens a
ligaes entre
papis

Diagrama de Colaborao

mensagem
objeto

Diagrama de Estados

Modela as possveis histrias de um


objeto de uma classe atravs de
mquinas de estados.

Apresenta possveis estados do objeto


conectados por transies.
Usado para descrever:

sistemas reativos, como interface com usurio;


objetos passivos que apresentam perodos
com comportamento distinto no decorrer do
tempo.

Diagrama de Estado
Pronto
Pronto

Abrir janela

Campo
alterado
Boto consultar

Boto sair

Diagrama de Atividades
Variao de mquinas de estado.
Mostra atividades computacionais
envolvidas em uma operao.
Atividade:

trabalho ou tarefa a ser realizada

Passos em um workflow;
Execuo de uma operao;

podem ocorrer seqencialmente ou


concorrentemente.

Diagrama de Atividades

Diagrama de
Componentes

Modela os componentes do sistema e


dependncias entre eles.

Elementos de modelagem:
componente

unidade de software usada para compor o sistema;

interface

conjunto de operaes suportado (realizado) por


um componente;
cada componente pode prover mltiplas interfaces;
componentes podem utilizar (depender) interfaces
de outros componentes.

Diagrama de
Componentes
Interface

Classe

Diagrama de Implantao

Descreve o arranjo de componentes


executveis em ns de execuo.

Permite avaliar conseqncias da


distribuio e alocao de recursos.
So apresentados em dois nveis:

Descritivo (geral);
De instncia (especfico).

Recurso computacional (tempo de execuo)

Computadores, memria, dispositivos perifricos.

Diagrama de Implantao

Nvel descritivo (geral)

Descreve os elementos contidos em


cada n.
Especifica as dependncias entre
elementos (possivelmente em ns
distintos).
Padro de comunicao entre ns.

Diagrama de Implantao
comunicao

dependncia

Diagrama de Implantao

De Instncia (especfico)

Apresenta instncias de ns, e comunicao efetiva


entre eles.
Apresenta os ns para uma verso/configurao
especifica do sistema.

N
Comunicao

Vous aimerez peut-être aussi