<?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>Qualitätsmetrik Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/qualitaetsmetrik/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/qualitaetsmetrik/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Fri, 20 Oct 2023 13:08:57 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://i0.wp.com/ceosbay.com/wp-content/uploads/2022/11/image.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>Qualitätsmetrik Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/qualitaetsmetrik/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>Regressionstest &#8211; Qualität zählt, Sicherheit garantiert</title>
		<link>https://ceosbay.com/2023/10/20/regressionstest-qualitaet-zaehlt-sicherheit-garantiert/</link>
					<comments>https://ceosbay.com/2023/10/20/regressionstest-qualitaet-zaehlt-sicherheit-garantiert/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Fri, 20 Oct 2023 03:55:00 +0000</pubDate>
				<category><![CDATA[Softwarequalität]]></category>
		<category><![CDATA[Testautomatisierung]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Agile Testing]]></category>
		<category><![CDATA[Anwendungsprüfung]]></category>
		<category><![CDATA[Benutzerzufriedenheit]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Blackbox-Test]]></category>
		<category><![CDATA[Code-Qualität]]></category>
		<category><![CDATA[End-to-End-Test]]></category>
		<category><![CDATA[Entwicklungszyklus]]></category>
		<category><![CDATA[Fehlerbehebung]]></category>
		<category><![CDATA[Fehlererkennung]]></category>
		<category><![CDATA[Fehlerprotokoll]]></category>
		<category><![CDATA[Fehlervermeidung]]></category>
		<category><![CDATA[Funktionalität]]></category>
		<category><![CDATA[Grenzfall]]></category>
		<category><![CDATA[Integrationstest]]></category>
		<category><![CDATA[Integrität]]></category>
		<category><![CDATA[Kontinuierliche Verbesserung]]></category>
		<category><![CDATA[Kritischer Pfad]]></category>
		<category><![CDATA[Lasttest]]></category>
		<category><![CDATA[Nutzererfahrung]]></category>
		<category><![CDATA[Performance Testing]]></category>
		<category><![CDATA[QA-Tools]]></category>
		<category><![CDATA[Qualitätsgewährleistung]]></category>
		<category><![CDATA[Qualitätskontrolle]]></category>
		<category><![CDATA[Qualitätsmetrik]]></category>
		<category><![CDATA[Qualitätssicherung]]></category>
		<category><![CDATA[Qualitätssicherungsprozess]]></category>
		<category><![CDATA[Qualitätssicherungsteam]]></category>
		<category><![CDATA[Qualitätstest]]></category>
		<category><![CDATA[Regressionstest]]></category>
		<category><![CDATA[Rückverfolgbarkeit]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[Sicherheitstest]]></category>
		<category><![CDATA[Skripterstellung]]></category>
		<category><![CDATA[Software-Integrität]]></category>
		<category><![CDATA[Software-Optimierung]]></category>
		<category><![CDATA[Software-Standards]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Softwaretest]]></category>
		<category><![CDATA[Softwarewartung]]></category>
		<category><![CDATA[Stabilität]]></category>
		<category><![CDATA[Systemtest]]></category>
		<category><![CDATA[Testabdeckung]]></category>
		<category><![CDATA[Testautomatisierungsframework]]></category>
		<category><![CDATA[Testbericht]]></category>
		<category><![CDATA[Testdaten]]></category>
		<category><![CDATA[Testergebnis]]></category>
		<category><![CDATA[Testfall]]></category>
		<category><![CDATA[Testlauf]]></category>
		<category><![CDATA[Testplan]]></category>
		<category><![CDATA[Testprozess]]></category>
		<category><![CDATA[Teststrategie]]></category>
		<category><![CDATA[Teststrategie-Dokumentation]]></category>
		<category><![CDATA[Testtools]]></category>
		<category><![CDATA[Testumgebung]]></category>
		<category><![CDATA[Testwerkzeuge]]></category>
		<category><![CDATA[Unit Test]]></category>
		<category><![CDATA[Usability Testing]]></category>
		<category><![CDATA[Whitebox-Test]]></category>
		<category><![CDATA[Zuverlässigkeit]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=2831</guid>

					<description><![CDATA[<p>Wenn sich Softwareentwicklung und Qualitätssicherung treffen, rückt ein Schlüsselbegriff in den Vordergrund: der Regressionstest. Aber was steckt genau dahinter? Welchen Wert bietet er und wie setzt man ihn am effektivsten ein? In diesem Beitrag beleuchte &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/10/20/regressionstest-qualitaet-zaehlt-sicherheit-garantiert/">Regressionstest &#8211; Qualität zählt, Sicherheit garantiert</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Wenn sich Softwareentwicklung und Qualitätssicherung treffen, rückt ein Schlüsselbegriff in den Vordergrund: der Regressionstest. Aber was steckt genau dahinter? Welchen Wert bietet er und wie setzt man ihn am effektivsten ein? In diesem Beitrag beleuchte ich einige Facetten des Regressionstests und liefere praktische Anwendungsbeispiele.</p>



<h3 class="wp-block-heading">Was ist ein Regressionstest?</h3>



<p>Ein Regressionstest prüft eine Software darauf, ob durch Änderungen, wie z.B. Bugfixes oder neue Features, unbeabsichtigte Nebenwirkungen entstanden sind. Das Ziel besteht darin, sicherzustellen, dass die vorgenommenen Änderungen keine bestehenden Funktionen beeinträchtigen.</p>



<h3 class="wp-block-heading">Entstehung des Regressionstests</h3>



<p>Die Notwendigkeit für Regressionstests ergab sich mit der wachsenden Komplexität von Software. Als Programme noch einfach und linear waren, reichte es oft, nur die geänderten Teile zu testen. Doch mit der Zeit und der Zunahme von Abhängigkeiten zwischen Modulen stieg das Risiko, dass Änderungen in einem Modul Auswirkungen auf andere Teile der Software hatten. Hier schaffte der Regressionstest Abhilfe.</p>



<h3 class="wp-block-heading">Best Practices für den Regressionstest</h3>



<ul class="wp-block-list">
<li><strong>Automatisierung</strong>: Automatisierte Tests bieten eine konsistente und schnelle Möglichkeit, Regressionstests durchzuführen. Tools wie <a href="https://ceosbay.com/2022/11/25/selenium/">Selenium</a>, <a href="https://ceosbay.com/2023/03/18/erklaerung-junit/">JUnit</a> oder <a href="https://ceosbay.com/2023/04/24/testng-testautomatisierung/">TestNG</a> erweisen sich hier als besonders wertvoll.</li>



<li><strong>Priorisierung</strong>: Es gilt nicht immer, alles erneut zu testen. Ein fokussierter Ansatz, bei dem kritische Bereiche der Anwendung höhere Priorität erhalten, optimiert den Testprozess.</li>



<li><strong>Regelmäßige Aktualisierung</strong>: Mit jeder neuen Version der Software sollten Testfälle aktualisiert werden, um ihre Relevanz zu gewährleisten.</li>



<li><strong>Feedbackschleifen</strong>: Kurze und regelmäßige Feedbackzyklen stellen sicher, dass Entwickler schnell auf gefundene Probleme reagieren können.</li>
</ul>



<h3 class="wp-block-heading">Anwendungsbeispiele für Regressionstests</h3>



<ul class="wp-block-list">
<li><strong>E-Commerce-Websites</strong>: Bei der Einführung neuer Produkte oder Angebote prüfen Regressionstests, ob die Checkout-Prozesse oder die Produktsuchfunktionen immer noch wie erwartet funktionieren.</li>



<li><strong>Mobile Apps</strong>: Bei Aktualisierungen von mobilen Anwendungen sorgen Regressionstests dafür, dass ältere Funktionen, wie z.B. das Login oder die Navigation, weiterhin fehlerfrei laufen.</li>



<li><strong>Banking-Software</strong>: Bei Sicherheitsupdates oder neuen Features garantieren Regressionstests, dass Kernfunktionen, wie Überweisungen oder Kontoabfragen, unbeeinflusst bleiben.</li>
</ul>



<h3 class="wp-block-heading">Fazit</h3>



<p>Der Regressionstest bleibt ein unverzichtbares Instrument in der Softwarequalitätssicherung. Mit seiner Hilfe garantieren Entwickler, dass auch nach Änderungen die Software stabil und zuverlässig läuft. Durch eine kluge Strategie und den Einsatz passender Tools optimieren Teams den Prozess und liefern letztlich ein besseres Produkt.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/10/20/regressionstest-qualitaet-zaehlt-sicherheit-garantiert/">Regressionstest &#8211; Qualität zählt, Sicherheit garantiert</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/10/20/regressionstest-qualitaet-zaehlt-sicherheit-garantiert/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2831</post-id>	</item>
		<item>
		<title>Zyklomatische Komplexität &#8211; Messen. Verstehen. Optimieren.</title>
		<link>https://ceosbay.com/2023/10/18/zyklomatische-komplexitaet-messen-verstehen-optimieren/</link>
					<comments>https://ceosbay.com/2023/10/18/zyklomatische-komplexitaet-messen-verstehen-optimieren/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Wed, 18 Oct 2023 17:23:00 +0000</pubDate>
				<category><![CDATA[Softwarequalität]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Codeverständlichkeit]]></category>
		<category><![CDATA[Entwicklungsprozess]]></category>
		<category><![CDATA[Funktionsanalyse]]></category>
		<category><![CDATA[Integrationstest]]></category>
		<category><![CDATA[Modultest]]></category>
		<category><![CDATA[Pfadanalyse]]></category>
		<category><![CDATA[Programmkomplexität]]></category>
		<category><![CDATA[Programmstruktur]]></category>
		<category><![CDATA[Qualitätsmetrik]]></category>
		<category><![CDATA[Risikobewertung]]></category>
		<category><![CDATA[Softwareengineering]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Softwarequalitätssicherung]]></category>
		<category><![CDATA[Softwarewartung]]></category>
		<category><![CDATA[Systemdesign]]></category>
		<category><![CDATA[Testautomatisierung]]></category>
		<category><![CDATA[Testfallentwicklung]]></category>
		<category><![CDATA[Teststrategie]]></category>
		<category><![CDATA[Unabhängige Pfade]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=2832</guid>

					<description><![CDATA[<p>Die Welt der Softwareentwicklung ist voller komplexer Konzepte und Algorithmen. Ein solches Konzept, das sowohl für Entwickler als auch für Tester von großer Bedeutung ist, ist die Zyklomatische Zahl. In diesem Blogbeitrag versuche ich einen &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/10/18/zyklomatische-komplexitaet-messen-verstehen-optimieren/">Zyklomatische Komplexität &#8211; Messen. Verstehen. Optimieren.</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Die Welt der Softwareentwicklung ist voller komplexer Konzepte und Algorithmen. Ein solches Konzept, das sowohl für Entwickler als auch für Tester von großer Bedeutung ist, ist die Zyklomatische Zahl. In diesem Blogbeitrag versuche ich einen detaillierten Überblick über die Zyklomatische Komplexität, ihre Geschichte, ihre Anwendung und Beispiele für ihren Einsatz zu bieten. Ich habe das Thema bereits in meinem Beitrag über <a href="https://ceosbay.com/2023/03/17/erklaerung-sonarqube/">SonarQube</a> angeschnitten aber möchte es heute in einem gesonderten Beitrag festhalten.</p>



<h3 class="wp-block-heading">Was ist die Zyklomatische Zahl?</h3>



<p>Die Zyklomatische Zahl, auch als Zyklomatische Komplexität oder McCabe-Metrik bekannt, quantifiziert die Komplexität eines Programms oder einer Funktion basierend auf der Anzahl der linearen, unabhängigen Pfade durch den Code. Einfach ausgedrückt: Es handelt sich um eine Zahl, die angibt, wie viele verschiedene Wege es gibt, einen bestimmten Codeabschnitt auszuführen.</p>



<h3 class="wp-block-heading">Entstehung</h3>



<p>Thomas McCabe entwickelte die Zyklomatische Komplexität 1976. Er suchte nach einer Methode, die Komplexität von Software zu messen, um sowohl den Entwicklungsprozess zu verbessern als auch die Software-Qualität sicherzustellen. McCabes Forschung legte den Grundstein für viele der heutigen Softwaremetriken.</p>



<h3 class="wp-block-heading">Vorgehensweise zur Bestimmung der Zyklomatischen Zahl</h3>



<p><strong>Die Bestimmung erfolgt durch die Formel:</strong></p>



<p>V(G)=E−N+2P</p>



<p>wobei:</p>



<ul class="wp-block-list">
<li><em>V</em> Die zyklomatische Komplexität</li>



<li>G Kontrollflussgraph des Programms oder der Funktion, den man analysiert</li>



<li>E Die Anzahl der Kanten im Kontrollflussgraphen</li>



<li>N Die Anzahl der Knoten</li>



<li>P Die Anzahl der verbundenen Komponenten (normalerweise 1 für einen zusammenhängenden Graphen) sind.</li>
</ul>



<h3 class="wp-block-heading">Anwendungsbeispiele</h3>



<p><strong>Qualitätssicherung</strong><em>:</em> Ein hohes Maß an zyklomatischer Komplexität deutet auf einen Code hin, der schwer zu warten und zu testen ist. Ein niedriger Wert hingegen suggeriert einen einfacheren und wartungsfreundlicheren Code.</p>



<p><strong>Software-Testing:</strong> Die Zyklomatische Zahl gibt an, wie viele Testfälle man mindestens benötigt, um jeden Pfad durch den Code einmal auszuführen. Dies erleichtert die Testplanung.</p>



<h3 class="wp-block-heading">Praktische Beispiele</h3>



<p>Bei der Betrachtung des nachfolgenden einfachen Codeausschnitts:</p>



<pre class="wp-block-code"><code><code>def&nbsp;beispiel_funktion(x):&nbsp;if&nbsp;x &gt;&nbsp;10:&nbsp;return&nbsp;"Groß"&nbsp;else:&nbsp;return&nbsp;"Klein"</code></code></pre>



<p>Man stellt fest, dass die zyklomatische Komplexität dieses Codes 2 beträgt, da es zwei Pfade durch den Code gibt: Einmal, wenn die Bedingung wahr ist, und einmal, wenn sie falsch ist.</p>



<p>Ein komplexerer Code mit Schleifen und mehreren Bedingungen hätte entsprechend eine höhere zyklomatische Komplexität.</p>



<h3 class="wp-block-heading">Zyklomatische Komplexität &#8211; Interaktive Visualisierung</h3>



<p><strong>Über die Anwendung:</strong><br>Wie bereits erklärt, handelt es sich bei der zyklomatischen Komplexität um ein Software-Metriken-Indikator, der die Anzahl der linearen unabhängigen Pfade durch den Quellcode eines Programms misst. Sie dient als ein Maß für die Komplexität eines Programms. Diese interaktive Anwendung visualisiert diese Komplexität durch Knoten (entsprechend den Anweisungen/Blöcken in einem möglichen Code) und Verbindungen zwischen ihnen (entsprechend den Pfaden).</p>



<p><strong>So wird die Anwendung verwendet:</strong></p>



<ol class="wp-block-list">
<li><strong>Knoten hinzufügen/entfernen:</strong><br>Die Schaltflächen &#8222;Knoten hinzufügen&#8220; und &#8222;Letzten Knoten entfernen&#8220;, um Knoten zum Diagramm hinzuzufügen bzw. zu entfernen.</li>



<li><strong>Verbindungen erstellen:</strong><br>Klicken auf einen Knoten, um ihn auszuwählen (er wird markiert). Im Anschluss auf einen anderen Knoten klicken, um eine Verbindung zwischen den beiden Knoten herzustellen.</li>



<li><strong>Knoten bewegen:</strong><br>Knoten ziehen, um seine Position im Diagramm zu verändern.</li>



<li><strong>Zyklomatische Komplexität ablesen:</strong><br>Die zyklomatische Komplexität wird unter dem Diagramm angezeigt. Sie aktualisiert sich automatisch basierend auf der Anzahl der Knoten und Verbindungen in dem Diagramm.</li>
</ol>



<p><strong>Hinweis:</strong><br>Die Visualisierung passt sich automatisch an, je nachdem, wie viele Knoten und Verbindungen man hinzufügt. Man kann mit verschiedenen Strukturen experimentieren, um ein besseres Verständnis für die zyklomatische Komplexität und ihre Bedeutung in der Softwareentwicklung zu erhalten.</p>







<h3 class="wp-block-heading">Fazit</h3>



<p>Die Zyklomatische Zahl bietet einen wertvollen Einblick in die Komplexität von Softwarecode. Sie ermöglicht Entwicklern und Testern, den Code besser zu verstehen, die Qualität zu bewerten und den Testaufwand einzuschätzen. Durch das Verständnis und die Anwendung dieses Konzepts können Softwareteams effizienter arbeiten und höherwertige Produkte liefern.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/10/18/zyklomatische-komplexitaet-messen-verstehen-optimieren/">Zyklomatische Komplexität &#8211; Messen. Verstehen. Optimieren.</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/10/18/zyklomatische-komplexitaet-messen-verstehen-optimieren/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2832</post-id>	</item>
	</channel>
</rss>
