uml – visão geral - web.fe.up.ptjpf/talks/guarda28mai03/uml overview.pdf · uml – visão geral...

15
1 UML – Visão geral – v.1.1, Novembro de 2001 UML – Visão Geral 2 UML – Visão geral – v.1.1, Novembro de 2001 Índice n Introdução O que é a UML? Valor da UML Origens da UML Parceiros da UML n Modelos e diagramas n Elementos de modelação n Diagramas Diagrama de casos de utilização Diagrama de classes Diagrama de objectos Diagrama de componentes Diagrama de distribuição Diagrama de sequência Diagrama de colaboração Diagrama de estados Diagrama de actividades n Referências

Upload: lenhan

Post on 12-Sep-2018

247 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

1UML – Visão geral – v.1.1, Novembro de 2001

UML – Visão Geral

2UML – Visão geral – v.1.1, Novembro de 2001

Índice

n Introdução• O que é a UML?

• Valor da UML

• Origens da UML• Parceiros da UML

n Modelos e diagramas

n Elementos de modelação

n Diagramas• Diagrama de casos de utilização

• Diagrama de classes

• Diagrama de objectos• Diagrama de componentes

• Diagrama de distribuição

• Diagrama de sequência• Diagrama de colaboração

• Diagrama de estados

• Diagrama de actividades

n Referências

Page 2: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

3UML – Visão geral – v.1.1, Novembro de 2001

O que é a UML?

n UML = Unified Modeling Language

n UML é uma linguagem (notação com semântica associada) para• visualizar

• especificar• construir

• documentar

os artefactos de um sistema com uma componente intensiva de software (software intensive system)

n UML não é uma metodologia• não diz quem deve fazer o quê, quando e como

• UML pode ser usado segundo diferentes metodologias, tais como RUP (RationalUnified Process), FDD (Feature Driven Development), etc.

n UML não é uma linguagem de programação

4UML – Visão geral – v.1.1, Novembro de 2001

Valor da UML

n É um standard aberto• versão 1.1 aprovada pelo OMG (Object Management Group) em

Novembro de 1997• versão 1.3 aprovada em Junho de 1999

n Suporta todo o ciclo de vida do software• modelação do negócio (processos e objectos do negócio)• modelação de requisitos alocados ao software• modelação da solução de software

n Suporta diversas áreas de aplicação

n É baseado na experiência e necessidades da comunidade de utilizadores

n É suportado por muitas ferramentas

Page 3: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

5UML – Visão geral – v.1.1, Novembro de 2001

Booch

Booch method

Meyer

Before and after conditions

Harel

StatechartsGamma, et al

Frameworks and patterns,

HP Fusion

Operation descriptions and message numbering

Embley

Singleton classes andhigh-level view

Wirfs -Brock

Responsibilities

Odell

Classification

Shlaer - Mellor

Object lifecycles

Rumbaugh

OMT

Jacobson

OOSE

Origens da UML

6UML – Visão geral – v.1.1, Novembro de 2001

Parceiros da UML

n Rational Software Corporation

n Hewlett-Packard

n I-Logix

n IBM

n ICON Computing

n Intellicorp

n MCI Systemhouse

n Microsoft

n ObjecTime

n Oracle

n Platinum Technology

n Taskon

n Texas Instruments/Sterling Software

n Unisys

Page 4: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

7UML – Visão geral – v.1.1, Novembro de 2001

Modelos e Diagramasn Um modelo é uma representação em pequena escala, numa perspectiva

particular, de um sistema existente ou a criar• Atitude de abstracção (omissão de detalhes) fundamental na construção de um modelo• Modelos são a linguagem por excelência do projectista (designer)

• Modelos são veículos para comunicação com vários interessados (stakeholders )• Modelos permitem raciocinar acerca do sistema real, sem o chegar a construir

n Ao longo do ciclo de vida de um sistema são construídos vários modelos, sucessivamente refinados e enriquecidos

n Um modelo é constituído por um conjunto de diagramas (desenhos) consistentes entre si, acompanhados de descrições textuais dos elementos que aparecem nos vários diagramas

• Um diagrama é uma vista sobre um modelo• O mesmo elemento (exemplo: classe) pode aparecer em vários diagramas de um modelo

n No UML, há nove diagramas standard• Diagramas de visão estática: casos de utilização (use case), classes, objectos,

componentes, distribuição (deployment)

• Diagramas de visão dinâmica: sequência, colaboração, estados (statechart), actividades

8UML – Visão geral – v.1.1, Novembro de 2001

Modelos e Diagramas

Use CaseDiagramsUse Case

DiagramsDiagramas de Casos de Utilização

ScenarioDiagramsScenario

DiagramsDiagramas deColaboração

StateDiagramsState

DiagramsDiagramas de Componentes

ComponentDiagramsComponent

DiagramsDiagramas de Distribuição

StateDiagramsState

DiagramsDiagramasde Objectos

ScenarioDiagramsScenario

DiagramsDiagramas deEstados

Use CaseDiagramsUse Case

DiagramsDiagramas deSequência

StateDiagramsState

DiagramsDiagramas deClasses

Diagramas deActividades

Modelos

Page 5: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

9UML – Visão geral – v.1.1, Novembro de 2001

Elementos de Modelação (1)

n Elementos estruturais• classe, interface,

colaboração, caso de utilização, classe activa, componente, nó

Fonte: Grady Boochn Elementos de comportamento

• interacção, máquina de estados

n Elementos de agrupamento• pacote (package), subsistema

n Outros elementos• nota

10UML – Visão geral – v.1.1, Novembro de 2001

Elementos de Modelação (2)

n Relações• Dependência

• Associação

• Generalização

• Concretização (realization)

n Mecanismos de extensibilidade • Estereótipos

• Propriedades (tagged values)

• Restrições (constraints)

Fonte: Grady Booch

Fonte: Grady Booch

Page 6: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

11UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Casos de Utilização (Use Case Diagram)n Captura a funcionalidade do sistema tal como é visto pelos

utilizadores

n Construído nos primeiros estágios do desenvolvimento

n Objectivo• Especificar o contexto de um sistema

• Capturar os requisitos funcionais de um sistema

• Validar a arquitectura de um sistema• Dirigir a implementação e gerar casos de teste

n Desenvolvido por analistas e especialistas de domínio

12UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Casos de Utilização(Use Case Diagram)

Fonte: Grady Booch

Page 7: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

13UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Classes

n Captura o vocabulário de um sistema

n Construído e refinado ao longo do desenvolvimento

n Objectivo• Nomear e modelar conceitos no sistema• Especificar colaborações

• Especificar esquemas lógicos de bases de dados

n Desenvolvido por analistas, designers e implementadores

14UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Classes

Fonte: Grady Booch

composition

Page 8: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

15UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Objectos

n Mostra objectos (instâncias de classes) e ligações (instâncias de associações)

n Construído durante a análise e design

n Objectivo• Ilustrar estruturas de dados/objectos

• Especificar instantâneos (snapshots)

n Desenvolvido por analistas, designers e implementadores

16UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Objectos

Fonte: Grady Booch

Page 9: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

17UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Componentes

n Captura a estrutura física da implementação (tipicamente ficheiros)

n Construído como parte da especificação da arquitectura

n Objectivo• Organizar o código fonte

• Construir uma release executável

• Especificar uma base de dados física

n Desenvolvido por arquitectos e programadores

18UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Componentes

Fonte: Grady Booch

Page 10: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

19UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Distribuição (Deployment Diagram)n Captura a topologia do hardware de um sistema

n Construído como parte da especificação da arquitectura

n Objectivo• Especificar a distribuição de componentes• Identificar estrangulamentos de desempenho

n Desenvolvido por arquitectos, engenheiros de redes, e engenheiros de sistemas

20UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Distribuição (Deployment Diagram)

Fonte: Grady Booch

Page 11: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

21UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Sequência

n Captura comportamento dinâmico (orientado ao tempo)

n Objectivo• Modelar fluxos de controlo

• Ilustrar cenários típicos

22UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Sequência

Fonte: Grady Booch

Page 12: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

23UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Colaboração

n Captura comportamento dinâmico (orientado a mensagens)

n Objectivo• Modelar fluxo de controlo

• Ilustrar a coordenação entre estrutura de objectos e controlo

24UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Colaboração

Fonte: Grady Booch

Page 13: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

25UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Estados (Statechart Diagram)n Captura comportamento dinâmico (orientado a eventos)

n Objectivo• Modelar ciclo de vida de objectos

• Modelar objectos reactivos (interfaces com o utilizador, dispositivos, etc.)

26UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Estados (Statechart Diagram)

Fonte: Grady Booch

Page 14: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

27UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Actividades

n Captura comportamento dinâmico (orientado a actividades)

n Objectivo• Modelar processos de negócio e workflows

• Modelar operações (algoritmos)

28UML – Visão geral – v.1.1, Novembro de 2001

Diagrama de Actividades

Fonte: Grady Booch

Page 15: UML – Visão Geral - web.fe.up.ptjpf/talks/Guarda28MAI03/UML overview.pdf · UML – Visão geral –v.1.1, Novembro de 2001 5 Booch Booch method Meyer Before and after conditions

29UML – Visão geral – v.1.1, Novembro de 2001

Referências

n Ferramentas de modelação visual • Rational Rose (www.rational.com)• Together (www.togethersoft.com) – disponível nos computadores da FEUP• Platinum Paradigm Plus (www.platinum.com)• Microsoft Visio – disponível no DEEC ao abrigo de protocolo com Microsoft

n Livros• The Unified Modeling Language User Guide, Grady Booch et al, Addison-

Wesley, October, 1998 • UML, Metodologias e Ferramentas CASE, Alberto SIlva e Carlos Videira, Centro

Atlântico, 2001

n Especificações• www.omg.org