Your Software Development Lifecycle Data Template
Your Software Development Lifecycle Data Template
This is our generic process mining data template for Software Development Lifecycle. Use our system-specific templates for more specific guidance.
Select a specific system- Standardized attributes for comprehensive analysis of your development items.
- Key activities and process steps to track for end-to-end SDLC visibility.
- Flexible guidance suitable as a starting point for any software development system.
Software Development Lifecycle Attributes
| Name | Description | ||
|---|---|---|---|
| Activity Name ActivityName | The name of the specific event or task that occurred at a point in time within the development lifecycle for a work item. | ||
| Description The Activity Name describes a specific step or status change in the development process. These activities form the nodes in the process map, representing key milestones like 'Item Approved for Development', 'Code Submitted for Review', or 'QA Testing Completed'. This attribute is crucial for visualizing the process flow and understanding the sequence of events. By analyzing the different activities, teams can identify the most common paths, discover process deviations, and measure the time spent in various stages. It forms the basis for bottleneck analysis, rework detection, and conformance checking against a target process model. Why it matters It defines the steps in the process, allowing for the visualization and analysis of the development workflow. Where to get Often derived from status change logs, event streams, or audit history tables associated with development work items. Examples Development StartedCode Review CompletedRework Identified in QADeployed To Production | |||
| Development Item ID DevelopmentItemId | The unique identifier for a single unit of work, such as a feature, bug, or user story, which serves as the case identifier for the process. | ||
| Description The Development Item ID is the primary key that uniquely identifies each case instance throughout the software development lifecycle. Each ID represents a distinct piece of work, like a user story, task, or bug fix, from its creation to its final resolution or deployment. In process mining analysis, this attribute is essential for reconstructing the end-to-end journey of every work item. It allows the tool to link all related activities, such as 'Development Started', 'Code Review Completed', and 'Deployed to Production', into a coherent process flow. Analyzing the lifecycle of individual development items helps identify variations, delays, and rework loops associated with specific pieces of work. Why it matters This is the fundamental case identifier required to trace the complete lifecycle of each development work item from beginning to end. Where to get Typically found in the main work item or issue tracking tables of a software development management system. Examples STORY-1024BUG-8192TASK-4096EPIC-512 | |||
| Event Start Time EventStartTime | The precise timestamp indicating when a specific activity or event occurred for a development item. | ||
| Description The Event Start Time marks the exact date and time that an activity began. It provides the chronological order for all events within a single case, which is essential for reconstructing the process flow accurately. Timestamps are the foundation of all time-based process mining analysis. They are used to calculate key performance indicators like cycle times, waiting times, and processing times between activities. Analyzing timestamps helps pinpoint bottlenecks, measure process efficiency, and understand the duration of different stages in the development lifecycle. For instance, the time between 'Code Submitted for Review' and 'Code Review Completed' can reveal delays in the review process. Why it matters This timestamp is essential for ordering events correctly and calculating all time-based metrics, such as cycle time and bottlenecks. Where to get Available in event logs, audit trails, or history tables that record changes to development work items. Examples 2023-10-26T10:00:00Z2023-10-27T14:35:10Z2023-11-01T09:15:00Z2023-11-05T16:21:45Z | |||
| Last Data Update LastDataUpdate | The timestamp indicating the last time the data for this process was refreshed from the source system. | ||
| Description The Last Data Update attribute records the date and time when the data was most recently extracted or updated from the source system. This provides a clear indication of the data's freshness and relevance. This information is vital for ensuring that analyses and dashboards are based on current information. Stakeholders can see at a glance how up-to-date the process view is, which builds confidence in the insights derived. It is a key piece of metadata for managing data pipelines and scheduling data refreshes. Why it matters Indicates the freshness of the data, ensuring that analysis is timely and relevant for decision-making. Where to get This value is typically generated and stored by the data extraction, transformation, and loading (ETL) pipeline. Examples 2024-05-20T08:00:00Z2024-05-21T08:00:00Z | |||
| Source System SourceSystem | The system from which the process data was extracted, such as Jira, Azure DevOps, or GitHub. | ||
| Description The Source System attribute identifies the originating application or platform where the development lifecycle data was recorded. This is particularly useful in environments where multiple development tools are used, for example, Jira for issue tracking and GitLab for source code management. In analysis, specifying the source system helps in data validation and provides context for the process data. It allows for comparative analysis between processes managed in different systems and ensures that data interpretation is correct, as field names and process conventions can vary between systems. It can also be used to filter the analysis to a specific tool's data set. Why it matters Provides context about the data's origin, which is crucial for data validation and for analyses involving multiple integrated systems. Where to get This is typically a static value added during the data extraction process to identify the origin of the records. Examples Jira SoftwareAzure DevOpsGitLabServiceNow DevOps | |||
| Assigned To AssignedTo | The user or team member to whom the development item is currently assigned. | ||
| Description This attribute identifies the individual or group responsible for completing the current step or the overall work item. The assignee can change multiple times throughout the lifecycle, reflecting handoffs between different roles like developers, QA testers, and reviewers. Analyzing the Assigned To attribute is key to understanding team workload, handoff efficiency, and collaboration patterns. It allows for filtering the process map to see the work of a specific person or team, helping to identify resource-specific bottlenecks. Social network analysis based on handoffs between assignees can reveal communication gaps or overly complex collaboration structures. Why it matters It enables analysis of resource workload, handoff frequency, and collaboration patterns, helping to optimize team efficiency. Where to get Found in the work item or issue record, often tracked in the item's history or audit log. Examples jane.doe@example.comjohn.smithQA Team AlphaPlatform Engineering | |||
| Development Item Priority DevelopmentItemPriority | A ranking of the development item's importance or urgency relative to other items. | ||
| Description The Priority attribute indicates the business or technical urgency of a work item. This is typically set to values like 'High', 'Medium', or 'Low' and helps teams decide what to work on next. In process mining, priority is a powerful dimension for analysis. It allows teams to check if high-priority items are actually processed faster than low-priority ones. Comparing the cycle times across different priority levels can reveal if the process respects business priorities. If high-priority items are frequently delayed, it can point to issues in planning, resource allocation, or workflow design. Why it matters Helps verify if high-priority work moves faster through the process and identifies bottlenecks that disproportionately affect critical items. Where to get A standard field on the work item or issue record in most development management systems. Examples HighestHighMediumLowLowest | |||
| Development Item Status DevelopmentItemStatus | The current or historical status of the development item within its workflow, such as 'New', 'In Progress', or 'Closed'. | ||
| Description The Development Item Status represents the state of a work item at a specific point in time. While the Activity Name captures the event of changing status, this attribute captures the state itself. This can be useful for analyzing the state of work at the time an event occurred. This attribute is often used to create the Activity Name but can provide additional context. For instance, analyzing the status field allows for duration analysis of how long items spend in a particular state, such as 'Blocked' or 'Waiting for Review'. Understanding time spent in non-productive states is crucial for identifying systemic delays and improving flow efficiency. Why it matters It enables analysis of time spent in different states, helping to identify delays and time spent in non-value-adding statuses like 'Blocked'. Where to get Available as a primary field on the work item or issue record and is tracked in its history log. Examples NewIn ProgressResolvedClosedIn Review | |||
| Development Item Type DevelopmentItemType | The classification of the development item, such as Bug, Feature, User Story, or Task. | ||
| Description This attribute categorizes the nature of the work being performed. Different types of work items often follow different process paths and have different performance expectations. For example, a 'Bug' might require a rapid hotfix process, while a 'Feature' follows a standard development and testing cycle. Using this attribute, analysts can compare the process flows and performance for different types of work. This helps answer questions like 'Is our bug-fixing process faster than our feature development process?' or 'Do technical debt items experience more rework?'. It is a fundamental dimension for segmenting the data to gain more specific and actionable insights. Why it matters Allows for comparing processes and performance across different work categories, revealing inefficiencies specific to certain types of development. Where to get A standard field on the work item or issue record in most development management systems. Examples BugFeatureUser StoryTechnical DebtTask | |||
| Event End Time EventEndTime | The timestamp indicating when an activity was completed, used to calculate the processing time of an activity. | ||
| Description The Event End Time marks the conclusion of an activity. While many process steps are recorded as instantaneous events where the start and end times are identical, some activities have a measurable duration. For example, a 'Code Review' activity might have a distinct start and end time. This attribute is essential for calculating the active processing time of specific tasks, distinguishing it from idle or waiting time. By comparing the duration between Event Start Time and Event End Time, analysts can measure the effort spent on value-adding activities. This enables a more granular analysis of resource utilization and helps identify which tasks are consuming the most active work time. Why it matters Enables the calculation of active processing time for individual activities, separating it from waiting time and providing a clearer view of effort. Where to get Can be found in event logs or derived by taking the timestamp of the next activity in the sequence for the same work item. Examples 2023-10-26T18:30:00Z2023-10-27T15:00:10Z2023-11-01T11:45:00Z2023-11-05T16:21:45Z | |||
| Project Name ProjectName | The name of the project, repository, or product to which the development item belongs. | ||
| Description The Project Name provides context by grouping work items that belong to a specific product, initiative, or codebase. Development practices and cycle times can vary significantly between projects, for example, a legacy system versus a new greenfield application. This attribute allows for a high-level aggregation and comparison of development processes across different parts of the organization. By filtering the analysis by project, managers can assess the health and efficiency of each development effort. It is also essential for understanding how process performance relates to the specific context and technical environment of a project. Why it matters Allows for process analysis to be segmented by product or initiative, revealing performance differences related to project context. Where to get A standard field on the work item or issue record, or the name of the repository in systems like Git. Examples Customer Portal RevampQ4 Security UpdatesMobile App v3.0API Gateway | |||
| Team Name TeamName | The name of the development team responsible for the work item. | ||
| Description This attribute identifies the specific team, squad, or group responsible for delivering the development item. In larger organizations, work is often distributed across multiple specialized teams like 'Frontend', 'Backend', 'Mobile', or 'Platform'. Analyzing by Team Name allows for performance comparison and best practice sharing between teams. It helps answer questions like 'Which team has the shortest cycle time?' or 'Does one team experience more rework than others?'. This analysis can uncover differences in workflows, skill sets, or resource availability that impact overall delivery performance, providing opportunities for targeted process improvements. Why it matters Enables performance benchmarking between different teams, helping to identify best practices and areas for improvement. Where to get Often associated with the assigned user or as a direct field on the project or work item record. Examples Team PhoenixCore ServicesMobile Apps SquadData Science | |||
| Creator Creator | The user who originally created or reported the development item. | ||
| Description The Creator attribute identifies the person who initiated the work item. This could be a product manager creating a user story, a QA tester logging a bug, or a customer service agent reporting a customer issue. Analyzing the creator of work items can provide insights into the sources of work. For example, a high volume of bugs reported by end-users might indicate quality issues in recent releases. It can also be used to analyze the clarity and quality of initial requirements by correlating the creator with downstream rework or delays. Why it matters Helps identify the originators of work, which can be analyzed to understand sources of demand, bugs, or feature requests. Where to get A standard field like 'Reporter' or 'Author' on the initial creation record of a work item. Examples product.manager@example.comqa.tester1s.chenautomation_bot | |||
| Development Item Severity DevelopmentItemSeverity | Indicates the impact of a bug or issue on the system or end-users. | ||
| Description Severity is distinct from priority, it measures the technical impact of an issue, whereas priority measures the urgency of fixing it. For example, a typo on a rarely visited page might be low severity and low priority, while a critical data corruption issue would be high severity and high priority. This attribute is crucial for quality analysis, especially when analyzing bug-fixing processes. It allows teams to assess whether they are effectively addressing the most severe issues first. By analyzing the cycle time for different severity levels, organizations can ensure that critical system problems are resolved quickly to minimize customer impact. Why it matters Enables analysis of how effectively the team addresses issues based on their technical impact, ensuring critical problems are resolved promptly. Where to get A standard field, particularly for work items of type 'Bug' or 'Incident', in development management systems. Examples 1 - Critical2 - High3 - Medium4 - Low | |||
| Planned Release PlannedRelease | The target software version, release, or product increment in which the item is planned to be deployed. | ||
| Description The Planned Release attribute links a development item to a specific delivery schedule or version. This is often used in release planning to batch features and fixes for a coordinated deployment. Analyzing by Planned Release helps in assessing the predictability and reliability of the release process. It allows for tracking on-time delivery rates by comparing the planned release with the actual deployment date. Furthermore, it helps in managing scope and understanding the flow of work destined for a specific release, highlighting potential risks or delays that could impact the delivery timeline. Why it matters Connects development work to delivery schedules, enabling analysis of on-time delivery rates and release predictability. Where to get A standard field such as 'Fix Version', 'Target Release', or 'Iteration Path' in agile planning and development tools. Examples Version 2.5.1Q3 2024 ReleaseSprint 23Hotfix-2024-10-28 | |||
| Rework Indicator ReworkIndicator | A flag that identifies activities that are part of a rework loop, such as a failed QA test or code review. | ||
| Description The Rework Indicator is a derived boolean or categorical attribute that flags events as being part of a rework cycle. This is typically identified when the process flow moves backward, for instance, from 'QA Testing' back to 'Development in Progress', or when specific rework activities like 'Rework Identified in QA' occur. This attribute is extremely valuable for quality and efficiency analysis. It allows for the direct calculation of rework rates and highlights the parts of the process that generate the most rework. By filtering for rework activities, teams can perform root cause analysis to understand why quality issues are not caught earlier. Reducing rework is a key lever for improving both development speed and product quality. Why it matters Directly quantifies rework, allowing teams to measure its frequency, analyze its causes, and track improvements in quality over time. Where to get Typically derived during data transformation by identifying backward loops in the process flow or specific failure-related activity names. Examples truefalse | |||
Software Development Lifecycle Activities
| Activity | Description | ||
|---|---|---|---|
| Code Merged | The approved code changes are officially integrated into the primary codebase, such as the main or develop branch. This action typically follows a successful code review and automated checks. | ||
| Why it matters This is a critical integration point that confirms development work on a feature is complete and incorporated. It serves as a key milestone before formal testing and deployment stages. Where to get This is a core, explicit event captured from the version control system, logged with a precise timestamp when a pull or merge request is merged. Capture Use the merged timestamp from the pull or merge request event log. Event type explicit | |||
| Deployed To Production | Marks the successful deployment of the development item's associated code to the live production environment. The feature is now available to end-users. | ||
| Why it matters This is the ultimate value-delivery milestone. Measuring the time to this event is crucial for understanding lead time and the organization's ability to deliver value to customers. Where to get Often captured as an explicit event from a Continuous Deployment, or CD, pipeline or release management tool. It can also be inferred from a final status change to 'Released' or 'Done'. Capture Use the successful completion timestamp from a production deployment job or a release record. Event type explicit | |||
| Development Item Closed | Represents the final administrative closure of the work item, confirming that all activities, including deployment and post-deployment validation, are complete. No further work is expected on this item. | ||
| Why it matters As the primary end event, this activity completes the lifecycle for successful items. It is essential for calculating the total cycle time from creation to closure. Where to get Inferred from a status change to a final terminal state such as 'Closed' or 'Done', often accompanied by setting a resolution field. Capture Use the timestamp of the final status change to a 'Closed' or 'Done' state. Event type inferred | |||
| Development Item Created | This activity marks the formal start of the development lifecycle. It represents the initial logging of a new task, bug, feature request, or other unit of work within the management system. | ||
| Why it matters As the primary start event, it is crucial for calculating overall case duration and analyzing the inbound flow of work. It provides a baseline for measuring the entire development cycle time. Where to get This event is captured from the creation timestamp of the primary record, such as an issue, ticket, or work item, in the development management system. Capture Use the creation date field from the main development item record or its audit history. Event type explicit | |||
| Development Started | This activity signifies that a developer has started actively working on the item. It marks the transition from a waiting state to an active coding and implementation phase. | ||
| Why it matters This is a critical milestone for measuring the 'time to first action' and the true start of value-add work. It helps differentiate queue time from active development time. Where to get Commonly inferred from a status change to 'In Progress' or 'Active'. It can also be derived from the first code commit or branch creation associated with the item. Capture Capture the timestamp of the first status change to an 'in progress' state or the timestamp of the first related code commit. Event type inferred | |||
| QA Testing Completed | Signifies that the development item has successfully passed all Quality Assurance checks. The feature is now considered functionally correct and stable from a QA view. | ||
| Why it matters This is a major quality gate and a key milestone before user acceptance testing or deployment. It confirms that the item is ready to proceed to the final stages of the lifecycle. Where to get Typically inferred from a status change out of the primary testing status to a state like 'Ready for UAT', 'QA Approved', or 'Ready for Release'. Capture Identify the timestamp when the item's status moves from a testing state to a subsequent approved state. Event type inferred | |||
| Automated Build Succeeded | Confirms that the source code, including the new changes, has been successfully compiled and packaged by an automated build pipeline. This validates the technical integrity of the integrated code. | ||
| Why it matters A successful build is a fundamental quality gate. Tracking these events helps monitor the health of the CI, or Continuous Integration, process and ensures that broken code is not passed to testers. Where to get Explicitly logged by a Continuous Integration or build automation tool. These events are often linked back to the specific code commit or pull request that triggered them. Capture Capture the completion timestamp of a successful build job from the CI/CD pipeline logs. Event type explicit | |||
| Code Review Completed | Represents the completion of the peer review process where the submitted code has been approved. This signifies that the code meets the required quality and functional standards. | ||
| Why it matters Measuring the time between code submission and review completion helps identify bottlenecks in the peer review process. It is a key indicator of team collaboration and handoff efficiency. Where to get Captured from an explicit approval event on a pull or merge request in the version control system. It can also be inferred from a status change in the development management tool. Capture Use the timestamp of the final approval on the associated pull or merge request. Event type explicit | |||
| Code Submitted for Review | Indicates that a developer has completed the initial coding and has formally submitted the changes for peer review. This is typically done by creating a pull request or merge request. | ||
| Why it matters This activity marks the end of the initial coding phase and the beginning of the quality assurance feedback loop. It is essential for analyzing development and review cycle times separately. Where to get Usually an explicit event captured from an integrated version control system, such as the creation timestamp of a pull request or merge request. Capture Use the creation timestamp of the pull request or merge request linked to the development item. Event type explicit | |||
| Development Item Canceled | Indicates that the development item has been canceled and will not be completed or deployed. This is a terminal state that ends the process prematurely. | ||
| Why it matters This alternative end event is critical for analyzing wasted effort and understanding why work is abandoned. A high rate of cancellations may point to issues in planning or prioritization. Where to get Inferred from a status change to a terminal state like 'Canceled', 'Rejected', or 'Won't Do', usually accompanied by a specific resolution. Capture Capture the timestamp when the item's status changes to a canceled state and its resolution is set accordingly. Event type inferred | |||
| Item Approved for Development | Represents the formal approval or refinement of a development item, confirming it is well-defined and ready for a developer to begin work. This often follows a backlog grooming or planning session. | ||
| Why it matters This milestone helps distinguish between the time an item spends in the backlog versus the time it is actionable. Analyzing the duration before approval highlights potential bottlenecks in planning and prioritization. Where to get Typically inferred from a status or state field change on the development item record, for example, moving from 'New' or 'Backlog' to 'Ready for Dev' or 'Approved'. Capture Identify the timestamp when the item's status changes to an approved or ready state for the first time. Event type inferred | |||
| QA Testing Started | Marks the beginning of the formal Quality Assurance testing phase. A dedicated tester or QA team begins executing test cases against the newly developed feature. | ||
| Why it matters This activity isolates the testing phase of the lifecycle. Analyzing the duration and outcomes of this phase is crucial for understanding testing efficiency and overall product quality. Where to get Most often inferred from a status change in the development management system, such as moving an item to 'In QA' or 'Testing'. Capture Identify the timestamp when the item's status first changes to a designated testing state. Event type inferred | |||
| Rework Identified in QA | Indicates that a defect was found during QA testing, requiring the item to be sent back to the development team for correction. This represents a loop or rework in the process. | ||
| Why it matters Tracking rework is fundamental to process mining for quality analysis. High frequencies of this activity indicate issues in development quality, unclear requirements, or insufficient unit testing. Where to get Inferred by observing a backward status transition in the process flow, for example, from 'In QA' back to 'In Progress', or by the creation of a new linked bug. Capture Capture the timestamp of a status change from a testing state back to a development state. Event type inferred | |||
| UAT Approved | This activity signifies that business stakeholders have formally approved the changes after User Acceptance Testing. It serves as the final business sign-off before the item is deployed. | ||
| Why it matters This is the final quality gate from a business view. It confirms the developed feature delivers the intended value and is a prerequisite for a confident production release. Where to get Inferred from a status change from a UAT state to a subsequent approved state, like 'Ready for Release' or 'UAT Complete'. Capture Capture the timestamp of the status change indicating UAT has been successfully completed. Event type inferred | |||
| UAT Started | Represents the beginning of User Acceptance Testing. During this phase, business stakeholders or end-users validate the functionality to ensure it meets their requirements and expectations. | ||
| Why it matters This activity measures the start of business validation. Analyzing the UAT phase helps understand the alignment between development output and business needs. Where to get Commonly inferred from a status change in the development management tool to a state such as 'In UAT' or 'User Acceptance Testing'. Capture Capture the timestamp of the status change to a designated UAT state. Event type inferred | |||
Extraction Guides
Extraction methods vary by system. For detailed instructions,