{"id":958,"date":"2017-03-21T08:00:48","date_gmt":"2017-03-21T07:00:48","guid":{"rendered":"https:\/\/formalmind.com\/?p=958\/"},"modified":"2024-05-28T12:57:38","modified_gmt":"2024-05-28T10:57:38","slug":"use-of-system-models","status":"publish","type":"post","link":"https:\/\/www.formalmind.com\/de\/blog\/use-of-system-models\/","title":{"rendered":"18 Dinge, die Sie mit Ihren Systemmodellen tun k\u00f6nnen"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Systemmodelle sind leistungsstarke Werkzeuge, die zur Verbesserung vieler Aspekte des System Engineering beitragen k\u00f6nnen, von der R\u00fcckverfolgbarkeit und dem \u00c4nderungsmanagement bis hin zur Generierung von Testf\u00e4llen. Aber es gibt auch eine dunkle Seite: Modellierung kann zum Selbstzweck werden, ohne klare Zieldefinition f\u00fcr das Modell. Chaotische, schwer lesbare Modelle k\u00f6nnen mehr Probleme verursachen, als sie l\u00f6sen. Ein Problem aus dem Software Engineering namens \u201cCodef\u00e4ule\u201d gilt auch f\u00fcr Modelle. Modelle m\u00fcssen, wie Softwarecode, Konventionen folgen und regelm\u00e4\u00dfig \u00fcberarbeitet werden.<a rel=\"noreferrer noopener\" href=\"https:\/\/web.archive.org\/web\/20170808183821\/https:\/\/reqif.academy\/reqif-training\/\" target=\"_blank\"><\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aber genug der Probleme: Modelle k\u00f6nnen f\u00fcr sehr viele n\u00fctzliche T\u00e4tigkeiten eingesetzt werden und die Effizienz steigern. Hier ist unsere \u2013 voraussichtlich unvollst\u00e4ndige \u2013 Liste. Was l\u00e4sst sich noch mit Systemmodellen machen? Haben Sie weitere Ideen? Teilen Sie uns diese gerne im Kommentarbereich mit.<a href=\"https:\/\/web.archive.org\/web\/20170808183821\/http:\/\/formalmind.com\/blog\/use-of-system-models\/#disqus_thread\">Kommentare<\/a>).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Kommunikation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Eine grafische Ansicht des Modells im Besonderen kann ein wirkungsvolles Werkzeug zur Kommunikation sein. Es ist wichtig, klar zu definieren, ob es sich um \u201cnur eine Zeichnung\u201d oder eine \u201cAnsicht eines Modells\u201d handelt.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Dokumentengenerierung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die Dokumentenerstellung geht Hand in Hand mit der Kommunikation: Es ist nicht\n ungew\u00f6hnlich, dass nur eine kleine Gruppe von Personen Modelle erstellt, w\u00e4hrend die meisten \n(80%-90%) Nutzer Modelle nutzen, oft indem sie die generierten Dokumente lesen. \nDie Dokumentenerstellung erm\u00f6glicht zudem die schrittweise Einf\u00fchrung von MBSE.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Ein generiertes Dokument oder ein ausgedrucktes Diagramm ist oft der erste Kontaktpunkt mit dem Modell<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">3.Erstellen von Ansichten<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Das Erstellen einer Ansicht des Modells ist lediglich ein zus\u00e4tzlicher Schritt gegen\u00fcber dem vorherigen Punkt: Im Gegensatz zu Dokumenten k\u00f6nnen Ansichten jedoch interaktiv sein oder Informationen aus dem Modell aggregieren.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Generieren von Testf\u00e4llen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ein gut strukturiertes Modell erleichtert die Ableitung von Testf\u00e4llen enorm. So impliziert jede Vorbedingung oder Invariante eine oder mehrere Testf\u00e4lle. Abh\u00e4ngig von der Formalit\u00e4t des Modells k\u00f6nnen Testf\u00e4lle sogar automatisch generiert werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Code generieren<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Besonders bei der Entwicklung von eingebetteten Systemen werden h\u00e4ufig Modelle f\u00fcr die Code-Generierung eingesetzt. Die gr\u00f6\u00dfte Herausforderung besteht darin, den generierten Code sauber in das Gesamtsystem einzubetten. Es ist fast nie praktikabel, das System komplett zu generieren.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. Fortschritt verfolgen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Das Coole an Systemmodellen ist, dass man eine formale Definition von Fortschritt geben kann. Zum Beispiel: \u201cAlle Anforderungen haben den Status \u2018genehmigt\u2019.\u201d Fortschritt kann jederzeit abgefragt und weiterverarbeitet werden, zum Beispiel durch das Projektmanagement.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">7. Vollst\u00e4ndigkeit pr\u00fcfen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c4hnlich wie bei der Nachverfolgung von Prozessen kann auch die Vollst\u00e4ndigkeit \u00fcberpr\u00fcft werden. Dies erfordert eine angemessene Definition von Vollst\u00e4ndigkeit und ein korrekt gepflegtes Modell.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">8. Aggregierte Informationen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Neben Fortschritt und Vollst\u00e4ndigkeit k\u00f6nnen beliebige Informationen jederzeit aggregiert und ansprechend pr\u00e4sentiert werden, von der Anzahl der Modellelemente bis zur Testabdeckung. Aber Vorsicht, operative Zahlen k\u00f6nnen in den falschen H\u00e4nden gro\u00dfen Schaden anrichten.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">9. Automatische \u00dcberpr\u00fcfung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Mit einem angemessen formalen Systemmodell ist es sogar m\u00f6glich, die manuelle \u00dcberpr\u00fcfung ganz zu \u00fcberspringen, da Werkzeuge diese automatisch durchf\u00fchren k\u00f6nnen. Ein Beispiel w\u00e4re die \u00dcberpr\u00fcfung, ob ein Zustandsautomat jemals eine Invariante verletzt.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Wenn sie richtig eingesetzt werden, k\u00f6nnen Modelle die Effektivit\u00e4t von V&amp;V-Aktivit\u00e4ten erheblich steigern.<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">10. Auswirkungen von \u00c4nderungen nachvollziehen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Da die Granularit\u00e4t der Modelle im Vergleich zur Arbeit mit Dokumenten viel feiner ist, k\u00f6nnen die Auswirkungen von \u00c4nderungen schnell analysiert werden. Beachten Sie, dass dies eine saubere und aktuelle R\u00fcckverfolgbarkeit sowie eine angemessene Werkzeugunterst\u00fctzung erfordert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">11. Risiko einsch\u00e4tzen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die Risikobewertung ist nur eine von vielen Analysen, die mit einem ordnungsgem\u00e4\u00df strukturierten und gepflegten Modell durchgef\u00fchrt werden k\u00f6nnen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">12. Konflikte erkennen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ein triviales Beispiel: Ein System, das 12V Strom ben\u00f6tigt, kann nicht ohne Transformator an 240V angeschlossen werden. Ein Modell macht dies offensichtlich, da man die Schnittstellen einfach nicht verbinden kann.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">13. Inkonsistenzen identifizieren<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Stellen Sie sich eine Spezifikation von 200 Seiten vor: Auf Seite 12 hei\u00dft es, dass das Geh\u00e4use gr\u00fcn sein soll, auf Seite 158 wird gefordert, dass das Geh\u00e4use blau sein soll. Wie wahrscheinlich ist es, dass Sie diesen Widerspruch bemerken? In einem guten Modell w\u00e4re die Farbe eine Eigenschaft des Geh\u00e4uses und w\u00fcrde genau einmal angegeben werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">14. Modell animieren (Simulation)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Statische Aspekte des Systems sind selten das Problem: Die meisten Herausforderungen sind auf dynamische Aspekte zur\u00fcckzuf\u00fchren. Einige Modelle erm\u00f6glichen die Analyse dynamischer Aspekte mittels Simulation. Das kann unbezahlbar sein!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">15. Das Modell als Spezifikation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Fast trivial: Das Modell kann als Spezifikation verwendet werden. \u00dcbrigens ist dies die dritte Stufe des&nbsp; <a href=\"https:\/\/web.archive.org\/web\/20170808183821\/http:\/\/formalmind.com\/blog\/uml-requirements-modeling\/\">SYSMOD<\/a> Intensit\u00e4tsmodelle.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Wenn das Modell zur Spezifikation wird, haben wir endlich \u201cechtes\u201d MBSE<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">16. Strukturmodell<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Dokumente sind in Kapitel gegliedert. Aber saubere Grenzen zwischen den verschiedenen Untersystemen gibt es selten, und diszipliniertes Arbeiten ist notwendig. Mit einer guten Modellstruktur lassen sich auch gro\u00dfe Systeme in sauber isolierte Untersysteme zerlegen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">17. Wissen verwalten<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wissensmanagement kann viele Formen annehmen, aber ein spezifisches Beispiel ist Dom\u00e4nenwissen, das sich in einem sauberen Dom\u00e4nenmodell manifestieren kann. Dieses liefert einen klaren, pr\u00e4zisen Wortschatz, der sonst nur schwer zu realisieren ist.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">18. Wiederverwendung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Modelle erlauben eine Wiederverwendbarkeit in einem Ausma\u00df, das sonst schwer zu erreichen ist. Unterstrukturen, die sauber definiert und isoliert sind, k\u00f6nnen wiederverwendet werden.<\/p>","protected":false},"excerpt":{"rendered":"<p>Hier finden Sie eine Liste von 18 Anwendungen von Systemmodellen. Diese k\u00f6nnen als Grundlage f\u00fcr spezifische MBSE-Anwendungsf\u00e4lle dienen.<\/p>","protected":false},"author":1,"featured_media":1043,"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],"class_list":["post-958","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-modeling"],"_links":{"self":[{"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/posts\/958","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=958"}],"version-history":[{"count":0,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/posts\/958\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/media\/1043"}],"wp:attachment":[{"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/media?parent=958"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/categories?post=958"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.formalmind.com\/de\/wp-json\/wp\/v2\/tags?post=958"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}