Primeiras aulas do curso Engenharia de requisitos: como levantar, documentar e validar

Engenharia de requisitos: como levantar, documentar e validar

Análise do cenário - Apresentação

Olá, pessoal. Tudo bem? Sejam bem vindos ao nosso curso de Engenharia de Requisitos. Nesse curso introdutório nós vamos ver um pouquinho sobre o conteúdo que vamos abordar ao longo do curso, além de algumas informações bem importantes para que nós possamos aproveitar bem o conteúdo.

Esse curso de Engenharia de Requisitos não pretende esgotar o assunto nem explorar o assunto com profundidade. A ideia é oferecer para cada um de vocês o conhecimento necessário para começar a aplicar a Engenharia de Requisitos em projetos de pequeno e médio porte, ou seja, fornecer conhecimento suficiente para que vocês possam aplicar, na prática, nos projetos de vocês no dia a dia.

O nosso curso é dividido em três grandes partes. Na primeira parte, nós vamos falar sobre levantamento de requisitos. Em levantamento de requisitos nós vamos aprender o que é um requisito, o que o requisito funcional, um requisito não funcional e aprender algumas técnicas de prototipação.

No segundo módulo, nós vamos entender como fazer a documentação desses requisitos, então vamos ter um template de requisitos e nós vamos aprender como elaborar esse documento da melhor maneira possível.

E por fim, no terceiro e último tópico, vamos aprender um pouquinho sobre validação de requisitos. Quais são as melhores maneiras de validar esse requisito, como eu posso fazer a validação interna, e como eu posso fazer a validação externa.

Ao longo de todo o curso vocês vão ter os materiais de apoio, os templates tanto do documento de requisitos, quanto da planilha de validação. Qualquer dúvida que surgir ao longo do curso, qualquer questionamento, vocês podem usar o fórum para fazer perguntas, dar sugestões ou enviar qualquer tipo de conteúdo para complementar. Vamos para a próxima aula.

Análise do cenário - O que são requisitos?

Olá, pessoal. Tudo bem? Sejam bem vindos ao nosso curso de Requisitos de Software. Hoje nós vamos acompanhar o pessoal da App+. A App+ é uma empresa especializada no desenvolvimento de softwares e aplicativos para pequenos e médios negócios. O motivo da felicidade toda na App+ é que eles acabaram de fechar um projeto novo com uma rede de salões de beleza chamada Bonita é Pouco.

A rede de salões de beleza Bonita é Pouco tem quatro unidades espalhadas por toda a cidade. A proprietária dessa rede de salões é a Maria Bonita. Nos últimos anos, a Maria Bonita vem acompanhando, e claro, trabalhando muito pela expansão dos negócios, pela expansão do salão. Com isso, o salão foi crescendo cada vez mais, e hoje ela precisa lidar com um volume de informações cada vez maior.

Preocupada com a gestão dessas informações, e principalmente com a qualidade dos serviços que ela presta no salão, ela resolveu convidar o pessoal da App+ para que eles pudessem, de acordo com a realidade dela, desenvolver uma solução em termos de tecnologia. E é justamente isso que o pessoal da App+ faz, eles entendem o negócio de cada cliente, entendem e coletam quais são os requisitos que esse cliente tem, e que ele precisa, e converte isso em soluções em tecnologia. Seja um software ou seja um aplicativo.

Sempre que nós iniciamos um projeto para desenvolvimento de um software ou implementação de um sistema novo, nós vamos nos deparar com algumas situações. Entre elas, a expectativa dos usuários. Os usuários sempre criam muitas expectativas, desejos, sonhos com relação o sistema. Ele sempre tem um conjunto de ideias, de coisas que eles esperam que o sistema faça. Ou seja: Eu gostaria que o sistema me trouxesse um relatório. Eu gostaria que o sistema me permitisse fazer o cadastro de uma informação. Gostaria que o sistema me mostrasse quantas pessoas eu atendi hoje.

Tudo isso são expectativas, são comportamentos que os usuários desejam que o sistema tenha, ou são formas que os usuários desejam que o sistema responda às suas solicitações. A esse conjunto de ideias, de expectativas, de solicitações, nós chamamos de requisitos funcionais. Os requisitos funcionais descrevem um comportamento do sistema, como o usuário deseja que o sistema responda às solicitações.

Sempre que eu disser: Eu gostaria que o sistema trouxesse para mim um relatório que mostrasse todas as vendas do dia. Isso é um requisito funcional. Eu desejo que o sistema me mostre quais são as vendas realizadas naquele dia. Eu espero que o sistema responda à minha solicitação dessa forma, ou seja, eu quero ir lá, consultar no sistema, e eu quero que ele me responda dizendo quantas vendas eu fiz no dia.

Os requisitos funcionais são a parte mais importante de um software. É o coração do software, porque é ali que vai acontecer tudo aquilo que os usuários precisam. E são esses requisitos funcionais que vão resolver os principais problemas dos nossos usuários.

Logo na mesa de negociação, o pessoal do pessoal da App+ já recebeu um spoiler de um requisito funcional. Já durante a mesma, a Maria Bonita colocou para eles uma das expectativas que ela tem com relação ao aplicativo. Então ela disse o seguinte: o aplicativo deve possuir uma função de consulta dos procedimentos agendados por clientes.

Ela deseja entrar no aplicativo, ou entrar no sistema via web, e consegui visualizar quantas clientes estão agendadas por dia, quais são os procedimentos que estão agendados, quais são os profissionais que estão alocados. E tudo isso são requisitos funcionais. Perceba como esse requisito é importantíssimo para o desenvolvimento do software. Quando nós pegamos esse requisito, o destrinchamos e entregamos ao desenvolvedor, e já consegue desenvolver uma tela, já consegue desenvolver uma funcionalidade ou consegue desenvolver um relatório.

Além dos requisitos funcionais, os usuários também vão trazer outras informações que também são bastante importantes para nós nesse processo de desenvolvimento. Eles vão trazer informações relacionadas a características e restrições do sistema. Quais são essas características? Por exemplo, velocidade de resposta, capacidade de processamento, desempenho, questões relacionadas à usabilidade. Por exemplo, a letra da tela não pode ser muito pequenininha, o contraste de cores no fundo não pode ser muito forte. Quando eu abrir no celular, ele tem que se adaptar à tela do meu celular o à tela do meu tablet.

Isso são requisitos não funcionais. Representam características e podem representar inclusive restrições aplicadas ao sistema. Um dos exemplos de requisitos não funcionais que nós conseguimos coletar lá com o pessoal do salão de beleza Bonita é Pouco é esse: os usuários esperam que o tempo de consulta da tela de agendamento seja menor que 15 segundos. Aqui nós estamos falando de tempo de processamento, ou seja, eles não querem esperar mais do que 15 segundos para poder visualizar uma tela, para poder visualizar uma consulta no aplicativo.

Geralmente, esse tipo de requisito é tão importante quanto o requisito funcional, porque um requisito não funcional pode travar o desenvolvimento de uma funcionalidade específica e até mesmo travar a funcionalidade, travar o desenvolvimento do software como ele havia pensado inicialmente.

Requisitos não funcionais também trabalham com questões de legislação. Se eu vou desenvolver softwares para negócios específicos, como por exemplo: folha de pagamento, financeiras, contabilidade. Existe tudo uma legislação que rege essas áreas de atuação. Eu preciso também ter um olhar para isso e entender quais são os requisitos não funcionais, quais são as características e quais são as restrições do meu sistema nesses casos.

Resumindo, o que o pessoal da App+ vai precisar coletar junto aos usuários do salão Bonita é Pouco? Eles vão precisar coletar os requisitos funcionais, que é o que deve ser feito, o que o sistema deve responder, como ele deve se comportar. E os requisitos não funcionais é como deve ser feito, com que velocidade, com que desempenho, com que capacidade de processamento.

Por enquanto é só. Na próxima aula, nós vamos entender quais são as técnicas e como o pessoal da App+ vai fazer para levantar essas informações junto com o pessoal do salão de beleza Bonita é Pouco. Por enquanto é só, muito obrigada.

Análise do cenário - Hora da Entrevista

Olá, pessoal. Tudo bem? Sejam bem vindos a mais uma aula do nosso curso de Engenharia de Requisitos. Na aula passada, nós conhecemos o pessoal da App+. Nós vimos que eles fecharam um projeto superbacana com o pessoal de salão de beleza Bonita é Pouco, e nós vimos também que eles já conseguem diferenciar os requisitos funcionais dos requisitos não funcionais, e já entenderam a importância desses requisitos para esse projeto.

Passada essa fase inicial de entendimento, surgiu outra dúvida lá no time. Como levantar os requisitos do cliente. Como nós vamos fazer para extrair do cliente quais são as expectativas, quais são as necessidades. Aquilo que ele precisa ou aquilo que ele gostaria que o software fizesse. O pessoal pensou bastante, pesquisou bastante, mas como já era tarde, eles resolveram ir embora, descansar um pouquinho e retomar esse assunto no dia seguinte.

Uma das pessoas que foram para casa foi o Sérgio. O Sérgio é um dos analistas da App+, e ele está nesse projeto como um dos responsáveis pelo desenvolvimento desse aplicativo. Ele foi para casa, ligou a TV, e viu que na TV estava passando uma entrevista de um jogador de basquete do qual ele é muito fã. Ele sentou para assistir entrevista e começou a observar algumas coisas interessantes nessa entrevista.

Ele viu que o entrevistador fazia perguntas de acordo com aquilo que ele gostaria de saber. Perguntas chave como, por exemplo, quanto tempo você tem de carreira, quais são as suas expectativas para esse campeonato, o que você espera fazer nos próximos cinco anos. E com isso, o entrevistador ia extraindo informações interessantes e relevantes sobre o jogador. Tanto para entrevistador quanto para todo mundo que estava assistindo.

Então, o Sérgio parou e pensou: se nós utilizamos a entrevista para conhecer melhor alguém ou alguma coisa, talvez nós possamos usar a entrevista dentro do nosso projeto. Ele teve uma ideia. No outro dia, ele reuniu todo o time e disse para o time: Pessoal, tive uma ideia. Nós vamos entrevistar a Maria Bonita e descobrir o que ela espera do nosso aplicativo. Antes de fazer entrevista com a Maria Bonita, é necessário elaborar um roteiro de entrevista.

O roteiro de entrevista vai ter algumas perguntas, que são as perguntas chaves que nós vamos fazer para Maria Bonita no momento dessa entrevista. Para essa entrevista inicial, o pessoal elaborou quatro perguntas. A primeira pergunta é: Qual o principal objetivo do sistema a ser desenvolvido. Aqui, nós queremos entender o que a Maria Bonita espera. Qual que é o desejo principal dela com o desenvolvimento desse aplicativo, com desenvolvimento desse sistema. Essa pergunta é central e vai nortear todo o nosso projeto.

A segunda pergunta que eles fizeram foi: Quais os principais problemas que você enfrenta atualmente sem um sistema para operação. Aqui, nós queremos coletar quais são as dores, quais são os incômodos, quais são os problemas, quais são as situações ruins que eles têm enfrentado na operação do salão de beleza justamente por não ter um sistema. Nós tendo essas dores e esses problemas em mãos, nós conseguimos, inclusive, apoiá-los no desenvolvimento e no reconhecimento de necessidades e de requisitos.

As outras duas perguntas foram: quais informações devem ser armazenadas no cadastro de histórico, e como deve ser a consulta dessas informações? Essa pergunta fala essencialmente de dados. Eu quero entender quais são os principais dados que eu devo guardar no meu sistema. Aqui, nós fazemos uma análise inicial. Que tipo de dado? Que dado não pode faltar no sistema do salão de beleza Bonita é Pouco? E aqui a Maria vai me dar uma relação de dados iniciais.

E a quarta pergunta é: De tudo isso que nós conversamos, existe alguma informação que você gostaria de acrescentar? Aqui eu abro um espaço para Maria Bonita falar. O que ela gostaria de ver, se tem alguma outra ideia, se tem alguma outra coisa que ela queria incluir. Essa pergunta, embora ela seja aberta, é bastante importante, porque aqui o usuário pode nos trazer outras necessidades, outros pontos que nem haviam sido discutidos lá atrás, no início do projeto.

Com roteiro de entrevista pronto, com objetivo de cada pergunta entendido e estabelecido, o pessoal fez a entrevista com a Maria Bonita. O Sérgio sentou lá, fez cada uma das quatro perguntas para ela. Fez também outros comentários e outras informações. Ele pegou todas essas respostas, coletou tudo isso e levou para dentro da App+.

A princípio, nós temos resultados excelentes. Nós já tivemos o primeiro contato com a Maria Bonita, nós já entendemos o que ela quer, qual é o objetivo do sistema e quais dados ela quer que nós armazenemos nesse sistema. Para um primeiro momento, os resultados são excelentes.

Na próxima aula, nós vamos entender se só com essas respostas nós vamos conseguir desenvolver o sistema da Maria Bonita ou nós vamos precisar encontrar outras técnicas e outras formas de levantar requisitos. Tudo isso nós vamos ver na aula que vem. Muito obrigada e até a próxima.

Sobre o curso Engenharia de requisitos: como levantar, documentar e validar

O curso Engenharia de requisitos: como levantar, documentar e validar possui 46 minutos de vídeos, em um total de 31 atividades. Gostou? Conheça nossos outros cursos de Gestão de Produtos em Inovação & Gestão, ou leia nossos artigos de Inovação & Gestão.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Gestão de Produtos acessando integralmente esse e outros cursos, comece hoje!

Plus

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$85
à vista R$1.020
Matricule-se

Pro

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$120
à vista R$1.440
Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas