Relatório de Projecto Detalhado

Propaganda
Licenciatura em Engenharia Informática e
Computação
-
Laboratório de Informática Avançada
Gestão de beneficiários
Relatório de Projecto Detalhado
Grupo de Trabalho:
Ana Mota, [email protected]
Ana Tavares, [email protected]
João Belo, [email protected]
João Charruadas, [email protected]
Gestão de Beneficiários – Relatório de Projecto Detalhado
1/32
Índice
Índice ................................................................................ 2
1. Descrição de componentes................................................ 3
1.1
1.2
1.3
1.4
–
–
–
–
Especificação ............................................................................ 3
Implementação ......................................................................... 5
Testes ................................................................................... 18
Aplicações .............................................................................. 20
2. Realização de casos de utilização ..................................... 25
2.1 – Parte Estática ......................................................................... 25
2.2 – Parte Dinâmica ....................................................................... 28
3. Informação sobre testes de integração ............................. 30
4. Estado da implementação ............................................... 31
ANEXO I ........................................................................... 32
Gestão de Beneficiários – Relatório de Projecto Detalhado
2/32
1 – Descrição de Componentes
1.1 - Especificação
O seguinte diagrama de componentes especifica os componentes do projecto que
foram implementados:
Componentes Internos
Administração
Componentes Externos
Utilizadores
Adição Utilizador
Alteração Password
Login Administradores
Logout Utilizadores
Consulta Conta
Corrente Beneficiário
Login Utilizadores
Consulta Reembolsos
Adição Reembolsos
Consulta Contribuições
Adição Contribuições
Consulta Despesas
Adição Beneficiários
Consulta Relatório de
Resultados
Alteração
Beneficiários
Consulta Beneficiários
APACHE
AXIS
WebService para Efectuar
Transferencia bancária
Remoção Utilizadores
Remoção Beneficiários
WebServices
Verificação de Sessão
Consulta Transferências
Notificadas
Efectuar transferência bancária
(UTILIZADO)
Notificação de transferencia
bancária (FORNECIDO)
Adição de despesas para
contabilidade (FORNECIDO)
É possível então listar os componentes a partir do diagrama:
1.1.1 – Componentes Internos
Componentes de administração:
-
Adição Utilizador (CADM1);
-
Alteração Password (CADM2);
-
Login Administrador (CADM3);
-
Remoção Utilizadores (CADM4).
Componentes de utilização:
-
Logout de Utilizadores (CUTIL1);
-
Login de Utilizadores (CUTIL2);
-
Adição de Reembolsos (CUTIL3);
Gestão de Beneficiários – Relatório de Projecto Detalhado
3/32
-
Adição de Contribuições (CUTIL4);
-
Adição de Beneficiários (CUTIL5);
-
Alteração de Beneficiários (CUTIL6);
-
Remoção de Beneficiários (CUTIL7);
-
Consulta de Beneficiários (CUTIL8);
-
Consulta de Conta Corrente de Beneficiários (CUTIL9);
-
Consulta de Reembolsos (CUTIL10);
-
Consulta de Contribuições (CUTIL11);
-
Consulta de Despesas (CUTIL12);
-
Consulta de Relatório de Resultados (CUTIL13);
-
Verificação de Sessão (CUTIL14);
-
Consulta de Transferências Notificadas (CUTIL15).
Componentes de WebServices:
-
Efectuar transferência bancária (Componente utilizado) (CWS1);
-
Notificação de transferência bancária (Componente fornecido) (CWS2);
-
Adição de despesas para contabilidade (Componente fornecido) (CWS3).
1.1.2 – Componentes Externos
Apache Tomcat WebServer: (CEX1)
-
AXIS. (CEX1.1)
WebService para efectuar transferência bancária. (CEX2)
Gestão de Beneficiários – Relatório de Projecto Detalhado
4/32
1.2
– Implementação
1.2.1 – Componentes Internos
De seguida é descrita a implementação de cada componente individualmente do
sistema, utilizando diagramas de componentes e de actividades.
Componentes de administração:
CADM1 – Adição Utilizador
header_admin.jsp
checksession.jsp
add_user.jsp
CADM1 - Adição Utilizador
indexloginadmin.jsp
menu_admin.jsp
new_user.jsp
adminUtil.java
adminConn.java
É chamado o método newUser(String, String)
Gestão de Beneficiários – Relatório de Projecto Detalhado
5/32
CADM2 – Alteração Password
checksession.jsp
header_admin.jsp
change_pass.jsp
CADM2 - Alteração Password
indexloginadmin.jsp
new_pass.jsp
menu_admin.jsp
adminUtil.java
adminConn.java
É chamado o método changePass(String, String, String)
CADM3 – Login Administrador
setUserPass(String, String)
indexloginadmin.jsp
Password Correcta
liga()
login-errado_admin.jsp
A password está correcta?
Password Incorrecta
CADM3 - Login Administrador
login_admin.jsp
CUTIL2 - Login de Utilizadores
adminConn.java
adminUtil.java
Gestão de Beneficiários – Relatório de Projecto Detalhado
É chamado o método setUserPass(String, String)
É chamado o método liga()
6/32
CADM4 – Remoção de Utilizadores
checksession.jsp
header_admin.jsp
del_user.jsp
CADM4 - Remoção Utilizadores
indexloginadmin.jsp
drop_user.jsp
menu_admin.jsp
adminUtil.java
adminConn.java
É chamado o método delUser(String)
Componentes de utilização:
CUTIL1 – Logout utilizadores
sair.jsp
Os parâmetros da sessão são invalidados.
CUTIL1 - Logout de Utilizadores
index.jsp
Gestão de Beneficiários – Relatório de Projecto Detalhado
7/32
CUTIL2 – Login de Utilizadores
Atributos da sessão validados
login(String, String)
indexlogin.jsp
Password Correcta
liga()
login-errado.jsp
A password está correcta?
Password Incorrecta
CUTIL2 - Login de Utilizadores
login.jsp
Ligacao.java
regUtil.java
É chamado o método liga()
É chamado o método login(String, String)
Gestão de Beneficiários – Relatório de Projecto Detalhado
8/32
CUTIL3 - Adição de Reembolsos
checksession.jsp
header.jsp
CWS1 - Efectuar Transferência Bancária
cc_reemb_form.jsp
CUTIL3 - Adição de Reembolsos
indexlogin.jsp
menu.jsp
WebService OK
cc_reemb.jsp
Erro WebService
regUtil.java
É chamado o método insReemb(String, String,
String, String, String)
É chamado o método getConta(String)
banco-error.htm
ServicosServiceTestCase.java
É chamado o método test3ServicosEfectuarTransferencia(String,
String, String, String, int, String)
CUTIL4 - Adição de Contribuições
header.jsp
checksession.jsp
CWS1 - Efectuar Transferência Bancária
cc_contrib_form.jsp
CUTIL4 - Adição de Contribuições
indexlogin.jsp
menu.jsp
cc_contrib.jsp
WebService OK
regUtil.java
Erro WebService
É chamado o método insContrib(String, String, String)
É chamado o método getConta(String)
banco-error.htm
ServicosServiceTestCase.java
É chamado o método test3ServicosEfectuarTransferencia(String,
String, String, String, int, String)
Gestão de Beneficiários – Relatório de Projecto Detalhado
9/32
CUTIL5 - Adição de Beneficiários
checksession.jsp
header.jsp
ins_benef_form.jsp
CUTIL5 - Adição de Beneficiários
ins_benef.jsp
menu.jsp
indexlogin.jsp
regUtil.java
É chamado o método insBenef(String, String, String,
String, String, String, String, String)
CUTIL6 - Alteração de Beneficiários
checksession.jsp
indexlogin.jsp
act_benef.jsp
CUTIL8 - Consulta de Beneficiários
CUTIL6 - Alteração de Beneficiários
regUtil.java
É chamado o método actualizaBenef(String, String, String,
String, String, String, String, String)
Gestão de Beneficiários – Relatório de Projecto Detalhado
10/32
CUTIL7 - Remoção de Beneficiários
checksession.jsp
indexlogin.jsp
CUTIL8 - Consulta de Beneficiários
act_benef.jsp
CUTIL7 - Remoção de Beneficiários
regUtil.java
É chamado o método removerBenef(String)
CUTIL8 - Consulta de Beneficiários
header.jsp
checksession.jsp
consul_benef_form.jsp
menu.jsp
CUTIL8 - Consulta de Beneficiários
consul_benef.jsp
beneficiario.jsp
regUtil.java
É chamado o método getBenef(String)
Gestão de Beneficiários – Relatório de Projecto Detalhado
11/32
CUTIL9 - Consulta de Conta Corrente de Beneficiários
regUtil.java
É chamado o método getCCBeneficiario(String, String, String)
É chamado o método getBenef(String)
header.jsp
conta_corrente_beneficiario.jsp
checksession.jsp
CUTIL8 - Consulta de Beneficiários
ccb_cc_form.jsp
CUTIL9 - Consulta de Conta Corrente de Beneficiários
menu.jsp
CUTIL10 - Consulta de Reembolsos
regUtil.java
É chamado o método getReembCC(String, String)
header.jsp
showReemb.jsp
checksession.jsp
reemb_cc_form.jsp
CUTIL10 - Consulta de Reembolsos
menu.jsp
Gestão de Beneficiários – Relatório de Projecto Detalhado
12/32
CUTIL11 - Consulta de Contribuições
regUtil.java
É chamado o método getContCC(String, String)
header.jsp
showContrib.jsp
checksession.jsp
contrib_cc_form.jsp
CUTIL11 - Consulta de Contribuições
menu.jsp
CUTIL12 - Consulta de Despesas
regUtil.java
É chamado o método getDespCC(String, String)
header.jsp
showDesp.jsp
checksession.jsp
desp_cc_form.jsp
CUTIL12 - Consulta de Despesas
menu.jsp
Gestão de Beneficiários – Relatório de Projecto Detalhado
13/32
CUTIL13 - Consulta de Relatório de Resultados
regUtil.java
É chamado o método getTotalMes(String, String)
header.jsp
total.jsp
checksession.jsp
total_form.jsp
CUTIL13 - Consulta de Relatório de Resultados
menu.jsp
CUTIL14 – Verificação de Sessão
Sessão válida
index.jsp
Sessão inválida
checksession.jsp
CUTIL14 - Verificação de Sessão
Gestão de Beneficiários – Relatório de Projecto Detalhado
14/32
CUTIL15 – Consulta de Transferências Notificadas
regUtil.java
É chamado o método getTransMes(String, String)
header.jsp
transferencias.jsp
checksession.jsp
trans_form.jsp
CUTIL15 - Consulta de Transferências Notificadas
menu.jsp
Componentes de WebServices:
CWS1 – Efectuar transferência bancária
CEX2 - WebService para Efectuar Transferência
Bancária
CWS1 - Efectuar Transferência Bancária
ServicosServiceTestCase.java
É chamado o método test3ServicosEfectuarTransferencia(String,
String, String, String, int, String)
Localiza WebService
Obtém serviços do WebService
Termina com valor de retorno
Efectua Transferência
Gestão de Beneficiários – Relatório de Projecto Detalhado
15/32
CWS2 – Notificação de transferência bancária
CWS2 - Notificação de Transferência Bancária
Servicos.jws
É chamado o método notificarTransferencia(String, String,
String, String, String)
Abre ligação à base de dados
Insere transferência confirmada na tabela transferencias
CWS3 – Adição de despesas para contabilidade
CWS3 - Adição de despesas para contabilidade
Servicos.jws
É chamado o método insDespesa(String, String, String, String,
String, String)
Abre ligação à base de dados
Obtém o maior código inserido na tabela contabilidades
Gestão de Beneficiários – Relatório de Projecto Detalhado
Insere despesa na base de dados
16/32
1.2.2 – Componentes Externos
Como a implementação dos componentes externos não é conhecida, descrevemse os serviços disponibilizados por estes.
CEX1 - Apache Tomcat WebServer
O Apache Tomcat é um servidor web que permite correr JavaServer Pages e
outros scripts “server-side”. É utilizado para disponibilizar os WebServices a partir
da porta HTTP do computador onde o sistema está instalado.
CEX1.1 – AXIS
O AXIS é um módulo que se integra no Apache Tomcat que, além de ajudar na
construção de WebServices, permite a sua execução através dos vários submódulos que possui para este tipo de serviços.
CEX2 - WebService para efectuar transferência bancária
Este WebService permite que se efectuem ligações para pedir a execução de
transferências bancárias. O componente interno que se liga a este componente é
o CWS1 (Efectuar Transferência Bancária).
O interface disponibilizado por este componente é o seguinte:
boolean
efectuarTransferencia(string
login,
string
password,
NIBContaOrigem, string NIBContaDestino, decimal valor, string descricao)
Gestão de Beneficiários – Relatório de Projecto Detalhado
string
17/32
1.3
– Testes
O procedimento utilizado para os testes é baseado num uso extensivo do
componente, tanto separadamente como em conjunto com outros componentes
(internos e externos), de modo a permitir descobrir eventuais falhas nessa
mesma implementação.
1.3.1 – Componentes Internos
Os seguintes testes foram efectuados:
Componente
Resultado dos Testes
CADM1
Passou
CADM2
Passou
CADM3
Passou
CADM4
Passou
CUTIL1
Passou
CUTIL2
Passou
CUTIL3
Passou
CUTIL4
Passou
CUTIL5
Passou
CUTIL6
Passou
CUTIL7
Passou
CUTIL8
Passou
CUTIL9
Passou
CUTIL10
Passou
CUTIL11
Passou
CUTIL12
Passou
CUTIL13
Passou
CUTIL14
Passou
CUTIL15
Passou
CWS1
Passou
CWS2
Passou
CWS3
Passou
Gestão de Beneficiários – Relatório de Projecto Detalhado
18/32
1.3.2 – Componentes Externos
Os seguintes testes foram efectuados:
Componente
Resultado dos Testes
CEX1
Passou
CEX1.1
Passou
CEX2
Passou
Gestão de Beneficiários – Relatório de Projecto Detalhado
19/32
1.4
– Aplicações
De seguida apresenta-se a correspondência entre componentes e requisitos,
assim como as respectivas funcionalidades que permitem os requisitos
apresentados. Ver Anexo I – Requisitos do Sistema Revistos.
1.4.1 – Requisitos Funcionais
RFS1 – O sistema tem que permitir a inserção, actualização e remoção de dados
de beneficiários.
Componentes que implementam este requisito:
CUTIL5 - Adição de Beneficiários;
CUTIL6 - Alteração de Beneficiários;
CUTIL7 - Remoção de Beneficiários;
CUTIL8 - Consulta de Beneficiários.
É possível inserir um novo beneficiário directamente a partir do menu principal do
utilizador do sistema. Através de uma consulta posterior de beneficiários, é
possível fazer a alteração dos dados de um beneficiário ou a sua remoção.
RFS2 – O sistema tem que permitir registar o recebimento das contribuições de
beneficiários.
Componente que implementa este requisito:
CUTIL4 - Adição de Contribuições.
Através de um formulário simples, acedido a partir do menu principal, adiciona-se
uma contribuição referente a um dado beneficiário.
RFS2.1 – O sistema tem que permitir uma ligação com o banco para o
recebimento das contribuições de beneficiários.
Componente que implementa este requisito:
CWS1 – Efectuar transferência bancária.
Quando se adiciona uma contribuição, é efectuada uma ligação através do
WebService disponibilizado externamente (componente CEX2 – WebService para
efectuar transferência bancária). A transferência é então efectuada.
Gestão de Beneficiários – Relatório de Projecto Detalhado
20/32
RFS3 – O sistema tem que permitir registar o pagamento de reembolsos aos
beneficiários.
Componente que implementa este requisito:
CUTIL3 - Adição de Reembolsos.
Através de um formulário simples, acedido a partir do menu principal, adiciona-se
um reembolso referente a um dado beneficiário.
RFS3.1 – O sistema tem que permitir uma ligação com o banco para o pagamento
de reembolsos aos beneficiários.
Componente que implementa este requisito:
CWS1 – Efectuar transferência bancária.
Quando se adiciona um reembolso, é efectuada uma ligação através do
WebService disponibilizado externamente (componente CEX2 – WebService para
efectuar transferência bancária). A transferência é então efectuada. Como se
pode ver, o componente CWS1 funciona de forma indiferente tanto para
transferências relativas a reembolsos como contribuições.
RFS4 – O sistema tem que disponibilizar uma ligação que permita à gestão de
acordos inserir despesas na contabilidade.
Componente que implementa este requisito:
CWS3 – Adição de despesas para contabilidade.
O sistema disponibiliza um WebService através deste componente, permitindo
uma ligação ao mesmo a partir da Gestão de Acordos, que irá inserir despesas na
base de dados, permitindo a sua integração na contabilidade.
RFS5 – O sistema tem que permitir visualizar o registo dos pagamentos,
recebimentos e despesas para contabilização, tanto a nível de contabilização
geral, como de contabilização individual por beneficiário ou por datas.
Componentes que implementam este requisito:
CUTIL8 - Consulta de Beneficiários;
CUTIL9 - Consulta de Conta Corrente de Beneficiários;
CUTIL10 - Consulta de Reembolsos;
CUTIL11 - Consulta de Contribuições;
CUTIL12 - Consulta de Despesas.
Gestão de Beneficiários – Relatório de Projecto Detalhado
21/32
Através de uma consulta de um beneficiário, é possível obter a sua conta corrente
por mês, com a informação de todas as contribuições, despesas e reembolsos
associados. Também disponível, mas desta vez directamente a partir do menu
principal do utilizador, é possível efectuar consultas, separadamente e por mês,
para as contribuições, despesas ou reembolsos efectuadas nesse mês pelos vários
beneficiários.
RFS6 – O sistema tem que poder gerar e visualizar relatórios de resultados a
partir do registo dos pagamentos, recebimentos e despesas.
Componente que implementa este requisito:
CUTIL13 – Consulta de Relatório de Resultados.
Directamente a partir do menu principal do utilizador é possível obter, por mês, o
relatório de resultados que inclui, em conjunto, todas as contribuições, despesas
ou reembolsos efectuados nesse mês pelos vários beneficiários.
RFS7 – O sistema tem que estar preparado para vários utilizadores diferentes.
Componentes que implementam este requisito:
CUTIL1 - Logout de Utilizadores;
CUTIL2 - Login de Utilizadores.
É possível um utilizador autenticado entrar no sistema e, após a sua saída ou
alternativamente a partir de outro terminal, entrar outro utilizador autenticado,
havendo então várias contas de utilizadores.
RFS8 – O sistema tem que permitir uma gestão de utilizadores.
Componentes que implementam este requisito:
CADM1 - Adição Utilizador;
CADM2 - Alteração Password;
CADM3 - Login Administrador;
CADM4 - Remoção Utilizadores.
As ferramentas de administração do sistema, acessíveis com o nome de utilizador
e password da base de dados que tem as tabelas do sistema (correspondendo ao
login de administrador), permitem adicionar utilizadores, alterar a password de
um utilizador ou remover utilizadores.
Gestão de Beneficiários – Relatório de Projecto Detalhado
22/32
RFS9 – O sistema tem que disponibilizar uma ligação ao banco que permita
receber notificações quando as transferências são efectuadas, assim como
permitir visualizar essas transferências.
Componentes que implementam este requisito:
CUTIL15 – Consulta de Transferências Notificadas;
CWS2 – Notificação de Transferência Bancária.
É disponibilizado um WebService para ser utilizado pelo banco, de modo a que
este possa notificar o sistema quando uma transferência pedida é executada, e
está portanto confirmada. A confirmação destas transferências pode ser
consultada directamente através do menu principal de utilizador.
1.4.2 – Requisitos Não Funcionais
RNFS1 – O sistema deve permitir uma autenticação dos utilizadores.
Componentes que se relacionam com este requisito:
CADM1 - Adição Utilizador;
CADM2 - Alteração Password;
CUTIL2 - Login de Utilizadores.
O login de um utilizador implica que este tenha associada uma password.
Seguindo o mesmo raciocínio, ao adicionar um utilizador novo é necessário que
se crie uma password. É possível a qualquer altura a mudança de password
através das ferramentas de administração.
RNFS2 – A comunicação entre sistemas deve utilizar uma plataforma segura.
Componentes que se relacionam com este requisito:
CWS1 - Efectuar transferência bancária;
CWS2 - Notificação de transferência bancária;
CWS3 - Adição de despesas para contabilidade.
Todas as comunicações entre sistemas são através de WebServices e funcionam
através de ligações por TCP/IP não encriptadas. Devido à reduzida informação
enviada, a probabilidade desta ser interceptada é significativamente baixa, pelo
que se pode assumir que há alguma segurança nesta utilização. No entanto, a
intercepção destes pacotes de informação não-encriptada é possível, não se
podendo assumir que se trata de uma plataforma segura.
Gestão de Beneficiários – Relatório de Projecto Detalhado
23/32
RNFS3 – O sistema deve ter um tempo de resposta rápido.
Todos os componentes internos ao sistema relacionam-se com este requisito,
visto que pelos testes efectuados todos têm esse tempo de resposta rápido.
RNFS4 – A comunicação entre sistemas deverá ter um tempo de resposta rápido.
Componentes que se relacionam este requisito:
CWS1 - Efectuar transferência bancária;
CWS2 - Notificação de transferência bancária;
CWS3 - Adição de despesas para contabilidade.
Os testes efectuados às comunicações através dos WebServices provaram que
não há qualquer tipo de dificuldade que impeça uma comunicação rápida entre
sistemas. O tamanho dos pacotes enviados é muito pequeno, o que não requer
muita largura de banda, mas há que ter em conta que numa rede muito
congestionada esse tempo de resposta pode ser mais lento.
Gestão de Beneficiários – Relatório de Projecto Detalhado
24/32
2 – Realização de casos de utilização
2.1 – Parte Estática
2.1.1 – Modelo de Domínio Parcial de Alto Nível
Apresenta-se de seguida o diagrama com o modelo de domínio parcial de alto
nível, demonstrando a interligação com os outros sistemas.
A Gestão de Beneficiários necessita do Banco
para efectuar transferências bancárias
Banco
O Banco necessita da Gestão de Beneficiários
para notificar quando as transferências são
executadas
Gestão de
Beneficiários
Gestão de Acordos
A Gestão de Acordos necessita de enviar
as despesas para serem inseridas na contabilidade
da Gestão de Beneficiários
Através deste diagrama é possível observar as dependências que correspondem
exactamente aos WebServices que fazem a interligação entre sistemas. Tanto a
Gestão de Acordos como o Banco dependem da Gestão de Beneficiários,
correspondendo aos dois WebServices que são fornecidos. A Gestão de
Beneficiários depende, por sua vez, do Banco, o que corresponde ao WebService
que este lhe fornece.
Gestão de Beneficiários – Relatório de Projecto Detalhado
25/32
2.1.2 – Diagrama de classes
Apresenta-se o renovado diagrama de classes:
Contribuição
Beneficiário
-NIF : long
-Nome : String
-Morada : String
-Telefone : long
-Outros Contactos : String
-Sexo : char
-Nº Conta : long
-Tipo de Quota : String
1..*
*
-Data : Date
-Valor : float
-Nº Factura : int
1
Transferência
Bancária
1
-Nº Conta Bancária origem : long
-Nº Conta Bancária destino : long
-Valor : float
-Descrição : String
1
Pagamento
*
*
0..*
Despesa
-Prestador Saúde : String
-Tratamento : String
0..* Reembolso
1
Deste diagrama observa-se que todos os dados referente à contabilidade de
Despesas e Reembolsos são consideradas classes que herdam os atributos da
classe Pagamento, que por sua vez herda os atributos que todos os tipos de
contabilidade (Reembolsos, Despesas e Contribuições) têm.
2.1.3 – Estrutura do Interface gráfico
O interface gráfico apresenta-se sob a forma de HTML gerado a partir de JSP,
segundo o seguinte esquema:
Gestão de Beneficiários – Relatório de Projecto Detalhado
26/32
O HTML é então gerado a partir do JSP, que por sua vez interligam com os
JavaBeans (que fazem a ligação a baixo nível com a base de dados e
componentes externos). Todos os HTML importam uma folha de estilos
(style.css). O utilizador limita-se a ver HTML gerado (ou algumas vezes nãodinâmico), não tendo acesso ao código fonte que se encontra no servidor.
Gestão de Beneficiários – Relatório de Projecto Detalhado
27/32
2.2 – Parte Dinâmica
2.1.1 – Diagrama de actividades entrando como utilizador
Este diagrama mostra os percursos possíveis de utilização do sistema entrando
como utilizador registado:
Página Inicial de Utilizador
Adicionar Beneficiário
Alterar Beneficiário
Consulta Beneficiário
Remover Beneficiário
Consulta Reembolsos
Consulta Despesas
Consulta Contribuições
Consulta Relatório Resultados
Adicionar Reembolso
Adicionar Contribuição
Podemos ver a ligação forte entre páginas, normalmente recorrendo aos botões
de navegação do “browser”. A partir de qualquer página é possível sair do
sistema (fechando o “browser”). Fazendo logout, o sistema vai para a página
principal, que não está representada neste diagrama.
Para a correspondência entre estes estados e as páginas a que se referem, ver o
ponto 1 do relatório, visto que aos estados correspondem directamente
componentes.
Gestão de Beneficiários – Relatório de Projecto Detalhado
28/32
2.1.2 – Diagrama de actividades entrando como administrador
Este diagrama mostra os percursos possíveis de utilização do sistema entrando
como administrador:
Entrada
Página Inicial
Sair
Login - Administrador
Sair
Página Inicial - Administrador
Sair
Sair
Inserir Util.
Util. Removido
Aterar Password
Password Alterada
Util. Inserido
Pág. Inserção de Utilizadores
Remover Utli.
Pág. Alteração de Password
Pág. Remoção de Utilizadores
Fechar o Browse
Entrando como administrador a partir da página inicial do sistema, é possível
aceder às funções de inserção ou remoção de utilizadores, assim como a
alteração de password. Tal como no ponto anterior, pode-se observar o ponto 1
deste relatório para uma descrição mais pormenorizada da relação entre estes
estados e os componentes que os implementam.
Gestão de Beneficiários – Relatório de Projecto Detalhado
29/32
3 – Informação sobre testes de integração
Os testes aos casos de utilização (requisitos do sistema) são efectuados do ponto
de vista global do funcionamento do sistema (ao contrário dos testes efectuados
por componentes, referidos no ponto 1.3 deste relatório.
Estes testes são efectuados através de uma tentativa de exploração dos casos
possíveis dentro de um dado requisito do sistema, tentando encontrar falhas. Os
testes apenas foram efectuados aos requisitos funcionais, visto que o objectivo
era encontrar falhas na implementação e não em factores secundários.
A lista de requisitos do sistema encontra-se em anexo a este relatório.
Estes foram os resultados dos testes efectuados:
Requisito
Resultado dos Testes
RFS1
Passou
RFS2
Passou
RFS2.1
Passou
RFS3
Passou
RFS3.1
Passou
RFS4
Passou
RFS5
Passou
RFS6
Passou
RFS7
Passou
RFS8
Passou
RFS9
Passou
Gestão de Beneficiários – Relatório de Projecto Detalhado
30/32
4 – Estado da Implementação
O estado da implementação do sistema é considerado final. De seguida
apresenta-se uma tabela com os requisitos (funcionais e não-funcionais) que o
sistema cumpre.
Requisito
Estado
RFS1
Cumpre
RFS2
Cumpre
RFS2.1
Cumpre
RFS3
Cumpre
RFS3.1
Cumpre
RFS4
Cumpre
RFS5
Cumpre
RFS6
Cumpre
RFS7
Cumpre
RFS8
Cumpre
RFS9
Cumpre
RNFS1
Cumpre
RNFS2
Utiliza plataforma não encriptada
RNFS3
Cumpre
RNFS4
Cumpre
O requisito não funcional RNFS2 não se pode considerar cumprido visto que
utiliza uma plataforma de comunicações não encriptada. (Ver ponto 1.4.2 do
relatório)
Todos os outros requisitos são cumpridos pelo sistema.
No momento da escrita deste relatório não há bugs conhecidos.
Gestão de Beneficiários – Relatório de Projecto Detalhado
31/32
ANEXO I – Requisitos do sistema revistos
Requisitos do sistema
Requisitos Funcionais
RFS1 – O sistema tem que permitir a inserção, actualização e remoção de dados
de beneficiários.
RFS2 – O sistema tem que permitir registar o recebimento das contribuições de
beneficiários.
RFS2.1 – O sistema tem que permitir uma ligação com o banco para o
recebimento das contribuições de beneficiários.
RFS3 – O sistema tem que permitir registar o pagamento de reembolsos aos
beneficiários.
RFS3.1 – O sistema tem que permitir uma ligação com o banco para o pagamento
de reembolsos aos beneficiários.
RFS4 – O sistema tem que disponibilizar uma ligação que permita à gestão de
acordos inserir despesas na contabilidade.
RFS5 – O sistema tem que permitir visualizar o registo dos pagamentos,
recebimentos e despesas para contabilização, tanto a nível de contabilização
geral, como de contabilização individual por beneficiário ou por datas.
RFS6 – O sistema tem que poder gerar e visualizar relatórios de resultados a
partir do registo dos pagamentos, recebimentos e despesas.
RFS7 – O sistema tem que estar preparado para vários utilizadores diferentes.
RFS8 – O sistema tem que permitir uma gestão de utilizadores.
RFS9 – O sistema tem que disponibilizar uma ligação ao banco que permita
receber notificações quando as transferências são efectuadas, assim como
permitir visualizar essas transferências.
Requisitos Não Funcionais
RNFS1 – O sistema deve permitir uma autenticação dos utilizadores.
RNFS2 – A comunicação entre sistemas deve utilizar uma plataforma segura.
RNFS3 – O sistema deve ter um tempo de resposta rápido.
RNFS4 – A comunicação entre sistemas deverá ter um tempo de resposta rápido.
Gestão de Beneficiários – Relatório de Projecto Detalhado
32/32
Download