GR - Gerência de Requisitos

O Processo de Definição dos Requisitos auxilia o entendimento do que precisa ser realizado ou evoluir em um determinado sistema ou componente, bem como auxilia na gerência dos requisitos.

O Processo de Definição dos Requisitos compreende as seguintes atividades:

Identificação dos Requisitos : são levantados os requisitos através da interação com pessoas, ou derivando-os a partir dos requisitos de sistemas mais abrangentes.

Identificação das Restrições : são avaliados os problemas potenciais dos requisitos (ex. viabilidade, ambigüidade e inconsistência), classificados (por prioridade, por ex.) e avaliados quanto à viabilidade e risco.

Representação dos Requisitos : os resultados da identificação dos requisitos são retratados, entre outros, através de texto, diagramas, modelos ou regras de prototipagem.

Comunicação de Requisitos : os resultados da definição dos requisitos são apresentados aos envolvidos para revisão e aprovação.

Preparação para Validação dos Requisitos: são estabelecidos critérios de aceitação e técnicas para garantir que o software, quando produzido, satisfaça os requisitos do cliente e do desenvolvedor.

Gerenciar o Processo de Definição dos Requisitos: durante todo o ciclo de vida do projeto, até a implantação, as mudanças de requisitos precisam ser avaliadas quanto ao custo e ao impacto no cronograma.

A Gerência de Requisitos controla a evolução dos requisitos de um sistema, seja por constatação de novas necessidades, seja por constatação de deficiências nos requisitos registrados até um momento.

Um sistema, deve ser particionado em uma hierarquia de elementos. Cada requisito do sistema deve ser alocado a estes elementos (por exemplo subsistemas, programas). Chama-se esta tarefa de alocação de requisitos, e é fundamental para realizar o acompanhamento e rastreabilidade dos requisitos.

Desta forma, os requisitos dos usuários e clientes formam os requisitos de sistemas e estes são alocados aos componentes do sistema (requisitos de sistema alocados).

Requisitos de Sistema - descrevem o ambiente e a operação do sistema a ser construído.

Requisitos do Sistema alocados para o Software (Requisitos Alocados) - são um subconjunto dos Requisitos de Sistema e serão implementados nos componentes de software do sistema. São a primeira entrada para elaborar o projeto de software.

Requisitos de Software - condição ou capacitação que deve ser contemplada pelo software, necessitada pelo usuário para resolver um problema ou alcançar um objetivo.

Durante a Análise de Requisitos, os requisitos alocados são elaborados e refinados, resultando no documento Especificação de Requisitos de Software. 

O grupo que fará o levantamento dos Requisitos, terá a responsabilidade de associar os requisitos ao projeto do software.

Os requisitos alocados incluem:

Requisitos Técnicos - restrições de desing, desempenho, interface, linguagens de programação, funções de integração, etc.

Requisitos não Técnicos - prazo de entrega, produtos a serem entregues e marcos de acompanhamento de projeto, etc (acordos, condições contratuais).

Critérios de aceitação - verifica se os requisitos estão sendo satisfeitos

 

Metas 

Documentar e controlar os requisitos alocados para estabelecer uma baseline* para o uso gerencial e da engenharia de software. 

Manter planos, artefatos e atividades de software consistentes com os requisitos alocados.

* Baseline - conjunto de artefatos aceitos e controlados que serão utilizados em atividades posteriores. É um indicador de progresso no desenvolvimento de trabalhos.

 

Compromissos

1. Seguir uma política organizacional de GR. Tal política especifica que: 

- os requisitos alocados são documentados

- os requisitos alocados são revisados pelo gerente de software 

- os planos de software, artefatos e atividades são alterados para estarem consistentes com as alterações nos requisitos alocados

 

Habilitações

1. Ter responsabilidades estabelecidas para as atividades de GR

2. Ter os requisitos técnicos, não técnicos e critérios de aceitação documentados

3. Ter recursos e fundos disponíveis para GR

4. Ter membros do grupo de engenharia de software e outros grupos relacionados a software treinados em GR.

 

Atividades

1. Revisar requisitos alocados antes de incorporá-los ao projeto de software

- Identificar requisitos incompletos ou ausentes

- Determinar se os requisitos alocados são possíveis e apropriados para serem implementados em software; se estão clara e apropriadamente declarados; se estão consistentes uns com os outros e se são testáveis

- Revisar os requisitos que têm problemas potenciais com o grupo responsável pela análise e alocação de requisitos de sistema, realizando as alterações necessárias.

- Negociar os compromissos resultantes dos requisitos alocados com os grupos envolvidos e os gerentes de software.

2. Utilizar os requisitos alocados como base para o desenvolvimento do software 

3. Revisar alterações nos requisitos alocados e incorporá-las ao projeto de software

- O impacto nos compromissos existentes é avaliado e mudanças são negociadas quando apropriado.

- As alterações que precisam ser feitas nos planos de software, artefatos e atividades resultantes das alterações dos requisitos alocados são: identificadas, avaliadas, avaliadas sob o ponto de vista de risco; documentadas, planejadas, comunicadas aos grupos e indivíduos envolvidos e acompanhadas até a finalização.

 

Medição e Análise

1. Determinar o estado das atividades de GR

Exemplos: 

- o estado de cada um dos requisitos alocados;

- as atividades de alteração para cada um dos requisitos alocados

- o número acumulado de alterações propostas, abertas, aprovadas e incorporadas à baseline de sistema.

 

Verificação da Implementação

1. Revisar atividades de GR - Gerência sênior

2. Revisar atividades de GR - Gerente de projeto

3. Revisar e/ou auditar as atividades e artefatos de GR - Grupo de GQS.

 

Ferramentas

- Ferramentas para o registro e a análise de requisitos

- Planilhas eletrônicas 

- Ferramentas para a gerência de configuração

- Ferramentas para a rastreabilidade de requisitos

- Ferramentas para o gerenciamento de textos