Skip to content

3. ESTRATÉGIAS DE ENGENHARIA DE SOFTWARE

3.1 Estratégia Priorizada

  • Abordagem: Ágil
  • Ciclo de Vida: Ágil
  • Processo: Scrum/XP

3.2 Quadro Comparativo

O Quadro, a seguir, apresenta algumas características que podem ser relacionadas ao RAD e ao ScrumXP, visando auxiliar no entendimento e justificativa da escolha do processo mais adequado ao caso da Meu Capilar, já que os dois são “parecidos” em certos aspectos.

Características RAD Scrum/XP
Abordagem geral Iterativa e incremental, com foco em desenvolvimento rápido e prototipação contínua. Ágil com entregas rápidas(Sendo incrementos ou não) e feedback contínuo.
Foco em arquitetura PMenor foco em uma arquitetura robusta no início. A arquitetura evolui com base em protótipos e interação com o cliente. Menor foco na arquitetura inicialmente, com evolução da arquitetura ao longo do tempo e conforme a necessidade.
Estrutura de Processo Baseado em fases como planejamento de requisitos, prototipagem, testes e implementação. Foco em velocidade e iteração com o cliente. Focado em sprints curtos e flexíveis (2-4 semanas) com entregas incrementais e adaptação contínua durante o projeto.
Flexibilidade de requisitos Bastante flexibilidade, com mudanças frequentes durante a prototipação. Os requisitos evoluem com o tempo. Alta flexibilidade para mudanças contínuas de requisitos a cada sprint. Muda conforme o feedback frequente do cliente.
Colaboração com cliente Envolvimento intensivo do cliente durante todo o processo, especialmente nas fases de prototipação e feedback. Envolvimento constante do cliente, com feedback ao final de cada sprint, garantindo que os requisitos estejam alinhados
Complexidade do processo Processo menos formal, mas pode se tornar complexo se não houver controle sobre mudanças rápidas. Mais leve e ágil, com menos documentação formal e mais foco na entrega funcional, facilitando a adaptação contínua.
Qualidade Técnica Qualidade depende da rapidez dos ciclos e do envolvimento do cliente. Menor foco em práticas técnicas estruturadas. Alta ênfase na qualidade técnica, com práticas como TDD (Test-Driven Development), pair programming e integração contínua para garantir um código limpo e principalmente funcional durante a maioria do processo.
Práticas de desenvolvimento Uso de prototipação rápida e feedback constante. Pouca ênfase em práticas como TDD ou refatoração contínua. TDD, refatoração contínua, integração contínua e pair programming promovem alta qualidade no código.
Adaptação ao Projeto da Meu Capilar Ideal para projetos de interação constante com o cliente e para equipes com habilidosas na prototipação. Ideal para projetos onde a interação constante com o cliente e a evolução contínua do produto são fundamentais. Adaptável a mudanças frequentes e rápidos ciclos de feedback.
Documentação Documentação mínima, focando mais em protótipos e comunicação direta com o cliente. Minimiza a documentação formal, focando em comunicação e feedback rápido.
Controle de Qualidade A qualidade é verificada por meio de testes e revisões rápidas, com base em protótipos. Embutido nas práticas XP (TDD, integração contínua), garantindo testes a cada nova funcionalidade.
Escalabilidade Mais indicado para projetos de pequeno a médio porte, onde mudanças rápidas são possíveis. Escalável, mas mais indicado para equipes menores e médias.
Suporte a Equipes de Desenvolvimento Suporta equipes pequenas com alta colaboração e rapidez. Menor definição de papeis formais. Suporta equipes menores e colaborativas, com papeis mais flexíveis.

3.3 Justificativa

Com base na análise comparativa entre os modelos RAD e Scrum XP, optamos pela utilização do Scrum XP para o desenvolvimento do produto Meu Capilar, considerando os seguintes pontos:

  • Adaptação Contínua e Entregas Frequentes: O ScrumXP foi escolhido por sua abordagem ágil, que permite entregas rápidas por meio de sprints curtos e constantes ciclos de feedback com o cliente. Essa característica é essencial para o projeto Meu Capilar, que pode sofrer alterações frequentes conforme o uso e a percepção dos usuários. Ao final de cada sprint, é possível validar funcionalidades, identificar melhorias e adaptar o sistema com agilidade, garantindo que o produto esteja sempre alinhado às necessidades reais do público.
  • Qualidade Técnica e Eficiência no Desenvolvimento: Diferentemente do RAD, que prioriza a prototipação rápida com menor foco em práticas técnicas estruturadas, o ScrumXP incorpora ferramentas como integração contínua, refatoração e pair programming. Essas práticas não apenas elevam o nível de qualidade do código desde os primeiros ciclos de desenvolvimento, como também contribuem para a redução de erros, melhoria da manutenibilidade e robustez do sistema a longo prazo. No prazo atual do trabalho, entregar um MVP e código rodando é mais importante que design.
  • Compatibilidade com a Estrutura do Projeto: ScrumXP se mostra mais compatível com a natureza do projeto Meu Capilar, tanto pelo seu suporte a equipes pequenas e colaborativas quanto pela flexibilidade na gestão de requisitos. A leveza do processo, aliada a uma estrutura clara de papeis e entregas, facilita o trabalho do time e promove uma comunicação mais eficiente com o cliente. As práticas da XP são mais vantajosas para o projeto no geral.