domingo, 13 de julho de 2014

Leia um pouco sobre Gerenciamento de Requisitos!

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: 
  1. 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.
  1. 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.  
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