cin/ufpe – in1008 - projeto conceitual de bd 2 3 in1008 – projeto conceitual de bd diagramas uml...
TRANSCRIPT
![Page 2: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/2.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 2
IN1008 – Projeto Conceitual de BD
Diagramas UML para Modelagem de
Dados
Por:Clarissa César Borba
Fabrício [email protected]
![Page 3: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/3.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 3
Roteiro
• Motivação• Estado da Arte• Introdução• Diagramas
Diagrama de Casos de Uso Diagrama de Classes
• Referências
![Page 4: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/4.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Motivação
• A UML foi planejada para ser uma linguagem flexível e customizável, podendo ser utilizada para vários propósitos, não só para a construção de aplicações Orientada a Objetos
• Permite diferentes tipos de modelagem, incluindo modelos para processos de negócio, fluxo de eventos, aplicações, arquiteturas e banco de dados
• Unificação de todos os modelos do sistema (aplicação e bando de dados) em torno de uma única linguagem, que pode ser compartilhada por todos os envolvidos no desenvolvimento do sistema (analistas, programadores, DBAs, etc)
4
![Page 5: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/5.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Estado da Arte
• A UML está em contínuo desenvolvimento UML 1.1, 1.3, 1.4, 1.5, 2.0 e UML 2.1
• Novas linguagens baseadas na UML estão sendo desenvolvidas, a fim de solucionar problemas específicos SysML (Systems Modeling Language)
5
![Page 6: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/6.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 6
Introdução
• Unified Modeling Language• A UML é uma linguagem de modelagem para:
Visualização Especificação Construção Documentação Comunicação
![Page 7: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/7.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 7
Criadores da UML
• James Rumbaugh - Object Modeling Technique (OMT)• Grady Booch - Booch Method• Ivar Jacobson - Objectory (OOSE) Process
![Page 8: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/8.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 8
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
![Page 9: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/9.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 9
História
Fonte: http://www.cin.ufpe.br/~if119
![Page 10: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/10.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 10
Elementos Essenciais
ElementosEstruturais
ElementosComportamentais
Elementos deAgrupamento
Elementos deAnotação
![Page 11: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/11.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 11
Elementos Estruturais
• São as partes estáticas de um modelo, representando elementos que são ou conceituais ou físicos.
• Exemplos: Classe Interface Use Cases Componente Nó
![Page 12: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/12.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 12
Elementos Comportamentais
• São as partes dinâmicas dos modelos da UML.• Exemplos:
Interação - especifica um conjunto de mensagens trocadas entre objetos Máquina de Estado - especifica seqüências de estados de um objeto
![Page 13: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/13.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 13
Elementos de Agrupamento
• São as partes organizacionais dos modelos da UML.• Exemplos:
Pacotes - mecanismo para organização de elementos dentro de grupos
![Page 14: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/14.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 14
Elementos de Anotação
• São partes explicativas dos modelos da UML. São comentários que você aplica para descrever, iluminar e remarcar elementos no modelo.
• Exemplos: Nota - símbolo contendo restrições ou comentários que são melhor
expressadas em textos
![Page 15: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/15.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 15
Diagramas
• São representações gráficas de um conjunto de elementos. São desenhados para visualizar um sistema de diferentes perspectivas.
• Exemplos: Diagramas Estruturais Diagramas Comportamentais Diagramas de Interação
![Page 16: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/16.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 16
Diagramas Estruturais
• Diagramas Estruturais Diagrama de Objetos
Diagrama de Classes
Diagrama de Componentes
Diagrama de Instalação
Diagrama de Pacotes
Diagrama de Estrutura (UML2.0)
![Page 17: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/17.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 17
Diagramas Comportamentais
• Diagramas Comportamentais Diagrama de Caso de Uso
Diagrama de Transição de Estados
Diagrama de Atividade
![Page 18: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/18.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 18
Diagramas de Interação
• Diagramas de Interação Diagrama de Sequência
Diagrama de Interatividade
Diagrama de Colaboração ou Comunicação
Diagrama de Tempo (UML2.0)
![Page 20: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/20.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 20
Diagramas de Use Case
• São especialmente importantes na organização e modelagem dos comportamentos de um sistema
• Use Case é a especificação de sequências de ações que um sistema, subsistema ou classe pode realizar, interagindo com um dos agentes
![Page 21: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/21.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 21
Diagramas de Use Case
Estudante
Secretária
<<estende>> Solicitar histórico dosemestre atual
Solicitar histórico detodos os semestres
Solicitarhistórico
<<estende>>
Verificardependências
Matricularaluno<<inclui>>
Sistema de controlede pré-requisitos
![Page 22: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/22.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 22
Diagramas de Classe
• Os diagramas de classes são os principais diagramas estruturais da UML
• Diagramas de classe mostram classes, interfaces e seus relacionamentos
• As classes especificam a estrutura e o comportamento dos objetos, que são instâncias de classes
![Page 23: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/23.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 23
Diagramas de Classe
+confirmar()+cancelar()-calcularTotal():CurrencygerarNovoCodigo: String
-codigo: Integer-dataRecebido-total: Currency
Pedido
#creditoPermitido: Currency#nivelCredibilidade()
-nome: String-endereco: String-dataPrimeiraCompra: Date-dataUltimaCompra: Date-totalComprado: Currency
Cliente
-quantidade: Integer-preco: Currency-emEstoque: Boolean
Item de PedidonomeContato: Stringtelefones[1..10]: StringCGC: StringFAX[1..3]: String
Cliente pessoa-jurídica
colocarListaNegra()
nome: StringCPF: StringnumCartaoCredito
Cliente pessoa-física
EmpregadoProduto
* representantede vendas
*
*
IPessoa
itens
![Page 24: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/24.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 24
Diagramas de Objetos
• Mostram objetos e seus relacionamentos• Representam instâncias estáticas de elementos dos
diagramas de classes• Os diagramas de objetos são úteis para a modelagem de
estruturas de dados complexas
![Page 25: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/25.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 25
Diagramas de Objetos
p2: Professormatricula: "205-6712-09"nome: "Jaelson Castro"
p1: Professor
codCurso: "IF291"descrição: "MPS"codTurma: I7
: Curso
codCurso: "IF185"descrição: "AER"codTurma: I6
: Curso
matricula: "219846534"nome: "Nelson Mandella"
:aluno
matricula: "562746134"nome: "John Major"
:aluno
: Aluno
: Aluno
: Aluno
: Aluno
c1: Curso
c2: Curso
c3: Curso
Bill
: Aluno : Aluno
Lewinsky
-matrícula: String-nome: String
Professor
-codDisciplina: String-descrição: String-codTurma: String
Curso
-matrícula: String-nome: String-período: Integer
Aluno
[0..10]
ministra
[1..5]
*[1..3]
![Page 26: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/26.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 26
Diagramas de Seqüência
• Mostram um conjunto de objetos, seus relacionamentos e as mensagens que podem ser enviadas entre eles
![Page 27: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/27.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 27
Diagramas de Seqüência
Janela de entradade pedido p: Pedido : ItemPedido :ItemEstoque
preparar()
* [para cada item do pedido]preparar()
emEstoque := verificar()
[emEstoque]remover() estoqueBaixo :=
verificEstoqueBaixo()
:ItemRenovEstoque
:ItemEntrega
[estoqueBaixo]<<criar>>
[emEstoque]<<criar>>
![Page 28: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/28.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 28
Diagramas de Colaboração
• Mostram um conjunto de objetos, seus relacionamentos e as mensagens que enfatizam a organização dos objetos que trocam mensagens
![Page 29: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/29.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 29
Diagramas de Colaboração
Janela de entradade pedido
p: Pedido
: ItemPedido :ItemEs toque
:ItemRenov Es toque:ItemEntrega
1: preparar( )
1.1: *[para c ada item do pedido] preparar( )
1.1.1 : emEs toque := v erif ic ar( )1.1.2 : [emEs toque] remov er( )
1.1.2.1: es toqueBaix o := v erif ic Es toqueBaixo( )
1.1.2.2 [es toqueBaix o] <<c riar>>
1.1.3 : [emEstoque] <<c riar>>
![Page 30: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/30.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 30
Diagramas de Estados
• Mostram uma máquina contendo estados, transições, eventos e atividades
• Estes diagramas são usados para modelar o comportamento de objetos (com comportamento complexo)
• Nestes diagramas são modelados os estados em que um objeto pode estar e os eventos que fazem o objeto passar de um estado para outro
![Page 31: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/31.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 31
Ocioso
Manutenção
fazerManutenção
Validando
Selecionando Processando
Imprimindo
[continuar]
[não continuar]
H
entry / lerCartão exit / ejetarCartão
cartãoInserido
cancelar
Ativo
Diagramas de Estados
![Page 32: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/32.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 32
Diagramas de Atividades
• São um caso especial dos Diagramas de Estados, com a maioria das transições resultantes do término das atividades
• Mostram o fluxo entre atividades (ações não-atômicas)• São semelhantes aos antigos fluxogramas• São muito usados para modelar atividades concorrentes
![Page 33: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/33.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 33
Diagramas de Atividades
Procurar bebida
[achou café]
H
PessoaH
[sem café] [sem Coca]
[achou Coca]
Pegar latade Coca
Beber
Adicionar água àmáquina
Colocar caféno filtro
Colocar filtrona máquina
Ligar máquina
Filtrar café
Pegarxícara
Colocar café naxícara
![Page 34: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/34.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 34
Diagramas de Componentes
• Mostram componentes e os relacionamentos entre eles• São usados para modelar o aspecto físico de um sistema• Exemplos de componentes são documentos, executáveis e
tabelas de bancos de dados
![Page 35: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/35.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 35
Diagramas de Componentes
FormCadastro.html
Cadastro.exe
Principal.html
FormEntrada.html
Autenticacao.exe
<<link>>
<<link>>Banco
Usuários
Senhas
![Page 36: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/36.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 36
Diagramas de Implantação
• São usados para modelar o ambiente em que o sistema será executado
• São compostos por nós e relacionamentos de comunicação• Um nó pode ser um computador, uma rede, um disco rígido,
um sensor, etc.
![Page 37: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/37.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 37
Diagramas de Implantação
servidorWeb
Autenticação.exe
Cadastro.exe
servidorDeArquivos
FormCadastro.html
Principal.html
FormEntrada.html
servidorBancoDeDados
SGBD
O SGBD a serutilizado aindanão foi escolhido.
PC - G309
NestscapeCommunicator
5.0
![Page 38: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/38.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Ferramentas
• JUDE http://jude.change-vision.com
• Rational Rose http://www-306.ibm.com/software/rational
• Borland Together http://www.borland.com/us/products/together
• Poseidon (baseada no ArgoUML) http://www.gentleware.com
• MagicDraw UML http://www.magicdraw.com
38
![Page 40: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/40.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 40
Origem
• Ivar Jacobson• Alistair Cockburn
![Page 41: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/41.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 41
Caso de Uso
• Caso de uso (use case) é uma técnica empregada para especificar o comportamento que se espera do sistema.
• Casos de uso possibilitam que desenvolvedores obtenham uma compreensão comum do sistema, junto aos usuários e especialistas do domínio.
![Page 42: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/42.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 42
Caso de Uso
• Cada caso de uso descreve uma funcionalidade requerida do sistema.
• Um caso de uso é uma descrição de um conjunto de seqüência de ações, incluindo variações, que um sistema executa a partir da interação de coisas externas ao sistema.
• Casos de uso podem incluir seqüências alternativas, ou sequências excepcionais (de erro)
![Page 43: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/43.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 43
Estudo de Caso
• Uma universidade X deseja informatizar a sua biblioteca. Em conversas com o usuário, as seguintes características foram levantadas: Alunos e professores podem ter acesso ao acervo da biblioteca Usuários devem ser cadastrados antes que possam ter acesso ao acervo
![Page 44: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/44.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 44
Estudo de Caso
• O acervo da biblioteca é constituído por títulos e periódicos• Apenas títulos podem ser emprestados aos usuários, sendo
os periódicos mantidos apenas para consulta• O atraso na devolução de títulos implica na cobrança de
multa sobre cada dia de atraso• O usuário pode também reservar títulos emprestados
![Page 45: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/45.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 45
Estudo de Caso
• Documentos para o acervo da biblioteca são adquiridos através de compra ou de doação
• Professores podem solicitar a compra de novos títulos ou periódicos para o acervo
• Periodicamente, auditorias são realizadas para que o extravio de títulos possa ser averiguado.
![Page 46: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/46.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 46
Casos de Uso
Notação
Nome do caso de uso
![Page 47: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/47.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 47
Casos de Uso
Exemplo
Realizar reserva Cadastrar cliente
![Page 48: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/48.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 48
Atores• Um caso de uso envolve a interação de atores com o
sistema.• Um ator é uma entidade externa ao sistema que, de alguma
maneira, interage com ele.• Um ator, tipicamente, estimula o sistema com eventos de
entrada ou recebe algo dele.
![Page 49: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/49.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 49
Atores
• Atores não são, necessariamente, pessoas.• Atores podem ser outros sistemas ou hardware externo que
interage com o sistema.
![Page 52: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/52.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 52
Atores
Exemplo
Usuário
Aluno Professor
generalização
![Page 53: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/53.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 53
Atores
• Atores podem ser conectados a casos de uso apenas por associação (uma linha que une o ator ao caso de uso).
• Uma associação entre um ator e um caso de uso indica que o ator e o caso de uso comunicam-se, cada um, possivelmente, enviando e recendo mensagens.
![Page 54: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/54.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 54
Identificando Atores
• Para identificar atores, pergunte: Quem usa o sistema? Que outros sistemas usam este sistema? Quem obtém informação deste sistema? Quem fornece informação para o sistema? Alguma coisa acontece automaticamente neste sistema? Quem dá suporte e mantém o sistema? Onde o sistema será utilizado na empresa?
![Page 55: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/55.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 55
Identificando Casos de Uso
• Para identificar casos de uso, o seguinte método pode ser utilizado: Identifique os atores relacionados a um sistema Para cada ator, identifique os processos que eles iniciam ou dos quais eles
participam.
![Page 56: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/56.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 56
Identificando Casos de Uso
• Para identificar casos de uso, pergunte: Para que o ator usará o sistema? O ator irá criar, armazenar, modificar, excluir ou consultar dados no sistema? O ator necessitará informar o sistema sobre eventos externos ou mudanças? O ator deverá ser informado sobre certas ocorrências no sistema?
![Page 57: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/57.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 57
Diagrama de Casos de Uso
• Um Diagrama de Casos de Uso exibe um conjunto de casos de uso para um sistema, os atores e a relação entre os atores e os casos de uso.
• A finalidade do diagrama é apresentar um tipo de diagrama de contexto, através do qual pode-se, rapidamente, compreender quais são os atores do sistema e as maneiras principais segundo eles o utilizam.
• Servem para facilitar o entendimento de um sistema mostrando a sua “visão externa”.
![Page 58: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/58.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 58
Diagrama de Casos de Uso
Consultaracervo
Registrardevolução
RealizarReserva
Usuário
Aluno Professor
SolicitarCompra de Documentos
Bibliotecário
Cadastrardocumento
Realizarauditoria
Cadastrarusuário
Emprestartítulo
![Page 59: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/59.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 59
Diagrama de Casos de Uso
Consultaracervo
Usuário Bibliotecário
• A seta usada nas associações indica a direção do início da comunicação entre os elementos do diagrama.
![Page 60: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/60.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 60
Um engano com Casos de Uso
• Um engano comum com casos de uso é representar como casos de uso passos individuais, operações ou transações.
• Um caso de uso é uma descrição completa de um processo relativamente grande, que inclui, geralmente, muitos passos ou transações.
![Page 61: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/61.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 61
Um engano com Casos de Uso
Calcular multa
Representação incorretade um caso de uso
Exemplo
![Page 62: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/62.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 62
Categorizando Casos de Uso• Os casos de uso devem ser categorizados, de acordo com
sua importância: Casos de uso essenciais: representam processos comuns principais. Ex:
Realizar empréstimo Casos de uso desejáveis: representam processos menos importantes ou
raros. Ex: Realizar auditoria, Solicitar compra de documentos Casos de uso opcionais: representam processos que podem ou não ser
considerados
![Page 63: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/63.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 63
Estrutura de um Caso de Uso
• Cabeçalho Nome Atores Descrição breve Tipo
• Fluxo de eventos normal• Fluxo de eventos alternativos• Requisitos não funcionais
![Page 64: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/64.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 64
Cabeçalho de um Caso de Uso
• Cada descrição de caso de uso deve possuir um cabeçalho, no seguinte formato:
Caso de uso Nome do caso de usoAtores Lista de atoresVisão geral Descrição breveTipo (essencial, desejável, opcional)
![Page 65: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/65.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 65
Descrição breve de um Caso de Uso
• A descrição breve deve conter o objetivo do caso de uso.• Exemplos:
Emprestar títuloPossibilita o empréstimo de títulos solicitados pelo usuário.
Cadastrar acervoProvê facilidades para criar, modificar e apagar informações de títulos e periódicos que fazem parte do acervo da biblioteca.
![Page 66: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/66.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 66
Corpo de um Caso de Uso
• O corpo do caso de uso (fluxo de eventos) deve conter a descrição detalhada dos eventos trocados entre os atores e o sistema.
• As duas partes principais do fluxo de eventos são: fluxo de eventos básico (normal) e fluxo de eventos excepcionais ou alternativos.
![Page 67: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/67.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 67
Corpo de um Caso de Uso
• O fluxo de eventos básico descreve o que acontece normalmente quando o caso de uso é executado.
• O fluxo de eventos alternativos descreve o comportamento de caráter opcional ou excepcional em relação ao comportamento normal.
![Page 68: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/68.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 68
Corpo de um Caso de Uso
• É importante descrever: como e quando o caso de uso inicia e finaliza quando o caso de uso interage com os atores quais os objetos trocados na interação os fluxos de eventos alternativos ou excepcionais
![Page 69: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/69.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 69
Descrevendo Casos de Uso
Caso de uso Realizar empréstimoAtores Usuário (iniciador), BibliotecárioVisão geral Possibilita o empréstimo de títulos
solicitados pelo clienteTipo essencial
Exemplo - Caso de uso Realizar empréstimo
![Page 70: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/70.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 70
Descrevendo Casos de Uso
Fluxo de eventos básico: 1. O caso de uso inicia quando o usuário deseja realizar o empréstimo de um título. 2. O bibliotecário digita o código do título e a matrícula do usuário. 3. O sistema verifica se o usuário está cadastrado. 4. O sistema verifica se não há reservas para o título. 5. O sistema realiza o empréstimo, guardando a data e a hora em que a operação foi realizada e o caso de uso finaliza.
Exemplo - Caso de uso Realizar empréstimo
![Page 71: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/71.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 71
Descrevendo Casos de Uso
Fluxo de eventos excepcional: 1. No passo 3, se o usuário ainda não tiver sido
cadastrado na biblioteca, o sistema não permite que o empréstimo seja realizado.
Requisitos não funcionais:1. A operação de empréstimo deve retornar o resultado
da efetivação do empréstimo em, no máximo, 30 segundos.
Continuação do exemplo
![Page 72: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/72.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 72
Descrevendo Casos de Uso
• Os casos de uso podem ser descritos com variáveis graus de detalhe, bem como de comprometimentos a decisões de projeto, ou seja, o mesmo caso de uso pode ser escrito em diferentes formatos, com diferentes níveis de detalhes.
![Page 73: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/73.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 73
Relacionamentos entre casos de uso
• Há dois tipos possíveis de relacionamentos entre casos de uso: inclui e estende.
![Page 74: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/74.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 74
Relacionamentos entre casos de uso
• O relacionamento inclui deve ser utilizado quando um conjunto de passos do fluxo de eventos se repete para vários casos de uso.
• O comportamento comum a vários casos de uso é colocado em um caso de uso à parte, chamado caso de uso de inclusão.
• O caso de uso de inclusão é, em geral, abstrato, ou seja, não pode ser instanciado.
![Page 75: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/75.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 75
Relacionamentos entre casos de uso
• Exemplo:
Registrardevolução
Emprestartítulo
Validarusuário
Bibliotecário
<<include>> <<include>>
![Page 76: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/76.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 76
Relacionamentos entre casos de uso
Fluxo de eventos básico: 1. O caso de uso inicia quando o usuário deseja realizar o empréstimo de um título. 2. O bibliotecário digita o código do título e a matrícula do usuário. 3. Inclui Validar Usuário.4. O sistema verifica se não há reservas para o título. 5. O sistema realiza o empréstimo, guardando a data e a hora em que a operação foi realizada e o caso de uso finaliza.
Exemplo - Caso de uso Realizar Empréstimo
![Page 77: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/77.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 77
Relacionamentos entre casos de uso• O relacionamento estende representa comportamento que é
opcional, ou seja, que só é executado sob determinadas condições.
• O uso do relacionamento estende permite separar comportamento obrigatório do comportamento opcional.
• Em certos casos, o caso de uso de extensão pode ter um comportamento independente do caso de uso base.
![Page 78: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/78.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 78
Relacionamentos entre casos de uso• Exemplo:
Emprestartítulo
Cadastrarusuário
Bibliotecário <<extend>>
![Page 79: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/79.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 79
Relacionamentos entre casos de uso
Fluxo de eventos básico: 1. O caso de uso inicia quando o usuário deseja realizar o empréstimo de um título. 2. O bibliotecário digita o código do título e a matrícula do usuário. 3. O sistema verifica se o usuário está cadastrado. 4. O sistema verifica se não há reservas para o título. 5. O sistema realiza o empréstimo, guardando a data e a hora em que a operação foi realizada e o caso de uso finaliza.
Exemplo - Caso de uso Realizar empréstimo
![Page 80: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/80.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 80
Relacionamentos entre casos de uso
Fluxo de eventos excepcional: 1. No passo 3, se o cliente ainda não tiver sido
cadastrado na biblioteca, estende Cadastrar Usuário.
Continuação do exemplo
![Page 81: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/81.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 81
Organização dos casos de uso em pacotes
• Quando o caso de uso se torna muito extenso, recomenda-se particioná-lo em pacotes.
• Um pacote é um agrupamento de elementos que têm uma forte coesão.
• Recomenda-se manter em um mesmo pacote os casos de uso que dizem respeito ao mesmo assunto e que têm relacionamentos (inclui e estende).
![Page 82: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/82.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 82
Organização dos casos de uso em pacotes
Catalogação Aquisição de Documentos
Sistema de Controle Bibliotecário
Controle de Circulação
![Page 83: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/83.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 83
Limitações
• Os casos de uso são excelentes para capturar os requisitos funcionais de um sistema, entretanto, tem as seguintes limitações: Não facilitam muito o levantamento dos requisitos não funcionais do sistema. A sua correta interpretação requer sempre um processo de aprendizagem e
ambientação, por parte tanto dos utilizadores quanto dos programadores.
![Page 84: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/84.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 84
Um exemplo do mundo real
• Empresa: TRE/PE• Sistema: Sistema de Monitoramento do Plano de Ação• Objetivo: facilitar o gerenciamento e o acompanhamento das
informações relativas ao Plano de Ações das Unidades, observando as vinculações orçamentárias e os prazos programados.
![Page 86: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/86.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagramas UML para Design de BDs
86
Diagrama Descrição
Casos de Uso É um modelo das funcionalidades do sistema e o ambiente que suporta os processos do negócio. Este modelo serve como um contrato entre o cliente e os desenvolvedores.
Interação Os Diagramas de Interação correspondem aos Diagramas de Seqüência e Colaboração, que mostram a interação dos objetos com o sistema. Eles podem ser usados para entender consultas que irão afetar o banco de dados e também ajudam a construir indíces baseados na informação modelada.
Atividade Mostram o fluxo de um processo. Eles podem ser usados para mostrar alguma visão de alto nível do negócio e como ele funciona.
Gráfico de Estados Captura o comportamento dinâmico do sistema ou objetos dentro do sistema.
Classe São modelos lógicos que mostram a estrutura básica do sistema.
Banco de Dados Descreve a estrutura do banco de dados, incluindo tabelas, colunas, constraints e etc.
Componente Mostra o armazenamento físico do banco de dados, incluindo o SGBD, tablespaces e partições. Eles também podem incluir aplicações e as interfaces usadas por elas para acessar o banco de dados.
Deployment Mostra a configuração do hardware que está sendo usado pelo banco de dados e aplicações.
![Page 87: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/87.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes
• Mapeamento entre Modelos
Utilização de estereótipos para identificar os elementos Apenas classes e atributos persistentes serão mapeados Ex.: Um atributo chamado valor_do_pedido, que é um
campo calculado (somatório do valor de todos os produtos de um pedido) não seria necessário ser armazenado no banco de dados
87
UML Banco de Dados EstereótipoClasse Tabela <<Table>>Atributo Coluna <<Column>>, <<PK>>, <<FK>>Tipos Tipos de Dados -Associações Relacionamentos <<Identifying>>, <<Non-identifying>>
![Page 88: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/88.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagramas de Classes (2)
• Mapeamento de Classes para Tabelas 1:1, 1:N e N:N Associações N:N devem ser quebradas em
relacionamentos 1:N, através de uma tabela de associação Mapeamento entre subtipos de classes
• Uma tabela por classe• Uma tabela por classe concreta• Uma tabela por hierarquia
88
![Page 89: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/89.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (3)
• Uma Tabela por Classe
89
<<Tabela>>Cliente
PK codigo : INTEGER
nome : VARCHAR(30)
telefone : VARCHAR(15)
tipo: CHAR(1)
<<Tabela>>ClienteFisico
PK/FK codigo : INTEGER
cpf : VARCHAR(10)
data_nasc : DATE
<<Tabela>>ClienteJurídico
PK/FK codigo : INTEGER
cnpj : VARCHAR(15)
![Page 90: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/90.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (4)
• Uma Tabela por Classe Concreta
90
<<Tabela>>ClienteJurídico
PK codigo : INTEGER
nome : VARCHAR(30)
telefone : VARCHAR(15)
cnpj : VARCHAR(15)
<<Tabela>>ClienteFísico
PK codigo : INTEGER
nome : VARCHAR(30)
telefone : VARCHAR(15)
cpf : VARCHAR(10)
data_nasc : DATE
![Page 91: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/91.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (5)
• Uma Tabela por Hierarquia
91
<<Tabela>>Cliente
PK codigo : INTEGER
nome : VARCHAR(30)
telefone : VARCHAR(15)
cpf : VARCHAR(10)
cnpj : VARCHAR(15)
data_nasc : DATE
tipo: CHAR(1)
![Page 92: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/92.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (6)
• Tipos de Atributos
92
Tipo Genérico Tipo de Dados Padrão ANSI SQL 92 DescriçãoBoolean Bit Verdadeiro (T) ou Falso (F)
Currency Decimal Números reais com até 15 dígitos do lado esquerdo do ponto decimal e 4 dígitos do lado direito
Date Date Data e Hora
Double Double Precision Números reais com 15-16 dígitos de precisão
Integer Decimal Números inteiros acimda de 4 dígitos de precisão
Long Decimal Números inteiros acima de 10 dígitos de precisão
Single Decimal Números reais acima de 7 dígitos de precisão
String Varchar / Char Ilimitado número de caracteres
![Page 93: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/93.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (7)
• Elementos
93
![Page 94: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/94.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (8)
• Demonstração de um Exemplo utilizando o JUDE
94
![Page 95: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/95.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Diagrama de Classes (9)
• Demonstração de um Exemplo utilizando o JUDE
95
![Page 96: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/96.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 96
Referências
• The Unified Modelling Language User Guide (Grady Booch)• The Unified Modelling Language Reference Manual (James
Rumbaugh)• The Unified Software Development Process (Ivar Jacobson)• UML Distilled (Martin Fowler)• http://pt.wikipedia.org/wiki/UML• http://pt.wikipedia.org/wiki/Casos_de_Uso• Database Design for Smarties (Robert J. Muller)• Apostila da Qualiti Software Processes
![Page 97: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/97.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD
Referências
• Naiburg, E., Maksumchuk, R. UML for Database Design, Addsison Wesley, 2001
• Guedes, G. UML – Uma Abordagem Prática, Novatec, 2003
97
![Page 99: CIn/UFPE – IN1008 - Projeto Conceitual de BD 2 3 IN1008 – Projeto Conceitual de BD Diagramas UML para Modelagem de Dados Por: Clarissa César Borba ccb@cin.ufpe.br](https://reader036.vdocuments.site/reader036/viewer/2022062818/5706384f1a28abb8238f7a18/html5/thumbnails/99.jpg)
CIn/UFPE – IN1008 - Projeto Conceitual de BD 99
IN1008 – Projeto Conceitual de BD
Diagramas UML para Modelagem de
Dados
Por:Clarissa César Borba
Fabrício [email protected]