Introdução à UML -...

Post on 26-Nov-2018

229 views 0 download

Transcript of Introdução à UML -...

Introdução à UML

Prof. Jesus José de Oliveira Neto

UML – Linguagem de Modelagem Unificada

� Linguagem visual utilizada para modelar softwares baseados no paradigma de orientação a objetos

� UML não é uma linguagem de programação como C++ ou Java

� Seu propósito é auxiliar os desenvolvedores na definição das características do sistema:

� Requisitos� Comportamentos� Estrutura dentre outros

UML – Por que modelar software?

� Definir de forma mais precisa os recursos necessários para o desenvolvimento do software

� Pessoas� Ferramentas� Tempo dentre outros

� UML não é um processo de desenvolvimento de software

� UML pode ser utilizado em diferentes processos de desenvolvimento de software

UML – Modelo de Software

� Define uma visão geral do sistema

� Descreve os aspectos comportamentais e estruturais do sistema

� Fornece uma maneira eficiente de documentação

Diagramas em UML

� UML é composto por diversos tipos de diagramas

� Cada um serve para visualizar sob um determinado ponto de vista

� Alguns destes diagramas são:� Diagramas de casos de uso� Diagramas de classes� Diagramas de pacotes� Diagramas de sequência

Diagramas de classes (1/2)

� É o mais utilizado e um dos mais importantes da UML

� Serve de apoio para a maioria dos demais diagramas

� Define as estruturas das classes utilizadas pelo sistema

Diagramas de classes (2/2)

� Determina os atributos e métodos que cada classe tem

� Além de estabelecer como as classes se relacionam e trocam informações entre si

Classe de Objetos

� Classe representa uma categoria e na UML é representada por um retângulo que pode possui até três divisões

� A primeira divisão é para o nome da classe

� A segunda para os atributos

� E a terceira para os métodos

Classe de Objetos

� Exemplo de uma classe Carro em UML

� Não é obrigatório definir atributos e métodos num diagrama de classes

Atributos ou Propriedades

� Definem as características de um objeto que podem variar de um para outro

� São apresentados na segunda divisão da classe

� Contém duas informações: o nome do atributo e o tipo do dados (sendo este último não obrigatório)

Atributos ou Propriedades

� Contém duas informações: o nome do atributo e o tipo do dados (sendo este último não obrigatório)

Métodos ou comportamentos

� UML usa o termo operação

� Representa uma funcionalidade que um objeto da classe pode executar

� Um método pode receber ou não parâmetros de entrada e também pode retornar valores.

Métodos ou comportamentos

� Os métodos são colocados na terceira divisão de uma classe

Visibilidade

� Indica o nível de acessibilidade de um atributo ou método

�Existem quatro modos de visibilidade� Privada� Protegida� Pública� Pacote

Visibilidade

� Privada: Somente os objetos da classe detentora do atributo ou método poderão acessá-lo. Representada pelo símbolo de menos (–)

� Protegida: Além dos objetos da classe detentora do atributo ou método também os objetos de suas subclasses poderão ter acesso. Representada por símbolo (#)

Visibilidade

� Pública: Os atributos ou métodos podem ser acessados por qualquer objeto. Representada pelo símbolo de mais (+)

� Pacote: Os atributos ou métodos podem ser acessados por qualquer objeto dentro do pacote. Representada por til (~)

Visibilidade

� Os símbolos de visibilidade são colocados à esquerda do atributo ou método

� No exemplo acima, os atributos cor e portas possuem visibilidade privada enquanto o método transportarPessoas()

possui visibilidade pública

Tipos de dados em UML

� Em UML, os tipos dos dados são definidos depois dos nomes dos atributos e métodos seguido pelo símblo de dois pontos :

� No exemplo acima, cor é do tipo String enquanto portas é int. O método transportarPessoas() possui um parâmetro de entrada do tipo int chamado quantidade e que não retorna nenhum valor (void).

Associação em UML

� Uma associação é representada por uma linha sólida conectando duas classes.

19

� Indicadores de multiplicidade:� 1 Exatamente um� 1..* Um ou mais� 0..* Zero ou mais (muitos)� * Zero ou mais (muitos)� 0..1 Zero ou um� m..n Faixa de valores (por exemplo: 4..7)

Associação em UML

20

Relacionamentos: Associação

� Exemplo:� Um Estudante pode ser um aluno de uma Disciplina e

um jogador da Equipe de Futebol� Cada Disciplina deve ser cursada por no mínimo 1

aluno� Um aluno pode cursar de 0 até 8 disciplinas

21

Dúvidas?