UML
(Unified Modeling Language)
Linguagem Unificada de
Modelagem
Prof: Ivan Fontainha Aula 3
Site: http://sites.google.com/site/ivanfontainha/
http://ivan.fontainha.googlepages.com
Bibliografia
■ BOOCH, Grady; RUMBAUGH, James; JACOBSON,
Ivar. UML: guia do usuário. 2.ed. rev. e atual. Rio de Janeiro: Elsevier, Campus, c2006.
■ MELO, Ana Cristina. Desenvolvendo aplicações com
UML 2.2: do conceitual à implementação. 3.ed. Rio de Janeiro: Brasport, 2010.
■ LARMAN, Craig. Utilizando UML e padrões: uma
UML – Fases de Desenvolvimento
■ Existem cinco fases no desenvolvimento de
sistemas de software (devem ser executadas nesta ordem):
◻ Análise de Requisitos
◻ Análise
◻ Design (projeto)
◻ Programação
UML – Notação da Linguagem
■ Das 5 fases de desenvolvimento da UML, as
fases de análise de requisitos, análise e design utilizam em seu desenvolvimento:
◻ Cinco tipos de visões
◻ Quatorze tipos de diagramas
UML – Visões
■ O sistema é descrito por várias visões, cada
uma representando uma projeção da descrição completa e mostrando aspectos particulares do sistema
■ Cada visão é descrita por um numero de
UML – Visões
■ Existem em alguns casos de sobreposições entre
os diagramas -> isto significa que um diagrama pode fazer parte de mais de uma visão
■ Os diagramas contém os modelos dos elementos
■
As Visões que compõe um sistema são:
UML – Visões
■
Visão Use-Case:
◻ Descreve a funcionalidade do sistema
desempenhada pelos atores externos do sistema (usuários)
◻ Visão use-cases é central, já que seu
conteúdo é base do desenvolvimento das outras visões do sistema
◻ Montada sobre os diagramas de use-cases e
UML – Visões
■
Visão Lógica:
◻ Descreve como a funcionalidade do sistema
está implementada
◻ Feita principalmente por analistas e
desenvolvedores
◻ Ao contrário da visão use-cases, a visão
lógica observa e estuda o sistema
UML – Visões
■
Visão Lógica:
◻ Ela descreve e especifica a estrutura estática
do sistema (classes, objetos e
relacionamentos) e as colaborações
dinâmicas quando os objetos enviarem mensagens uns para os outros para realizarem as funções do sistema
◻ Persistência e concorrência são definidas
UML – Visões
■
Visão Lógica:
◻ A estrutura estática é descrita pelos
diagramas de classe e objetos
◻ O modelo dinâmico é descrito pelos
UML – Visões
■
Visão de Componentes:
◻ É uma descrição da implementação dos
módulos e suas dependências
◻ É principalmente executados por
desenvolvedores, e consiste nos
UML – Visões
■
Visão de Concorrência:
◻ Trata a divisão do sistema em processos e
processadores
◻ Este aspecto, que é uma propriedade não
UML – Visões
■
Visão de Concorrência:
◻ A visão de concorrência é suportada pelos
diagramas dinâmicos, que são os diagramas
de estado, sequência, colaboração e
atividade, e pelos diagramas de
UML – Visões
■
Visão de Organização:
◻ Esta visão mostra a organização física do
sistema, os computadores, os periféricos e como eles se conectam entre si
◻ Esta visão é executada pelos
desenvolvedores, integradores e testadores, e
será representada pelo diagrama de
UML – Diagramas
■ A UML define em sua versão 2.2 quatorze tipos
UML – Diagramas
■ Diagramas Estruturais ou Estáticos : Mostram
as características dos seu sistema que não mudam com o tempo
■ Diagramas de Comportamento (Dinâmicos) :
UML – Diagramas
UML 1.4 UML 2.2
Diagrama de Atividades → Diagrama de Atividades Diagrama de Classes → Diagrama de Classes
Diagrama de Caso de Uso → Diagrama de Caso de Uso
Diagrama de Colaboração → Diagrama de Comunicação
UML – Diagramas
UML 1.4 UML 2.2
Diagrama de Implantação → Diagrama de Implantação Diagrama de Objetos → Diagrama de Objetos
Diagrama de Sequencia → Diagrama de Sequencia Diagrama de Pacotes
Diagrama de Estrutura Composta
Diagrama de Visão Geral
Diagrama de Tempo Estrutural
Comportamento
UML – Diagramas
◻ Diagrama de Caso de Uso:
■ Mostra os casos de uso, atores e seus
relacionamentos que expressam a
UML – Diagramas
◻ Diagrama de Classe:
■ Apresenta elementos conectados por
relacionamento
■ Usado para exibir atividades do mundo
UML – Diagramas
◻ Diagrama de Objetos:
■ Apresenta objetivos e valores de dados
■ Corresponde a uma instancia do diagrama
de classes
■ Mostra o estado de um sistema em um
UML – Diagramas
◻ Diagrama de Seqüência:
■ Mostra as interações que correspondem a
UML – Diagramas
◻ Diagrama de Comunicação:
■ É o antigo diagrama de Colaboração, que
UML – Diagramas
◻ Diagrama de Componentes:
■ Mostra as dependências entre
UML – Diagramas
◻ Diagrama de Implantação :
■ Mostra:
◻ a arquitetura do sistema em tempo de
execução
◻ as plataformas de hardware
◻ artefatos de softwares
◻ ambientes de softwares (como sistemas
UML – Diagramas
◻ Diagrama de Pacotes:
■ Usados para organizar elementos de
modelo e mostrar dependência entre eles
◻ Diagrama de Estrutura Composta :
■ Usados para mostrar a composição de uma
estrutura
■ Útil em estruturas compostas de estruturas
UML – Diagramas
◻ Diagrama de Visão Geral:
■ Uma variação do diagrama de atividades
UML – Diagramas
◻ Diagrama Temporal ou de Tempo:
■ Mostra a mudança de estado de um objeto
UML – Diagramas
◻ Diagrama de Perfil:
■ Representa mecanismos de
extenssibilidade, permitindo que
metaclasses de metamodelos existentes sejam estendidos para se adaptar a diferentes propósitos.
■ Ex: adaptar metamodelos UML a diferentes
UML – Diagramas
◻ Diagrama de Atividades:
■ Representa a execução de ações ou
UML – Diagramas
◻ Diagrama de Máquinas de Estados:
■ Representa as ações ocorridas em