Back-End

25 jul, 2007

OOA: Requisitos

Publicidade

Olá pessoal. Hoje iremos falar de Requisitos. Dentro da OOA, podemos classificá-lo como o alicerce de um projeto. Um documento de Requisitos bem elaborado irá garantir uma análise correta, e conseqüentemente uma redução em problemas que poderão ocorrer.

Em poucas palavras, podemos definir os Requisitos como sendo a maneira de estabelecer e manter um entendimento entre todos os envolvidos no projeto. Em um contexto mais técnico, os objetivos dos Requisitos são:

  • Oferecer aos desenvolvedores uma melhor compreensão do sistema, suas funcionalidades, restrições, comunicações e etc.
  • Definir as fronteiras dos sistemas
  • Definir uma base para definir tecnicamente as iterações
  • Definir uma interface de usuário para o sistema, focando nas necessidades e metas dos usuários.

Tipos de requisitos

Provavelmente muitos de vocês leitores, já ouviu ou conhece dois tipos de requisitos, os funcionais e os não funcionais, esses dois tipos nada mais são que uma maneira de classificá-los. Entretanto, devido ao tipo de sistema e à complexidade dos Requisitos esse tipo de classificação não conseguirá garantir que os objetivos de se fazer os Requisitos sejam alcançados. Uma saída é categorizá-los baseando-se no modelo FURPS, nesse modelo podemos dividir os requisitos em algumas subcategorias dentro da já conhecida Requisitos Não Funcionais.

Subcategorias dos Requisitos não Funcionais:
  • Usabilidade: que pode conter os fatores humanos, estética, consistência na interface, documentação, materiais para treinamento.
  • Confiabilidade: que pode conter a freqência e a gravidade de falhas, possibilidade de recuperação, possibilidade de previsão, exatidão, tempo médio entre falhas.
  • Desempenho: que pode especificar parâmetros de uma determinada ação para velocidade, eficiência, disponibilidade, exatidão, taxa de transferência, tempo de resposta, tempo de recuperação, uso de recurso.
  • Suportabilidade: que pode conter possibilidade de teste, extensibilidade, adaptabilidade, manutenibilidade, compatibilidade, possibilidade de configuração, possibilidade de serviço, possibilidade de instalação, possibilidade de instalação, possibilidade de localização (regionalização).
  • Restrições de Designer: para especificar ou restringir o designer do sistema
  • Requisitos de Implementação: especifica ou restringe o código ou a construção de um sistema.
  • Requisitos de Interface: para especificar iterações externas, restrições de formato.
  • Requisitos Físicos: para especificar características físicas, como: material, forma, tamanho, peso.

Gerenciamento de Requisitos

O Gerenciamento de Requisitos é muito importante para o desenvolvimento de um projeto de Sistemas de Software, não irei abordar esse tema com uma visão de gestão de projeto, mas sim com uma visão focada na OOA. O Gerenciamento de Requisitos é um modelo usado para documentar e organizar os requisitos variáveis de um sistema. Dentro do Gerenciamento de Requisitos, devemos realizar o Gerenciamento de Mudanças de Requisitos, mudanças sempre acontecem, tanto por mudanças nos problemas a serem resolvidos como em mudanças na maneira da equipe entender o problema. Cada mudança tem uma conseqência, conforme a etapa em que anda o projeto essa conseqência pode ser muito problemática. Uma receita simples para fazer esse gerenciamento é criar uma baseline dos requisitos e manter um histórico de mudanças.

Semana que vem, irei publicar um exemplo para o artigo de hoje. Me desculpem não colocar hoje, mas essa semana foi muito corrida para mim, e para não deixar esfriar o assunto OOA, decidi colocar apenas a parte teórica desse assunto.

Fiquem a vontade para mandar perguntas, sugestões e críticas. Agradeço a todos que me enviaram e-mail, e peço desculpas para quem eu não consegui responder, mas que não se preocupem que irei responder o quanto antes. Mesmo começando a escrever essa série de artigos, pude perceber um grande interesse de vocês profissionais nessa arte que é fazer a OOA, sempre com a preocupação de melhorar o desenvolvimento de sistemas.

Abraços, até semana que vem.