<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Test Manager til Key2Quality &#8211; Key2Quality</title>
	<atom:link href="https://key2quality.dk/feed/" rel="self" type="application/rss+xml" />
	<link>https://key2quality.dk/</link>
	<description>IT-kvalitet gennem ledelse, kvalitets­sikring og uddannelse</description>
	<lastBuildDate>Thu, 17 Sep 2026 06:23:01 +0000</lastBuildDate>
	<language>da-DK</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://key2quality.dk/wp-content/uploads/2024/02/k2q_logo-150x150.png</url>
	<title>Test Manager til Key2Quality &#8211; Key2Quality</title>
	<link>https://key2quality.dk/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Test Manager til Key2Quality</title>
		<link>https://key2quality.dk/test-manager-til-key2quality/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Mon, 14 Sep 2026 11:58:00 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[ledige stillinger]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=11440</guid>

					<description><![CDATA[<p>søg stilling Test Manager til Key2Quality  Kan du skabe overblik, når et projekt føles kaotisk? Trives du med at holde styr på risici, testfremdrift og samtidig sørge for, at dine stakeholders er i loopet?  Er det vigtigt for dig at holde dine aftaler, være transparent om problemstillinger og leve op til forventninger hos både kunder [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/test-manager-til-key2quality/">Test Manager til Key2Quality</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="11440" class="elementor elementor-11440" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-111fe816 e-flex e-con-boxed e-con e-parent" data-id="111fe816" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-8616517 elementor-widget elementor-widget-button" data-id="8616517" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
					<div class="elementor-button-wrapper">
			<a class="elementor-button elementor-button-link elementor-size-sm" href="https://bit.ly/4dAqyDs">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">søg stilling</span>
					</span>
					</a>
		</div>
				</div>
				</div>
				<div class="elementor-element elementor-element-2ef023e0 elementor-widget elementor-widget-text-editor" data-id="2ef023e0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
			<style>/*! elementor - v3.22.0 - 26-06-2024 */
.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#69727d;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#69727d;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}</style>				<h3><b><span data-contrast="none">Test Manager til Key2Quality</span></b><span data-ccp-props="{}"> </span></h3><p><span data-contrast="none">Kan du skabe overblik, når et projekt føles kaotisk? Trives du med at holde styr på risici, testfremdrift og samtidig sørge for, at dine stakeholders er i loopet?</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><p><span data-contrast="none">Er det vigtigt for dig at holde dine aftaler, være transparent om problemstillinger og leve op til forventninger hos både kunder og kollegaer?</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><p><span data-contrast="none">Betyder det noget for dig, at der er plads til et godt grin midt i en travl uge og at bidrage til et godt og trygt kollegafællesskab med smil, sparring og god stemning op kontoret?</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><p><span data-contrast="none">Kan du nikke genkendende til alle tre, så kan det være dig, vi leder efter. Vi navigerer efter tre værdier &#8211; ordentlighed, faglighed og glæde. Fagligheden hjælper vi gerne hinanden med at bygge videre på, imens det gode humør og lysten til at være en del af vores fællesskab er noget, du selv har med.</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><p><b><span data-contrast="none">Vores værdier</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="none">Det er nemt at skrive ord som ordentlighed, faglighed og arbejdsglæde på en hjemmeside. For os handler det om noget mere håndgribeligt:</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><ul><li data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="1" data-aria-level="1"><b><span data-contrast="none">Ordentlighed</span></b><span data-contrast="none"> - du kan regne med os, og vi kan regne med dig. Vi holder, hvad vi lover, og siger tingene ligeud, også når det er lettere at lade være.</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="2" data-aria-level="1"><b><span data-contrast="none">Faglighed</span></b><span data-contrast="none"> - vi er nysgerrige på at blive dygtigere, og vi deler gerne ud af det, vi kan. Der er sjældent langt fra et fagligt spørgsmål til en god sparring.</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="6" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="3" data-aria-level="1"><b><span data-contrast="none">Arbejdsglæde</span></b><span data-contrast="none"> - vi tror på, at gode resultater og en masse grin ikke udelukker hinanden. Faktisk går det som regel hånd i hånd.</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><p><b><span data-contrast="none">Om rollen</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="none">Som senior Test Manager får du ansvaret for testmanagement på projekter og programmer hos vores kunder &#8211; typisk store private virksomheder og offentlige organisationer, i både vandfalds- og agile projekter. I praksis kommer du til at arbejde med:</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><ul><li data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="1" data-aria-level="1"><b><span data-contrast="none">Testmanagement</span></b><span data-contrast="none"> - planlægning, styring og opfølgning på tværs af projektet</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="2" data-aria-level="1"><b><span data-contrast="none">Quality coaching</span></b><span data-contrast="none"> - på team- og ART-niveau, herunder agil testtræning</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="3" data-aria-level="1"><b><span data-contrast="none">Test governance</span></b><span data-contrast="none"> - testpolitikker, -strategier og testestimering</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="5" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="4" data-aria-level="1"><b><span data-contrast="none">Koordinering</span></b><span data-contrast="none"> - underleverandørstyring og accepttest</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><p><span data-contrast="none">Du er som regel ude hos kunden, men vi ses ugentligt på kontoret i Skanderborg. Her sparrer vi, dygtiggør os sammen og samler op med en kop kaffe, te eller Pepsi Max (indsæt selv flere alternativer) og en snak, der sjældent kun handler om test. De fleste opgaver er fuldtid og varer typisk mellem tre måneder og et par år.</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><p><b><span data-contrast="none">Hvorfor Key2Quality?</span></b><span data-ccp-props="{&quot;335559738&quot;:280,&quot;335559739&quot;:120}"> </span></p><p><span data-contrast="none">Key2Quality er grundlagt 2020 af vores direktør Margit Sejerkilde med kvalitetssikring som vores kernekompetence. I dag har vi både QA, kursusforretning samt IT-facilitering og projektledelse på paletten. Vi er </span><span data-contrast="none">34</span><span data-contrast="none"> kolleger, og spænder over en stadig voksende kundebase vest for Storebælt. Vi har aldrig ladet væksten løbe hurtigere end kulturen. Vi har hele tiden prioriteret de rigtige mennesker frem for de mange, og det kan man mærke, når man kommer forbi kontoret.</span><span data-ccp-props="{&quot;335559739&quot;:160}"> </span></p><p><span data-contrast="none">Hos os får du:</span><span data-ccp-props="{&quot;335559739&quot;:120}"> </span></p><ul><li data-leveltext="•" data-font="Open Sans" data-listid="1" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:504,&quot;335559991&quot;:288,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;•&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" data-aria-posinset="1" data-aria-level="1"><span data-contrast="none">En buddy, når du starter</span><span data-ccp-props="{&quot;335559739&quot;:100}"> </span></li></ul><ul><li data-leveltext="•" data-font="Open Sans" data-listid="1" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:504,&quot;335559991&quot;:288,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;•&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" data-aria-posinset="2" data-aria-level="1"><span data-contrast="none">Faglige netværk på tværs af huset</span><span data-ccp-props="{&quot;335559739&quot;:100}"> </span></li></ul><ul><li data-leveltext="•" data-font="Open Sans" data-listid="1" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:504,&quot;335559991&quot;:288,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;•&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" data-aria-posinset="3" data-aria-level="1"><span data-contrast="none">Kolleger, der både kan hjælpe dig med faglig sparring og ikke mindst være din støtte, når det bøvler og din high-five kammerat, når der skal fejres.</span><span data-ccp-props="{&quot;335559739&quot;:100}"> </span></li></ul><ul><li data-leveltext="•" data-font="Open Sans" data-listid="1" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:504,&quot;335559991&quot;:288,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;•&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" data-aria-posinset="4" data-aria-level="1"><span data-contrast="none">Opgaver, vi matcher til dine styrker og interesser. Det giver bedre trivsel og bedre resultater for kunderne.</span><span data-ccp-props="{&quot;335559739&quot;:100}"> </span></li></ul><ul><li data-leveltext="•" data-font="Open Sans" data-listid="1" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:504,&quot;335559991&quot;:288,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;•&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" data-aria-posinset="5" data-aria-level="1"><span data-contrast="none">Indflydelse på, hvor vores forretningsområde for IT-kvalitetssikring skal bevæge sig hen.</span><span data-ccp-props="{&quot;335559739&quot;:200}"> </span></li></ul><ul><li data-leveltext="•" data-font="Open Sans" data-listid="1" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:504,&quot;335559991&quot;:288,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;•&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" data-aria-posinset="6" data-aria-level="1"><span data-contrast="none">Mulighed for at arbejde på fagligt spændende projekter hos mindst lige så spændende og alsidige kunder</span><span data-ccp-props="{&quot;335559739&quot;:200}"> </span></li></ul><p><b><span data-contrast="none">Det håber vi, du kan nikke genkendende til</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="none">Der er selvfølgelig en grund til, at vi starter med værdierne, for det er vigtigt for os, at du kan spejle dig i dem og har lyst til at være en aktiv del af et unikt fællesskab &#8211; ikke bare møde ind og gå igen. </span> </p><p><span data-contrast="none">Derudover er det rart, hvis:</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><ul><li data-leveltext="" data-font="Symbol" data-listid="12" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="1" data-aria-level="1"><span data-contrast="none">Du har et par års erfaring med softwaretest og stadig synes, det er spændende</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="12" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="2" data-aria-level="1"><span data-contrast="none">Du har testcertificeringer, eller har lyst til at tage dem, når du er startet</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="12" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="3" data-aria-level="1"><span data-contrast="none">Du sætter pris på sparring og bliver skarpere af at blive udfordret i trygge rammer</span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="12" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="4" data-aria-level="1"><span data-contrast="none">Du ikke er bange for en stejl læringskurve</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></li></ul><p><b><span data-contrast="none">Løn og ansøgning</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="none">Løn forhandles individuelt ud fra din erfaring og dine kompetencer.</span></p><p><span data-contrast="none">Vil du høre mere om rollen, før du søger, så ring endelig til <a href="https://key2quality.dk/vores-team/jonas-sloth/">Jonas Sloth</a>, leder af IT Kvalitetssikring, på 4940 2794.</span></p><p><span data-contrast="none">Vi glæder os til at høre fra dig &#8211; og til forhåbentlig snart møde dig over en kop kaffe.</span><span data-ccp-props="{&quot;134233117&quot;:true,&quot;134233118&quot;:true}"> </span></p><p><span data-ccp-props="{}"> </span></p>						</div>
				</div>
				<div class="elementor-element elementor-element-3c1f371 elementor-widget elementor-widget-button" data-id="3c1f371" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
					<div class="elementor-button-wrapper">
			<a class="elementor-button elementor-button-link elementor-size-sm" href="https://bit.ly/4dAqyDs">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">søg stilling</span>
					</span>
					</a>
		</div>
				</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-ec1f481 padding-horizontal-right padding-as-margin margin-vertical-both padding-vertical-both rounding-right container-theme-gray e-con-full e-flex e-con e-parent" data-id="ec1f481" data-element_type="container" id="tilmeld">
		<div class="elementor-element elementor-element-9413bf2 e-con-full e-flex e-con e-child" data-id="9413bf2" data-element_type="container">
		<div class="elementor-element elementor-element-1b7bfac padding-as-margin e-con-full e-flex e-con e-child" data-id="1b7bfac" data-element_type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-2ed7f33 e-con-full e-flex e-con e-child" data-id="2ed7f33" data-element_type="container">
				<div class="elementor-element elementor-element-491b0f8 elementor-widget elementor-widget-heading" data-id="491b0f8" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
			<style>/*! elementor - v3.22.0 - 26-06-2024 */
.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}</style><h2 class="elementor-heading-title elementor-size-default"><span class="wordanim"><span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":0}'>Tilmelding</span></span> <span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":50}'>til</span></span> <span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":100}'>seminar</span></span> </span></h2>		</div>
				</div>
				<div class="elementor-element elementor-element-981e9b9 elementor-widget elementor-widget-text-editor" data-id="981e9b9" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p>Tilmeld dig via formularen herunder.</p><p>Når du har tilmeldt dig, modtager du automatisk en bekræftelse pr. mail.</p>						</div>
				</div>
				<div class="elementor-element elementor-element-b82b8ad elementor-button-align-start elementor-widget elementor-widget-form" data-id="b82b8ad" data-element_type="widget" data-settings="{&quot;step_next_label&quot;:&quot;N\u00e6ste&quot;,&quot;step_previous_label&quot;:&quot;Tidligere&quot;,&quot;button_width&quot;:&quot;100&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}" data-widget_type="form.default">
				<div class="elementor-widget-container">
			<style>/*! elementor-pro - v3.22.0 - 24-06-2024 */
.elementor-button.elementor-hidden,.elementor-hidden{display:none}.e-form__step{width:100%}.e-form__step:not(.elementor-hidden){display:flex;flex-wrap:wrap}.e-form__buttons{flex-wrap:wrap}.e-form__buttons,.e-form__buttons__wrapper{display:flex}.e-form__indicators{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;font-size:13px;margin-bottom:var(--e-form-steps-indicators-spacing)}.e-form__indicators__indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-basis:0;padding:0 var(--e-form-steps-divider-gap)}.e-form__indicators__indicator__progress{width:100%;position:relative;background-color:var(--e-form-steps-indicator-progress-background-color);border-radius:var(--e-form-steps-indicator-progress-border-radius);overflow:hidden}.e-form__indicators__indicator__progress__meter{width:var(--e-form-steps-indicator-progress-meter-width,0);height:var(--e-form-steps-indicator-progress-height);line-height:var(--e-form-steps-indicator-progress-height);padding-right:15px;border-radius:var(--e-form-steps-indicator-progress-border-radius);background-color:var(--e-form-steps-indicator-progress-color);color:var(--e-form-steps-indicator-progress-meter-color);text-align:right;transition:width .1s linear}.e-form__indicators__indicator:first-child{padding-left:0}.e-form__indicators__indicator:last-child{padding-right:0}.e-form__indicators__indicator--state-inactive{color:var(--e-form-steps-indicator-inactive-primary-color,#c2cbd2)}.e-form__indicators__indicator--state-inactive [class*=indicator--shape-]:not(.e-form__indicators__indicator--shape-none){background-color:var(--e-form-steps-indicator-inactive-secondary-color,#fff)}.e-form__indicators__indicator--state-inactive object,.e-form__indicators__indicator--state-inactive svg{fill:var(--e-form-steps-indicator-inactive-primary-color,#c2cbd2)}.e-form__indicators__indicator--state-active{color:var(--e-form-steps-indicator-active-primary-color,#39b54a);border-color:var(--e-form-steps-indicator-active-secondary-color,#fff)}.e-form__indicators__indicator--state-active [class*=indicator--shape-]:not(.e-form__indicators__indicator--shape-none){background-color:var(--e-form-steps-indicator-active-secondary-color,#fff)}.e-form__indicators__indicator--state-active object,.e-form__indicators__indicator--state-active svg{fill:var(--e-form-steps-indicator-active-primary-color,#39b54a)}.e-form__indicators__indicator--state-completed{color:var(--e-form-steps-indicator-completed-secondary-color,#fff)}.e-form__indicators__indicator--state-completed [class*=indicator--shape-]:not(.e-form__indicators__indicator--shape-none){background-color:var(--e-form-steps-indicator-completed-primary-color,#39b54a)}.e-form__indicators__indicator--state-completed .e-form__indicators__indicator__label{color:var(--e-form-steps-indicator-completed-primary-color,#39b54a)}.e-form__indicators__indicator--state-completed .e-form__indicators__indicator--shape-none{color:var(--e-form-steps-indicator-completed-primary-color,#39b54a);background-color:initial}.e-form__indicators__indicator--state-completed object,.e-form__indicators__indicator--state-completed svg{fill:var(--e-form-steps-indicator-completed-secondary-color,#fff)}.e-form__indicators__indicator__icon{width:var(--e-form-steps-indicator-padding,30px);height:var(--e-form-steps-indicator-padding,30px);font-size:var(--e-form-steps-indicator-icon-size);border-width:1px;border-style:solid;display:flex;justify-content:center;align-items:center;overflow:hidden;margin-bottom:10px}.e-form__indicators__indicator__icon img,.e-form__indicators__indicator__icon object,.e-form__indicators__indicator__icon svg{width:var(--e-form-steps-indicator-icon-size);height:auto}.e-form__indicators__indicator__icon .e-font-icon-svg{height:1em}.e-form__indicators__indicator__number{width:var(--e-form-steps-indicator-padding,30px);height:var(--e-form-steps-indicator-padding,30px);border-width:1px;border-style:solid;display:flex;justify-content:center;align-items:center;margin-bottom:10px}.e-form__indicators__indicator--shape-circle{border-radius:50%}.e-form__indicators__indicator--shape-square{border-radius:0}.e-form__indicators__indicator--shape-rounded{border-radius:5px}.e-form__indicators__indicator--shape-none{border:0}.e-form__indicators__indicator__label{text-align:center}.e-form__indicators__indicator__separator{width:100%;height:var(--e-form-steps-divider-width);background-color:#babfc5}.e-form__indicators--type-icon,.e-form__indicators--type-icon_text,.e-form__indicators--type-number,.e-form__indicators--type-number_text{align-items:flex-start}.e-form__indicators--type-icon .e-form__indicators__indicator__separator,.e-form__indicators--type-icon_text .e-form__indicators__indicator__separator,.e-form__indicators--type-number .e-form__indicators__indicator__separator,.e-form__indicators--type-number_text .e-form__indicators__indicator__separator{margin-top:calc(var(--e-form-steps-indicator-padding, 30px) / 2 - var(--e-form-steps-divider-width, 1px) / 2)}.elementor-field-type-hidden{display:none}.elementor-field-type-html{display:inline-block}.elementor-field-type-tel input{direction:inherit}.elementor-login .elementor-lost-password,.elementor-login .elementor-remember-me{font-size:.85em}.elementor-field-type-recaptcha_v3 .elementor-field-label{display:none}.elementor-field-type-recaptcha_v3 .grecaptcha-badge{z-index:1}.elementor-button .elementor-form-spinner{order:3}.elementor-form .elementor-button .elementor-button-content-wrapper{align-items:center}.elementor-form .elementor-button .elementor-button-text{white-space:normal}.elementor-form .elementor-button svg{height:auto}.elementor-form .elementor-button .e-font-icon-svg{height:1em}.elementor-form .elementor-button .elementor-button-content-wrapper{gap:5px}.elementor-form .elementor-button .elementor-button-icon,.elementor-form .elementor-button .elementor-button-text{flex-grow:unset;order:unset}.elementor-select-wrapper .select-caret-down-wrapper{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:10px;pointer-events:none;font-size:11px}.elementor-select-wrapper .select-caret-down-wrapper svg{display:unset;width:1em;aspect-ratio:unset;fill:currentColor}.elementor-select-wrapper .select-caret-down-wrapper i{font-size:19px;line-height:2}.elementor-select-wrapper.remove-before:before{content:""!important}</style>		<form class="elementor-form" method="post" id="tilmeld_kursus" name="Seminar 22. maj 2024">
			<input type="hidden" name="post_id" value="11440"/>
			<input type="hidden" name="form_id" value="b82b8ad"/>
			<input type="hidden" name="referer_title" value="Test Manager til Key2Quality &#8211; Key2Quality" />

			
			<div class="elementor-form-fields-wrapper elementor-labels-above">
								<div class="elementor-field-type-hidden elementor-field-group elementor-column elementor-field-group-seminartitel elementor-col-100">
													<input size="1" type="hidden" name="form_fields[seminartitel]" id="form-field-seminartitel" class="elementor-field elementor-size-sm  elementor-field-textual" value="Test Manager til Key2Quality">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-name" class="elementor-field-label">
								Navn							</label>
														<input size="1" type="text" name="form_fields[name]" id="form-field-name" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Dit navn" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-email" class="elementor-field-label">
								Indtast din e-mail							</label>
														<input size="1" type="email" name="form_fields[email]" id="form-field-email" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="E-mail" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-titel elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-titel" class="elementor-field-label">
								Titel							</label>
														<input size="1" type="text" name="form_fields[titel]" id="form-field-titel" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Indtast din titel" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_903903f elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-field_903903f" class="elementor-field-label">
								Firma							</label>
														<input size="1" type="text" name="form_fields[field_903903f]" id="form-field-field_903903f" class="elementor-field elementor-size-sm  elementor-field-textual" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-select elementor-field-group elementor-column elementor-field-group-dato elementor-col-100">
												<label for="form-field-dato" class="elementor-field-label">
								Vælg dato for seminar							</label>
								<div class="elementor-field elementor-select-wrapper remove-before ">
			<div class="select-caret-down-wrapper">
				<svg aria-hidden="true" class="e-font-icon-svg e-eicon-caret-down" viewBox="0 0 571.4 571.4" xmlns="http://www.w3.org/2000/svg"><path d="M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z"></path></svg>			</div>
			<select name="form_fields[dato]" id="form-field-dato" class="elementor-field-textual elementor-size-sm">
									<option value="13. november 2024: AI i test og kvalitetssikring">13. november 2024: AI i test og kvalitetssikring</option>
							</select>
		</div>
						</div>
								<div class="elementor-field-type-textarea elementor-field-group elementor-column elementor-field-group-message elementor-col-100">
												<label for="form-field-message" class="elementor-field-label">
								Evt. besked							</label>
						<textarea maxlength="500" class="elementor-field-textual elementor-field  elementor-size-sm" name="form_fields[message]" id="form-field-message" rows="4" placeholder="Hvis du har spørgsmål eller bemærkninger så skriv dem venligst her"></textarea>				</div>
								<div class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons">
					<button class="elementor-button elementor-size-sm" type="submit">
						<span class="elementor-button-content-wrapper">
																						<span class="elementor-button-text">Send</span>
													</span>
					</button>
				</div>
			</div>
		</form>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-457d26f e-con-full e-flex e-con e-child" data-id="457d26f" data-element_type="container">
				<div class="elementor-element elementor-element-e63846c elementor-invisible elementor-widget elementor-widget-theme-post-featured-image elementor-widget-image" data-id="e63846c" data-element_type="widget" data-settings="{&quot;_animation&quot;:&quot;subtleFadeInUp&quot;}" data-widget_type="theme-post-featured-image.default">
				<div class="elementor-widget-container">
			<style>/*! elementor - v3.22.0 - 26-06-2024 */
.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}</style>										<img fetchpriority="high" decoding="async" width="800" height="450" src="https://key2quality.dk/wp-content/uploads/2026/02/Design-uden-navn-1024x576.jpg" class="attachment-large size-large wp-image-10613" alt="" srcset="https://key2quality.dk/wp-content/uploads/2026/02/Design-uden-navn-1024x576.jpg 1024w, https://key2quality.dk/wp-content/uploads/2026/02/Design-uden-navn-300x169.jpg 300w, https://key2quality.dk/wp-content/uploads/2026/02/Design-uden-navn-768x432.jpg 768w, https://key2quality.dk/wp-content/uploads/2026/02/Design-uden-navn-1536x864.jpg 1536w, https://key2quality.dk/wp-content/uploads/2026/02/Design-uden-navn-2048x1152.jpg 2048w" sizes="(max-width: 800px) 100vw, 800px" />													</div>
				</div>
				</div>
				</div>
				</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/test-manager-til-key2quality/">Test Manager til Key2Quality</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Quality2Gether 19. november 2026</title>
		<link>https://key2quality.dk/quality2gether-19-november-2026/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Thu, 10 Sep 2026 07:57:18 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Seminar]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=11265</guid>

					<description><![CDATA[<p>Emne: Hvad sker der med tilliden og samarbejdet med forretningen, når vi introducerer AI til understøttelse af forretningstest? Tag med til Quality2Gether, hvor Nina Illum og Eleonore Fly Ringgaard står på scenen med både oplæg og ikke mindst en omgang jule-QA-banko. Mere info følger Tid og sted Seminaret afholdes torsdag den 19. november 2026 kl. 7.30 [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/quality2gether-19-november-2026/">Quality2Gether 19. november 2026</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="11265" class="elementor elementor-11265" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-111fe816 e-flex e-con-boxed e-con e-parent" data-id="111fe816" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-2ef023e0 elementor-widget elementor-widget-text-editor" data-id="2ef023e0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<h2>Emne: Hvad sker der med tilliden og samarbejdet med forretningen, når vi introducerer AI til understøttelse af forretningstest?</h2><p><strong>Tag med til Quality2Gether, hvor <a href="https://key2quality.dk/vores-team/nina-illum/">Nina Illum</a> og <a href="https://key2quality.dk/vores-team/eleonore-fly-ringgaard/">Eleonore Fly Ringgaard</a> står på scenen med både oplæg og ikke mindst en omgang jule-QA-banko. Mere info følger</strong></p><h2>Tid og sted</h2><p>Seminaret afholdes <strong>torsdag den 19. november 2026 kl. 7.30 &#8211; 10.00 i <a href="https://goo.gl/maps/h9Wt3LZx6gBqFKF37">Designmejeriet</a>, Alhøjvej 2, 8660 Skanderborg</strong>.</p><p>Der er gode parkeringsforhold ved adressen, og parkering er gratis.</p>						</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-4e2c520 e-con-full padding-horizontal-right padding-as-margin margin-vertical-both padding-vertical-both rounding-right container-theme-gray e-flex e-con e-parent" data-id="4e2c520" data-element_type="container" id="tilmeld">
		<div class="elementor-element elementor-element-3171ddd e-con-full e-flex e-con e-child" data-id="3171ddd" data-element_type="container">
		<div class="elementor-element elementor-element-b8329a1 padding-as-margin e-con-full e-flex e-con e-child" data-id="b8329a1" data-element_type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-adede44 e-con-full e-flex e-con e-child" data-id="adede44" data-element_type="container">
				<div class="elementor-element elementor-element-5792788 elementor-widget elementor-widget-heading" data-id="5792788" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
			<h2 class="elementor-heading-title elementor-size-default"><span class="wordanim"><span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":0}'>Tilmelding</span></span> <span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":50}'>til</span></span> <span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":100}'>seminar</span></span> </span></h2>		</div>
				</div>
				<div class="elementor-element elementor-element-f04abc1 elementor-widget elementor-widget-text-editor" data-id="f04abc1" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p>Lyder dagens program som noget for dig?</p><p>Så tilmeld dig her &#8211; Tilmelding er først til mølle.</p>						</div>
				</div>
				<div class="elementor-element elementor-element-240c010 elementor-button-align-start elementor-widget elementor-widget-form" data-id="240c010" data-element_type="widget" data-settings="{&quot;step_next_label&quot;:&quot;N\u00e6ste&quot;,&quot;step_previous_label&quot;:&quot;Tidligere&quot;,&quot;button_width&quot;:&quot;100&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}" data-widget_type="form.default">
				<div class="elementor-widget-container">
					<form class="elementor-form" method="post" id="tilmeld_kursus" name="Seminar 19. maj 2026">
			<input type="hidden" name="post_id" value="11265"/>
			<input type="hidden" name="form_id" value="240c010"/>
			<input type="hidden" name="referer_title" value="Quality2Gether 19. november 2026 &#8211; Key2Quality" />

			
			<div class="elementor-form-fields-wrapper elementor-labels-above">
								<div class="elementor-field-type-hidden elementor-field-group elementor-column elementor-field-group-seminartitel elementor-col-100">
													<input size="1" type="hidden" name="form_fields[seminartitel]" id="form-field-seminartitel" class="elementor-field elementor-size-sm  elementor-field-textual" value="Quality2Gether 19. november 2026">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-name" class="elementor-field-label">
								Navn							</label>
														<input size="1" type="text" name="form_fields[name]" id="form-field-name" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Både dit for- og efternavn" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-email" class="elementor-field-label">
								E-mail							</label>
														<input size="1" type="email" name="form_fields[email]" id="form-field-email" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Så vi kan sende dig en bekræftelse" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_f0e90bc elementor-col-100">
												<label for="form-field-field_f0e90bc" class="elementor-field-label">
								Telefon							</label>
														<input size="1" type="text" name="form_fields[field_f0e90bc]" id="form-field-field_f0e90bc" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Kun hvis du har lyst til at dele det med os">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-titel elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-titel" class="elementor-field-label">
								Jobtitel							</label>
														<input size="1" type="text" name="form_fields[titel]" id="form-field-titel" class="elementor-field elementor-size-sm  elementor-field-textual" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_903903f elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-field_903903f" class="elementor-field-label">
								Virksomhed							</label>
														<input size="1" type="text" name="form_fields[field_903903f]" id="form-field-field_903903f" class="elementor-field elementor-size-sm  elementor-field-textual" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-select elementor-field-group elementor-column elementor-field-group-dato elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-dato" class="elementor-field-label">
								Vælg dato for seminar							</label>
								<div class="elementor-field elementor-select-wrapper remove-before ">
			<div class="select-caret-down-wrapper">
				<svg aria-hidden="true" class="e-font-icon-svg e-eicon-caret-down" viewBox="0 0 571.4 571.4" xmlns="http://www.w3.org/2000/svg"><path d="M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z"></path></svg>			</div>
			<select name="form_fields[dato]" id="form-field-dato" class="elementor-field-textual elementor-size-sm" required="required" aria-required="true">
									<option value="19. november 2026">19. november 2026</option>
							</select>
		</div>
						</div>
								<div class="elementor-field-type-textarea elementor-field-group elementor-column elementor-field-group-message elementor-col-100">
												<label for="form-field-message" class="elementor-field-label">
								Send en besked til os							</label>
						<textarea maxlength="500" class="elementor-field-textual elementor-field  elementor-size-sm" name="form_fields[message]" id="form-field-message" rows="4" placeholder="Trænger der sig et spørgsmål på? Så skriv det her - vi er klar til at svare."></textarea>				</div>
								<div class="elementor-field-type-select elementor-field-group elementor-column elementor-field-group-field_50f9a26 elementor-col-100">
												<label for="form-field-field_50f9a26" class="elementor-field-label">
								Tilmeld nyhedsbrev							</label>
								<div class="elementor-field elementor-select-wrapper remove-before ">
			<div class="select-caret-down-wrapper">
				<svg aria-hidden="true" class="e-font-icon-svg e-eicon-caret-down" viewBox="0 0 571.4 571.4" xmlns="http://www.w3.org/2000/svg"><path d="M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z"></path></svg>			</div>
			<select name="form_fields[field_50f9a26]" id="form-field-field_50f9a26" class="elementor-field-textual elementor-size-sm">
									<option value="Ja tak">Ja tak</option>
									<option value="Nej tak">Nej tak</option>
							</select>
		</div>
						</div>
								<div class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons">
					<button class="elementor-button elementor-size-sm" type="submit">
						<span class="elementor-button-content-wrapper">
																						<span class="elementor-button-text">Send</span>
													</span>
					</button>
				</div>
			</div>
		</form>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-b7d452c e-con-full e-flex e-con e-child" data-id="b7d452c" data-element_type="container">
				<div class="elementor-element elementor-element-4d5143b elementor-invisible elementor-widget elementor-widget-theme-post-featured-image elementor-widget-image" data-id="4d5143b" data-element_type="widget" data-settings="{&quot;_animation&quot;:&quot;subtleFadeInUp&quot;}" data-widget_type="theme-post-featured-image.default">
				<div class="elementor-widget-container">
													<img decoding="async" width="800" height="800" src="https://key2quality.dk/wp-content/uploads/2026/09/2-1024x1024.jpg" class="attachment-large size-large wp-image-11266" alt="" srcset="https://key2quality.dk/wp-content/uploads/2026/09/2-1024x1024.jpg 1024w, https://key2quality.dk/wp-content/uploads/2026/09/2-300x300.jpg 300w, https://key2quality.dk/wp-content/uploads/2026/09/2-150x150.jpg 150w, https://key2quality.dk/wp-content/uploads/2026/09/2-768x768.jpg 768w, https://key2quality.dk/wp-content/uploads/2026/09/2-1536x1536.jpg 1536w, https://key2quality.dk/wp-content/uploads/2026/09/2-2048x2048.jpg 2048w" sizes="(max-width: 800px) 100vw, 800px" />													</div>
				</div>
				</div>
				</div>
				</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/quality2gether-19-november-2026/">Quality2Gether 19. november 2026</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Your microservices passed every test. Then production broke anyway.</title>
		<link>https://key2quality.dk/your-microservices-passed-every-test-then-production-broke-anyway/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Thu, 03 Sep 2026 12:16:32 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Teknisk test]]></category>
		<category><![CDATA[Testautomatisering]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<category><![CDATA[Af Matthew Manickakumar]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=11231</guid>

					<description><![CDATA[<p>Here&#8217;s why &#8211; and how contract testing fixes it. You&#8217;ve been there. Two teams. Two services. Both green in CI. Both deployed on Friday. Monday morning: production is down. The order service can&#8217;t read product prices. Turns out the product team renamed a JSON field over the weekend. Nobody told the order team. Nobody could [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/your-microservices-passed-every-test-then-production-broke-anyway/">Your microservices passed every test. Then production broke anyway.</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="11231" class="elementor elementor-11231" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-779f8f12 e-flex e-con-boxed e-con e-parent" data-id="779f8f12" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-24bbebd6 elementor-widget elementor-widget-text-editor" data-id="24bbebd6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<h2>Here&#8217;s why &#8211; and how contract testing fixes it.</h2><p class="p1">You&#8217;ve been there. Two teams. Two services. Both green in CI. Both deployed on Friday. Monday morning: production is down. The order service can&#8217;t read product prices. Turns out the product team renamed a JSON field over the weekend. Nobody told the order team. Nobody could tell them &#8211; there was no mechanism to.</p><p class="p1">This isn&#8217;t a communication failure. It&#8217;s an architecture failure. And it has a name: <b>integration drift</b>.</p><p class="p1"><b>The invisible gap in your test pyramid<br /></b>Most engineering teams test well at the unit level. They mock dependencies, write fast tests, and get high coverage. The problem is that mocks lie.</p><p class="p2">When the order service mocks the product service response, it uses the field <span class="s1">price</span>. When the product team renames that field to <span class="s1">unit_price</span> in their codebase, your mock doesn&#8217;t know. Your unit tests don&#8217;t know. Your entire test suite doesn&#8217;t know &#8211; until a real request hits a real endpoint in production.</p><p class="p2">This is the gap contract testing fills.</p><p class="p1"><b>What contract testing actually is<br /></b>Contract testing is a technique where two services agree on a normal, version-controlled description of their interaction &#8211; the <b>contract</b> &#8211; and both independently verify they honor it.</p><p class="p1">The contract captures one specific thing: what the consumer (caller) actually needs from the provider (API). Not everything the API returns. Just the fields the consumer uses. There are two sides to every contract:</p><p class="p1"><b>The consumer defines it.</b> The order service writes a test that says: <i>&#8220;When I call GET</i><i>/products/42, I expect a 200 response with an id (number), a name (string), and a price (number).&#8221;<br /></i>That expectation is saved as a JSON contract file.</p><p class="p1"><b>The provider verifies it.</b> The product service fetches that contract file and runs its real code against it. If the response doesn&#8217;t match &#8211; wrong field name, wrong type, missing field &#8211; the test fails. Before deployment. Before anything reaches production.<br />The most widely used tool for this is <b>Pact</b>, which supports JavaScript, Java, Python, Go, .NET, and more.</p><p class="p2"><b>Why this matters more than you think</b></p><p class="p1"><b>It decouples teams.</b> The order team doesn&#8217;t need to run the product service locally to test their integration. They test against the mock, generate a contract, and trust the pipeline to verify it. Both teams deploy independently, which is the whole point of microservices.</p><p class="p1"><b>It makes breaking changes visible immediately.</b> The moment a provider change would break a consumer, the provider&#8217;s own CI pipeline fails. The developer who made the change sees it. They fix it before it becomes anyone else&#8217;s problem.</p><p class="p1"><b>It creates a living document of your API surface.</b> The Pact Broker &#8211; the shared registry where contracts are stored &#8211; becomes a map of which services depend on what. Want to know who calls your <span class="s1">/products/:id</span> endpoint and what fields they use? The broker tells you instantly.</p><p class="p1"><b>It shifts the cost curve.</b> A production incident costs hours of engineer time, customer-facing downtime, and trust. A failed contract test costs two minutes of reading a diff.</p><p class="p2"><b>What the industry has learned<br /></b>Three organisations tell the story well &#8211; and they come at it from very different angles.</p><p class="p1"><b>Spotify</b> arrived at contract testing through a fundamental rethink of how testing should work in a microservices world. Their engineering team introduced the &#8220;Testing Honeycomb&#8221; &#8211; an inversion of the classic test pyramid that places integration tests, not unit tests, at the centre of gravity. Their insight: in a microservices architecture, the most complex and failure-prone part of the system isn&#8217;t inside any individual service. It&#8217;s at the boundaries where services talk to each other. Unit tests, by design, mock those boundaries away. Spotify explicitly named consumer-driven contract testing (Pact) as the natural next step to give teams genuine confidence that they weren&#8217;t accidentally breaking those contracts with every release.</p><p class="p1"><b>Delivery Hero</b> &#8211; the global food delivery group behind foodpanda &#8211; has the hard numbers. After analysing production incidents across 2023 and 2024, their engineering team found that 5% of all incidents were caused by contract violations between microservices: teams changing their API responses without any mechanism to alert the services consuming them. In practical terms, that translated to approximately 60,000 lost customer orders. After adopting PactFlow contract testing, they reduced production incidents attributable to integration failures by 14%.</p><p class="p1"><b>Boost Insurance</b>, a New York-based insurtech platform, tells a similar story at smaller scale. Running 15+ microservices, they were experiencing one service outage per month and roughly twelve production issues per quarter. After adopting Pact, outages dropped to virtually zero and production issues fell to two per quarter. Their engineering manager said he would happily eliminate end-to-end testing entirely in favour of contracts.Three different industries. Three different scales. The same underlying problem &#8211; and the same category of fix.</p><p class="p2"><b>The workflow in practice</b></p><p class="p1">Here&#8217;s the shape of it, end to end:</p><p class="p1"><b>1. Consumer writes an interaction test<br /></b>The test defines what the consumer sends and what it expects back. Pact spins up a local mock server, runs the test against it, and saves the contract as a JSON file.</p><p class="p1"><b>2. The contract is published to a broker<br /></b>After the consumer&#8217;s tests pass in CI, the contract file is pushed to a central Pact Broker (or PactFlow, the hosted version). This is the handshake point between the two pipelines.</p><p class="p1"><b>3. The provider fetches and verifies<br /></b>When the provider&#8217;s CI runs, it fetches all contracts from the broker and replays each recorded request against the real running service. If any response doesn&#8217;t match the contract, the build fails and verification is published as failed.</p><p class="p1"><b>4. </b><span class="s1">can-i-deploy</span><b> gates every deployment<br /></b>Before either service deploys to production, a single command checks the broker: <i>&#8220;Is the </i><i>version of this service compatible with everything it depends on in production right now?&#8221;</i> If the <span class="s2">answer is no, deployment is blocked. That&#8217;s it. That&#8217;s the safety net.</span></p><p> </p>						</div>
				</div>
		<div class="elementor-element elementor-element-926c913 e-con-full e-flex e-con e-child" data-id="926c913" data-element_type="container">
				<div class="elementor-element elementor-element-4548d43 elementor-widget elementor-widget-image" data-id="4548d43" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
													<img decoding="async" width="800" height="612" src="https://key2quality.dk/wp-content/uploads/2026/09/pact_cicd_pipeline-1024x783.png" class="attachment-large size-large wp-image-11234" alt="" srcset="https://key2quality.dk/wp-content/uploads/2026/09/pact_cicd_pipeline-1024x783.png 1024w, https://key2quality.dk/wp-content/uploads/2026/09/pact_cicd_pipeline-300x229.png 300w, https://key2quality.dk/wp-content/uploads/2026/09/pact_cicd_pipeline-768x587.png 768w, https://key2quality.dk/wp-content/uploads/2026/09/pact_cicd_pipeline-1536x1175.png 1536w, https://key2quality.dk/wp-content/uploads/2026/09/pact_cicd_pipeline-2048x1566.png 2048w" sizes="(max-width: 800px) 100vw, 800px" />													</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-9447039 e-con-full e-flex e-con e-child" data-id="9447039" data-element_type="container">
				<div class="elementor-element elementor-element-e1f248e elementor-widget elementor-widget-text-editor" data-id="e1f248e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p class="p1"><b>What it doesn&#8217;t do<br /></b>Contract testing is precise and honest about its scope. It doesn&#8217;t test business logic. It doesn&#8217;t test performance. It doesn&#8217;t replace integration environments for complex user journeys. What it does &#8211; and does exceptionally well &#8211; is verify that two services agree on the shape and structure of their API interactions. Think of it as a prenuptial agreement between your services. Both sides commit to their expectations up front, in writing, and verify they&#8217;re still honouring them with every change.</p><p class="p1"><b>When should you adopt it?<br /></b>Not every team needs this immediately. The honest signal is: <i>have you been burned by an </i><i>integration failure in production that unit tests didn&#8217;t catch? </i>If the answer is yes, that incident cost more than a month of contract test maintenance. <span style="font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body);text-align: var(--text-align)">The sweet spot is typically teams with four or more independently deployed services, multiple </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">teams working on different services, and CI/CD pipelines already in place. Without pipelines, the workflow loses most of its value &#8211; contracts need to be verified automatically on every change, not </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">manually.</span></p><p class="p1"><b>A mindset shift worth making<br /></b><span style="font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body);text-align: var(--text-align)">The hardest part of contract testing isn&#8217;t the tooling. It&#8217;s the mindset. </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">It asks teams to think about their API from the consumer&#8217;s perspective first. What does the caller </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">actually use? Just those fields. Just that shape. Define it explicitly, version it, and let the pipeline </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">enforce it.<br /></span>Spotify&#8217;s framing is useful here: stop treating the microservice as a unit and start treating the <i style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">contract</i><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)"> as the unit. When your tests verify the interaction point rather than the implementation </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">detail, you gain something rare in distributed systems &#8211; the freedom to change things on one side </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">without breaking the other, and the confidence to know for certain before you deploy.</span></p><p class="p2">That produces cleaner APIs, smaller surface areas, and fewer surprise breakages. And it produces <span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">something that most engineering teams scaling microservices genuinely struggle to maintain: trust </span><span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">between teams that independent deployments won&#8217;t silently take down services they didn&#8217;t touch. </span></p><p><i style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">If you&#8217;re running microservices and relying solely on unit tests and occasional integration </i><i style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">environments to catch cross-service failures &#8211; you&#8217;re carrying a risk that compounds as your </i><i style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">system grows. </i><i style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif;font-size: var(--mouret-body)">Contract testing doesn&#8217;t remove all risk. But it closes the exact gap where most production</i><i>incidents actually happen. Delivery Hero found that out by counting 60,000 lost orders. You don&#8217;t </i><i>have to.</i></p><p class="p4"><b>References &amp; further reading</b></p><p class="p5">Spotify Engineering &#8211; Testing of Microservices (Testing Honeycomb origin, 2018)</p><p class="p5">Delivery Hero Tech &#8211; How Contract Testing Helped Our Organization to Prevent Production Incidents (2024)</p><p class="p5">PactFlow &#8211; Boost Insurance Case Study</p><p class="p5">Pact &#8211; pact.io (open source, multi-language)</p><p class="p5">PactFlow &#8211; pactflow.io (hosted Pact Broker with UI)</p><p class="p5"> </p>						</div>
				</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/your-microservices-passed-every-test-then-production-broke-anyway/">Your microservices passed every test. Then production broke anyway.</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Har vi udvandet Scrum Master-rollen?</title>
		<link>https://key2quality.dk/har-vi-udvandet-scrum-master-rollen/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Mon, 24 Aug 2026 07:58:53 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[IT-projektledelse]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<category><![CDATA[Af Rikke Svendsen]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=11071</guid>

					<description><![CDATA[<p>Når Scrum Masteren bliver reduceret til mødefacilitator, mister virksomhederne forståelsen for den værdi, rollen egentlig skaber. Hvad laver Scrum Masteren efter Daily?  Daily er slut. Mødet blev holdt inden for de 15 minutter, og alle har fortalt, hvad de arbejder på. Teamet går tilbage til deres opgaver. Men blev der truffet nogen beslutninger? Blev planen [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/har-vi-udvandet-scrum-master-rollen/">Har vi udvandet Scrum Master-rollen?</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="11071" class="elementor elementor-11071" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-779f8f12 e-flex e-con-boxed e-con e-parent" data-id="779f8f12" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-24bbebd6 elementor-widget elementor-widget-text-editor" data-id="24bbebd6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<h2 style="font-weight: 400"><span class="TextRun SCXW57419550 BCX4" lang="DA-DK" xml:lang="DA-DK" data-contrast="none"><span class="NormalTextRun SCXW57419550 BCX4" data-ccp-parastyle="Subtitle">Når </span><span class="NormalTextRun SpellingErrorV2Themed SCXW57419550 BCX4" data-ccp-parastyle="Subtitle">Scrum</span><span class="NormalTextRun SCXW57419550 BCX4" data-ccp-parastyle="Subtitle"> Masteren bliver reduceret til mødefacilitator, mister virksomhederne forståelsen for den værdi, rollen egentlig skabe</span><span class="NormalTextRun SCXW57419550 BCX4" data-ccp-parastyle="Subtitle">r</span><span class="NormalTextRun SCXW57419550 BCX4" data-ccp-parastyle="Subtitle">.</span></span><span class="EOP Selected SCXW57419550 BCX4" data-ccp-props="{}"> </span></h2><p><strong><span class="TextRun SCXW245128606 BCX4" lang="DA-DK" xml:lang="DA-DK" data-contrast="auto"><span class="NormalTextRun SCXW245128606 BCX4" data-ccp-charstyle="Emphasis">Hvad laver </span><span class="NormalTextRun SpellingErrorV2Themed SCXW245128606 BCX4" data-ccp-charstyle="Emphasis">Scrum</span><span class="NormalTextRun SCXW245128606 BCX4" data-ccp-charstyle="Emphasis"> Masteren efter </span><span class="NormalTextRun SpellingErrorV2Themed SCXW245128606 BCX4" data-ccp-charstyle="Emphasis">Daily</span><span class="NormalTextRun SCXW245128606 BCX4" data-ccp-charstyle="Emphasis">?</span></span><span class="EOP Selected SCXW245128606 BCX4" data-ccp-props="{}"> </span></strong></p><p><span data-contrast="auto">Daily er slut. Mødet blev holdt inden for de 15 minutter, og alle har fortalt, hvad de arbejder på. Teamet går tilbage til deres opgaver.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Men blev der truffet nogen beslutninger? Blev planen justeret? Og blev teamet klogere på, hvordan det når sit Sprint Goal?</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Hvis svaret er uklart, er det måske ikke så mærkeligt, at mange virksomheder har svært ved at se værdien af Scrum Masteren.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Jeg møder virksomheder, hvor rollen primært forbindes med at indkalde til og facilitere møder. Alle events ligger i kalenderen; frameworket er implementeret – og så er vi Agile. Eller er vi?</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Når rollen reduceres til møder, kan Scrum Masteren let blive opfattet som en overflødig ressource med en uklar værdi. Derfor bør vi spørge os selv, om virksomhederne har misforstået rollen – eller om vi som ScrumMasters selv har været med til at udvande den.</span><span data-ccp-props="{}"> </span></p><p><b><span data-contrast="auto">Facilitering er et middel – ikke målet</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">God facilitering er vigtig. Den kan skabe en dialog, hvor alle tør sige deres mening, reflekterer sammen og træffer beslutninger.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Men et velafholdt møde skaber ikke automatisk værdi.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Et retrospektiv kan både være energisk og professionelt faciliteret. Alle bidrager med post-its og teamet afslutter med tre forbedringspunkter. Men hvis punkterne aldrig bliver fulgt op, og de samme problemer dukker op igen måneden efter, hvilken værdi skabte mødet så?</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Målet er ikke at afholde Scrum-events. Målet er den læring, forbedring og forandring, de fører til</span><b><span data-contrast="auto">.</span></b><span data-ccp-props="{}"> </span></p><p><b><span data-contrast="auto">Rollen er større end møderne</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Når jeg læser Scrum Guiden, beskrives Scrum Masteren som meget mere end en facilitator. Rollen omfatter blandt andet ansvar for Scrum Teamets effektivitet, coaching i selvledelse, fokus på værdifulde leverancer, fjernelse af forhindringer og støtte til både Product Owneren og organisationen.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Scrum Guiden beskriver altså, i mine øjne, en leder og coach, der arbejder med mennesker, teams og organisatoriske rammer.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">En certificering kan give et vigtigt teoretisk fundament, men den kan ikke stå alene. Rollen kræver også kompetencer inden for coaching, teamdynamik, konflikthåndtering, forandringsledelse og organisatorisk forståelse.</span><span data-ccp-props="{}"> </span></p><p><b><span data-contrast="auto">Værdien skabes mellem møderne</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Scrum Masterens arbejde er ofte mest synligt under møderne, men den reelle værdi skabes imellem møderne.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Det er her, at Scrum Masteren observerer teamets samarbejde og fremdrift: Hvor går arbejdet i stå? Tager teamet et fælles ansvar? Er prioriteringerne tydelige? Hjælper processerne teamet – eller hæmmer de? Og bliver alle perspektiver hørt?</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Hvis de samme to personer altid finder løsningerne, mens resten af teamet bliver stille, skal Scrum Masteren kunne opdage mønsteret og hjælpe teamet med at ændre det.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Nogle gange har teamet brug for konkrete værktøjer og tydelig guidning. Andre gange har det brug for sparring eller en coachende tilgang, hvor Scrum Masteren stiller spørgsmål og hjælper teamet med selv at finde næste skridt.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Den dygtige Scrum Master følger derfor ikke bare en fast liste over aktiviteter. Tilgangen vælges ud fra, hvor teamet befinder sig, og hvad det har brug for lige nu.</span><span data-ccp-props="{}"> </span></p><p><b><span data-contrast="auto">Vi skal gøre værdien synlig</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Antallet af afholdte events er nemt at tælle, men det fortæller ikke, hvilken forskel Scrum Masteren har gjort.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Værdien kan i stedet vise sig gennem større ejerskab, bedre samarbejde, tydeligere prioriteringer og færre opgaver, der går i stå. Det betyder ikke, at udviklingen ikke kan følges. Men vi skal tage udgangspunkt i det problem, vi forsøger at løse:</span><span data-ccp-props="{}"> </span></p><ul><li data-leveltext="" data-font="Symbol" data-listid="9" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="1" data-aria-level="1"><span data-contrast="auto">Hvad oplever teamet som problemet?</span><span data-ccp-props="{}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="9" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="2" data-aria-level="1"><span data-contrast="auto">Hvilken ændring vil vi afprøve?</span><span data-ccp-props="{}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="9" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="3" data-aria-level="1"><span data-contrast="auto">Hvad forventer vi bliver anderledes?</span><span data-ccp-props="{}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="9" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="4" data-aria-level="1"><span data-contrast="auto">Hvornår følger vi op?</span><span data-ccp-props="{}"> </span></li></ul><ul><li data-leveltext="" data-font="Symbol" data-listid="9" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" data-aria-posinset="5" data-aria-level="1"><span data-contrast="auto">Hvad lærte vi?</span><span data-ccp-props="{}"> </span></li></ul><p><span data-contrast="auto">Scrum Masterens værdi bliver ikke synlig gennem antallet af møder, men gennem de forbedringer, som teamet og organisationen oplever. Især læring omkring de fejl vi laver, er dem, teamet lærer mest af. </span><span data-ccp-props="{}"> </span></p><p><b><span data-contrast="auto">Ansvaret ligger også hos os</span></b><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Virksomhedernes syn på Scrum Masteren ændrer sig ikke, fordi vi forklarer rollen endnu en gang. Det ændrer sig, når vi skaber forbedringer, som teamet, Product Owneren og organisationen kan mærke.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Facilitering er en del af rollen, men ikke hele rollen. Scrum Masteren skal også kunne observere, guide, sparre, coache og udfordre – og løbende udvikle sine egne kompetencer.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Scrum Master-rollen er ikke værdiløs. Men forståelsen og udførelsen af den er nogle steder blevet så smal, at værdien er blevet svær at få øje på.</span><span data-ccp-props="{}"> </span></p><p><span data-contrast="auto">Hvis vi vil ændre synet på Scrum Masteren, må vi derfor begynde med os selv: Vi skal udfylde hele rollen og blive bedre til at gøre vores effekt synlig.</span><span data-ccp-props="{}"> </span></p><p><span data-ccp-props="{}"> </span></p>						</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-169eebf e-flex e-con-boxed e-con e-parent" data-id="169eebf" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-367df70 elementor-widget elementor-widget-button" data-id="367df70" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
					<div class="elementor-button-wrapper">
			<a class="elementor-button elementor-button-link elementor-size-sm" href="">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Se kursuskalender</span>
					</span>
					</a>
		</div>
				</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/har-vi-udvandet-scrum-master-rollen/">Har vi udvandet Scrum Master-rollen?</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Quality Coach – når kvalitet bliver et fælles ansvar</title>
		<link>https://key2quality.dk/quality-coach-naar-kvalitet-bliver-et-faelles-ansvar/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Thu, 11 Jun 2026 08:50:36 +0000</pubDate>
				<category><![CDATA[Af Gitte Ottosen]]></category>
		<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Kursusforretningen]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Quality Coaching]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=11016</guid>

					<description><![CDATA[<p>Den 29. september 2026 starter vi et nyt hold på vores skræddersyede quality coach uddannelse. Det er blandet andet chefrådgiver Gitte Ottosen, der underviser på uddannelsen, og her dykker hun ned i den konkrete værdi, uddannelsen har for både medarbejder, team og virksomhed. I mange organisationer er kvalitet ikke længere noget, der ligger hos én [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/quality-coach-naar-kvalitet-bliver-et-faelles-ansvar/">Quality Coach – når kvalitet bliver et fælles ansvar</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="11016" class="elementor elementor-11016" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-779f8f12 e-flex e-con-boxed e-con e-parent" data-id="779f8f12" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-24bbebd6 elementor-widget elementor-widget-text-editor" data-id="24bbebd6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p style="font-weight: 400"><em><strong>Den 29. september 2026 starter vi et nyt hold på vores skræddersyede <a href="https://key2quality.dk/kurser/quality-coaching/">quality coach</a> uddannelse.</strong></em></p><p style="font-weight: 400"><em><strong>Det er blandet andet chefrådgiver <a href="https://key2quality.dk/vores-team/gitte-ottosen/">Gitte Ottosen</a>, der underviser på uddannelsen, og her dykker hun ned i den konkrete værdi, uddannelsen har for både medarbejder, team og virksomhed.</strong></em></p><p style="font-weight: 400">I mange organisationer er kvalitet ikke længere noget, der ligger hos én person eller ét team. Moderne organisationer arbejder i stigende grad med agile metoder og DevOps, hvor ansvaret for kvalitet er fordelt på tværs af hele teamet. Det ændrer også rollen for den klassiske tester.</p><p style="font-weight: 400">Her opstår behovet for en ny type kvalitetsprofessionel: Quality Coach.</p><h2 style="font-weight: 400">Fra tester til Quality Coach</h2><p style="font-weight: 400">Traditionelt har testere været eksperter i at finde fejl og skabe indsigt i produktets kvalitet. Men i dag forventes teams i langt højere grad selv at kunne analysere, designe, udvikle, teste og drifte løsninger.</p><p style="font-weight: 400">Det betyder ikke, at testkompetencer er blevet mindre vigtige. Tværtimod.</p><p style="font-weight: 400">Der er fortsat brug for personer med stærke kvalitetskompetencer, men deres vigtigste opgave er ikke nødvendigvis selv at udføre test. Deres vigtigste opgave er at hjælpe andre med at tænke kvalitet.</p><p style="font-weight: 400"><strong>En Quality Coach arbejder derfor med at:</strong></p><ul style="font-weight: 400"><li>skabe forståelse for kvalitet i hele organisationen</li><li>facilitere dialoger om kvalitet og risici</li><li>styrke teamets kompetencer inden for test og kvalitet</li><li>hjælpe med at indbygge kvalitet tidligt i udviklingsprocessen</li><li>skabe fælles sprog og fælles forståelse på tværs af forretning og IT</li><li>understøtte læring, refleksion og kontinuerlig forbedring</li></ul><p style="font-weight: 400">Hvor den traditionelle tester ofte spørger: <em>&#8220;Virker løsningen?&#8221;</em></p><p style="font-weight: 400">spørger Quality Coachen: <em>&#8220;Hvordan sikrer vi som organisation, at vi bygger kvalitet ind fra starten?&#8221;</em></p><h2 style="font-weight: 400">Kvalitet handler om mennesker</h2><p style="font-weight: 400">Noget af det mest interessante ved Quality Coach-rollen er, at den flytter fokus fra værktøjer og processer til mennesker.</p><p style="font-weight: 400">Succesfuld coaching bygger på:</p><ul style="font-weight: 400"><li>tillid</li><li>aktiv lytning</li><li>nærvær</li><li>nysgerrighed</li><li>empati</li><li>evnen til at facilitere refleksion</li></ul><p style="font-weight: 400">En Quality Coach skal kunne forstå, at forskellige mennesker oplever verden forskelligt. Det kræver evnen til at lytte uden straks at komme med løsninger og i stedet hjælpe andre med selv at finde vejen frem. Dette perspektiv fylder meget i seminaret, hvor coaching beskrives som en disciplin, der kræver både faglig tyngde og stærke menneskelige kompetencer.</p><h2 style="font-weight: 400">En rolle med mange facetter</h2><p style="font-weight: 400">Quality Coaching bygger på et bredt kompetencefundament.</p><p style="font-weight: 400">Rollen omfatter blandt andet:</p><ul style="font-weight: 400"><li>Coaching</li><li>Mentoring</li><li>Facilitering</li><li>Kommunikation</li><li>Vidensdeling</li><li>Forandringsledelse</li><li>Systemtænkning</li><li>Kvalitetsrådgivning</li><li>Stakeholder management</li></ul><p style="font-weight: 400">Det betyder, at Quality Coachen ofte fungerer som bindeled mellem ledelse, forretning, udviklere, testere og andre interessenter.</p><p style="font-weight: 400">Samtidig fungerer rollen som organisationens ambassadør for kvalitet. Ikke ved at kontrollere andre, men ved at skabe forståelse, engagement og ejerskab.</p><h2 style="font-weight: 400">Hvorfor er rollen vigtig netop nu?</h2><p style="font-weight: 400">TMAP beskriver moderne kvalitetsarbejde som et fælles ansvar i tværfaglige teams, hvor kvalitet skal bygges ind i både produkter, processer og mennesker frem for at blive kontrolleret til sidst i forløbet.</p><p style="font-weight: 400">I DevOps- og agile organisationer bliver dette særligt vigtigt, fordi kvalitet ikke længere kan være afhængig af én specialistfunktion. Teams skal kunne træffe gode kvalitetsbeslutninger hver eneste dag.</p><p style="font-weight: 400">Her bliver Quality Coachen katalysatoren, der hjælper organisationen med at udvikle de nødvendige kompetencer og vaner.</p><h2 style="font-weight: 400">Hvad får deltageren ud af en Quality Coach-uddannelse?</h2><p style="font-weight: 400">For den enkelte deltager er uddannelsen en mulighed for at udvikle sig fra specialist til rådgiver.</p><p style="font-weight: 400">Deltagerne opnår blandt andet:</p><p style="font-weight: 400"><strong>Stærkere gennemslagskraft<br /></strong>Evnen til at påvirke beslutninger uden formelt ledelsesansvar.</p><p style="font-weight: 400"><strong>Bedre kommunikation<br /></strong>Værktøjer til at skabe dialog om kvalitet med både udviklere, ledere og forretning.</p><p style="font-weight: 400"><strong>Coachende kompetencer<br /></strong>Metoder til at støtte læring og udvikling hos teams og kolleger.</p><p style="font-weight: 400"><strong>Faciliteringsværktøjer<br /></strong>Teknikker til workshops, retrospektiver og kvalitetsdialoger.</p><p style="font-weight: 400"><strong>Strategisk forståelse af kvalitet<br /></strong>Evnen til at koble kvalitet sammen med forretningsværdi, risikostyring og organisatorisk udvikling.</p><p style="font-weight: 400">Kort sagt bliver deltageren i stand til at skabe effekt gennem andre mennesker frem for alene gennem egen specialistviden.</p><h2 style="font-weight: 400">Hvad får virksomheden ud af at sende medarbejdere på uddannelsen?</h2><p style="font-weight: 400">Værdien stopper ikke hos kursisten.</p><p style="font-weight: 400">Organisationen får medarbejdere, der kan hjælpe med at skabe varige forbedringer i kvalitetskulturen.</p><p style="font-weight: 400">Det betyder blandt andet:</p><p style="font-weight: 400"><strong>Stærkere kvalitetskultur<br /></strong>Kvalitet bliver et fælles ansvar frem for en aktivitet, der ligger hos enkelte personer.</p><p style="font-weight: 400"><strong>Mere modne teams<br /></strong>Teams lærer at arbejde mere selvstændigt med kvalitet, test og risikostyring.</p><p style="font-weight: 400"><strong>Bedre samarbejde mellem forretning og IT<br /></strong>Quality Coachen hjælper med at skabe fælles forståelse og fælles mål.</p><p style="font-weight: 400"><strong>Tidligere fokus på kvalitet<br /></strong>Problemer opdages tidligere, hvor de er billigere og lettere at løse.</p><p style="font-weight: 400"><strong>Øget organisatorisk læring<br /></strong>Viden og erfaring forankres i organisationen frem for hos enkeltpersoner.</p><p style="font-weight: 400">Resultatet er ikke blot bedre test. Resultatet er bedre beslutninger, stærkere teams og højere sandsynlighed for at levere den ønskede forretningsværdi.</p><h2 style="font-weight: 400">Fremtidens kvalitetsprofessionelle</h2><p style="font-weight: 400">Rollen som Quality Coach er et naturligt næste skridt i udviklingen af kvalitet som disciplin.</p><p style="font-weight: 400">Hvor test tidligere handlede om at finde fejl, handler moderne kvalitetsarbejde i højere grad om at skabe de rette betingelser for kvalitet.</p><p style="font-weight: 400">Det kræver faglighed. Det kræver menneskelig indsigt. Og det kræver evnen til at skabe forandring gennem andre.</p><p style="font-weight: 400">Det er netop her, Quality Coachen gør forskellen.</p><p style="font-weight: 400"> </p>						</div>
				</div>
				<div class="elementor-element elementor-element-8316e16 elementor-widget elementor-widget-image" data-id="8316e16" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
														<a href="https://key2quality.dk/kurser/quality-coaching/">
							<img decoding="async" src="https://key2quality.dk/wp-content/uploads/2026/06/Bliv-Quality-Coach-Holdstart-299-1200-x-600-px.png" title="Bliv Quality Coach Holdstart 299 (1200 x 600 px)" alt="" loading="lazy" />								</a>
													</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-169eebf e-flex e-con-boxed e-con e-parent" data-id="169eebf" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-367df70 elementor-widget elementor-widget-button" data-id="367df70" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
					<div class="elementor-button-wrapper">
			<a class="elementor-button elementor-button-link elementor-size-sm" href="https://key2quality.dk/kurser/quality-coaching/">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Læs om uddannelsen og tilmeld</span>
					</span>
					</a>
		</div>
				</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/quality-coach-naar-kvalitet-bliver-et-faelles-ansvar/">Quality Coach – når kvalitet bliver et fælles ansvar</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Webinar 8. oktober 2026</title>
		<link>https://key2quality.dk/webinar-8-oktober-2026/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Tue, 19 May 2026 11:45:09 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Webinar]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=10925</guid>

					<description><![CDATA[<p>Tilmeld dig her Seminaret er fuldt booket Skriv dig på vores afbudsliste ved at skrive til vores marketingkoordinator, Trine, på trine@key2quality.dk. Titel: Få dine værktøjer til at tale sammen Tilmeld dig vores webinar torsdag den 8. oktober med Mohamed H. Mohamed fra Key2Quality. Vi er efterhånden mange, der bruger AI som hjælp i vores daglige [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/webinar-8-oktober-2026/">Webinar 8. oktober 2026</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="10925" class="elementor elementor-10925" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-111fe816 e-con-full e-flex e-con e-parent" data-id="111fe816" data-element_type="container">
				<div class="elementor-element elementor-element-a1dffad style-arrow animated-fast elementor-invisible elementor-widget elementor-widget-button" data-id="a1dffad" data-element_type="widget" id="#tilmelding" data-settings="{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100}" data-widget_type="button.default">
				<div class="elementor-widget-container">
					<div class="elementor-button-wrapper">
			<a class="elementor-button elementor-button-link elementor-size-sm" href="https://events.teams.microsoft.com/event/b37f9cd4-1e50-49e2-9d78-5dc7bc62fc44@71262665-4c2e-46a4-92da-326fda14b701">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Tilmeld dig her</span>
					</span>
					</a>
		</div>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-561caec e-flex e-con-boxed e-con e-parent" data-id="561caec" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-2ef023e0 elementor-widget elementor-widget-text-editor" data-id="2ef023e0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<h2 class="elementToProof"><b>Titel: Få dine værktøjer til at tale sammen</b></h2><div class="elementToProof"><b>Tilmeld dig vores webinar torsdag den 8. oktober med <a href="https://key2quality.dk/vores-team/mohamed-h-mohamed/">Mohamed H. Mohamed</a> fra Key2Quality.</b></div><div> </div><div class="elementToProof"><p>Vi er efterhånden mange, der bruger AI som hjælp i vores daglige arbejde. Den kan skrive testcases, foreslå Gherkin-scenarier og hjælpe med kode, men ofte stopper gevinsten dér.</p></div><div class="elementToProof"><p>Bagefter skal vi stadig selv flytte information mellem krav, designs, testcases, scripts og fejlrapporter. AI hjælper med indholdet – men vi er stadig selv integrationen mellem værktøjerne.</p></div><div class="elementToProof"><p>På dette webinar viser Mohamed, hvordan AI kan blive en mere integreret del af testautomatiseringen og arbejde direkte sammen med de værktøjer, vi allerede bruger.</p></div><div class="elementToProof"><p>Med udgangspunkt i en konkret case viser han, hvordan Azure DevOps, Figma og Playwright kan kobles sammen, så et flow kan gå fra user story og design til testcases, automatiserede tests og bugrapportering – uden at mennesket forsvinder ud af processen.</p></div><div class="elementToProof"><p>Pointen er ikke at overlade testarbejdet til AI. Det handler om at lade AI tage sig af det gentagne arbejde, så vi kan bruge vores tid dér, hvor vores faglighed gør den største forskel: på at forstå kravene, vurdere kvaliteten og opdage det, AI ikke selv ser.</p></div><div class="elementToProof"><b>På 60 minutter får du:</b></div><ul data-spread="false"><li>Et konkret eksempel på, hvordan AI kan integreres i et testautomatiseringsflow</li><li>Indblik i, hvordan Azure DevOps, Figma og Playwright kan arbejde sammen</li><li>En introduktion til MCP og hvordan det kan bruges til at lade AI arbejde direkte i dine værktøjer</li><li>Perspektiver på human-in-the-loop og hvor den faglige vurdering stadig er afgørende</li><li>Inspiration til, hvordan du selv kan starte småt med én manuel og gentagen opgave</li></ul><div class="elementToProof">Mohamed viser undervejs løsningen i praksis og demonstrerer, hvordan et flow, der traditionelt kan tage flere timer, kan automatiseres markant – samtidig med at den faglige kvalitetssikring bevares.</div><div class="elementToProof"><p>Der vil selvfølgelig også være mulighed for spørgsmål og dialog undervejs.</p></div><div><strong>NB Dette webinar er samme oplæg, som Mohamed præsenterede på vores seneste Quality2Gether.  </strong></div>						</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/webinar-8-oktober-2026/">Webinar 8. oktober 2026</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Quality2Gether 9. september 2026</title>
		<link>https://key2quality.dk/quality2gether-9-september-2026/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Tue, 19 May 2026 11:30:48 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Seminar]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=10912</guid>

					<description><![CDATA[<p>Emne: AI i kvalitetsarbejdet &#8211; fra mulighed til praksis Tag med til Quality2Gether-seminar hvor vi bl.a. ser nærmere på ”den grønne løgn” onsdag den 9. september 2026 kl. 7.30–10.00 i Designmejeriet i Stilling. AI bliver ved med at fylde mere og mere i vores hverdag med test- og kvalitetsarbejdet. Dermed bliver det også endnu engang [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/quality2gether-9-september-2026/">Quality2Gether 9. september 2026</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="10912" class="elementor elementor-10912" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-111fe816 e-flex e-con-boxed e-con e-parent" data-id="111fe816" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-2ef023e0 elementor-widget elementor-widget-text-editor" data-id="2ef023e0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<h2>Emne: AI i kvalitetsarbejdet &#8211; fra mulighed til praksis</h2><p><strong>Tag med til Quality2Gether-seminar hvor vi bl.a. ser nærmere på ”den grønne løgn” onsdag den 9. september 2026 kl. 7.30–10.00 i Designmejeriet i Stilling.</strong></p><p>AI bliver ved med at fylde mere og mere i vores hverdag med test- og kvalitetsarbejdet. Dermed bliver det også endnu engang en del af dagsordenen på vores morgenseminar. Vi kigger videre på spørgsmål som, hvor giver AI egentlig reel værdi? Hvor skal vi være kritiske? Og hvordan sikrer vi, at AI bliver en effektiv assistent og ikke en autopilot?</p><p>På dette seminar sætter vi AI ind i en kvalitetsfaglig kontekst. Vi ser på konkrete muligheder, praktiske erfaringer og de faldgruber, der kan opstå, når AI bruges til test, testautomatisering og kvalitetssikring.</p><p>Du får blandt andet indblik i, hvordan AI kan understøtte testautomatisering, testdata, analyse og det mere rutineprægede testarbejde. Samtidig ser vi på risikoen for falsk tryghed, fx når AI-genererede tests giver høj coverage og grøn CI, uden reelt at teste det, der er vigtigt.</p><p>Seminaret kombinerer korte faglige oplæg, konkrete eksempler fra praksis og dialog ved bordene. Formålet er at undersøge, hvordan vi kan bruge AI klogt, ansvarligt og med testfagligheden i centrum.</p><p><strong>Du får perspektiver på:</strong></p><ul><li>h<span style="text-align: var(--text-align);font-family: var( --e-global-typography-primary-font-family ), Sans-serif">vordan AI kan bruges som assistent i test- og kvalitetsarbejdet</span></li><li>hvor AI kan støtte i testautomatisering og det praktiske testarbejde</li><li>hvorfor grønne tests og høj coverage ikke nødvendigvis er det samme som høj kvalitet</li><li>hvordan AI-genererede tests kan give falsk tryghed</li><li>hvordan vi kan kvalitetssikre AI-genereret output</li><li>hvilke spørgsmål vi bør stille, før vi stoler på et AI-svar</li><li>hvordan vi bevarer faglig dømmekraft, ansvar og kritisk tænkning i arbejdet med AI</li></ul><h2>Foreløbigt program</h2><div class="elementToProof"><b>7.30-8.00:</b> Morgenmad og networking<br /><br /></div><div class="elementToProof"><b>8.00-8.10:</b> Velkomst og intro til dagens tema v. <a href="https://key2quality.dk/vores-team/jacob-fisker/">Jacob Fisker</a><br /><br /></div><div class="elementToProof"><b>8.10-8.30:</b> Oplæg: <i>Den grønne løgn: når AI-genererede tests består uden at teste noget</i> v. <a id="OWA24a8bd38-8ed6-4b7b-f6a3-49f20850d452" class="OWAAutoLink" title="https://eur05.safelinks.protection.outlook.com/?url=https%3A%2F%2Fkey2quality.dk%2Fvores-team%2Fmorten-engberg%2F&amp;data=05%7C02%7CJulie%40key2quality.dk%7C70b4275a115b440b05cd08df074e9bbf%7C712626654c2e46a492da326fda14b701%7C0%7C0%7C639237706323472343%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;sdata=Am6M3ILazJN3KzXQ8BpxuZ6cPmSY8zEwVjRxdmdlIvM%3D&amp;reserved=0" href="https://eur05.safelinks.protection.outlook.com/?url=https%3A%2F%2Fkey2quality.dk%2Fvores-team%2Fmorten-engberg%2F&amp;data=05%7C02%7CJulie%40key2quality.dk%7C70b4275a115b440b05cd08df074e9bbf%7C712626654c2e46a492da326fda14b701%7C0%7C0%7C639237706323472343%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;sdata=Am6M3ILazJN3KzXQ8BpxuZ6cPmSY8zEwVjRxdmdlIvM%3D&amp;reserved=0" data-outlook-id="79021d1d-50b2-4fa3-a3bb-240ae42298d5">Morten Engberg</a><br /><br /></div><div class="elementToProof"><b>8.30-8.40:</b> Pause<br /><br /></div><div class="elementToProof"><b>8.40-9.20:</b> Oplæg/demo: <i>AI i testautomatisering</i> v. <a id="OWAeaa0a1b4-78ae-1b55-55b6-71f8f5eba8a4" class="OWAAutoLink" title="https://eur05.safelinks.protection.outlook.com/?url=https%3A%2F%2Fkey2quality.dk%2Fvores-team%2Fmohamed-h-mohamed%2F&amp;data=05%7C02%7CJulie%40key2quality.dk%7C70b4275a115b440b05cd08df074e9bbf%7C712626654c2e46a492da326fda14b701%7C0%7C0%7C639237706323504956%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;sdata=Ws8WyhaNILCvBn%2F%2FDotBDGxLKJbsmxM8wHBxhPPJ7Bc%3D&amp;reserved=0" href="https://eur05.safelinks.protection.outlook.com/?url=https%3A%2F%2Fkey2quality.dk%2Fvores-team%2Fmohamed-h-mohamed%2F&amp;data=05%7C02%7CJulie%40key2quality.dk%7C70b4275a115b440b05cd08df074e9bbf%7C712626654c2e46a492da326fda14b701%7C0%7C0%7C639237706323504956%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;sdata=Ws8WyhaNILCvBn%2F%2FDotBDGxLKJbsmxM8wHBxhPPJ7Bc%3D&amp;reserved=0" data-outlook-id="bbc15ac3-fe69-447c-8059-b1fd03c6c49b">Mohamed H. Mohamed</a><br /><br /></div><div class="elementToProof"><b>9.20-9.40:</b> Borddialoger: Drøftelser om muligheder, risici og konkrete erfaringer med AI i kvalitetsarbejdet<br /><br /></div><div class="elementToProof"><b>9.40-9.55:</b> Fælles opsamling<br /><br /></div><div class="elementToProof"><b>9.55-10.00:</b> Afrunding</div><p><strong>Seminaret er relevant for:</strong></p><ul><li>QA- og testprofessionelle</li><li>Testmanagers og test leads</li><li>Udviklere og tekniske profiler med interesse for testautomatisering</li><li>Alle der arbejder med eller overvejer AI i test- og kvalitetsarbejdet</li></ul><h2>Tid og sted</h2><p>Seminaret afholdes <strong>onsdag den 9. september 2026 kl. 7.30 &#8211; 10.00 i <a href="https://goo.gl/maps/h9Wt3LZx6gBqFKF37">Designmejeriet</a>, Alhøjvej 2, 8660 Skanderborg</strong>.</p><p>Der er gode parkeringsforhold ved adressen, og parkering er gratis.</p>						</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-4e2c520 e-con-full padding-horizontal-right padding-as-margin margin-vertical-both padding-vertical-both rounding-right container-theme-gray e-flex e-con e-parent" data-id="4e2c520" data-element_type="container" id="tilmeld">
		<div class="elementor-element elementor-element-3171ddd e-con-full e-flex e-con e-child" data-id="3171ddd" data-element_type="container">
		<div class="elementor-element elementor-element-b8329a1 padding-as-margin e-con-full e-flex e-con e-child" data-id="b8329a1" data-element_type="container" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
		<div class="elementor-element elementor-element-adede44 e-con-full e-flex e-con e-child" data-id="adede44" data-element_type="container">
				<div class="elementor-element elementor-element-5792788 elementor-widget elementor-widget-heading" data-id="5792788" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
			<h2 class="elementor-heading-title elementor-size-default"><span class="wordanim"><span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":0}'>Tilmelding</span></span> <span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":50}'>til</span></span> <span><span class="elementor-element animated-fast elementor-invisible" data-element_type="widget" data-settings='{"_animation":"slideInUp","_animation_delay":100}'>seminar</span></span> </span></h2>		</div>
				</div>
				<div class="elementor-element elementor-element-f04abc1 elementor-widget elementor-widget-text-editor" data-id="f04abc1" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p>Lyder dagens program som noget for dig?</p><p>Så tilmeld dig her &#8211; Tilmelding er først til mølle.</p>						</div>
				</div>
				<div class="elementor-element elementor-element-240c010 elementor-button-align-start elementor-widget elementor-widget-form" data-id="240c010" data-element_type="widget" data-settings="{&quot;step_next_label&quot;:&quot;N\u00e6ste&quot;,&quot;step_previous_label&quot;:&quot;Tidligere&quot;,&quot;button_width&quot;:&quot;100&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}" data-widget_type="form.default">
				<div class="elementor-widget-container">
					<form class="elementor-form" method="post" id="tilmeld_kursus" name="Seminar 19. maj 2026">
			<input type="hidden" name="post_id" value="10912"/>
			<input type="hidden" name="form_id" value="240c010"/>
			<input type="hidden" name="referer_title" value="Quality2Gether 9. september 2026 &#8211; Key2Quality" />

			
			<div class="elementor-form-fields-wrapper elementor-labels-above">
								<div class="elementor-field-type-hidden elementor-field-group elementor-column elementor-field-group-seminartitel elementor-col-100">
													<input size="1" type="hidden" name="form_fields[seminartitel]" id="form-field-seminartitel" class="elementor-field elementor-size-sm  elementor-field-textual" value="Quality2Gether 9. september 2026">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-name" class="elementor-field-label">
								Navn							</label>
														<input size="1" type="text" name="form_fields[name]" id="form-field-name" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Både dit for- og efternavn" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-email" class="elementor-field-label">
								E-mail							</label>
														<input size="1" type="email" name="form_fields[email]" id="form-field-email" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Så vi kan sende dig en bekræftelse" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_f0e90bc elementor-col-100">
												<label for="form-field-field_f0e90bc" class="elementor-field-label">
								Telefon							</label>
														<input size="1" type="text" name="form_fields[field_f0e90bc]" id="form-field-field_f0e90bc" class="elementor-field elementor-size-sm  elementor-field-textual" placeholder="Kun hvis du har lyst til at dele det med os">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-titel elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-titel" class="elementor-field-label">
								Jobtitel							</label>
														<input size="1" type="text" name="form_fields[titel]" id="form-field-titel" class="elementor-field elementor-size-sm  elementor-field-textual" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_903903f elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-field_903903f" class="elementor-field-label">
								Virksomhed							</label>
														<input size="1" type="text" name="form_fields[field_903903f]" id="form-field-field_903903f" class="elementor-field elementor-size-sm  elementor-field-textual" required="required" aria-required="true">
											</div>
								<div class="elementor-field-type-select elementor-field-group elementor-column elementor-field-group-dato elementor-col-100 elementor-field-required elementor-mark-required">
												<label for="form-field-dato" class="elementor-field-label">
								Vælg dato for seminar							</label>
								<div class="elementor-field elementor-select-wrapper remove-before ">
			<div class="select-caret-down-wrapper">
				<svg aria-hidden="true" class="e-font-icon-svg e-eicon-caret-down" viewBox="0 0 571.4 571.4" xmlns="http://www.w3.org/2000/svg"><path d="M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z"></path></svg>			</div>
			<select name="form_fields[dato]" id="form-field-dato" class="elementor-field-textual elementor-size-sm" required="required" aria-required="true">
									<option value="9. september 2026">9. september 2026</option>
							</select>
		</div>
						</div>
								<div class="elementor-field-type-textarea elementor-field-group elementor-column elementor-field-group-message elementor-col-100">
												<label for="form-field-message" class="elementor-field-label">
								Send en besked til os							</label>
						<textarea maxlength="500" class="elementor-field-textual elementor-field  elementor-size-sm" name="form_fields[message]" id="form-field-message" rows="4" placeholder="Trænger der sig et spørgsmål på? Så skriv det her - vi er klar til at svare."></textarea>				</div>
								<div class="elementor-field-type-select elementor-field-group elementor-column elementor-field-group-field_50f9a26 elementor-col-100">
												<label for="form-field-field_50f9a26" class="elementor-field-label">
								Tilmeld nyhedsbrev							</label>
								<div class="elementor-field elementor-select-wrapper remove-before ">
			<div class="select-caret-down-wrapper">
				<svg aria-hidden="true" class="e-font-icon-svg e-eicon-caret-down" viewBox="0 0 571.4 571.4" xmlns="http://www.w3.org/2000/svg"><path d="M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z"></path></svg>			</div>
			<select name="form_fields[field_50f9a26]" id="form-field-field_50f9a26" class="elementor-field-textual elementor-size-sm">
									<option value="Ja tak">Ja tak</option>
									<option value="Nej tak">Nej tak</option>
							</select>
		</div>
						</div>
								<div class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons">
					<button class="elementor-button elementor-size-sm" type="submit">
						<span class="elementor-button-content-wrapper">
																						<span class="elementor-button-text">Send</span>
													</span>
					</button>
				</div>
			</div>
		</form>
				</div>
				</div>
				</div>
		<div class="elementor-element elementor-element-b7d452c e-con-full e-flex e-con e-child" data-id="b7d452c" data-element_type="container">
				<div class="elementor-element elementor-element-4d5143b elementor-invisible elementor-widget elementor-widget-theme-post-featured-image elementor-widget-image" data-id="4d5143b" data-element_type="widget" data-settings="{&quot;_animation&quot;:&quot;subtleFadeInUp&quot;}" data-widget_type="theme-post-featured-image.default">
				<div class="elementor-widget-container">
													<img loading="lazy" decoding="async" width="576" height="1024" src="https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-576x1024.jpg" class="attachment-large size-large wp-image-10913" alt="" srcset="https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-576x1024.jpg 576w, https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-169x300.jpg 169w, https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-768x1365.jpg 768w, https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-864x1536.jpg 864w, https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-1152x2048.jpg 1152w, https://key2quality.dk/wp-content/uploads/2026/05/IMG_1209-scaled.jpg 1440w" sizes="(max-width: 576px) 100vw, 576px" />													</div>
				</div>
				</div>
				</div>
				</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/quality2gether-9-september-2026/">Quality2Gether 9. september 2026</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Risikobaseret teststrategi i CI/CD</title>
		<link>https://key2quality.dk/risikobaseret-teststrategi-i-ci-cd/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Fri, 08 May 2026 07:23:40 +0000</pubDate>
				<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Kursusforretningen]]></category>
		<category><![CDATA[Morten Engberg]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[TMAP]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=10892</guid>

					<description><![CDATA[<p>&#8220;I pity the fool who doesn&#8217;t put quality dead center&#8221; Sådan kunne Mr. T have sagt, hvis han havde været DevOps-ekspert i stedet for 80&#8217;er actionhelt. Men så ville verden have været foruden B. A. Baracus og A-teamet, og det ville også have været en skam. Nuvel, vi må hellere dykke ned i det, som [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/risikobaseret-teststrategi-i-ci-cd/">Risikobaseret teststrategi i CI/CD</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="10892" class="elementor elementor-10892" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-779f8f12 e-flex e-con-boxed e-con e-parent" data-id="779f8f12" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-24bbebd6 elementor-widget elementor-widget-text-editor" data-id="24bbebd6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<h2 style="font-weight: 400"><strong><em>&#8220;I pity the fool who doesn&#8217;t put quality dead center&#8221;</em></strong></h2><p style="font-weight: 400">Sådan kunne Mr. T have sagt, hvis han havde været DevOps-ekspert i stedet for 80&#8217;er actionhelt. Men så ville verden have været foruden B. A. Baracus og A-teamet, og det ville også have været en skam.</p><p style="font-weight: 400">Nuvel, vi må hellere dykke ned i det, som det egentlig drejer sig om. Risikobaseret teststrategi i CI/CD.</p><p style="font-weight: 400">Og hvad er risikoen, spørger du nok? Ja, det må vi finde ud af i fællesskab.</p><h2>Hvad er kvalitetsrisiko?</h2><p style="font-weight: 400">Lad os starte med det grundlæggende.</p><p style="font-weight: 400">Kvalitetsrisiko er en specifik chance for, at produktet fejler, kombineret med konsekvensen hvis det sker. To faktorer bestemmer chancen for fejl: Sandsynligheden for at fejlen overhovedet findes i produktet, og hvor tit den pågældende del af produktet bliver brugt. Konsekvensen handler om, hvad der sker i den virkelige verden når det går galt. For brugerne og måske for virksomhedens omdømme.</p><p style="font-weight: 400">Forestil dig engang, at et finansielt system er bygget med en microservices-arkitektur. En bruger går i gang med en valutakonvertering i realtid. Undervejs crasher systemet, fordi der ikke er styr på afhængighederne mellem de services der kræves for at gennemføre konverteringen. Det er systemkompleksitet der påvirker chancen for fejl og en utilfreds bruger der ikke kan gennemføre sin transaktion, der illustrerer konsekvensen.</p><p style="font-weight: 400">En betalingsbekræftelse som alle kunder bruger flere gange dagligt bærer en fundamental anden risiko end et administrativt skærmbillede med en kosmetisk fejl. Din testindsats bør afspejle den forskel. Det er lige præcis det risikobaseret test handler om.</p><p style="font-weight: 400">Og det er ikke kun et spørgsmål om prioritering. Det handler om overlevelse. I DevOps er det teamet selv der mærker konsekvensen, når noget går galt i produktion. &#8220;You build it, you run it&#8221; er ikke bare et catchy motto, men en direkte incitamentstruktur der tvinger kvalitet ind i centrum af arbejdet. Når du er den person der bliver vækket klokken tre om natten fordi din kode fejler i produktion, tænker du anderledes over risiko næste gang du planlægger et sprint.</p><p style="font-weight: 400">Og lige inden du tænker &#8220;funktionalitet, det har vi da styr på&#8221;, så stop lige et sekund. En user story handler typisk om hvad en feature skal gøre, men de relevante kvalitetskarakteristikker rækker langt videre end det. Sikkerhed, performance, vedligehold, brugervenlighed, pålidelighed. En betalingsfeature kan bære høj funktionel risiko og en ligeså høj sikkerhedsrisiko på samme tid. Et rapporteringsdashboard kan have lav sikkerhedsrisiko men til gengæld høj risiko i brugervenligheden. At identificere hvilke kvalitetskarakteristikker der rent faktisk er relevante for hvert item, er en forudsætning for at bygge en teststrategi der er noget værd.</p><h2>Hele teamet med: Risk poker</h2><p style="font-weight: 400">Lad os tale om den mest oversete faldgrube i risikovurdering: At kun én person laver den.</p><p style="font-weight: 400">En udvikler ser teknisk kompleksitet. En product owner ser forretningsmæssig konsekvens. En tester ser historiske fejlmønstre. En risikoanalyse der kun fanger ét af disse perspektiver er ufuldstændig og en ufuldstændig risikoanalyse giver en ufuldstændig teststrategi. Så lad os gøre det ordentligt.</p><p style="font-weight: 400">Risk poker er svaret. Det er en udvidelse af planning poker som de fleste Scrum- og DevOps-teams allerede kender og bruger. Og ligesom planning poker afslører forskelle i, hvordan teammedlemmer forstår størrelsen af en user story, afslører risk poker forskelle i, hvordan de forstår dens risiko. De forskelle er ikke noget man skal komme hurtigt videre fra. De er faktisk den mest værdifulde del af hele sessionen.</p><p style="font-weight: 400">Sådan fungerer det i praksis. For hver user story i det kommende sprint estimerer hvert teammedlem selvstændigt to ting: Chancen for fejl og konsekvensen af fejl. Det gøres med kort med værdierne 1 (lav), 2 (mellem) og 3 (høj). Kortene vendes samtidigt og så begynder den rigtige samtale. Når estimaterne afviger, diskuterer teamet årsagerne bag de afvigende værdier, indtil der er opnået konsensus. Resultatet er en item risk score: Chance ganget med konsekvens.</p><p style="font-weight: 400">I praksis oversætter mange teams scoren til en risikoklasse. Score 9 bliver Risikoklasse A, score 4 eller 6 bliver Risikoklasse B, og score 1, 2 eller 3 bliver Risikoklasse C. Det holder samtalen fokuseret på relativ prioritet frem for falsk numerisk præcision. For ingen risikovurdering er mere præcis end de antagelser den bygger på.</p><p style="font-weight: 400">En vigtig detalje som mange teams overser: Product owner deltager i risk poker, modsat planning poker. Product owner repræsenterer interessenterne og bidrager med det forretningsmæssige perspektiv som udviklere og testere kan undervurdere, særligt når det handler om at kalibrere konsekvensen af en fejl korrekt. Scrum Masteren faciliterer men spiller ikke selv.</p><p style="font-weight: 400">Resultatet? En risikotabel. Et struktureret overblik over alle user stories i sprintet med en risikoklasse for hver relevant kvalitetskarakteristik.</p><h2>Fra risikoklasse til testintensitet</h2><p style="font-weight: 400">Okay, vi har vores risikotabel. Hvad nu?</p><p style="font-weight: 400">Nu bestemmer teamet hvor intensivt hver kombination af story og kvalitetskarakteristik skal testes. Testintensitet udtrykkes i tre niveauer: ••• (høj), •• (mellem) og • (lav).</p><p style="font-weight: 400">Reglen er enkel. Risikoklasse A kræver mindst ét ••• . Risikoklasse B kræver mindst •• . Risikoklasse C får aldrig mere end • . Det er tilladt at gå ned i intensitet, men kun med en dokumenteret begrundelse som alle kan se.</p><p style="font-weight: 400">Denne struktur forhindrer to klassiske fejl. Den første: At behandle alle stories ens uanset risiko. Den anden: At beslutte uformelt at teste noget &#8220;lidt mere&#8221; uden at gøre den beslutning synlig. I en CI/CD-pipeline der kører kontinuerligt, er usynlige beslutninger om testintensitet en direkte kilde til uforudsigelig kvalitet.</p><h2>Kvalitetstiltag: Fra intensitet til konkret handling</h2><p style="font-weight: 400">Testintensitet fortæller <em>hvor meget</em>. Kvalitetstiltag fortæller <em>hvordan</em>.</p><p style="font-weight: 400">For hver kombination af story, kvalitetskarakteristik og testintensitet vælger teamet de konkrete kvalitetstiltag de vil anvende. Og her er det vigtigt at forstå, at kvalitetstiltag ikke er begrænset til dynamisk test. Tværtimod. Det fulde spektrum inkluderer tre kategorier:</p><p style="font-weight: 400"><strong>Forebyggende tiltag</strong> der bygger kvalitet ind fra starten</p><ul><li>Pair programming</li><li>Test-Driven Development</li><li>Behavior Driven Development</li><li>Specification by example</li></ul><p style="font-weight: 400">Disse hører hjemme tidligt i leverancecyklussen, i Plan- og Code-stadierne af pipelinen.</p><p style="font-weight: 400"><strong>Afslørende tiltag</strong> der demonstrerer kvalitetsniveauet</p><ul><li>Funktionel test</li><li>Performancetest</li><li>Sikkerhedstest</li><li>Statisk analyse</li><li>Eksplorativ test</li></ul><p style="font-weight: 400">Disse fordeles over pipeline-stadierne afhængigt af hvad der skal verificeres og hvornår.</p><p style="font-weight: 400"><strong>Korrigerende tiltag</strong> der proaktivt forbedrer kvaliteten</p><ul><li>Refaktorering</li><li>Feature toggles</li></ul><p style="font-weight: 400">Disse hører hjemme i Integrate-stadiet og i teamets løbende refleksion.</p><p style="font-weight: 400">Og så er der en forbindelse som mange teams overser, nemlig risiciene og måden at dække dem på er direkte forbundet med acceptkriterierne på story-kortet. En velbeskrevet Confirmation indeholder ikke kun de glade scenarier. Den inkluderer fejlsituationer, edge cases og hints om hvilke testmetoder der er relevante. Det er den forbindelse der gør teststrategien konkret og handlingsorienteret frem for et dokument ingen læser.</p><h2>Fra teststrategi til quality engineering strategi</h2><p style="font-weight: 400">En traditionel teststrategi fokuserer primært på de afslørende kvalitetstiltag. Altså det vi normalt forstår ved &#8220;test&#8221;. Men i DevOps er kvalitet et teamansvar fordelt over hele leverancecyklussen, og så er en traditionel teststrategi ikke nok.</p><p style="font-weight: 400">Det fører os til begrebet quality engineering strategi: En udvidelse af teststrategien der giver lige vægt til forebyggende, afslørende og korrigerende tiltag, og eksplicit placerer hvert tiltag der, hvor det hører hjemme i leveranceprocessen.</p><p style="font-weight: 400">Lad os tage et konkret eksempel. Et team bygger en ny funktion i deres app der viser brugere deres præcise ventetid i en kø. Teamet klassificerer dette som høj risiko (risikoklasse A). Hvis ventetiden vises forkert, bliver brugerne frustrerede og tilliden til appen falder. Som forebyggende tiltag vælger teamet pair programming under Code-stadiet. Som afslørende tiltag anvender de funktionel test og performancetest med fokus på svartid. Som korrigerende tiltag planlægger de refaktorering under Integrate-stadiet.</p><p style="font-weight: 400">Det er ikke bare en testplan. Det er en bevidst, risikobaseret fordeling af kvalitetsaktiviteter over hele sprintcyklussen med hvert tiltag begrundet i den risiko det adresserer.</p><p style="font-weight: 400">I en CI/CD-kontekst får dette en direkte operationel betydning. Teams der bruger Jira eller Azure DevOps kan registrere risikoklassen og de aftalte kvalitetstiltag direkte på hver user story. Pipeline-konfigurationen kan herefter referere til disse oplysninger og anvende de relevante testsæt på hvert stadie. Stories med høj risiko kræver den højeste testintensitet på tværs af pipeline-stadierne. Stories med lav risiko kører et målrettet subset. Quality gates, de definerede kriterier som en build skal opfylde inden den avancerer til næste pipeline-stadie, omsætter strategien til konkret pipeline-håndhævelse.</p><h2>Strategien er levende, ikke et dokument der samler støv</h2><p style="font-weight: 400">Her kommer den del som mange glemmer.</p><p style="font-weight: 400">En quality engineering strategi skabes ikke én gang og lægges i en skuffe. User stories ændrer sig. Nye stories tilføjes. Risikoopfattelsen skifter efterhånden som teamet lærer mere om produktet og dets brugere. Og når en hændelse opstår i produktion, giver den reel evidens for at risikovurderingen af det berørte komponent var sat for lavt.</p><p style="font-weight: 400">Kapable DevOps-teams stiller spørgsmålet &#8220;skal vi opdatere vores quality engineering strategi?&#8221; ved hvert daily standup og i hvert retrospektiv. For teamet er strategien primært en to-do-liste: En klar og fælles aftale om hvilke kvalitetsaktiviteter der skal udføres, med hvilken intensitet og på hvilket tidspunkt i leverancen.</p><p style="font-weight: 400">Når den liste er synlig, vedligeholdt og ejet af hele teamet, holder kvalitet op med at være en kontrolaktivitet forbeholdt testere til sidst i processen og bliver en del af måden teamet arbejder på. Hver dag. I hvert sprint.</p><p style="font-weight: 400">Og det er egentlig det, som det hele drejer sig om.</p><p> </p><h4><strong data-start="1273" data-end="1327">Bliv bedre til at omsætte teststrategi til praksis<br /></strong>Risikobaseret teststrategi i CI/CD kræver fælles sprog, tydelige prioriteringer og konkrete kvalitetstiltag i teamet. På vores <a href="https://key2quality.dk/testkurser/">testkurser</a> arbejder du praktisk med teorien, får eksempler fra virkelige IT-projekter og sparring fra undervisere med solid erfaring fra praksis. Se vores kommende kurser i <a href="https://key2quality.dk/testkurser/">ISTQB</a>, <a href="https://key2quality.dk/testkurser/">TMAP</a> og test — eller <a href="https://key2quality.dk/kontakt/">kontakt os</a> om et skræddersyet forløb til jeres team</h4>						</div>
				</div>
					</div>
				</div>
		<div class="elementor-element elementor-element-169eebf e-flex e-con-boxed e-con e-parent" data-id="169eebf" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-367df70 elementor-widget elementor-widget-button" data-id="367df70" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
					<div class="elementor-button-wrapper">
			<a class="elementor-button elementor-button-link elementor-size-sm" href="">
						<span class="elementor-button-content-wrapper">
									<span class="elementor-button-text">Se kursuskalender</span>
					</span>
					</a>
		</div>
				</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/risikobaseret-teststrategi-i-ci-cd/">Risikobaseret teststrategi i CI/CD</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>GenAI: Din nye kollega i test og kvalitetssikring</title>
		<link>https://key2quality.dk/genai-din-nye-kollega-i-test-og-kvalitetssikring/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Fri, 24 Apr 2026 07:29:15 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[AI X Test]]></category>
		<category><![CDATA[forsiden]]></category>
		<category><![CDATA[Morten Engberg]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=10859</guid>

					<description><![CDATA[<p>Her kommer der lige en lille disclaimer: Denne artikel er ikke nedfældet af en kunstig intelligens, men derimod et helt almindeligt menneske. Ret vildt, synes du ikke? Det der for ganske få år siden ville have været en selvfølge, bliver i dag gradvist en sjældenhed i forhold til AI-generet indhold. Med nogle få instruktioner kunne [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/genai-din-nye-kollega-i-test-og-kvalitetssikring/">GenAI: Din nye kollega i test og kvalitetssikring</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="10859" class="elementor elementor-10859" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-779f8f12 e-flex e-con-boxed e-con e-parent" data-id="779f8f12" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-24bbebd6 elementor-widget elementor-widget-text-editor" data-id="24bbebd6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p style="font-weight: 400">Her kommer der lige en lille disclaimer: Denne artikel er ikke nedfældet af en kunstig intelligens, men derimod et helt almindeligt menneske.</p><p style="font-weight: 400">Ret vildt, synes du ikke?</p><p style="font-weight: 400">Det der for ganske få år siden ville have været en selvfølge, bliver i dag gradvist en sjældenhed i forhold til AI-generet indhold.</p><p>Med nogle få instruktioner kunne jeg nemt have fået en AI til at generere enten et udkast eller en hel artikel om dette emne, alt afhængigt af hvilken grad af autonomi jeg ville tildele den.</p><p style="font-weight: 400">For det går hurtigt med AI, meget hurtigt.</p><p style="font-weight: 400">Særligt inden for softwareudvikling, hvor millionvis af AI-genererede linjer kode bliver spyttet ud dagligt på tværs af vores lille blå planet.</p><p style="font-weight: 400">Og når udviklingshastigheden stiger, ja så må hastigheden på at kvalitetssikre dets output følge med.</p><p style="font-weight: 400">Så lad os tage et kig på, hvad GenAI egentlig er og hvordan det passer ind i en test og QA-kontekst.</p><p style="font-weight: 400">Hvis du allerede nu føler, at det der GenAI har du bare helt styr på, så kan du passende springe ned til overskriften: <strong><em>‘Hvordan kan GenAI bruges i test kontekst?’</em></strong>.</p><p>Her vil jeg komme med eksempler på, hvordan GenAI kan anvendes i test og QA-opgaver.</p><h3>Hvad er GenAI?</h3><p style="font-weight: 400">Lad os prøve at visualisere, hvad AI egentlig er.<br />Forestil dig, at langt ude i skoven lå et bjerg kaldet AI.</p><p style="font-weight: 400">På det bjerg stod der så et lille træ, som vi vælger at kalde Generative AI eller blot GenAI.</p><p style="font-weight: 400">Træets rødder kaldes neural networks. Rødderne løber op i stammen, language models (LM). På stammen sidder der en gren, pre-trained language models (PLM). På grenen er der tre kviste, en lille kvist, small language models (SLM), en mellem kvist, large language models (LLM) og en stor kvist, multimodal LLM. Og på den store multimodal LLM-kvist sidder der nogle blade, vision-language modeller.</p><p style="font-weight: 400">Forvirrende? Lad os dykke ned i, hvad de forskellige elementer så egentlig betyder.</p><h3>Neural network<strong>s</strong></h3><p style="font-weight: 400">Neural networks eller på dansk kaldet neurale netværk, udgør selve fundamentet for den moderne kunstige intelligens, som vi kender til i dag. De neurale netværk fungerer ved at efterligne vores menneskelige hjerner ved at behandle information gennem bittesmå beregningsenheder, som vi ofte kalder neuroner. Neurale modeller, altså matematiske modeller opbygget gennem neurale netværk, har været igennem en massiv udvikling gennem flere generationer. Fra de tidlige neurale modeller som Recurrent Neural Networks (RNN), der behandler data sekventielt, til de nuværende modeller bygget på Transformer-arkitekturen, som behandler data parallelt.</p><p style="font-weight: 400">Det gennemgående for de neurale modeller er deres evne til at processere konteksten af store tekstmængder. Men det er netop her, at Transformer-arkitekturen skiller sig ud fra de tidlige neurale modeller. Hvor RNN-baserede modeller læser tekst som vi læser en bog, ord for ord og fra venstre mod højre, så kan Transformer-baserede modeller læse hele sætningen på én gang og vurdere, hvilke ord der er vigtige ift. hinanden. Det er en uhyre egenskab, som vi kalder self-attention mekanismen.</p><p style="font-weight: 400">Forestil dig lige en gang, at du er i gang med at læse en fejlrapport. I rapporten står der sætningen:<em> “Log ind knappen virker ikke, når brugeren trykker på den”. </em>En RNN-baseret model ville behandle hvert ord i rækkefølge, og dermed risikere at “glemme” den indledende del, inden den havde læst sætningen til ende. En transformer-baseret model forstår derimod med det samme at “knappen” og “trykker” hænger sammen, idet self-attention mekanismen beregner relationerne mellem alle ord i sætningen parallelt.</p><h3>De to grundsten: Tokens og Embeddings</h3><p style="font-weight: 400">For at en GenAI kan forstå dine prompts, skal den først nedbryde teksten. Det sker gennem to koncepter, der er fundamentet for det hele:</p><ul><li><strong>Tokenization:</strong> Her bliver dine prompts nedbrudt i mindre enheder, også kaldet tokens. Tokens kan være enkle tegn eller et helt ord.</li><li><strong>Embeddings:</strong> Hold fast, for nu bliver det lidt teknisk. De nedbrudte tokens bliver derefter oversat til tal i et kæmpe koordinatsystem. Tokens med lignende betydninger og anvendelse, placeres tæt på hinanden. På den måde &#8220;forstår&#8221; modellen de semantiske sammenhænge mellem de nedbrudte tokens.</li></ul><h3>Language models (LM) &amp; pre-trained language models (PLM)</h3><p style="font-weight: 400">De neurale netværks rødder løber op i stammen, language models (LM). En language model er kort fortalt en model, der er trænet i at forstå og forudsige sprog ved at lære mønstre fra tekst. Som det tidligere er beskrevet i de to grundsten: tokens og embeddings, så er det her modellens forståelse opstår. Teksten nedbrydes, den oversættes til et tal og gennem talrepræsentationen lærer modellen at genkende mønstre og forudsige sprog.</p><p style="font-weight: 400">Fra stammen vokser der sig en gren, pre-trained language models (PLM). En PLM er en videreudvikling af LM der, fremfor at være blevet trænet på en specifik opgave, først bliver trænet på massive mængder tekst – her taler vi alt fra klassiske romaner og videnskabelige artikler til madopskrifter. Denne proces kalder vi pre-training, som giver modellen en generel sprogforståelse, inden den bliver taget i brug med specifikke opgaver.</p><h3>SLM &amp; LLM: Sprogmodellerne der har læst (næsten) alt</h3><p style="font-weight: 400">Åh ja, så kom vi til de to mindste kviste; small language models (SLM) og large language models (LLM).</p><p style="font-weight: 400">Den mindste kvist, Small Language Models (SLM), er kompakte modeller. Det vil sige, at modellerne har færre end 10 milliarder parametre, hvor parametre skal forstås som de talværdier, der udgør den specifikke og veldefinerede viden som modellen har opbygget under sin pre-training. Modellens specifikke viden og kompakte størrelse gør altså at den er væsentligt lettere at køre og i modsætning til bladet ved siden af, så kan den faktisk afvikles til veldefinerede opgaver lokalt på din computer eller smartphone – det er da ret sejt.</p><p>Den mellemste kvist, large language models (LLM), har du formentlig hørt om allerede. Det er dem vi i det daglige kender fra Claude, Gemini, Mistral og ChatGPT. Hvor SLM’er er nogle små kompakte specialister, er LLM’er derimod nogle store og brede generalister. Under dens pre-training har den fået en massiv mængde viden om alskens slags, og med netop den viden kan modellen forstå, når vi mennesker kommer med input til den gennem prompts.</p><h3>Fra fundament til de helt svære opgaver</h3><p style="font-weight: 400">De brede generalist LLM’er kan derimod også blive videreudviklet. Udviklingen af en LLM minder lidt om en konsulents avancement i konsulenthuset. Den starter som en <strong>Foundation LLM</strong>, der er en generalist, som ved lidt om alting (juniorniveau). Derefter bliver den <strong>Instruction-tuned, </strong>altså trænet specifikt i at forstå og følge menneskelige instruktioner (mellemniveau). Og til sidst har vi <strong>Reasoning LLMs</strong>, som udbygger instruction-tuned modeller gennem kognitive evner som syllogisme, multi-trin problemløsning, og det vi kalder chain-of-thought reasoning.</p><p style="font-weight: 400">For at holde dem på rette spor bruger man <strong>Reinforcement Learning from Human Feedback (RLHF)</strong>. Her er det altså rigtige mennesker, der giver feedback til modellen for at sikre, at den opfører sig ordentligt og svarer sikkert.</p><h3>Multimodal LLM&#8217;er og Vision-Language Modeller</h3><p style="font-weight: 400">Nå, men fra den fine pre-trained language models (PLM) gren sidder der også en stor kvist, Multimodale LLM<em>. </em>Den multimodale LLM udvider LLM’ernes evne til at behandle andre typer data end tekst, herunder billeder, video og lyd. Dette grundet deres træning på store og forskelligartede datasæt. For at modellen kan håndtere de forskelligartede modaliteter, bliver den iboende tokenization tilpasset de forskellige datatyper. Dette ses bl.a. ved konverteringen af billedtokens til embeddings, som vi tidligere har set med tekst.</p><p style="font-weight: 400"><em> </em></p><p style="font-weight: 400">På den store kvist sidder der flere blade, Vision-language-modeller, der specifikt integrerer visuel og tekstuel information for at udføre opgaver såsom billedtekstning (image captioning), visuel spørgsmålsbesvarelse (visual question answering) og analyse af overensstemmelsen mellem tekstuelt og visuelt input.</p><p style="font-weight: 400">Og når vi så taler om GenAI i forbindelse med test og QA, så giver multimodale LLM&#8217;er, og særligt LLM&#8217;er suppleret med vision-language-modeller, betydelige muligheder. Eksempelvis ved at analysere visuelle elementer i applikationer, såsom screenshots og GUI-wireframes, sammen med tilhørende tekstbeskrivelser, herunder fejlrapporter eller user stories. Denne egenskab gør det muligt for testere at identificere uoverensstemmelser mellem forventede resultater og de faktiske visuelle elementer.</p><h2><strong>Hvordan kan GenAI bruges i test kontekst?</strong></h2><p style="font-weight: 400">At bringe GenAI ind i softwaretest er ikke bare en lille opgradering – det er et regulært paradigmeskift. Vi bevæger os væk fra de tunge, regelbaserede metoder og over mod en mere intelligent og adaptiv automatisering, der dækker hele vejen fra de første krav til den endelige rapport.</p><p style="font-weight: 400">Her er de fem områder, hvor GenAI for alvor kan gøre en forskel lige nu:</p><h3>1. Analyse af krav og testdesign: AI som din &#8220;sparringspartner&#8221;</h3><p style="font-weight: 400">Vi kender det alle sammen: Kravspecifikationer, der er mere mudrede end en dansk efterårsdag. Her er LLM’er geniale:</p><ul><li><strong>Oprydning i kravene:</strong> Smid dine dokumenter ind i en LLM’ers chat interface, og den vil lynhurtigt spotte eventuelle uklarheder eller manglende info. Modellen kan muligvis give dig de helt rigtige spørgsmål til dine stakeholders, som du måske først ville have opdaget halvvejs i testfasen.</li><li><strong>Automatisk generering af testcases:</strong> AI’en kan hurtigt læse dine BDD-user stories og derefter generere testcases, mål og forventede resultater på ingen tid.</li><li><strong>De skæve scenarier:</strong> AI’en er god til at finde de der &#8220;edge cases&#8221;, som vi mennesker overser, når vi har hovedet fuldt af de mest gængse brugerrejser.</li></ul><h3>2. Implementering og data: Slut med at vente på testdata</h3><p style="font-weight: 400">Det er her, vi for alvor mærker hastigheden:</p><ul><li><strong>Syntetisk testdata:</strong> Har du også prøvet at kæmpe med GDPR-regler og anonymisering af kundedata? AI kan generere realistiske, men 100% kunstige datasæt, der ligner den ægte vare på en prik, uden at du kommer i klemme med lovgivningen.</li></ul><h3>3. Vedligeholdelse der klarer sig selv (næsten)</h3><p style="font-weight: 400">En af de største frustrationer i testautomatisering er skrøbelige scripts, der fejler ved selv de mindste UI ændringer.</p><ul><li><strong>Self-healing:</strong> Moderne AI-frameworks kan selv opdatere dine scripts, når UI’en eller API’et ændrer sig.</li><li><strong>Intelligent prioritering:</strong> Ved at kigge på historiske data kan AI’en fortælle dig, hvilke testcases der er vigtigst at køre lige nu, baseret på hvor risikoen for fejl er størst.</li></ul><h3>4. Analyse af resultater: Hvad gik der egentlig galt?</h3><p style="font-weight: 400">Når testen fejler, starter detektivarbejdet. Men AI’en har allerede læst logfilerne for dig:</p><ul><li><strong>Forklaring af fejl:</strong> I stedet for at kigge på en kryptisk sensor-log eller 500 linjer fejlmeddelelser, kan AI’en give dig en sammenhængende forklaring på, <em>hvorfor</em> det gik galt, og hvad du skal gøre for at fikse det.</li><li><strong>Automatisk dokumentation:</strong> Den kan endda skrive dine defekter og rapporter færdige, så de er klar til audit uden det store manuelle benarbejde.</li></ul><h3>5. Husk nu mennesket i maskinrummet</h3><p style="font-weight: 400">Selvom alt det her lyder som den rene QA-lykke, så kræver det en hybridmodel. Vi kan ikke bare læne os tilbage og lade AI&#8217;en styre showet alene:</p><ul><li><strong>Tjek resultatet:</strong> Selvom GenAI og LLM’er er smarte, så kan modellerne ligesom du og jeg stadig lave fejl. De kan skrive testlogik, der ser rigtig ud, men som ikke stemmer overens med testobjektet. Derfor skal du altid have en ekspert (dig!) med i loopet.</li><li><strong>Styr på standarderne:</strong> Vi skal sikre os, at det AI’en genererer til os, rent faktisk lever op til vores kvalitetskrav og den gældende lovgivning.</li></ul><p style="font-weight: 400">Puha, det blev en lang omgang. Hvis du stadig læser med, så kommer der lige en kort opsummering:</p><ul><li>GenAI bygger på neurale netværk og transformer-arkitekturen, som gør modellerne i stand til at forstå tekst parallelt og dermed relationen mellem ord</li><li>Sprogmodeller forstår tekst gennem tokens og embeddings – altså nedbrydning i enheder og nummerering.</li><li>Pre-training giver sprogmodeller baggrundsviden &#8211; både til SLM specialisterne og LLM generalisterne</li><li>Multimodale LLM’er kan kombinere tekst og billeder, eksempelvis screenshots af GUI-baserede fejl og user story.</li><li>GenAI kan hjælpe med meget af det manuelle arbejde i test og QA, fra kravanalyse og testdesign til fejlforklaring, men det er stadig vigtigt med et human-in-the-loop.</li></ul><p style="font-weight: 400">Og som jeg skrev i det indledende, så går det meget hurtigt med AI. Men hvis vi lige vender den formulering på hovedet engang. Mens alle andre bekymrer sig om, hvorvidt GenAI kommer til at erstatte dem på arbejdspladsen, så sidder du nu med en bedre forståelse af, hvad det hele egentlig drejer sig om. Du ved hvad et neuralt netværk er, du ved hvorfor transformer-baserede modeller er klogere end RNN-baserede modeller, og du ved hvordan GenAI kan blive din nye buddy i testarbejdet. Det gør dig bestemt ikke overflødig, det gør dig snarere farlig. Altså på den gode måde. Så ja, det går hurtigt. Men det bliver også sjovere at være tester.</p>						</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/genai-din-nye-kollega-i-test-og-kvalitetssikring/">GenAI: Din nye kollega i test og kvalitetssikring</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Stop gemmelegen bag dit framework, og få styr på jeres værdier…</title>
		<link>https://key2quality.dk/stop-gemmelegen-bag-dit-framework-og-faa-styr-paa-jeres-vaerdier/</link>
		
		<dc:creator><![CDATA[Julie Sloth]]></dc:creator>
		<pubDate>Thu, 09 Apr 2026 10:15:23 +0000</pubDate>
				<category><![CDATA[Af Kasper Bang-Dam]]></category>
		<category><![CDATA[forsiden]]></category>
		<category><![CDATA[IT-projektledelse]]></category>
		<category><![CDATA[Nyheder]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Vidensdeling]]></category>
		<guid isPermaLink="false">https://key2quality.dk/?p=10767</guid>

					<description><![CDATA[<p>… råber Scrum Masteren flabet ud i æteren. Og ja! Jeg ved selvfølgelig godt, det er en provokation. For sandheden er, at vi elsker frameworks: De lover struktur i kaos, fremdrift i kompleksitet og svar på det, der føles uoverskueligt. Frameworks kommer med certificeringer, tegninger, roller og ceremonier. De giver os noget at holde fast [&#8230;]</p>
<p>The post <a href="https://key2quality.dk/stop-gemmelegen-bag-dit-framework-og-faa-styr-paa-jeres-vaerdier/">Stop gemmelegen bag dit framework, og få styr på jeres værdier…</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="10767" class="elementor elementor-10767" data-elementor-post-type="post">
				<div class="elementor-element elementor-element-779f8f12 e-flex e-con-boxed e-con e-parent" data-id="779f8f12" data-element_type="container">
					<div class="e-con-inner">
				<div class="elementor-element elementor-element-24bbebd6 elementor-widget elementor-widget-text-editor" data-id="24bbebd6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
							<p style="font-weight: 400">… råber Scrum Masteren flabet ud i æteren. Og ja! Jeg ved selvfølgelig godt, det er en provokation. For sandheden er, at vi elsker frameworks: De lover struktur i kaos, fremdrift i kompleksitet og svar på det, der føles uoverskueligt. Frameworks kommer med certificeringer, tegninger, roller og ceremonier. De giver os noget at holde fast i, når forandring presser sig på.</p><p style="font-weight: 400"><em><strong>Men hvad nu, hvis det ikke er frameworket, der skaber forandringen? Hvad nu, hvis det, vi igen og igen forsøger at løse med nye modeller og processer, i virkeligheden handler om noget langt mere fundamentalt: vores værdier og den adfærd, de skaber?</strong></em></p><p style="font-weight: 400">Efter syv år med agile transformationer har jeg set det samme mønster gentage sig: Organisationer implementerer frameworks med de bedste intentioner og står ofte tilbage med compliance uden commitment. Ceremonier uden energi. Tavler uden transparens. Retrospektiver uden reel refleksion. Frameworks er ikke problemet. Men de er heller ikke løsningen alene. Hvis vi vil skabe ægte forandring, skal vi starte et andet sted – nemlig med vores værdier.</p><p style="font-weight: 400">Min påstand er, at alle teams er forskellige, og derfor står jeg gang på gang også tilbage med et presserende spørgsmål: <em><strong>Hvorfor bliver de igen og igen presset ned i frameworks, der ikke er skræddersyet til dem, uden at nogen for alvor stopper op og spørger, hvorfor det bliver ved med at ske, og om det virkelig er måden at gøre tingene på?</strong></em></p><p style="font-weight: 400">I min optik er det ikke frameworks, der i sig selv er problemet. De kan være utrolig brugbare, men for mig opstår problematikken, når vi tror, at det er implementeringen af et framework, der i sig selv skaber forandring.</p><p style="font-weight: 400">SAFe, Scrum, Kanban og Product Team. Du kan selv vælge din personlige favorit og så fortælle mig, om du mener, at det var implementeringen af frameworket, der skabte forandringen.</p><p style="font-weight: 400"><strong>Min tese:</strong> Det gjorde den ikke. Og derfor mener jeg, at vi i stedet skal stille skarpt på vores værdier.</p><h2>Gode intentioner</h2><p>Jeg tror fuldt ud på, at når organisationer implementerer et nyt og revolutionerende framework, bliver det gjort i den allerbedste mening, fordi en transformation er dyr. Samtidig kan de se, at det virkede hos konkurrenten, så det er vel investeringen værd? Måske.</p><p>Men hvis man forsøger at implementere et framework uden at forankre det i et bevidst og tydeligt værdisæt, så kæmper man som forandringsleder en unfair kamp. Min erfaring viser mig, at den til tider er helt umulig, fordi et nyt framework ikke ændrer adfærden, uanset hvor mange møder der bookes ind til. Det gør værdierne bag.</p><p>For vi er alle styret af vores interne værdisæt: rigtigt og forkert, rimeligt og urimeligt. Så kan vi få skabt fælles ejerskab om forandringens værdier, så har vi grobund for fælles adfærdsændring.</p><h2>Start nu med værdierne</h2><p>Jeg har tilpas meget erfaring til at vide, at transformation er svær, og min erfaring har heldigvis også givet mig en masse læring med undervejs. En af de absolut vigtigste læringer for mig er, at jeg til hver en tid vil starte med værdierne, når jeg starter en transformation.</p><p>Jeg arbejder primært med overgangen til agile arbejdsmetodikker (ofte Scrum), så det betyder værdier før ceremonier.</p><p>Måske gør du det samme, og så vil du heller ikke blive overrasket over, at følgende er de altoverskyggende værdier, jeg arbejder efter:</p><p>Transparens<br />Refleksion<br />Adaption</p><p>Derfor synes jeg også, at Scrum er interessant, fordi det grundlæggende bygger på det samme værdisæt, som jeg har. Så langt, så godt: et framework, der understøtter mine værdier.</p><p>Men hvis det ikke fungerer i praksis, så bliver der justeret i samarbejde med teamet.</p><p>Frameworket er trods alt til for teamet. Ikke omvendt.</p><h2>Når det lykkes</h2><p>Så hvordan ser det ud i virkeligheden, når vi lykkes med en transformation med udgangspunkt i værdierne?</p><p>Lad os tage udgangspunkt i Scrum-ceremonierne: Daily, Retrospektiv og Planning.</p><p><b>Daily</b><br />Daily kan være et fantastisk rum for transparens, refleksion og adaption.</p><p>Når dit team forstår værdigrundlaget, så går Daily fra at være et statusmøde med røvsyg afrapportering til at være et ønsket “timeout-kort” i en travl hverdag, hvor teamet får vendt aktuelle problemstillinger, søger hjælp og giver sparring for at sikre fremdrift mod et fælles mål.</p><p>Skal det være hver dag for at opnå det?<br />Skal det vare 15 minutter?<br />Skal vi stå op eller sidde ned?</p><p>Ikke nødvendigvis, men vi skal være enige om værdien af et fælles overblik og hurtig justering og finde den form, der faktisk understøtter det – i stedet for blot at følge Scrum Guidens retningslinjer.</p><p><b>Retrospektiv</b><br />Retrospektiver er geniale til refleksion og adaption, men kun hvis der er psykologisk tryghed til at understøtte transparens.</p><p>Hvis teamet ikke tør sige tingene højt, så risikerer vi, at retrospektivet bliver en ventil for “varm luft” og ikke grundlæggende problemhåndtering inden for vores kontrolcirkel.</p><p>Oplever du, at teamet ventilerer “varm luft” om ledelse og opgaver, skal du måske starte et helt andet sted:<br />Hvordan skaber jeg tryghed i mit team?</p><p>Når trygheden er der, så kommer transparensen, og så tvivler jeg på, at teamet kan blive færdigt med retrospektivet på under en time.</p><p>Alle vil deltage i debatten, snakke åbent om problemet og de konsekvenser, der følger med, uden at det bliver personspecifikt. Vi går efter bolden, ikke manden, og vi sørger for at komme i mål med nogle klare og håndgribelige forandringer, der skal prøves af i den kommende iteration.</p><p>Forhåbentlig leder det til øget effektivitet, men min oplevelse er også, at et trygt og vellykket retrospektiv øger tilhørsforholdet og viljen til at lykkes som et team – ikke som individer.</p><p><b>Planning</b><br />Når vi planlægger, bliver vi tvunget til at kigge på den virkelighed, vi står overfor.</p><p>Men i et team, hvor transparens ikke er til stede eller prioriteret, vil vi sandsynligvis opleve en del spillover, undskyldt med: “Det her er altså vanvittigt vigtigt, og der bliver ved med at komme nye problemer, hver gang jeg løser ét. Kan vi ikke bare lave en part 5 og så lukke part 4?”</p><p>Er opgaven så færdig efter næste iteration? Næppe. Kan det afhjælpes? Bestemt – hvis vi fortæller, hvad vi reelt laver, i stedet for at blande det hele sammen under samme titel, fordi det er let.</p><p>Står vi uden transparens i vores opgaver og virkelighed, så bliver det svært at agere korrekt og lave de nødvendige prioriteringer for at levere mest mulig værdi i den kommende iteration.</p><p>Vi kan også befinde os i en situation, hvor der er transparens, men hvor der ikke bliver reflekteret eller handlet.</p><p>F.eks. kunne det være helt tydeligt, at der ikke er en jordisk chance for at opnå Product Ownerens mål for iterationen.</p><p>Vi kender alle opgaverne, de er veldefinerede, og det står klart, at det ikke kan lade sig gøre. Teamet fylder sprintet op i forhold til målet – sandsynligvis med opgaver op over begge ører – og siger: “Held og lykke, folkens.”</p><p>Men er det sådan, vi har skabt mest mulig værdi? Kunne vi have omformuleret målet? Gjorde vi opmærksom på konsekvenserne?</p><p>Teamet burde stoppe op. Reflektere. Og træffe en hård, men nødvendig beslutning for at starte en realistisk iteration, hvor resultatet ikke blot er værdi skabt for stakeholders, men også en oplevelse af succes i teamet.</p><p>Det er dybt afhængighedsskabende at opleve succes – noget med dopamin. Look it up.</p><h2><span style="text-align: var(--text-align)">Den grimme sandhed</span></h2><p>Som det nok efterhånden er tydeligt, lever jeg ud fra et ret simpelt verdensbillede.<br />Og jeg er pinligt bevidst om, at det er lettere sagt end gjort.</p><p>Men… i min verden bliver transformation ikke en kamp, hvis:</p><ul><li>teamet kan se sig selv i værdierne</li><li>de forstår, hvad de får ud af dem</li><li>procesforandringerne tydeligt understøtter dem</li></ul><p>Det bliver en mulighed for individuel læring, succeser som hold og ægte forandring i adfærd.</p><p>Men hvis vi starter med at rulle et framework ud og håber, at adfærden følger med af sig selv?</p><p>Ja, så risikerer vi compliance uden commitment.<br />Tidskrævende ceremonier uden ægte refleksion.<br />Jira-boards uden transparens.</p><p>Og så undrer vi os over, hvorfor “det agile” ikke virker.</p><h2><span style="text-align: var(--text-align)">Så drop de frameworks</span></h2><p>Eller rettere: drop blind framework-implementering. Frameworks kan være fremragende.<br />Men de er kun så gode som det værdisæt, de er forankret i, for transformation handler ikke om at gøre frameworket rigtigt. Det handler først og fremmest om at skabe en adfærd, der virker i jeres kontekst.</p><p>Og det starter ikke med PowerPoints og intromøder. Det starter med, at du som forandringsleder tør være tydelig omkring værdierne – og konsekvent i at lade dem styre processen.</p><p>Kan du det? Eller gemmer du dig bag frameworket?</p>						</div>
				</div>
					</div>
				</div>
				</div>
		<p>The post <a href="https://key2quality.dk/stop-gemmelegen-bag-dit-framework-og-faa-styr-paa-jeres-vaerdier/">Stop gemmelegen bag dit framework, og få styr på jeres værdier…</a> appeared first on <a href="https://key2quality.dk">Key2Quality</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
