Requirements Engineering ist die Achillesferse des gesamten Prozesses der Softwareentwicklung. Es erfordert Interaktion vieler Beteiligten und beinhaltet nicht nur technische, sondern auch soziologische und psychologische Aktivitäten. Auch wenn alle Beteiligte zu einem Konsens kommen, ist das resultierende Anforderungsdokument meist informell. In den frühen Projektphasen ist die Funktionalität der zu erstellenden Software noch nicht genau genug verstanden. Das macht den Prozess der Formalisierung der Anforderungen zu einem Lernprozess. Wie die Studie von Mich et al. [MFN04] zeigt, wird die überwiegende Menge der Anforderungen in natürlicher Sprache geschrieben. In der Praxis sind solche Dokumente meistens vage und enthalten viele Inkonsistenzen. Missverständnisse und Fehler aus der Requirements Engineering-Phase wirken sich in späteren Projektphasen aus und können potentiell zum Misserfolg des gesamten Projekts führen. Um Missverständnisse in den Griff zu bekommen und den Schritt von informellen Anforderungen zu einem formalen Modell zu unterstützen, wird in dieser Dissertation ein neuer Ansatz zur Extraktion der domänenspezifischen Ontologie aus Anforderungsdokumenten vorgeschlagen. Eine Ontologie besteht aus einer Menge von Termen und Relationen zwischen diesen Termen. Sie gibt, verglichen mit einem Glossar, präzisere Begriffsdefinitionen und lässt weniger Interpretationsspielraum. Nach der Extraktion muss die Ontologie auch validiert werden. Die validierte Ontologie wird zu der gemeinsamen Sprache für alle Projektbeteiligte. Diese Dissertation macht zwei wichtige Beiträge zur Extraktion der Ontologie aus Anforderungsdokumenten: • Sie implementiert eine halbautomatische Methode, die eine Ontologie aus einem Anforderungsdokument extrahiert und diese Anschließend validiert. • Sie zeigt, wie der traditionelle Prozess der Anforderungsanalyse modifiziert werden soll, um die Ontologieextraktion in den Prozess zu integriereren. Das vorgeschlagene Verfahren zur Ontologieextraktion wurde an drei Fallstudien evaluiert.
«
Requirements Engineering ist die Achillesferse des gesamten Prozesses der Softwareentwicklung. Es erfordert Interaktion vieler Beteiligten und beinhaltet nicht nur technische, sondern auch soziologische und psychologische Aktivitäten. Auch wenn alle Beteiligte zu einem Konsens kommen, ist das resultierende Anforderungsdokument meist informell. In den frühen Projektphasen ist die Funktionalität der zu erstellenden Software noch nicht genau genug verstanden. Das macht den Prozess der Formalisierun...
»