ferramentas

Ferramentas que auxiliam na gestão de projetos

Planejamento em projetos é algo essencial e fazer uma gestão bem feita exige tempo para planejar e dedicação para acompanhar todo o andamento do projeto. Existem diversas ferramentas que ajudam no dia a dia do gerente de projetos e da equipe, fazendo com que o projeto seja melhor gerenciado, bem como o acompanhamento de tarefas e a gestão da equipe.

Esses tipos de ferramentas voltadas à gestão de projetos vêm para nos ajudar na hora de planejar, executar e documentar o projeto, fazendo com que consigamos otimizar os processos alinhando-os as metas, gerindo o tempo – ou seja, fazer as entregas dentro do prazo – e principalmente que consigamos ser bem mais produtivos.

Vamos abordar neste artigo algumas ferramentas – em sua maioria gratuita – que você pode utilizar para gerir seus projetos.

Trello

O Trello é uma ferramenta bem conhecida para gestão de projetos. Tem sua versão gratuita e é também muito utilizado em projetos universitários, onde os alunos utilizam para gerir suas tarefas, prazos, enfim, gerir seu projeto acadêmico.

O Trello funciona através de quadros, cartões e checklists onde você consegue ver o que cada um está fazendo, assim pode organizar melhor as tarefas de cada um, saber o que está dentro do prazo, se tem alguém sobrecarregado… Com os cartões, você pode representar cada atividade, colocando nela a pessoa responsável, data de entrega, deixando tudo bem visível do que deve ser entregue. Você pode fazer todo esse acompanhamento de forma visual e intuitiva, além dele ser bem fácil de ser manuseado.

Kanban - Fundamentos
Curso de Kanban - Fundamentos
CONHEÇA O CURSO

Slack

O Slack é uma plataforma de comunicação que você pode utilizar internamente na empresa. Com o Slack você consegue fazer com que todos os integrantes do time possam manter contato, fazendo com que a equipe tenha uma integração muito melhor. É gratuito, online e possui uma interface bem simples. Com ele você pode criar diversos canais, abertos ou privados, onde essas mensagens estarão visíveis somente para os participantes daquele canal. É uma forma de trocar mensagens e arquivos mais rapidamente, sem fazer o uso de e-mails ou reuniões desnecessárias.

Microsoft Project

O MS Project é uma ferramenta paga de gestão de projetos da Microsoft. Ele possui diversos recursos para que você consiga gerir e manter o controle de seus projetos de forma simplificada. Com ele você consegue gerenciar os três principais fatores de um projeto: tempo, recurso e escopo. Além de tarefas mais simples como acompanhar o progresso de atividades e afins, ele consegue fazer cronogramas bem detalhados, verificar cargas excessivas de trabalhos dos recursos, gerar relatórios e gráficos, fazer o monitoramento de recursos, maior controle sobre os recursos de pessoal e financeiro, e mais uma infinidade de coisas. Ele é um dos mais completos desse segmento e você pode conferir neste artigo tudo mais o que ele tem a oferecer.

Uma recente novidade do Project é que agora ele integra o método Agile, dando suporte ao Scrum, Kanban e fluxos de trabalho personalizados.

Microsoft Project Intermediário
Curso de Microsoft Project Intermediário
CONHEÇA O CURSO

Google Drive

O Google Drive é um serviço de armazenamento em nuvem da Google. É uma forma eficiente de fazer troca de arquivos e informações, pois eles podem ser compartilhados de forma eficiente e fácil através de contas do Google. Você pode definir com quem irá compartilhar cada arquivo e o nível de permissão que essa pessoa irá ter, onde ela pode somente visualizar ou editar o arquivo. Você pode compartilhar documentos, apresentações, planilhas, anotações, formulários, vídeos… ao todo são mais de 30 tipos de arquivos que podem ser exibidos.

Prezi

Em projetos é muito comum termos que fazer apresentações, seja de dados importantes como também de como está o avanço do projeto. Com o Prezi você cria apresentações de forma dinâmica muito rapidamente, além de ser gratuito, fazendo com que você ganhe tempo. Tem um design profissional, além de ter vários modelos prontos.

Diagnosticando uma aplicação no .NET Core 3.0

Na terceira versão do .NET Core foram introduzidas três ferramentas que permitem analisar o estado de uma aplicação em tempo de execução de forma simples:

  • dotnet-counters;
  • dotnet-trace;
  • dotnet-dump.

Minha aplicação está saudável?

Mesmo que se tenha cuidado e procure criar um bom código, apenas em produção que saberemos exatamente como a aplicação irá se comportar. Às vezes ela pode apresentar algum vazamento de memória ou algum pico inesperado da CPU. Felizmente podemos detectar esses tipos de problemas analisando algumas métricas da aplicação.

Métricas são representações de informações em um intervalo de tempo. No Windows, o .NET Framework gera contadores de performance (perf counters), que fornece algumas métricas das aplicações. Até a versão 2.2 o .NET Core não fornecia nada equivalente, só que na versão 3.0 foi introduzido o EventCounter API.

O EventCounters permite que a aplicação forneça algumas informações sobre o seu estado e através da ferramenta dotnet-counters, essas informações podem ser obtidas em tempo real.

Você pode instalar esta ferramenta como global tool com o comando abaixo:

dotnet tool install --global dotnet-counters --version 1.0.3-preview5.19251.2

E iniciá-la com o comando:

dotnet-counters monitor -p <pid> --refresh-interval 1

Como mostrado abaixo:

Você pode obter mais detalhes desta ferramenta na documentação do repositório dela do Github.

Desenvolvedor ASP.NET Full-Stack
Formação: Desenvolvedor ASP.NET Full-Stack
A formação Desenvolvedor ASP.NET Full Stack da TreinaWeb tem como objetivo abordar as duas principais plataformas dentro do ASP.NET: o ASP.NET MVC, para criação de aplicações web seguindo o padrão MVC/MVW; e o ASP.NET WebAPI, para criação de APIs RESTful que sigam os padrões mais atuais da indústria.
CONHEÇA A FORMAÇÃO

Porque minha aplicação está se comportando desta forma?

Enquanto os contadores de performance ajudam a identificar se a aplicação gerou algum comportamento inesperado, eles não deixam claro o que está errado. Para responder esta questão, podemos coletar informações adicionais com “trace”.

Tracing

Podemos definir “trace” como vestígios que a aplicação gera quando está sendo executada. No sistema isso resulta em registros que descrevem eventos gerados pela aplicação. Esses registros contém o contexto onde os eventos foram gerados, o que nos dá uma ideia melhor sobre o estado do sistema.

Tradicionalmente, o .NET Framework (e frameworks adjacentes, como ASP.NET) gera os “traces” via Event Tracing for Windows (ETW). Já no .NET Core, eles são gerados no ETW no Windows e no LTTng no Linux. No Mac OS X, isso ainda não está disponível.

Na versão 3.0 .NET Core todas as aplicações criam um “pipe” chamado EventPipe que permite a geração dos eventos. Para ter acesso as informações geradas, nesta versão também foi introduzida a ferramenta dotnet-trace.

Assim como a dotnet-counters, esta ferramenta pode ser instalada como uma global tool com o comando abaixo:

dotnet tool install --global dotnet-trace --version 1.0.3-preview5.19251.2

E um “trace” pode ser gerado com o comando:

dotnet-trace collect -p <pid>

Como mostrado abaixo:

No exemplo acima o dotnet-trace é executado com as configurações padrão. Mas você pode obter informações de provedores específicos, como explicado na documentação da ferramenta.

Ao executá-la, será gerado por padrão um arquivo *.netperf, que contém informações dos eventos gerados pela aplicação. Ele pode ser visualizado no perfview caso esteja em um ambiente Windows, ou caso esteja em um ambiente Unix, pode gerar um arquivo .speedscope.json com o atributo --format:

dotnet-trace collect -p <pid> --format "Speedscope"

E visualizá-lo no Speedscope.app:

Porque a minha aplicação “deu pau”?

Em alguns casos, não é possível aferir o que causou o problema da aplicação apenas analisando os eventos gerados, para isso, “process dump” (despejo de processo) pode ser a alternativa.

O “dump” é um registro do estado da memória utilizada pelo processo no momento que ele foi finalizado inesperadamente. Por isso, a análise deste registro é muito utilizada para identificar porque a aplicação foi finalizada ou apresentou algum comportamento inesperado.

Tradicionalmente, se confia no sistema operacional para capturar este registro quando a aplicação é finalizada (e.g. Windows Error Reporting) ou alguma ferramenta como procdump, para captar baseado em um critério.

Só que filtrar apenas as informações pertinentes a uma aplicação .NET Core é um desafio, principalmente em um ambiente Linux. Para ajudar nisso, foi criada a ferramenta dotnet-dump.

Como está em desenvolvimento, ela ainda não é totalmente suportada em todos os sistemas, como mostra a tabela abaixo de recursos:

WindowsMac OS XLinux
Collect×
Analyze××

Assim como as demais, esta ferramenta é uma global tool que pode ser instalada com o comando abaixo:

dotnet tool install --global dotnet-dump --version 1.0.3-preview5.19251.2

E o dump pode ser criado com o comando abaixo:

sudo dotnet-dump collect -p <pid>

No Linux, ele pode ser analisado com o comando abaixo:

dotnet dump analyze <dump-name>

Você pode ver mais detalhes desta ferramenta na documentação do repositório dela do Github.

Concluindo

Assim como a versão 3.0 do .NET Core, no momento essas ferramentas estão em preview, mas já mostram um grande potencial. Quando saíram do preview, devem se tornar ferramentas essenciais de qualquer desenvolvedor .NET Core.