{"id":281,"date":"2026-02-08T19:42:29","date_gmt":"2026-02-08T17:42:29","guid":{"rendered":"https:\/\/vittrup-graversen.dk\/?p=281"},"modified":"2026-03-28T12:11:10","modified_gmt":"2026-03-28T10:11:10","slug":"software-factory-naar-ai-agenter-skriver-tester-og-deployer-kode-uden-menneskelig-indblanding","status":"publish","type":"post","link":"https:\/\/vittrup-graversen.dk\/index.php\/2026\/02\/08\/software-factory-naar-ai-agenter-skriver-tester-og-deployer-kode-uden-menneskelig-indblanding\/","title":{"rendered":"Software Factory: N\u00e5r AI-agenter skriver, tester og deployer kode uden menneskelig indblanding"},"content":{"rendered":"\n<p><strong>StrongDM har offentliggjort det f\u00f8rste detaljerede indblik i deres &#8220;Software Factory&#8221; \u2014 en radikalt ny udviklingsmodel hvor AI coding agents skriver, tester og konvergerer kode helt uden menneskelig code review. Simon Willison kalder det den mest konsekvensrige udvikling i softwareudvikling lige nu.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fra YOLO Mode til Software Factory<\/h2>\n\n\n\n<p>Det startede med en observation i slutningen af 2024: Med den anden revision af Claude 3.5 (oktober 2024) begyndte lange agentic coding workflows at <em>akkumulere korrekthed<\/em> i stedet for fejl. F\u00f8r dette vendepunkt ville iterativ brug af LLM&#8217;er til kodning langsomt opbygge fejl \u2014 misforst\u00e5elser, hallucinationer, DRY-violations, library-inkompatibilitet \u2014 indtil projektet kollapsede.<\/p>\n\n\n\n<p>StrongDMs AI-team blev grundlagt 14. juli 2025 med \u00e9n regel: <strong>&#8220;Code must not be written by humans. Code must not be reviewed by humans.&#8221;<\/strong><\/p>\n\n\n\n<p>Deres praktiske benchmark? <em>&#8220;Hvis du ikke har brugt mindst $1.000 p\u00e5 tokens i dag per human engineer, har din software factory plads til forbedring.&#8221;<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Scenarios erstatter tests<\/h2>\n\n\n\n<p>Det f\u00f8rste problem var \u00e5benlyst: Hvis agenter skriver b\u00e5de kode OG tests, snyder de. <code>return true<\/code> er en fantastisk m\u00e5de at best\u00e5 en test p\u00e5, men producerer ikke brugbar software.<\/p>\n\n\n\n<p>StrongDMs l\u00f8sning er inspireret af Cem Kaners <em>Scenario Testing<\/em> (2003). De genopfandt begrebet &#8220;scenario&#8221; som en end-to-end user story, opbevaret <strong>uden for kodebasen<\/strong> \u2014 ligesom et holdout-set i model training. Scenarierne kan ikke ses af coding agents, hvilket forhindrer reward hacking.<\/p>\n\n\n\n<p>I stedet for boolsk succes (&#8220;test suite er gr\u00f8n&#8221;) bruger de <em>satisfaction<\/em>: Af alle observerede trajectories gennem alle scenarios, hvor stor en andel tilfredsstiller brugeren? En probabilistisk og empirisk tilgang frem for en deterministisk.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Digital Twin Universe: Klon hele dit SaaS-\u00f8kosystem<\/h2>\n\n\n\n<p>Den mest banebrydende del af StrongDMs setup er deres <strong>Digital Twin Universe (DTU)<\/strong> \u2014 behaviorale kloner af de tredjeparts-tjenester deres software afh\u00e6nger af. De har bygget twins af Okta, Jira, Slack, Google Docs, Google Drive og Google Sheets, der replikerer API&#8217;er, edge cases og observerbar adf\u00e6rd.<\/p>\n\n\n\n<p>Tricket? De dumpede den fulde offentlige API-dokumentation for hver tjeneste ind i deres agent harness og lod den bygge en imitation som en selvst\u00e6ndig Go binary. Derefter en forenklet UI ovenp\u00e5 for at fuldende simulationen.<\/p>\n\n\n\n<p>N\u00f8glestrategien, som DTU-skaberen Jay Taylor forklarede: Brug popul\u00e6re offentlige reference SDK-klientbiblioteker som kompatibilitetsm\u00e5l, med 100% kompatibilitet som m\u00e5l.<\/p>\n\n\n\n<p>Med DTU kan de validere i volumener og hastigheder langt over produktionsgr\u00e6nser \u2014 tusindvis af scenarios i timen, uden rate limits, abuse detection eller API-omkostninger.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Nye teknikker til en ny \u00e6ra<\/h2>\n\n\n\n<p>StrongDM introducerer ogs\u00e5 flere nye teknikker:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Gene Transfusion:<\/strong> Agenter ekstraherer patterns fra eksisterende systemer og genbruger dem andetsteds<\/li>\n<li><strong>Semports:<\/strong> Direkte portering af kode fra \u00e9t sprog til et andet via semantisk forst\u00e5else<\/li>\n<li><strong>Pyramid Summaries:<\/strong> Multiple niveauer af resum\u00e9er, s\u00e5 agenter hurtigt kan enumerate korte summaries og zoome ind p\u00e5 detaljer efter behov<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Hvad det betyder for udviklere<\/h2>\n\n\n\n<p>Simon Willison, der fik en tidlig demo, fremh\u00e6ver det centrale sp\u00f8rgsm\u00e5l: <em>Hvordan beviser du, at software virker, n\u00e5r b\u00e5de implementering og tests skrives af coding agents?<\/em><\/p>\n\n\n\n<p>StrongDMs svar \u2014 holdout scenarios, probabilistisk satisfaction-scoring, og en Digital Twin Universe \u2014 er det mest gennemt\u00e6nkte bud vi har set. Det er ikke et akademisk tankeeksperiment. Det er produktionskode. For sikkerhedssoftware.<\/p>\n\n\n\n<p>Willison noterer, at &#8220;no hand-coded software&#8221; var radikalt i juli 2025, men at han nu ser et betydeligt antal erfarne udviklere adoptere denne tilgang fra januar 2026.<\/p>\n\n\n\n<p>For os der arbejder med agentic engineering, er StrongDMs Software Factory et konkret blueprint for n\u00e6ste skridt: Fra AI-assisteret udvikling til AI-drevet udvikling, hvor menneskets rolle skifter fra at skrive kode til at definere scenarios og validere satisfaction.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Kilder<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/factory.strongdm.ai\" target=\"_blank\" rel=\"noopener\">StrongDM: Software Factories and the Agentic Moment<\/a><\/li>\n<li><a href=\"https:\/\/simonwillison.net\/2026\/Feb\/7\/software-factory\/\" target=\"_blank\" rel=\"noopener\">Simon Willison: How StrongDM&#8217;s AI team build serious software without even looking at the code<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/strongdm\/attractor\" target=\"_blank\" rel=\"noopener\">github.com\/strongdm\/attractor<\/a> \u2014 open source release<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<p class=\"has-small-font-size\" style=\"color:#888888\"><em>Denne artikel er skrevet i samarbejde med AI, og efterf\u00f8lgende redigeret af et rigtigt menneske \ud83d\ude42<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Software Factory: N\u00e5r AI-agenter skriver, tester og deployer kode uden menneskelig indblanding. Fremtidens udvikling er her.<\/p>\n","protected":false},"author":1,"featured_media":280,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[24],"tags":[23],"class_list":["post-281","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agentic-engineering","tag-claudecode"],"acf":[],"_links":{"self":[{"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/posts\/281","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/comments?post=281"}],"version-history":[{"count":3,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/posts\/281\/revisions"}],"predecessor-version":[{"id":1069,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/posts\/281\/revisions\/1069"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/media\/280"}],"wp:attachment":[{"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/media?parent=281"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/categories?post=281"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vittrup-graversen.dk\/index.php\/wp-json\/wp\/v2\/tags?post=281"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}