SCM Coding Days Report Calculation
The report displays the coding days count based on the selected settings in the widget configuration.
It is recommended to configure the widget settings to measure the Total Coding Days for an individual developer. This will help display the count of the days on which the developer made code commits.
What data is included in Coding Days?
A day with a Commit counts as a Coding Day if the commit is:
- A direct commit to the default branch.
- Not a merge commit.
- Not in a deleted branch
A day with a Pull Request as a Coding Day if:
- The PR is opened against the default branch.
- If a PR from a feature branch is merged into the default branch.
In the SCM Coding Days report the metric displays the coding days count based on the selected metrics in the widget configuration.
Calculation: Depends on the specific metric chosen in the widget configuration (e.g., Average Coding Days per Week).
Coding Days Single Stat report
In this report the metric displays the coding days count per month based on the selected metrics in the widget configuration.
Calculation: Raw coding days divided by the total number of days in a month.
Calculation Example
Average Coding Days Per Week
This metric calculates the average number of days in a week where code commits were made, over a given time period.
Example: Let's say we want to calculate the Average Coding Days Per Week for a developer between October 1, 2023, and December 31, 2023 (a total of 92 days or approximately 13 weeks).
During this period, the developer made code commits on the following days:
- Week 1: Monday, Wednesday, Friday (3 days)
- Week 2: Tuesday, Thursday (2 days)
- Week 3: Monday, Wednesday, Friday, Saturday (4 days)
- ... and so on, for a total of 23 Coding Days.
To calculate the Average Coding Days Per Week, we divide the Total Number of Coding Days (23) by the Total number of weeks (13)
Average Coding Days Per Week = 23 coding days / 13 weeks = 1.77 days per week
Median Coding Days Per Week
This metric calculates the median number of days in a week where code commits were made, over a given time period. The median is the middle value in a sorted list of values.
Example: Using the same data as above, let's find the number of Coding Days Per Week:
- Week 1: 3 days
- Week 2: 2 days
- Week 3: 4 days
- ... and so on, for a total of 13 weeks.
Sorting the number of Coding Days per week in ascending order, we get: 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4
Since there are 13 weeks, the Median is the 7th value (the middle value), which is 3.
Therefore, the Median Coding Days Per Week is 3 days.
Average Coding Days Per Two Weeks
This metric calculates the average number of days in a two-week period where code commits were made, over a given time period.
Example: Let's say we want to calculate the Average Coding Days Per Two Weeks for a developer between October 1, 2023, and November 14, 2023 (a total of 45 days or approximately 6 two-week periods).
During this period, the developer made code commits on the following days:
- Two Week Period 1: Monday, Wednesday, Friday, Saturday (4 days)
- Two Week Period 2: Tuesday, Thursday (2 days)
- Two Week Period 3: Monday, Wednesday, Friday, Sunday (4 days)
- ... and so on, for a total of 18 Coding Days.
To calculate the Average Coding Days Per Two Weeks, we divide the Total Number of Coding Days (18) by the Total Number of Two-Week Periods (6):
Average Coding Days Per Two Weeks = 18 coding days / 6 two-week periods = 3 days per two-week period
Median Coding Days Per Two Weeks
This metric calculates the median number of days in a two-week period where code commits were made, over a given time period.
Example: Using the same data as above, let's find the number of coding days per two-week period:
- Two Week Period 1: 4 days
- Two Week Period 2: 2 days
- Two Week Period 3: 4 days
- ... and so on, for a total of 6 Two-Week Periods.
Sorting the number of coding days per two-week period in ascending order, we get: 2, 2, 3, 4, 4, 4
Since there are 6 two-week periods, the Median is the 4th value (the middle value), which is 4.
Therefore, the Median Coding Days Per Two Weeks is 4 days.
Average Coding Days Per Month
This metric calculates the average number of days in a month where code commits were made, over a given time period.
Example: Let's say we want to calculate the Average Coding Days Per Month for a developer between October 1, 2023, and December 31, 2023 (a total of 92 days or approximately 3 months).
During this period, the developer made code commits on the following days:
- October: 10 days
- November: 8 days
- December: 5 days
To calculate the Average Coding Days Per Month, we add the number of Coding Days for each month and divide by the Total Number of Months:
Average Coding Days Per Month = (10 + 8 + 5) coding days / 3 months = 7.67 days per month
Median Coding Days Per Month
This metric calculates the median number of days in a month where code commits were made, over a given time period.
Example: Using the same data as above, let's find the number of coding days per month:
- October: 10 days
- November: 8 days
- December: 5 days
Sorting the number of coding days per month in ascending order, we get: 5, 8, 10
Since there are 3 months, the Median is the 2nd value (the middle value), which is 8.
Therefore, the Median Coding Days Per Month is 8 days.