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?