UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UML
Linguagem de Modelagem Unificada Profa. Carla Alessandra Lima Reis
[email protected]
http://www.cultura.ufpa.br/ clima http://www.cultura.ufpa.br/clima
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
2004
Agenda
Objetivos Conceitos da Orientação a Objetos Histórico da UML Os diagramas da UML – Uso de ferramentas CASE com UML – Diagrama de Casos de Uso – Diagrama de Classes – Diagrama de Seqüência
1 2
Objetivos
Apresentar e praticar alguns dos principais modelos fornecidos pela UML Praticar algumas situações típicas de análise e projeto de software Experiência prática com um subconjunto do Processo Unificado
Conceitos de Orientação a Objetos
4 3
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
Orientação a Objetos
Orientação a Objetos Conceitos – Classe Definição
de um conjunto de objetos que compartilham estrutura e comportamento comuns Objetos são criados a partir das classes
Abstração de Dados
Processo mental através do qual nos concentramos nos aspectos relevantes de um conjunto de objetos desconsiderando as suas diferenças.
Orientação a Objetos
Na Orientação a Objetos, o mecanismo principal de abstração é a Classe – Uma Classe descreve um conjunto de Objetos que compartilham características comuns – A Classe corresponde à noção de módulo em um sistema orientado a objetos
6
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
5
Modularidade é importante pois torna o projeto de um sistema mais simples e reutilizável Classe “encapsula” dados e operações
7
Orientação a Objetos
Classificação
Classe
Objetos
8
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
Orientação a Objetos Encapsulamento de dados e operações
Orientação a Objetos
Encapsulamento de dados e operações – “Muralha” em volta do objeto – Objetos respondem mensagens de outros objetos – Alteração no estado interno do objeto só através dos métodos Objeto
Encapsulamento
Orientação a Objetos
Encapsulamento de dados e operações – Ocultamento da Informação
O acesso aos dados internos de objetos só pode ocorrer a partir de mensagens
– Independência de aplicação
Um método deve acessar informações internas do objeto
Ocultamento da informação
Objeto Atributos: a1, a2, a3, ... Métodos: m1, m2, m3, ...
Independência de aplicação
11
10
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
9
Orientação a Objetos
Encapsulamento de dados e operações – Lei de Deméter cada objeto o, e para cada um dos seus métodos m, os objetos que podem receber mensagens de o são
para
– o próprio o – especificamente self e super (em SmallTalk), SmallTalk), ou this (em C++/Java) C++/Java) – atributosatributos-objeto de o – argumentos de m
12
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
Orientação a Objetos Encapsulamento de dados e operações – Lei de Deméter obj obj.mensagem(parâmetros)
X Y z
mensagem(p) begin ... // qualquer valor manipulado aqui é x, y, z ou p.
Orientação a Objetos
Outros elementos importantes – Classificação Associar
objetos às classes
– Associação Conexão
entre objetos
– Agregação Um
objeto é composto por outro
– Generalização/Especialização Herança
end;
Orientação a Objetos
14
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
13
Classificação
15
Orientação a Objetos
Associação (ou conexão) entre objetos – – –
Objetos existindo de forma associada Poderoso mecanismo de reutilização de objetos Exemplo: Biblioteca
Biblioteca = usuário reserva obra
16
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
Orientação a Objetos Agregação
UFPA-2004 -UML (Linguagem de Modelagem Unificada)
17
Orientação a Objetos
Estado, Comportamento e Identidade de Objetos
19
Orientação a Objetos
Generalização/Especialização
18