{"id":4150,"date":"2026-10-25T23:07:37","date_gmt":"2026-10-25T23:07:37","guid":{"rendered":"https:\/\/www.smharter.com\/blog\/?p=4150"},"modified":"2026-10-25T23:11:41","modified_gmt":"2026-10-25T23:11:41","slug":"what-good-looks-like-for-an-ai-augmented-development-workflow-its-harness","status":"publish","type":"post","link":"http:\/\/www.smharter.com\/blog\/2026\/10\/25\/what-good-looks-like-for-an-ai-augmented-development-workflow-its-harness\/","title":{"rendered":"What &#8220;Good&#8221; looks like for an AI-augmented development workflow &amp; its harness"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Whether you use a popular third-party workflow, pursue the vision of an AI software factory, or rely on a homegrown approach, use these criteria presented below to audit your current workflow and harness, compare alternatives, and identify opportunities for improvement.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">AI is a multiplier: what you feed in plays a role in what you get out<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">AI is a multiplier; it means that your environment influences the effectiveness of your workflow and its harness. Factors that play a role include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>the AI readiness of your existing codebase and the infrastructure<\/li>\n\n\n\n<li>your org and teams&#8217; ways of working and how well they fit AI-augmented development<\/li>\n\n\n\n<li>your org and teams&#8217; existing skills and experience in using, adapting and evolving the workflow and its harness<\/li>\n\n\n\n<li>how tightly the workflow and its harness fit the context and circumstances <sup data-fn=\"fc13a37a-cde1-42a4-b298-d5dc96016251\" class=\"fn\"><a href=\"#fc13a37a-cde1-42a4-b298-d5dc96016251\" id=\"fc13a37a-cde1-42a4-b298-d5dc96016251-link\">1<\/a><\/sup><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">In general terms<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Individual components such as the foundation models used, tooling, guardrails, deterministic verification, self-correcting loops, MCPs, Skills, Hooks, all need to be good. Nonetheless, the evaluation requires looking at the outcomes and impacts they create together when used with the given codebase by the people doing the work.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Characteristics and criteria<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The characteristics and criteria visible in a good workflow and its harness are listed below, organised in six groups.<br><br><strong>A workflow with its harness is good when it &#8230;<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Quality<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Improves or preserves the quality of the code, and doesn&#8217;t induce tech debt under the radar<\/li>\n\n\n\n<li>Reduces or doesn&#8217;t increase the number of defects and production incidents<\/li>\n\n\n\n<li>Maintains an overall architectural and design coherence without causing a drift<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">ROI<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Is efficient in terms of tokens spent and LLM costs, with bounded, predictable costs<\/li>\n\n\n\n<li>Ships code faster, driving positive business impact and increasing business responsiveness<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">People<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Does not make cognitive fatigue spike<\/li>\n\n\n\n<li>Limits systems and domain knowledge erosion<\/li>\n\n\n\n<li>Runs autonomously for long stints without causing frequent context-switching and multi-tasking<\/li>\n\n\n\n<li>Assists code reviewers with automated pre-reviews and guides that make sense of complex changes<\/li>\n\n\n\n<li>Supports the collaboration between Product Managers and Developers without causing exhaustion<\/li>\n\n\n\n<li>Delivers valuable change at a sustainable pace without causing users&#8217; exhaustion<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Workflow<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Keeps the planning (the P of the PEV phases) time and effort proportional to the actual complexity of the task<\/li>\n\n\n\n<li>Supports Business-Product-Tech collaboration leading to global (not local) improvements<\/li>\n\n\n\n<li>Augments employees effectively rather than replacing them, without causing overall deterioration<\/li>\n\n\n\n<li>Keeps tooling and CI\/CD pipelines running without being overloaded and becoming a bottleneck<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Model<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Performs consistently and predictably, creating a sense of trust and giving a sense of control<\/li>\n\n\n\n<li>Paces time and effort proportionally to the complexity of the task at hand<\/li>\n\n\n\n<li>Communicates and offers solutions transparently, in a way that feels natural to the human users<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Workflow and Harness itself<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Is fit for purpose, for the specific needs, context and circumstances<\/li>\n\n\n\n<li>Is simple <sup data-fn=\"8142c9ff-d5f9-4876-95c0-25b2704637d8\" class=\"fn\"><a href=\"#8142c9ff-d5f9-4876-95c0-25b2704637d8\" id=\"8142c9ff-d5f9-4876-95c0-25b2704637d8-link\">2<\/a><\/sup>:<br>&#8211; easy to understand, evolve, adapt to changing needs and circumstances<br>&#8211; easy to recreate with AI, whenever new models and tools become available<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">How some of these criteria come together with their tradeoffs, read this <sup data-fn=\"f7df63be-0593-42de-af6d-c5fc57bb1b20\" class=\"fn\"><a href=\"#f7df63be-0593-42de-af6d-c5fc57bb1b20\" id=\"f7df63be-0593-42de-af6d-c5fc57bb1b20-link\">3<\/a><\/sup>.<br><br><strong>What other characteristics and criteria would you suggest?<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Other suggested reading<\/h2>\n\n\n<ol class=\"wp-block-footnotes\"><li id=\"fc13a37a-cde1-42a4-b298-d5dc96016251\">This is an old, but still emblematic. example of how different contexts call for different approaches: <a href=\"https:\/\/www.smharter.com\/blog\/2026\/05\/14\/coding-with-ai-2-alternative-philosophies\/\" data-type=\"post\" data-id=\"3586\" target=\"_blank\" rel=\"noopener\">Coding with AI: 2 alternative philosophies<\/a> <a href=\"#fc13a37a-cde1-42a4-b298-d5dc96016251-link\" aria-label=\"Jump to footnote reference 1\">\u21a9\ufe0e<\/a><\/li><li id=\"8142c9ff-d5f9-4876-95c0-25b2704637d8\"><a href=\"https:\/\/martinfowler.com\/articles\/are-harnesses-worth-the-cost.html\" data-type=\"link\" data-id=\"https:\/\/martinfowler.com\/articles\/are-harnesses-worth-the-cost.html\" target=\"_blank\" rel=\"noopener\">Are Harnesses Worth the Cost?<\/a> <a href=\"#8142c9ff-d5f9-4876-95c0-25b2704637d8-link\" aria-label=\"Jump to footnote reference 2\">\u21a9\ufe0e<\/a><\/li><li id=\"f7df63be-0593-42de-af6d-c5fc57bb1b20\"><a href=\"https:\/\/www.smharter.com\/blog\/2026\/10\/19\/engineering-the-ai-coding-workflow-key-trade-offs\/\" data-type=\"post\" data-id=\"3780\">Engineering the AI-Coding Workflow: Key Trade-offs<\/a> <a href=\"#f7df63be-0593-42de-af6d-c5fc57bb1b20-link\" aria-label=\"Jump to footnote reference 3\">\u21a9\ufe0e<\/a><\/li><\/ol>\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image is-resized\">\n<figure class=\"alignright size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"420\" height=\"532\" src=\"https:\/\/www.smharter.com\/blog\/wp-content\/uploads\/ai-develop.png\" alt=\"\" class=\"wp-image-2071\"\/><\/figure>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"text-ads\">\n\t<h3>Ship Production-grade Software Faster with AI. No AI slop.<\/h3>\n<br>\n\t<h3>Drive Value Faster with AI. No AI bloat.<\/h3>\n\t<p>\n\t<br>\n\tSee how we can help across the full AI adoption lifecycle.\n\t<br>\n\t<br>\n\t<\/p>\n\n\t<div class=\"local-scroll\">\n\n\t\t<a href=\"\/ai-services.html\" target=\"_blank\" class=\"btn elastic-btn-mod btn-mod btn-dark btn-medium btn-round\" onclick=\"ga('send','event','Blog tech-ads','Click AI Services','AI Services');\" rel=\"noopener noreferrer\">\n\t\tAI Services\n\t\t<\/a>\n\t<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>A list of characteristics and criteria to judge the quality of an AI-augmented workflow, and compare different workflows.<\/p>\n","protected":false},"author":2,"featured_media":4165,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"[{\"content\":\"This is an old, but still emblematic. example of how different contexts call for different approaches: <a href=\\\"https:\/\/www.smharter.com\/blog\/2026\/05\/14\/coding-with-ai-2-alternative-philosophies\/\\\" data-type=\\\"post\\\" data-id=\\\"3586\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\">Coding with AI: 2 alternative philosophies<\/a>\",\"id\":\"fc13a37a-cde1-42a4-b298-d5dc96016251\"},{\"content\":\"<a href=\\\"https:\/\/martinfowler.com\/articles\/are-harnesses-worth-the-cost.html\\\" data-type=\\\"link\\\" data-id=\\\"https:\/\/martinfowler.com\/articles\/are-harnesses-worth-the-cost.html\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\">Are Harnesses Worth the Cost?<\/a>\",\"id\":\"8142c9ff-d5f9-4876-95c0-25b2704637d8\"},{\"content\":\"<a href=\\\"https:\/\/www.smharter.com\/blog\/2026\/10\/19\/engineering-the-ai-coding-workflow-key-trade-offs\/\\\" data-type=\\\"post\\\" data-id=\\\"3780\\\">Engineering the AI-Coding Workflow: Key Trade-offs<\/a>\",\"id\":\"f7df63be-0593-42de-af6d-c5fc57bb1b20\"}]"},"categories":[7],"tags":[],"class_list":["post-4150","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-assisted-coding"],"_links":{"self":[{"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/posts\/4150","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/comments?post=4150"}],"version-history":[{"count":14,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/posts\/4150\/revisions"}],"predecessor-version":[{"id":4164,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/posts\/4150\/revisions\/4164"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/media\/4165"}],"wp:attachment":[{"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/media?parent=4150"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/categories?post=4150"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.smharter.com\/blog\/wp-json\/wp\/v2\/tags?post=4150"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}