Você está na página 1de 12

29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

MÓDULO 8
Modelo de Análise

Conforme já comentado na seção Modelagem de Casos de Uso, um caso de uso


descreve as interações entre o ator e o sistema, porém usando uma linguagem
voltada para o usuário que, embora seja em especialista no negócio, ele é leigo
em informática.

O Modelo de Análise é o inverso do Modelo de Casos de Uso, porque descreve o


comportamento dos casos de uso usando uma linguagem voltada para os
desenvolvedores. O Modelo de Análise é de extrema importância para
complementar o levantamento de requisitos.

Realização de casos de uso

A principal atividade executada na modelagem de análise é realização dos casos


de uso que identifica as classes de análise que se colaboram para executar o caso
de uso.

A figura acima mostra um cubo representando um sistema, um conjunto de casos


de uso dispostos na parte de fora do cubo (do sistema) para demonstrar que sua
https://online.unip.br/imprimir/imprimirconteudo 1/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

descrição é feita do ponto de vista do ator. No interior do cubo existem elipses,


uma correspondente a cada caso de uso. Cada uma dessas elipses é uma
COLABORAÇÃO (artefato da UML) que representa um conjunto de CLASSES DE
ANÁLISE (iremos falar sobre isso mais adiante) que se colaboram entre si para
realizar um caso de uso. Uma colaboração é uma REALIZAÇÃO de um caso de
uso.

O termo “realização” no Modelo de Análise corresponde à descrição de um caso de


uso usando uma linguagem e elementos conhecidos e familiares ao
desenvolvedor. O público alvo do Modelo de Análise é o desenvolvedor e não o
ator.

O modelo de análise oferece uma visão conceitual do sistema. Seu nível de


abstração é elevado e totalmente independente da plataforma tecnológica
(linguagem, framework, SGBD, sistema operacional, etc) que será usada para a
construção do sistema.

Colaboração

Uma colaboração é uma abstração de um conjunto de classes que se colaboram


entre si para realizar um caso de uso. A figura abaixo mostra sua representação
gráfica pela UML. Uma elipse tracejada.

Todo caso de uso deve ter uma colaboração correspondente ligados entre si pelo
relacionamento de realização, conforme mostrado na figura abaixo.

O nome da colaboração deve ter o mesmo nome do caso de uso para oferecer a
leitura de que a colaboração realiza o caso de uso. A colaboração é um item da
UML que pertence ao modelo de análise e não ao modelo de casos de uso.

Classes

Classes são blocos de construção de um sistema orientado a objetos. É uma


descrição de um conjunto de objetos que possuem os mesmos atributos,
https://online.unip.br/imprimir/imprimirconteudo 2/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

operações, relacionamentos e semântica, ou seja, significado. A figura abaixo


mostra um conjunto de objetos pertencentes à classe de Funcionários.

Cada ponto do conjunto é um funcionário que pode ser identificado univocamente,


ou seja, possui uma identidade única. Cada ponto é um objeto. Cada funcionário é
um objeto.

Com isso conclui-se o seguinte:

· Um objeto é uma instância de uma classe.


· Um objeto é identificado univocamente.

Uma instância é uma unidade de um conjunto. Como exemplo podemos dizer que
uma linha é uma instância de uma tabela, porque tem os mesmos atributos. Um
objeto é uma instância de uma classe. Todos os objetos de uma classe possuem
os mesmos atributos. Embora os atributos sejam iguais, mas os valores desses
atributos são diferentes.

Classes de Análise

Existem três tipos de classes de análise:

· Classes de fronteira (boundary).


· Classes de controle (control).
· Classes de entidade (entity).

Classe de fronteira (boundary)

https://online.unip.br/imprimir/imprimirconteudo 3/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

Classe de fronteira é uma abstração de qualquer interface que o sistema possua


para interagir com um usuário, outro sistema, um dispositivo de hardware
(impressora, teclado para o cliente digitar uma senha, uma leitora de cartão, etc).

A figura acima mostra a representação gráfica de uma classe de fronteira


(boundary).

Classe de controle (control)

Classe de controle tem como função coordenar o processo executado pelo caso de
uso. Ela realiza as regras de negócio definindo os vários cenários que o caso de
uso possui. Executa cada passo (evento) que cabe ao sistema na descrição dos
fluxos de eventos de um caso de uso. É usada como intermediário entre as classes
de fronteira e das classes de entidade (que representam as informações
armazenadas em banco de dados). Um dos principais objetivos de uma classe de
controle é facilitar a identificação de pequenas operações de negócio
(funcionalidades) que o caso de uso executa.

A figura acima mostra a representação gráfica de uma classe de controle


(control).

Classe de entidade (entity)

São classes que mapeiam tabelas de banco de dados, ou seja, promove a


persistência dos dados em um banco de dados. Esse mapeamento com tabelas de
banco de dados não é na proporção 1:1, ou seja, cada classe de entidade não
corresponde a uma tabela de banco de dados. Uma entidade pode corresponder a
uma ou mais tabelas de um banco de dados. Da mesma forma, uma tabela pode
corresponder a mais de uma classe de entidade.

https://online.unip.br/imprimir/imprimirconteudo 4/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

A figura acima mostra a representação gráfica de uma classe de entidade (entity).

Existe uma regra que rege as inter-relações entre as classes de análise. O quadro
abaixo mostra o que é e o que não é permitido.

Isso significa que:


· Atores e objetos de fronteira podem falar entre si.
· Objetos de fronteira e de controle podem conversar entre si.
· Objetos de entidade podem conversar entre si.
· Objetos de controle e de entidade podem conversar entre si.

Elementos de uma classe

As classes também podem ser representadas de uma outra forma gráfica,


conforme mostrada na figura abaixo:

https://online.unip.br/imprimir/imprimirconteudo 5/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

Nome da classe

As classes de fronteira devem ter um nome que faça referência a algum elemento
gráfico de uma interface como o usuário, tais como janela, menu, Box, botão, etc.

As classes de controle representam ações executadas pelo sistema na ocasião em


que um caso de uso é executado. Por isso deve ter o nome iniciado por um verbo
no infinitivo, na terceira pessoa do singular ou na forma de um verbo
substantivado.

As classes de entidade são objetos de negócio que o sistema utiliza para executar
os passos dos casos de uso. A melhor forma de identificar uma entidade é a
seguinte:

1. Identifique os substantivos no texto da descrição dos fluxos de eventos do


caso de uso.
2. A condição para que um substantivo seja uma entidade é necessário que
esse substantivo seja:
a. Instanciável (possa possuir instâncias).
b. Possua atributos.
c. Haja a necessidade de se guardar dados sobre ela.

Se atender a essas condições o substantivo passa a ser uma entidade.

Regras de nomeação de classes

• O nome deve ser único.


• Não pode ter acentuação ou dois pontos “:”.
• Letra inicial deve ser maiúscula.
• O nome da classe pode ser simples ou composto.
• Se o nome for composto:
– Não deve haver espaços entre as palavras,
– Todas as iniciais devem ser maiúsculas.
• Para separação do nome da classe e do pacote que a contém, deve-se
usar “::”.
• Exemplos de nomes de classes:
– Cliente
– Funcionario
https://online.unip.br/imprimir/imprimirconteudo 6/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

– ContaCorrete
– ModeloAnalise::Cliente
– etc.

Regras de nomeação de objetos

• Sempre sublinhado.
• Inicial minúscula.
• Um objeto pode não estar nomeado (anônimo).

Atributos

Os atributos caracterizam os objetos de uma classe.


Exemplo de atributos de uma classe de Cliente:

· código.
· nome.
· endereçoResidencial.
· complementoEndereço
· cep
· cidade
· uf
· foneResidencial
· celular

Operações

Definem o comportamento dos objetos da classe. Cada operação é um serviço que


um objeto sabe executar. Uma operação para ser executada necessita ser
convidada (chamada) por uma outra operação dessa mesma classes ou de uma
outra classe. Uma operação chama outra, que chama outra e assim por diante.
Essa seqüência de chamadas é mostrada em um diagrama chamado de Diagrama
de Seqüência. Através dessa seqüência as classes se colaboram para executar um
cenário de um caso de uso. As execução das operações podem manusear os
atributos da classe a qual pertence a operação em foco. Se uma operação de uma
classe “A” necessitar utilizar o atributo de uma outra classe “B”, será necessário
que a operação da classe “A” solicite o serviço de uma operação da classe “B” para
que forneça o dado daquele atributo em questão.

Relacionamento

https://online.unip.br/imprimir/imprimirconteudo 7/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

Os objetos podem se relacionar com outros objetos. Existem relacionamentos


entre objetos da mesma classe e relacionamentos com objetos de classes
diferentes. A figura abaixo mostra como se dá esses relacionamentos.

Analisando com cuidado esses dois conjuntos podemos afirmar que um


Funcionário pode estar associado com nenhum, um ou vários Dependentes. Em
outras palavras, um Funcionário pode não ter Dependentes. Mas todo Dependente
está associado a um único Funcionário. Não existe Dependente que não esteja
associado a um Funcionário.

Essa quantificação de associações é chamada de Multiplicidade. Multiplicidade é a


quantidade de objetos envolvidos na associação.

https://online.unip.br/imprimir/imprimirconteudo 8/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

Em outras palavras uma Empresa aloca nenhuma ou muitas Pessoas. Por outro
lado, uma Pessoa é alocada por nenhuma ou uma Empresa.

Diagrama de Sequência

O diagrama de sequência é a forma mais popular usada para mostrar as


interações entre os objetos para a execução de um cenário de um caso de uso.
Cada cenário de um caso de uso deve possuir um diagrama de sequência.

O diagrama de sequência acima mostra as interações entre os objetos A, B, C e D.


O objeto A solicita um serviço do objeto B através da mensagem 1 e passa os
parâmetros a, b, c. E assim por diante. Note que uma operação do objeto B
chama outra operação do próprio objeto B.

https://online.unip.br/imprimir/imprimirconteudo 9/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

O diagrama de sequência acima mostra um cenário de um caso de uso de pedido


de venda. Note que os objetos não estão estereotipados iconicamente. Os
estereótipos estão fixados na parte superior no retângulo que representa o objeto.
Os estereótipos são:

· <<fronteira>>
· <<controle>>
· <<entidade>>

A sequência dos eventos é:

1. O objeto entradaPedido chama a operação elaborarPedido do objeto de


controle elaborarPedido.
2. A operação elaboraPedido solicita o serviços da operação consultarCliente do
objeto de controle do cliente e espera o retorno clienteExiste (sim ou não).
3. Se o retorno for não, a operação elaborarPedido convoca outra operação da
controle do cliente chamada criarCliente.
4. A operação elaborarPedido continua sua operação, agora convocando a
operação criarPedido pertencente ao objeto de entidade Pedido.
5. E assim por diante.

O diagrama de sequência mostra como um cenário de um caso de uso é realizado.


Mostra as interações entre os objetos levando em consideração o tempo. A leitura
de um diagrama de sequência deve ser sempre de cima para baixo e da esquerda
para a direita.

A seta indicadora do retorno da operação chamada não precisa ser mostrada, pois
poderia poluir o diagrama. Devido ao fato deste retorno ser óbvio, o obvio não
precisa ser mostrado.

Exercício 1:
https://online.unip.br/imprimir/imprimirconteudo 10/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

Com referência à Modelagem de Análise assinale a alternativa errada:

A)

Enquanto o Modelo de Caso de Uso é voltado para o usuário, o Modelo de Análise


é voltado para o desenvolvedor.

B)

O Modelo de Análise complementa o Modelo de Casos de Uso como forma de


levantamento e especificação de requisitos.

C)

O Modelo de Análise descreve como o casos de uso são realizados.

D)

O Modelo de Análise oferece uma visão física do sistema.

E)

Comentários:

Essa disciplina não é ED ou você não o fez comentários

Exercício 2:

Uma Colaboração é um subconjunto de classes de um sistema que se colaboram entre si para realizar um caso
de uso. Com base nisso assinale a alterna va correta:

A)

Esta frase está totalmente correta.

B)

Esta frase está errada porque nem todas as classes do sistema se colaboram
entre si.

C)

Esta frase está errada porque um caso de uso não é realizado por classes e sim
por diagramas de seqüencia.

D)

https://online.unip.br/imprimir/imprimirconteudo 11/12
29/04/2021 UNIP - Universidade Paulista : DisciplinaOnline - Sistemas de conteúdo online para Alunos.

Esta frase está errada porque quem realiza casos de uso são tabelas de banco de
dados que fornecem dados para a execução do caso de uso.

E)

Comentários:

Essa disciplina não é ED ou você não o fez comentários

Exercício 3:

Um modelo de análise geralmente traz as classes de análise (boundary, control e


entity).

Marque a opção incorreta sobre as classes de análise.

A)

A classe boundary (fronteira) é responsável pela persistência dos dados do


sistema e interage com o ator.

B)

A classe control é responsável pelo direcionamento dos fluxo do sistema.

C)

A classe control é responsável por fazer o "meio-de-campo" entre as classes


boundary e entity.

D)

A classe entity representa as entidades ou dados que serão persistidos.

E)

A classe boundary é responsável pela comunicação com o ator.

Comentários:

Essa disciplina não é ED ou você não o fez comentários

https://online.unip.br/imprimir/imprimirconteudo 12/12

Você também pode gostar