Centro
de Informática – Cin
Graduação em Ciência da Computação
Relatu
Professor:
Jaelson Freire Brelaz de Castro
Alunos:
Antonio Severien (als2)
Edmilson Barbosa (ebcj)
Ronaldo Marques (rrm)
Yuri Cesar (ycssp)
Recife, 14 de Janeiro de 2008
Índice
5. Convenções, termos e abreviações
5.1 Identificação dos Requisitos
5.2 Identificação dos casos de uso
5.3 Estrutura dos casos de uso
7.1 [RF-001] Visualizar Ocorrência
7.2 [RF-002] Adicionar Ocorrência
7.3 [RF-003] Finalizar Ocorrência
7.4 [RF-004] Incluir Comentário
7.5 [RF-005] Alterar estado da ocorrência
7.6 [RF-006] Encaminhar Ocorrência
8.1.1 [NFR001] Funcionamento nos Navegadores
8.1.2 [NFR002] Teclas de Atalho
8.2.1 [NFR003] Tempo de Resposta
8.2.2 [NFR004] Máquinas Rápidas
8.3.1 [NFR005] Feedback Rápido
8.5.1 [NFR009] Realizar Treinamentos
9.1 Modelagem de Dependência Estratégica
9.2 Modelagem Estratégica da Razão
10. Modelagem de Requisitos Funcionais (Casos de Uso)
11. Modelagem dos Requisitos Não Funcionais
15.1 Apêndice A - Questionário
15.2 Apêndice B – Detalhamento dos casos de uso
15.1.5 Alterar Estado da Ocorrência
Este documento tem por finalidade descrever os requisitos que a solução Relatu deve prover para solucionar o problema identificado.
O Relatu tem como foco a gestão de falhas ocorridas num ambiente de produção e, dessa maneira, agregar valor à companhia através da melhoria de processo, o que garante sobremaneira um ganho na qualidade do produto e conseqüente aumento no faturamento da empresa.
Este projeto surge do anseio das corporações pelo aumento da eficiência no ambiente de produção e melhoria de processo, proporcionando uma maior satisfação do cliente. Falhas são um grande entrave na maioria dos processos e, quando não gerenciadas de uma maneira satisfatória, tendem a perdurar e comprometer o sucesso do projeto. Deste modo, o Relatu pretende preencher esta lacuna e assim satisfazer às necessidades coorporativas.
Em ambientes de produção, mais particularmente as software houses, é fato corriqueiro a descoberta de falhas, no caso bugs, pela equipe de teste e pelos clientes. Estes, por sua vez, devem ser gerenciados, devendo ser atribuídos detalhes como aberto, fechado, atribuído a mim, inválido, homologado. No caso de ser um bug válido, deve ser encaminhado ao responsável para reparo da falha ou, de alguma maneira, ser agendado o reparo de acordo com a metodologia adotada.
A organização à qual foram aplicados métodos de levantamento de informações para a confecção deste documento foi a Estalo Consultoria e Automação. O contato da equipe dentro da empresa é Antônio Loureiro, que pode ser contatado através do email als2@cin.ufpe.br .
A correta interpretação deste documento exige o conhecimento de algumas convenções, termos específicos e abreviações, que são descritos a seguir.
Os requisitos possuem um identificador único. A numeração inicia com o identificador [RF-001] ou [RNF-001] e prossegue sendo incrementada à medida que forem sendo adicionados novos requisitos. Convenciona-se que as referências aos requisitos são feitas através do identificador.
Convenciona-se que os casos de uso terão um identificador único, iniciando-se por “UC” e seguido por um numero, ex.: [UC-001]. O numero é incrementando à medida em que forem sendo adicionados novos casos de uso. Desta maneira, a referência aos casos de uso é feita através dessaes identificadores únicos.
Cada caso de uso terá o seguinte formato:
ID: |
|
||
Nome: |
|
||
Prioridade |
|
||
Criado por: |
|
Última atualização por: |
|
Data criação: |
|
Data de atualização: |
|
ID: |
|
Atores: |
|
Descrição: |
|
Gatilho: |
|
Pré-Condições: |
1. |
Pós-Condições: |
1. |
Fluxo Principal: |
1. |
Fluxos Alternativos: |
|
Entre os valores possíveis para prioridade de um caso de uso estão:
· Desejável: Caracteriza um caso de uso que não impede o funcionamento do sistema ou o atendimento do problema ao qual o sistema se propõe. Assim sendo, pode ser implementado em versões posteriores do sistema.
· Importante: Caracteriza um caso de uso que, sem o mesmo, o sistema ainda funciona, porém não de modo satisfatório.
· Essencial: Identifica um caso de uso indispensável ao sistema. Sem ele, o sistema não tem utiliade.
Os atores são as entidades que interagem diretamente com o sistema. Eles são: Administradores, usuários e servidor de e-mail.
Os requisitos organizacionais devem satisfazer os objetivos da organização e definir a utilidade do sistema. São eles:
· Facilitar a comunicação entre as partes envolvidas no processo;
· Aumentar a eficiência na gestão de falhas;
· Aumentar a qualidade do processo;
· Evitar a persistência de falhas no produto.
Nesta seção, descrevem-se as funcionalidades que devem ser providas pelo sistema.
Identificação: |
[RF-001] Visualizar Ocorrência |
||
Nome: |
Visualizar Ocorrência |
||
Descrição: |
Este caso de uso é responsável pela visualização das ocorrências que foram encaminhadas ao usuário. O usuário pode ainda selecionar critérios de visualização como data, status e outros.
|
||
Prioridade: |
√Essencial |
Importante |
Desejável |
Identificação: |
[RF-002] Adicionar Ocorrência |
||
Nome: |
Adicionar Ocorrência |
||
Descrição: |
Este caso de uso é responsável por cadastrar uma nova ocorrência ao sistema. O sistema deve registrar o usuário, a data e a hora em que a ocorrência foi cadastrada.
|
||
Prioridade: |
√Essencial |
Importante |
Desejável |
Identificação: |
[RF-003] Finalizar Ocorrência |
||
Nome: |
Finalizar Ocorrência |
||
Descrição: |
Este caso de uso é responsável por finalizar a ocorrência, desta forma fechando o ciclo de vida da ocorrência. |
||
Prioridade: |
√Essencial |
Importante |
Desejável |
Identificação: |
[RF-004] Incluir Comentário |
||
Nome: |
Incluir Comentário |
||
Descrição: |
Este caso de uso é responsável pela inclusão de um comentário a uma ocorrência. Os comentários podem servir para acrescentar mais informações, reportar dúvidas ou fazer algum esclarecimento. O comentário acompanha a ocorrência durante seu ciclo de vida. |
||
Prioridade: |
√Essencial |
Importante |
Desejável |
Identificação: |
[RF-005] Alterar estado da ocorrência |
||
Nome: |
Alterar estado da ocorrência |
||
Descrição: |
Este caso de uso é responsável por alterar o estado da ocorrência para inválido, aberto, finalizada, funciona para mim e em andamento. |
||
Prioridade: |
√Essencial |
Importante |
Desejável |
Identificação: |
[RF-006] Encaminhar Ocorrência |
||
Nome: |
Encaminhar Ocorrência |
||
Descrição: |
Este caso de uso é responsável por encaminhar a ocorrência para os usuários do sistema. |
||
Prioridade: |
√Essencial |
Importante |
Desejável |
Nesta seção estão descritos os requisitos não funcionais da solução Relatu.
Esta seção descreve os requisitos não-funcionais associados ao uso da aplicação.
Identificação |
[NFR001] Funcionamento nos Navegadores |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
O sistema deverá funcionar nos navegadores Internet Explorer e Firefox da mesma forma. |
||
Prioridade |
Essencial |
Importante |
√Desejável |
Identificação |
[NFR002] Teclas de Atalho |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
Deverá ser possível a utilização de teclas de atalho para manipulação do sistema. |
||
Prioridade |
Essencial |
√Importante |
Desejável |
Esta seção descreve os requisitos não-funcionais associados à eficiência, uso de recursos e tempo de resposta da aplicação.
Identificação |
[NFR003] Tempo de Resposta |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
O sistema não deverá demorar mais de 5 segundos para processar informações, seja ela qual for. |
||
Prioridade |
Essencial |
√Importante |
Desejável |
Identificação |
[NFR004] Máquinas Rápidas |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
As máquinas utilizadas devem ser as mais modernas do mercado. |
||
Prioridade |
√Essencial |
Importante |
Desejável |
Esta seção descreve os requisitos não-funcionais associados à resolução do problema de forma correta e em tempo hábil.
Identificação |
[NFR005] Feedback Rápido |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
Deve ser checado o email constantemente para verificar novas ocorrências de bugs, podendo solucionar o problema de forma mais rápida e dando um retorno imediato ao cliente. |
||
Prioridade |
Essencial |
√Importante |
Desejável |
Esta seção descreve os requisitos não funcionais relacionados à preservação dos dados que o sistema possui.
Este sub-tópico descreve os requisitos não-funcionais associados ao período de funcionamento do sistema.
Identificação |
[NFR006] Sistema Sempre Disponível |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
O sistema deverá estar sempre disponível para o cliente. |
||
Prioridade |
√Essencial |
Importante |
Desejável |
Este sub-tópico descreve os requisitos não-funcionais associados aos dados guardados pelo sistema.
Identificação |
[NFR007] Sistema Robusto |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
O acesso aos dados deve ser de forma segura e com níveis de acesso. |
||
Prioridade |
√Essencial |
Importante |
Desejável |
Identificação |
[NFR008] Verificar Dados |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
Os dados devem ser verificados antes de serem inseridos no repositório do sistema. |
||
Prioridade |
Essencial |
√Importante |
Desejável |
Esta seção descreve os requisitos não-funcionais associados ao desempenho de funções de forma adequada.
Identificação |
[NFR009] Realizar Treinamentos |
||
Casos de Uso Relacionados |
Todos. |
||
Descrição |
Deve ser feito um treinamento prévio com os utilizadores do sistema para que eles possam interagir de forma adequada com o mesmo. |
||
Prioridade |
Essencial |
Importante |
√Desejável |
Modelagem organizacional baseada na notação i* (i estrela).
Figura 1. Modelagem de Dependência Estratégica
Figura 2. Modelagem Estratégica da Razão
Nesta seção todos os requisitos descritos anteriormente na seção de requisitos funcionais são modelados em um diagrama de casos de uso. O detalhamento de cada caso de uso se encontra no apêndice B.
Figura 3. Diagrama de Casos de Uso
Está seção mostra um modelo dos requisitos não funcionais na notação do NFR Framework.
Figura 4. Modelagem de requisitos não funcionais.
Neste documento foi descrito os requisitos de software relativos ao desenvolvimento do sistema Relatu cujo objetivo é facilitar o gerenciamento de erros num ambiente de produção desde a descoberta até a solução dos problemas encontrados, além de agilizar o processo.
Com o Relatu é possivel delegar tarefas, incluir comentários às tarefas e acompanhar todo o ciclo de vida dos problemas. A aplicação consiste num sistema web onde os usuários têm acesso às funcionalidades citadas neste documento.
Portanto, foram levantados os seus requisitos funcionais, não-funcionais e organizacionais da aplicação a ser desenvolvida. Além disso, foram elaboradas a modelagem organizacional, modelagem dos requisitos funcionais e modelagem dos requisitos não funcionais.
[Disciplina] Disciplina de Especificação de Requisitos e Validação de Sistemas. Disponível em: <http://www.cin.ufpe.br>
[i*] i* - An Agent-oriented Modelling Framework. Disponível em: <http://www.cs.toronto.edu/km/istar/>
[Sommerville] G. Kotonya and I. Sommerville, Requirements Engineering : Processes and Techniques , John Wiley & Sons, 1998.
[Wikipédia] Wikipédia. A enciclopédia livre. Disponível em: <http://www.wikipedia.org>
Descrição de papéis e contribuições de cada membro da equipe.
Nome |
Esforço da Equipe (%) |
Assinatura |
Antonio Severien (als2) |
25% |
|
Edmilson Barbosa (ebcj) |
25% |
|
Ronaldo Marques (rrm) |
25% |
|
Yuri Cesar (ycssp) |
25% |
|
Para a coleta de informações, um questionário com as seguintes perguntas foi aplicado aos futuros usuários do sistema:
ID: |
[UC-001] Visualizar Ocorrência |
Atores: |
Usuário |
Descrição: |
Este caso de uso é responsável pela visualização das ocorrências que foram encaminhadas ao usuário. |
Gatilho: |
Usuário clica na ocorrência desejada |
Pré-Condições: |
2. O usuário deve ter efetuado o login |
Pós-Condições: |
2. Nenhuma |
Fluxo Principal: |
O sistema exibe uma lista de ocorrências relacionados ao usuário logado, ou seja, as ocorrências encaminhadas a ele, e também exibe as opções de Visualizar, Encaminhar, Incluir Comentário e Alterar Estado da Ocorrência. 2. O usuário seleciona o registro desejado. 3. O usuário seleciona a opção de visualizar. 4. O sistema exibe as informações do registro escolhido. |
Fluxos Alternativos: |
[FA001] [FA002] [FA003] |
Prioridade: |
Essencial |
ID: |
[UC-002] Adicionar Ocorrência |
Atores: |
Usuário |
Descrição: |
Este caso de uso é responsável por cadastrar uma nova ocorrência ao sistema. |
Gatilho: |
Usuário clica no botão adicionar ocorrência. |
Pré-Condições: |
1. O usuário deve ter sido autenticado no sistema para a sessão corrente. |
Pós-Condições: |
1. A ocorrência é adicionada ao conjunto de ocorrências mantidas pelo sistema. |
Fluxo Principal: |
1. O usuário informa o assunto e a descrição da ocorrência. 2. O sistema persiste a ocorrência e a data e hora de seu cadastro. |
Fluxos Alternativos: |
[FA001] |
Prioridade: |
Essencial |
ID: |
[UC-003] Finalizar Ocorrência |
Atores: |
Administrador |
Descrição: |
Este caso de uso é responsável por finalizar a ocorrência, desta forma fechando o ciclo de vida da ocorrência. |
Gatilho: |
Administrador clica no botão finalizar ocorrência. |
Pré-Condições: |
1. O usuário deve ter efetuado o login. |
Pós-Condições: |
1. A ocorrência é excluida do conjunto de ocorrências mantidas pelo sistema. |
Fluxo Principal: |
1. Includes UC001 – Visualizar Ocorrência. 2. O administrador visualiza a ocorrência selecionada 3. O administrador seleciona finalizar ocorrência. 4. O sistema finaliza a ocorrência. |
Fluxos Alternativos: |
Não se aplica |
Prioridade: |
Essencial |
ID: |
[UC-004] Incluir Comentário |
Atores: |
Usuário |
Descrição: |
Este caso de uso é responsável pela inclusão de um comentário a uma ocorrência. Os comentários podem servir para acrescentar mais informações, reportar dúvidas ou fazer algum esclarecimento. O comentário acompanha a ocorrência até sua finalização. |
Gatilho: |
Administrador clica no botão incluir comentário. |
Pré-Condições: |
1. Nenhuma. |
Pós-Condições: |
1. O comentário é adicionado ao conjunto de comentários da ocorrência. |
Fluxo Principal: |
1. O usuário insere os comentários relativos à ocorrência. 2. O sistema registra os comentários. |
Fluxos Alternativos: |
[FA001] |
Prioridade: |
Essencial |
ID: |
[UC-005] Alterar Estado da Ocorrência |
Atores: |
Usuário |
Descrição: |
Este caso de uso é responsável por alterar o estado da ocorrência para pendente, em andamento ou finalizada. |
Gatilho: |
Administrador clica no botão alterar ocorrência. |
Pré-Condições: |
1. O usuário deve ter efetuado o login. |
Pós-Condições: |
1. O sistema atualiza a ocorrência com os novos dados. |
Fluxo Principal: |
1. O sistema exibe um filtro para consultar as ocorrências. 2. O usuário informa os dados necessário para a operação de consulta. 3. O sistema retorna os resultados de acordo com os campos de dados preenchidos, caso nenhum seja preenchido o sistema retorna todos os registros de ocorrências relacionados a ele. 4. O usuário seleciona o registro que deseja alterar. 5. O usuário seleciona o novo estado da ocorrência. |
Fluxos Alternativos: |
Não se aplica |
Prioridade: |
Essencial |
ID: |
[UC-006] Encaminhar Ocorrência |
Atores: |
Servidor de Email |
Descrição: |
Este caso de uso é responsável por encaminhar a ocorrência para os usuários do sistema. |
Gatilho: |
Usuário clica no botão encaminhar ocorrência. |
Pré-Condições: |
1. Nenhuma. |
Pós-Condições: |
1. O estado da ocorrência é alterado. |
Fluxo Principal: |
1. O usuário informa o email do usuário ao qual a ocorrência será encaminhada. 2. O sistema autentica o email informado pelo usuário no passo 1 (Verifica se há outro usuário cadastrado com o email). 3. O sistema altera o estado da ocorrência, adicionando a informação do encaminhamento. 4. O sistema envia um email ao endereço informado no passo 1, notificando ao dono do endereço que este tem uma nova ocorrência. |
Fluxos Alternativos: |
[FA001] |
Prioridade: |
Essencial |
ID: |
[UC-007] Verificar Ocorrência |
Atores: |
Temporizador, Servidor de Email |
Descrição: |
Este caso de uso é responsável por verificar se existem novas ocorrências cadastradas na base de dados. |
Gatilho: |
Usuário clica no botão encaminhar ocorrência. |
Pré-Condições: |
1. Nenhuma. |
Pós-Condições: |
1. Nenhuma. |
Fluxo Principal: |
1. O Temporizador verifica se há novas ocorrências no banco. 2. O Sistema se comunica com o Servidor de Email. |
Fluxos Alternativos: |
[FA001] |
Prioridade: |
Essencial |