O que são os dados

## Observations: 12,299
## Variables: 17
## $ TaskNumber           <chr> "1735", "1742", "1971", "2134", "2251", "...
## $ Summary              <chr> "Flag RI on SCM Message Summary screen us...
## $ Priority             <dbl> 1, 1, 2, 5, 10, 1, 5, 5, 6, 5, 2, 1, 3, 1...
## $ RaisedByID           <chr> "58", "58", "7", "50", "46", "13", "13", ...
## $ AssignedToID         <chr> "58", "42", "58", "42", "13", "13", "13",...
## $ AuthorisedByID       <chr> "6", "6", "6", "6", "6", "58", "6", "6", ...
## $ StatusCode           <chr> "FINISHED", "FINISHED", "FINISHED", "FINI...
## $ ProjectCode          <chr> "PC2", "PC2", "PC2", "PC2", "PC2", "PC9",...
## $ ProjectBreakdownCode <chr> "PBC42", "PBC21", "PBC75", "PBC42", "PBC2...
## $ Category             <chr> "Development", "Development", "Operationa...
## $ SubCategory          <chr> "Enhancement", "Enhancement", "In House S...
## $ HoursEstimate        <dbl> 14.00, 7.00, 0.70, 0.70, 3.50, 7.00, 7.00...
## $ HoursActual          <dbl> 1.75, 7.00, 0.70, 0.70, 3.50, 7.00, 7.00,...
## $ DeveloperID          <chr> "58", "42", "58", "42", "13", "13", "43",...
## $ DeveloperHoursActual <dbl> 1.75, 7.00, 0.70, 0.70, 3.50, 7.00, 7.00,...
## $ TaskPerformance      <dbl> 12.25, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00...
## $ DeveloperPerformance <dbl> 12.25, 0.00, 0.00, 0.00, 0.00, 0.00, NA, ...

Entendendo os dados

## Skim summary statistics
##  n obs: 12299 
##  n variables: 4 
## 
## -- Variable type:character --------------------------------------------------------
##     variable missing complete     n min max empty n_unique
##  ProjectCode       0    12299 12299   3   4     0       20
##   TaskNumber       0    12299 12299   4   5     0    10266
## 
## -- Variable type:numeric ----------------------------------------------------------
##       variable missing complete     n  mean    sd   p0 p25 p50 p75    p100
##    HoursActual       0    12299 12299 13.18 68.72 0.01   1   3 8.5 2490.16
##  HoursEstimate       0    12299 12299 10.15 28.84 0.01   1   3 7    910   
##      hist
##  <U+2587><U+2581><U+2581><U+2581><U+2581><U+2581><U+2581><U+2581>
##  <U+2587><U+2581><U+2581><U+2581><U+2581><U+2581><U+2581><U+2581>

Temos 20 projetos, com 12299 estimativas_raw. Não há apenas uma estimativa por tarefa, já que há apenas 10266 valores distintos de TaskNumber.

## # A tibble: 1,384 x 2
## # Groups:   TaskNumber [1,384]
##    TaskNumber     n
##    <chr>      <int>
##  1 10605          8
##  2 6889           8
##  3 10089          7
##  4 10974          7
##  5 11056          7
##  6 11270          7
##  7 13124          7
##  8 13190          7
##  9 13253          7
## 10 3812           7
## # ... with 1,374 more rows

1 estimativa por task

Para nossa análise, usaremos uma estimativa por task. Caso haja mais de uma usaremos a média das estimativas_raw:

Dados por time

Qual a relação entre as estimativas e horas reais tomadas na empresa como um todo e em diferentes categorias de tarefa?

## `geom_smooth()` using method = 'gam' and formula 'y ~ s(x, bs = "cs")'

Análise

Observando o gráfico acima, é possível inferir que as atividades operacionais possuem uma maior diferença entre a quantidade de horas necessárias para concluir a tarefa, e a quantidade de horas inicialmente estimada. É verificável também que todas as categorias de tarefas possuem uma cauda maior a direita. Além disso, é possível observar que há uma correlação positiva não-linear.

Equipes com mais desenvolvedores produzem estimativas com mais ou menos erro que equipes menores?

Análise

Ao analisar os gráficos acima (o primeiro gráfico engloba projetos com menos de 10 desenvolvedores alocados, e o segundo para projetos com 10 ou mais desenvolvedores alocados). Em ambos os casos, é verificável que existe uma correlação negativa linear forte entre a quantidade de estimativas e o erro médio na estimativa. A partir dessa correlação é possível visualizar que, quanto mais estimativas feitas pela equipe, menor é o erro médio.