300 likes | 453 Views
UML 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.
E N D
UML 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
Dezembro 2004 UML 2.0 – Unified Modeling Language 2 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 3 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 4 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 5 Introdução - Origens Meyer 1997 Wirfs - Brock 1990 Booch 1994 UML Shlaer – Mellor 1989 Rumbaugh 1991 Jacobson 1995
Dezembro 2004 UML 2.0 – Unified Modeling Language 6 Introdução - Características • Mecanismos de expansibilidade; • Diagrama de actividades; • Refinamento; • Interfaces; • Linguagem de Restrição.
Dezembro 2004 UML 2.0 – Unified Modeling Language 7 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 8 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 9 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 10 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 11 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 12 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 13 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 14 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 15 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 16 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 17 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 18 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 19 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 20 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 21 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 22 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 23 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 24 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 25 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 26 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 27 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 28 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 29 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 30 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.