Concepts to capture Relations between Project Documents using Ontologies

It is difficult to reveal erroneous assumptions in software projects due to mostly only implicit relations between project documents. Errors that result from these assumptions are expensive to fix in later project phases. Capturing relations between project documents helps to verify documents and detects potential erroneous assumptions early in a project, hence can avoid errors early that might be expensive to fix later. This thesis contributes an approach that uses the mechanisms of ontologies to verify project documents against requirements expressed in a controlled language. Natural language, a major component in mostly early phase documentation of software projects, is a source of ambiguity in requirements and project documents and can lead to misunderstandings. This thesis proposes a controlled natural language (CNL), based on a grammar definition, with a restricted vocabulary and sentence structure to formulate requirements with reduced ambiguity. In order to relate project documents, a generic format is required to compare the documents’ contents. This thesis describes an approach to transform the knowledge in project documents into an ontology. The ontology is built using semantically annotated productions in a CNL for requirements. Different types of semantic annotations are proposed and the semantic conflicts that can arise between them are discussed. Furthermore, a semantic meta-grammar is presented that allows the definition of grammars whose languages contain semantically annotated sentences. The concepts presented in this thesis are prototypically implemented in a tool which enables the user to write unambiguous requirements that are translated into ontology axioms. These axioms are used to capture relations between project documents that the user can import into the tool.

[1]  Stefania Gnesi,et al.  The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool , 2001, Proceedings 26th Annual NASA Goddard Software Engineering Workshop.

[2]  Vincenzo Gervasi,et al.  On the Systematic Analysis of Natural Language Requirements with CIRCE , 2006, Automated Software Engineering.

[3]  Jörg Holtmann,et al.  Automatic Validation and Correction of Formalized, Textual Requirements , 2011, 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops.

[4]  Rolf Schwitter,et al.  Controlled Natural Language meets the SemanticWeb , 2004, ALTA.

[5]  T. Mitamura Controlled language for multilingual machine translation , 1999, MTSUMMIT.

[6]  James A. Hendler,et al.  The Semantic Web" in Scientific American , 2001 .

[7]  Hinrich Schütze,et al.  Introduction to information retrieval , 2008 .

[8]  John Cocke,et al.  Programming languages and their compilers , 1969 .

[9]  Adam Kolawa,et al.  Automated Defect Prevention , 2007 .

[10]  Petr Kroha,et al.  Ontologies in Checking for Inconsistency of Requirements Specification , 2009, 2009 Third International Conference on Advances in Semantic Processing.

[11]  Ian Sommerville,et al.  Requirements Engineering: Processes and Techniques , 1998 .

[12]  Erik Kamsties,et al.  Surfacing ambiguity in natural language requirements , 2001 .

[13]  Constance L. Heitmeyer,et al.  Automated consistency checking of requirements specifications , 1996, TSEM.

[14]  Bijan Parsia,et al.  Explaining Inconsistencies in OWL Ontologies , 2009, SUM.

[15]  Haruhiko Kaiya,et al.  Ontology based requirements analysis: lightweight semantic processing approach , 2005, Fifth International Conference on Quality Software (QSIC'05).

[16]  Richard Stevens,et al.  Writing Better Requirements , 2002 .

[17]  Luisa Mich,et al.  Market research for requirements analysis using linguistic tools , 2004, Requirements Engineering.

[18]  Didar Zowghi,et al.  Reasoning about inconsistencies in natural language requirements , 2005, TSEM.

[19]  Jochen Ludewig,et al.  Software-Prüfung - eine Anleitung zum Test und zur Inspektion (3. Aufl.) , 1997 .

[20]  Kaarel Kaljurand,et al.  Attempto Controlled English for Knowledge Representation , 2008, Reasoning Web.

[21]  Leo Obrst,et al.  The Semantic Web: A Guide to the Future of XML, Web Services and Knowledge Management , 2003 .

[22]  G. Harry McLaughlin,et al.  SMOG Grading - A New Readability Formula. , 1969 .

[23]  Boris Motik,et al.  Hypertableau Reasoning for Description Logics , 2009, J. Artif. Intell. Res..

[24]  John Domingue,et al.  A Core Ontology for Business Process Analysis , 2008, ESWC.

[25]  R. Reiter On Closed World Data Bases , 1987, Logic and Data Bases.

[26]  Dan Klein,et al.  Feature-Rich Part-of-Speech Tagging with a Cyclic Dependency Network , 2003, NAACL.

[27]  Gerrit Muller,et al.  Lecture Requirements Engineering , 2010 .

[28]  Ian Horrocks,et al.  Practical Reasoning for Very Expressive Description Logics , 2000, Log. J. IGPL.

[29]  Tor Stålhane,et al.  Ontology-guided requirements and safety analysis , 2010 .

[30]  Luisa Mich,et al.  Requirements for tools for ambiguity identification and measurement in natural language requirements specifications , 2008, Requirements Engineering.

[31]  Sean Bechhofer,et al.  The OWL API: A Java API for OWL ontologies , 2011, Semantic Web.

[32]  Tao Gu,et al.  Ontology based context modeling and reasoning using OWL , 2004, IEEE Annual Conference on Pervasive Computing and Communications Workshops, 2004. Proceedings of the Second.

[33]  Thomas Moser,et al.  DODT: Increasing requirements formalism using domain ontologies for improved embedded systems development , 2011, 14th IEEE International Symposium on Design and Diagnostics of Electronic Circuits and Systems.

[34]  Francis Chantree,et al.  Identifying Nocuous Ambiguities in Natural Language Requirements , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[35]  A Straw,et al.  Guide to the Software Engineering Body of Knowledge , 1998 .

[36]  Heiko Paulheim Skalierbarkeit von Ontology-Matching-Verfahren , 2008 .

[37]  Kuhn Tobias,et al.  Controlled English for knowledge representation , 2010 .

[38]  Patrik Sternudd,et al.  Unambiguous Requirements in Functional Safety and ISO 26262: Dream or Reality? , 2011 .

[39]  Mark Aronoff,et al.  The Handbook of Linguistics , 2001 .

[40]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[41]  Raymond Reiter On Closed World Data Bases , 1977, Logic and Data Bases.

[42]  Christopher D. Manning,et al.  Enriching the Knowledge Sources Used in a Maximum Entropy Part-of-Speech Tagger , 2000, EMNLP.

[43]  Diego Calvanese,et al.  The Description Logic Handbook: Theory, Implementation, and Applications , 2003, Description Logic Handbook.

[44]  Thomas Kühne,et al.  Matters of (Meta-) Modeling , 2006, Software & Systems Modeling.

[45]  Constance L. Heitmeyer,et al.  On the Need for Practical Formal Methods , 1998, FTRTFT.

[46]  Patrick Delfmann,et al.  Eine Methode zur formalen Spezifikation und Umsetzung von Bezeichnungskonventionen für fachkonzeptionelle Informationsmodelle , 2008, MobIS.

[47]  Norbert E. Fuchs,et al.  Attempto Controlled English - Not Just Another Logic Specification Language , 1998, LOPSTR.

[48]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[49]  Jonathan P. Bowen,et al.  Ten Commandments of Formal Methods ...Ten Years Later , 2006, Computer.

[50]  Norbert Blum,et al.  Greibach Normal Form Transformation Revisited , 1999, Inf. Comput..

[51]  Alaa A. Kharbouch,et al.  Three models for the description of language , 1956, IRE Trans. Inf. Theory.

[52]  Kurt Schneider,et al.  Learning to Write Better Requirements through Heuristic Critiques , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[53]  Michael Kifer,et al.  Logical foundations of object-oriented and frame-based languages , 1995, JACM.

[54]  Adam Kolawa,et al.  Automated Defect Prevention , 2007 .

[55]  Robert Meersman,et al.  Ontology Engineering - The DOGMA Approach , 2008, Advances in Web Semantics I.

[56]  Barry W. Boehm,et al.  Software Defect Reduction Top 10 List , 2001, Computer.

[57]  Bijan Parsia,et al.  Pellet: An OWL DL Reasoner , 2004, Description Logics.

[58]  R. J. Rubey,et al.  Cost effectiveness of software quality assurance , 1989, Proceedings of the IEEE National Aerospace and Electronics Conference.

[59]  Saeki Motoshi,et al.  Using Domain Ontology as Domain Knowledge for Requirements Elicitation , 2006 .

[60]  Erik Kamsties,et al.  Taming Ambiguity in Natural Language Requirements , 2005 .

[61]  S. Thompson,et al.  Transitivity in Grammar and Discourse , 1980 .

[62]  Rolf Schwitter,et al.  English as a formal specification language , 2002, Proceedings. 13th International Workshop on Database and Expert Systems Applications.

[63]  Erik Kamsties,et al.  From Contract Drafting to Software Specification: Linguistic Sources of Ambiguity , 2003 .

[64]  R. Flesch A new readability yardstick. , 1948, The Journal of applied psychology.

[65]  H.M. Al Fawareh,et al.  Ambiguity in text mining , 2008, 2008 International Conference on Computer and Communication Engineering.

[66]  Jonathan P. Bowen,et al.  Ten Commandments of Formal Methods , 1995, Computer.

[67]  Thomas Moser,et al.  Ontology-Driven Guidance for Requirements Elicitation , 2011, ESWC.

[68]  Barry W. Boehm Understanding and Controlling Software Costs , 1988 .

[69]  Jeremy Dick,et al.  Requirements Engineering , 2002, Springer International Publishing.

[70]  Gabor Karsai,et al.  Composing Domain-Specific Design Environments , 2001, Computer.

[71]  William H. DuBay The Principles of Readability. , 2004 .

[72]  Thomas R. Gruber,et al.  A translation approach to portable ontology specifications , 1993 .

[73]  Barry Boehm,et al.  Top 10 list [software development] , 2001 .

[74]  Boris Motik,et al.  OWL 2: The next step for OWL , 2008, J. Web Semant..

[75]  Sven J. Körner,et al.  Natural Language Specification Improvement with Ontologies , 2009, Int. J. Semantic Comput..

[76]  Volker Haarslev,et al.  RACER System Description , 2001, IJCAR.

[77]  Gabor Karsai,et al.  Smart Dust: communicating with a cubic-millimeter computer , 2001 .

[78]  Klaus Pohl Requirements Engineering - Grundlagen, Prinzipien, Techniken (2. Aufl.) , 2008 .

[79]  R. P. Fishburne,et al.  Derivation of New Readability Formulas (Automated Readability Index, Fog Count and Flesch Reading Ease Formula) for Navy Enlisted Personnel , 1975 .

[80]  D. Wild,et al.  A compositional approach for functional requirement specifications of automotive software systems , 2006 .

[81]  Ronnie Cann,et al.  Formal Semantics: INTENSIONAL SEMANTICS , 1993 .

[82]  Thomas Andreas Meyer,et al.  Sydney OWL Syntax - towards a Controlled Natural Language Syntax for OWL 1.1 , 2007, OWLED.

[83]  Chris Rupp,et al.  Requirements Engineering und Management , 2009, HMD Praxis der Wirtschaftsinformatik.

[84]  Alain Abran,et al.  The Guide to the Software Engineering Body of Knowledge , 1999, IEEE Softw..

[85]  Ian Horrocks,et al.  From SHIQ and RDF to OWL: the making of a Web Ontology Language , 2003, J. Web Semant..

[86]  Betty H. C. Cheng,et al.  Facilitating the construction of specification pattern-based properties , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[87]  Eric Werner Knauss Verbesserung der Dokumentation von Anforderungen auf Basis von Erfahrungen und Heuristiken , 2010 .

[88]  Dean Leffingwell,et al.  Managing software requirements: a unified approach , 1999 .

[89]  Norbert E. Fuchs,et al.  Reasoning in Attempto Controlled English , 2003, PPSWR.

[90]  Herman J. ter Horst,et al.  Completeness, decidability and complexity of entailment for RDF Schema and a semantic extension involving the OWL vocabulary , 2005, J. Web Semant..

[91]  Jeff Sutherland,et al.  Manifesto for Agile Software Development , 2013 .

[92]  Teruko Mitamura Controlled Language for Multilingual Machine Translation 1 , 1999 .

[93]  Susan Bonzi,et al.  Semantic interpretation and the resolution of ambiguity , 1989, JASIS.

[94]  Christian Allmann,et al.  Ontologiebasierte Entwicklung von Anforderungsspezifikationen im Automotive-Umfeld , 2012, Softwaretechnik-Trends.

[95]  Stephen Clark,et al.  Best Practices for Automated Traceability , 2007, Computer.

[96]  Johanna Völker,et al.  Ontology Learning and Reasoning - Dealing with Uncertainty and Inconsistency , 2005, ISWC-URSW.