Pular para conteúdo

3. Estratégias de Engenharia de Software

3.1 Estratégia Priorizada

Abordagem de Desenvolvimento de Software: A abordagem que irá guiar o desenvolvimento do produto proposto será a Ágil, que prioriza a flexibilidade, a entrega contínua de valor e a colaboração constante com o cliente para responder rapidamente às mudanças.

Ciclo de vida: O ciclo de vida de desenvolvimento de software a ser utilizado será o Ágil, caracterizado por ciclos curtos de desenvolvimento (iterações) que produzem incrementos funcionais do produto, permitindo adaptação e refinamento contínuos.

Processo de Engenharia de Software: O processo de desenvolvimento de software que será utilizado para a construção do produto proposto será uma combinação de Scrum com práticas de eXtreme Programming (XP). O Scrum fornecerá o framework de gestão (sprints, papéis, cerimônias), enquanto o XP agregará práticas de engenharia focadas na qualidade técnica, para responder aos desafios de escalabilidade e segurança do projeto.


3.2 Quadro Comparativo

CRITÉRIO XP/SCRUM XP/KANBAN
Estrutura de Gestão Prescritiva e estruturada. Organizada em ciclos fixos (Sprints) com rituais definidos (Planning, Daily, Review, Retro). Flexível e adaptativa. Focada em fluxo de trabalho contínuo, otimizado pela visualização e limitação do WIP (Work in Progress).
Papéis e Responsabilidades Papéis claramente definidos: Scrum Master (facilitador/mentor), Product Owner (dono do produto) e Time de Desenvolvimento. Não prescreve papéis. A equipe deve se auto-organizar, exigindo maior maturidade e proatividade.
Suporte à Equipe O Scrum Master fornece suporte e orientação, ideal para equipes que precisam de um processo claro e estruturado. Exige alta disciplina e maturidade para autogerir prioridades e melhorar o processo sem papéis formais.
Frequência de Planejamento e Feedback O planejamento ocorre no início de cada Sprint. O feedback formal sobre o produto ocorre na Sprint Review e sobre o processo na Retrospectiva. O planejamento (replenishment) é contínuo. O feedback pode ocorrer a qualquer momento, mas sem frequência obrigatória.

3.3 Justificativa

A decisão de adotar o processo XP/Scrum em detrimento do XP/Kanban para o desenvolvimento do produto UK CRM é uma escolha estratégica, fundamentada principalmente no perfil da equipe de desenvolvimento, que é jovem e com pouca experiência na área. Embora ambas as abordagens incorporem as mesmas práticas de excelência técnica do eXtreme Programming (XP), a estrutura de gerenciamento que o Scrum oferece é consideravelmente mais apropriada para guiar e amadurecer uma equipe em formação.

O framework XP/Scrum fornece uma estrutura prescritiva, com papéis, rituais e um ritmo de trabalho bem definidos. Essa clareza serve como um suporte essencial para uma equipe júnior, removendo ambiguidades e fornecendo um caminho claro a seguir. O papel do Scrum Master, central no XP/Scrum, é crucial nesse contexto, atuando como um mentor e facilitador dedicado a ensinar os processos, remover impedimentos e proteger a equipe. Em contrapartida, o XP/Kanban exige um nível de maturidade e autogestão a equipe ainda não possui. Sua natureza flexível e a ausência de papéis formais poderiam levar a uma falta de direção e dificuldade na resolução de problemas de processo.