Saiba como a engenharia de requisitos, suas definições fundamentais e processos estruturados se aplicam ao desenvolvimento de produtos de hardware.
Sejamos honestos: poucas pessoas ficam entusiasmadas com requisitos. Ainda assim, toda equipe de hardware já sentiu o custo de requisitos pouco claros: retrabalho que aparece tarde demais ou uma versão construída que não atende ao que as partes interessadas realmente pediram.
A engenharia de requisitos (RE) é a disciplina que segue um processo estruturado de definição, documentação e gerenciamento de requisitos para que o produto final resolva o problema certo. Quando bem aplicada, ela detecta erros cedo, mantém a equipe alinhada e dá a todos a confiança de que o que será entregue é de fato o que foi acordado construir.
No entanto, o termo costuma gerar confusão porque tem raízes tanto na engenharia de software quanto na engenharia de sistemas de produtos de hardware.
Neste artigo, você terá uma definição clara de engenharia de requisitos e do seu papel no desenvolvimento de produtos de hardware. Abordamos tanto uma visão teórica quanto uma estrutura prática de como ela é aplicada em um projeto de hardware, com exemplos do mundo real e uma lista dos erros mais comuns, além de como evitá-los.
Engenharia de requisitos é uma abordagem sistemática e disciplinada para definir, documentar e gerenciar requisitos durante o desenvolvimento de produtos de hardware.
Ela ajuda as equipes a entender o problema que precisa ser resolvido, esclarecer e analisar as necessidades das partes interessadas, resolver conflitos e trade-offs, documentar o que o produto deve alcançar e manter esse entendimento atualizado à medida que o produto evolui.
Na prática, os requisitos criam um entendimento compartilhado entre as partes interessadas e as equipes de engenharia sobre o que está sendo desenvolvido, por que está sendo desenvolvido e como a equipe saberá se o produto final atende à intenção do projeto.
Quando a RE é bem executada, ela ajuda a evitar mal-entendidos e erros caros, mantém a equipe alinhada e ajuda a garantir que o produto final atenda aos seus requisitos.
Os principais benefícios da RE incluem:
A engenharia de requisitos tem raízes tanto na engenharia de sistemas quanto na engenharia de software. Essas duas origens se desenvolveram em contextos de engenharia diferentes, por isso o termo ainda pode ter um escopo ligeiramente distinto dependendo da fonte.
No contexto da engenharia de software, o foco está principalmente nos requisitos de desenvolvimento de software: o que o software deve fazer, como deve se comportar e quais atributos de qualidade deve atender. Engenheiros de software pensam em requisitos funcionais e não funcionais documentados como user stories, casos de uso e critérios de aceitação. No contexto da engenharia de sistemas, o escopo é mais amplo. Requisitos se referem ao sistema inteiro, incluindo hardware, software, pessoas, processos, interfaces, condições de operação e outras características do sistema. Engenheiros de sistemas falam sobre requisitos em nível de sistema alocados para hardware, mecânica, elétrica, firmware e fatores de segurança, registrados como declarações formais de requisitos e matrizes de rastreabilidade de requisitos.
No desenvolvimento de hardware, a RE reúne essas duas perspectivas. Ela combina o rigor e o escopo multidisciplinar da engenharia de sistemas, necessários para lidar com custos de lista de materiais (BOM), restrições térmicas e limitações de manufatura, com a rastreabilidade ao longo do ciclo de vida usada na engenharia de software para manter os requisitos testáveis e conectados durante todo o desenvolvimento.
A engenharia de requisitos está intimamente relacionada a outras disciplinas de desenvolvimento de produtos, especialmente engenharia de sistemas e gestão de produto.
A engenharia de sistemas enxerga um produto como um sistema completo. Um engenheiro de sistemas garante que diferentes partes, como hardware, software, componentes mecânicos e testes, funcionem adequadamente em conjunto e não entrem em conflito.
Isso está intimamente ligado à RE porque os requisitos dão a todas essas equipes uma referência comum sobre o que o produto precisa alcançar.
Se você gosta de analogias, imagine construir uma casa. Diferentes especialistas trabalham na fundação, na parte elétrica, no encanamento e no aquecimento, mas alguém ainda precisa garantir que todas essas partes realmente se encaixem em uma única estrutura completa. A engenharia de sistemas exerce exatamente esse papel no desenvolvimento de produtos.
A gestão de produto ajuda a decidir o que construir e por quê. Gestores de produto conversam com clientes, estudam o mercado, analisam concorrentes e trabalham com o negócio para decidir quais problemas valem a pena resolver e quais recursos são mais importantes.
Isso também está ligado à RE porque essas necessidades do cliente em alto nível e os objetivos de negócio se tornam o ponto de partida para definir os requisitos do produto.
O processo de RE pode ser organizado de diferentes maneiras, dependendo da área de aplicação, das pessoas envolvidas e da organização. Em alguns projetos, as atividades acontecem principalmente uma após a outra, enquanto em outros elas são repetidas e revisitadas à medida que a equipe aprende mais.
Como descrito em um artigo publicado no Requirements Engineering journal, uma abordagem didática comum divide o processo de RE em quatro atividades centrais (fases):
Vários papéis-chave estão envolvidos na estrutura de RE, trabalhando juntos para definir o que um produto deve fazer:
Embora as quatro atividades acima definam o núcleo do processo de RE, as equipes de hardware precisam de uma maneira prática de aplicá-las ao longo de um projeto.
A seguir, apresentamos uma visão prática da estrutura de engenharia de requisitos para o desenvolvimento de hardware, mostrando como os requisitos se encaixam em cada etapa.
No início de um projeto, os líderes técnicos geralmente recebem informações vagas, como solicitações de clientes, requests for proposal (RFPs), objetivos de negócio ou restrições de custo, tamanho ou cronograma. Por exemplo, um cliente pode pedir um dispositivo menor que ofereça suporte a um caso de uso específico.
Junto com o responsável pelos requisitos, os líderes técnicos esclarecem o que é necessário e transformam essas informações em requisitos de alto nível que descrevem o que o produto deve alcançar.
Os requisitos de alto nível da fase de início do projeto ainda são amplos demais para o design detalhado. Nesta fase, o responsável pelos requisitos define o sistema geral, divide-o em partes e subsistemas e transforma esses requisitos de alto nível em requisitos mais específicos para cada parte.
Ele também verifica se os requisitos não entram em conflito, se nada importante está faltando e se cada um é claro e testável. O resultado é um conjunto acordado de requisitos que a equipe de engenharia pode usar como ponto de partida para o projeto do produto.
Os engenheiros de implementação usam os requisitos acordados para projetar e construir sua parte do produto, seja criando um esquemático, modelando uma peça 3D ou escrevendo software ou firmware. À medida que o projeto evolui, eles vinculam cada requisito ao recurso de projeto que o atende. Esses vínculos criam a rastreabilidade do projeto e ajudam o responsável pelos requisitos a ver como os requisitos foram implementados.
Os requisitos também definem o que deve ser verificado durante revisões e testes. O engenheiro de verificação define como cada requisito será verificado e trabalha com os engenheiros de implementação para realizar as revisões, medições ou testes necessários, além de registrar os resultados. Isso conecta o que o produto precisava alcançar com as evidências que mostram se ele realmente alcançou esse objetivo.
Os requisitos e os projetos de produto frequentemente mudam durante o desenvolvimento. Um requisito pode se mostrar impossível de atender, um componente pode se tornar indisponível no mercado ou uma nova restrição pode surgir. Quando isso acontece, o responsável pelos requisitos acompanha o que mudou, por que mudou e quais requisitos, partes do projeto ou testes são afetados.
No final do projeto, o Responsável pelos Requisitos trabalha com o Engenheiro de Verificação e o restante da equipe para encerrar os requisitos, as revisões de projeto e as atividades de verificação. A documentação final deve fornecer um registro rastreável do que era necessário, do que foi construído e de como isso foi verificado. Clientes, fabricantes, auditores ou equipes que continuarem trabalhando no produto precisarão dessas informações mais tarde.
A Engenharia de Requisitos é usada em produtos médicos e de tecnologia assistencial. Os requisitos acompanham o produto durante todo o desenvolvimento. As equipes transformam as necessidades das partes interessadas em requisitos de sistema estruturados, mantêm esses requisitos conectados à medida que as especificações mudam e os usam para planejar a verificação e documentar os resultados dos testes.
Os dispositivos médicos acrescentam uma camada regulatória. As equipes dedicam mais esforço à rastreabilidade, à verificação, à documentação e à papelada. Isso dá suporte à aprovação regulatória em estruturas como FDA 21 CFR Part 820 nos EUA e ISO 13485:2016 na UE e em outros mercados.
“A abordagem estruturada para documentar requisitos simplificou nosso fluxo de trabalho, tornando mais fácil gerenciar e organizar as especificações do projeto de forma eficaz.” — Alf-Einar Løberg, Diretor de Departamento, Sensio |
O protetor bucal HitIQ é um exemplo de dispositivo vestível médico em que as necessidades de segurança determinam cada especificação técnica. Descubra como isso é feito na história completa de sucesso do cliente.
O processo central de engenharia de requisitos é semelhante em eletrônicos de consumo e industriais, mas os produtos são desenvolvidos em condições diferentes. Produtos de consumo, como dispositivos para casas inteligentes ou wearables, são vendidos em grandes volumes e lançados rapidamente. Produtos industriais, como controladores lógicos programáveis (PLCs) ou acionamentos de motores, precisam operar por anos em condições severas.
Em ambos os casos, as equipes registram o que o produto deve fazer, vinculam cada requisito ao projeto, atualizam os requisitos quando algo muda e testam com base neles.
O que muda é onde as equipes colocam o esforço extra. Em eletrônicos de consumo, isso vai para acompanhar mudanças rápidas, porque um único requisito mal compreendido pode significar reprojetar a placa. Em eletrônicos industriais, isso vai para a verificação, porque o produto precisa ser testado para longa vida útil e condições severas antes de ser enviado.
Para desenvolver hardware confiável que esteja em conformidade com as normas de segurança, é fundamental manter requisitos e mudanças de projeto conectados. Leia como a MakeSafe Tools gerencia isso na história completa de sucesso.
A engenharia de requisitos traz alguns desafios comuns. Saber o que pode dar errado torna mais fácil identificar problemas cedo e evitá-los durante o desenvolvimento de produtos de hardware.
Aqui estão algumas das armadilhas mais comuns às quais você deve ficar atento e como evitá-las:
Armadilha Comum | Como Evitá-la |
Definir os requisitos do projeto antes de obter informações suficientes das partes interessadas corretas. | Envolva as partes interessadas certas desde o início, faça perguntas suficientes e compreenda plenamente suas necessidades. |
Adicionar ou alterar requisitos sem primeiro verificar seu impacto. | Revise cada requisito novo ou alterado antes de aceitá-lo e verifique como ele afeta o escopo, o cronograma, o custo e os testes. |
Escrever requisitos que possam ser interpretados de maneiras diferentes ou que não possam ser verificados. | Torne os requisitos claros, mensuráveis e verificáveis. |
Gerenciar um conjunto crescente de requisitos em planilhas e perder a rastreabilidade | Migre para uma ferramenta dedicada de gerenciamento de requisitos que possa escalar e manter a rastreabilidade à medida que o projeto cresce. |
Gastar tempo demais gerenciando requisitos. | Reduza o trabalho operacional com requisitos usando IA desenvolvida especificamente para isso. |
Gerenciar um pequeno conjunto de requisitos é relativamente simples. À medida que um projeto cresce, manter tudo organizado e atualizado exige mais esforço. Nesse ponto, a forma como você gerencia os requisitos começa a importar mais.
Na prática, as equipes geralmente trabalham com uma destas abordagens:
O objetivo é usar estrutura suficiente para o projeto sem tornar o gerenciamento de requisitos mais complicado do que precisa ser.
Para equipes menores de hardware que já superaram as planilhas, mas não precisam de um grande fluxo corporativo de RM, Requirements Portal é uma opção prática a considerar. Ele foi projetado para dar a equipes menores uma forma mais estruturada de gerenciar requisitos sem a sobrecarga de um sistema corporativo tradicional.
Neste ponto, você já deve ter uma compreensão clara dos principais conceitos de engenharia de requisitos e de como eles se aplicam na prática.
Se você quiser continuar aprendendo sobre engenharia de requisitos, estes recursos são um bom ponto de partida:
Se você está pronto para passar da teoria à prática, experimente Requirements Portal e comece a trabalhar com requisitos estruturados em um projeto real de hardware hoje mesmo, gratuitamente e sem necessidade de configuração.
A engenharia de requisitos é importante porque ajuda a equipe a construir o produto certo ao compreender claramente as necessidades das partes interessadas antes que o projeto e o desenvolvimento avancem demais.
Um engenheiro de requisitos transforma as necessidades das partes interessadas em requisitos claros que a equipe de engenharia pode usar e mantém esses requisitos organizados à medida que o projeto muda. Ele atua como uma ponte entre clientes e equipes de desenvolvimento.
Engenharia de requisitos é todo o processo de descobrir, entender e registrar o que um sistema precisa fazer em primeiro lugar. Gerenciamento de requisitos é a parte específica desse trabalho que mantém esses requisitos organizados e acompanha quaisquer mudanças depois que eles são escritos.