UML - Unified Modeling Language UML é uma linguagem para Visualização, Especificação,...

Post on 21-Apr-2015

146 views 0 download

Transcript of UML - Unified Modeling Language UML é uma linguagem para Visualização, Especificação,...

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