quinta-feira, setembro 29

Técnica de Elicitação de Requisitos parte 1

Os requisitos surgem a partir das Necessidades (NE) dos usuários de um negócio alvo de sistematização. O Analista de Requisitos (AR), num trabalho de garipagem, captura e registra essas NE de forma clara e objetiva. Inicialmente, sem preocupação alguma em organizá-las, apenas fazendo as prospecções necessárias para identificá-las claramente. Concomitantemente, o AR em seu trabalho de exploração, procura identificar as Regras de Negócio (RN) que os usuários vão espalhando ao léu enquanto expõem as suas expectativas com relação a nova ferramenta. Em seguinda, o AR vai promover a organização das informações e, paralelamente, identificar os Casos de Usos (UC), do futuro sistema. Isso na verdade, consiste de um trabalho de elaboração construtiva. Com as NE claramente identificadas, o passo seguinte consiste em construir a relação de Funcionalidades (FN) que o sistema deverá oferecer, a fim de atender as NE de seus usuários. Isso feito, temos o binômio relacional: NECESSIDADE x FUNCIONALIDADE.
Deve-se ter em mente que para cada NE deve existir, pelo menos, uma FN e uma FN pode atender a diversas NE.
Os UC são, na verdade, complexos funcionais com objetivos comuns sob o ponto de vista do usuário - identificados, lógicamente, pelo AR. As regras básicas para construção dos UC são:
  • UC "limpos" e "enxutos" que propiciem, em sua construção, uma navegação funcional que esteja de acordo com as normas de acessibilidade do software;
  • Agrupamentos de FN que permitam uniformidade funcional;
  • Devem ser consideradas os princípios de convergência, em termos, de RN;
  • Restrições ou divergências funcionais devem ser tratadas em UC isolados.

quarta-feira, setembro 28

Requisitos como Fundamento para Construção de Software

Para a Engenharia de Software, as partículas fundamentais do produto a ser construído são os requisitos. Desta forma, surgiu a Engenharia de Requisitos para tratar essas partículas de informação (requisitos) com todos os cuidados que elas merecem, para que o software que está sendo desenvolvido tenha qualidade e esteja de acordo com os interesses dos usuários a que se destina. Todo software termina por ser uma ferramenta de manipulação de informações e o que se espera desse tipo de ferramenta é segurança, precisão e agilidade. Por outro lado, essa partículas fundamentais do software - os requisitos, evoluem e se devem adaptar-se as novas situações, conforme a dinâmica do ambiente em que está contextualizado. Portanto, a Engenharia de Requisitos deve estar cercada de processos que não engessem a evolução natural dos requisitos. O RUP (Rational Unified Process), sugere um gerenciamento engessado para os requisitos durante as fases de desenvolvimento de um software. Da minha parte, sugiro que sejam flexibilizados esse engessamentos a fim de podermos acompanhar requisitos vivos, que como um ser vivo possam ser controlados sem que prejudique o andamento do desenvolvimento.

quinta-feira, setembro 22

A Revolução do Software através dos Requisitos

Vivemos, hoje, sobre uma verdadeira guerra tecnológica. Somos obrigados a criar softwares que atendam as necessidades dos usuários no menor espaço de tempo possível e isentos, quase completamente, de falhas. O único caminho que pode nos conduzir ao sucesso mediante tais prerrogativas é, por intermédio da, Engenharia de Requisitos. Essa atividade, tão importante, na Engenharia de Software, juntamente com a melhoria nos processos de gerenciamento e acompanhamento do projeto, provavelmente, nos fará alcançar esse nosso intento, se não em sua totalidade, pelo menos, parcialmente. Claro que isso implica no treinamento de cada um dos componentes do processo, para que cada elemento tenha noção clara do papel a ser desempenhado na equipe e a produtividade seja total, minimizando-se os procedimentos de retrabalho que sempre são tão desgastantes. Portanto, é de suma importância que todos envolvidos no processo de criação de software entenda as novas prerrogativas para elaboração de produtos de software.