{"id":14,"date":"2011-06-21T12:49:35","date_gmt":"2011-06-21T10:49:35","guid":{"rendered":"https:\/\/sgaul.de\/?p=14"},"modified":"2012-12-02T22:05:56","modified_gmt":"2012-12-02T21:05:56","slug":"anforderungen-systematisch-analysieren","status":"publish","type":"post","link":"https:\/\/sgaul.de\/2011\/06\/21\/anforderungen-systematisch-analysieren\/","title":{"rendered":"Anforderungen systematisch analysieren"},"content":{"rendered":"
Ein wesentlicher Teil der Softwareentwicklung ist die Anforderungsanalyse<\/strong>. Dieses Feld, oft auch gern beim englischen Namen \u201eRequirements Engineering<\/strong>\u201c genannt, wird oft als l\u00e4stig und unn\u00fctz zeitaufwendig empfunden. Auch wenn man es kaum glauben mag, aber eine der h\u00e4ufigsten Ursachen f\u00fcr qualitativ unzureichende Software ist eine unvollst\u00e4ndige Analyse der Anforderungen sowie unzureichende Einbeziehung der Nutzer (vgl. [Chaos-Studie 1995]).<\/p>\n Anforderungen vollst\u00e4ndig und korrekt zu dokumentieren hat aber auch weitere Zwecke:<\/p>\n Betrachten wir \u00fcbliche Anforderungen genauer, gibt es vor allem zwei Kategorien, die auffallen: \u201eDer Administrator soll neue Nutzer hinzuf\u00fcgen k\u00f6nnen.\u201c bezeichnet klar, was das Programm k\u00f6nnen soll. Hier haben wir eine konkrete Forderung, die der Entwickler umsetzen und abhaken kann. Dem gegen\u00fcber stehen weniger klare Forderungen wie \u201eAuch ungeschultes Personal soll die Software effizient einsetzen k\u00f6nnen.\u201c Hier steht der Entwickler vor einem Problem, da sich die Anforderung nicht eindeutig pr\u00fcfen l\u00e4sst. Zur Vereinfachung wird daher oft versucht, messbare Parameter in solche Formulierungen einzubringen: \u201eUngeschultes Personal soll innerhalb von drei Minuten einen neuen Nutzer anlegen k\u00f6nnen.\u201c<\/p>\n Genannte Unterteilung ist auch in der Literatur sehr \u00fcblich und wird oft folgenderma\u00dfen benannt:<\/p>\n Ob Vertragsdetails wie die Entwicklungszeit eine nichtfunktionale Anforderung darstellen ist strittig. Meist werden sie jedoch nicht dazu gez\u00e4hlt.<\/p>\n Wie und in welchem Umfang Anforderungen dokumentiert werden sollten ist unterschiedlich. Um jedoch nichts wichtiges zu vergessen, bietet sich eine vollst\u00e4ndige Liste \u00fcblicher Fakten an, die \u00fcber Produkte erhoben werden k\u00f6nnen.<\/p>\n Eine Empfehlung des Aufbaus eines Dokuments zur Erfassung von Anforderungen gibt der Standard IEEE 830-199<\/strong>:<\/p>\n aus [IEEE 830-199]<\/p>\n<\/blockquote>\n Ist man sich nicht klar, wie man zu den gew\u00fcnschten Ergebnissen kommen kann, ist eine systematische Vorgehensweise empfehlenswert (vgl. [Pfleeger 2001]):<\/p>\n In den benannten Phasen wird im wesentlichen folgendes getan:<\/p>\n Eine erfolgreiche Anforderungsanalyse sollte im wesentlichen drei Eigenschaften erf\u00fcllen (vgl. [Jarke 1995]). W\u00e4hrend und vor allem nach der Fertigstellung der Dokumente, sollte man sich einige Fragen stellen:<\/p>\n Kann man jede dieser Fragen mit einem ehrlichen ja beantworten, sollte einer erfolgreichen Umsetzung nun nichts mehr im Weg stehen.<\/p>\n Ein wesentlicher Teil der Softwareentwicklung ist die Anforderungsanalyse. Dieses Feld, oft auch gern beim englischen Namen \u201eRequirements Engineering\u201c genannt, wird oft als l\u00e4stig und unn\u00fctz zeitaufwendig empfunden. Auch wenn man es kaum glauben mag, aber eine der h\u00e4ufigsten Ursachen f\u00fcr qualitativ unzureichende Software ist eine unvollst\u00e4ndige Analyse der Anforderungen sowie unzureichende Einbeziehung der Nutzer (vgl.… Anforderungen systematisch analysieren<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":58,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[91],"tags":[10,11],"_links":{"self":[{"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/posts\/14"}],"collection":[{"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/comments?post=14"}],"version-history":[{"count":61,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/posts\/14\/revisions"}],"predecessor-version":[{"id":1783,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/posts\/14\/revisions\/1783"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/media\/58"}],"wp:attachment":[{"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/media?parent=14"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/categories?post=14"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sgaul.de\/wp-json\/wp\/v2\/tags?post=14"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}\n
Kategorisierung von Anforderungen<\/h2>\n
\n
Was es zu erfassen gilt<\/h2>\n
\n
Table of Contents<\/h3>\n
\n
\n
\n
Die Vorgehensweise<\/h2>\n
\n\n
\n 1.<\/td>\n Problemanalyse<\/td>\n Anforderungsgewinnung<\/strong> (Requirements Definition)<\/td>\n<\/tr>\n \n 2.<\/td>\n Problembeschreibung<\/td>\n<\/tr>\n \n 3.<\/td>\n Prototyping, Testen<\/td>\n<\/tr>\n \n 4.<\/td>\n Dokumentation, Validierung<\/td>\n Anforderungsspezifikation<\/strong> (Software Requirements Specification, SRS)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n \n
Qualit\u00e4tsanspr\u00fcche<\/h2>\n
\n
Quellen<\/h2>\n
\n