GQM Performance - Measurement-and-Metrics-2018-1/2017.1-SIGS GitHub Wiki
Data | Versão | Descrição | Autor(es) |
---|---|---|---|
22/04/2018 | 0.1 | Elaboração inicial do documento | Gabriel Ziegler |
22/04/2018 | 0.2 | Retocando alguns pontos | Bruno Matias Casas |
22/04/2018 | 0.3 | Q.1.1,Q.1.2,Q.1.3 | Carlos Aragon |
22/04/2018 | 0.4 | Métrica M.1.1.1 | Gabriel Ziegler |
22/04/2018 | 0.5 | Métrica M.1.2.1 | Bruno Matias Casas |
22/04/2018 | 0.6 | Métrica M.1.3.1 | Gabriel Ziegler |
22/04/2018 | 0.7 | Hipótese Q.1.2 | Bruno Matias Casas |
23/04/2018 | 0.8 | Revisão, Métrica M.1.2.2 e Hipótese 1.2.2 | Gabriel Ziegler |
23/04/2018 | 0.9 | Ferramentas de mémoria | Gabriel Ziegler |
1.0 - Melhorar performance do sistema
Dado que o sistema proposto deverá alocar turmas para a universidade de brasília(UnB), ele se torna crítico, por isso deve-se garantir a satisfação do cliente em relação a sua performance. Os objetivos do GQM de performance são:
Analisar | Performance do sistema SIGS |
---|---|
Com o propósito de | Melhorar |
Com respeito a | Perfomance do sistema |
Sobre o ponto de vista do | Desenvolvedor |
No contexto do | Projeto SIGS |
A questão anuncia a necessidade de se obter informações em uma linguagem natural, podendo-se formular uma ou mais questões para cada categoria de questões; quanto à resposta, deve estar de acordo com o objetivo.
Foco na qualidade | Fatores de variação |
---|---|
Q.1.1 : Os tempos de resposta e processamento e as taxas de rendimento atendem aos requisitos? |
- Qualidade de conexão com a internet; -Hardware do usuário; |
Q.1.2 : As quantidades e tipos de recursos utilizados atendem aos requisitos? |
-Hardware do usuário; -Hardware do servidor de hospedagem do sistema |
Q.1.3 : Os limites máximos do sistema atendem aos requisitos? |
-Hardware do servidor de hospedagem do sistema; -Limitações da linguagem de programação utilizada na construção do sistema |
Hipóteses de BASELINE | Impactos nas hipóteses de Baseline |
-A quantidade de memória alocada para cada recurso em sua maioria não é condizente | -Baixa Performance |
-O tempo de CPU utilizado para execução de processos é maior que o necessário | -Baixa Performance |
-O tempo de duração que o sistema leva desde iniciar um conjunto de tarefas até receber o primeira resposta é alto | -Baixa Performance |
-O número de requisições que podem ser processadas em um intervalo de tempo é baixo | -Baixa Performance |
Essa seção descreve as métricas que serão aplicadas ao projeto como padrão de qualidade.
Para cada métrica será dada uma descrição do que é a métrica, seus respectivos indicadores interpretativos, os resultados esperados para o projeto e as melhorias propostas para reverter quadros desfavoráveis, isto é, possíveis medidas que a equipe deve tomar para obter índices positivos quando estes estiverem comprometidos.
Métrica | M.1.1.1 - Tempo de resposta |
---|---|
Objetivo da Medição | Garantir que o software possua boa performance para as funções que oferece |
Descrição | Tempo de duração que o sistema leva desde iniciar um conjunto de tarefas até receber o primeira resposta |
Elementos de Medição | A = tempo de entrada de um comando B = tempo de recepção da primeira resposta X = Resultado |
Fórmula | X = B - A |
Escala da Medição | Racional |
Coleta | Responsável: Equipe de gerência Periodicidade ou Evento: A cada iteração |
Procedimentos | Executar um comando e coletar os valores de tempo |
Análise | Quanto maior X for, mais tempo está levando o sistema para efetuar um comando, logo menor a performance está sendo |
Providências | Checar a complexidade do comando executado e avaliar se existem providências a serem tomadas para torná-lo mais otimizado e depois executar a medição novamente. |
Métrica | M.1.2.1 - Utilização de memória |
---|---|
Objetivo da Medição | Garantir que o espaço alocado das tarefas condiz com o que realmente foi utilizado |
Descrição | Quanto espaço de memória é usado para executar uma dada tarefa |
Elementos de Medição | A = quantidade total de espaços de memória alocado para dada tarefa B = a quantidade de espaços de memória realmente usadas para executar a dada tarefa X = Resultado |
Fórmula | X = A/B |
Escala da Medição | Racional |
Coleta | Responsável: Equipe de gerência Periodicidade ou Evento: A cada iteração |
Procedimentos | Verificar espaço total de memória utilizado e quanto de memória foi gasta para uma dada tarefa |
Análise | Quanto mais próximo X estiver de 1 melhor |
Providências | Caso X seja próximo ao valor alocado para determinada tarefa, um valor acima da metade, deve-se tomar providencias para otimizar o espaço de memória alocado e depois executar a medição novamente. |
Métrica | M.1.2.2 - Utilização de CPU |
---|---|
Objetivo da Medição | Garantir que o sistema utilize os recursos da CPU sem exceder o necessário |
Descrição | Tempo em que a CPU é utilizada para executar uma tarefa |
Elementos de Medição | A = Tempo de operação B = Tempo em que a CPU foi realmente utilizada durante a execução da tarefa X = Resultado |
Fórmula | X = A-B |
Escala da Medição | Racional |
Coleta | Responsável: Equipe de gerência Periodicidade ou Evento: A cada iteração |
Procedimentos | Verificar tempo gasto pela CPU na execução de tarefas |
Análise | Quanto mais próximo X estiver de 0 melhor. |
Providências | Caso X seja muito alto (maior que 0,5s), deverá ser analisada a tarefa em questão e a razão pelo a qual esta está tomando mais tempo que o necessário então, deverá-se medir a métrica M1.2.2 da tarefa novamente após mudanças. |
Métrica | M.1.3.1 - Número máximo de requisições |
---|---|
Objetivo da Medição | Garantir que o software consiga lidar com o número de requisições que poderá ter sem derrubar o sistema ou perder performance |
Descrição | Número máximo de requisições que podem ser processadas em um intervalo de tempo |
Elementos de Medição | A = Tempo de operação B = Número máximo de requisições processadas X = Resultado |
Fórmula | X = B/A |
Escala da Medição | Racional |
Coleta | Responsável: Equipe de gerência Periodicidade ou Evento: A cada iteração |
Procedimentos | Executar máximo número de possível de uma requisição em um intervalo de tempo e pegar esse valor máximo |
Análise | Quanto maior X for, maior a capacidade do sistema de processar um grande número de requisições |
Providências | Checar o resultado da medição e se o sistema não possuir boa capacidade para lidar com o número de requisições que deveria lidar, mudar formas com que as requisições são processadas e/ou sistemas utilizados para processá-las e depois executar a medição novamente. |