07.10.2013 Aufrufe

Kontrolliertes Englisch für Anforderungsspezifikationen

Kontrolliertes Englisch für Anforderungsspezifikationen

Kontrolliertes Englisch für Anforderungsspezifikationen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

10 Kapitel 2<br />

Anforderungen und SpeziÞkationen 9<br />

Without a well-written requirements specification, developers do not know what to build,<br />

customers do not know what to expect, and there is no way to validate that the system as<br />

built satisfies the requirements [Hsia et al. 93:75].<br />

Die SAS ist nicht bloss eine Zusammenstellung aller Anforderungen an das Softwareprodukt,<br />

sondern auch ein Kommunikationsmedium, das den Softwareentwicklern<br />

die Intentionen der Anwendungsspezialisten zugŠnglich machen sollte. Neben der Beschreibung<br />

des beobachtbaren Verhaltens des zukŸnftigen Softwareproduktes bildet<br />

die SAS den Ausgangspunkt fŸr die Validierung der Anforderungen durch die Anwendungsspezialisten.<br />

Zudem ist es mšglich, aus einer gut geschriebenen SAS TestfŠlle<br />

zu extrahieren oder, falls die SAS in einer formalen Sprache geschrieben ist, die<br />

davon abgeleiteten Systembeschreibungen automatisch zu verifizieren. Im Idealfall<br />

liegt einer formalen SAS ein operationales Modell zugrunde, so dass die Spezifikation<br />

ausgefŸhrt werden kann. Das hat den grossen Vorteil, dass das generierte Verhalten<br />

vom Anwendungsspezialisten in einer sehr frŸhen Phase im Software-Entwicklungsprozess<br />

ŸberprŸft werden kann [vgl. Fuchs 92:323 ff., Gravell & Henderson 96:104 ff.].<br />

Im Gegensatz zu Prototypen beschreiben ausfŸhrbare Spezifikationen die gesamte<br />

FunktionalitŠt des geplanten Softwareproduktes und machen eine klare Trennung<br />

zwischen problem- und implementationsorientierten Aspekten [Fromherz 93:18].<br />

WŠhrend der Anforderungsspezifikation wird ein Dokument erstellt, das das externe<br />

(beobachtbare) Systemverhalten und dessen EinschrŠnkungen prŠzis spezifiziert. Bei<br />

dieser AktivitŠt fokussieren wir auf gesicherte Anforderungen, die diejenigen Bedingungen<br />

oder FŠhigkeiten beschreiben und normieren, die das Softwareprodukt erfŸllen<br />

muss und denen alle Beteiligten zustimmen kšnnen. Wenn natŸrliche Sprache als<br />

Spezifikationssprache verwendet wird, ist es vorteilhaft, die gesicherten Anforderungen<br />

als deklarative SŠtze oder als konditionale SŠtze niederzuschreiben, um sie so<br />

von den modalen Anforderungen zu unterscheiden [vgl. Jackson 95:127]. Anforderungen,<br />

die wahre oder bedingte Sachverhalte beschreiben und im Prinzip durch Beobachtung<br />

oder Experiment falsifiziert werden kšnnen, bezeichnen wir als faktische<br />

Anforderungen.<br />

Die dritte Definition wollen wir nicht weiter untersuchen, da modale Anforderungen<br />

durchaus dokumentiert sein kšnnen und faktische Anforderungen notwendigerweise<br />

dokumentiert sein mŸssen, da sie in die Software-Anforderungsspezifikation eingehen.<br />

Welches sind die QualitŠtsattribute, denen eine gut geschriebene SAS zu genŸgen hat?<br />

Meistens werden die folgenden sechs inhaltlichen Attribute unterschieden [Davis<br />

Gegenstand der nachfolgenden Diskussion bilden ausschliesslich faktische Anforderungen,<br />

die durch Validierung falsifizierbar sind. Wir untersuchen zuerst, welchen<br />

QualitŠtsattributen eine Anforderungsspezifikation idealerweise zu genŸgen hat, und<br />

stellen vor diesem Hintergrund anschliessend die Frage, wo natŸrliche und formale<br />

Spezifikationssprachen ihre StŠrken und SchwŠchen haben.<br />

90:184 ff., Davis et al. 93:141 ff., Davis 94:1050 ff., IEEE Std 830 93:5 ff.]:<br />

¥ korrekt<br />

¥ eindeutig<br />

¥ vollstŠndig<br />

¥ verifizierbar<br />

¥ konsistent<br />

¥ verstŠndlich<br />

korrekt,<br />

wenn jede aufgefŸhrte Anforderung einen funktionalen<br />

Eine SAS ist dann<br />

Aspekt beschreibt, der vom zukŸnftigen Softwareprodukt erfŸllt wird. Es gibt weder<br />

Werkzeuge noch Verfahrensweisen, die Korrektheit zusichern kšnnten. Die Korrekt-<br />

heit einer Anforderung hŠngt vollstŠndig von der intendierten Anwendung ab. Beispielsweise<br />

ist die Anforderung<br />

2.2 Spezifikationen<br />

Sobald ein relativ umfassendes ProblemverstŠndnis erreicht ist und die BedŸrfnisse<br />

der Anwendungsspezialisten geklŠrt sind, mŸssen die faktischen Anforderungen<br />

wŠhrend der Anforderungsspezifikation in einem Dokument durch eine geeignete<br />

Spezifikationssprache beschrieben werden. UnabhŠngig vom verfolgten Software-<br />

Entwicklungsparadigma bildet die Software-Anforderungsspezifikation (SAS) den<br />

Ausgangspunkt fŸr alle spŠteren Phasen im Software-Entwicklungsprozess [vgl.<br />

Fromherz 93:9 ff.]. Die SAS ist ein konzeptionelles Modell des zu entwickelnden Softwareproduktes.<br />

Der Zweck der SAS besteht darin, die notwendige Information vollstŠndig<br />

und widerspruchsfrei zur VerfŸgung zu stellen, um den nachfolgenden Systementwurf<br />

und die Systemimplementation mšglichst erfolgreich durchfŸhren zu<br />

kšnnen. Dabei spielt die QualitŠt der SAS eine entscheidende Rolle fŸr die kosten-<br />

The user searches for the name of the borrower who currently has the copy.<br />

(9)<br />

gŸnstige Entwicklung eines zuverlŠssigen Softwareproduktes.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!