uml - unified modeling language uml é uma linguagem para visualização, especificação,...
TRANSCRIPT
UML - Unified Modeling Language UML é uma linguagem para Visualização,
Especificação, Construção e Documentação
dos elementos de um sistema de software
2
Apresentação
UML - Unified Modeling Language Autores: Booch, Rumbaugh e Jacobson
◦ Reconhecendo a dificuldade em padronizar o
processo de desenvolvimento, decidiram
orientar o esforço numa linguagem de
modelagem que pudesse suportar todo o ciclo
de vida do desenvolvimento de software
3
Apresentação
UML - Unified Modeling Language É um Standard OMG desde 1997 Existem diversas ferramentas para esta
linguagem de modelagem
4
Apresentação
Objetivos da UML Modelar sistemas usando conceitos
orientados a objetos Estabelecer uma ligação explicita entre
artefatos conceituais (figuras) e
executáveis (programas)
5
Apresentação
Objetivos da UML Criar uma linguagem de modelagem adequada,
à manipulação humana e ao mesmo tempo à
manipulação por máquinas
◦ criação de ferramentas de desenho
◦ geração de código
◦ ....
6
Apresentação
Características gerais da UML É independente do domínio de aplicação É independente do processo ou metodologia de
desenvolvimento É independente das linguagens de programação
7
Apresentação
Características gerais da UML É independente das ferramentas de modelagem Apresenta mecanismos potentes de extensão
(estereótipos) Agrega um conjunto de diferentes diagramas (9
tipos diferentes)
8
Apresentação
Um diagrama é uma visão de um modelo◦ Fornece uma representação parcial do sistema
e é semanticamente consistente com outras visões complementares
◦ Em UML existem 9 diagramas padronizados Um modelo é uma descrição completa de um
sistema numa determinada perspectiva
9
Os diagramas da UML
Use CaseDiagramsUse Case
DiagramsDiagramas deCasos de Uso
ScenarioDiagramsScenario
DiagramsDiagramas deColaboração
StateDiagramsState
DiagramsDiagramas de Componentes
ComponentDiagramsComponent
DiagramsDiagramas deDistribuição
StateDiagramsState
DiagramsDiagramas deObjetos
ScenarioDiagramsScenario
DiagramsDiagramas deEstados
Use CaseDiagramsUse Case
DiagramsDiagramas deSequência
StateDiagramsState
DiagramsDiagramas deClasses
Diagramas deAtividades
Modelo
10
Os diagramas da UML
Visões representam as diferentes perspectivas
que descrevem um sistema:◦ funcional (estrutura estática e dinâmica)◦ não funcional (sincronismo, arquitetura
física, ...)◦ organizacional (organização do trabalho,
mapeamento com código)
11
As visões da UML
Em UML um sistema é representado por 5
“visões” diferentes as quais descrevem o
sistema de 5 perspectivas diferentes e
complementares
12
As visões da UML
Vista Lógica
Vista de
Processos
Vista de
implementação
Vista de
Distribuição
Vista do
utilizador
Vista Lógica
Vista de
Processos
Vista de
implementação
Vista de
Distribuição
Visão Lógica
Visão de
Processos
Visão de
Implementação
Visão de
Implantação
Visão do
Utilizador
13
As visões da UML
Visão do utilizador (Caso de Uso)
◦ representa o sistema na perspectiva dos
utilizadores (atores)
◦ casos de uso descrevem cenários de
utilização do sistema a partir da perspectiva
do utilizador final
14
As visões da UML
Visão Lógica (ou estrutural)
◦ Modelo da estrutura estática do sistema
(classes, objetos e relacionamentos)
◦ Os dados e a funcionalidade do sistema é
vista a partir de dentro do sistema
15
As visões da UML
Visão de processos (comportamento)◦ Representa os aspectos dinâmicos ou
comportamentais do sistema
◦ Descreve também as interações ou
colaborações entre vários elementos
estruturais descritos nas visão do utilizador e
na visão estrutural
16
As visões da UML
Visão de implementação
◦ Os aspectos estruturais e comportamentais do
sistema são representados como serão
construídosVisão de implantação (ambiental)
◦ Representa a arquitetura física com
computadores e outros dispositivos
17
As visões da UML
Diagrama de casos de uso◦ representa a visão do sistema na
perspectiva dos seu utilizadores
◦ mostra um conjunto de atores externos e a
sua ligação aos casos de uso fornecidos pelo
sistema
◦ um caso de uso é uma funcionalidade
oferecida pelo sistema
18
Os diagramas da UML
Um diagrama de casos de uso (use-cases)
descreve cenários de utilização do sistema na
perspectiva dos seus utilizadores Diagrama que permite dar uma visão global e de
alto nível do sistema
19
Diagrama de casos de uso
Elementos do diagrama
◦ casos de uso - descrevem funcionalidades do
sistema
◦ atores - representam pessoas ou dispositivos
que desempenham um papel no
funcionamento do sistema
20
Diagrama de casos de uso
21
Diagrama de casos de uso
Diagrama de classes
◦ especifica a estrutura estática do sistema
segundo a abordagem orientada por
objetos
◦ mostra a estrutura de classes e como estas se
relacionam
22
Os diagramas da UML
Mostram a estrutura de classes e como estas se relacionam, isto é, descrevem a estrutura estática do sistema a ser modelado
Capturam o vocabulário do sistema Construídos e refinados ao longo do
desenvolvimento
23
Diagrama de classes
Objetivos◦ Identificar e modelar conceitos no sistema◦ Especificar colaborações◦ Especificar esquemas lógicos de bases de
dados
24
Diagrama de classes
25
Diagrama de classes
Diagrama de objetos
◦ variante do diagrama de classes
◦ representa um exemplo do diagrama de
classes num determinado instante da
execução do sistema
26
Os diagramas da UML
Descreve um conjunto de instâncias
compatíveis com um diagrama de classes Permite ilustrar os detalhes de um sistema em
determinado momento, descrevendo para tal
possíveis configurações Objetivos
◦ ilustrar estruturas de dados/objetos
◦ especificar snapshots
27
Diagrama de objetos
28
Diagrama de objetos
Diagrama de sequência
◦ mostra a colaboração dinâmica entre objetos,
através da representação da troca de
mensagens entre estes (interação) ao longo do
tempo
29
Os diagramas da UML
Ilustra interações entre objetos num determinado período de tempo
Captura comportamento dinâmico Objetivos◦ modelar fluxo de controle◦ ilustrar situações típicas
30
Diagrama de Seqüência
31
Diagrama de Seqüência
Diagrama de colaboração
◦ é uma alternativa ao anterior (sequência),
porém com outra perspectiva – ênfase aos
objetos e o seus relacionamentos
32
Os diagramas da UML
Ilustra interações entre objetos com ênfase para a representação das ligações entre os objetos
O tempo não é um elemento explícito Captura comportamento dinâmico Objetivos◦ modelar fluxo de controle◦ ilustrar a coordenação da estrutura de objetos
e do controle
33
Diagrama de Colaboração
34
Diagrama de Colaboração
Diagrama de estados
◦ complemento da descrição de uma classe -
mostra todos os estados possíveis que os
objetos dessa classe podem ter, assim como
os eventos que causam a transição entre
estados
35
Os diagramas da UML
Descreve a sequência de estados que um objeto ou uma interação pode passar ao longo da sua existência, em resposta a estímulos recebidos, conjuntamente com as suas respostas e ações
captura comportamento dinâmico (orientado por eventos)
36
Diagrama de Estados
Objetivos◦ modelar o ciclo de vida do objeto◦ modelar objetos reativos (user interfaces,
dispositivos, etc.)
37
Diagrama de Estados
38
Diagrama de Estados
Diagrama de atividades
◦ mostra um fluxo sequencial de atividades
executadas numa operação
◦ pode ser usado para mostrar a sequência de
atividades num caso de uso
39
Os diagramas da UML
Caso particular de diagrama de transição de
estados, no qual os estados são substituídos por
ações e/ou atividades e as transições são
desencadeadas devido à conclusão de ações nos
estados originais
Diagrama de Atividades –
representa os fluxos conduzidos por
processamento interno
40
Diagrama de Atividades
captura comportamento dinâmico(orientado por atividades)
Objetivos: – modelar fluxos de trabalho de negócio (business workflows) – modelar operações
41
Diagrama de Atividades
42
Diagrama de Atividades
Diagrama de componentes
◦ mostra a estrutura física do código,
representada através de componentes, que
podem ser código fonte, binários ou
executáveis
◦ indica quais as classes que são
implementadas pelo componente e quais as
suas dependências
43
Os diagramas da UML
Captura a estrutura física da implementação, descrevendo as dependências entre componentes de software
Construído como parte da especificação da arquitetura
44
Diagrama de Componentes
Objetivos◦ organizar código fonte◦ construir uma versão executável◦ especificar uma base de dados física
45
Diagrama de Componentes
46
Diagrama de Componentes
Diagrama de implantação
◦ mostra a estrutura da arquitetura física
(Hardware e Software)
◦ representa nós (computadores e outros
dispositivos) e as suas ligações
◦ dentro de cada nó existem componentes
executáveis e objetos, que constituem o
software executável
47
Os diagramas da UML
Descreve a topologia do Hardware e do Software do sistema
Construído como parte da especificação da arquitetura
Objetivos◦ especificar a distribuição dos componentes◦ identificar entraves de performance
48
Diagrama de Implantação
49
Diagrama de Implantação