CONTENTS
CONTENTS
CONTENTS
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
KNOWLEDGE ENGINEERING: PRINCIPLES AND TECHNIQUES<br />
Proceedings of the International Conference on Knowledge Engineering,<br />
Principles and Techniques, KEPT2009<br />
Cluj-Napoca (Romania), July 2–4, 2009, pp. 185–188<br />
A CLUSTERING APPROACH FOR TRANSFORMING<br />
PROCEDURAL INTO OBJECT-ORIENTED SOFTWARE SYSTEMS<br />
ISTVAN GERGELY CZIBULA (1)<br />
Abstract. It is well known that object-oriented programming has mechanisms<br />
for constructing highly flexible, adaptable, and extensible systems. Legacy software<br />
systems evolution often requires their reengineering to object oriented systems.<br />
In this paper we are focusing on the problem of automating the transformation<br />
of procedural software systems into object-oriented systems. For this<br />
purpose we propose a clustering approach and we develop a partitional clutering<br />
algorithm that can be used for assisting software developers in the process of<br />
migrating procedural code into object-oriented code. A simple example showing<br />
how our approach works is also considered.<br />
1. Introduction<br />
It is well known that object-oriented programming has many advantages over conventional<br />
procedural programming languages for constructing highly flexible, adaptable,<br />
and extensible systems [1].<br />
Object-oriented concepts are useful concerning the reuse of existing software.<br />
Therefore a transformation of procedural programs to object-oriented programs becomes<br />
an important process to enhance the reuse of procedural programs. It would<br />
also be useful to assist by automatic methods the software developers in transforming<br />
procedural code into an equivalent object-oriented one.<br />
Unsupervised classification, or clustering, as it is more often referred as, is a data<br />
mining activity that aims to differentiate groups (classes or clusters) inside a given<br />
set of objects [2].<br />
The main contributions of this paper are:<br />
• To introduce a clustering approach for transforming non object-oriented software<br />
systems into object-oriented ones. The proposed approach can be useful<br />
during the evolution of non object-oriented software systems.<br />
• To propose a k-medoids based clustering algorithm for our goal.<br />
2000 Mathematics Subject Classification. 68N30, 62H30.<br />
Key words and phrases. software engineering, object-oriented systems, clustering.<br />
185<br />
c○2009 Babe¸s-Bolyai University, Cluj-Napoca