{"id":47098,"date":"2024-09-17T02:19:52","date_gmt":"2024-09-17T02:19:52","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=47098"},"modified":"2024-09-17T02:20:07","modified_gmt":"2024-09-17T02:20:07","slug":"azure-devops-system-process-inherited-processes","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/azure-devops-system-process-inherited-processes\/","title":{"rendered":"Azure DevOps: System Process &amp; Inherited Processes &amp; Add New Field"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Comparison between <strong>System Processes<\/strong> and <strong>Inherited Processes<\/strong><\/h2>\n\n\n\n<p>Here is a comparison between <strong>System Processes<\/strong> and <strong>Inherited Processes<\/strong> in Azure DevOps in a tabular format:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Aspect<\/strong><\/th><th><strong>System Process<\/strong><\/th><th><strong>Inherited Process<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Definition<\/strong><\/td><td>Default process templates provided by Azure DevOps, like Agile, Scrum, or CMMI.<\/td><td>Customized versions of system processes created by users to fit specific project needs.<\/td><\/tr><tr><td><strong>Customization<\/strong><\/td><td>Cannot be customized directly. Fields, states, and workflows are fixed.<\/td><td>Fully customizable. You can add custom fields, states, rules, and workflows.<\/td><\/tr><tr><td><strong>Examples<\/strong><\/td><td>Agile, Scrum, CMMI (default templates).<\/td><td>Custom Agile, Custom Scrum (inherited versions).<\/td><\/tr><tr><td><strong>Creation<\/strong><\/td><td>Created by Azure DevOps and applied by default.<\/td><td>Created by users by inheriting from a system process.<\/td><\/tr><tr><td><strong>Modifying Work Items<\/strong><\/td><td>No modifications allowed.<\/td><td>Allows modifications such as adding custom fields, workflows, and layout changes.<\/td><\/tr><tr><td><strong>Control over Fields<\/strong><\/td><td>Pre-defined fields only.<\/td><td>Can add, edit, or remove fields based on project requirements.<\/td><\/tr><tr><td><strong>Control over States\/Workflows<\/strong><\/td><td>Pre-defined states and workflows.<\/td><td>Can modify states (e.g., adding new states) and workflows for custom requirements.<\/td><\/tr><tr><td><strong>Assigning to Projects<\/strong><\/td><td>Assigned by default when creating new projects unless otherwise specified.<\/td><td>Must be manually assigned to a project after creation.<\/td><\/tr><tr><td><strong>Suitability<\/strong><\/td><td>Suitable for standard workflows without customization needs.<\/td><td>Ideal for organizations needing customization for specific project workflows.<\/td><\/tr><tr><td><strong>Versioning<\/strong><\/td><td>System processes are maintained and updated by Microsoft, and updates are applied automatically.<\/td><td>Inherited processes are maintained by the user, and they won\u2019t receive updates unless modified manually.<\/td><\/tr><tr><td><strong>Security\/Permissions<\/strong><\/td><td>Default system permissions.<\/td><td>Permissions and rules can be adjusted for custom processes.<\/td><\/tr><tr><td><strong>Typical Use Case<\/strong><\/td><td>Teams that follow industry-standard methodologies like Agile, Scrum, or CMMI.<\/td><td>Teams that need specific modifications to standard methodologies.<\/td><\/tr><tr><td><strong>Upgrade Path<\/strong><\/td><td>Cannot be upgraded or changed directly.<\/td><td>Inherited processes can be modified as project needs evolve.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Key Takeaway:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>System Processes<\/strong> are rigid and predefined, ideal for teams that do not need any customizations.<\/li>\n\n\n\n<li><strong>Inherited Processes<\/strong> are flexible and customizable, allowing teams to tailor the process to their specific needs.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Steps to Enable Custom Fields in Azure DevOps:<\/h2>\n\n\n\n<p>The ability to add custom fields is disabled in <strong>Azure DevOps<\/strong>, it is likely because your project is using a <strong>System Process<\/strong> (like Agile, Scrum, or CMMI), and you cannot modify system processes directly. Azure DevOps only allows you to customize work items in <strong>Inherited Processes<\/strong>.<\/p>\n\n\n\n<p>Here\u2019s how you can enable customization by creating an <strong>Inherited Process<\/strong>:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Steps to Enable Custom Fields in Azure DevOps:<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Go to Organization Settings<\/strong>:\n<ul class=\"wp-block-list\">\n<li>Navigate to your <strong>Azure DevOps<\/strong> organization, and in the top-right corner, click on the user icon and select <strong>Organization settings<\/strong>.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Navigate to Process<\/strong>:\n<ul class=\"wp-block-list\">\n<li>In the <strong>Settings<\/strong> menu on the left-hand side, under the <strong>Boards<\/strong> section, click on <strong>Process<\/strong>.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Create an Inherited Process<\/strong>:\n<ul class=\"wp-block-list\">\n<li>Find the process that your project is using (for example, <strong>Agile<\/strong>, <strong>Scrum<\/strong>, or <strong>CMMI<\/strong>).<\/li>\n\n\n\n<li>Click the three dots (<code>...<\/code>) next to the process and select <strong>Create inherited process<\/strong>.<\/li>\n\n\n\n<li>Name your inherited process and save it.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Assign the Inherited Process to Your Project<\/strong>:\n<ul class=\"wp-block-list\">\n<li>After creating the inherited process, go to the <strong>Project Settings<\/strong> of your project.<\/li>\n\n\n\n<li>Click on <strong>Boards<\/strong> > <strong>Project configuration<\/strong>.<\/li>\n\n\n\n<li>Find the section that allows you to change the process and assign your project to the newly created inherited process.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Add Custom Fields<\/strong>:\n<ul class=\"wp-block-list\">\n<li>Once your project is associated with the inherited process, go back to <strong>Organization Settings<\/strong> > <strong>Processes<\/strong>.<\/li>\n\n\n\n<li>Click on the inherited process, then navigate to the <strong>Work Item Types<\/strong> where you can now add custom fields by following the steps outlined earlier.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p>By creating an <strong>Inherited Process<\/strong>, you&#8217;ll be able to unlock the customization options, including adding custom fields, modifying work item forms, and tailoring the process to fit your project&#8217;s needs.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"498\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-5-1024x498.png\" alt=\"\" class=\"wp-image-47099\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-5-1024x498.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-5-300x146.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-5-768x373.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-5.png 1259w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"524\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-6-1024x524.png\" alt=\"\" class=\"wp-image-47100\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-6-1024x524.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-6-300x154.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-6-768x393.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-6.png 1283w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"638\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-7-1024x638.png\" alt=\"\" class=\"wp-image-47101\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-7-1024x638.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-7-300x187.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-7-768x479.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-7.png 1147w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"587\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-8-1024x587.png\" alt=\"\" class=\"wp-image-47102\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-8-1024x587.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-8-300x172.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-8-768x440.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2024\/09\/image-8.png 1085w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Comparison between System Processes and Inherited Processes Here is a comparison between System Processes and Inherited Processes in Azure DevOps in a tabular format: Aspect System Process&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-47098","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/47098","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=47098"}],"version-history":[{"count":2,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/47098\/revisions"}],"predecessor-version":[{"id":47104,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/47098\/revisions\/47104"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=47098"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=47098"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=47098"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}