O que é análise de desempenho?
Às vezes referida como criação de perfil, a análise de desempenho relacionada à engenharia de software é simplesmente o processo de avaliar como um determinado programa de software está funcionando. Esse processo normalmente começa com a forma como o programa é carregado e o que acontece quando cada etapa do uso do programa é executada. O objetivo da análise de desempenho é garantir que o programa de software esteja funcionando com a eficiência ideal e identificar e corrigir quaisquer problemas que possam impactar negativamente essa eficiência.
A análise de desempenho também ajuda o engenheiro a ajustar os componentes de uma maneira que ajude o programa a fazer o melhor uso dos recursos disponíveis. Ao avaliar execuções em tempo real, é possível determinar se algo pode ser feito para acelerar uma tarefa ou alterar a quantidade de memória necessária para executar a tarefa sem afetar negativamente a função geral do software. O objetivo final é um programa que funcione sem problemas, rapidamente e funcione sempre que qualquer tarefa for iniciada.
A análise de desempenho é um tipo de análise dinâmica de programa, ou DPA. O DPA se concentra no que acontece quando um programa está sendo executado ativamente, incluindo como os recursos são usados e em que ordem. Isso é diferente da análise de código estático, que tende a se concentrar mais em como o código é escrito e em como é lógica a sucessão de comandos. No entanto, ambos os tipos de análise são elementos comuns para avaliar e refinar o software e a funcionalidade do software.
A história da análise de programas remonta aos primeiros anos da computação. Durante o desenvolvimento dos primeiros “cérebros eletrônicos” da década de 1940, vários métodos foram implementados para testar a eficiência de cada função que um determinado sistema era capaz de executar. À medida que a tecnologia avançava, a metodologia para avaliar o nível de desempenho do software em execução em vários sistemas foi aprimorada e tornou-se um pouco padronizada. Hoje, os arquitetos de sistemas e os criadores de programas de software fazem uso da análise do programa para identificar pontos fortes e fracos inerentes a uma determinada versão de um programa e criar correções para quaisquer problemas. Os dados coletados pela análise de desempenho ajudam a impedir que esses mesmos problemas apareçam em versões posteriores do programa.
O processo real de análise de desempenho ainda pode ser realizado por revisão manual durante a operação ativa de um programa ou concluído automaticamente compilando dados usando um criador de perfil automatizado. Nos dois casos, são capturadas informações que permitem que um gravador de software ou um arquiteto do sistema determinem o que precisa ser feito para que o programa funcione com eficiência máxima em um determinado sistema ou rede. A análise de desempenho não é uma tarefa executada uma vez e depois considerada concluída. Não é incomum que os administradores de sistema executem uma análise de desempenho de forma recorrente, pois atualizações em outros programas e alterações de hardware podem afetar a eficiência do programa submetido à análise.