Your Software Development Lifecycle Data Template

Universal process mining template
Your Software Development Lifecycle Data Template

Your Software Development Lifecycle Data Template

Universal process mining 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.
New to event logs? Learn how to create a process mining event log.

Software Development Lifecycle Attributes

These recommended data fields should be included in your event log, enabling comprehensive analysis and deep insights into your software development processes.
5 Required 7 Recommended 4 Optional
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
Required Recommended Optional

Software Development Lifecycle Activities

Capture these key process steps and significant milestones to ensure accurate process discovery and a complete understanding of your development journey.
6 Recommended 9 Optional
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
Recommended Optional

Extraction Guides

How to get your data for process mining.

Extraction methods vary by system. For detailed instructions,

read our ETL guide

or select a specific process and system.