Title: UML 2.0
1UML 2.0
- Unified Modeling Language
Trabalho realizado por - António Mota
ei02020 - José Pacheco ei02054 -
Hugo Valente ei02107 - Pedro Pacheco
ei02084 - Ivo Navega ei02039 - Tiago
Silva ei02099
2Estrutura da Apresentação
- Introdução
- XMI
- OCL
- MOF
- Mudanças 1. para 2.0
- Perspectivas Futuras
3Estrutura da Apresentação
- Introdução
- Definição
- Origens
- Características
- Porquê usar UML?
- XMI
- OCL
- MOF
- Mudanças 1. para 2.0
- Perspectivas Futuras
4Introdução - Definição
- Linguagem gráfica para a visualização,
especificação, construção e documentação de
artefactos de um sistema - Permite a simplificação do complexo processo de
concepção de software através de - uso de uma forte componente gráfica
- utilização de um conjunto limitado de símbolos
5Introdução - Origens
Meyer 1997
Wirfs - Brock 1990
Booch 1994
UML
Shlaer Mellor 1989
Rumbaugh 1991
Jacobson 1995
6Introdução - Características
- Mecanismos de expansibilidade
- Diagrama de actividades
- Refinamento
- Interfaces
- Linguagem de Restrição.
7Introdução - Porquê usar a UML?
- Com o desenvolvimento tecnológico, o sistema de
informação ao nível de organizações tende a ter
um significativo suporte informático - É conveniente recorrer a uma linguagem que
facilite a comunicação entre aqueles que têm de
lidar com a informática - A existência de uma boa linguagem de modelação é
um factor essencial para o sucesso de um
projecto.
8Introdução - Porquê usar a UML? (continuação)
5 Razões
- A construção de software necessita de um plano
- Um projecto é concebido por equipas de
especialidades diferentes
- Facilita a compreensão do problema
- É uma linguagem unificada e universal
- É vantajoso a nível empresarial a existência de
um software bem documentado.
9Estrutura da Apresentação
- Introdução
- XMI
- O que é a norma XMI?
- Modelos incorporados
- Mudanças na nova versão
- OCL
- MOF
- Mudanças 1. para 2.0
- Perspectivas Futuras
10XMI - O que é a norma XMI?
- A norma XMI (XML Metadata Interchange) define um
modelo aberto de troca de objectos e modelos de
negócio pela internet, de modo standard - Expressa um conjunto de regras para a criação de
documentos XML de modo a transmitir esses
objectos - Regras para criação de DTDs
- Permite o trabalho em equipa independentemente
das ferramentas utilizadas - Possibilita a criação de aplicações distribuídas
e seguras.
11XMI - Modelos incorporados
- Este modelo incluiu três outros modelos standard
- UML Unified Modeling Language
- XML eXtensible Markup Language
- MOF Meta Object Facility
12XMI Mudanças na nova versão
- Produção de esquemas XML com base em modelos de
objectos - Produção de documentos XML compativeis com os
esquemas XMI - Engenharia reversa, possibilitando obter os
modelos de objectos a partir dos esquemas XML.
13Estrutura da Apresentação
- Introdução
- XMI
- OCL
- O que é a norma OCL?
- Algumas aplicações
- Principais mudanças OCL 2.0
- MOF
- Mudanças 1. para 2.0
- Perspectivas Futuras
14OCL - O que é a norma OCL?
- Linguagem formal para especificar expressões e
restrições - Parte integrada do UML
- Linguagem de especificação formal, de fácil
utilização - Permite evitar as ambiguidades da linguagem
natural - Uma expressão OCL quando é avaliada não produz
alterações no modelo.
15OCL - Algumas aplicações
- Especificar invariantes de classes e tipos num
diagrama de classes - Especificar tipos de invariantes para
estereótipos - Especificar pré e pós condições em operações e
métodos - Especificar guardas de transições
- Especificar restrições e operações
- Ser usada como linguagem de navegação.
16OCL - Principais mudanças OCL 2.0
- Query language" geral, permite expressar
propriedades desejadas em modelos UML - Contém uma definição dos conceitos e semântica do
OCL por meios de um metamodelo complacente ao
MOF - Alteração na estrutura de especificação
- Clara separação entre sintaxe abstracta e
concreta deixando espaço para sintaxes concretas
alternativas. - Definição clara da semântica para todas as
expressões na linguagem, (maneira formal, ou
matemática, e na forma baseada em UML).
17Estrutura da Apresentação
- Introdução
- XMI
- OCL
- MOF
- Introdução
- O que é a norma MOF?
- MOF 2.0 e UML 2.0
- Mudanças 1. para 2.0
- Perspectivas Futuras
18MOF - Introdução
- Standard da OMG para representar e manipular
metamodelos - O MOF define uma linguagem abstracta para
espeçificação, construção e gestão de metamodelos
independentemente da tecnologia de implementação - Alguns exemplos destes tipos de metamodelos são
UML, Common Warehouse Metamodel (CWM) e o próprio
MOF.
19MOF - O que é o MOF?
- A especificação MOF tem por base os seguintes
aspectos - Uma definição formal para o metamodelo MOF, ou
seja, uma linguagem abstracta para a definição de
metamodelos. - Regras para o mapeamento dos metamodelos MOF
para, uma implementação por exemplo em CORBA ou
Java.
20MOF - MOF 2.0 e UML 2.0
- O MOF pode ser usado como uma linguagem para
definir outras linguagens, neste caso UML. - Ao mesmo tempo que está a ser criada uma versão
2.0 da UML, também está ser elaborada uma versão
2.0 da norma MOF, o que vai permitir que o MOF e
a UML se combinem. - Formando um universo completo de instrumentos
capazes de suportar, analisar e efectuar o design
de um conjunto de famílias de ferramentas de
várias associações, operando via XML Metadata
Interchange.
21MOF - MOF 2.0 e UML 2.0 (continuação)
- A chegada da UML 2.0 vai resolver alguns
problemas no que diz respeito à falta de
intercâmbio e semânticas inadequadas no que diz
respeito à interligação com o MOF (problemas
estes que existiam nas versões anteriores). - Vai tentar quebrar de alguma forma
inconsistências que permaneciam entre ambos.
22Estrutura da Apresentação
- Introdução
- XMI
- OCL
- MOF
- Mudanças 1. para 2.0
- Desenvolvimento da UML 2.0
- Problemas da UML 1.
- Model-Driven Architecture (MDA)
- Especificação UML 2.0
- Outras Mudanças
- Novos Diagramas
- Perspectivas Futuras
23Mudanças 1. para 2.0 - Desenvolvimento da UML 2.0
- Em Junho de 2001 foi iniciado um OMG Request for
Proposal (RFP) - As propostas da 2ª revisão da superestrutura e a
3ª revisão da infraestrutura da UML foram
apresentadas ao OMG em Janeiro de 2003 - O processo de voto para adopção da UML 2.0
decorreu numa reunião do OMG em Março de 2003 - O U2 Partners submeteu a 3ª revisão da proposta
da superestrutura da UML ao OMG, em Abril de
2003 - Em Agosto de 2003 o OMG adoptou a especificação
final da UML 2.0.
24Mudanças 1. para 2.0 - Problemas da UML 1.
- O potential dos modelos Model-Driven
Development(MDD) não são explorados ao máximo - Capacidades inadequadas de modelação
- Demasiado complexo
- Definição de semânticas inadequadas
- Não existe capacidade de interligação entre
diagramas - Não existe total compatibilidade com o MOF.
25Mudanças 1. para 2.0 - Model-Driven Architecture
(MDA)
- Nova maneira de desenvolver aplicações
- Independente da plataforma
- Desenvolvimento baseado em modelos
- UML 2.0 como ferramenta de criação
- e desenvolvimento em vez de simples
documentação - 3 características fundamentais Portabilidade,
Interoperabilidade e Reutilização.
26Mudanças 1. para 2.0 - Especificação UML 2.0
- Para tornar a especificação UML mais formal e
coerente, esta foi dividida em 4 partes - A infra-estrutura, o núcleo da linguagem, que é
compatível com MOF, CWM e outros meta-modelos
suportados pela OMG - A super-estrutura, sobre o núcleo, que
disponibiliza funcionalidades para a construção
dos modelos - O OCL, que permite adicionar novas restrições aos
modelos, permitindo ao utilizador refinar todos
os aspectos fundamentais da especificação - A interligação entre modelos, permitindo ligar e
desenvolver vários modelos relacionados.
27Mudanças 1. para 2.0 - Outras Mudanças
- Desenvolvimento de sistemas em tempo real,
através da introdução de novos diagramas de
Temporização e Sequência - Profiles, ou seja, pacotes que contêm elementos
de modelos que foram criados relativos a uma
determinada área - Capacidade de interligação entre os diagramas.
28Mudanças 1. para 2.0 - Novos Diagramas
- Diagrama de Comunicações - Representa a dinâmica
de colaboração entre objectos. Mostra a troca de
mensagens e as relações entre esses objectos - Diagrama de Estrutura de Composições - Descreve a
estrutura interna de uma classe, componente ou
caso de uso, incluindo os pontos de interacção
destes com outras partes do sistema - Diagrama Temporal - Descreve as mudanças de um
estado ou condição de um objecto ao longo do
tempo, através de uma barra de tempo - Diagrama de Vista Geral de Interacção - Fornece
uma visão geral do fluxo de controlo dentro de um
processo de sistema ou de negócio.
29Estrutura da Apresentação
- Introdução
- XMI
- OCL
- MOF
- Mudanças 1. para 2.0
- Perspectivas Futuras
30Perspectivas Futuras
- Desenvolvimento da indústria do software
- Maior expressão, precisão e especificação da
comunicação entre sistemas - Grande efeito em propósitos de estandardização,
nos mais diversos tipos de utilização - Maior precisão das ferramentas que servem de
suporte à sua implementação.