24
Análise de Sistemas Prof. Jeime Nunes Email: [email protected] Site: [email protected] 30/03/22 Análise e Design de Software

Análise de Sistemas Prof. Jeime Nunes Email: [email protected] Site: @wordpress.com 26/2/2016 Análise e Design de Software

Embed Size (px)

Citation preview

Análise de Sistemas

Prof. Jeime NunesEmail: [email protected]

Site: [email protected]/04/23

Análise e Design de Software

UML: Diagrama de Comunicação/Colaboração

27/04/23

Diagrama de Comunicação

Complementa o diagrama de sequência; Não se preocupa com a temporalidade do

processo; Concentra-se em como os objetos estão

vinculados e quais as mensagens trocadas durante o processo; Uma mensagem se caracteriza por conter uma

seta apontando para o objeto para o qual está sendo enviada;

27/04/23

Diagrama de Comunicação

Efetuar Login

27/04/23

Diagrama de Comunicação Realizar submissão

27/04/23

Diagrama Comunicação X Seqüência

Comunicação Melhores para visualizar os relacionamentos de

um objeto; Base para diagrama de classes;

Seqüência Melhor para visualizar a seqüência do fluxo no

tempo; Melhor para visualizar o fluxo completo; Mais adequado para cenário complexo;

27/04/23

Encontrando atributos

São propriedades/características das classes identificadas; Informação cujo valor é o aspecto crucial; Informação de propriedade exclusiva do

objeto; Informação que pode ser lida ou escrita por

operações; Possíveis fontes:

Requisitos, glossário, modelo do negócio, etc..

27/04/23

Descrever as responsabilidades

Mensagens enviadas para os objetos de uma determinada classe representam requisições de serviços que devem ser realizados pelos objetos;

A regra geral é criar uma responsabilidade para cada mensagem enviada ao objeto da classe; Isso se na classe ainda não existir uma

responsabilidade correspondente; Responsabilidade são os métodos implementados

pela classe;

27/04/23

Uma análise importante

Classes com responsabilidades similares são candidatas a serem combinadas;

Uma classe com responsabilidades disjuntas (muito diferentes abordando assuntos diferentes) é candidata a ser dividida;

Classes sem (ou com apenas uma) responsabilidade e classes que interagem com muitas classes são candidatas a serem reexaminadas;

27/04/23

UML: Diagrama de Classe

27/04/23

Diagrama de Classe

Permite a visualização das classes que irão compor o sistema; Demonstra como as classes se relacionam,

complementam e transmitem informações entre si;

É uma visão estática de como as classes estão organizadas;

Basicamente o diagrama de classes é composto por suas classes e pelas associações existentes entre elas;

27/04/23

Diagrama de Classe

É comum criar inicialmente um diagrama de classe simplificado (modelo conceitual) para depois evoluir para um diagrama de classe detalhado e completo (modelo de domínio); No modelo conceitual o diagrama de classe

ainda não apresenta os métodos de cada classe;

Os métodos serão incluídos no modelo de domínio, com um diagrama de classe completo;

27/04/23

Diagrama de Classe

Relacionamentos ou associações: Existem relacionamentos entre as classes e

são chamados de associações; As associações representam o vínculo que

normalmente ocorre entre os objetos das classes envolvidas;

São representadas por linhas ligando as classes envolvidas, podendo ter nomes para auxiliar na compreensão;

27/04/23

Diagrama de Classe

Associação unária Representa um relacionamento entre objetos da

mesma classe;

A multiplicidade determina o número mínimo e máximo de objetos envolvidos em cada extremidade da associação;

N exemplo um funcionário pode chefiar nenhum (0) ou muitos funcionários;

Quando não estiver especificada a multiplicidade, significa que é 1..1 ;

27/04/23

Multiplicidade

Nome

Diagrama de Classe Multiplicidade

27/04/23

Diagrama de Classe Associação Binária

Ocorre quando há relacionamentos entre objetos de duas classes;

Um objeto da classe Socio pode se relacionar ou não com objetos da classe Dependente;

No entanto se existir um objeto da classe Dependente ele terá de se relacionar com um objeto da classe Socio;

27/04/23

Diagrama de Classe Associação Binária

De acordo com a descrição da associação do exemplo e da indicação de navegabilidade podemos ler a associação da seguinte maneira:Uma instância da classe Socio possui, no mínimo, nenhuma instância, e no máximo muitas instâncias da classe Dependente, e uma instância da classe Dependente é

possuída por uma e somente uma instância da classe Socio.

27/04/23

Diagrama de Classe Associação Ternária ou N-ária

São associações que conectam objetos de mais de duas classes;

São representadas por um losango para onde convergem todas as ligações da associação;

27/04/23

Diagrama de Classe Agregação

É um tipo especial de associação em que se tenta demonstrar que as informações de um objeto precisam ser complementadas pelas informações de um objeto de outra classe.;

Tenta demonstrar uma relação todo/parte entre os objetos associados;

O símbolo de agregação é um losango na extremidade da classe que contém os objetos todo;

27/04/23

Diagrama de Classe Composição

Uma agregação com vinculo mais forte entre os objetos-todo e o objeto-parte;

O objeto-parte tem de estar associado a um único objeto-todo;

O símbolo de composição é um losango preto na extremidade da classe que contém os objetos todo;

27/04/23

Diagrama de Classe Especialização/

Generalização Identifica relacionamento

entre classes-mãe (super classes), e classes-filhas (sub-classes),

Demonstrando a ocorrência de herança e possível métodos polimórficos;

27/04/23

Diagrama de Classe Restrições

Constitui informações extras que definem condições a serem validadas durante a implementação dos métodos de uma classe, das associações entre as classes ou mesmo de seus atributos;

São representadas por textos limitados por chaves;

27/04/23

Diagrama de Classe Estereótipos

Uma maneira de destacar ou diferenciar um componente; No diagrama de classes existem 3 estereótipos: <<entity>>, tornar explicito que uma classe é uma

entidade . Ou seja, classe que contém informações recebidas ou geradas pelo sistema;

<<boundary>>, classe de fronteira, que serve de comunicação entre o atores externos e o sistema;

<<control>>, classes de controle que servem como intermediárias entre as classes <<boundary>> e as classes de sistema;

É comum uma classe <<boundary>> precisar interagir com uma classe <<control>>;

27/04/23

Diagrama de Classe

27/04/23