Definir claramente o escopo de projeto de software ajuda a gerenciar efetivamente as expectativas das partes interessadas e garante que todos os elementos e funcionalidades estejam alinhados com os objetivos, aumentando as chances de sucesso.
Neste artigo, você vai saber os princípios de um escopo tradicional básico, a sua importância para projetos de desenvolvimento de software e também como funciona um “escopo ágil”.
O que é o escopo de projeto de software
Um escopo de projeto de software ajuda a distinguir o que está e o que não está envolvido no projeto e controla o que é permitido ou o que deve ser removido à medida que o trabalho é executado.
Além disso, estabelece fatores de controle e identificação de elementos que podem resultar em mudanças imprevistas durante o Ciclo de Vida do Projeto de Software – os temidos desvios que podem levar ao fracasso.
A partir do escopo, é possível determinar com certa exatidão as metas, os prazos e as entregas para atingir os objetivos do projeto sem atrasos de cronograma, desperdícios de recursos e de tempo ou retrabalho.
Uma vez aprovado, o escopo se torna um ponto de referência e a luz orientadora do projeto, mantendo as partes interessadas informadas e as equipes de desenvolvimento focadas.
Sem o escopo do projeto não é possível ter uma ideia de quanto tempo, custo ou mão de obra estão envolvidos no seu desenvolvimento.
Ou seja, o escopo forma a base para todas as decisões que um gerente de projeto e sua equipe devem tomar durante o trabalho de criação do software.
Como definir um bom escopo de projeto de software?
Um escopo bem definido pode ajudar a evitar problemas comuns, como:
- Mudanças constantes de requisitos.
- Atrasos no cronograma.
- Um resultado final diferente do que o cliente esperava.
- Ultrapassar os limites de orçamento.
O escopo do projeto ajuda também a distinguir o que está e o que não está envolvido no projeto, e controla o que é permitido ou o que deve ser removido à medida que o trabalho é executado.
Como uma ferramenta de comunicação e de diretrizes, o escopo deve ser desenvolvido especificamente para cada projeto, com particularidades e especificações únicas.
A estrutura básica do escopo de projeto de software pode ser construída assim:
1) Fase inicial
É quando se determina o perfil de negócios do cliente, os objetivos e o problema que o produto de software deverá resolver.
2) Planejamento
Aqui o projeto é delimitado. Geralmente, é um processo iterativo entre a equipe do projeto e o cliente. É fundamental chegar a um acordo sobre o escopo antes de passar para a próxima fase, para que todos os envolvidos tenham um entendimento compartilhado de cada elemento do projeto.
3) Execução
Nesta fase, as entregas são desenvolvidas e podem ou não ser concluídas. Por exemplo, o software pode necessitar de ajustes mesmo após a entrega. O escopo do projeto funciona aqui como ponto de referência constante para manter as equipes focadas e gerenciar as expectativas das partes interessadas.
4) Monitoramento
Nesta fase, a progressão do produto passa a ser monitorada continuamente e é aqui que se constata se é necessário ajustar cronogramas, recursos ou o próprio escopo.
5) Encerramento
É a etapa de análise do produto e dos resultados alcançados em relação às metas e objetivos declarados no escopo do projeto, com quaisquer alterações acordadas durante a entrega. Mas nem sempre quer dizer que o projeto termine neste ponto. Como veremos adiante, o escopo pode ser “vivo”.
Triângulo de gerenciamento do projeto
Cada projeto se equilibra sobre três variáveis, as quais determinam a qualidade do projeto: tempo, dinheiro e escopo. Você não pode alterar um sem afetar pelo menos um dos outros. Por exemplo, se o escopo muda, isso afeta os aspectos de tempo e dinheiro.
Assim, se o projeto começar a apresentar desvios ou dificuldades, é importante verificar se os lados do Triângulo do Projeto estão sendo bem equilibrados e gerenciados.
O Desvio de Escopo: “Scope Creep”
Quando os entregáveis excedem o escopo do projeto, acontece o temido desvio de escopo (“scope creep”), que nada mais é do que trabalho adicional que a equipe de desenvolvimento de software não esperava ou para o qual não estava preparada, causando atrasos, custos adicionais e até mesmo o total desmoronamento do projeto.
Para evitar o desvio de projeto, pode-se criar uma Declaração do Escopo de Projeto e compartilhá-la com todos os interessados na fase inicial, definindo as hipóteses (premissas necessárias para fornecer uma estimativa do custo e do cronograma), objetivos, prazos, limites e restrições e o que será produzido. Em resumo, é um documento que contém o que será incluído no projeto e o que não será.
É importante saber que a Declaração de Escopo de Projeto não é unanimidade na área de desenvolvimento de software por pelo menos dois motivos:
• É rígida, no sentido de que sua eficiência depende da obediência praticamente cega às suas restrições. Por isso, é associada em geral a projetos de escopo fechado.
• Não contempla a capacidade de responder rápido a mudanças ou retornar a um ponto anterior para reajustar algo que não funcionou, como ocorre em projetos desenvolvidos através de Metodologias Ágeis, da abordagem Scrum e dos valores e princípios do Manifesto Ágil.
Os 4 valores do manifesto ágil
Assim, pode-se dizer que existe um Método Tradicional de Escopo de Projeto de Software, que segue as diretrizes da Declaração de Escopo de Projeto do PMBOK®, e um Escopo Ágil, que adota Metodologias Ágeis de Desenvolvimento de Software (como o Design Sprint), aceitando mudanças de requisitos mesmo no final do projeto – um escopo mutável e “vivo”, como você verá a seguir.
Vale mencionar que o Project Management Body of Knowledge – PMBOK® é um guia de boas práticas em gerenciamento de projetos com diretrizes, regras e características que abrangem todos os setores, definido pelo Project Management Institute (PMI). É uma obra de referência também em desenvolvimento de projetos de software. Mas, exatamente por ser genérico e um tanto inflexível, não contempla a entrega de valor ao cliente/negócio no menor tempo possível, de maneira incremental, dinâmica e adaptável, como acontece nas Metodologias Ágeis.
Porém, as determinações monolíticas do PMI começaram a mudar em 2019, quando uniu forças com a Agile Alliance® para criar o Agile Practice Guide, um guia de práticas ágeis que tem a intenção de desenvolver a compreensão das práticas ágeis no gerenciamento de projetos. A 6ª edição do PMBOK® já faz referência ao guia.
“Hoje, o PMI entende que precisa incorporar o contexto ágil em sua proposta de gestão de projetos, e passou a oferecer materiais complementares para apoio”, observa Beatriz Drozino, coordenadora de TI da UDS Tecnologia.
Afinal, o que é um Escopo Ágil?
No Ágil, é um exercício contínuo para promover o desenvolvimento de software sustentável. Isso significa que as mudanças são bem-vindas, dado que o planejamento é realizado constantemente durante o projeto.
Aqui, o escopo é “vivo” e adaptável, moldado ao contexto dinâmico do projeto no momento atual. Se o negócio do cliente sofrer alteração, é possível incluir, excluir ou modificar itens em função desta nova realidade.
Nesse tipo de escopo, os prazos e valores podem ser redefinidos. Assim, não há um caminho rígido: é possível adaptar os processos ao longo da jornada, descobrindo e ajustando as entregas por etapa. É uma construção que se faz junto com o cliente e varia dependendo do caso.
A UDS, por exemplo, usa diversas Metodologias Ágeis para definir o produto que será desenvolvido e qual solução é mais adequada para a necessidade do cliente, com o objetivo de prototipar, testar e validar um produto (MVP) em 5 dias.
Em síntese, um escopo ágil é um backlog de especificações que vai sendo exercido e ajustado ao longo do processo de criação do produto.
Esse backlog de itens tem maturidade e granularidade menores que as definições do escopo tradicional. E é justamente aí que reside a beleza desse tipo de escopo de projeto de software. Ele evolui contínua e rapidamente até chegar a um entregável de real valor para o cliente.
No Waterfall, por exemplo, a solução seria desenhada em detalhes e de forma completa antes de se iniciar a execução, em um uma sequência de etapas que não avançam até a fase anterior ser concluída. Imagine criar uma API de serviços inteira para somente depois pensar na aplicação que vai utilizá-la? O risco de errar é grande.
Tipos de abordagens
Para entender melhor, veja na tabela a seguir as diferenças entre as abordagens Ágil e Tradicional.
Diferenças entre as abordagens Ágil e tradicional
Abordagem
Ágil
Tradicional
Ênfase
Pessoas
Processos
Domínio
Imprevisível/Exploratória
Previsível
Documentação
Mínima, conforme necessário
Completa
Garantia de Qualidade
Centrada no cliente
Centrada no processo
Estilo do Processo
Iterativo
Linear
Organização
Auto organizada
Gerenciada
Planejamento antecipado
Baixo
Alto
Perspectiva para a mudança
Adaptabilidade
Sustentabilidade
Priorização de requisitos
Com base no valor de negócio e regularmente atualizada
Fixados no plano do projeto
Estilo de gerenciamento
Descentralizado
Autocrático
Liderança
Colaborativa, liderança servidora
Comando e controle
Mensuração e Desempenho
Valor de negócio
Conforme com o plano
Retorno sobre o investimento
Início / Durante o projeto
No final do projeto
Riscos de Projeto: como gerenciar
É claro que é preciso confiar nas equipes, mas também é preciso ter evidências do progresso real. Para evitar riscos de escopo, é recomendável acompanhar e revisar o cronograma à medida que o projeto avança.
A matriz de responsabilidade RACI é uma ferramenta que ajuda a otimizar a gestão de projetos, define os papéis dos responsáveis e as expectativas de recursos em um projeto.
Isso porque ela gera um componente visual – geralmente uma tabela – que representa as informações essenciais sobre tarefas, expectativas e atribuições do time envolvido no projeto.
Qual escopo de projeto de software escolher?
No desenvolvimento de software, é comum ouvir que os projetos tradicionais são de escopo fechado e os projetos ágeis são de escopo aberto. Nem sempre é tão simples assim.
Quando o cliente possui clareza sobre o seu problema e sabe a solução mais adequada para resolvê-lo, escolher o escopo fechado pode dar certo, desde que a entrega seja aquela esperada pelo cliente.
Se você busca uma solução perfeitamente adequada ao valor do seu negócio, mesmo que não saiba como alcançá-la, a UDS recomenda a escolha do escopo de projeto de software aberto associado à aplicação de Metodologias Ágeis.
Por que? Como você viu, um escopo ágil pode evoluir com o seu produto.
Lembra do exemplo da API? No modelo de escopo ágil, ela seria testada antes da entrega, reduzindo a zero os riscos de erro de projeto e execução.
Mas, independente de sua escolha, ter um escopo sólido mantém o seu projeto nos trilhos e isso pode evitar desastres financeiros e de tempo. É uma peça crítica do quebra-cabeça do gerenciamento de projetos.
Por isso é tão importante a parceria com uma empresa de desenvolvimento de software experiente, como a UDS. Para que possa avaliar junto com você qual o tipo de escopo de projeto de software é o mais apropriado ao problema a ser resolvido.
Gostou deste conteúdo? Assine nossa newsletter e fique por dentro de insights sobre tecnologia, transformação digital e desenvolvimento de software.