Aplicação da técnica de CRC – Sistema
de Clínica Médica
Adam Henrique Dias Silva – RA 0910430
E-mail: [email protected]
Bruno Pardini – RA 0910783
E-mail: [email protected]
Danilo Henrique Achcar – RA 0910619
E-mail: [email protected]
Guilherme Gonçalves da Silva – RA 0910775
E-mail: [email protected]
Agenda
FATEC São Caetano do Sul
Agenda
•
Introdução
•
Fundamentação Teórica
•
Desenvolvimento
•
Conclusão
•
Referências
FATEC São Caetano do Sul
Introdução
FATEC São Caetano do Sul
Introdução
•
A técnica de modelagem CRC(Classes, Responsabilidades e Colaboradores)
foi concebida por Kent Beck e Ward Cunningham no ano de 1989.
•
Segundo BECK e CUNNINGHAM (1989), o principal intuito da criação de tal
técnica foi o de auxiliar alunos que aprendiam OO e UML, portanto, não era
considerada uma técnica de modelagem, mas sim uma técnica de
aprendizagem.
•
BEZERRA(2007) também cita em um de seus livros que tal técnica foi criada
inicialmente com esse intuito.
•
Com o passar do tempo, com a popularização do uso do CRC pelos alunos,
pela sua grande facilidade de uso e por possuir pouca e simples sintaxe, o
CRC se tornou uma técnica de modelagem como propriamente dito.
– Ressalta-se que o CRC também serve para executar validações em cima de classes
elicitadas a partir da técnica Análise por Casos de Uso.
FATEC São Caetano do Sul
Introdução (cont.)
•
O uso da técnica de CRC para a criação do modelo de classes tem se
mostrado eficaz e muitas vezes equiparável à técnica de Análise por Casos
de Uso.
•
De acordo com algumas pesquisas realizadas por SANTOS (2010), a técnica
de modelagem CRC é a segunda mais utilizada pelos entrevistados.
– Tal técnica acaba perdendo apenas para a técnica de Análise por Casos de Uso.
•
Os conceitos utilizados durante a aplicação da técnica de modelagem CRC
são muito parecidos aos utilizados pela Análise por Casos de Uso,
envolvendo por exemplo: abstração, classes, responsabilidades, mensagens,
etc.
– Tal fato demonstra o por que do CRC ter siso utilizado inicialmente apenas para o
aprendizado de alunos.
FATEC São Caetano do Sul
Introdução (cont.)
•
Basicamente, a técnica de modelagem CRC consiste em dividir a elicitação
das classes em diversas sessões a partir da alocação de conjuntos de casos
de uso para cada uma.
•
Após tal alocação, determinados integrantes compõem a sessão CRC:
–
–
–
–
–
Analistas;
Desenvolvedores;
Facilitadores;
Colaboradores;
etc.
•
Criam-se cartões de tamanho 10cm X 15cm (aproximadamente) que
representam os cartões CRC.
•
Tal cartão deve conter o nome da classe, as responsabilidades e
colaborações requisitadas pela mesma.
FATEC São Caetano do Sul
Introdução (cont.)
•
Modelo de cartão criado pelo grupo:
FATEC São Caetano do Sul
Fundamentação Teórica
FATEC São Caetano do Sul
Fundamentação Teórica
•
Classe: Uma classe é uma abstração das características relevantes de um
grupo de “coisas” do mundo real.
•
Abstração: Uma abstração é qualquer modelo que inclui os aspectos
relevantes de algo do mundo real, ao mesmo tempo em que se
ignora os menos importantes.
– Vale ressaltar que a abstração depende do observador.
•
Elicitação de classes candidatas: Na utilização de qualquer técnica de
modelagem, seja ela CRC, Análise por Casos de Uso ou qualquer outra, as
classes identificadas podem não ser as que realmente irão para a fase de
projeto e conseguinte implementação.
– As classes podem “morrer” na fase de análise, caracterizando uma classe que não é
mais necessária para a solução.
FATEC São Caetano do Sul
Fundamentação Teórica (cont.)
•
Mensagem: Uma mensagem é uma requisição enviada de um objeto a
outro para que este último realize alguma operação.
•
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.
– Tal responsabilidade pode ser “conhecer”, que indica um atributo ou “saber fazer”,
que indica uma operação.
•
Colaboração: Quando um objeto não consegue cumprir sozinho com suas
responsabilidades, ele requisita a colaboração de um outro objeto.
– Tal colaboração consiste na execução de uma operação que o objeto colaborador
“sabe fazer”.
– Esta operação pode ser uma computação ou um simples fornecimento de dado a
partir de um atributo próprio que está encapsulado, p.ex.: getAtributoXYZ.
FATEC São Caetano do Sul
Desenvolvimento
FATEC São Caetano do Sul
Cenário proposto
•
Janete é doutora pediatra e tem três consultórios em bairros distintos, onde atende
em horários diferentes. Ana, sua secretária, trabalha nos três consultórios. Para que a
marcação de consultas seja centralizada, Ana tem que carregar as três agendas de um
lado para o outro. A doutora Janete contratou uma empresa de software para lhe
desenvolver um sistema com interface padrão Windows que controle a marcação de
consultas e a ficha dos pacientes. Para os pacientes, é preciso controlar o nome,
endereço, telefone de contato, data de nascimento, data da primeira consulta e email, se é particular ou conveniado a algum plano de saúde. No caso de ser
conveniado, deve-se registrar qual é o plano de saúde. Para cada plano de saúde
credenciado é preciso controlar o limite de consultas por paciente no mês junto ao
sistema do convênio de forma automática. O tempo de acesso e resposta do sistema
não deve ultrapassar 60 segundos. Somente a doutora poderá obter no final do mês,
um relatório com o valor recebido pelas consultas particulares e o faturado pelos
convênios. Cada convênio paga um valor diferente por consulta e credita em prazos
diferentes a partir da data de apresentação da consulta ao plano. O valor da consulta
particular é fixo, mas um ou outro paciente pode receber um desconto. Sendo assim,
o valor efetivamente pago, deve ser registrado. Em cada consulta, a doutora precisa
registrar o peso, altura, descrição da consulta e medicamentos prescritos com tempo
e dosagem. Desta forma, o sistema também fará a emissão da receita. O sistema
também deve controlar o prontuário.
FATEC São Caetano do Sul
Especificação funcional
•
O grupo criou um artefato de software contendo toda a especificação
funcional do cenário proposto.
•
A partir dos requisitos funcionais elicitados no artefato, os seguintes casos
de uso foram criados:
–
–
–
–
–
–
–
CSU01 – Marcar consulta;
CSU02 – Manter consultas;
CSU03 – Permitir pagamento;
CSU04 – Manter ficha dos pacientes;
CSU05 – Manter planos de saúde;
CSU06 – Emitir receita;
CSU07 – Controlar prontuários;
FATEC São Caetano do Sul
Especificação funcional (cont.)
•
Diagrama de casos de uso:
FATEC São Caetano do Sul
Sessões CRC
•
O grupo optou por realizar três sessões CRC ao todo.
•
Cada integrante do grupo recebeu um determinado papel em cada uma das
sessões.
•
O facilitador de cada sessão foi responsável por ler o cenário inúmeras
vezes, além de ler também a especificação funcional.
•
Os analistas de cada sessão ficaram responsáveis pela identificação dos
objetos participantes de cada caso de uso. Tais objetos, posteriormente se
tornaram classes.
•
Para cada sessão proposta pelo grupo, determinados casos de uso foram
alocados.
FATEC São Caetano do Sul
1º Sessão
•
A primeira sessão de aplicação da técnica CRC foi realizada no dia 25/10 às
07:30h em uma sala dentro das dependências da FATEC-SCS. A primeira
sessão de CRC teve uma duração máxima de 45 minutos e por tal se
estendeu até as 08:15h.
•
Ao todo, foram quatro participantes:
– 1 participante atuou como facilitar, conduzindo a sessão, ou seja, lendo e relendo
por diversas vezes a especificação dos casos de uso e o cenário;
– 2 participantes atuaram como analistas;
– 1 participante atuou como especialista do negócio.
•
Para esta sessão foram alocados os casos de uso:
–
–
–
–
CSU01 - Marcar consulta;
CSU02 - Manter consultas;
CSU03 - Permitir pagamento;
CSU04 - Manter ficha dos pacientes.
FATEC São Caetano do Sul
1º Sessão (cont.)
•
A encenação dos casos de uso alocados foi disparada por Danilo Achcar,
dando inicio assim a execução dos passos dos cenários.
•
Na primeira leitura, cada participante de acordo com seu cargo, identificou
uma classe e prosseguiu com a posterior identificação de suas
responsabilidades e colaboradores.
•
Nas conseguintes leituras, novas responsabilidades foram identificadas e
outras abandonadas.
•
Ao fim da 1º sessão, 3 classes foram encontradas (1 por participante,
excluindo o facilitador). Os participantes já possuem idéias sobre outras
possíveis classes, mas preferiram deixar a sua identificação para uma sessão
posterior.
FATEC São Caetano do Sul
1º Sessão (cont.)
FATEC São Caetano do Sul
Diagrama de classes após 1º Sessão
FATEC São Caetano do Sul
2º Sessão
•
A segunda sessão de aplicação da técnica CRC foi realizada no dia 27/10 às
07:08h em uma sala dentro das dependências da FATEC-SCS. Nesta segunda
sessão de CRC, houve uma duração máxima de 76 minutos e por tal se
estendeu até as 08:24h.
•
Ao todo, foram quatro participantes:
– 1 participante atuou como facilitar, conduzindo a sessão, ou seja, lendo e relendo
por diversas vezes a especificação dos casos de uso e o cenário.
– 2 participantes atuaram como analistas.
– 1 participante atuou como especialista do negócio.
•
Para esta sessão foram alocados os casos de uso:
– CSU05 - Manter planos de saúde
– CSU06 - Emitir receita
– CSU07 - Controlar prontuários
FATEC São Caetano do Sul
2º Sessão (cont.)
•
A encenação dos casos de uso alocados foi disparada por Danilo Achcar,
dando inicio assim a execução dos passos dos cenários.
•
Na primeira leitura, cada participante de acordo com seu cargo, identificou
uma ou mais classes e prosseguiu com a posterior identificação de suas
responsabilidades e colaboradores.
•
Nas conseguintes leituras, novas responsabilidades foram identificadas e
outras abandonadas.
•
Ao fim da 2º sessão, 5 classes foram encontradas (dois participantes
identificaram 2 classes e o outro participante apenas 1, excluindo o
facilitador).
•
Além disso, os cartões CRC criados na primeira sessão foram aprimorados
de acordo com os novos cartões identificados.
FATEC São Caetano do Sul
2º Sessão (cont.)
FATEC São Caetano do Sul
2º Sessão (cont.)
FATEC São Caetano do Sul
2º Sessão (cont.)
FATEC São Caetano do Sul
Diagrama de classes após 2º Sessão
FATEC São Caetano do Sul
3º Sessão
•
A terceira sessão de aplicação da técnica CRC foi realizada no dia 28/10 às
11:10h em uma sala dentro das dependências da FATEC-SCS. Nesta terceira
sessão de CRC, houve uma duração máxima de 35 minutos e por tal se
estendeu até as 11:46h.
•
Ao todo, foram quatro participantes:
– 1 participante atuou como facilitar, conduzindo a sessão, ou seja, lendo e relendo
por diversas vezes a especificação dos casos de uso e o cenário.
– 2 participantes atuaram como analistas.
– 1 participante atuou como especialista do negócio.
•
Para esta sessão foram revisados todos os cartões CRC criados nas sessões
CRC anteriores, além da criação de uma nova classe e seu cartão CRC
correspondente.
FATEC São Caetano do Sul
3º Sessão (cont.)
•
A encenação dos casos de uso alocados foi disparada por Bruno Pardini,
dando inicio assim a execução dos passos dos cenários.
•
Na primeira leitura, cada participante de acordo com seu cargo, identificou
uma classe e prosseguiu com a posterior identificação de suas
responsabilidades e colaboradores.
•
Nas conseguintes leituras, novas responsabilidades foram identificadas e
outras abandonadas.
•
Ao fim da 3º sessão, 1 classe a mais foi encontrada (pelo analista Danilo
Achcar que assumiu tal papel na última sessão).
•
Além disso, alguns dos cartões CRC criados anteriormente foram adaptados
e integrados à nova classe identificada.
FATEC São Caetano do Sul
3º Sessão (cont.)
FATEC São Caetano do Sul
Diagrama de classes após 3º Sessão
FATEC São Caetano do Sul
Diagrama de classes após todas sessões
FATEC São Caetano do Sul
Cartões CRC utilizados nas sessões
FATEC São Caetano do Sul
Cartões CRC utilizados nas sessões (cont.)
FATEC São Caetano do Sul
Cartões CRC utilizados nas sessões (cont.)
FATEC São Caetano do Sul
Cartões CRC utilizados nas sessões (cont.)
FATEC São Caetano do Sul
Cartões CRC utilizados nas sessões (cont.)
FATEC São Caetano do Sul
Conclusão
FATEC São Caetano do Sul
Conclusão
•
O grupo concluiu que após a utilização da técnica de CRC, a experiência
proporcionada por tal é bem relevante ao aprendizado. Por tal fato, o CRC
passou a ser considerado pelos integrantes do grupo, uma alternativa para o
uso da técnica de Análise por Casos de Uso, pois o CRC propicia o ambiente
e as condições necessárias para que características importantes da estrutura
de um sistema orientado a objetos sejam identificadas e transcritas em
classes em um diagrama de classes.
•
A modelagem através da técnica CRC proporcionou um ambiente onde
idéias puderam ser discutidas entre os integrantes envolvidos, colaborando
para que a solução identificada para o problema pudesse ser debatida e
melhorada de acordo com a opinião do grupo, e não uma opinião individual
de um único integrante.
•
Portanto, a escolha de uma técnica ou outra poderá depender da aplicação
em questão, do momento e das necessidades que a equipe de
projeto/análise enfrenta, mas sempre tendo em mente que uma técnica é
tão eficiente quanto a outra no sentido de criar uma modelo de classes.
FATEC São Caetano do Sul
Referências
FATEC São Caetano do Sul
Referências
•
BECK, Kent. A Laboratory for Teaching Object-Oriented Thinking.
OOPSLA’89, October, 1-6, 1989.
•
BEZERRA, Eduardo. Princípios de análise e projeto de sistema com UML.
Rio de Janeiro: Campus, 2007.
•
SANTOS, Wellington Vieira dos. Aplicação da técnica CRC (Classe,
Responsabilidade, e Colaboração) em projetos de sistema de software
orientado a objetos: Estudo de caso. 2010. Monografia – Tecnologia em
Informática para Gestão de Negócios. FATEC-ZL (Faculdade de Tecnologia da
Zona Leste).
FATEC São Caetano do Sul
Dúvidas?
FATEC São Caetano do Sul
Download

Apresentação CRC