{"id":1037,"date":"2016-06-29T08:00:54","date_gmt":"2016-06-29T06:00:54","guid":{"rendered":"https:\/\/formalmind.com\/?p=1003\/"},"modified":"2022-04-11T18:58:54","modified_gmt":"2022-04-11T16:58:54","slug":"how-to-model-a-specification","status":"publish","type":"post","link":"https:\/\/www.formalmind.com\/de\/blog\/how-to-model-a-specification\/","title":{"rendered":"Wie man eine Spezifikation modelliert"},"content":{"rendered":"<p class=\"wp-block-paragraph\">In den letzten beiden Artikeln dieser Reihe haben wir gelernt, was Requirements Engineering \u00fcberhaupt ist und warum es (richtig gemacht) Sinn macht. Wir haben auch gelernt, dass am Modellieren nichts Magisches ist, im Gegenteil: M\u00f6glicherweise betreiben Sie bereits Requirements Engineering, ohne es \u00fcberhaupt zu wissen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Die Spezifikation modellieren<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In diesem Artikel betrachten wir einen Anforderungsmodellierungsansatz, der seit Jahrzehnten erfolgreich angewendet wird: die Struktur des Anforderungsdokuments. Oder, wie letztes Mal eingef\u00fchrt, die <a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/formalmind.com\/blog\/what-is-a-requirements-model\/#level_of_modeling\">Spezifikationsstufe<\/a>.Zur Erinnerung: Damit bezeichnen wir die Spezifikation als Ganzes. Oder im Kontext von textlichen Anforderungen w\u00e4re dies das Anforderungsdokument.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wir m\u00fcssen das Rad nicht neu erfinden: Im letzten Artikel haben wir bereits ISO\/IEC\/IEEE 29148 (kurz ISO 29148) erw\u00e4hnt, die unter anderem einige Dokumentvorlagen enth\u00e4lt. In dieser Serie (und auch in unserem Blog) werden wir noch eine ganze Menge \u00fcber diesen Standard sprechen. Nicht, weil er das Gr\u00f6\u00dfte ist, was je erfunden wurde, sondern weil er ein internationaler Standard ist, der eine gemeinsame Basis schafft. Andere Goodies im Standard sind einfache Textvorlagen, empfohlene Attribute und Aktivit\u00e4ten sowie Aufgaben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unterschiedliche Strukturen f\u00fcr unterschiedliche Ziele<\/h2>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignright\"><a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/formalmind.com\/wp-content\/uploads\/2016\/06\/SySR-structure.png\"><img data-src=\"https:\/\/web.archive.org\/web\/20160704211240im_\/http:\/\/formalmind.com\/wp-content\/uploads\/2016\/06\/SySR-structure-238x300.png\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"SySR-structure\" class=\"wp-image-755 lazyload\"\/><noscript><img decoding=\"async\" src=\"https:\/\/web.archive.org\/web\/20160704211240im_\/http:\/\/formalmind.com\/wp-content\/uploads\/2016\/06\/SySR-structure-238x300.png\" alt=\"SySR-structure\" class=\"wp-image-755\"><\/noscript><\/a><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Die korrekte Struktur der Anforderungen h\u00e4ngt vom Zweck der Spezifikation ab. ISO 29148 unterscheidet beispielsweise zwischen Spezifikationsdokumenten f\u00fcr Stakeholderanforderungen (StSR), Systemanforderungen (SySR) oder Softwareanforderungen (SRS). Die folgende Abbildung zeigt die Gliederung f\u00fcr ein SySR.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Wir planen, in naher Zukunft Vorlagen f\u00fcr Anforderungsspezifikationen im ReqIF-Format bereitzustellen. Diese k\u00f6nnen mit unserem kostenlosen Tool verwendet werden, <a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/formalmind.com\/tools\/studio\/\">formalmind Studio<\/a>, oder jedes andere ReqIF-f\u00e4hige Werkzeug Ihrer Wahl. <a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/formalmind.com\/blog\/newsletter\/\">Melden Sie sich f\u00fcr unseren Newsletter an<\/a>, wo wir es ank\u00fcndigen werden, sobald es verf\u00fcgbar ist.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">ISO 29148 SySR Struktur<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die Bedeutung der verschiedenen Abschnitte ist selbsterkl\u00e4rend. ISO 29148 liefert jedoch detaillierte Erkl\u00e4rungen zu jedem Abschnitt. Die Verwendung einer standardisierten Vorlage wie dieser hat zwei Hauptvorteile:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Sobald Sie die Struktur verstanden haben, werden Sie in der Lage sein, andere Spezifikationen, die nach ISO 29148 geschrieben sind, schnell zu erfassen. Sie werden die gesuchten Informationen schnell finden.<\/li><li>Indem Sie jeden Abschnitt betrachten, werden Sie gezwungen, alle relevanten Aspekte Ihres Systems zu durchdenken, und es ist weniger wahrscheinlich, dass Sie einen entscheidenden Aspekt vergessen.<\/li><\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Dokumentenzentrierte Vorlage<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die ISO 29148-Vorlage ist eindeutig f\u00fcr die Erstellung eines Dokuments konzipiert.\nDas ist sinnvoll, da die meisten Spezifikationen heute in Word oder Excel\nverfasst werden \u2013 im Guten wie im Schlechten. Wenn Word das zu verwendende\nWerkzeug ist, dann empfehle ich, sich mit dem <a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/member.lastenhefterstellen.de\/lastenheft-template\/\" target=\"_blank\" rel=\"noreferrer noopener\">Vorlage von lastenhefteerstellen.de<\/a> (Deutsch, Anmeldung erforderlich).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die ISO 29148-Vorlage kann auch mit einem Anforderungsmodellierungswerkzeug wie formalmind Studio oder Rational DOORS verwendet werden. Dies sind Werkzeuge, die immer noch prim\u00e4r textbasiert arbeiten, aber eine Strukturierung mit Hierarchien, Attributen und R\u00fcckverfolgbarkeiten erm\u00f6glichen. Die Verwendung der Vorlage \u201cwie besehen\u201d funktioniert, aber eine Anpassung an die F\u00e4higkeiten des Werkzeugs kann das Ergebnis verbessern. Beispielsweise trennt die Vorlage funktionale, Benutzerfreundlichkeits- und Leistungsanforderungen in separate Kapitel. Aus einer dokumentenzentrierten Sichtweise ergibt dies Sinn. Sobald wir jedoch \u00fcber Modellierungsf\u00e4higkeiten verf\u00fcgen, gibt es bessere M\u00f6glichkeiten, dies zu tun. Beispielsweise k\u00f6nnte ein Aufz\u00e4hlung-Attribut f\u00fcr \u201cAnforderungstyp\u201d eingef\u00fchrt werden, mit den Aufz\u00e4hlungswerten funktional, Benutzerfreundlichkeit und Leistung. Dieser Ansatz w\u00fcrde es erm\u00f6glichen, Anforderungen nach Kontext zu gruppieren, was die Spezifikation leichter lesbar macht.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Spezifikationsstrukturen f\u00fcr Modelle<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Diese Art von \u00fcbergeordneter Struktur ist nicht auf Textdokumente beschr\u00e4nkt. F\u00fcr diejenigen, die mit UML- oder SysML-Modellen arbeiten, gilt <a href=\"https:\/\/web.archive.org\/web\/20160704211240\/https:\/\/leanpub.com\/sysmod\" target=\"_blank\" rel=\"noreferrer noopener\">SYSMOD-Buch<\/a> von Tim Weilkiens (<a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/se-trends.de\/sysmod-methode\/\" target=\"_blank\" rel=\"noreferrer noopener\">Rezension<\/a>) liefert eine Empfehlung f\u00fcr eine Paket-Hierarchie (siehe Abbildung).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/web.archive.org\/web\/20160704211240\/http:\/\/formalmind.com\/wp-content\/uploads\/2016\/06\/model-structure.png\"><\/a>Aber was ist drin?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Gleichg\u00fcltig ob im Textverarbeitungsprogramm, einem Requirements Management Tool\noder in einer Modellierungsumgebung: Die bereitgestellten Strukturen m\u00fcssen immer noch mit Inhalten gef\u00fcllt werden. Und diese Inhalte m\u00fcssen ebenfalls modelliert werden. Dies werden wir im n\u00e4chsten Artikel betrachten.<\/p>","protected":false},"excerpt":{"rendered":"<p>In den beiden letzten Artikeln dieser Reihe haben wir zun\u00e4chst gelernt, was Requirements Modeling \u00fcberhaupt ist und warum es eine gute Idee ist (wenn es richtig gemacht wird). Wir haben auch gelernt, dass an Modeling nichts Magisches ist, im Gegenteil: Sie betreiben vielleicht bereits Requirements Modeling, ohne es \u00fcberhaupt zu wissen. Modeling\u2026<\/p>","protected":false},"author":1,"featured_media":991,"comment_status":"open","ping_status":"open","sticky":false,"template":"single-no-separators","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[13],"tags":[33,50,55,56,52],"class_list":["post-1037","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-modeling","tag-requirements-modeling","tag-series","tag-specifications","tag-sysmod"],"_links":{"self":[{"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/posts\/1037","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/comments?post=1037"}],"version-history":[{"count":0,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/posts\/1037\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/media?parent=1037"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/categories?post=1037"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/tags?post=1037"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}