Você está na página 1de 36

Aula 05 - Modelo Conceitual

DOO - Desenvolvimento Orientado a Objetos

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

Material do Prof. Dr. Lucas Bueno R. de Oliveira

Professor: Jorge Francisco Cutigi

DOO - Modelo Conceitual


O que vimos na aula anterior...
● Uma breve introdução aos modelos de processo de software.
● Aspectos preliminares do Processo Unificado – PU.
● Características, atividades e diferenças das etapas de análise e projeto.
● Tipos de requisitos de software.
● Uma breve introdução ao processo de engenharia de requisitos.
● Conceitos sobre modelagem de software e UML.
● Representação dos processos do domínio com Casos de Uso.

DOO - Modelo Conceitual


Ao final desta aula, você estará apto a...
● Saber para que serve e quando utilizar um Modelo Conceitual.
● Identificar e compreender a sintaxe dos principais elementos desse tipo de
modelo.
● Distinguir os principais relacionamentos entre conceitos do domínio.
● Identificar conceitos, atributos e relacionamentos a partir de uma especificação
textual.
● Criar modelos conceituais para diferentes tipos de aplicação.

DOO - Modelo Conceitual


Modelo Conceitual
● Definição
● Conceitos
● Atributos
● Relacionamentos

DOO - Modelo Conceitual


Modelo Conceitual - Definição
● Ainda na etapa de análise, é preciso estabelecer um vocabulário comum junto ao
cliente, para que ambos compreendam quais são os conceitos importantes no
domínio.
● Um modelo conceitual permite representar e descrever os conceitos pertinentes
ao domínio do sistema e os diferentes relacionamentos entre esses elementos.
● Embora a sintaxe do modelo conceitual seja similar a do Diagrama de Classes
(veremos mais adiante), o modelo não representa artefatos de software ou classes,
mas conceitos do dia-a-dia.
● A semântica de um modelo conceitual foca em compreender o que será feito do
ponto de vista estrutural no domínio da informação.

DOO - Modelo Conceitual


Conceitos básicos - Conceito
● Modelos de domínio representam os conceitos e as características importantes
no contexto do sistema que será implementado, tais como pessoas, objetos
físicos e eventos lembrados.
● Exemplos:
○ Cliente do banco
○ O banco
○ Uma movimentação financeira

Nome

DOO - Modelo Conceitual


Conceitos básicos - Atributos
● Conceitos do domínio são contêineres de informações úteis ao sistema,
chamadas de atributos.
● Nessa etapa, a representação dos tipos dos atributos ainda é opcional.
● Exemplos:
○ O cliente do banco: nome, cpf, data de nascimento, etc.
○ O banco: nome, número, cnpj, etc.
○ Uma movimentação financeira: valor, emissor, recebedor, etc.

Atributos

DOO - Modelo Conceitual


Conceitos básicos - Relacionamentos
● Os conceitos do domínio do sistema possuem relacionamentos entre si, que
precisarão ser lembrados ao longo do seu ciclo de vida de operação.
● Uma associação indica um relacionamento estrutural básico entre dois
conceitos do domínio.
Associação
(nome e sentido são opcionais)

DOO - Modelo Conceitual


Conceitos básicos - Relacionamentos
Associação

● Um tipo associativo é uma associação que


possui propriedades de tipo (ou
vice-versa).
● Esse tipo de relacionamento ocorre,
geralmente, quando:
○ Um atributo está relacionado a uma associação. Tipo associativo
○ As instâncias do tipo associativo têm tempo de
vida dependente da associação.
○ Existe uma relação muitos-para-muitos entre
dois conceitos e isso resulta em informações
adicionais.

DOO - Modelo Conceitual


Conceitos básicos - Relacionamentos
● Uma dependência expressa um
relacionamento conceitual no qual
mudanças em um elemento influenciam Dependência

no estado de outro elemento.


● A dependência é um relacionamento
estruturalmente mais fraco que a
associação.
● Exemplo:
○ A decisão de uma Pessoa sobre ir ao pub ou
Influenciado Influenciador
não depende do Estado Civil.

DOO - Modelo Conceitual


Conceitos básicos - Relacionamentos
● Uma agregação é um tipo de
relacionamento associativo no qual
existe uma semântica de todo-parte. Agregação

● Na agregação, não existe uma relação


forte entre os ciclos de vida do conceito
agregador e seus conceitos agregados.
● Exemplo:
○ Um Carro possui quatro Rodas, que podem
ser fabricadas antes ou depois, colocadas ou Agregado
substituídas.

DOO - Modelo Conceitual


Conceitos básicos - Relacionamentos
● Uma composição é um tipo especial de
agregação na qual a parte não pode
existir sem o todo. Composição

● Na composição, existe uma relação


forte entre os ciclos de vida da parte
composta e seus componentes.
● Exemplo:
○ Uma Pessoa nasce com Pernas, que são
criadas e não existem sem a pessoa que as Componente
têm.

DOO - Modelo Conceitual


Conceitos básicos - Relacionamentos
● A herança é um tipo de relacionamento que Supertipo

permite especializar conceitos a partir de


um conceito base, mais geral.
● O relacionamento de herança segue duas
Herança
regras principais:
○ “é um”: estabelece que todos os conceitos do
conjunto de subtipos são do tipo do supertipo,
podendo ser tratados como tal.
○ “100%”: estabelece que todos os atributos,
comportamentos e relacionamentos de um
supertipo são, obrigatoriamente, herdados pelos
Subtipo
subtipos.

DOO - Modelo Conceitual


Conceitos básicos - Multiplicidade
● Relacionamentos podem ser
expressos segundo diferentes
multiplicidades:
○ 0..1: opcional
○ 0..*: zero a muitos Uma agência possui
Uma conta pertence a uma ou mais contas
○ 1..*: um a muitos uma agência
○ n: valor específico
○ m, n, p: valores específicos
○ m..n: Intervalo específico
● Não há multiplicidade em
relacionamentos de herança.

DOO - Modelo Conceitual


Conceitos básicos - Navegabilidade
● Relacionamentos podem expressar
diferentes sentidos de navegação. RelatorioSobreContas
conhece as contas
● Em um relacionamento
unidirecional, dois conceitos podem
estar relacionados, mas apenas um
está ciente da relação.
● Quando não há indicação de sentido
de navegação, fica subentendido Uma Conta não sabe que
faz parte do relatório
que todos os envolvidos estão
cientes do relacionamento.

DOO - Modelo Conceitual


Modelo Conceitual e o Processo Unificado - PU
● O modelo conceitual está inserido na etapa de análise e é construído para
ajudar a compreender a estrutura e como os conceitos estão associados no
sistema.
● Tanto os requisitos quanto às descrições textuais de casos de uso podem ser
utilizadas para identificar os conceitos relacionados ao domínio.
● A terminologia identificada durante a criação do modelo conceitual pode ser
utilizada para atualizar o vocabulário dos requisitos e dos casos de uso,
reduzindo ambiguidades.

DOO - Modelo Conceitual


Identificando conceitos,
relacionamentos e atributos

DOO - Modelo Conceitual


Identificando Conceitos
● Considere o fluxo principal do caso de uso Emprestar Livro do sistema de
bibliotecas:
○ 1. O Leitor chega ao balcão de atendimento da biblioteca e diz ao atendente que deseja emprestar um ou
mais livros.
○ 2. O Atendente seleciona a opção para realizar um novo empréstimo.
○ 3. O Atendente solicita ao leitor sua carteira de identificação, seja de estudante ou professor.
○ 4. O Atendente informa ao sistema a identificação do leitor.
○ 5. O Sistema exibe o nome do leitor e sua situação.
○ 6. O Atendente solicita os livros a serem emprestados. Para cada um, informa ao sistema o código de
identificação do livro.
○ 7. O Sistema informa a data de devolução de cada livro.
○ 8. O Atendente desbloqueia os livros para que possam sair da biblioteca.
○ 9. O Leitor sai com os livros.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 1: Isole todos os substantivos presentes no texto:

○ 1. O Leitor chega ao balcão de atendimento da biblioteca e diz ao atendente que deseja emprestar um ou
mais livros.
○ 2. O Atendente seleciona a opção para realizar um novo empréstimo.
○ 3. O Atendente solicita ao leitor sua carteira de identificação, seja de estudante ou professor.
○ 4. O Atendente informa ao sistema a identificação do leitor.
○ 5. O Sistema exibe o nome do leitor e sua situação.
○ 6. O Atendente solicita os livros a serem emprestados. Para cada um, informa ao sistema o código de
identificação do livro.
○ 7. O Sistema informa a data de devolução de cada livro.
○ 8. O Atendente desbloqueia os livros para que possam sair da biblioteca.
○ 9. O Leitor sai com os livros.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 1: Isole todos os substantivos presentes no texto:

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 2: Analise cada substantivo identificado.

● Verifique se ele está relacionado aos assuntos importantes no domínio do
sistema, devendo ser lembrado por representar algo, fazer algo, saber de algo,
etc.
● Descarte os substantivos que:
○ Fogem do escopo do sistema.
○ São sinônimos ou similares a outros substantivos já considerados.
○ São propriedades de outros substantivos.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 2: Analise cada substantivo identificado.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 2: Analise cada substantivo identificado.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 3: Isole os verbos que podem ser transformados em substantivos.
● Busque por verbos que representem ações de interesse para o sistema,
relacionados aos eventos e transações que possuem informações que merecem
ser lembradas.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 3: Isole os verbos que podem ser transformados em substantivos.
● Busque por verbos que representem ações de interesse para o sistema,
relacionados aos eventos e transações que possuem informações que merecem
ser lembradas.
○ O Leitor chega ao balcão de atendimento da biblioteca e diz ao atendente que deseja emprestar um ou mais livros.
○ O Atendente seleciona a opção para realizar um novo empréstimo.
○ O Atendente solicita ao leitor sua carteira de identificação, seja de estudante ou professor.
○ O Atendente informa ao sistema a identificação do leitor.
○ O Sistema exibe o nome do leitor e sua situação.
● Emprestar (Empréstimo), Realizar (Empréstimo realizado) e Informar
(Identificação Informada) são de interesse do domínio, mas já foram analisados
no Passo 2.
DOO - Modelo Conceitual
Identificando Conceitos
● Passo 4: Verifique se os conceitos são compostos por outros conceitos não
mencionados.

● Para cada conceito identificado, verifique se ele possui partes que são de
interesse do sistema e não foram mencionadas entre os sujeitos ou verbos
analisados.
● Exemplo: Um empréstimo normalmente refere-se a vários livros emprestados
em uma mesma ocasião para um mesmo leitor, ou seja, várias ocorrências de
Item de Empréstimo.

DOO - Modelo Conceitual


Identificando Conceitos
● Passo 5: Aplique um checklist de conceitos recorrentes em busca de:
○ Objetos físicos ou tangíveis
○ Especificações de categorias ou catálogos
○ Lugares
○ Transações
○ Linhas de itens de transações
○ Papéis desempenhados por pessoas
○ Contêineres de outras coisas
○ Coisas em um contêiner
○ Catálogos

DOO - Modelo Conceitual


Identificando Relações
● Passo 1: Para cada par de conceitos, verifique se, fisicamente ou logicamente,
um faz parte do outro.
● Exemplos:
○ Livro está fisicamente armazenado em uma estante.
○ Item de Empréstimo é, logicamente, parte de um Empréstimo.

DOO - Modelo Conceitual


Identificando Relações
● Passo 2: Para cada par de conceitos, verifique se um serve para descrever ou
qualificar outro conceito.
● Exemplos:
○ Livro pode ser classificado em diversas Categorias.
○ Livro pode ser classificado por Autor.

DOO - Modelo Conceitual


Identificando Relações
● Passo 3: Para cada par de conceitos, verifique se um é responsável por registrar
ou manter informações sobre o outro.
● Exemplos:
○ O Atendente é quem registra e atende o Leitor
○ O Bibliotecário é o responsável pelos Livros.

● Atenção: Incluir associações em demasia leva a um modelo confuso e pouco


legível, além de poder resultar em um sistema fortemente acoplado.

DOO - Modelo Conceitual


Identificando Atributos
● Para identificar atributos, busque na lista de substantivos isolados a partir da
especificação textual os que não foram utilizados como conceitos do modelo.
● Verifique quais são relevantes ao domínio do sistema e em qual conceito do
modelo esse substantivo atua como uma propriedade.
● Limite-se a adicionar os atributos pertinentes para compreender conceitos ou
que serão importantes para o futuro projeto do sistema.

● Atenção: Incluir atributos desnecessários pode aumentar a complexidade do


modelo.

DOO - Modelo Conceitual


Exemplo de diagrama

DOO - Modelo Conceitual


Recapitulando
● Modelos conceituais são usados na análise para representar os conceitos do domínio.
● O modelo conceitual também ajuda a estabelecer um vocabulário comum junto ao
cliente.
● Os principais elementos do diagrama são: conceito, atributo e relacionamento.
● A agregação representa uma associação envolvendo um relacionamento do tipo
todo-parte.
● A composição é um tipo de associação no qual a parte não existe sem o todo.
● Uma construção precisa do modelo conceitual é vital para identificar os dados do
sistema.
● A inclusão de atributos e relacionamentos desnecessários piora o entendimento do
modelo.

DOO - Modelo Conceitual


Exercício
● A empresa na qual você trabalha realizará um processo de reengenharia da
urna eletrônica brasileira. Para isso, você precisará identificar e documentar os
casos de uso envolvidos no processo de preparação, votação e exportação dos
resultados da urna, a partir de seu conhecimento como usuário
○ Elabore o Modelo Conceitual para o problema da urna eletrônica

DOO - Modelo Conceitual


Informações adicionais
● Especificação UML pela OMG:
○ https://www.omg.org/spec/UML
● Tipos de associação em UML:
○ https://www.uml-diagrams.org/association.html
● Diagrama de classes em 10 minutos (a sintaxe também serve para modelo
conceitual):
○ https://www.youtube.com/watch?v=UI6lqHOVHic

DOO - Modelo Conceitual


DOO - Modelo Conceitual

Você também pode gostar