domingo, 6 de dezembro de 2009

Minimizando Problemas com Requisitos – Parte 3


Nos posts anterior discutimos a respeito dos problemas comuns existentes com os requisitos de software e do conceito de gerenciamento de requisitos, fundamental para se aplicar as técnicas.

Hoje, gostaria de lhes apresentarei o seguimento dos conceitos de gerenciamento de requisitos, desta vez abordando especificamente as técnicas de gerenciamento mais usadas.

É fundamental a compreensão sobre o conceito de requisitos e de gerenciamento de requisitos para conseguir interpretar as técnicas que serão descritas abaixo.

Técnicas para Gerenciamento de Requisitos:

A rastreabilidade de requisitos trata-se de uma atividade manual e constantemente obrigatória para que se consiga garantir a organização dos requisitos.  Desta forma, é possível controlar as atividades de desenvolvimento e manutenção do software mantendo sempre a relação mais atual entre os requisitos. Se a rastreabilidade não for aplicada constantemente, a relação entre os requisitos torna-se obsoleta e inútil e dificilmente se conseguirá reconstruir ou atualizar estas relações. Em razão disso, é preciso adotar e aplicar uma técnica que permita realizar esta organização de requisitos. A seguir serão apresentadas algumas técnicas comuns de rastrabilidade de requisitos (WIEGERS, 2003). 

Matriz de Rastreabilidade de Requisitos e Elementos do Sistema:

Um dos métodos mais comuns de representação da relação entre os requisitos e os demais elementos do sistema de software é a matriz de rastreabilidade.

A FIGURA 1 ilustra uma modelo de matriz de rastreabilidade, contendo um exemplo de requisitos funcionais aprovados. A tabela apresenta a relação dos requisitos funcionais com seus respectivos Casos de Uso, referências de desenvolvimento, módulos que contemplam sua codificação e os respectivos elementos de testes. As referências de desenvolvimento podem incluir diagramas, modelagens, classes de negócio, dentre outros objetos ou artefatos pertinentes e relacionados ao determinado requisito funcional (WIEGERS, 2003).






FIGURA 1 – Matriz de Rastreabilidade de Requisitos (WIEGERS, 2003)

A rastreabilidade define relações um-para-um, um-para-muitos ou muitos-para-muitos entre os requisitos e seus elementos de software. O formato apresentado na TABELA 2.1 comporta esta relação, pois é possível definir uma lista de itens para cada célula. Considerando os atributos preenchidos na FIGURA 1 temos as relações (WIEGERS, 2003):  

-Um-para-um: uma referência de desenvolvimento é implementada em um módulo codificado;

-Um-para-muitos: um requisito funcional está relacionado a múltiplos casos de teste;

-Muitos-para-muitos: um caso de uso pode possuir diversos requisitos funcionais e um requisito funcional pode estar relacionado a diversos casos de uso. Da mesma forma, as referências de desenvolvimento podem estar relacionados a requisitos distintos e cada requisito pode contemplar diversas referências.

Outra maneira de representar a rastreabilidade das informações é através de um conjunto de matrizes que definem as ligações em pares entre os elementos do sistema, conforme FIGURA 2. É possível usar matrizes para representar diversas relações possíveis entre pares de requisitos, tais como “especificado / é especificado pelo”, “depende”, “é origem de” e “limitações / são limitadas por” (WIEGERS, 2003).





FIGURA 2 – Rastreabilidade entre Casos de Uso e Requisitos


A FIGURA 2 ilustra esta rastreabilidade bidirecional. A maioria das células desta matriz ficam em branco. Na intersecção entre as células de dois componentes está indicada se é uma relação do tipo “relacionado a”, “relacionado do” ou qualquer outro tipo de relação. Além disso, são utilizadas setas que indicam que determinado requisito funcional á relacionado a partir de um caso de uso. Este tipo de representação é mais propícia no uso de ferramentas automatizadas (WIEGERS, 2003). Na quarta e última parte, pretendo lhes apresentar ferramentas de mercado que auxiliam na realização dos trabalhos de gerenciamento de requisitos. 

Cordialmente, 

Marcelo Schumacher 
http://isosoftware.blogspot.com/  

Bibliografia:

WIEGERS, Karl E. Software Requirements. 2nd ed. Redmond: Microsoft Press, 2003.



Um comentário:

  1. Boa noite,

    Bom começo com comentários a respeito da Matriz de Rastreabilidade de Requisitos
    onde visualizamos o "namespace" ou pacote de contem biblioteca de dados por exemplo
    arquivos dll's, a classe e seus métodos; suas ações e comportamentos.
    Depois temos uma definição de cardinalidades.

    Contudo é apresentado uma matriz de incidências ou algo bem próximo a isso.

    Certamente isso torna o trabalho de desenvolvimento mais claro uma vez que as definições
    foram bem especificadas diminuindo a possibilidade de erros de programação.

    Nunca usei estas técnicas a não ser em aulas de Estruturas de Dados onde tinhamos os grafos
    com seus vértices e adjacências onde fazíamos uma matriz para criarmos os nodos e suas relações.

    Fico grato por mais uma técnica que apreendida.

    Att.;

    Thiago Corrêa

    ResponderExcluir