Documente Academic
Documente Profesional
Documente Cultură
communicate with each other their terminology science has emerged from that discipline, giving
could be quite startling and unusual. This leads to rise to Ontology Engineering, which we focus on in
inconsistency and equivocation among the teams. this paper. In computer science, the concept
Communication is the real challenge that everyone “ontology” is interpreted in many different ways
face in their daily life and the and concrete ontologies can vary in several
affective communication is an important part of a dimensions, such as degree of formality,
successful business. Ontology is an important part authoritativeness or quality. As proposed by
of developing a shared understanding across a Oberle, different kinds of ontologies can be
project to lessen the problems. classified according to purpose, specificity and
This paper is organized in five sections. The next expressiveness. The first dimension ranges from
Section describes software engineering and application ontologies to reference ontologies that
knowledge engineering as a part of related work. are primarily used to reduce terminological
Section 3 presents proposed work. Section 4 deals ambiguity among members of a community. In the
with experimentation and results of a case study. specificity dimension, Oberle distinguishes generic
Finally section 5 presents conclusions and future (upper level), core and domain ontologies. Domain
scope of the proposed work. ontologies are specific to a universe of discourse,
whereas generic and core ontologies meet a higher
2. Related Work level of generality.
Due to the emergence of the “semantic web” vision
Software engineering is the “application of a ontologies have been attracting much attention
systematic, disciplined, and quantifiable approach recently. Along with this vision, new technologies
to the development, operation, and maintenance of and tools have been developed for ontology
software”. Although the claim of software representation, machine-processing, and ontology
development being an engineering discipline is sharing. This makes their adoption in real-world
subject to ongoing discussions, there is no doubt applications much easier, while ontologies are
that it has undergone fundamental changes during about to enter mainstream. Hence, we therefore try
the last three decades. This assertion holds true to alleviate some of the confusion by providing a
both for emergence of new technology and framework for categorizing potential uses of
sophistication of methodology. ontologies in Software Engineering.
In order to cope up with the complexity in the
software, there has been a constant drive to raise 2.1 Ontology in Software Engineering
the level of abstraction through modeling and
higher-level programming languages. For example, Ontology is the philosophical study of the nature
the paradigm of model-driven development of being, existence or reality in general, as well as
proposes that the modeling artifacts are the basic categories of being and their relations.
“executable”, i.e. through automated validation and Traditionally listed as a part of the major branch of
code generation as being addressed by the OMG philosophy known as metaphysics, ontology deals
Model Driven Architecture (MDA). However, with questions concerning what entities exist or can
many problems have only partially been solved be said to exist, and how such entities can be
including component reuse, composition, grouped, related within a hierarchy, and subdivided
validation, information and application integration, according to similarities and differences. In
software testing and quality. Such fundamental computer science and information science the
issues are the motivation for new approaches ontology has a key role to play with the formal
affecting every single aspect in Software representation of the knowledge by a set of
Engineering. concepts within a domain and the relationships
The engineering of knowledge-based systems is a between those concepts.
discipline which is closely related with Software
Engineering. The term Knowledge Engineering is
often associated with the development of expert-
systems, involving methodologies as well as
knowledge representation techniques. Since its
early days the notion of “ontology” in computer
IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 4, No 7, July 2010
ISSN (Online): 1694-0784
ISSN (Print): 1694-0814 21
3. Proposed Work
2.2 Developing Ontology
Many different modeling ontologies have been
In the domain of knowledge engineering
developed. Mostly used are the Knowledge
methodology for developing ontology, there are
Interchange Format (KIF) [4] and knowledge
some fundamental rules in ontology design. These
representation languages designed from KL-ONE
IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 4, No 7, July 2010
ISSN (Online): 1694-0784
ISSN (Print): 1694-0814 23
[5]. However, these representations have had little folder details, .exe files etc. Loading the same;
success outside. AI research laboratories and would provide the namespaces, number of classes,
require a steep learning curve. KIF provides a Lisp- number of methods, number of parameters to it that
like syntax to express sentences of first order are used in writing the code at the implementation
predicate logic and descendants of KL-ONE phase of the project. The classes, methods,
include description logics or terminological logics parameters are shown separately in the respective
that provide a formal characterization of the fields shown under.
representation Traditionally, AI knowledge
representation has a linear syntax. The recent The vivacious module that is developed is to draw
papers documented in the literature, to use the the same concepts in a pictorial representation. It
Unified Modeling Language for the ontology gives the hierarchical structure of the whole
modeling [6][7][8]. In Unified Modeling Language concepts that are used in the project. It also depicts
ontology information is modeled in class diagrams the relation between the classes with the other
and Object Constraint Language (OCL) [8]. classes. At last the schema representing the
However, there is controversy, regarding whether ontology can be saved as a JPEG, GIF, BMP or any
or not ontology goes beyond the standard UML other format.
modeling. However, the standard UML cannot
This paves way for the basics of the Ontological
express advanced ontology features such as
representation in the software engineering. The
constraints or restrictions. Therefore, additional
main use of this application is that there is no need
notations need to be defined in order to leverage
to walk through the entire thousands of lines code
expressiveness in the ontology.
to analyze the project.
Note that the models underlying ontology should
be distinguished from its use in software Project input:
development to model the application domain
model. This kind of agile modeling method for
ontology design has some benefits derived
from using the same paradigm for modeling
ontology and knowledge. In this paper, graphical
notations of modeling software engineering
ontology are presented. The main aim is not only to
create a graphical representation to make it easier
to understand, but also, this model should be able
to capture the semantic richness of the defined
software engineering ontology.
Fig 4 is the project input module, the user is asked organization structure, file system or any other
to provide the corresponding input to the system which includes hierarchical representation.
application. The input may be any other
application/project (the debug file). The project For each node added in the hierarchy, user can add
should posses a ‘.exe’ file; which in turn mean that a child node to it or a sibling node to it provided
it should be a complete project or application that is there is a parent node for the selected node present,
in use. After giving the input, three text boxes are as depicted in the fig5.
displayed, namely;
As this project is a windows application, the
‘Folder contents’, project/application selection is done by searching
‘.exe files’ and in the local drives. The three buttons namely;
‘Folder details’. Select, Exit, Cancel can basically serve the user to
navigate through the application. The same concept
These are shown clearly within their respective text can be scaled to a web site application or can be
boxes. However, the ‘folder details’ field contains inserted in a network (typical LAN).
the creation time, full name, last access time, last
write time of the folder where the actual
application is installed. Project classification:
This paves way for the basis of the ontology in the
software projects. The first step of the ontological Loading the corresponding application, the
representations of the concepts of software following are displayed with respect to the data
engineering starts here. However, as mentioned available in the project, which is shown in the fig6
earlier, the project/application selection process above.
takes on, as shown in the figure 5. Namespaces,
Class Names,
Methods,
Parameters.
‘ExtractDllMethod’,
‘RetriveMethodandParameterInfo’,
‘RetiveClassInfo’,
‘MakeDataSet’,
Figure 5: Application/ project selection process ‘CheckIsProprtyMethod’,
‘CollectPropertyMethod’,
It is developed with the help of the ‘tree view ‘GetClassInfo_DataRowIndex’.
control’ in Visual Studio C# .Net. The Windows
Forms Tree View Control helps to display the
hierarchy of nodes that can be used to represent the
IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 4, No 7, July 2010
ISSN (Online): 1694-0784
ISSN (Print): 1694-0814 25
If the namespace root node is selected, the When a Class is selected as root node, then the
corresponding classes contained in it are depicted. appropriate methods contained in it are represented
as a dependency diagram.
5. Conclusions
References
[1] T.R. Gruber, “A Translation Approach to Portable
Ontology Specification,” Knowledge Acquisition, 1993.