Automated ontology construction from scenario based software requirements using clustering techniques

Ontologies have been utilized in many different areas of software engineering. As software systems grow in size and complexity, the need to devise methodologies to manage the amount of information and knowledge becomes more apparent. Utilizing ontologies in requirement elicitation and analysis is very practical as they help to establish the scope of the system and facilitate information reuse. Moreover ontologies can serve as a natural bridge to transition from the requirements gathering stage to designing the architecture for the system. However manual construction of ontologies is time consuming, error prone and subjective. Therefore it is greatly beneficial to devise automated methodologies which allow knowledge extraction from system requirements using an automated and systematic approach. This paper introduces an approach to systematically extract knowledge from system requirements to construct different views of ontologies for the system as a part of a comprehensive framework to analyze and validate software requirements and design.

[1]  Stefan Seedorf,et al.  Applications of Ontologies in Software Engineering , 2006 .

[2]  Behrouz Homayoun Far,et al.  Detecting Emergent Behavior in Distributed Systems using Scenario-Based Specifications , 2012, Int. J. Softw. Eng. Knowl. Eng..

[3]  James A. Hendler,et al.  A Tool for Working with Web Ontologies , 2005, Int. J. Semantic Web Inf. Syst..

[4]  Boris Motik,et al.  Reducing SHIQ-Description Logic to Disjunctive Datalog Programs , 2004, KR.

[5]  Reda Alhajj,et al.  Detecting emergent behavior in distributed systems using an ontology based methodology , 2011, 2011 IEEE International Conference on Systems, Man, and Cybernetics.

[6]  Behrouz Homayoun Far,et al.  A Technique and a Tool to Detect Emergent Behavior of Distributed Systems Using Scenario-Based Specifications , 2010, 2010 22nd IEEE International Conference on Tools with Artificial Intelligence.

[7]  Steffen Staab,et al.  Handbook on Ontologies (International Handbooks on Information Systems) , 2004 .

[8]  Mark Austin,et al.  Requirements Engineering and the Semantic Web, Part II. Representaion, Management, and Validation of Requirements and System-Level Architectures , 2004 .

[9]  Káthia Marçal de Oliveira,et al.  Using Domain-Knowledge in Software Development Environments , 1999 .

[10]  Asunción Gómez-Pérez,et al.  Ontological Engineering: Principles, Methods, Tools and Languages , 2006, Ontologies for Software Engineering and Software Technology.

[11]  Brian Henderson-Sellers,et al.  An Ontology for Software Development Methodologies and Endeavours , 2006, Ontologies for Software Engineering and Software Technology.

[12]  Ana Regina Cavalcanti da Rocha,et al.  Use of Ontologies in Software Development Environments , 2006, Ontologies for Software Engineering and Software Technology.

[13]  R. Studer,et al.  Semantic Web Technologies: Trends and Research in Ontology-based Systems , 2006 .

[14]  Nicola Guarino,et al.  Understanding and building, using ontologies , 1997, Int. J. Hum. Comput. Stud..

[15]  Waralak V. Siricharoen Ontologies and Object models in Object Oriented Software Engineering , 2006, IMECS.

[16]  Behrouz H. Far,et al.  Formal Verification of Lack of Existence of Illegal Scenarios in the Requirements of Distributed Systems , 2010 .

[17]  Silvia Llorente,et al.  IPROnto : An Ontology for Digital Rights Management , 2003 .

[18]  José Ramón Hilera,et al.  Using Ontologies in Software Engineering and Technology , 2006, Ontologies for Software Engineering and Software Technology.

[19]  Robin F. Goldsmith,et al.  Discovering Real Business Requirements for Software Project Success , 2004 .

[20]  John A. McDermid,et al.  Software Engineering Environments: Automated Support for Software Engineering , 1993 .

[21]  Behrouz Homayoun Far,et al.  Model based detection of implied scenarios in multi agent systems , 2010, 2010 IEEE International Conference on Information Reuse & Integration.

[22]  Nicolas Anquetil,et al.  Software Maintenance Ontology , 2006, Ontologies for Software Engineering and Software Technology.

[23]  York Sure,et al.  Ontoedit : Collaborative ontology engineering for the semantic web , 2002 .

[24]  Mark A. Musen,et al.  The Knowledge Model of Protégé-2000: Combining Interoperability and Flexibility , 2000, EKAW.

[25]  Nuno Seco,et al.  Using Ontologies for Software Development Knowledge Reuse , 2007, EPIA Workshops.

[26]  Bob J. Wielinga,et al.  Using explicit ontologies in KBS development , 1997, Int. J. Hum. Comput. Stud..

[27]  Nicola Guarino,et al.  Formal Ontology and Information Systems , 1998 .

[28]  E. Ras,et al.  Self-organized Reuse of Software Engineering Knowledge Supported by Semantic Wikis , 2005 .

[29]  Asunción Gómez-Pérez,et al.  WEBODE in a Nutshell , 2003, AI Mag..

[30]  John Mylopoulos,et al.  Ontologies for Knowledge Management: An Information Systems Perspective , 2004, Knowledge and Information Systems.