Gerenciamento de Requisitos
O gerenciamento de requisitos é o processo de controlar as mudanças nos requisitos durante o processo de engenharia de requisitos e desenvolvimento. Torna-se necessário manter o acompanhamento dos requisitos individuais e manter as ligações entre os requisitos dependentes de modo que possa avaliar os impactos das mudanças de requisitos.
Considerando que os requisitos são inevitavelmente incompletos e inconsistentes, novos requisitos surgem durante o processo de desenvolvimento e os diferentes pontos de vista que esses requisitos possuem frequentemente são contraditórios.
Existem várias razões pelas quais as mudanças são inevitáveis dentre as quais destaca-se:
- A prioridade dos requisitos de diferentes pontos de vista se modifica;
- As pessoas que pagam pelo sistema podem especificar os requisitos de maneira conflitantes com os requisitos das pessoas que irão utilizar o sistema;
- A empresa e o ambiente técnico do sistema se modificam durante o seu desenvolvimento.
Evolução dos requisitos
Do ponto de vista da evolução, os requisitos dividem-se em duas classes:
- Requisitos permanentes
São requisitos estáveis, derivados da atividade principal da organização. Ex. Em um hospital sempre haverá requisitos relativos aos pacientes, aos médicos, às enfermeiras a aos tratamentos.
- Requisitos voláteis
São requisitos que se modificam durante o desenvolvimento ou quando o sistema está em uso. Requisitos resultantes de políticas governamentais. Ex: planos de assistência médica.
Os requisitos voláteis podem ser classificados em:
a) Requisitos mutáveis - Requisitos que se modificam por causa do ambiente do sistema que está operando.
b) Requisitos emergentes - Requisitos que surgem à medida que a compreensão do sistema pelo cliente progride durante o desenvolvimento do sistema.
c) Requisitos consequentes - Requisitos que resultam da introdução do sistema de computador, onde pode criar novas formas de trabalho que geram novos requisitos de sistema.
d) Requisitos de compatibilidade - Requisitos que dependem de outros sistemas ou processos de negócio específicos dentro da organização.
Gerenciamento de mudanças de requisitos
A figura abaixo mostra o processo de gerenciamento de requisitos, o qual deve ser aplicado a todas as mudanças propostas aos requisitos. A vantagem de usar um método formal para gerenciar mudanças está no fato de que as propostas são tratadas consistentemente e a documentação dos requisitos é feita de maneira controlada.
Figura 1– Gerenciamento de Mudança de Requisitos
Fonte:Sommerville (2011, p. 79)
Existem três estágios no processo de gerenciamento de mudanças que são:
- Análise do problema e especificação da mudança.
Discute-se os problemas com os requisitos e propõe-se mudanças.
- Análise e custo da mudança.
Avalia-se os efeitos da mudança em outros requisitos do sistema.
- Implementação das mudanças.
O documento de requisitos e outros documentos são alterados de forma a refletir as mudanças.
Técnicas de Requisitos
A seguir apresentaremos algumas técnicas para Elicitação ( levantamento) e análise de requisitos:
- Levantamento baseado em pontos de vista;
- Entrevistas;
- Cenários de utilização do sistema;
- Etnografia (análise do ambiente de trabalho dos usuários).
1. Levantamento baseado em pontos de vista
As abordagens baseadas em pontos de vista tem como ponto forte o reconhecimento de várias perspectivas, fornecendo um framework para descobrir conflitos nos requisitos propostos por diferentes stakeholder. Lembra o que era Stakeholder, certo?
Sistemas médios e grandes possuem diferentes tipos de usuários finais:
- Pessoas envolvidas com o sistema possuem diferentes interesses e pontos de vista a respeito do sistema;
- A análise desta multi-perspectiva é importante para descobrir e esclarecer os requisitos conflitantes, propostos por diferentes usuários.
2. Entrevistas
Fazem parte da maioria dos processos de engenharia de requisitos. Nestas entrevistas a equipe de engenheiros formula questões para os stakeholders sobre o sistema a ser desenvolvido.
As entrevistas podem ser abertas, em que o stakeholder responde um conjunto de perguntas predefinidas oufechadas, nas quais não há um roteiro definido, onde o engenheiro explora vários assuntos com os stakeholders no sistema, desenvolvendo assim uma maior compreensão das necessidades dos mesmos.
As entrevistas são úteis para obter um entendimento geral sobre o que os stakeholders fazem, como eles podem interagir com o sistema e as dificuldades que enfrentam com o sistema atual, porém não são eficientes para elicitação de conhecimento sobre os requisitos e suas restrições.
3. Cenários de utilização do sistema
Geralmente, as pessoas consideram mais simples relatar exemplos da vida real que abstrair descrições, desta forma os cenários podem ser descritos e criticados por eles como uma forma de interação com o sistema de software.
Os cenários são úteis para adicionar detalhes a um esboço da descrição de requisitos, onde cada cenário abrange uma ou mais interações possíveis. Assim sendo, diversos cenários foram desenvolvidos, cada um dos quais fornecendo diferentes tipos de informações sobre o sistema em diversos níveis de detalhamento.
Os cenários são úteis para adicionar detalhes a um esboço da descrição de requisitos, onde cada cenário abrange uma ou mais interações possíveis. Assim sendo, diversos cenários foram desenvolvidos, cada um dos quais fornecendo diferentes tipos de informações sobre o sistema em diversos níveis de detalhamento.
Descrições de cenários incluem:
- Estado do sistema no início do cenário;
- Fluxo normal de eventos no cenário;
- O que pode sair errado e como lidar com isso;
- Outras atividades concorrentes;
- Estado do sistema no final do cenário.
4. Etnografia (análise do ambiente de trabalho dos usuários)
É uma técnica de observação que pode ser usada na compreensão dos requisitos sociais e organizacionais, na qual um analista se insere no ambiente de trabalho onde o sistema será usado, observa o trabalho do dia-a-dia e anota as tarefas reais nas quais os participantes estão envolvidos.
Denota-se o valor desta técnica na ajuda prestada aos analistas para descobrir os requisitos implícitos de sistemas que refletem os processos reais, e não os formais no qual as pessoas estão envolvidas.
A etnografia é particularmente eficaz para descobrir:
- Requisitos derivados da maneira como as pessoas realmente trabalham ao invés da maneira pela qual as definições de processo dizem o que deveria fazer.
- Requisitos derivados da cooperação e do conhecimento das atividades de outras pessoas.
A etnografia pode e dever ser combinada com a prototipação, pois informa o desenvolvimento do protótipo de tal forma que poucos ciclos de refinamento sejam necessários.
Uma vantagem da etnografia é que ela pode revelar detalhes importantes do processo, que frequentemente são ignorados por outras técnicas, porém não é apropriada para obter os requisitos organizacionais e de domínio. Assim sendo, a etnografia não é uma abordagem completa para a elicitação de requisitos, então devendo ser usada como complemento de outra abordagens como, por exemplo, a de cenários.
Os membros da equipe técnica trabalham com o cliente e os usuários para descobrir mais informações sobre o domínio da aplicação, serviços do novo sistema, desempenho e as restrições operacionais.
Nenhum comentário:
Postar um comentário