Modulo A Uml

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Modulo A Uml as PDF for free.

More details

  • Words: 1,889
  • Pages: 33
Módulo II Introdução à UML - Alessandro Cerqueira - 2005

Introdução à Unified Modeling Language (UML)

Objetivo Apresentar os principais características e elementos da UML

2

História da Orientação a Objetos • Anos 60 - 70 – COBOL, FORTRAN, C – Métodos de Aná Análise e Projeto Estruturado

• Final dos Anos 60: Introdução à UML - Alessandro Cerqueira - 2005

– Simula (primeira linguagem a incorporar elementos OO)

• Anos 80 e Iní Início dos Anos 90 – ADA, Smalltalk, Smalltalk, C++ – Primeiros mé métodos OO

• Restante dos Anos 90: Iní Início de atraç atração por OO – Java, UML, Unified Process – Proliferaç Proliferação de Mé Métodos OO • Método: Notaç Notação + Atividades

Introdução à UML - Alessandro Cerqueira - 2005

3

Introdução à UML - Alessandro Cerqueira - 2005

4

5

Métodos OO Precursores • 1989 – Wirfs-Brock • Cartões CRC ( Classe – Responsabilidade - Colaborador)

• 1991 – Coad / Yourdon Introdução à UML - Alessandro Cerqueira - 2005

• OOA e OOD

• 1991 – Grady Booch • Método BOOCH

• 1991 – James Rumbaugh • Método OMT (Object (Object Modeling Technique) Technique)

• 1992 – Ivar Jacobson • OBJECTORY OOSE

• 1994 – Coleman • Método Fusion (Mistura de conceitos presentes nos Métodos Booch, Booch, OMT, CRC e Mé Métodos Formais).

6

Antes da UML • Vários métodos surgem entre 89 e 94 (“Guerra dos métodos”)

Introdução à UML - Alessandro Cerqueira - 2005

• Novas versões dos métodos, incorporando técnicas uns dos outros (OOSE, OMT-2, Booch’93) – ReconheciaReconhecia-se que havia pontos mais fortes em cada um dos métodos

• Parceria entre Booch e Rumbaugh (Rational) – 1994 – Unified Method (UM)

• Rational incorpora a Objective Systems de (Jacobson) (Objectory) – 1995 – parceria Booch/ Booch/Rumbaugh estendida com Jacobson – Unified Modeling Language (UML)

7

Evolução da UML

UML 2.0 UML 1.4 (2001)

UML 1.3 Aceitação pela OMG, Nov 1997

Introdução à UML - Alessandro Cerqueira - 2005

Submissão final na OMG, Sep ‘97 Retorno do público

Primeira submissão na OMG (Object Management Group), Jan ´97 Parceiros UML Web - June ´96

OOPSLA ´95

Outros Métodos

UML 1.1 UML 1.0

UML 0.9 Unified Method 0.8

Método Booch

OMT (Rumbaugh) Rumbaugh)

OOSE (Jacobson) Jacobson)

8

UML e seu Contexto de Utilização • UML - Linguagem Unificada de Modelagem • É uma linguagem para a representaç representação de modelos Introdução à UML - Alessandro Cerqueira - 2005

• Entretanto só só isto não é suficiente. suficiente. • També Também é necessá necessário definir QUEM faz O QUE, QUE, QUANDO é feito e COMO atingir um certo objetivo. objetivo. • També Também é necessá necessário determinar qual será será o Processo de Desenvolvimento a ser utilizado. utilizado.

Equipe de Desenvolvimento

Linguagem de Modelagem

Processo Unificado

9

Introdução à UML - Alessandro Cerqueira - 2005

UML e seu Contexto de Utilização •

A estratégia principal foi padronizar uma linguagem de modelagem e não padronizar um processo.



Remove as diferenças desnecessárias entre as notações dos métodos Booch, OMT e OOSE.

• Linguagem padrão de modelagem adotada pela OMG (Object Management Group), orgão de padronização da tecnologia OO. • Também é definido o RUP (Rational Unified Process) – Método: todo: Notaç Notação + workflow de desenvolvimento (quem, o que, quando e como) – Podemos fazer realizar o desenvolvimento utilizando a UML como padrão notacional sem necessariamente utilizar o RUP

10

Contribuições dadas para a UML Harel

Meyer Before and after conditions

Statecharts

Gamma, et al Frameworks and patterns,

HP Fusion Booch

Operation descriptions and message numbering

Introdução à UML - Alessandro Cerqueira - 2005

Booch method

Embley

Rumbaugh

Singleton classes and high-level view

OMT

Jacobson

Wirfs-Brock

OOSE

Responsibilities

Shlaer - Mellor

Odell

Object lifecycles

Classification

11

Estrutura Vertical da UML

Introdução à UML - Alessandro Cerqueira - 2005

• A UML define nove tipos diferentes de diagramas para visualizar, especificar, construir e documentar aspectos estáticos e dinâmicos de um sistema: – Visão Está Estática: tica: casos de uso, uso, classes, objetos, objetos, componentes e implantaç implantação. ão. – Visão Dinâmica: Dinâmica: seqü seqüência, ência, colaboraç colaboração, ão, grá gráficos de estados e atividades. atividades.

• Cada diagrama define uma visão – Apresentado sob um determinado ponto de vista – Fornece uma representaç representação parcial do sistema – Deve ser semanticamente consistente com outras visões

12

Estrutura Vertical da UML

Introdução à UML - Alessandro Cerqueira - 2005

Use Case Use Case Diagrams Diagrama de Diagrams Seqüências

Scenario Scenario Diagrams Diagrama Diagrams de Colaborações

Scenario Scenario de Diagrama Diagrams Diagrams Gráficos de Estados

Use Case Use Case Diagrams Diagrama Diagrams de Casos de Uso

State State Diagrams Diagrama Diagrams de Classes

State State Diagrams Diagrama Diagrams de Objetos

State State Diagrams Diagrama Diagrams de Componentes

Modelos do Sistema

Component Component Diagrams Diagrama Diagrams

Diagrama de Atividades

de Implantação

13

Estrutura Transversal da UML • Os diagramas da UML descrevem: – Itens

Introdução à UML - Alessandro Cerqueira - 2005

– Relacionamentos – Mecanismos de Extensibilidade

• Quatro tipos de Itens: – Itens Estruturais – Itens Comportamentais – Itens de Agrupamento – Itens Anotacionais

14

Estrutura Transversal da UML (Itens) Polígolo

Nome da Classe

• Itens Estruturais

Introdução à UML - Alessandro Cerqueira - 2005



Visibilidade

Atributos

+ origem : Ponto

<< construtor >> Ex: Classes, Interfaces, Colaboraç Colaborações, ões+,new ( ) << ações de desenho >> Casos de Uso, Uso, Classes Ativas, Ativas, + mover(p : Ponto) Componentes e Nós. + redimensionar(e : Escala) + apresentar( ) # invalidarRegião( )

• Itens Comportamentais

– Ex: Interaç Interações e Máquinas de

• Itens de Agrupamento

Responsabilidades Estado- - Gerenciar o estado do polígono - - Manipular suas transformações básicas

– Ex: Notas

Operações

Responsabilidades

– Ex: Pacotes e Subsistemas

• Itens Anotacionais

Assinatura

Nome da Interface

IApplication

15

Estrutura Transversal da UML (Relacionamentos) • Quatro tipos de Relacionamentos

Introdução à UML - Alessandro Cerqueira - 2005

– Dependência 0..1

– Associação

empregador

emprega

* funcioná funcionário

– Generalização – Realização Obs: Obs: A agregaç agregação é um tipo particular de associaç associação

16

Estrutura Transversal da UML (Mecanismos de Extensibilidade) • Três tipos de Mecanismos de Extensibilidade – Estereótipos

Introdução à UML - Alessandro Cerqueira - 2005

– Valores Atribuídos – Restrições

<< container>>

FilaDeEventos {versão = 3.2} Estereótipos

Valor Atribuído

+ adicionar (e : Evento) + remover (e : Evento) << consulta >> + tamanho ( ) : Integer << funções de ajuda >> + reordenar ( )

{adicionar ordenado}

17

Diagrama de Casos de Uso • Apresenta a funcionalidade do sistema como é vista pelos usuários Fazer ligação de conferência

Introdução à UML - Alessandro Cerqueira - 2005

Fazer Ligação estende o relacionamento

Rede Celular ator

Uso Programado Usuário associação

Receber ligação adicional

Receber Ligação Casos de uso

Fronteira do sistema

Telefone Celular

18

Diagrama de Casos de Uso • Construído nas primeiras fases do desenvolvimento (levantamento e especificação de requisitos)

Introdução à UML - Alessandro Cerqueira - 2005

• Propósitos – Especificar o contexto de um sistema – Capturar os requisitos de um sistema – Validar a arquitetura do sistema – Guiar a implementação e gerar casos para testes • Desenvolvido pelos analistas, especialistas do domínio e steakholders.

19

Introdução à UML - Alessandro Cerqueira - 2005

Diagrama de Classes • Apresenta o vocabulário do sistema e quais são os dados manipulados pelo sistema.

Empresa

agregação

classe

nome

multiplicidade Departamento

Escritório

localização

nome : Nome

endereço : String voz : Número

restrição papel

{subconjunto}

membro

generalização

associação EscritórioCentral

gerente Pessoa

nome : Nome códigoFuncionário : Inteiro título : String obterFoto( p : Foto ) obterSom ( ) obterInformaçãoDeContato ( )_ obterRegistrosPessoais ( )

atributos operações InformaçãoDeContato endereço : String

RegistroPessoal

dependência

interface

códigoDeImposto históricoDeEmprego salário

IInformaçãoSegura

20

Diagrama de Classes • Construído e refinado através do desenvolvimento

• Propósitos Introdução à UML - Alessandro Cerqueira - 2005

– Modelar e dar nomes aos conceitos no sistema – Especificar as colaborações – Especificar o esquema lógico do banco de dados • Desenvolvido por analistas, projetistas e implementadores

21

Diagrama de Objetos • Apresenta instâncias e ligações

Introdução à UML - Alessandro Cerqueira - 2005

e : Empresa

d1 : Departamento

d2 : Departamento

nome = “Vendas”

nome = “P&D” Vínculos ou ligações

d3 : Departamento objetos

valores dos atributos

nome = “Vendas RJ”

gerente

objeto anônimo

p : Pessoa : InformaçãoDeContato nome = “José da Silva” códigoDoFuncionário = 4362 cargo = “VP de Vendas”

endereço : “Rua da Fonte, 87”

22

Diagrama de Objetos • Construído durante a análise e o projeto • Propósito Introdução à UML - Alessandro Cerqueira - 2005

– Ilustrar a estrutura dos dados e objetos – Representar um estado momentâneo da estrutura dos dados e objetos

• Utilizado pelos analistas, projetistas e implementadores

23

Diagrama de Componentes • Apresenta a estrutura de arquivos que compõem a implementação página

encontre.html

Introdução à UML - Alessandro Cerqueira - 2005

executável encontre.exe

index.html

dbacs.dll

bibliotecas componentes

nateng.dll

24

Diagrama de Componentes • Parte da especificação da arquitetura • Propósitos: Introdução à UML - Alessandro Cerqueira - 2005

– Organizar o código-fonte – Construir uma versão executável – Especificar o banco de dados físico

• Desenvolvido por projetistas e programadores

25

Diagrama de Implantação • Apresenta a topologia do hardware do sistema

Introdução à UML - Alessandro Cerqueira - 2005

nós

conexões servidor de cache

servidor de cache nós

Rede local

servidor primário

servidor

servidor

servidor

26

Diagrama de Implantação • Parte da especificação da arquitetura • Propósitos Introdução à UML - Alessandro Cerqueira - 2005

– Especificar a distribuição dos componentes – Identificar complicações de desempenho

• Desenvolvido por projetistas, engenheiros de rede e engenheiros de sistema.

27

Diagrama de Seqüência • Apresenta o comportamento dinâmico (orientado pelo tempo) Introdução à UML - Alessandro Cerqueira - 2005

objeto

interação

linha de vida rótulo de seqúência mensagem

criação chamada

foco do controle recursão retorno

destruição

28

Diagrama de Colaboração

Introdução à UML - Alessandro Cerqueira - 2005

• Apresenta o comportamento dinâmico (orientado a mensagens)

vínculo mensagem

objeto

29

Diagramas de Sequência e Colaboração • Propósitos do Diagrama de Seqüência – Modelar o fluxo de controle

Introdução à UML - Alessandro Cerqueira - 2005

– Ilustrar cenários típicos

• Propósitos do Diagrama de Colaboração – Modelar o fluxo de controle – Ilustrar a coordenação da estrutura e controle dos objetos

• São semanticamente equivalentes!

30

Diagrama de Gráficos de Estado • Apresenta o comportamento dinâmico (orientado a eventos) Máquina de Estados Introdução à UML - Alessandro Cerqueira - 2005

estado final

estado

transição

estado aninhado guarda

estado inicial transição interna

evento ação

estado composto

31

Diagrama de Gráficos de Estado • Propósitos – Modelar o ciclo de vida dos objetos

Introdução à UML - Alessandro Cerqueira - 2005

– Modelar estados dos objetos de interface • Janelas (Em sistemas convencionais) • Páginas HTML (Em sistemas Web)

32

Diagrama de Atividades

Introdução à UML - Alessandro Cerqueira - 2005

estado inicial

• Apresenta o comportamento dinâmico (orientado a atividades)

Selecionar local

estado de ação

Contratar arquiteto

Desenvolver plano

Orçar plano

ramificação seqüêncial

[rejeitado] [senão]

bifurcação concorrente estado da atividade com submáquina

Trabalhar no local

Trabalhar c/ setores

união concorrente fluxo de objetos

Concluir Construção

estado final

: CertificadoDeHabitese [concluído]

33

Diagrama de Atividades • Propósitos – Modelar o fluxo de trabalho

Introdução à UML - Alessandro Cerqueira - 2005

– Modelar operações

Related Documents

Modulo A Uml
June 2020 3
Uml A
October 2019 5
Modulo A
November 2019 15
Uml
July 2020 31
Uml
October 2019 64
Uml
November 2019 50