26
Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Embed Size (px)

Citation preview

Page 1: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Cartões CRC – Classe Responsabilidade Colaboração

Análise Orientado a ObjetosProf. Wolley W. Silva

Page 2: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Objetivo:

• Aplicar a técnica dos cartões CRC para atribuição de responsabilidades e relacionamentos de cada classe.

Page 3: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Sistemas Orientados a ObjetosAlan Kay formulou a chamada “Analogia biológica”

http://pt.wikipedia.org/wiki/Alan_Kay

Page 4: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

• Objetos encapsulam tanto dados quanto comportamento.

• O comportamento de um objeto é definido de tal forma que ele possa cumprir com suas responsabilidades.

Sistemas Orientados a Objetos

•Titulo•Autor•ISBN

Cada

stra

r

Consultar

Atualizar

Livrotituloautorisbn

cadastrarconsultaratualizar

Page 5: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Responsabilidade

• Uma responsabilidade é uma obrigação que um objeto tem para com o sistema no qual ele está inserido.

• Através delas, um objeto colabora (ajuda) com outros para que os objetivos do sistema sejam alcançados.

Page 6: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

• Há basicamente dois tipos de Responsabilidades:– Conhecer• O objeto conhece e gerencia os seus dados privados

encapsulados. • O objeto conhece objetos relacionados. • O objeto conhece coisas que ele pode derivar ou

calcular.– Fazer• O objeto executa um método próprio. • O objeto inicia ações em outros objetos. • O objeto controla e coordena atividades em outros

objetos.

Responsabilidade

Page 7: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Colaboração

• Se um objeto tem uma responsabilidade a qual não pode cumprir sozinho, ele deve requisitar colaborações de outros objetos.

Page 8: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Colaboração

Objetos

Colaboradores

O padrão de cooperação(comunicação) entre objetos

Responsabilidades

O que o objeto conhece+

O que o objeto faz

possuemrealizadas por

precisam de

Page 9: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Cartões CRC

• Técnica desenvolvida para ensinar a “pensar orientado a objetos”.

• Enfatiza as responsabilidades e colaborações de cada objeto.

http://www.ime.usp.br/~kon/MAC5714/aulas/Aula7.html

Ward Cunningham Kent Back

Page 10: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Modelo CRC• Composto de um conjunto de cartões com

o seguinte formato:

Classe:Responsabilidade Colaboração

Page 11: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Ex: CRC

Classe: Conta Corrente

Responsabilidade Colaboração

Saber o seu saldo Cliente

Saber seu cliente Histórico de Transações

Saber seu número

Manter histórico de transações

Realizar saques e depósitos

atributos

métodos

Classes associadas

Page 12: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Diagrama de Caso de UsoOficina Mecânica

Page 13: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Descrição UC05 – Compor Orçamento

• Através de terminal o mecânico seleciona um relato de problemas do veículo,

• O sistema disponibiliza a opção de compor um orçamento

• O mecânico adiciona os serviços que serão necessários como itens do orçamento

• Ao termino da elaboração, o sistema disponibiliza uma opção de salvar o orçamento

Classes Métodos

Page 14: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Classes do Domínio

Page 15: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Exemplo: CRC

Page 16: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Classe: Cliente ColaboraçãoNomeCPFEndereço Veículos VeiculoCadastrarConsultar por CPFAtualizarExcluir

Cartão CRC: Classe-Responsabilidade Colaboração

Page 17: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Classe: Problema Relatado ColaboraçãoDataCliente ClienteVeiculo VeiculoDescrição do problemaCadastrarConsultarAtualizarExcluir

Cartão CRC: Classe-Responsabilidade Colaboração

Page 18: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Classe: Veiculo ColaboraçãoMarcaModeloAno de FabricaçãoPlacaProprietário ClienteCadastrarConsultar AtualizarExcluir

Cartão CRC: Classe-Responsabilidade Colaboração

Page 19: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Cartão CRC: Classe-Responsabilidade Colaboração

Classe: Orçamento ColaboraçãoDataDados do Cliente ClienteProblema relatado Problema RelatadoVeiculo orçado VeiculoItens do Orçamento Item de OrçamentoValor totalAdicionar itemAprovar itensRemover itemCalcular totalSalvar

Page 20: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Cartão CRC: Classe-Responsabilidade Colaboração

Classe: Item de Orçamento ColaboraçãoDescrição do Serviço ServiçoQuantidadeSubtotalCalcular subtotal

Page 21: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Cartão CRC: Classe-Responsabilidade Colaboração

Classe: Serviço ColaboraçãoCódigoDescriçãoPreçoCadastrarConsultarAtualizarexcluir

Page 22: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Diagrama de Classe

Page 23: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Considerações• Uma classe não deve ter muitas responsabilidades,

deve-se distribuir a inteligência do sistema

• Agrupar as responsabilidades conceitualmente relacionadas – Considerar coesão

Page 24: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Referências

Cópia do artigo disponível no FTP

Page 25: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Referências

• Bezerra, E. Princípios de Análise e Projeto Orientados a Objetos com UML. Ed. Campus, Cap 5.

• Fowler, Martin. UML Essencial: Um guia para liguagem de padrão, 3° edição, pp. 76

• http://www.ime.usp.br/~kon/MAC5714/aulas/Aula7.html

Page 26: Cartões CRC – Classe Responsabilidade Colaboração Análise Orientado a Objetos Prof. Wolley W. Silva

Exercício: CRC – Classe Responsabilidade Colaboração

1. Selecionar um casos de uso.2. Para um cenários:

a) Identificar as classes candidatasb) Para cada classe candidata, criar um cartão

CRC (um cartão por integrante do grupo);c) A partir dos cartões modelar um diagrama de

classe