Por que eu devo ler este artigo:Um dos grandes problemas relacionados ao fracasso de projetos de software está relacionado com requisitos. Na grande maioria dos casos estes são incompletos, inconsistentes ou não são claros o suficiente para se obter o entendimento da necessidade do cliente.

Com base nisso, este artigo tem por objetivo apresentar a importância da rastreabilidade de requisitos de software por meio de uma abrangente revisão teórica e também, por meio de um caso prático aplicado.
Autores: Sérgio Barriviera Miguel e Vanessa Miguel

Nestes últimos anos, a fim de garantir sua competitividade no mercado de trabalho, muitas corporações têm investido em seus processos de negócio e em seus produtos de software, gerando oportunidades na área da tecnologia.

Os principais motivadores de tais esforços certamente são prazo, preço e qualidade. Esta, por sua vez, não destacada no momento da contratação de um serviço de desenvolvimento de software, mas principalmente na entrega do projeto, sendo considerada como imprescindível para que o produto possa ser utilizado por seus usuários.

Nesse cenário, ser um provedor de soluções eficiente, reconhecido por um mercado em constante transformação, não é uma tarefa fácil, somando-se ainda ao fato que os sistemas de software, em muitos casos, sofrem mudanças antes mesmo de começarem a serem modelados.

Assim, a adoção e a utilização de procedimentos com ferramentas de trabalho adequadas podem complementar e fortalecer a base estratégica de uma organização provedora de soluções de software.

A adequação da seleção destes meios depende dos motivadores do investimento nessa base estratégica e dos requisitos do projeto, resultando em um grande impacto no software e auxiliando na customização e qualidade no processo de desenvolvimento.

Para que tudo isso faça sentido, consideramos que os seguintes fatores são essenciais para o sucesso no projeto de desenvolvimento de software:

· Trabalhar de forma harmônica com o aumento do tamanho e da complexidade dos sistemas de software: significa que é necessário ter um controle total de seus requisitos e demais artefatos, além de documentos elaborados a partir do mesmo, como: casos de uso, casos de teste e componentes (entendidos nesse caso como os códigos de um sistema);

· Reduzir o tempo, o custo de desenvolvimento e a manutenção de sistemas de software: os quais são elevados principalmente em virtude do retrabalho, aonde na grande maioria dos casos pode significar mais que 60% do tempo de projeto, sendo então essencial garantir que os itens produzidos ao longo de uma fase do projeto (saídas) estejam aderentes e consistentes para serem enviados para a próxima fase (entradas);

· Ser eficaz e assertivo na identificação dos requisitos, bem como, em sua respectiva gestão: talvez seja este um dos mais complexos dos fatores mencionados, pois se faz necessário conhecer a essência do projeto, ou seja, seus objetivos de negócio, para que sejam mais bem detalhados nos requisitos de negócio.

Ao garantir que todos os requisitos de negócio estão sendo atendidos, é possível garantir que o sistema produzido está alinhado com os objetivos da organização. Porém, ainda existem outras questões importantes a serem consideradas em um projeto de desenvolvimento de software e que interferem na qualidade de seu resultado, por exemplo:

· Como saber se a solução que está sendo construída está conforme o desejo do cliente?

· Como saber se a solução atende a todos os requisitos informados pelo cliente?

· Como saber se a análise da necessidade do cliente não deixou de atender algum requisito?

· Como saber se o processo de análise, entendido aqui como a etapa do projeto em que o modelo lógico do software é desenvolvido, não deixou de atender algum requisito?

· Como saber se todos os componentes (códigos) da solução executam tarefas que serão realizadas por seus principais usuários? (Em alguns casos, funcionalidades são adicionadas à solução sem que exista um requisito responsável por sua implementação, tendo como consequência uma abrangência desnecessariamente maior do sistema, assim como os riscos envolvidos);

· Como estimar o prazo e o impacto para uma determinada mudança no sistema?

De posse de todas essas informações e sabendo que os maiores problemas relacionados com a produção de um novo software estão associados com requisitos, este artigo tem por objetivo apresentar a importância da rastreabilidade de requisitos sob a ótica do processo de desenvolvimento e gerenciamento de requisitos, de acordo com os principais guias e modelos de maturidade utilizados pelo merca ...

Fim do trecho gratuito • continue abaixo
CONTEÚDO EXCLUSIVO

Desbloqueie toda a DevMedia

  • +2000 artigos e vídeos
  • +40 trilhas sobre Front-end, Back-end, IA e muito mais
  • +5000 exercícios práticos
  • Mentorias ao vivo individuais
até 50% OFF
A partir de
R$ 69 /mês
Assinar agora