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.

2 Kapitel 1<br />

Einleitung 1<br />

1.2 Aufgabenstellung<br />

Ausgehend von einer Untersuchung der Begriffe Anforderung und Spezifikation sowie<br />

einem Vergleich zwischen natŸrlichen und formalen Spezifikationssprachen, soll anhand<br />

eines Spezifikationsbeispiels aus der Literatur (Bibliotheksproblem) illustriert<br />

werden, welche Probleme sich fŸr den Anwendungsspezialisten ergeben, wenn eine<br />

informelle Problembeschreibung in eine formale Anforderungsspezifikation ŸberfŸhrt<br />

wird. Um die konzeptionelle LŸcke, die bei der Verwendung von formalen Spezifikationssprachen<br />

zwischen den Anwendungsspezialisten und den Softwareentwicklern<br />

entsteht, zu ŸberbrŸcken, soll nach einer geeigneten Spezifikationssprache gesucht<br />

werden. Zu diesem Zweck soll abgeklŠrt werden, inwieweit kontrollierte natŸrliche<br />

Sprachen, die vor allem in der Industrie fŸr die bessere VerstŠndlichkeit und Verarbeitbarkeit<br />

von technischen Dokumenten entwickelt worden sind, als Modell fŸr eine<br />

anwendungsspezifische Spezifikationssprache dienen kšnnen. FŸr die Softwareentwicklung<br />

stellt sich dann die Frage, ob eine kontrollierte natŸrliche Sprache definiert<br />

werden kann, die erstens die gleichen Eigenschaften wie eine formale Spezifikationssprache<br />

hat, die zweitens nach computerlinguistischen Gesichtspunkten effizient verarbeitet<br />

werden kann und die drittens fŸr den Anwendungsspezialisten leicht erlernbar<br />

ist. Abschliessend soll die zu entwickelnde Spezifikationssprache am Bibliotheksproblem<br />

erprobt werden, so dass die Ergebnisse der Arbeit ŸberprŸfbar werden. Die<br />

englische Sprache ist als Ausgangspunkt gewŠhlt worden, weil die Problembeschreibung<br />

fŸr das Spezifikationsbeispiel bereits englischsprachig vorliegt und weil die relativ<br />

feste Wort- und Satzgliedstellung des <strong>Englisch</strong>en unsere Zielsetzung unterstŸtzen.<br />

1. Einleitung<br />

Somewhere between ridiculous pedantry and erroneous formulation there presumably<br />

exists a reasonably precise way of specifying a problem in English [Dodd 90:17].<br />

1.3 Resultate<br />

Mit Attempto Controlled English (ACE) wird eine kontrollierte natŸrliche Sprache als<br />

textuelle Sicht auf eine formale Spezifikation in Logik vorgeschlagen. Die Sprache ACE<br />

erlaubt es dem Anwendungsspezialisten, wahre und bedingte Sachverhalte in einer<br />

begriffsnahen Notation direkt und prŠzis zu beschreiben. ACE besteht aus einer wohldefinierten<br />

Teilmenge der englischen Sprache und wirkt deshalb informell und vertraut,<br />

obwohl die Sprache in ihrem Kern formal ist. ACE kann eindeutig in DiskursreprŠsentationstheorie<br />

(d.i. eine strukturierte Form der PrŠdikatenlogik) Ÿbersetzt<br />

werden. Um den nštigen Grad an PrŠzision zu erreichen, verwendet der Anwendungsspezialist<br />

beim Schreiben der Spezifikation einen einfachen abstrakten Satzbauplan<br />

als mnemotechnisches Hilfsmittel und eine Reihe von Konnektoren (d.h. Koordinatoren<br />

und Subordinatoren), mit denen er aus einfachen ACE SŠtzen zusammengesetzte<br />

ACE SŠtze bilden kann. Die Sprache ACE basiert auf einer leicht merkbaren<br />

1.1 Problembeschreibung<br />

Der Werkstoff fŸr die Entwicklung von Softwareprodukten sind Sprachen. In der<br />

Regel werden Sprachen mit ganz unterschiedlichen Eigenschaften dazu verwendet,<br />

Anforderungen zu klŠren, Anforderungen zu spezifizieren und Programme zu schreiben.<br />

Die natŸrliche Sprache bildet den Ausgangspunkt fŸr die Softwareentwicklung.<br />

Sie dient einerseits im gesamten Entwicklungsprozess als Kommunikationsmittel zwischen<br />

den Beteiligten (= Systembenutzern, Anwendungsspezialisten und Softwareentwicklern)<br />

und andererseits als Werkstoff, durch den die wahrgenommenen PhŠnomene<br />

aus einem Anwendungsbereich in den ganz frŸhen Phasen der Entwicklung<br />

ausgedrŸckt, beurteilt und zueinander in Beziehung gesetzt werden. NatŸrliche Sprache<br />

ist ein praktischer Werkstoff, um unsichere Sachverhalte versuchsweise zu skizzieren.<br />

Aufgrund ihrer inhŠrenten Mehrdeutigkeit und Vagheit erweist sich die natŸrliche<br />

Sprache aber als ungeeignet, wenn es darum geht, gesicherte Sachverhalte eindeutig<br />

und prŠzis in einer Anforderungsspezifikation niederzuschreiben. Da das Endprodukt<br />

der Entwicklung immer ein formales Computerprogramm ist, das eine Maschine<br />

mit genau definiertem Verhalten und spezifischen Eigenschaften beschreibt,<br />

sind fŸr den nahtlosen †bergang von der Spezifikation zum Programm bereits fŸr das<br />

Schreiben von <strong>Anforderungsspezifikationen</strong> formale Sprachen vorgeschlagen worden.<br />

Formale Sprachen haben eine eindeutige Syntax, eine prŠzise Semantik und sind<br />

oft zusammen mit einer Beweistheorie definiert. Diese Eigenschaften bilden die<br />

Grundlage fŸr ausfŸhrbare Spezifikationen und fŸr die automatische Verifikation von<br />

Programmen. Formale Sprachen werden von den Softwareentwicklern als Werkstoff<br />

bevorzugt. FŸr die meisten Systembenutzer und Anwendungsspezialisten sind formale<br />

Sprachen jedoch nicht verstŠndlich. Die Lesbarkeit einer Anforderungsspezifikation<br />

ist aber ein ganz entscheidendes Kriterium fŸr die AdŠquatheitsprŸfung (=<br />

Validierung) der einzelnen Anforderungen. Sobald ein Softwareentwickler die informellen<br />

Anforderungen interpretiert und in eine formale Anforderungsspezifikation<br />

ŸberfŸhrt hat, ist das Dokument fŸr die Systembenutzer und Anwendungsspezialisten<br />

normalerweise nicht mehr zugŠnglich. Es ist fŸr diese Beteiligten nicht mehr ŸberprŸfbar,<br />

ob die Anforderungsspezifikation die relevanten Sachverhalte korrekt, ein-<br />

deutig und vollstŠndig beschreibt.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!