Modelagem de Negócios e requisitos de software
Para grande parte das empresas, a área de tecnologia deixou de ser secundária para se tornar parte estratégica do negócio. Essa visão começou a ocorrer a partir do momento em que se percebeu que, muito além de ficar só resolvendo problemas, ela pode ser uma arma importante para impulsionar a produtividade da empresa como um todo.
Por meio dela, áreas podem se integrar melhor, diversos procedimentos podem se tornar mais dinâmicos e compartilhados e, de uma forma geral, processos fundamentais são facilitados e otimizados. Em uma empresa na qual o compromisso com a inovação existe, é natural que seus colaboradores compreendam a importância da área de TI.
Ao enxergar a tecnologia como inovadora, entram em jogo também as ideias para startups, ou ideias de modelos de negócios, como os aplicativos, por exemplo.
Sob esses dois olhares – da empresa direcionada à inovação e das pessoas com ideias inovadoras – a tecnologia se torna primeira opção a ser procurada quando algum problema é levantado. Ou seja, se há algo de errado, será que não há algum sistema que resolva? Será que não há uma ferramenta que facilite meu trabalho? Não é possível desenvolver algo que seja específico para meu problema e que me entregue a solução de que preciso?
Nesse ponto de encontro entre identificar o problema ou necessidade e definir a solução, é que entram os requisitos de software.
O levantamento de requisitos é fundamental, pois antes de se encontrar uma solução para o problema, é necessário ter bem definido como ele é. Isso exige um nível de detalhamento adequado e o uso de metodologias específicas para que o caminho para a solução não se torne um novo problema.
O que é o levantamento de requisitos?
A prática de pesquisar e descobrir requisitos de um sistema por meio de seus usuários, clientes e outros stakeholders.
Note que as palavras utilizadas foram “pesquisar” e “descobrir” e não as palavras “coletar” ou “obter”, por exemplo.
Essa escolha dos termos é parte importante da definição, já que o levantamento de requisitos vem da ideia de que não é possível assumir que os stakeholders são capazes de definir por conta própria todos os requisitos necessários.
Portanto, existem técnicas e metodologias ideais a serem aplicadas para fazer esse levantamento – chamado também de elicitação de requisitos. A Supera listou algumas das técnicas que podem ser utilizadas, para entender a necessidade do cliente e aliar à solução desejada.
8 Técnicas para elicitação de requisitos
- Entrevistas:
A entrevista é normalmente a primeira técnica utilizada. Analistas entrevistam clientes para definir os objetivos gerais e restrições que o software deverá ter. A entrevista deve ser feita de forma objetiva visando obter o máximo de informações do cliente. Diversas seções de entrevistas podem ser marcadas.
- Questionários:
Essa técnica tem como objetivo identificar informações apresentadas em entrevistas, verificar se uma informação é difundida ou limitada e identificar problemas ou levantar questões importantes. Diferente da entrevista, o questionário é interessante quando temos uma quantidade grande de pessoas para extrair as mesmas informações.
As questões são dirigidas por escrito aos participantes para se obter diversas opiniões sobre os mesmos pontos. É comum esta técnica ser aplicada em conjunto com a entrevista.
- Brainstorming:
Conhecida informalmente como “toró de ideias”, é uma técnica para gerá-las. Ela consiste em uma ou várias reuniões que permitem que as pessoas sugiram e explorem ideias. Mais que uma técnica de dinâmica de grupo, é uma atividade desenvolvida para explorar a potencialidade criativa de um indivíduo ou de um coletivo – criatividade em equipe – colocando-a a serviço de objetivos pré-determinados.
Se bem administrado, o brainstorming pode produzir excelentes resultados, pois com a organização e refinamento das ideias e sugestões podem surgir boas propostas e soluções para o software.
- Análise de documentos:
Consiste no estudo e reutilização de documentação de diferentes naturezas, para a identificação de requisitos a serem implementados no sistema que se está modelando.
Uma grande variedade de documentação pode ser analisada, incluindo estrutura organizacional da empresa, padrões de mercado, leis, manuais de usuário, relatórios de pesquisas de mercado, glossário de termos de negócio, etc. É importante assegurar que a documentação analisada esteja atualizada para garantir a veracidade na especificação dos requisitos.
Com a análise de documentos é possível levantar informações detalhadas que os usuários não saberiam ou possivelmente não se lembrariam de passar durante uma entrevista, um questionário ou até mesmo durante uma reunião.
- Cenários:
Os cenários de eventos são utilizados para documentar o comportamento do sistema quando submetido a eventos específicos, além de documentar as exceções que possam surgir.
Entre os cenários de eventos estão a descrição do fluxo de dados e as ações do sistema. Essa exploração evidencia interações possíveis do sistema, sendo uma técnica muito importante para revelar alguns pontos que passaram despercebidos e que a aplicação poderá precisar.
- Etnografia:
Esta técnica é uma interessante maneira para capturar informações relevantes para o desenvolvimento do projeto.
A etnografia é uma técnica de observação que pode ser utilizada para compreender os requisitos sociais e organizacionais, ou seja, entender a política organizacional bem como a cultura de trabalho, com objetivo de familiarizar-se com o sistema e sua história.
- Prototipação:
Esta técnica ajuda os stakeholders a terem uma forte noção sobre a aplicação ainda não implementada, pois ela permite a visualização real da proposta da solução a ser desenvolvida.
A prototipação apoia as atividades de elicitação e validação de requisitos da engenharia de software, podendo também ser utilizada como uma técnica de análise e redução dos riscos.
- JRD/JAD:
Seu objetivo é envolver todos os stakeholders importantes no processo de levantamento, através de reuniões estruturadas e com foco bem definido. Essa técnica possui quatro princípios básicos: Dinâmica de Grupo; Uso de Técnicas Visuais; Manutenção do Processo Organizado e Racional; Utilização de Documentação Padrão.
A técnica de JAD é composta por etapas e fases, em que as etapas são: Planejamento e Projeto. E cada etapa possui as seguintes fases: Adaptação, Sessão e Finalização.
O que pode acontecer se eu não souber fazer esse levantamento?
Alguns problemas podem acontecer, pela ausência de levantamento de requisitos ou mesmo pela execução incorreta de alguma das técnicas, como:
- Escopo: quando as fronteiras do sistema não estão bem definidas e detalhes do negócio podem deixar mais nebuloso o objetivo do mesmo;
- Volatilidade de Requisitos: apesar de ser um problema, as mudanças de requisitos ao longo do tempo já são algo esperado pelo analista. Portanto, o cronograma deve ser cumprido de acordo com o planejamento;
- Conhecimento: os stakeholders comumente não tem noção completa do escopo do problema, sua necessidade e da solução necessária, assim como podem não ter bem definidas as restrições tecnológicas e técnicas ou omitem informações que julgam serem óbvias.
A Supera espera que após todo esse conteúdo você tenha entendido o quanto o processo de levantamento de requisitos é importante e complexo. A partir dele, se deriva toda a construção da solução ou do desenvolvimento de uma ideia/negócio. E só fazendo as perguntas corretas é que se consegue as respostas necessárias.
Em todo caso, se ainda restou alguma dúvida, deixa que a gente sabe bem o que fazer. Acesse a nossa solução de Análise e Modelagem de Negócios e nos informe como podemos te ajudar!