Using Ontologies to Create Object Model for Object-Oriented Software Engineering

In this paper we introduce and discuss our approach to creating an object model from a problem domain text description as a basic deliverable of the analysis phase in Object-Oriented Software Engineering using ontologies. For this purpose we first briefly compare object models with ontologies. The object model of a system consists of objects, identified from the text description and structural linkages corresponding to existing or established relationships. The ontologies provide metadata schemas, offering a controlled vocabulary of concepts. At the center of both object models and ontologies are objects within a given problem domain. The both concepts are based on reusability using intensively libraries. The major difference is that while the object model contains explicitly shown structural dependencies between objects in a system, including their properties, relationships and behavior, the ontologies are based on related terms (concepts) only. Because ontology is accepted as a formal, explicit specification of a shared conceptualization, we can naturally link ontologies with object models, which represent a system-oriented map of related objects. To become usable programming entities these objects should be described as Abstract Data Types (ADTs). This paper addresses ontologies as a basis of a complete methodology for object identification and their modeling as (converting to) ADTs, including procedures and available tools such as CORPORUM OntoExtract and VisualText, which can help the conversion process. This paper describes how the developers can implement this methodology on the base of an illustrative example.

[1]  Kevin Knight,et al.  Toward Distributed Use of Large-Scale Ontologies t , 1997 .

[2]  Steffen Staab,et al.  Views for light-weight Web ontologies , 2003, SAC '03.

[3]  Permanand Mohan,et al.  Learning objects on the semantic Web , 2003, Proceedings 3rd IEEE International Conference on Advanced Technologies.

[4]  Stefan Decker,et al.  Creating Semantic Web Contents with Protégé-2000 , 2001, IEEE Intell. Syst..

[5]  Dieter Fensel,et al.  Knowledge Engineering: Principles and Methods , 1998, Data Knowl. Eng..

[6]  Michel C. A. Klein XML, RDF, and Relatives , 2001, IEEE Intell. Syst..

[7]  Frank Manola Technologies for a Web Object Model , 1999, IEEE Internet Comput..

[8]  Balakrishnan Chandrasekaran,et al.  What are ontologies, and why do we need them? , 1999, IEEE Intell. Syst..

[9]  Mark Allen Weiss,et al.  Data structures and algorithm analysis , 1991 .

[10]  John R. Josephson,et al.  What Are They? Why Do We Need Them? , 1999 .

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

[12]  Holger Knublauch Three Patterns for the Implementation of Ontologies in Java , 1999, OOPSLA 1999.

[13]  Mark Allen Weiss,et al.  Data structures and algorithm analysis in Ada , 1993 .

[14]  Ray Farmer,et al.  Object-Oriented Systems Analysis and Design Using UML , 2001 .

[15]  Austin Tate,et al.  Guest Editors' Introduction: Ontologies , 1999 .

[16]  Somjit Arch-int,et al.  Towards construction of business components: an approach to development of web-based application systems , 2003 .

[17]  Yolanda Gil,et al.  A Comparison of (Semantic) Markup Languages , 2002, FLAIRS Conference.