Universidade Federal do Espírito Santo – Centro Tecnológico Departamento de Informática – Laboratório de Engenharia de Software Curso – Análise e Projeto Orientado a Objeto Exercício #5 – Análise Estática e Dinâmica Clínica Médica Uma clínica médica deseja um sistema de informação para gerenciar suas atividades. A clínica possui diversos médicos associados que atendem a diversas especialidades (p.ex., clínica geral, dermatologia etc). De um médico deseja-se saber nome, número no Conselho Regional de Medicina (CRM), endereço, telefone, horários de atendimento (hora início e hora fim) em cada dia da semana, especialidades que ele atende e planos de saúde aos quais está conveniado. De uma especialidade deseja-se saber o nome e o código do CRM. De um plano de saúde deseja-se saber razão social, CNPJ, endereço e telefone. Pacientes marcam consultas com médicos. Na marcação de uma consulta, deve-se informar o paciente, o médico, a data e a hora da consulta e o plano de saúde, caso a consulta não seja particular. Todas as consultas têm duração padrão de 30 minutos. Caso seja a primeira vez do paciente na clínica, deve-se informar o nome e telefone de contato do mesmo. Quando um paciente chega à clinica para ser consultado, caso seja a primeira vez, deve-se completar o cadastro do paciente, informando data de nascimento, endereço e profissão. Durante uma consulta, o médico pode registrar três tipos de observações: textos a respeito das queixas do paciente, textos sobre as prescrições de medicamentos e exames solicitados e textos sobre resultados dos exames e respostas ao tratamento efetuado. Além disso, o médico pode consultar outras observações que ele mesmo tenha feito em consultas anteriores do paciente. Dado o contexto descrito acima: (1) Faça um diagrama de classes para tratar o escopo do sistema, contendo as classes, associações e atributos. Tome por base apenas a descrição acima. No que se refere às operações, só devem ser registradas no diagrama de classes as operações identificadas no diagrama de seqüência da questão 2. Aponte, também, pelo menos duas restrições de integridade. (2) Faça um diagrama de seqüência para o caso de uso “Marcar Consulta” com base na descrição apresentada a seguir. Utilizar o padrão de nomes definido para os trabalhos práticos, bem como a notação da UML. Descrição do caso de uso “Marcar Consulta”: O atendente informa o paciente, o médico com o qual este deseja se consultar, o plano de saúde, caso a consulta não seja particular, e a data prevista da consulta. Deve ser verificado se o médico solicitado é conveniado ao plano de saúde do paciente. Se o médico for conveniado ao plano ou a consulta for particular, calcula-se os horários disponíveis do médico na data solicitada, tomando por base os horários de atendimento do médico e as consultas já marcadas para a data prevista. Uma lista com os horários disponíveis é apresentada, o atendente seleciona uma hora e uma nova consulta é marcada.