blob: 749324a1993655f422d18211bd543293422e58ed [file] [log] [blame]
<!doctype html>
<html lang="zh" dir="ltr" class="docs-wrapper docs-doc-page docs-version-v0.18 plugin-docs plugin-id-default docs-doc-id-Metrics/RequirementLeadTime">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="generator" content="Docusaurus v2.0.0-rc.1">
<link rel="alternate" type="application/rss+xml" href="/zh/blog/rss.xml" title="Apache DevLake - Open-Source Dev Data Platform for Productivity RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/zh/blog/atom.xml" title="Apache DevLake - Open-Source Dev Data Platform for Productivity Atom Feed">
<link rel="preconnect" href="https://www.google-analytics.com">
<link rel="preconnect" href="https://www.googletagmanager.com">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-PKZLL38MQG"></script>
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-PKZLL38MQG",{anonymize_ip:!0})</script><title data-rh="true">Requirement Lead Time | Apache DevLake - Open-Source Dev Data Platform for Productivity</title><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://devlake.apache.org/zh/docs/v0.18/Metrics/RequirementLeadTime"><meta data-rh="true" name="docusaurus_locale" content="zh"><meta data-rh="true" name="docsearch:language" content="zh"><meta data-rh="true" name="keywords" content="Engineering Productivity, Open-Source Engineering, Open-Source Integration Tools, Data Integrates Platform, Open-Source Dev Platform, Open-Source Data Integrates, DevOps Tools Integrates, Open-Source DevOps Tools"><meta data-rh="true" name="docusaurus_version" content="v0.18"><meta data-rh="true" name="docusaurus_tag" content="docs-default-v0.18"><meta data-rh="true" name="docsearch:version" content="v0.18"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-v0.18"><meta data-rh="true" property="og:title" content="Requirement Lead Time | Apache DevLake - Open-Source Dev Data Platform for Productivity"><meta data-rh="true" name="description" content="Requirement Lead Time
"><meta data-rh="true" property="og:description" content="Requirement Lead Time
"><link data-rh="true" rel="icon" href="/zh/img/logo.svg"><link data-rh="true" rel="canonical" href="https://devlake.apache.org/zh/docs/v0.18/Metrics/RequirementLeadTime"><link data-rh="true" rel="alternate" href="https://devlake.apache.org/docs/v0.18/Metrics/RequirementLeadTime" hreflang="en-GB"><link data-rh="true" rel="alternate" href="https://devlake.apache.org/zh/docs/v0.18/Metrics/RequirementLeadTime" hreflang="zh"><link data-rh="true" rel="alternate" href="https://devlake.apache.org/docs/v0.18/Metrics/RequirementLeadTime" hreflang="x-default"><link rel="stylesheet" href="/zh/assets/css/styles.ddc6bf33.css">
<link rel="preload" href="/zh/assets/js/runtime~main.a2a88428.js" as="script">
<link rel="preload" href="/zh/assets/js/main.ae1e916a.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region"><a href="#" class="skipToContent_fXgn">跳到主要内容</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle clean-btn" type="button" tabindex="0"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/zh/"><div class="navbar__logo"><img src="/zh/img/logo.svg" alt="apache devlake" class="themedImage_ToTc themedImage--light_HNdA"><img src="/zh/img/logo.svg" alt="apache devlake" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">Apache DevLake</b></a></div><div class="navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">Docs</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/zh/docs/Overview/Introduction">Next</a></li><li><a class="dropdown__link" href="/zh/docs/v1.0/Overview/Introduction">v1.0 (Beta)</a></li><li><a class="dropdown__link" href="/zh/docs/v0.21/Overview/Introduction">v0.21 (Stable)</a></li><li><a class="dropdown__link" href="/zh/docs/v0.20/Overview/Introduction">v0.20</a></li><li><a class="dropdown__link" href="/zh/docs/v0.19/Overview/Introduction">v0.19</a></li><li><a class="dropdown__link" href="/zh/docs/v0.18/Overview/Introduction">v0.18</a></li><li><a class="dropdown__link" href="/zh/docs/v0.17/Overview/Introduction">v0.17</a></li><li><a class="dropdown__link" href="/zh/docs/v0.16/Overview/Introduction">v0.16</a></li><li><a class="dropdown__link" href="/zh/docs/v0.15/Overview/Introduction">v0.15</a></li></ul></div><a class="navbar__item navbar__link" href="/zh/livedemo/EngineeringLeads/DORA">Use Cases</a><a class="navbar__item navbar__link" href="/zh/community/">Community</a><a class="navbar__item navbar__link" href="/zh/team">Team</a><a class="navbar__item navbar__link" href="/zh/blogOverview">Blog</a><a href="https://github.com/apache/incubator-devlake" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub</a><a class="navbar__item navbar__link" href="/zh/download">Download</a><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">ASF</a><ul class="dropdown__menu"><li><a href="https://www.apache.org/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Foundation</a></li><li><a href="https://www.apache.org/licenses/" target="_blank" rel="noopener noreferrer" class="dropdown__link">License</a></li><li><a href="https://www.apache.org/events/current-event" target="_blank" rel="noopener noreferrer" class="dropdown__link">Events</a></li><li><a href="https://www.apache.org/security/" target="_blank" rel="noopener noreferrer" class="dropdown__link">Security</a></li><li><a href="https://privacy.apache.org/policies/privacy-policy-public.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Privacy</a></li><li><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Sponsorship</a></li><li><a href="https://www.apache.org/foundation/thanks.html" target="_blank" rel="noopener noreferrer" class="dropdown__link">Thanks</a></li></ul></div><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="切换浅色/暗黑模式(当前为浅色模式)" aria-label="切换浅色/暗黑模式(当前为浅色模式)"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="searchBox_ZlJk"><div class="navbar__search searchBarContainer_NW3z"><input placeholder="搜索" aria-label="Search" class="navbar__search-input"><div class="loadingRing_RJI3 searchBarLoadingRing_YnHq"><div></div><div></div><div></div><div></div></div></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div class="main-wrapper mainWrapper_z2l0 docsWrapper_BCFX"><button aria-label="回到顶部" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docPage__5DB"><aside class="theme-doc-sidebar-container docSidebarContainer_b6E3"><div class="sidebar_njMd"><nav class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/Overview">Overview</a><button aria-label="打开/收起侧边栏菜单「Overview」" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/GettingStarted">Getting Started</a><button aria-label="打开/收起侧边栏菜单「Getting Started」" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/Configuration">Configuration</a><button aria-label="打开/收起侧边栏菜单「Configuration」" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/zh/docs/v0.18/DORA">DORA</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/zh/docs/v0.18/Metrics">Metrics</a><button aria-label="打开/收起侧边栏菜单「Metrics」" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/RequirementCount">Requirement Count</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/zh/docs/v0.18/Metrics/RequirementLeadTime">Requirement Lead Time</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/RequirementDeliveryRate">Requirement Delivery Rate</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/RequirementGranularity">Requirement Granularity</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/BugAge">Bug Age</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/BugCountPer1kLinesOfCode">Bug Count per 1k Lines of Code</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/IncidentAge">Incident Age</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/IncidentCountPer1kLinesOfCode">Incident Count per 1k Lines of Code</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CommitCount">Commit Count</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CommitAuthorCount">Commit Author Count</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/AddedLinesOfCode">Added Lines of Code</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/DeletedLinesOfCode">Deleted Lines of Code</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRCount">PR Count</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRCycleTime">PR Cycle Time</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRCodingTime">PR Coding Time</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRPickupTime">PR Pickup Time</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRReviewTime">PR Review Time</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRDeployTime">PR Deploy Time</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRTimeToMerge">PR Time To Merge</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRMergeRate">PR Merge Rate</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRReviewDepth">PR Review Depth</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/PRSize">PR Size</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/BuildCount">Build Count</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/BuildDuration">Build Duration</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/BuildSuccessRate">Build Success Rate</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/DeploymentFrequency">DORA - Deployment Frequency</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/LeadTimeForChanges">DORA - Median Lead Time for Changes</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/MTTR">DORA - Median Time to Restore Service</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CFR">DORA - Change Failure Rate</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CQIssueCount">Code Quality Issue Count</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CQTest">Code Quality Test</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CQMaintainability-Debt">Code Quality Maintainability-Debt</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CQDuplicatedBlocks">Code Quality Duplicated Blocks</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/zh/docs/v0.18/Metrics/CQDuplicatedLines">Code Quality Duplicated Lines</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/DataModels">Data Models</a><button aria-label="打开/收起侧边栏菜单「Data Models」" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/DeveloperManuals">Developer Manuals</a><button aria-label="打开/收起侧边栏菜单「Developer Manuals」" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/Plugins">Plugins</a><button aria-label="打开/收起侧边栏菜单「Plugins」" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/zh/docs/v0.18/Troubleshooting">Troubleshooting</a><button aria-label="打开/收起侧边栏菜单「Troubleshooting」" type="button" class="clean-btn menu__caret"></button></div></li></ul></nav></div></aside><main class="docMainContainer_gTbr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="页面路径"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="主页面" class="breadcrumbs__link" href="/zh/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_OVgt"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/zh/docs/v0.18/Metrics"><span itemprop="name">Metrics</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Requirement Lead Time</span><meta itemprop="position" content="2"></li></ul></nav><span class="theme-doc-version-badge badge badge--secondary">版本:v0.18</span><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">本页总览</button></div><div class="theme-doc-markdown markdown"><header><h1>Requirement Lead Time</h1></header><h2 class="anchor anchorWithStickyNavbar_LWe7" id="what-is-this-metric">What is this metric?<a class="hash-link" href="#what-is-this-metric" title="标题的直接链接"></a></h2><p>The amount of time it takes a requirement to deliver.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="why-is-it-important">Why is it important?<a class="hash-link" href="#why-is-it-important" title="标题的直接链接"></a></h2><ol><li>Analyze key projects and critical points, identify good/to-be-improved practices that affect requirement lead time, and reduce the risk of delays</li><li>Focus on the end-to-end velocity of value delivery process; coordinate different parts of R&amp;D to avoid efficiency shafts; make targeted improvements to bottlenecks.</li></ol><h2 class="anchor anchorWithStickyNavbar_LWe7" id="which-dashboards-does-it-exist-in">Which dashboard(s) does it exist in<a class="hash-link" href="#which-dashboards-does-it-exist-in" title="标题的直接链接"></a></h2><ul><li><a href="https://devlake.apache.org/livedemo/DataSources/Jira" target="_blank" rel="noopener noreferrer">Jira</a></li><li><a href="https://devlake.apache.org/livedemo/DataSources/GitHub" target="_blank" rel="noopener noreferrer">GitHub</a></li><li><a href="https://devlake.apache.org/livedemo/OSSMaintainers/CommunityExperience" target="_blank" rel="noopener noreferrer">Community Experience</a></li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="how-is-it-calculated">How is it calculated?<a class="hash-link" href="#how-is-it-calculated" title="标题的直接链接"></a></h2><p>This metric equals <code>resolution_date - created_date</code> of issues in type &quot;REQUIREMENT&quot;.</p><b>Data Sources Required</b><p>This metric relies on issues collected from Jira, GitHub, or TAPD.</p><b>Data Transformation Required</b><p>This metric relies on the &#x27;type-requirement&#x27; configuration in Jira, GitHub or TAPD&#x27;s transformation rules while adding/editing a blueprint. This configuration tells DevLake what issues are <code>requirements</code>.</p><b>SQL Queries</b><p>The following SQL shows how to find the lead time of a specific <code>requirement</code>.</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">-- lead_time_minutes is a pre-calculated field whose value equals &#x27;resolution_date - created_date&#x27;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">SELECT</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> lead_time_minutes/1440 as requirement_lead_time_in_days</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">FROM</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> issues</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">WHERE</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> type = &#x27;REQUIREMENT&#x27;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="复制代码到剪贴板" title="复制" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>If you want to measure the <code>mean requirement lead time</code> in the screenshot below, please run the following SQL in Grafana.</p><p><img loading="lazy" src="/zh/assets/images/requirement-lead-time-monthly-297def3418d5bf1a6caf63114552aba4.png" width="1257" height="375" class="img_ev3q"></p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">with _issues as(</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> SELECT</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> DATE_ADD(date(i.resolution_date), INTERVAL -DAY(date(i.resolution_date))+1 DAY) as time,</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> AVG(i.lead_time_minutes/1440) as issue_lead_time</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> FROM issues i</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> join board_issues bi on i.id = bi.issue_id</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> join boards b on bi.board_id = b.id</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> WHERE</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -- $board_id is a variable defined in Grafana&#x27;s dashboard settings to filter out issues by boards</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> b.id in ($board_id)</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> and i.type = &#x27;REQUIREMENT&#x27;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> and i.status = &quot;DONE&quot;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> and $__timeFilter(i.resolution_date)</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -- the following condition will remove the month with incomplete data</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> and i.resolution_date &gt;= DATE_ADD(DATE_ADD($__timeFrom(), INTERVAL -DAY($__timeFrom())+1 DAY), INTERVAL +1 MONTH)</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> group by 1</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">)</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">SELECT </span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> date_format(time,&#x27;%M %Y&#x27;) as month,</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> issue_lead_time as &quot;Mean Requirement Lead Time in Days&quot;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">FROM _issues</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">ORDER BY time</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="复制代码到剪贴板" title="复制" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h2 class="anchor anchorWithStickyNavbar_LWe7" id="how-to-improve">How to improve?<a class="hash-link" href="#how-to-improve" title="标题的直接链接"></a></h2><ol><li>Analyze the trend of requirement lead time to observe if it has improved over time.</li><li>Compare the requirement lead time of each project/team to identify key projects with abnormal lead time.</li><li>Drill down to analyze a requirement&#x27;s staying time in different phases of SDLC. Analyze the bottleneck of delivery velocity and improve the workflow.</li></ol></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/apache/incubator-devlake-website/edit/main/versioned_docs/version-v0.18/Metrics/RequirementLeadTime.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>编辑此页</a></div><div class="col lastUpdated_vwxv"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="文档分页导航"><a class="pagination-nav__link pagination-nav__link--prev" href="/zh/docs/v0.18/Metrics/RequirementCount"><div class="pagination-nav__sublabel">上一页</div><div class="pagination-nav__label">Requirement Count</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/zh/docs/v0.18/Metrics/RequirementDeliveryRate"><div class="pagination-nav__sublabel">下一页</div><div class="pagination-nav__label">Requirement Delivery Rate</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#what-is-this-metric" class="table-of-contents__link toc-highlight">What is this metric?</a></li><li><a href="#why-is-it-important" class="table-of-contents__link toc-highlight">Why is it important?</a></li><li><a href="#which-dashboards-does-it-exist-in" class="table-of-contents__link toc-highlight">Which dashboard(s) does it exist in</a></li><li><a href="#how-is-it-calculated" class="table-of-contents__link toc-highlight">How is it calculated?</a></li><li><a href="#how-to-improve" class="table-of-contents__link toc-highlight">How to improve?</a></li></ul></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/zh/docs/GettingStarted">Getting Started</a></li><li class="footer__item"><a class="footer__link-item" href="/zh/docs/DataModels/DevLakeDomainLayerSchema">Data Models</a></li><li class="footer__item"><a class="footer__link-item" href="/zh/docs/Metrics">Engineering Metrics</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://join.slack.com/t/devlake-io/shared_invite/zt-20envwfbk-JUTZ4z9jSeRnrvNhBFLg9w" target="_blank" rel="noopener noreferrer" class="footer__link-item">Slack</a></li><li class="footer__item"><a href="https://github.com/apache/incubator-devlake/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub Issue Tracker</a></li><li class="footer__item"><a href="https://github.com/apache/incubator-devlake-website/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub Issue Tracker For Docs</a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/apache/incubator-devlake" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub</a></li><li class="footer__item"><a href="https://twitter.com/ApacheDevLake" target="_blank" rel="noopener noreferrer" class="footer__link-item">Twitter</a></li><li class="footer__item"><a class="footer__link-item" href="/zh/community/trademark">Trademark Guidelines</a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">
<div style="margin-top: 20px">
<a href="https://incubator.apache.org/" target="_blank"><img style="height:40px; margin-bottom: 10px; margin-top: 10px" alt="Apache Software Foundation" src="/img/apache-incubator.svg"></a>
<p style="text-align:left; font-weight: 300; font-size: 0.8em;">Apache DevLake is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
<p style="text-align:left; font-weight: 300; font-size: 0.8em;">Copyright ©2024 Apache DevLake, DevLake, Apache, the Apache feather logo and the Apache DevLake project logo are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.</p>
</div>
</div></div></div></footer></div>
<script src="/zh/assets/js/runtime~main.a2a88428.js"></script>
<script src="/zh/assets/js/main.ae1e916a.js"></script>
</body>
</html>