Comparing functionality of software systems: An ontological approach

Research output: Contribution to journalArticlepeer-review


Organizations can reduce the costs and enhance the quality of required software by adapting existing software systems. Software adaptation decisions often involve comparing alternatives on two criteria: (1) how well a system meets users' requirements and (2) the effort required for adapting the system. These criteria reflect two points of view - of users and of developers. Common to both views is the notion of functionality, which software developers have traditionally used for effort estimation utilizing concepts such as function points. However, users involved in selecting systems are not necessarily familiar with such concepts. We propose an approach for comparing software functionality from users' point of view. The approach employs ontological concepts to define functionality in terms of system behaviors. To evaluate whether or not the approach is also usable by software developers, we conducted an exploratory experiment. In the experiment, software engineering students ranked descriptions of software systems on the amount of changes needed to adapt the systems to given requirements. The results demonstrated that the ontological approach was usable after a short training and provided results comparable to ranking done by expert software developers. We also compared the ontological approach to a method which employed function point concepts. The results showed no statistically significant differences in performance, but there seemed to be an advantage to the ontological approach for cases that were difficult to analyze. Moreover, it took less time to apply the ontological approach than the function point-based approach, and the difference was statistically significant.

Original languageAmerican English
Pages (from-to)320-338
Number of pages19
JournalData and Knowledge Engineering
StatePublished - 1 Sep 2013


  • Development effort estimation
  • Function point analysis
  • Ontologies
  • Requirements engineering
  • Software comparison
  • Variability management

All Science Journal Classification (ASJC) codes

  • Information Systems and Management


Dive into the research topics of 'Comparing functionality of software systems: An ontological approach'. Together they form a unique fingerprint.

Cite this