Introdução à UML -...
Transcript of Introdução à UML -...
![Page 1: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/1.jpg)
Introdução à UML
Prof. Jesus José de Oliveira Neto
![Page 2: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/2.jpg)
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
![Page 3: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/3.jpg)
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
![Page 4: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/4.jpg)
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
![Page 5: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/5.jpg)
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
![Page 6: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/6.jpg)
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
![Page 7: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/7.jpg)
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
![Page 8: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/8.jpg)
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
![Page 9: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/9.jpg)
Classe de Objetos
� Exemplo de uma classe Carro em UML
� Não é obrigatório definir atributos e métodos num diagrama de classes
![Page 10: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/10.jpg)
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)
![Page 11: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/11.jpg)
Atributos ou Propriedades
� Contém duas informações: o nome do atributo e o tipo do dados (sendo este último não obrigatório)
![Page 12: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/12.jpg)
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.
![Page 13: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/13.jpg)
Métodos ou comportamentos
� Os métodos são colocados na terceira divisão de uma classe
![Page 14: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/14.jpg)
Visibilidade
� Indica o nível de acessibilidade de um atributo ou método
�Existem quatro modos de visibilidade� Privada� Protegida� Pública� Pacote
![Page 15: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/15.jpg)
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 (#)
![Page 16: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/16.jpg)
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 (~)
![Page 17: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/17.jpg)
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
![Page 18: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/18.jpg)
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).
![Page 19: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/19.jpg)
Associação em UML
� Uma associação é representada por uma linha sólida conectando duas classes.
19
![Page 20: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/20.jpg)
� 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
![Page 21: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/21.jpg)
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
![Page 22: Introdução à UML - professor.pucgoias.edu.brprofessor.pucgoias.edu.br/.../material/Aula_03_Introducao_a_UML.pdf · Introdução à UML Prof. Jesus José de Oliveira Neto. UML –Linguagem](https://reader034.fdocument.pub/reader034/viewer/2022051309/5bfb5a5e09d3f2941b8c9f08/html5/thumbnails/22.jpg)
Dúvidas?