UML 2.0
Unified Modeling Language
Trabalho realizado por:
- António Mota
ei02020
- Hugo Valente
ei02107
- Ivo Navega
ei02039
- José Pacheco
ei02054
- Pedro Pacheco ei02084
- Tiago Silva
ei02099
Estrutura da Apresentação
Introdução
XMI
OCL
MOF
Mudanças 1.* para 2.0
Perspectivas Futuras
Dezembro 2004
UML 2.0 – Unified Modeling Language
2
Estrutura da Apresentação
 Introdução
 Definição
 Origens
 Características
 Porquê usar UML?
 XMI
 OCL
 MOF
 Mudanças 1.* para 2.0
 Perspectivas Futuras
Dezembro 2004
UML 2.0 – Unified Modeling Language
3
Introduçã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
Dezembro 2004
UML 2.0 – Unified Modeling Language
4
Introdução - Origens
Wirfs - Brock
1990
Booch
Meyer
1994
1997
UML
Shlaer – Mellor
Rumbaugh
Jacobson
1989
1991
1995
Dezembro 2004
UML 2.0 – Unified Modeling Language
5
Introdução - Características
Mecanismos de expansibilidade;
Diagrama de actividades;
Refinamento;
Interfaces;
Linguagem de Restrição.
Dezembro 2004
UML 2.0 – Unified Modeling Language
6
Introduçã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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
7
Introduçã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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
8
Estrutura 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
Dezembro 2004
UML 2.0 – Unified Modeling Language
9
XMI - 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 DTD´s;
 Permite o trabalho em equipa
independentemente das ferramentas utilizadas;
 Possibilita a criação de aplicações distribuídas e
seguras.
Dezembro 2004
UML 2.0 – Unified Modeling Language
10
XMI - Modelos incorporados
Este modelo incluiu três outros modelos standard:
UML – Unified Modeling Language
XML – eXtensible Markup Language
MOF – Meta Object Facility
Dezembro 2004
UML 2.0 – Unified Modeling Language
11
XMI – 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
12
Estrutura 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
Dezembro 2004
UML 2.0 – Unified Modeling Language
13
OCL - 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
14
OCL - 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
15
OCL - 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).
Dezembro 2004
UML 2.0 – Unified Modeling Language
16
Estrutura 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
Dezembro 2004
UML 2.0 – Unified Modeling Language
17
MOF - 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
18
MOF - 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
19
MOF - 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
20
MOF - 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
21
Estrutura 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
Dezembro 2004
UML 2.0 – Unified Modeling Language
22
Mudanç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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
23
Mudanç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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
24
Mudanç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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
25
Mudanç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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
26
Mudanç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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
27
Mudanç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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
28
Estrutura da Apresentação
Introdução
XMI
OCL
MOF
Mudanças 1.* para 2.0
Perspectivas Futuras
Dezembro 2004
UML 2.0 – Unified Modeling Language
29
Perspectivas 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.
Dezembro 2004
UML 2.0 – Unified Modeling Language
30
Download

UML 2.0