Add Lead Time and Cycle Time stage to group-level Value Stream Analytics
In agile software teams Lead Time and Cycle Time are frequently measured metrics. The generally accepted definitions are:
Lead time is the time between the initiation and completion of a product’s development. This is typically taken as the time between when an issue/feature request is reported to the time when the work is completed deployed.
Cycle time is the time between when the production of a product is started and when it is completed. This is typically taken as the time between when an engineer begins work on an issue/feature to the time that it is merged or deployed.
There is some debate around the specific definition of the these terms because they have a different meaning in the manufacturing context where they originate.
Proposal
Add to group-level Value Stream Analytics:
-
Lead Time, which should be measured as median time from issue creation to
merge request mergedissue closed -
Cycle Time, which should be measure as median time from first commit to
merge request mergedissue closed
Although merged is not strictly delivered from a customer perspective, if continuous delivery is practiced they will be very similar. It also means that if deployment occurs externally to GitLab, these metrics can still be calculated.