Britânia - Análise, Escrita e Refinamento de Requisitos para Desenvolvimento de Sistema
Home / Casos de Sucesso

Britânia - Análise, Escrita e Refinamento de Requisitos para Desenvolvimento de Sistema

Um Squad Ágil executou a análise, a escrita e o refinamento de requisitos para um sistema da Britânia

Cliente
Britânia 

Área
Eletrodomésticos 

Problema Resumido
Necessidade de análise, escrita e refinamento de requisitos de software para um projeto de desenvolvimento de uma plataforma de gestão de performance. 

Solução Resumida
A Visionnaire apontou um Squad Ágil de especialistas que trabalharam de forma colaborativa com a Britânia, promovendo aumento de produtividade e, ao mesmo tempo, diminuição de custos. 

Resultados
Com o Squad Ágil montado pela Visionnaire, a Britânia pôde contar com uma equipe especializada e rápida para a análise, a escrita e o refinamento de requisitos de software para seu projeto de plataforma de gestão de performance. 

A equipe montada pela Visionnaire se encarregou de todos os aspectos englobados pela análise e pelo refinamento de requisitos, como identificação, documentação e validação das necessidades e expectativas em relação a um sistema em desenvolvimento. Assim, todos os requisitos relevantes foram abordados e compreendidos por todos os envolvidos antes da etapa do desenvolvimento em si. 

O resultado do extenso trabalho foi registrado em um detalhado documento de visão de sistema, bem como um documento de requisitos de negócio, para os quais foram coletadas, analisadas e definidas as necessidades do levantamento de requisitos para a Britânia, mais precisamente para a equipe de Recursos Humanos da empresa.

Em suma, a Visionnaire proporcionou à Britânia aumento de produtividade e, ao mesmo tempo, diminuição de custos por meio de uma equipe altamente especializada em desenvolvimento de software e focada na entrega com processos ágeis e baseados na nuvem, além do uso de Scrum e Sprints semanais. 

Tecnologias
A Visionnaire atua no desenvolvimento de software há mais de 28 anos e, em todos esses anos, utilizou vários processos de desenvolvimento de sistemas, adequando-se às necessidades de seus clientes. 

O processo principal usado pela Visionnaire é o Scrum, seguindo a filosofia Ágil com execução de Sprints (que podem ser semanais ou quinzenais), tudo isso com o uso intenso de ferramentas na Nuvem (para a parte do processo em si, usamos fortemente os produtos da plataforma Atlassian, nesse caso, principalmente, o Confluence é usado para documentação integrada de sistemas, bem como das plataformas baseadas em Git, como GitLab e GitHub). 

A Visionnaire usou por muito tempo (e ainda usa em boa parte dos clientes) o Unified Process, seguindo os conceitos de Gestão de Projetos do PMI PMBok (Project Management Institute, Project Management Body of Knowledge), mais recentemente com adequação aos Processos Ágeis e Scrum

Nos últimos anos, a filosofia de desenvolvimento ágil baseada em Scrum tem ganho muita aderência de empresas em todo o mundo, e a Visionnaire vem implantando em seu processo de desenvolvimento essa filosofia de desenvolvimento ágil. Na maioria dos casos, por sermos uma fábrica de software e nos adequarmos aos processos de desenvolvimento de nossos clientes, o Scrum não é usado, mas o sugerimos quando é possível. 

Para análise e projeto de sistemas, usamos toda a filosofia UML (Unified Modeling Language) da OMG (Object Management Group), tanto com o uso de ferramentas software livre quanto com o uso de ferramentas da IBM/Rational (a Visionnaire é parceira de desenvolvimento da IBM e conta com todas as ferramentas). 

Como software de controle de versão e gerência de configuração, usamos as plataformas baseadas em Git, como Atlassian Bitbucket, GitHub ou GitLab. Para os projetos com aderência a Scrum, usamos como gerência de configuração, planejamento e gestão de projetos o Atlassian Jira integrado ao Git (com Sourcetree, GitKraken ou linha de comando). 

Para documentação usamos o Atlassian Confluence. Para outras atividades do processo de desenvolvimento, usamos Atlassian Wiki. Para tarefas/atividades administrativas usamos o Trello e o Jira. Usamos ferramentas de comunicação como Slack em todas as áreas. 

Para prototipação usamos Balsamiq e Mockflow (além das próprias ferramentas de prototipação de alguns IDEs como a do Xcode para sistemas Apple). Como IDEs (Integrated Development Environment) usamos o Eclipse, Visual Studio, Visual Studio Code, Sublime Text, Xcode, entre outros. 

Para monitoramento de sistemas em datacenters e gerenciamento do ciclo de aplicação (ALM), usamos o New Relic. Como datacenters em sistemas desenvolvidos pela Visionnaire para clientes, os quais nós mantemos, usamos AWS – Amazon Web Services, Google Cloud, Azure, Weblink, Emmex e servidores próprios (escolhendo a solução mais adequada para cada caso). Especialmente quando possível utilizar plataformas na nuvem mais avançadas, como o AWS, da Amazon, a Visionnaire explora as vantagens da plataforma, como o desenvolvimento de sistemas em arquitetura de microsserviços (filosofia Serverless), bancos de dados distribuídos e a integração de sistemas através de APIs REST. A plataforma AWS é uma das melhores plataformas disponíveis para esse fim, podendo disponibilizar balanceamento de carga dos microsserviços (load balancing), bancos de dados poderosos como Redshift e Aurora e a possibilidade de executar código sem provisionar ou gerenciar servidores do AWS Lambda. A solução na nuvem do Google (Google Cloud Platform) é fortemente usada em alguns clientes também. 

Para clientes mais atualizados nos conceitos de CI e CD (Continuous Integration e Continuous Delivery), utilizamos o GitLab e muita automatização do processo via Scripts YAML, tudo isso com alto uso de microvirtualização com uso de Docker e Kubernetes. 

Mas é importante ressaltar que, em todos os casos, prioritariamente, adaptamo-nos às necessidades e ferramentas de nossos clientes, pois somos uma fábrica de software com quase três décadas de história.

Problema Detalhado
Estabelecida em 1956 em Curitiba, capital do Paraná, a Britânia começou suas operações fabricando fogões, fogareiros e móveis de metal, antes de ampliar para incluir eletrodomésticos, cafeteiras, sanduicheiras e ventiladores em sua linha de produção. Hoje, trata-se de uma das principais empresas no setor de eletroportáteis. 

No começo de 2020, a Britânia estava desenvolvendo uma plataforma de gestão de performance e necessitava uma consultoria para análise e refinamento de requisitos de software para o projeto. A análise e o refinamento de requisitos são etapas cruciais no desenvolvimento de sistemas de software, fundamentais para o sucesso de um projeto de software, garantindo que o produto final seja funcional, de alta qualidade e alinhado com as expectativas dos stakeholders

A análise de requisitos envolve identificação, documentação e validação das necessidades e expectativas das partes interessadas em relação ao sistema que será desenvolvido. Essa etapa garante que todos os requisitos relevantes sejam compreendidos e que qualquer ambiguidade ou inconsistência seja resolvida antes de avançar para a fase de design e implementação. 

O refinamento de requisitos, por sua vez, é o processo de detalhar e especificar ainda mais os requisitos identificados durante a análise. Isso pode incluir a decomposição de requisitos gerais em requisitos mais específicos, a definição de critérios de aceitação claros e a priorização de requisitos com base em sua importância e impacto no projeto. O refinamento é um processo iterativo que pode continuar ao longo do ciclo de vida do desenvolvimento, adaptando-se às mudanças nas necessidades das partes interessadas e nas condições de negócio. 

A importância dessas etapas reside em diversos fatores, a saber alguns deles:

Redução de riscos: a análise e o refinamento de requisitos ajudam a identificar cedo potenciais problemas e conflitos no processo de desenvolvimento, reduzindo o risco de retrabalho e de não atendimento das expectativas dos usuários finais; Clareza e comunicação: esses processos promovem uma melhor comunicação entre as partes interessadas e a equipe de desenvolvimento, assegurando que todos tenham uma compreensão comum dos objetivos e funcionalidades do sistema; Eficiência no desenvolvimento: requisitos bem definidos facilitam a criação de um design mais preciso e a implementação eficiente, uma vez que os desenvolvedores têm diretrizes claras a seguir; Qualidade do produto: um sistema desenvolvido com base em requisitos bem analisados e refinados tende a ser mais alinhado com as necessidades reais dos usuários, resultando em maior satisfação e melhor usabilidade. 

Solução Detalhada
A Visionnaire é uma das empresas pioneiras em oferecer para seus clientes a opção de contratação de uma solução completa baseada em processos ágeis. Desde a montagem da equipe, passando pelos processos bem definidos e pelas ferramentas ágeis na nuvem, a Visionnaire ajuda seus clientes a entrarem para mundo do desenvolvimento de software ágil e moderno. 

Seguindo as melhores práticas do Vale do Silício, a Visionnaire oferece:

Equipe especializada de desenvolvimento de software que atende às demandas de talentos profissionais dos clientes; Processo ágil e baseado na nuvem com foco na entrega; Uso de Scrum e entregas com Sprints semanais ou quinzenais visando a aceleração dos projetos; Integração de Desenvolvimento ( Dev) e Operações ( Ops), entregando a solução completa de DevOps para nossos clientes; Uso de ferramentas na nuvem 100% digitais para acompanhamento dos projetos; Uso de tecnologia de software modernas como Arquitetura de Microsserviços, Virtualização, Integração Contínua e Entrega Contínua; Experiência em mais de 28 anos de desenvolvimento e entrega de projetos de sucesso com tecnologias modernas; Tudo isso permitindo aumento de produtividade de diminuição de custos nos projetos para nossos clientes.

A importância dos Squads Ágeis no desenvolvimento de software reside na sua capacidade de aumentar a flexibilidade, velocidade e colaboração. Eles permitem uma rápida adaptação às mudanças nos requisitos, garantem a entrega contínua de valor aos clientes e promovem um senso de propriedade e responsabilidade entre os membros da equipe. Essa abordagem leva a software de maior qualidade e ciclos de desenvolvimento mais eficientes. 

A Visionnaire apontou rapidamente um Squad Ágil para se dedicar a esse projeto, ou seja, uma equipe multifuncional que trabalhou de forma colaborativa para suprir as necessidades da Britânia. Nos Squads Ágeis formados pela Visionnaire, cada equipe inclui membros com diversas habilidades, permitindo-lhes lidar com todos os aspectos do processo de desenvolvimento de software, desde o planejamento até a implantação. 

A equipe montada pela Visionnaire teve contato frequente com funcionários da Britânia, o que incluiu reuniões presenciais com usuários do sistema em desenvolvimento, o que foi de suma importância para se conduzir uma análise profunda e chegar a um documento extenso e bem detalhado. 

Este projeto teve seu escopo híbrido, ou seja, uma abordagem balanceada que combina o melhor dos métodos tradicionais e ágeis, promovendo tanto a previsibilidade e o controle quanto a flexibilidade e a adaptabilidade. Conceitos das abordagens tradicionais e ágeis foram combinados para a definição e gerenciamento do escopo do projeto. Isso possibilitou aproveitar os benefícios de ambas as metodologias para melhor atender às necessidades específicas de um projeto. 

Assim, seguindo uma abordagem de escopo fechado, um planejamento inicial foi detalhado a fim de definir as principais funcionalidades e requisitos do sistema, o que forneceu uma visão clara dos objetivos e das expectativas do projeto desde o início. Ao mesmo tempo, seguindo conceitos de abordagem ágil, o projeto inicial incorporou ciclos de desenvolvimento curtos e iterativos (Sprints) para que partes do escopo fossem ajustadas conforme o avanço do projeto, o que possibilitou a adaptação às mudanças nas necessidades do cliente e às novas descobertas técnicas. 

O escopo híbrido também permitiu entregas incrementais de funcionalidades, proporcionando feedback contínuo dos e permitindo ajustes rápidos, e combinou práticas rígidas de controle de mudanças com a flexibilidade ágil, garantindo que as alterações no escopo fossem geridas de forma estruturada, mas sem comprometer a capacidade de adaptação. 

Apresentação
Apresentação do Caso de Sucesso  

Panfleto
Panfleto do Caso de Sucesso


Assuntos relacionados a:
Fábrica de Software   UML   Análise de Requisitos   Desenvolvimento de Sistemas   Eclipse   Unified Process   Scrum   Visual Studio   Subversion   Datacenters   Documentação   Apple   Slack   Jira   Cloud   REST   Nuvem   Azure   GitLab   OMG   Docker   Unified Modeling Language   Object Management Group   Amazon Web Services   google cloud platform   Google Cloud   Microvirtualização   Kubernetes   IBM   Sprints   Atlassian   Produtividade   Xcode   Redução de Custos   Redshift   Emmex   Weblink   Britânia   Refinamento de Requisitos   Squad Ágil   Equipe Especializada   Identificação   Validação   Filosofia Ágil   Gestão de Projetos   PMI PMBok   Project Management Institute   Project Management Body of Knowledge   Rational   Bitbucket   SVN   Bugzilla   SourceTree   GitKraken   Confluence   Wiki   Trello   Balsamiq   Mockflow   Integrated Development Environment   Visual Studio Code   Sublime Text   ALM   New Relic   Serverless   Bancos de Dados Distribuídos   Balanceamento de Carga   Load Balancing   Aurora   Continuous Integration   Continuous Delivery   YAML