A Linguagem UML - profalansantos.files.wordpress.com · Introdução à UML o A UML é uma...

Preview:

Citation preview

A Linguagem UML

Introdução à UML

UML = Unified Modelling Language (Linguagem de Modelagem Unificada)

É uma notação gráfica (visual) para projetar sistemas

Define diagramas padronizados

É extensível

É complexa Mas usaremos apenas um sub-conjunto da UML

Introdução à UML

o A UML é uma linguagem visual utilizada para

modelar sistemas computacionais por meio do

paradigma de Orientação a Objetos.

o Tem como objetivo auxiliar na definição das

características do software ou dos elementos

inerente ao desenvolvimento do mesmo.

o UML sozinha não resolve

• Ela deve ser usada dentro de um processo de

desenvolvimento.

O que é UML?

o UML não é uma metodologia

• não diz quem deve fazer o quê, quando

ou como.

• UML pode ser usado segundo diferentes

metodologias.

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

O que é UML?

o Suporta todo o ciclo de vida do

software

o Suporta diversas áreas de aplicação

o É baseado na experiência e

necessidades da comunidade de

utilizadores

o É suportado por muitas ferramentas

Para que serve?

o UML é uma linguagem para

• visualização

• especificação

• construção

• documentação

Por que usar UML?

o É padronizado (garante organização).

o Comunicar a estrutura e o comportamento desejado de um

sistema.

o Visualizar e controlar a arquitetura de um sistema.

o Para melhorar o nosso entendimento de um sistema e, assim,

expor oportunidades para melhorias e reutilização.

o Utilização de uma notação padronizada que abrange qualquer

tipo de sistema.

o Facilidade no entendimento da orientação a objetos.

o Conceito em realidade.

Uma linguagem fornece um vocabulário e as regras para a

combinação de ”palavras” desse vocabulário, com o objetivo de

comunicar algo.

Uma linguagem de modelagem é uma linguagem cujo vocabulário

e regras têm seu foco voltado para a representação conceitual e

física de um sistema.

O vocabulário e as regras de uma linguagem de modelagem indicam

como criar e ler modelos bem formados, mas não apontam quais

modelos devem ser criados e nem em que seqüência.

Facilita a comunicação entre membros da equipe de

desenvolvimento.

A Linguagem UML

Visão Geral

Basicamente, a UML permite que

desenvolvedores visualizem os produtos de

seus trabalhos em diagramas padronizados.

Visão Geral

O UML é controlado pelo Object

Management Group (OMG) que é

padrão da indústria para descrever

graficamente o 'software'.

É importante distinguir entre um

modelo UML e um diagrama (ou

conjunto de diagramas) de UML.

A UML é uma Linguagem para...

...visualização,

especificação,

construção e

documentação.

http://www.uml.org/

http://www.omg.org/

A UML é uma Linguagem para Visualização

No processo de desenvolvimento de sistemas de software, é

quase impossível a visualização de toda a estrutura de um

sistema sem o uso de modelos que a represente.

A UML fornece os símbolos gráficos para a representação de

artefatos de software.

Por trás de cada símbolo empregado na notação da UML,

existe uma sintaxe e uma semântica bem-definidas.

Dessa maneira, um desenvolvedor poderá usar a UML para

escrever seu modelo, diminuindo a ambigüidade em sua

interpretação.

A UML é uma Linguagem para

Especificação

No presente contexto, especificar significa

construir modelos precisos, completos e sem

ambigüidades.

A UML atende a todas as decisões importantes em

termos de análise, projeto e implementação, que

devem ser tomadas para o desenvolvimento e

implantação de sistemas complexos de software.

A UML é uma Linguagem para Construção

Os modelos de UML podem ser

diretamente ”traduzidos” para várias linguagens de

programação.

Isso significa que é possível mapear os modelos da UML

para linguagens de programação tais como, Java, C++ e

Visual Basic.

Esse mapeamento permite a realização de uma

engenharia de produção: geração de código a partir de

um modelo em UML.

O processo inverso, a engenharia reversa, também é

possível, com a reconstrução de um modelo a partir de

sua implementação.

A UML é uma Linguagem para

Documentação

Cada modelo criado é um artefato do software

Diagrama de Seqüência

: SIM : AnalisadorMatricula

2: adicionar(a,d )

1: submeterFormulario(f)0..*

1 autor

0..*

0..*

1 dono

0..* 1

usuario

0..*

usaUsuar ioBlog

-email:String

+notificarExclusao:void

Conteu do

-dtCriacao:Date-texto:String-autor:UsuarioBlog

+Conteudo+exibirConteudo:void

Blog

-dtCriacao:Date-titulo:String-dono:UsuarioBlog-conteudos:Vector

+criarNota:void+exibirConteudo:void+comentar:void+lerComentarios:Vector+removerConteudo:void+lerNotas:Vector+Blog

Nota

-comentarios:Vector-attribute1:int

+comentar:void+lerComentarios:Vector+finalize:void

Comen tar io

+finalize:void

Diagrama de Classes

Diagrama de Casos de Uso

blogSystem

Criar Comentario

Ler Conteudo

Remover Conteudo Remover Nota

Remover Comentario

Criar Blog

Ler Comentario

Ler Nota

Criar Nota

Usuario

Dono do blog

<<include>> <<include>>

<<include>>

Vantagens da Utilização da UML

Padrão aberto e não proprietário.

Extensível.

Independência do processo de desenvolvimento.

Aplicável a todas as fases do ciclo de desenvolvimento.

Independência de linguagem de implementação.

De onde surgiu?

Da união de três metodologias de modelagem

Método de Booch - Grady Booch

Método OMT - Ivar Jacobson

Método OOSE - James Rumbaugh.

De onde surgiu?

UML BOOCH OMT

OOSE

Diagrama de Estados

Diagrama de Objetos

(Colaboração)

Diagrama de Processo

(Desenvolvimento)

Diagrama de Módulos

(Componentes) Use Case

Subsistemas (Package)

Diagrama de Interações

MiniEspecificação

Diagrama de Estados

Diagrama de Classes

Fundadores da UML

Por que os 3 autores

resolveram criar a UML?

Cada autor adotava idéias dos métodos dos

outros, então, evoluindo juntos produziriam

melhorias

A unificação dos 3 métodos trariam

estabilidade para o mercado

História da UML

1994: Booch, Jacobson e Rumbaugh

começaram a unificar suas notações

1996: Primeira versão (beta) da UML foi

liberada

1996/97: Grandes empresas formaram a

“UML Partners”

HP, IMB, Microsoft, Oracle, etc.

1997: UML foi adotada pela a OMG (Object

Management Group) como linguagem

padrão de modelagem

História da UML

o Percebeu-se a necessidade de um padrão para a

modelagem de sistemas, que fosse aceito e utilizado

amplamente.

o Alguns esforços nesse sentido de padronização, o

principal liderado pelo “três amigos”, Rumbaugh, Booch

e Jacobson na IBM Rational Software.

o Surge a UML em 1996 como a melhor candidata para

ser linguagem “unificadora”.

o Em 1997, a UML é aprovada como padrão pelo OMG.

o É uma linguagem ainda em desenvolvimento.

Resumo

Unified Modeling Language (UML) é...

... uma linguagem gráfica para visualizar, especificar,

construir e documentar os artefatos de um sistema de

software.

... resultado da unificação das notações utilizadas nos

métodos Booch, OMT (Object Modeling Technique) e

OOSE (Object-Oriented Software Engineering).

... adotada por grande parte da indústria de software e por

fornecedores de ferramentas CASE como linguagem

padrão de modelagem.

… utilizada com qualquer processo de desenvolvimento já

que é independente dele.

Resumo

o UML é...

• Uma linguagem visual.

• Independente de linguagem de

programação.

• Independente de processo de

desenvolvimento.

Resumo

A UML não é

Uma linguagem de programação.

Um processo

Uma metodologia

Análise e Projeto OO

regras de projeto

Uma técnica de modelagem

UML Define Diagramas

Tipos Principais de Diagramas

Estrutural

Comportamental

Objetivos

Visualizar o sistema

Especificar estrutura e/ou comportamento

Guiar e documentar das decisões

Alguns Diagramas UML

Diagramas Estruturais (Estáticos)

Diagrama de Classes

Diagramas de Objetos

Diagrama de Componentes, etc.

Diagramas Comportamentais (Dinâmicos)

Diagrama de Caso de Uso

Diagrama de Sequência

Diagrama de Estados

Diagrama de Atividades

Diagrama de Colaboração, etc.

Alguns Diagramas UML

Diagramas Estruturais (Estáticos)

Diagrama de Classes

Diagrama de Caso de Uso

Diagramas de Objetos

Diagrama de Componentes, etc.

Diagramas Dinâmicos

Diagrama de Seqüência

Diagrama de Estados

Diagrama de Atividades

Diagrama de Colaboração, etc.

Por enquanto, vamos trabalhar apenas

com diagramas de classes

Recommended