Skip to content

Estratégias de Engenharia de Software

Estratégia Priorizada

  • Abordagem: Híbrida;
  • Ciclo de vida: Iterativo Incremental;
  • Processo: Rapid Application Development (RAD);
  • Framework de Gerenciamento: Kanban;

Quadro Comparativo

Característica Espiral RAD
Abordagem geral Iterativo com foco em análise de risco Iterativo incremental com foco na experiência do usuário e feedback precoce
Estrutura de processos Possui uma estrutura sistemática de suas fases (Planejamento - análise de riscos – desenvolvimento - verificação) Fases bem definidas com alto refino do protótipo através da comunicação com cliente (planejamento -protótipo com testes e refinamento – desenvolvimento - implementação)
Flexibilidade de requisitos Maior flexibilidade quando comparado com cascata Alta flexibilidade e adaptação de acordo com feedbacks do cliente
Colaboração com cliente Participação ativa, porém, menos intensa que no modelo RAD. No processo espiral, a colaboração com cliente ocorre em 3 momentos principais, que seriam na definição dos requisitos, análise de risco e na avaliação final da iteração Participação ativa do cliente no processo de desenvolvimento
Complexidade do processo Formal com fases sequenciais, documentação maior e muitas análises de risco Mais simples, com comunicação atuando como substituto a documentação extensiva
Qualidade técnica Qualidade assegurada por testes unitários, de integração e aceitação Qualidade assegurada por testes automatizados e validação constante do usuário
Práticas de desenvolvimento Estrutura formal com práticas técnicas específicas dentro do processo de desenvolvimento Estrutura bem definida, porém, adaptativa, priorizando prototipagem rápida
Adaptação ao projeto Conecta UnB Ideal para projetos com maior documentação e detalhamento no começo do processo, sem a necessidade de reuniões constantes Ideal para projetos com comunicação constante e escopo relativamente pequeno e previamente conhecido
Documentação Documentação mais robusta e evolutiva ao longo dos ciclos, começando com descrições de alto nível e refinando-se progressivamente. O nível de formalidade da documentação pode ser adaptado com base nos riscos identificados. Documentação mínima, criada apenas quando necessário para deixar mais claro e dar suporte futuro, caso necessário.
Controle de qualidade Controle de qualidade ao final de cada espiral através de análise de riscos e avaliações Controle de qualidade constante com validação do cliente
Escalabilidade Para projetos grandes, complexos e de alto risco Ideal para projetos curtos e escopo modular
Suporte a equipes de desenvolvimento Suporta equipes maiores em projetos complexos e de alto risco, exigindo papéis mais analíticos e bem definidos, pois requer um controle rigoroso focado na avaliação contínua de riscos a cada iteração de desenvolvimento. Suporta equipes menores e multidisciplinares, com papéis mais flexíveis e alta colaboração com o cliente, permitindo grande agilidade na entrega através de prototipagem rápida e iterações curtas (timeboxing).

Justificativa

A estratégia priorizada pelo grupo foi a utilização de uma abordagem híbrida com ciclo de vida iterativo incremental usando o processo Rapid Application Development (RAD) e o framework Kanban para o gerenciamento da equipe e das atividades a serem desenvolvidas. Essa escolha foi definida considerando:

  • Restrições de tempo da disciplina:
    • Com o prazo curto do semestre somado as outras demandas acadêmicas dos integrantes da equipe e dos clientes, o clico iterativo incremental aliado ao RAD e o kanban permite maior flexibilidade e controle de entrega, com adaptações rápidas diante das mudanças nos requisitos e restrições de tempo.
  • Perfil dos stakeholders:
    • O perfil dos stakeholders é diversificado apesar de estarem inseridos no mesmo ambiente, e possuem diferentes necessidades dentro do contexto da plataforma. Diante disso, a comunicação proporcionada pelo RAD permite que os requisitos sejam validados visualmente de forma mais assertiva e fácil.
  • Priorização de uma validação constante:
    • Sendo o Conecta UnB uma plataforma voltada para utilidade pública e engajamento da comunidade acadêmica, o maior risco é a falta de adesão e usabilidade da plataforma. A estratégia eleita ataca justamente esse risco focando intensamente na experiência do usuário, possibilitando que os clientes participem da concepção da plataforma.
  • Equipe enxuta:
    • O grupo é formado por apenas 6 integrantes que precisam atuar de forma otimizada, a abordagem escolhida proporciona essa flexibilidade necessária para o desenvolvimento, realizando uma documentação estratégica e focando na entrega de valor para os stakeholders. Além disso o kanban não exige papéis rígidos ou cerimônias pesadas, focando na visualização do fluxo de trabalho e no trabalho em progresso.