5 pontos por GN⁺ 2024-03-14 | Ainda não há comentários. | Compartilhar no WhatsApp

Estimativa de projetos de software: decompondo tarefas

  • Ao planejar um projeto de software, é importante definir claramente a lista de tarefas.
  • O processo de decompor tarefas pode parecer intuitivo, mas é preciso passar por etapas concretas.
  • O processo de decomposição de tarefas inclui dividir o projeto nas tarefas que o compõem e definir cada tarefa em detalhe.

Decomposição de tarefas por meio de um exemplo

  • O processo de decomposição de tarefas é demonstrado por meio do exemplo de criar um rastreador pessoal de streaks.
  • O rastreador de streaks acompanha atividades ao ar livre e é parecido com o app Streaks, mas inclui várias opções de atividades externas e o recurso de streak freeze do Duolingo.

Primeira tentativa

  • Começa-se com um esboço para visualizar o que será criado.
  • No caso de um projeto pessoal, um esboço simples pode ser suficiente, mas, quando é necessário delegar tarefas ou estimar tempo, é preciso uma decomposição de tarefas mais detalhada.

Segunda tentativa

  • O planejamento é expandido de uma única tarefa para seus componentes, considerando dependências, mas ainda sem se preocupar com o tamanho ou o escopo das etapas.
  • É criada uma lista de tarefas como modelagem de dados, visualização de calendário, calendário interativo, cálculo e exibição da streak atual e implementação do streak freeze.

Terceira tentativa

  • Etapas maiores são divididas em componentes menores e mais detalhes são adicionados.
  • Tarefas como modelagem de dados, visualização estática de calendário, visualização dinâmica de calendário semanal, cálculo e exibição de streaks e streak freeze são definidas de forma mais granular.

Processo de decomposição de tarefas

  • A decomposição de tarefas é um processo interativo: pensa-se em uma tarefa grande, registra-se e depois ela é dividida em etapas menores.
  • Verifica-se se cada tarefa está suficientemente definida; se não estiver, o algoritmo é repetido para dividi-la com mais detalhe.

O que é uma tarefa?

  • Uma tarefa significa algo suficientemente definido, que inclui um trabalho completo e produz uma mudança.
  • Uma tarefa “suficientemente definida” precisa de uma visão clara, e uma tarefa “completa” deve incluir todo o trabalho necessário.

O que é uma tarefa suficientemente definida?

  • A pessoa que executa a tarefa deve conseguir entender a mudança desejada, compreender como será o “concluído” e definir todas as etapas para chegar a esse “concluído”.

Isso é uma habilidade e exige prática

  • Decompor tarefas é uma habilidade que evolui com a prática.
  • Para desenvolvedores experientes, isso pode parecer intuitivo, mas para quem tem menos experiência pode ser difícil.
  • É importante pedir planejamento de projetos em um ambiente de aprendizagem seguro, decompor as tarefas e fornecer feedback.

Resumo do algoritmo de decomposição de tarefas

  • Comece com um ponto de partida, uma lista de tarefas, um esboço ou uma ideia.
  • Decida se cada item está suficientemente definido e, se a resposta for “não”, decomponha ainda mais a tarefa.
  • Repita até que todas as tarefas estejam suficientemente decompostas.

Bônus sobre estimativa de projetos

  • Como a série é sobre estimativas, a estimativa do projeto também é concluída.
  • A carga real de trabalho pode ter sido superestimada, o design pode ser simplificado e o algoritmo de freeze pode conter bugs.

Opinião do GN⁺

  • A decomposição de tarefas é uma habilidade central em gestão de projetos e desenvolvimento de software, e este artigo pode ajudar engenheiros de software iniciantes a entender a importância e o método da decomposição de tarefas.
  • A decomposição de tarefas é essencial para definir com clareza o escopo do projeto e gerenciar tempo e recursos com eficiência.
  • Como este artigo explica o processo de decomposição de tarefas passo a passo, ele oferece um bom exemplo de referência para aplicação em projetos reais.
  • A precisão da decomposição de tarefas pode ter grande impacto no sucesso do projeto, e é importante minimizar erros ou omissões que possam surgir nesse processo.
  • Ferramentas de gestão de projetos com funcionalidades semelhantes incluem Jira, Trello e Asana, que podem ser usadas para visualizar e gerenciar o processo de decomposição de tarefas.

Ainda não há comentários.

Ainda não há comentários.