Inicialmente foi definido e simulado um cenário base em que não é considerada a ocorrência de nenhum risco. Em seguida, outros cenários foram estabelecidos e simulados, e os resultados das simulações desses cenários foram comparados com os obtidos com a simulação do cenário base. A Tabela 5.1 apresenta as suposições e os valores atribuídos a algumas variáveis do painel de controle para simular o cenário base. Com exceção das variáveis 1, 2 e 3, os valores definidos na Tabela 5.1 são baseados em dados disponibilizados na literatura, relatados por outros grupos de pesquisa.
O valor utilizado para configurar a variável 1 foi definido a partir de dados fornecidos por uma empresa de desenvolvimento de software. A coleta desses dados será apresentada detalhadamente na seção 5.2. Os valores utilizados para configurar as variáveis 2 e 3 são baseados na experiência dos autores e em trocas de experiências não documentadas com profissionais de empresas de desenvolvimento de software. Em uma situação hipotética em que a equipe não disponibiliza esforço
extra e nenhum esforço é utilizado para a correção de erros, alterações de requisitos e atividades de garantia de qualidade, os valores atribuídos às variáveis 1, 2 e 3 indicam que são necessários 30 dias para terminar a especificação dos requisitos. Ou seja, uma equipe com 2 pessoas, onde cada uma especifica 2 requisitos por dia, precisará de 30 dias para especificar 120 requisitos.
Tabela 5.1. Valores utilizados para configurar o cenário base
1 - Quantidade inicial de pessoas na equipe: 2
2 - Requisitos da Liberação: 120 requisitos estimados em 120 pontos de função 3 - Quantidade de requisitos especificados por homem-dia: 2
4 - Probabilidade de cometer erros: 12%
5 - Probabilidade de alteração de requisitos: 3%
6 - Probabilidade de turnover: 0% (sem ocorrência de turnover)
7 - Porcentagem de requisitos não previstos: 0% (todos os requisitos são previstos) 8 - Porcentagem desejada de homens-dia alocados para garantia de qualidade: 20% 9 - Máximo homens-dia extras disponibilizados por um membro experiente: 0,5 homens- dia
Observação: Ao definir que a quantidade de requisitos especificados por homem-dia é 2, supõe-se que a produtividade da equipe é 2 pontos de função / homem-dia.
Fonte: Elaborado pelo Autor
Os valores utilizados para configurar as demais variáveis (4 a 9) da Tabela 5.1 foram definidos a partir dos intervalos de valores delimitados na Tabela 4.1, apresentada na seção 4.3. Por exemplo, as variáveis probabilidade de cometer erros e probabilidade de alteração de requisitos recebem respectivamente os valores 12% e 3%, que são valores médios de acordo com a Tabela 4.1. Já a variável máximo
homens-dia extras disponibilizados por um membro experiente recebe o valor 0,5,
que é um valor alto de acordo com a Tabela 4.1. Para configurar os demais cenários apresentados nas seções seguintes (5.1.2 a 5.1.9) também foram utilizados os intervalos de valores definidos na Tabela 4.1. Como foi informado na seção 4.3, os intervalos de valores apresentados na Tabela 4.1 foram delimitados a partir de dados disponibilizados na literatura.
Os valores das demais variáveis do painel de controle, que não estão relacionadas na Tabela 5.1, foram definidos a partir da experiência dos autores e de trocas de experiências não documentadas com profissionais de empresas de desenvolvimento de software. Isso não prejudica a realização de comparações entre
os cenários apresentados, pois os valores atribuídos a essas variáveis são os mesmos em todos os cenários simulados. As Figuras 5.1 e 5.2 mostram o painel de controle do modelo. Na Figura 5.1 é possível verificar como as variáveis do modelo foram ajustadas para simular o cenário base. E na Figura 5.2 são apresentados os valores obtidos para as variáveis utilizadas nas análises realizadas após a simulação.
Fonte: Elaborado pelo Autor
Observação: Os valores apresentados nos gráficos são os valores acumulados nos respectivos estoques em um determinado tempo, medido em dias, após o início da especificação.
Fonte: Elaborado pelo Autor
Figura 5.2. Painel de controle – saída de valores
Os valores atribuídos às variáveis tempo para aumento do uso de esforço extra,
tempo para aumento do prazo e tempo para aumento do tamanho da equipe indicam Tempo (dias)
Tempo (dias) Tempo (dias)
que a simulação irá considerar um gerenciamento que, diante de riscos de atraso no projeto, tende a aumentar o uso do esforço extra e evitar modificações no tamanho da equipe e no prazo. Se o uso de esforço extra não for suficiente para evitar o atraso, os valores atribuídos às variáveis indicam que a segunda opção da gerência é aumentar o tamanho da equipe. Modificações no prazo só serão feitas se forem estritamente necessárias.
Conforme foi informado na seção 3.5, a qualidade da especificação de requisitos pode ser medida pelo valor final do estoque Requisitos com Erros, que representa a quantidade de requisitos especificados incorretamente que serão entregues para as fases seguintes do processo de desenvolvimento. O custo para a realização da especificação corresponde ao valor final do estoque Homens-dia
Gastos, que representa a quantidade de esforço medido em homens-dia utilizado.
Os gráficos apresentados na Figura 5.3 mostram a qualidade (valor do estoque
Requisitos com Erros) e o custo (valor do estoque Homens-dia Gastos) da
especificação de requisitos em função do prazo planejado. Os valores nos gráficos foram obtidos ao simular o modelo considerando o cenário base descrito.
O gráfico que compara a qualidade mostra que a redução no prazo planejado tende a aumentar a quantidade de requisitos especificados incorretamente. Segundo (ABDEL-HAMID, 1996) e (LIN; ABDEL-HAMID; SHERIF, 1997), para terminar a especificação em um tempo menor, pode ser necessário aumentar o tamanho da equipe e utilizar esforço extra dos profissionais, o que contribui para aumentar a quantidade de erros cometidos (COLLOFELLO et al., 1998; LIN; ABDEL-HAMID; SHERIF, 1997).
Quando o prazo planejado é 30 dias, a quantidade de erros de especificação é maior se comparada à quantidade de erros quando o prazo é 25 ou 35 dias, o que provoca uma oscilação na curva do gráfico de qualidade. Os valores obtidos ao simular o modelo, variando linearmente o valor de uma variável (como foi feito com a variável que representa o prazo), podem oscilar porque as variáveis que formam a estrutura dos modelos de dinâmica de sistemas se relacionam dinamicamente de forma não linear com vários loops de realimentação (feedback). Isso explica o comportamento observado e a oscilação na curva do gráfico. É comum ocorrerem oscilações nas curvas dos gráficos ao utilizá-los para organizar e visualizar os resultados das simulações do modelo. Em alguns gráficos apresentados nas seções seguintes também ocorrem oscilações em suas curvas.
Qualidade 7,564 7,712 7,904 7,903 8,642 9,19 9,14 7 7,5 8 8,5 9 9,5 15 20 25 30 35 40 45 prazo e rro s cenário base Custo - em homens-dia 78 91,29 78,94 86 70 70,34 72,09 65 70 75 80 85 90 95 15 20 25 30 35 40 45 prazo cu st o cenário base
Fonte: Elaborado pelo Autor
Figura 5.3. Qualidade e custo obtidos com o cenário base
Ao simular o modelo considerando um prazo de 25 dias, o tamanho da equipe, que inicialmente é 2, aumenta para 3 no terceiro dia e permanece assim até o fim da especificação. Nesse caso, como ocorre aumento no tamanho da equipe, a quantidade de esforço extra utilizado é pequena. Ao planejar um prazo de 30 dias, a equipe permanece com 2 pessoas até o dia 27 (assumindo que a especificação foi iniciada no
dia 1). Para que a especificação termine no prazo planejado e seja evitado um aumento do tamanho da equipe, é necessário utilizar uma quantidade maior de esforço extra, que nesse caso provoca exaustão da equipe. O aumento no uso do esforço extra contribui para aumentar a quantidade de erros cometidos (COLLOFELLO et al., 1998; LIN; ABDEL-HAMID; SHERIF, 1997), o que explica o aumento na quantidade de requisitos com erros quando o prazo planejado é 30 dias. Por fim, quando o prazo aumenta para 35 dias, a equipe permanece com 2 pessoas até o término da especificação e a quantidade de esforço extra utilizado é pequena, contribuindo para que poucos erros sejam cometidos.
O gráfico de custo mostra que um prazo de 35 dias estabelece o menor custo. Ao planejar e incentivar o término da especificação em um prazo menor, pode ser necessário aumentar o tamanho da equipe e/ou utilizar uma quantidade excessiva de esforço extra dos profissionais (ABDEL-HAMID, 1996; LIN; ABDEL-HAMID; SHERIF, 1997), o que implica no aumento do custo. Por outro lado, quando o prazo para o término da especificação é superestimado, a equipe percebe que o projeto está adiantado em relação ao planejamento. Ao perceber a folga no prazo, a equipe irá trabalhar com menor produtividade, absorvendo uma parte do excesso de tempo disponível (ABDEL-HAMID; MADNICK, 1991). Isso explica o aumento que ocorre no custo quando o prazo planejado é maior que 35 dias.
O custo mínimo e a inversão na tendência da curva no gráfico de custo ocorrem próximo ao prazo de 30 dias devido aos valores atribuídos às variáveis: quantidade
inicial de pessoas na equipe, requisitos da liberação e quantidade de requisitos especificados por homem-dia. Como foi informado na Tabela 5.1, essas variáveis
recebem, respectivamente, os valores: 2, 120 e 2. Considerando que a equipe não disponibiliza esforço extra e nenhum esforço é utilizado para a correção de erros, alterações de requisitos e atividades de garantia de qualidade, uma equipe com 2 pessoas, onde cada uma especifica 2 requisitos por dia, precisará de 30 dias para especificar 120 requisitos.
Em uma situação real, é necessário disponibilizar esforço para correção de erros, alterações de requisitos e atividades de garantia de qualidade, o que aumenta o custo. No entanto, o esforço extra disponibilizado pela equipe, por meio de um maior empenho durante o horário normal de trabalho, pode amenizar os impactos sobre o custo. Isso contribui para que o prazo ideal continue próximo a 30 dias. As
simulações mostraram que, para o cenário base, o prazo ideal é em torno de 30 a 35 dias.
Nas seções seguintes (5.1.2 a 5.1.9) são apresentados outros cenários, que consideram a ocorrência de riscos e permitem comparar os efeitos da implementação de diferentes políticas gerenciais. Para os cenários simulados nas seções seguintes, as variáveis que não possuírem seus valores explicitamente informados recebem os mesmos valores definidos para a simulação do cenário base. Esses valores podem ser visualizados na Figura 5.1, que mostra o painel de controle configurado para simular o cenário base.