documento de análise e projeto - cin.ufpe.brmfpp/ess/files/documento-de-analise-e-projeto-g2... ·...

35
Documento de Análise e Projeto B.T.I. Corporation Sistema Gerente Fisio Recife, 15 de outubro de 2009 Documento de Análise e Projeto SG Fisio Autores: Bruno Sandres Daniel Costa Leandro Aguiar Marcelo Frota Versão 1.0

Upload: lamanh

Post on 11-Feb-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

Documento de Análise e Projeto

B.T.I. Corporation

Sistema Gerente Fisio

Recife, 15 de outubro de 2009

Documento de Análise e Projeto SG Fisio

Autores:

Bruno Sandres Daniel Costa Leandro Aguiar Marcelo Frota

Versão 1.0

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 2 de 35

Histórico de Revisões

Data Versão Descrição Autor 15/10/2009 1.0 Descrição inicial do documento de

análise e projeto do software - Bruno Sandres - Daniel Costa - Leandro Aguiar - Marcelo Frota

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 3 de 35

Conteúdo

1. Introdução 4 2. Análise dos casos de uso

2.1. [UC 01] Efetuar login 2.2. [UC 02] Cadastrar médico

5 5 6

2.3. [UC 03] Editar médico 2.4. [UC 04] Remover médico 2.5. [UC 05] Cadastrar paciente 2.6. [UC 06] Editar paciente 2.7. [UC 07] Remover paciente 2.8. [UC 08] Cadastrar compromisso 2.9. [UC 09] Editar compromisso 2.10. [UC 10] Remover compromisso 2.11. [UC 11] Registrar entrada do livro caixa 2.12. [UC 12] Editar entrada do livro caixa 2.13. [UC 13] Remover entrada do livro caixa 2.14. [UC 14] Criar atendimento 2.15. [UC 15] Editar atendimento 2.16. [UC 16] Remover atendimento 2.17. [UC 17] Criar prontuário 2.18. [UC 18] Editar prontuário 2.19. [UC 19] Remover prontuário 2.20. [UC 20] Consultar paciente(s) 2.21. [UC 21] Consultar médico(s) 2.22. [UC 22] Consultar livro caixa 2.23. [UC 23] Consultar compromisso(s) 2.24. [UC 24] Criar modelo de prontuário 2.25. [UC 25] Editar modelo de prontuário 2.26. [UC 26] Remover modelo de prontuário 2.27. [UC 27] Imprimir documento

7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

3. Arquitetura do sistema 3.1. Descrição da arquitetura 3.2. Projeto da arquitetura

32 32 32

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 4 de 35

1. Introdução

O objetivo deste artefato é analisar todos os casos de uso definidos nas etapas anteriores deste processo, servindo como ferramenta de apoio à etapa de construção do produto. A análise faz-se por diagramas de classe e diagramas de sequência, dos quais serão extraídos os escopos de todas as estruturas envolvidas no sistema, tais como classes (com seus respectivos atributos e métodos), pacotes e interfaces, juntamente com todos os relacionamentos entre elas.

Além disso, neste material consta, também, o projeto e a descrição da arquitetura que julgamos mais apropriada ao projeto, a saber, arquitetura em camadas.

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 5 de 35

2. Análise dos casos de uso

2.1. [UC 01] Efetuar login

O usuário poderá efetuar login no sistema, fornecendo login e senha. Caso a combinação login/senha seja válida, o usuário terá acesso ao sistema num perfil equivalente à sua permissão.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 6 de 35

2.2. [UC 02] Cadastrar médico

Um administrador poderá inserir novos médicos na base de dados e, para isso,

deverá informar os seguintes dados sobre o médico a ser cadastrado: CPF, CREFITO,

Nome, Dados/Formação e Senha. Por fim, deverá determinar se este médico possuirá

ou não permissões de administrador.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 7 de 35

2.3. [UC 03] Editar médico

Um médico poderá editar seus dados, através da interface acessada, que exibe os dados do mesmo (consultados segundo o UC 21), passando para o programa os dados que deseja modificar (CPF, CREFITO, Nome, Dados/Formação, Senha) e a identificação para a aplicação, que atualiza os dados, disponibilizando as novas informações para todos que possuem acesso ao sistema.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 8 de 35

2.4. [UC 04] Remover médico

Um administrador poderá remover um médico, caso este seja demitido, abandonar o estabelecimento ou qualquer outra situação excepcional que solicite esta operação, passando para o sistema um dos médicos já cadastrados no mesmo (os quais podem ser consultados segundo o UC 21).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 9 de 35

2.5. [UC 05] Cadastrar paciente

No cadastro de um novo paciente da clínica, médicos serão responsáveis por cadastrá-los no sistema, inserindo os seguintes dados: Nome, Sexo, Data de nascimento, Profissão, Observações, Senha (no momento da inserção esta será a data de nascimento do paciente, sendo responsabilidade do mesmo modificá-la).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 10 de 35

2.6. [UC 06] Editar paciente

Médicos e pacientes (os últimos quando acessando módulo desenvolvido em iteração ainda não especificada) podem modificar as propriedades do paciente, tendo-os consultado segundo o UC 20 (para médicos) e enviando ao sistema a identificação do mesmo e os dados que serão alterados.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 11 de 35

2.7. [UC 07] Remover paciente

Caso o paciente deseje se desvincular da clínica, algum médico deverá removê-lo da base de dados do sistema, para tal, basta selecioná-lo numa consulta (UC 20) aos pacientes cadastrados, e informando, por meio da interface de exibição desta lista, o paciente que deve ser removido, caso existam atendimentos nos quais este paciente participa, e prontuários associados aos mesmos, toda esta informação será removida na remoção do paciente.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 12 de 35

2.8. [UC 08] Registrar compromisso Compromissos podem ser agendados por médicos, envolvendo ou não algum

paciente e, necessariamente, uma data, um horário e uma breve descrição dos

mesmos. A interface da aplicação auxilia o preenchimento com campos auto-

explicativos e buscas (pacientes e compromissos, UCs 20 e 23) para verificar existência

e disponibilidade do paciente.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 13 de 35

2.9. [UC 09] Editar compromisso Caso um paciente remarque ou desista de um compromisso, ou o próprio

médico não possa realizá-lo entre outros motivos que possam levar a edição de um

compromisso, o médico poderá modificar algum compromisso que o mesmo tenha

criado anteriormente.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 14 de 35

2.10. [UC 10] Remover compromisso Em caso de saída de um médico do sistema da clínica, ou desistência de médico

ou paciente de um compromisso, o mesmo poderá ser removido da agenda pelo

médico responsável, ou por um administrador (no caso de saída, caso o médico não o

tenha feito).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 15 de 35

2.11. [UC 11] Registrar entrada do livro caixa O livro caixa é uma parte importantíssima do sistema, nele constam as

movimentações financeiras, créditos (geralmente consultas pagas) e débitos (despesas

com equipamentos, energia elétrica, entre outras) do estabelecimento. Para registrar

uma entrada do livro caixa um médico precisa informar seu valor, discriminar a origem

daquele registro e a data do mesmo.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 16 de 35

2.12. [UC 12] Editar entrada do livro caixa Embora pouco provável, caso o médico que registrar a entrada do livro caixa

cometer algum erro e desejar modificá-la, ele, e, por questões éticas, apenas ele,

poderá realizar mudanças nos dados.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 17 de 35

2.13. [UC 13] Remover entrada do livro caixa Semelhante ao caso anterior, e talvez ainda menos provável, apenas o médico

que tenha inserido algum tipo de informação no livro caixa do sistema terá permissão

de removê-lo do mesmo.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 18 de 35

2.14. [UC 14] Criar atendimento O atendimento é a relação próxima entre médico e paciente de acordo com

alguma patologia apresentada pelo segundo, é através dele que o médico poderá

registrar o progresso do paciente no decorrer do tratamento (anamnese e

prontuários). Basta fornecer um paciente na tela apropriada que o sistema passa a

oferecer as ferramentas de atendimento (criação de prontuários).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 19 de 35

2.15. [UC 15] Editar atendimento Necessário caso um médico repasse algum cliente para outro médico do

sistema, para tal, o responsável pelo atendimento deverá informar o novo médico

responsável por aquele atendimento e, mesmo que com baixíssima probabilidade de

ocorrer, caso um médico crie um atendimento para um paciente e perceba que não na

verdade deveria ser outro, o mesmo poderá realizar a permuta de pacientes.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 20 de 35

2.16. [UC 16] Remover atendimento

Ao término do tratamento, caso não haja necessidade de registros do tratamento do paciente, o médico responsável pelo atendimento poderá removê-lo do sistema. Caso o paciente se retire da clínica, esta operação será realizada automaticamente sobre todos os atendimentos associados ao paciente em questão.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 21 de 35

2.17. [UC 17] Criar prontuário

O prontuário a principal ferramenta de registro do médico durante o tratamento de um paciente, é através dele que o mesmo poderá catalogar as queixas do paciente, manter atualizado o progresso. Associando a um atendimento (e consequentemente a um paciente) o médico poderá criar diversos prontuários (os quais podem seguir modelos predefinidos pelos usuários do sistema).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 22 de 35

2.18. [UC 18] Editar prontuário No decorrer do tratamento certamente haverá modificações a ser feitas nos

prontuários, para que o acompanhamento do processo possa ser realizado

corretamente, para isso, o médico responsável poderá realizar modificações nos

prontuários de seus atendimentos (pacientes).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 23 de 35

2.19. [UC 19] Remover prontuário

Caso não exista mais a necessidade de armazenar um prontuário de um atendimento, ou caso o próprio atendimento seja descartado pelo médico, prontuário(s) associado(s) a ele poderão ser removidos, esta remoção de prontuário apenas pode ser feita pelo médico responsável pelo atendimento (paciente).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 24 de 35

2.20. [UC 20] Consultar paciente(s)

Para simples conferência ou uso noutras tarefas (registro de compromisso, criação de atendimento, entre outras), o médico poderá consultar os pacientes registrados na clínica, utilizando filtros como nome, médico (busca por pacientes atendidos por um médico) ou enfermidade (pacientes que foram ou estão sendo tratados por conta de uma enfermidade).

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 25 de 35

2.21. [UC 21] Consultar médico(s) Numa das telas da aplicação pode-se verificar todos os médicos cadastrados no

sistema.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 26 de 35

2.22. [UC 22] Consultar livro caixa

Médicos podem desejar visualizar entradas do livro caixa de acordo com período, médico responsável ou ambos, para tal, o sistema lhe oferece uma interface que recebe estas informações e exibe um relatório com o livro caixa filtrado pelos parâmetros desejados pelo usuário.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 27 de 35

2.23. [UC 23] Consultar compromisso(s)

Médicos podem desejar visualizar compromissos de acordo com período, médico responsável, paciente envolvido em quaisquer de suas combinações, para tal, o sistema lhe oferece uma interface que recebe estas informações e exibe um relatório com a agenda de compromissos filtrada pelos parâmetros desejados pelo usuário.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 28 de 35

2.24. [UC 24] Criar modelo de prontuário Modelos de prontuário são uma forma de agilizar o trabalho de médicos, os

quais representam, em parte, os conhecimentos que os mesmos possuem do tipo de

atendimento ao qual o prontuário estará associado e um conjunto de passos padrões

que o mesmo costuma utilizar no exercício de suas atividades. Um médico poderá criar

um modelo de prontuário que poderá ser usado para atendimentos do tipo

especificado por qualquer médico cadastrado no sistema.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 29 de 35

2.25. [UC 25] Editar modelo de prontuário Por qualquer motivo, havendo necessidade de mudança, qualquer médico do

sistema poderá modificar modelos de prontuário existentes. Para tal, o mesmo poderá

visualizar o prontuário na tela do programa e decidir por modificar, remover ou inserir

trechos no documento.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 30 de 35

2.26. [UC 26] Remover modelo de prontuário Caso algum modelo torne-se obsoleto, a clínica deixe de prestar serviço na

especialidade abordada no documento ou algum outro motivo que leve a necessidade

de remoção do modelo de prontuário da base de dados do sistema, tal operação

poderá ser feita por qualquer médico.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 31 de 35

2.27. [UC 27] Imprimir documento Por armazenar numerosa quantidade de documentos, o sistema oferece uma

ligação com um dispositivo de impressão externo para emissão de documentos,

bastando apenas solicitação do usuário através da interface de visualização do

documento que desejar imprimir.

Diagrama de Sequência

Diagrama de Classes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 32 de 35

3. Arquitetura do sistema

3.1. Descrição da arquitetura

Após analisar cuidadosamente todos os casos de uso, tivemos embasamento suficiente para projetar a arquitetura mais adequada ao sistema. Os elementos de projeto que compõem esta arquitetura foram obtidos através do mapeamento das classes identificadas durante a análise, unificando-as ou mesmo removendo-as do projeto quando necessário. Este mapeamento está representado na próxima sessão.

Decidimos fazer uso do modelo de arquitetura em camadas, levando em consideração que a equipe possui maior familiaridade com o mesmo. Outros aspectos relevantes na escolha deste modelo são as vantagens oferecidas por ele, tais como, a redução da complexidade e do acoplamento entre os módulos, bem como o alto grau de coesão e reuso proporcionado por uma boa divisão de camadas.

3.2. Projeto da arquitetura

Mapeamento de classes de análise em elementos de projeto

Classes de Análise Elementos de Projeto

Adicionado

JanelaPrincipal

Fachada

ConexaoBD

JanelaLogin JanelaLogin

TelaMedicos TelaMedicos

TelaPacientes TelaPacientes

TelaAtendimentos

TelaCompromissos TelaAgenda

TelaLivroCaixa TelaLivroCaixa

TelaProntuarios TelaPacienteProntuarios

TelaModelosProntuario TelaModelos

TelaImpressao TelaImpressao

ControleLogin ControleLogin

ControleMedico ControleMedico

ControlePaciente ControlePaciente

ControleCompromisso ControleCompromisso

ControleLivroCaixa ControleLivroCaixa

ControleAtendimento ControleAtendimento

ControleProntuario ControleProntuario

ControleModeloProntuario ControleModeloProntuario

ControleImpressao ControleImpressao

Usuario Usuario

Medico Medico

Paciente Paciente

Compromisso Compromisso

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 33 de 35

EntradaLivroCaixa EntradaLivroCaixa

Atendimento Atendimento

Prontuario Prontuario

ModeloProntuario ModeloProntuario

RepUsuarios RepMedicos RepPacientes RepCompromissos RepProntuarios RepLivroCaixa RepAtendimentos RepModeloProntuario

Removido Obs.: Todas as instâncias no sistema serão armazenadas diretamente no banco de dados, e o acesso a elas dar-se-á de forma análoga.

Diagrama de Pacotes

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 34 de 35

Distribuição dos elementos de projeto nos pacotes

Pacotes Elementos de Projeto

GUI JanelaPrincipal JanelaLogin TelaMedicos TelaPacientes TelaAgenda TelaLivroCaixa TelaPacienteProntuarios TelaModelos TelaImpressao

Fachada Fachada

Negocio ControleLogin ControleMedico ControlePaciente ControleCompromisso ControleLivroCaixa ControleAtendimento ControleProntuario ControleModeloProntuario ControleImpressao

Comunicacao ConexaoBD

Base Usuario Medico Paciente Compromisso EntradaLivroCaixa Atendimento Prontuario ModeloProntuario

Util Ferramentas necessárias ao projeto

Sistema Gerente Fisio Versão 1.0 15 de outubro de 2009

B . T . I . C o r p o r a t i o n

Página 35 de 35

Arquitetura completa com todos os elementos e relacionamentos

Os métodos pertencentes às classes da GUI, bem como os construtores de todas as entidades utilizadas, não foram exibidos do esquema abaixo, visando torná-lo menos poluído visualmente, mas estes métodos continuam fazendo parte do projeto.