Anlise Processo
Sistema
Informao
Pontifcia Universidade Catlica de Minas Gerais
Instituto de Informtica Curso Sistemas de Informao
Sistema
Classes
Informao
Uma classe representa um grupo de objetos semelhantes. Uma classe descreve esses objetos atravs de:
Atributos (propriedades)
Os atributos correspondem s informaes que um objeto armazena. Cada atributo esta associado a um conjunto de valores que esse atributo pode assumir
Mtodos (Operaes )
Os mtodos correspondem s aes que um objeto sabe realizar. Objetos de uma mesma classe compartilham as mesmas operaes
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 2
Anlise Processo
Anlise Processo
Sistema
Sistema
Nomenclatura Utilizada
Informao
Notaes de Classes
Dependendo do tipo de abstrao, pode ser:
a) b)
Nome da Classe
Informao
d)
Nome da Classe Lista de Atributos Lista de Mtodos
c)
Anlise Processo
Anlise Processo
Sistema
Sistema
Notao de Classes
Exemplo de uso:
ContaBancria ContaBancria nmero saldo dataAbertura criar() bloquear() desbloquear() creditar() debitar()
Informao
Associao
Informao
Em um hotel, h vrios hspedes, assim como h vrios quartos. Os hspedes do hotel ocupam quartos.
Hspede Quarto
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 6
Anlise Processo
Anlise Processo
Sistema
Sistema
Associao
Multiplicidades:
Informao
Associao
Multiplicidade x Conectividade
Conectividade
Um para um Um para muitos Muitos para muitos
Informao
Informao dos limites inferior e superior da quantidade de objetos aos quais outro objeto pode estar associado. Simbologia utilizada:
Nome Apenas um Zero ou muitos Um ou muitos Zero ou um Intervalo especfico 0..* 1..* 0..1 li..ls
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 7
Multiplicidade de um extremo
1.. 1 ou 1 0..1 1..* ou 1 ou * ou 0..*
Simbologia 1.. 1 ou 1 ou *
Anlise Processo
Anlise Processo
Sistema
Sistema
Associao
Exemplos :
Um para um
Empregado
Informao
Associao
Participao
Informao
1 Um para muitos
Empregado
0..1
Departamento
1 obrigatria 0 - opcional
Exemplo: 0..* 1
Projeto
Um cliente pode estar associado a vrios pedidos, como tambm, pode haver cliente que no esteja associado a pedido algum. Todo pedido tem que est associado a um nico cliente.
Cliente
Obrigatria
Pedido
0..*
UML - Diagrama de Classes
1..*
Anlise de Sistemas de Informao II
9 UML - Diagrama de Classes
0..*
Opcional Anlise de Sistemas de Informao II
10
Anlise Processo
Anlise Processo
Sistema
Sistema
Associao
Nome, direo de leitura e papis
Nome da associao papel Contrata Organizao
contratante contratado
Informao
Agregao
Informao
Caso especial de associao, onde mostra como classes so compostas de outras classes.
Regra aplicada:
Sendo duas classes X e Y,
papel
X tem um ou mais Y? Y parte de X?
Direo de leitura
Exemplo:
Indivduo
AssociaoEsportiva
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 11 UML - Diagrama de Classes
Equipe
Jogador
Anlise Processo
Anlise Processo
Sistema
Sistema
Classes Associativas
Informao
Classes Associativas
Informao
Empresa
razoSocial endereo
salrio * dataContratao
razoSocial 1 endereo
Anlise Processo
Anlise Processo
Sistema
Sistema
Associaes n-rias
Informao
Informao
*
Estudante nome Instrutor
* nome
*
Tcnico nome Projeto
1 nome
15
Anlise Processo
Anlise Processo
Sistema
Sistema
Associaes Reflexivas
Informao
Identificando Classes
Mtodo dirigido a dados
Informao
Tambm conhecida como auto-associao Associa um objeto de uma classe com objetos da mesma classe Exemplo:
Superviso de empregados
Superviso supervisor
nfase identificao da estrutura dos conceitos relevantes para um domnio do negcio, resultando o modelo conceitual do sistema
1 *
supervisionado Anlise de Sistemas de Informao II
17
Anlise Processo
Anlise Processo
Sistema
Sistema
Responsabilidades e Colaborao
Responsabilidade
Informao
Responsabilidades e Colaborao
Exemplo:
Informao
uma obrigao que o objeto tem com o sistema a qual est inserido. algo que o objeto conhece ou faz (sozinho ou sendo ajudado)
Colaborao
Responsabilidades que um objeto no pode cumprir sozinho, e que, para cumpri-las necessita da colaborao de outros objetos.
Anlise Processo
Anlise Processo
Sistema
Sistema
Categorias de Responsabilidades
Informao
Categorias de Responsabilidades
Objetos de Entidade
Informao
Facilita o reuso dos objetos no desenvolvimento de sistemas semelhantes Facilita a adaptao do sistema a eventuais mudanas.
Tipos de mudanas que podem ser necessrias e tipos de objetos que devem ser modificados:
Tipo de mudana Mudana na interface sistema, ou em relao interface grfica, ou em relao comunicao com outros sistemas Mudanas nas informaes manipuladas pelo sistema Onde mudar Objetos de Fronteira Objetos de Entidade
Mudanas em funcionalidades complexas (que envolvem a Objetos de Controle coordenao de vrios objetos)
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 21
Anlise Processo
Anlise Processo
Sistema
Sistema
Categorias de Responsabilidades
Objetos de Fronteira
Informao
Categorias de Responsabilidades
Objetos de Controle
Informao
Servem como ponte de comunicao entre objetos de fronteira e objetos de entidade. Existem somente durante a execuo de um caso de uso Responsabilidades de fazer:
Realizar monitoraes , a fim de responder a eventos externos do sistema (gerados por objetos de fronteira) Coordenar a realizao de um caso de uso atravs do envio de mensagens a objetos de fronteira e objetos de entidade Assegurar que as regras de negcio esto seguidas corretamente Coordenar a criao de associaes entre objetos de entidade
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 24
Responsabilidades de conhecer:
Notificar aos objetos de controle os eventos gerados extenamente ao sistema (representam informaes entre usurio e a interface) Notificar aos atores o resultado de interaes entre objetos internos (representam interface de comunicao)
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 23
Anlise Processo
Anlise Processo
Sistema
Sistema
Identificao de Classes
Informao
Identificao de Classes
Analisando os casos de Uso
Informao
Durante a anlise descritiva do caso, nomes so destacados para detectar classes candidatas, da seguinte forma:
Substantivos e locues equivalentes a substantivos no texto so destacados
Devem ser removidos: Sinnimos: deixando apenas o nome mais significativo para o domnio do sistema Nome do ator se no for necessrio que o sistema mantenha informaes sobre ele.
Anlise Processo
Anlise Processo
Sistema
Sistema
Informao Identificao das Propriedades da Classe Atributos
Esto associados s responsabilidades de conhecer de uma classe Cada atributo deve possuir as seguintes propriedades:
Guarda valor atmico
Possui valor nico
Identificao de Classes
Informao
3.
Repetir o passo 2 para o prximo cenrio e modificar a alocao de responsabilidade e a definio de classes
Anlise de Sistemas de Informao II Anlise de Sistemas de Informao II
UML - Diagrama de Classes 28 27
Anlise Processo
Anlise Processo
Sistema
Sistema
Outras Identificaes
Associao
Verificar quem so os colaboradores da classe
Informao
Documentao
Diagrama de Classes documentado Disposio dos elementos do diagrama
Informao
Agregao
Verificar quem so os colaboradores da classe e, se a classe em questo o todo e o seu colaborador a parte.
Classes posicionadas de forma que as associaes sejam lidas da esquerda para direita ou de baixo para cima Incluir estereotipos da UML nas Classes
<<fronteira>> , <<entidade>> ou <<controle>>
Classe Associativa
Surge a partir de responsabilidade de conhecer (raramente de fazer) que o modelador no conseguiu atribuir a alguma classe.
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 29
As classes devem ser documentadas textualmente Os atributos devem ser documentados, caso seu nome no seja de fcil entendimento
Anlise de Sistemas de Informao II
UML - Diagrama de Classes 30
Anlise Processo
Anlise Processo
Sistema
Sistema
Informao
Informao
Identifica-se as classes a partir da descrio dos casos de uso essenciais Refina essa identificao para retirar redundncias e inconsistncias Classes so documentadas Diagrama de classes construdo
Anlise Processo
Sistema
Referncia
Informao
Bezerra, E. Princpios de Anlise e Projeto de Sistemas com UML. Campus: Rio de Janeiro, 2006.