{"id":2951,"date":"2021-08-03T15:27:40","date_gmt":"2021-08-03T13:27:40","guid":{"rendered":"https:\/\/www.vollcom-digital.com\/?p=2951"},"modified":"2025-06-11T11:09:41","modified_gmt":"2025-06-11T09:09:41","slug":"wie-funktioniert-behavior-driven-development","status":"publish","type":"post","link":"https:\/\/www.vollcom-digital.com\/de\/blog\/tech-beratung\/tech-implementierung\/wie-funktioniert-behavior-driven-development\/","title":{"rendered":"Wie funktioniert Behavior Driven Development?"},"content":{"rendered":"\n<p><em>Heute ist es nicht mehr notwendig, eine fertige Software wochenlang auf ihre Funktionalit\u00e4t zu testen. Mit der Behavior Driven Development-Technik kann man leicht herausfinden, ob die Anwendung den Anforderungen entspricht. Dabei betrachtet man die Software aus der Perspektive des Benutzers. Dies f\u00f6rdert die Zusammenarbeit zwischen Entwicklern, Qualit\u00e4tsmanagern und dem Kunden.<\/em><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Was ist Behavior Driven Development?  <\/h3>\n\n\n\n<p><span class=\"TextRun SCXW59412657 BCX0\" lang=\"DE-DE\" xml:lang=\"DE-DE\" data-contrast=\"auto\"><span class=\"NormalTextRun SpellingErrorV2 SCXW59412657 BCX0\">Behavior<\/span><span class=\"NormalTextRun SCXW59412657 BCX0\">&nbsp;<\/span><span class=\"NormalTextRun SCXW59412657 BCX0\">Driven<\/span><span class=\"NormalTextRun SCXW59412657 BCX0\">&nbsp;Development (BDD) oder auch&nbsp;<\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW59412657 BCX0\">Specification<\/span><span class=\"NormalTextRun SCXW59412657 BCX0\">&nbsp;<\/span><span class=\"NormalTextRun SCXW59412657 BCX0\">Driven<\/span><span class=\"NormalTextRun SCXW59412657 BCX0\">&nbsp;Development genannt, ist eine Technik der agilen Softwareentwicklung. Ziel ist es, die Zusammenarbeit im Qualit\u00e4tsmanagement und in der <a href=\"https:\/\/www.vollcom-digital.com\/de\/blog\/tech-beratung\/digitale-transformation\/agile-metriken\/\">Gesch\u00e4ftsanalyse<\/a> zu st\u00e4rken.&nbsp;<\/span><\/span><span class=\"EOP SCXW59412657 BCX0\" data-ccp-props=\"{}\">&nbsp;<\/span><\/p>\n\n\n\n<p>Je komplexer die Softwareanwendungen werden, desto mehr Qualit\u00e4ts- und Testmanagement ist erforderlich. Dies erm\u00f6glicht es, Fehler schnell auszumachen. Seit langem bekannt ist die testgetriebene Entwicklung (TDD), bei der Unit-Tests passend zur Software entwickelt werden. Um andere Teammitglieder und Stakeholder in den Entwurfsprozess einzubeziehen, gibt es das Behavior Driven Development. <\/p>\n\n\n\n<p>Dabei werden die gew\u00fcnschten Anforderungen von allen Teammitgliedern definiert. Anschlie\u00dfend kann der Programmierer den Quellcode erstellen. Das bedeutet, dass die Teammitglieder Beschreibungen liefern k\u00f6nnen, die der Programmierer dann umsetzt. Auf diese Weise k\u00f6nnen sich alle aktiv an der Erstellung beteiligen. Somit werden Missverst\u00e4ndnisse schnell erkannt und die Wahrscheinlichkeit ein optimales Endprodukt liefern zu k\u00f6nnen, steigt. Dies kann Missverst\u00e4ndnisse vermeiden und zu einem optimalen Endprodukt f\u00fchren.  <\/p>\n\n\n\n<p>BDD schlie\u00dft somit die L\u00fccke zwischen Entwicklern und dem Rest des Teams, indem es die Zusammenarbeit und das gemeinsame Verst\u00e4ndnis f\u00f6rdert. Au\u00dferdem wird in kleinen und schnellen Iterationen gearbeitet, um das Feedback zu erleichtern. Au\u00dferdem wird eine Systemdokumentation erstellt, die automatisch mit dem Verhalten des Systems abgeglichen werden kann.<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Funktionsweise von Behavior Driven Development <\/h3>\n\n\n\n<p>Das Ziel von BDD ist es, das Verhalten der Software zu zeigen. Dabei sollen alle Bereiche der Softwareentwicklung ber\u00fccksichtigt und Frameworks, Programmiersprachen und Werkzeuge kombiniert werden. Genau dies wird durch BDD erm\u00f6glicht.  <\/p>\n\n\n\n<p>Es gibt verschiedene BDD-Werkzeuge wie Cucumber oder JBehave, die eine Struktur bieten, die einfacher ist als das Erlernen einer Programmiersprache.  <\/p>\n\n\n\n<p><strong>Zwei Merkmale kennzeichnen Behavior Driven Development:<\/strong><\/p>\n\n\n\n<h5 class=\"wp-block-heading\">1. das Verhalten<\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Das erste ist das Verhalten: Der Entwickler definiert die gesch\u00e4ftlichen Anforderungen an ein St\u00fcck Software so, dass andere in der Technologie-Dom\u00e4ne sie verstehen k\u00f6nnen. Dies ist jedoch f\u00fcr Stakeholder und andere Teammitglieder schwer zu verstehen. Damit Testf\u00e4lle, Anforderungen und Probleme verstanden werden k\u00f6nnen, wird die Software beschrieben. Dies hilft den Beteiligten auch, den Gesch\u00e4ftswert zu verstehen und festzustellen, ob die Gesch\u00e4ftsziele erreicht wurden. Es erleichtert auch die Erstellung von Dokumentation, Spezifikationen und APIs.<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\">2. die Sprache<\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Hier geht es um die inhaltlichen Merkmale. Der Entwickler erstellt die Anforderungen, die jedoch f\u00fcr Teammitglieder wie Projektmanager oder Qualit\u00e4tsmanager schwer zu verstehen sind. Bei der BDD-Technologie kann die Sprache Abhilfe schaffen. Die technische Dokumentation von Testf\u00e4llen wird in eine Sprache \u00fcbersetzt, die von anderen Teammitgliedern verstanden werden kann. Damit werden die Anforderungen auch im Detail f\u00fcr alle klar.<\/li>\n<\/ul>\n\n\n\n<p><strong>Hier haben wir eine m\u00f6gliche Struktur zusammengefasst:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Durchf\u00fchrung einer Anforderungsanalyse: Ziele, Aufgaben und Funktionalit\u00e4t der Software sollten in diesem Schritt definiert werden <\/li>\n\n\n\n<li>Beschreiben Sie diese Funktionalit\u00e4ten in allen m\u00f6glichen Situationen, in denen die Software reagieren soll<\/li>\n\n\n\n<li><span class=\"TextRun SCXW158566538 BCX0\" lang=\"DE-DE\" xml:lang=\"DE-DE\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW158566538 BCX0\">Aufzeichnung der erwarteten Reaktionen im &#8220;Angenommen-wenn-dann&#8221;-Schema: &#8220;angenommen&#8221; bedeutet die Software vor dem Test, &#8220;wenn&#8221; w\u00e4hrend des Tests und &#8220;dann&#8221; nach dem Test.<\/span><\/span> <span data-contrast=\"auto\">Solche Werkzeuge gibt es zum Beispiel f\u00fcr die am h\u00e4ufigsten verwendeten Programmiersprachen Java, JavaScript oder auch Python. In einigen Tools wird das Wort &#8220;Angenommen&#8221; durch &#8220;Gegeben sei&#8221; oder \u00e4hnliches ersetzt, je nachdem, welches Tool Sie verwenden.<\/span> <span class=\"EOP SCXW158566538 BCX0\" data-ccp-props=\"{&quot;134233279&quot;:true}\">&nbsp;<\/span><\/li>\n<\/ul>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Behavior Driven Development und Agilit\u00e4t  <\/h3>\n\n\n\n<p>Mit Behavior Driven Development kann die agile Arbeit noch weiter verbessert werden. Bestehende Prozesse k\u00f6nnen optimiert werden, so dass das Team optimaler zusammenarbeiten kann und zuverl\u00e4ssig Softwareprodukte liefert, die den Bed\u00fcrfnissen der Kunden und des Teams entsprechen.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Beispiel 1<\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ein Beispiel ist die Formulierung eines Szenarios in verst\u00e4ndlicher Sprache, die sich an der Software orientiert. Dies ist das oben beschriebene &#8220;Annahme-Wenn-Dann&#8221;-Schema. Jedes Szenario stellt eine Benutzergeschichte dar, die durch die Softwareanwendung erm\u00f6glicht wird. Zum Beispiel die Anmeldung bei einem Kundenkonto.<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\">Beispiel 2<\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Es existiert ein Konto mit Kundendaten (Benutzername, E-Mail-Adresse, Passwort)<\/li>\n\n\n\n<li>Angenommen, der Kunde loggt sich in das Konto ein und gibt seinen Benutzernamen und sein Passwort in das Login-Feld ein, dann sollte sein Login best\u00e4tigt werden, dann wird eine Best\u00e4tigungsseite angezeigt&nbsp;<\/li>\n\n\n\n<li>Wenn das Passwort oder der Benutzername nicht korrekt ist, sollte eine Fehlermeldung angezeigt werden, die auch angibt, was falsch eingegeben wurde<\/li>\n\n\n\n<li>Wenn die Verbindung unterbrochen wird, sollte ebenfalls eine Fehlermeldung angezeigt werden  <\/li>\n<\/ul>\n\n\n\n<p>Diese in verst\u00e4ndliche Sprache verpackten S\u00e4tze werden dann mit Hilfe der BDD-Tools in ausf\u00fchrbaren Code verpackt. Dadurch werden Testf\u00e4lle ermittelt, die sp\u00e4tere automatisierte Tests vereinfachen k\u00f6nnen.<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Vorteile<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Pr\u00e4zisere Anleitung zur Organisation zwischen Entwicklern, Testern und anderen Experten im Team&nbsp;<\/li>\n\n\n\n<li>N\u00e4her an der Alltagssprache&nbsp;<\/li>\n\n\n\n<li>Tools erm\u00f6glichen die automatische Erstellung von technischer Dokumentation f\u00fcr Endbenutzer&nbsp;<\/li>\n<\/ol>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group my-5 container py-5 px-4 px-xl-5 rounded-6 has-orange-background-color has-background is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-bootstrap-blocks-container container mb-0\">\n\t\n\n<h2 class=\"wp-block-heading\"><strong>Brauchen Sie professionelle IT-L\u00f6sungen?<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Holen Sie sich noch heute eine kostenlose Beratung!<\/h3>\n\n\n\n<p>Ob Sie Netzwerkprobleme, Sicherheitsbedenken haben oder Softwareintegrationen ben\u00f6tigen, unser Team von IT-Experten steht Ihnen zur Verf\u00fcgung. Lassen Sie sich nicht von technischen Problemen aufhalten. Rufen Sie uns jetzt f\u00fcr eine kostenlose Ersteinsch\u00e4tzung an oder klicken Sie unten, um unser schnelles Kontaktformular auszuf\u00fcllen. Lassen Sie Technologie f\u00fcr Sie arbeiten.<\/p>\n\n\n<div class=\"wp-bootstrap-blocks-button\">\n\t<a\n\t\thref=\"https:\/\/www.vollcom-digital.com\/de\/kontakt-aufnehmen\/\"\n\t\t\t\t\t\tclass=\"btn btn-lg btn-secondary btn-primary\"\n\t>\n\t\tJetzt Kontakt aufnehmen\t<\/a>\n<\/div>\n\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Heute ist es nicht mehr notwendig, eine fertige Software wochenlang auf ihre Funktionalit\u00e4t zu testen. Mit der Behavior Driven Development-Technik&#8230;<\/p>\n","protected":false},"author":28,"featured_media":2113,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[820],"tags":[834,600],"class_list":["post-2951","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tech-implementierung","tag-behavior-driven-development-de","tag-verhaltensorientierte-entwicklung"],"contentshake_article_id":"","_links":{"self":[{"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/posts\/2951","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/comments?post=2951"}],"version-history":[{"count":3,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/posts\/2951\/revisions"}],"predecessor-version":[{"id":10387,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/posts\/2951\/revisions\/10387"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/media\/2113"}],"wp:attachment":[{"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/media?parent=2951"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/categories?post=2951"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vollcom-digital.com\/de\/wp-json\/wp\/v2\/tags?post=2951"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}