#AnaliseDeSistemas
Prof. Natanael Simões
natanaelsimoes
Projeto de Sistemas com UMLParte 2: Representação gráfica dos principais diagramas e exercícios práticos de diagramação
2
• Representa as funções globais de um sistema
• Notações gráficas:– Ator– Caso de uso– Relacionamento– Limite
Diagrama de Caso de Uso
3
• Representa um agente externo ao sistema– Pessoa– Dispositivo (Impressora, leitor)– Organização (IFRO, Prefeitura)– Departamento (Recursos Humanos, Financeiro)– Outro sistema (Webservice, DLL)
Ator
Ator
4
a) “… o sistema possibilita ao cliente atualizar seus dados cadastrais acessando o site na internet…”
b) “… o caixa eletrônico permitirá ao associado da cooperativa emitir um extrato da sua conta, bem como retirar ou depositar uma quantia financeira na sua conta…”
c) “… a secretária pode importar os Registros Acadêmicos do sistema administrativo, desde que informe o seu login e senha…”
Ator
5
d) Estamos criando um serviço de entregas. Nossos clientes podem nos requisitar a entrega de volumes. Alguns volumes são considerados de maior valor por nossos clientes, e, portanto, eles querem ter tais volumes segurados durante o transporte. Contratamos uma companhia de seguro para segurar volumes de valor.
Ator
6
a) “… o sistema possibilita ao cliente atualizar seus dados cadastrais acessando o site na internet…”
b) “… o caixa eletrônico permitirá ao associado da cooperativa emitir um extrato da sua conta, bem como retirar ou depositar uma quantia financeira na sua conta…”
c) “… a secretária pode importar os Registros Acadêmicos do sistema administrativo, desde que informe o seu login e senha…”
Ator
7
d) Estamos criando um serviço de entregas. Nossos clientes podem nos requisitar a entrega de volumes. Alguns volumes são considerados de maior valor por nossos clientes, e, portanto, eles querem ter tais volumes segurados durante o transporte. Contratamos uma companhia de seguro para segurar volumes de valor.
Ator
9
a) “… o sistema possibilita ao cliente atualizar seus dados cadastrais acessando o site na internet…”
b) “… o caixa eletrônico permitirá ao associado da cooperativa emitir um extrato da sua conta, bem como retirar ou depositar uma quantia financeira na sua conta…”
c) “… a secretária pode importar o Registro Acadêmico dados dos alunos do sistema administrativo, desde que informe o seu login e senha…”
Caso de Uso
10
d) Estamos criando um serviço de entregas. Nossos clientes podem nos requisitar a entrega de volumes. Alguns volumes são considerados de maior valor por nossos clientes, e, portanto, eles querem ter tais volumes segurados durante o transporte. Contratamos uma companhia de seguro para segurar volumes de valor.
Caso de Uso
11
a) “… o sistema possibilita ao cliente atualizar seus dados cadastrais acessando o site na internet…”
b) “… o caixa eletrônico permitirá ao associado da cooperativa emitir um extrato da sua conta, bem como retirar ou depositar uma quantia financeira na sua conta…”
c) “… a secretária pode importar o Registro Acadêmico dados dos alunos do sistema administrativo, desde que informe o seu login e senha…”
Caso de Uso
12
d) Estamos criando um serviço de entregas. Nossos clientes podem nos requisitar a entrega de volumes. Alguns volumes são considerados de maior valor por nossos clientes, e, portanto, eles querem ter tais volumes segurados durante o transporte. Contratamos uma companhia de seguro para segurar volumes de valor.
Caso de Uso
13
• Definem como atores e casos de uso se relacionam entre si
• Entre ator e caso de uso– Associação: O que o ator usa
Relacionamentos
Gerar relatório
Ator
14
Ator C
• Entre atores– Generalização ou Especialização: herança de
usos
Relacionamentos
Ator A Ator B
15
• Entre ator e casos de uso– Generalização ou Especialização: herança de
funções
Relacionamentos
Gerar relatório Imprimir
16
• Entre ator e casos de uso– Include: processamento obrigatório
Relacionamentos
Marcar consulta
Procurar registro do paciente
<<include>>
17
• Entre ator e casos de uso– Extend: processamento condicional
Relacionamentos
Verificar nível do
compartimento
Reabastecer compartimento
<<extend>>
19
a) “… o sistema possibilita ao cliente atualizar seus dados cadastrais acessando o site na internet…”
b) “… o caixa eletrônico permitirá ao associado da cooperativa emitir um extrato da sua conta, bem como retirar ou depositar uma quantia financeira na sua conta…”
c) “… a secretária pode importar o Registro Acadêmico dados dos alunos do sistema administrativo, desde que informe o seu login e senha…”
Diagramas !
20
d) Estamos criando um serviço de entregas. Nossos clientes podem nos requisitar a entrega de volumes. Alguns volumes são considerados de maior valor por nossos clientes, e, portanto, eles querem ter tais volumes segurados durante o transporte. Contratamos uma companhia de seguro para segurar volumes de valor.
Diagramas !
21
• Conjunto de representações de estruturas de objetos do mundo real e suas relações
• Pré-requisito para os diagramas de:– Comunicação– Sequência– Estados
Diagrama de Classes
22
• Representação das características e comportamentos abstraídos de objetos em comum do mundo real
• Possui atributos, métodos e relacionamentos
Classe
<<class>>Cachorro
- Cor:string- Altura:double- Tamanho:double- Peso:double- Raça:string- Nome:string
+ EmitirSom():void+ Correr(int velocidade):void+ Comer(Comida c):void+ Comer(Objeto o):void
Identificação da classe
Atributos
Métodos
23
• <<class>>• <<entity>>• <<control>>• <<boundary>>• <<interface>>• <<abstract>>
Identificação da Classe
<<class>>Cachorro
Estereótipo
Nome
24
Interface x Abstrata
Herança múltipla
Interface Abstrata
Uma classe pode implementar diversas interfaces
Uma classe pode herdar somente uma classe
25
Interface x Abstrata
Implementação padrão
Interface Abstrata
Uma interface não pode conter qualquer tipo de código, muito menos código padrão.
Uma classe abstrata pode fornecer código completo, código padrão ou ter apenas a declaração de seu esqueleto para ser posteriormente sobrescrita.
26
Interface x Abstrata
Homogeneidade
Interface Abstrata
Se todas as diversas implementações compartilham a assinatura do método então a interface funciona melhor.
Se as várias implementações são todas do tipo e compartilham um comportamento e status comum , então a classe abstrata funciona melhor.
27
Interface x Abstrata
Funcionalidades adicionais
Interface Abstrata
Se você incluir um novo método em uma interface você precisa ajustar todas as implementações da interface.
Se você incluir um novo método em uma classe abstrata você tem a opção de fornecer uma implementação padrão para ele.
28
[visibilidade] [nome] : [tipo]
• Visibilidade– Pública (+)– Protegida (#)– Privada (-)
• Nome do atributo• Tipo de dado
Atributos
- Cor:string- Altura:double- Tamanho:double- Peso:double- Raça:string- Nome:string
29
[visibilidade] [nome] ([tipo p1] [nome p1], [tipo p2] [nome p2]): [tipo]
• Visibilidade– Pública (+)– Protegida (#)– Privada (-)
• Nome do Método• Tipo e Nome de cada parâmetro• Tipo de retorno do método
Métodos
+ EmitirSom():void+ Correr(int velocidade):void+ Comer(Comida c):void+ Comer(Objeto o):void
30
• Herança
Relacionamentos entre classes
Cachorro
+ Pegar(Bolinha b):boolean+ Pegar(Graveto g): boolean+ EmitirSom():void+ Correr(int velocidade):void
Mamifero
- Cor:string- Altura:double- Tamanho:double- Peso:double- Raça:string- Nome:string
+ EmitirSom():void+ Correr(int velocidade):void+ Comer(Comida c):void
34
• Agregação
Relacionamentos entre classes
public class A { private B b; public A( ){ } public void setB( B b ){ this.b = b; } public B getB( ) { return b; }}
public class B { public B( ){ }}
36
• Composição
Relacionamentos entre classes
public class A { private B b; public A( ){ b = new B(); }}
public class B { public B( ){ }}
Top Related