Os principais requerimentos do sistema foram:
- Fazer cadastro de pessoas
- O sistema deveria fornecer uma interface de cadastro de pessoas.
Existe no sistema pessoas que têm o papel Gerenciador De Grupos autorizadas a: adicionar, remover e alterar dados das pessoas.
Além disso, qualquer pessoa poderia obter o seu cadastro via Web, sendo que neste caso, ela entraria no sistema com o papel Solicitante.
- Fazer cadastro de solicitações
- O sistema deveria fornecer uma interface de cadstro de solicitações.
Todo usuário cadastrado no sistema que possuir os papéis adequados, pode cadastrar uma solicitação.
- Gerenciar o fluxo pelo qual uma solicitação passa dentro do NAEG
- O sistema deveria permitir ao usuário, executar açôes que mudassem os estados das solicitações e, garantir que este fluxo
1
fosse uma execução do autômato( 2) definido.
Por exemplo: uma solicitação muda do estado Esperando Aceitação para Aceita quando um usuário realiza a ação Aceitar.
- Autenticar usuários via login
- Para ter acesso ao sistema o usuário precisa efetuar login, que é feito através de uma página web.
- Autorização de usuários para a realização de ações
- Para realizar uma determinada ação é preciso possuir permissão dada pelo nível de acesso.
Uma vez que a solicitação é cadastrada, ela passa por diversos estágios. Durante cada estágio, algumas ações podem ser executadas sobre a mesma. A fim de realizar estas ações, as pessoas precisam possuir determinados papéis. Por exemplo: para se definir a equipe que desenvolverá o projeto, é preciso possuir o papel Escalador de Equipe e, a solicitação precisa estar no estado2 Aceita.
A partir disso, observamos que a permissão para execução de ações sobre uma solicitação e/ou projeto depende tanto do seu estado quanto dos papéis do usuário.
- Permitir filtros
- Deveria existir alguma maneira do usuário filtrar as listagens por diversos campos, permitindo buscas exatas ou aproximadas.
- Emitir notificações via e-mail
- Notificações deveriam ser enviadas para determinadas pessoas quando alguns eventos ocoressem.
Por exemplo: quando uma pessoa é convocada a participar do desenvolvimento de uma solicitação, quando o pedido da solicitação é alterado, etc.
- Restringir o acesso às solicitações
- O NAEG possui alguns dados sigilosos, que não podem ser vistos e, muito menos alterados por qualquer um.
Assim, o acesso às solicitações deveria ser, de alguma maneira, restringido a certas pessoas.
Além disso, deveria existir um papel que tivesse permissão para configurar(dar ou retirar) os acessos.
Algumas nomenclaturas importantes:
- Solicitação
- Todo pedido que entra no NAEG é considerado uma solicitação.
Por exemplo: o professor Adilson Simonis solicita ao núcleo que uma certa pesquisa seja realizada.
- Projeto
- A partir do momento que a solicitação é completamente desenvolvida e, o resultado se torna de alguma
forma disponível ao solicitante, a mesma torna-se um projeto.
- ... fluxo1
- Um fluxo, nada mas é que um passeio pelo grafo do autômato partindo-se do estado inicial.
O seguinte passeio: Esperando Aceitação, Rejeitada e Não existe mais é um exemplo de uma execução.
- ... estado2
- Cada estado do autômato 2 possui um certo conjunto de transições. Por exemplo: no estado Esperando Aceitação existem as seguintes transições: Aceitar, Rejeitar e Analisar.
Fabio Pisaruk
2004-12-07