UML2 - Diagrama de Sequencia

Transcrição

UML2 - Diagrama de Sequencia
Uma visão mais clara da UML
Sumário
1 Definição de Objeto..........................................................................................................................2
2 Estereótipos......................................................................................................................................3
2.1 Classe fronteira (boundary): ....................................................................................................3
2.2 Classe de Entidade (entity): .....................................................................................................3
2.3 Classe de Controle (control): ....................................................................................................4
3 Interação entre Objetos....................................................................................................................4
3.1 Diagrama de Sequência............................................................................................................4
3.1.1 Construção do Diagrama de Sequência:...........................................................................5
3.2 Diagrama de Colaboração.........................................................................................................8
4 Referências Bibliográficas.................................................................................................................9
1
1 Definição de Objeto
Representa uma entidade que pode ser física, conceitual ou de software. É uma abstração
de algo que possui fronteira definida e significado para a aplicação. Os componentes de um objeto
são:
•
Identidade: É o que identifica unicamente um objeto, mesmo que ele possua estados ou
comportamento comuns a outros objetos.
•
Estado de um objeto: É cada condição na qual o objeto pode existir. É mutável ao longo do
tempo. É implementado por um conjunto de atributos, os valores desses atributos e
ligações que o objeto pode ter com outros objetos.
•
Comportamento de um objeto: Determina como um objeto age e reage a estímulos de
outros objetos. É modelado através de um conjunto de mensagens que representam
resultados visíveis das operações executadas internamente pelo objeto.
•
Definição de Classe: É uma descrição de um grupo de objetos com atributos,
comportamentos, relacionamentos com outros objetos e semântica comuns. Uma classe é
uma abstração que enfatiza características relevantes dos objetos, suprimindo outras
características. Portanto um objeto é sempre uma instância de uma classe.
Exemplo da Classe Cliente:
Notação UML:
Nome:
Cliente
Estado:
Codigo
Nome
Nome
Atributos
Operações
Endereco
Cidade
Cliente
Estado
Codigo
Nome
Endereco
Cidade
Estado
CEP
Login
Senha
CEP
Login
Senha
...
Comportamento:
Fazer login
Fazer pedido
Cancelar pedido
Fazer login()
Fazer pedido()
Cancelar pedido()
….
2
2 Estereótipos
É um elemento de modelagem que rotula tipos de Classes de Objeto. Uma Classe de
Objetos pode ter um ou mais tipos de estereótipos. A notação usada pela UML para Estereótipos,
dentro da representação gráfica da Classe de Objeto, é colocá-lo entre << >> na área reservada
para o nome da classe e acima deste.
<<Entidade>>
Cliente
Codigo
Nome
Endereco
Cidade
Estado
CEP
Login
Senha
Fazer login()
Fazer pedido()
Cancelar pedido()
Os estereótipos mais comuns são:
•
Classe Fronteiriça
•
Classe de Entidade
•
Classe de Controle
•
Classe de Exceção
•
Metaclasse
•
Classe Utilitária
2.1 Classe fronteira (boundary):
É uma classe que modela a comunicação entre a vizinhança do sistema e suas operações
internas. Exemplos: Interface tipo Janela, Protocolo de Comunicação, Interface de Impressão,
Sensores, etc. No presente estudo de caso, sistema automatizado de Matrícula num Curso, as
classes de objeto Formulário em Branco e Sistema de Cobrança são exemplos de estereótipos
desta classe.
2.2 Classe de Entidade (entity):
É uma classe que modela objetos cuja informação e o comportamento associados são, de
maneira geral, persistentes. No presente estudo de caso, sistema automatizado de Matrícula num
Curso, as classes de objeto: Lista de Cursos, Curso, Catálogo e Matrícula, são exemplos de
estereótipos desta classe.
3
2.3 Classe de Controle (control):
É uma classe que modela o comportamento de controle específico para uma ou mais “Use
Case”. Suas principais características são:
•
Cria, ativa e anula objetos controlados.
•
Controla a operação de objetos controlados
•
Controla a concorrência de pedidos de objetos controlados.
•
Em muitos casos corresponde a implementação de um objeto intangível.
No presente estudo de caso, sistema automatizado de Matrícula num Curso, a classe de
objeto Gerente de Registro e um exemplo de estereótipo desta classe.: É uma classe que modela
objetos cuja informação e o comportamento associados são, de maneira geral, persistentes. No
presente estudo de caso, sistema automatizado de Matrícula num Curso, as classes de objeto: Lista
de Cursos, Curso, Catálogo e Matrícula, são exemplos de estereótipos desta classe.
Figura 1: Estereótipos
3 Interação entre Objetos
Os Diagramas de Interação são usados para representar o comportamento de vários
objetos dentro de um contexto, a partir de mensagens que são trocadas entre eles. O objetivo é
estabelecer os objetos que interagem e seus relacionamentos dentro de um contexto (caso de
uso). A UML se utiliza de dois diagramas para representar a interação entre os objetos:
•
Diagrama de Sequência:
◦ Interação enfatizando o tempo de seqüência
◦ Mostra objetos participando em interações de acordo com suas linhas de vida e as
mensagens que trocam
•
Diagrama de Colaboração:
•
Interação enfatizando o relacionamento entre os objetos
3.1 Diagrama de Sequência
Mostra a interação entre os Objetos ao longo do tempo. Apresentando os objetos que
participam da interação e a sequência de mensagens trocadas. A notação usada pela UML para
4
representar o Diagrama de Sequência, é a seguinte:
•
Objetos são representados por retângulo com seus nomes sublinhados.
•
As linhas de vida dos Objetos são representadas por linhas verticais tracejadas.
•
As interações entre Objetos são indicadas por flechas horizontais que são direcionadas da
linha vertical que representa o Objeto cliente para a linha que representa o Objeto
fornecedor.
•
As flechas horizontais são rotuladas com as mensagens.
•
A ordem das mensagens no tempo é indicada pela posição vertical, com a primeira
mensagem aparecendo no topo.
•
A numeração é opcional e baseada na posição vertical.
Foco de Controle: Representa o tempo relativo que o fluxo de controle esta focalizado num
dado Objeto. Ele representa o tempo que um Objeto dedica a uma dada mensagem.
3.1.1 Construção do Diagrama de Sequência:
•
Escolher Caso de Uso
•
Identificar os objetos que fazem parte da interação
•
Identificar o objeto que começa a interação
•
Identificar as mensagens trocadas entre os objetos
•
Identificar a sequência destas mensagens.
Figura 2: Blog - Caso de uso
5
Figura 3: Diagrama de Classes
Figura 4: Diagrama de Sequência: Criar Blog
6
Figura 5: Diagrama de Sequência: Criar Nota
Exemplo:
Figura 6: Diagrama de Sequência: Video Locadora
7
3.2 Diagrama de Colaboração
É um modo alternativo para representar a troca de mensagens entre um conjunto de
Objetos. O Diagrama de Colaboração mostra a interação organizada entorno dos Objetos e suas
ligações uns com os outros.
•
A notação usada pela UML para representar o Diagrama de Colaboração, é a seguinte:
•
Objetos são representados por retângulo com seus nomes sublinhados.
•
As interações entre Objetos são indicadas por uma linha conectando-os.
•
As ligações indicam a existência de um caminho para comunicação entre os Objetos
conectados.
•
As ligações no Diagrama de Colaboração podem ser apresentada por:
•
flechas apontando do Objeto cliente para o Objeto fornecedor.
•
o nome da mensagem.
•
Numeração seqüencial, mostrando a ordem relativa de envio das mensagens.
Figura 7: Diagrama de Colaboração
8
4 Referências Bibliográficas
1. CAMPOS, José C., RIBEIRO, Antonio N. Desenvolvimento de Sistemas de Software.
Disponível em: http://sim.di.uminho.pt/disciplinas/dss/0708/AulaT_20071016.pdf. Acesso
em: 10/04/2013.
2. LES, Laboratório de Engenharia de Software. UML: Diagrama de Sequência. Disponível em:
http://www.les.inf.puc-rio.br/wiki/images/e/ef/Aula02-diagrama_sequencia.pdf.
Acesso
em: 15/04/2013.
3. Macoratti.net.
UML
Conceitos
Básicos.
http://www.macoratti.net/vb_uml2.htm. Acesso em: 10/04/2013.
Disponível
em:
4. ZATYCKO, Florisbela. UML – Unified Modeling Language. Disponível em: Apostilando.com.
Acesso em: 10/04/2013.
9