Enviar pesquisa
Carregar
UML Diagrama de Classes Sistema Matrícula
•
0 gostou
•
2,122 visualizações
Título melhorado com IA
Rafael Kleestadt da Cruz
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
Vinícius de Paula
Diagrama de Classes
Diagrama de Classes
Andre de Carvalho
Diagrama de Perfil e Estruturas Compostas
Diagrama de Perfil e Estruturas Compostas
OctviodeOliveiraJorg
Algoritmos visualg
Algoritmos visualg
Diego Sales
Si diagrama de classes
Si diagrama de classes
Andreia Gonçalves
Apresentação da UML
Apresentação da UML
Eliseu Castelo
Aula 7 - Modelagem de Software
Aula 7 - Modelagem de Software
Leinylson Fontinele
Aula 4 banco de dados
Aula 4 banco de dados
Jorge Ávila Miranda
Recomendados
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
Vinícius de Paula
Diagrama de Classes
Diagrama de Classes
Andre de Carvalho
Diagrama de Perfil e Estruturas Compostas
Diagrama de Perfil e Estruturas Compostas
OctviodeOliveiraJorg
Algoritmos visualg
Algoritmos visualg
Diego Sales
Si diagrama de classes
Si diagrama de classes
Andreia Gonçalves
Apresentação da UML
Apresentação da UML
Eliseu Castelo
Aula 7 - Modelagem de Software
Aula 7 - Modelagem de Software
Leinylson Fontinele
Aula 4 banco de dados
Aula 4 banco de dados
Jorge Ávila Miranda
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
Marcello Thiry
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
Vitor Hugo Melo Araújo
Diagrama de Casos de Uso
Diagrama de Casos de Uso
Nécio de Lima Veras
UML - Diagrama de Pacotes
UML - Diagrama de Pacotes
Wellington Oliveira
Programação orientada a objetos
Programação orientada a objetos
Cleyton Ferrari
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Janynne Gomes
Principais diagramas da UML
Principais diagramas da UML
Jéssica Nathany Carvalho Freitas
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Leinylson Fontinele
Java orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
Armando Daniel
Apostila de Banco de Dados
Apostila de Banco de Dados
info_cimol
Exercitando modelagem em UML
Exercitando modelagem em UML
info_cimol
Análise e Modelagem de Software
Análise e Modelagem de Software
Marcelo Yamaguti
UML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
Rodrigo Cascarrolho
PHP - Introdução
PHP - Introdução
Fabio Moura Pereira
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Leinylson Fontinele
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Leinylson Fontinele
Introdução à Engenharia de Software e UML
Introdução à Engenharia de Software e UML
Natanael Simões
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
Leinylson Fontinele
07 diagrama de classes de análise
07 diagrama de classes de análise
Filipe Soares
Classes abstratas e interfaces
Classes abstratas e interfaces
Nécio de Lima Veras
Diagrama de Classes (8).pdf
Diagrama de Classes (8).pdf
Jean440975
8 02
8 02
Luciano Almeida
Mais conteúdo relacionado
Mais procurados
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
Marcello Thiry
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
Vitor Hugo Melo Araújo
Diagrama de Casos de Uso
Diagrama de Casos de Uso
Nécio de Lima Veras
UML - Diagrama de Pacotes
UML - Diagrama de Pacotes
Wellington Oliveira
Programação orientada a objetos
Programação orientada a objetos
Cleyton Ferrari
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Janynne Gomes
Principais diagramas da UML
Principais diagramas da UML
Jéssica Nathany Carvalho Freitas
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Leinylson Fontinele
Java orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
Armando Daniel
Apostila de Banco de Dados
Apostila de Banco de Dados
info_cimol
Exercitando modelagem em UML
Exercitando modelagem em UML
info_cimol
Análise e Modelagem de Software
Análise e Modelagem de Software
Marcelo Yamaguti
UML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
Rodrigo Cascarrolho
PHP - Introdução
PHP - Introdução
Fabio Moura Pereira
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Leinylson Fontinele
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Leinylson Fontinele
Introdução à Engenharia de Software e UML
Introdução à Engenharia de Software e UML
Natanael Simões
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
Leinylson Fontinele
07 diagrama de classes de análise
07 diagrama de classes de análise
Filipe Soares
Classes abstratas e interfaces
Classes abstratas e interfaces
Nécio de Lima Veras
Mais procurados
(20)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
Diagrama de Casos de Uso
Diagrama de Casos de Uso
UML - Diagrama de Pacotes
UML - Diagrama de Pacotes
Programação orientada a objetos
Programação orientada a objetos
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Principais diagramas da UML
Principais diagramas da UML
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Java orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
Apostila de Banco de Dados
Apostila de Banco de Dados
Exercitando modelagem em UML
Exercitando modelagem em UML
Análise e Modelagem de Software
Análise e Modelagem de Software
UML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
PHP - Introdução
PHP - Introdução
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Introdução à Engenharia de Software e UML
Introdução à Engenharia de Software e UML
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
07 diagrama de classes de análise
07 diagrama de classes de análise
Classes abstratas e interfaces
Classes abstratas e interfaces
Semelhante a UML Diagrama de Classes Sistema Matrícula
Diagrama de Classes (8).pdf
Diagrama de Classes (8).pdf
Jean440975
8 02
8 02
Luciano Almeida
[CEFET][ESw] Aula 5 - Diagrama de Classe
[CEFET][ESw] Aula 5 - Diagrama de Classe
Universidade Federal de Minas Gerais
Diagrama de classe aula 02 PDF para UML.
Diagrama de classe aula 02 PDF para UML.
NunoVieira83
Diagrama de classe
Diagrama de classe
Suissa
Apresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplos
mauroladeiafilho
Apostila de uml
Apostila de uml
audiclerio
Diagrama classes
Diagrama classes
Gabriel Faustino
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdf
Celestino24
Paradigma Orientado a Objetos
Paradigma Orientado a Objetos
Álvaro Farias Pinheiro
[CRASHCOURSE] Orientação a Objeto e UML
[CRASHCOURSE] Orientação a Objeto e UML
Christopher Cerqueira
Aula 7 diagramas_classes2
Aula 7 diagramas_classes2
Portal_do_estudante_ADS
Sistema acadêmico
Sistema acadêmico
Leinylson Fontinele
UMLIntro.pptx
UMLIntro.pptx
RicardoMarciano5
DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e Relacionamentos
Cláudio Amaral
Metodologia orientado a objetos
Metodologia orientado a objetos
Gabriel Faustino
A Linguagem UML
A Linguagem UML
Nécio de Lima Veras
Padrões de projetos
Padrões de projetos
Gustavo Souza
Introdução à linguagem UML
Introdução à linguagem UML
Nécio de Lima Veras
Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
Carlos Albuquerque
Semelhante a UML Diagrama de Classes Sistema Matrícula
(20)
Diagrama de Classes (8).pdf
Diagrama de Classes (8).pdf
8 02
8 02
[CEFET][ESw] Aula 5 - Diagrama de Classe
[CEFET][ESw] Aula 5 - Diagrama de Classe
Diagrama de classe aula 02 PDF para UML.
Diagrama de classe aula 02 PDF para UML.
Diagrama de classe
Diagrama de classe
Apresentação sobre Diagrama de Classes com exemplos
Apresentação sobre Diagrama de Classes com exemplos
Apostila de uml
Apostila de uml
Diagrama classes
Diagrama classes
Aula 3-IDB - Modelo Conceptual-2.pdf
Aula 3-IDB - Modelo Conceptual-2.pdf
Paradigma Orientado a Objetos
Paradigma Orientado a Objetos
[CRASHCOURSE] Orientação a Objeto e UML
[CRASHCOURSE] Orientação a Objeto e UML
Aula 7 diagramas_classes2
Aula 7 diagramas_classes2
Sistema acadêmico
Sistema acadêmico
UMLIntro.pptx
UMLIntro.pptx
DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e Relacionamentos
Metodologia orientado a objetos
Metodologia orientado a objetos
A Linguagem UML
A Linguagem UML
Padrões de projetos
Padrões de projetos
Introdução à linguagem UML
Introdução à linguagem UML
Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
UML Diagrama de Classes Sistema Matrícula
1.
UML: Diagrama de
Classes
2.
© LES/PUC-Rio UML –
Diagrama de Classes • Introdução – Diagrama de classes • Elementos do diagrama de classes • Exemplo: Sistema de matrícula
3.
© LES/PUC-Rio Introdução -
Diagrama de Classes • Mostra um conjunto de classes e seus relacionamentos. • É o diagrama central da modelagem orientada a objetos. Aluno nome: Texto matrícula: Inteiro definirNome(nome) obterNome() definirMatricula(matricula) obterMatricula Turma código: Texto sala: Texto horario: Horario estaAberta() definirProfessor(professor) incluirAluno(aluno) está-matriculado-em Professor nome: Texto titulação: Texto definirNome(nome) obterNome() definirTitulacao(titulo) obterTitulacao é-ministrada-por
4.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
5.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
6.
© LES/PUC-Rio Elementos –
Diagrama de Classes Classes • Graficamente, as classes são representadas por retângulos incluindo nome, atributos e métodos. • Devem receber nomes de acordo com o vocabulário do domínio do problema. • É comum adotar um padrão para nomeá-las Ex: todos os nomes de classes serão substantivos singulares com a primeira letra maiúscula Nome_da_classe atributo1 atributo2 ... metodo1 metodo2 metodo3 ...
7.
© LES/PUC-Rio Elementos –
Diagrama de Classes Classes • Atributos – Representam o conjunto de características (estado) dos objetos daquela classe – Visibilidade: + público: visível em qualquer classe de qualquer pacote # protegido: visível para classes do mesmo pacote - privado: visível somente para classe Exemplo: + nome : String
8.
© LES/PUC-Rio Elementos –
Diagrama de Classes Classes • Métodos – Representam o conjunto de operações (comportamento) que a classe fornece – Visibilidade: + público: visível em qualquer classe de qualquer pacote # protegido: visível para classes do mesmo pacote - privado: visível somente para classe Exemplo: - getNome() : String
9.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
10.
© LES/PUC-Rio Elementos –
Diagrama de Classes Relacionamentos • Os relacionamentos possuem: – Nome: descrição dada ao relacionamento (faz, tem, possui,...) – Sentido de leitura – Navegabilidade: indicada por uma seta no fim do relacionamento – Multiplicidade: 0..1, 0..*, 1, 1..*, 2, 3..7 – Tipo: associação (agregação, composição), generalização e dependência – Papéis: desempenhados por classes em um relacionamento
11.
© LES/PUC-Rio Elementos –
Diagrama de Classes Pessoa Empresa 1..* Tipo: associação multiplicidade *trabalha para empregado papéis empregador sentido de leitura • Relacionamentos E a navegabilidade? nome
12.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Relacionamentos • O cliente sabe quais são seus endereços, mas o endereço não sabe a quais clientes pertence EndereçoCliente reside 1 * navegabilidade
13.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
14.
© LES/PUC-Rio Elementos –
Diagrama de Classes Relacionamentos: Associação • Uma associação é um relacionamento estrutural que indica que os objetos de uma classe estão vinculados a objetos de outra classe. • Uma associação é representada por uma linha sólida conectando duas classes. Pessoa Empresa associação
15.
© LES/PUC-Rio Elementos –
Diagrama de Classes Relacionamentos: Associação • 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) Pessoa Empresa 1..* associação multiplicidade *trabalha para
16.
© LES/PUC-Rio Relacionamentos: Associação 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
17.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
18.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Relacionamento: Agregação – É um tipo especial de associação – Utilizada para indicar “todo-parte” – um objeto “parte” pode fazer parte de vários objetos “todo” ItemPedido 1 1..* agregação todo parte
19.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
20.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Relacionamento: Composição – É uma variante semanticamente mais “forte” da agregação – Os objetos “parte” só podem pertencer a um único objeto “todo” e têm o seu tempo de vida coincidente com o dele – Quando o “todo” morre todas as suas “partes” também morrem TecladoNotebook FrameWindow 1 1 1 0..* 1..* 0..* errado
21.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Relacionamento: Composição Ex: Janela Scroll Título Corpo 1 0..12 1 Empresa Departamento Escritório 1 1..*1..* 0..1 *
22.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Agregação X Composição Andar Edifício1..n MesaSala 1..n 11 1..n 1..n
23.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
24.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Relacionamento: Generalização • É um relacionamento entre itens gerais (superclasses) e itens mais específicos (subclasses) “é um” “é um tipo de” superclasse subclasse Veículo Terrestre Aéreo
25.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Elementos de um diagrama de classes – Classes – Relacionamentos • Associação – Agregação – Composição • Generalização • Dependência
26.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Relacionamento: Dependência • Representa que a alteração de um objeto (o objeto indepedendente) pode afetar outro objeto (o objeto dependente) Ex: Obs: • A classe cliente depende de algum serviço da classe fornecedor • A mudança de estado do fornecedor afeta o objeto cliente • A classe cliente não declara nos seus atributos um objeto do tipo fornecedor • Fornecedor é recebido por parâmetro de método cliente fornecedor
27.
© LES/PUC-Rio Elementos –
Diagrama de Classes Import java.awt.Graphics; class HelloWorld extends java.applet.Applet { public void paint (Graphics g) g.drawString(“Hello, world!”, 10, 10); } HelloWorld Graphics paint(Graphics g) Applet
28.
© LES/PUC-Rio Elementos –
Diagrama de Classes • Classe de associação – Usada quando uma associação entre duas classes contiver atributos da associação • Atributos farão parte da classe de associação • C existe para todo relacionamento de A com B – C possui referência para A e para B • Não existem dois objetos C e C’que referenciam a mesma tupla A,B, isto é, não existe c(a,b,x) e c’(a,b,x’) onde a e b são objetos de A e B, respectivamente, e x e x’ são valores de um atributo de C. – d(a,b,x) e d(a,b,x’) existem A B C A D B
29.
© LES/PUC-Rio Elementos –
Diagrama de Classes PessoaEmpresa Emprego descrição salário atributos do relacionamento 1..*0..* trabalha PessoaEmpresa Pedido 10..*1 0..* fazpertence itemPedido • Não existe uma pessoa com dois empregos na mesma empresa • Uma pessoa pode fazer mais de um pedido na mesma empresa • Classe de associação
30.
© LES/PUC-Rio Exemplo: O
Blog • Um blog tem um título e uma data de criação e além disso é um conjunto de conteúdos. • Estes conteúdos (mensagens) podem ser notas ou comentários sobre as notas. Tanto notas quanto comentários têm características comuns como o texto e a data de sua criação. • Todo usuário possui: – E-mail (deve ser único, ou seja, não há mais de um usuário com o mesmo e-mail)
31.
© LES/PUC-Rio Blog: o
sistema deve... • Permitir a criação de blogs • Permitir a utilização de blogs – Qualquer usuário pode ler conteúdos – Somente o dono do blog pode criar notas – Qualquer usuário pode criar comentários. Para criar um comentário o usuários precisa ler as notas. – Somente o dono do blog pode remover conteúdos. Para remover um conteúdo ele precisará ler o conteúdo. Caso ele remova um comentário, o autor do comentário deve ser notificado por e-mail.
32.
© LES/PUC-Rio Blog: 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>>
33.
© LES/PUC-Rio Blog: Diagrama
de Classes 0..* 1 autor 0..* 0..* 1 dono 0..* 1 usuario 0..* usaUsuarioBlog -email:String +notificarExclusao:void Conteudo -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 Comentario +finalize:void
34.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula A Universidade XYZ deseja informatizar seu sistema de matrículas: • A universidade oferece vários cursos. • O Coordenador de um curso define as disciplinas que serão oferecidas pelo seu curso num dado semestre. • Várias disciplinas são oferecidas em um curso. • Várias turmas podem ser abertas para uma mesma disciplina, porém o número de estudantes inscritos deve ser entre 3 e 10. • Estudantes selecionam 4 disciplinas. • Quando um estudante matricula-se para um semestre, o Sistema de Registro Acadêmico (SRA) é notificado. • Após a matrícula, os estudantes podem, por um certo prazo, utilizar o sistema para adicionar ou remover disciplinas. • Professores usam o sistema para obter a lista de alunos matriculados em suas disciplinas. O Coordenador também. • Todos os usuários do sistema devem ser validados. Descrição
35.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula Diagrama de Casos de Uso
36.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula Descrição do Caso de Uso “Matricular em Disciplina” • Esse caso de uso se inicia quando o Estudante de Curso inicia uma sessão no sistema e apresenta suas credenciais. • O sistema verifica se a credencial é válida. • O sistema solicita que o estudante realize sua matrícula, selecionando 4 disciplinas. • O estudante preenche um formulário eletrônico de matrícula e o submete para uma análise de consistência. • O sistema analisa as informações contidas no formulário. – Se as informações são consistentes, o estudante é incluído em turmas abertas de 4 disciplinas, iniciando pelas preferenciais. – Se as informações não são consistentes, o sistema informa o motivo da inconsistência e solicita que o formulário seja alterado.
37.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula Professor Coordenador Estudante TurmaUniversidade Disciplina FormularioMatricula Curso AnalisadorMatricula SistemaRegistroAcademico ListaAlunos Diagrama de Classes: identificando as classes
38.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula • Exemplos de candidatos a relacionamentos: – A é parte física ou lógica de B. – A está contido fisicamente ou logicamente em B. – A é uma descrição de B. – A é membro de B. – A é subunidade organizacional de B. – A usa ou gerencia B. – A se comunica/interage com B. – A está relacionado com uma transação B. – A é possuído por B. – A é um tipo de B. Diagrama de Classes: identificando os relacionamentos
39.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula • O formulário de matrícula é processado por um analisador de matrícula • O analisador de matrícula gerencia a disciplina FormularioMatricula AnalisadorMatricula é-processado-por 10..* Disciplina FormularioMatricula AnalisadorMatricula é-processado-por 10..* 1 0..* Diagrama de Classes: identificando os relacionamentos
40.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula Professor Coordenador Estudante Turma Disciplina FormularioMatricula AnalisadorMatricula é-preenchido-por está-matriculado-em é-processado-por é-ministrada-por é-definida-por aluno gerencia 1 1 10..* 1 0..* 11..* 1 1..* 10..33..10 4 Diagrama de Classes
41.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula – Os atributos podem ser encontrados examinando-se as descrições dos casos de uso e também pelo conhecimento do domínio do problema. – Cada turma oferecida possui um código, uma sala e um horário. Turma código sala horário Diagrama de Classes: identificando os atributos
42.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula Coordenador FormularioMatricula AnalisadorMatricula é-preenchido-por está-matriculado-em é-processado-por é-ministrada-por é-definida-por aluno gerencia 1 1 10..* 1 0..* 11..* 1 1..* 10..33..10 4 Turma código sala horário Professor nome titulação Estudante nome matricula Disciplina nome numCréditos Diagrama de Classes
43.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula SIM submeterFormulario(formulario) AnalisadorMatricula adicionar(aluno, disciplina) : SIM : AnalisadorMatricula 2: adicionar(a,d ) 1: submeterFormulario(f) Diagrama de Classes: identificando os métodos
44.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula • E a navegabilidade? public class Turma { private String codigo; private String sala; private Estudante alunos[]; ... } Diagrama de Classes: public class Estudante { private String nome; private String matricula; ... } OBS: Turma não aparece como atributo de Estudante! TurmaEstudante 3..10 está-matriculado-em 3..10 4
45.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula • Acrescentando generalizações: – Atributos, operações e/ou relacionamentos comuns podem ser movidos para uma classe mais geral. Estudante matricula : Inteiro definirMatricula(matricula) obterMatricula() Usuario nome : Texto definirNome(nome) obterNome() Professor titulacao : Texto definirTitulacao(titulacao) obterTitulacao() Diagrama de Classes:
46.
© LES/PUC-Rio Exemplo: Sistema
de Matrícula SIM Usuario nome : Texto definirNome(nome) obterNome() FormularioMatricula obterEstudante() : Estudante obterNomeDIsciplina(i : Inteiro) : Texto Estudante matricula : Inteiro definirMatricula(matricula) obterMatricula() 1 1 é-preenchido-por 1 1-aluno Professor titulacao : Texto definirTitulacao(titulacao) obterTitulacao() AnalisadorMatricula adicionar(aluno, disciplina) 1 11 1 usa 10..* 10..* é-processado-por Disciplina nome : Texto numCreditos : Inteiro estaCompleta() adicionar(aluno : Estudante) 0..* 1 0..* 1 gerencia Turma codigo : Texto sala : Texto horario : Horario numAlunos : Inteiro completa : Booleano estaCompleta() : Booleano 3..10 4 3..10 4 está-matriculado-em 0..3 10..3 1 responsável-por 1..* 11 1..*
Baixar agora