prof. marcio gonçalves análise orientada a objetos uml - unified modeling language

49
Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

Upload: internet

Post on 17-Apr-2015

106 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

Prof. Marcio Gonçalves

Análise Orientada a

ObjetosUML - Unified Modeling

Language

Page 2: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 3: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 4: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

UML - Unified Modeling Language

• É um Standard OMG desde 1997

– 1ª versão padronizada – v 1.1 - Janeiro de 1997

– Últimas versões - v 1.4 (Setembro de 2001) - v 1.5 (Março de 2003)

• Existem diversas ferramentas para esta linguagem de modelagem

4

Apresentação

Page 5: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 6: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 7: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 8: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 9: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

Page 10: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

Page 11: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

11

Os diagramas da UML

Page 12: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

12

Os diagramas da UML

Page 13: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

Diagrama de objetos

– variante do diagrama de classes

– representa um exemplo do diagrama de classes num determinado instante da execução do sistema

13

Os diagramas da UML

Page 14: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

14

Os diagramas da UML

Page 15: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

15

Os diagramas da UML

Page 16: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

Diagrama de colaboração

– é uma alternativa ao anterior (sequência), porém com outra perspectiva – ênfase aos objetos e o seus relacionamentos

16

Os diagramas da UML

Page 17: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

17

Os diagramas da UML

Page 18: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

18

Os diagramas da UML

Page 19: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

19

Os diagramas da UML

Page 20: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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)

20

As visões da UML

Page 21: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• Em UML um sistema é representado

por 5 “visões” diferentes as quais

descrevem o sistema de 5

perspectivas diferentes e

complementares

21

As visões da UML

Page 22: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

22

As visões da UML

Page 23: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

23

As visões da UML

Page 24: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

24

As visões da UML

Page 25: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

25

As visões da UML

Page 26: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

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

26

As visões da UML

Page 27: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

27

Diagrama de casos de uso

Page 28: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

Elementos do diagrama

– casos de uso - descrevem funcionalidades do sistema

– atores - representam pessoas ou dispositivos que desempenham um papel no funcionamento do sistema

28

Diagrama de casos de uso

Page 29: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

29

Diagrama de casos de uso

Page 30: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

30

Diagrama de classes

Page 31: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• Objetivos– Identificar e modelar conceitos no

sistema– Especificar colaborações– Especificar esquemas lógicos de

bases de dados

31

Diagrama de classes

Page 32: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

32

Diagrama de classes

Page 33: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

33

Diagrama de objetos

Page 34: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

34

Diagrama de objetos

Page 35: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

35

Diagrama de Seqüência

Page 36: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

36

Diagrama de Seqüência

Page 37: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

37

Diagrama de Colaboração

Page 38: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

38

Diagrama de Colaboração

Page 39: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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)

39

Diagrama de Estados

Page 40: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• Objetivos– modelar o ciclo de vida do objeto– modelar objetos reativos (user

interfaces, dispositivos, etc.)

40

Diagrama de Estados

Page 41: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

41

Diagrama de Estados

Page 42: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

42

Diagrama de Atividades

Page 43: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• captura comportamento dinâmico(orientado por atividades)

• Objetivos: – modelar fluxos de trabalho de negócio (business workflows) – modelar operações

43

Diagrama de Atividades

Page 44: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

44

Diagrama de Atividades

Page 45: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

45

Diagrama de Componentes

Page 46: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• Objetivos

– organizar código fonte

– construir uma versão executável

– especificar uma base de dados física

46

Diagrama de Componentes

Page 47: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

47

Diagrama de Componentes

Page 48: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

• 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

Page 49: Prof. Marcio Gonçalves Análise Orientada a Objetos UML - Unified Modeling Language

49

Diagrama de Implantação