Skip navigation

Applying case based reasoning and structural similarity for effective retrieval of expert knowledge from software designs

Applying case based reasoning and structural similarity for effective retrieval of expert knowledge from software designs

Wolf, Markus Adrian (2012) Applying case based reasoning and structural similarity for effective retrieval of expert knowledge from software designs. PhD thesis, University of Greenwich.

[img]
Preview
PDF (Pages containing signatures redacted)
Markus Adrian Wolf 2012 - Redacted.pdf - Published Version
Available under License Creative Commons Attribution Non-commercial No Derivatives.

Download (4MB) | Preview

Abstract

Due to the proliferation of object-oriented software development, UML software designs are ubiquitous. The creation of software designs already enjoys wide software support through CASE (Computer-Aided Software Engineering) tools. However, there has been limited application of computer reasoning to software designs in other areas. Yet there is expert knowledge embedded in software design artefacts which could be useful if it were successfully retrieved. Thus, there is a need for automated support for expert knowledge retrieval from software design artefacts.

A software design is an abstract representation of a software product and, in the case of a class diagram, contains information about its structure. It is therefore possible to extract knowledge about a software application from its design. For a human expert an important aspect of a class diagram are the semantic tags associated with each composing element, as these provide a link to the concept each element represents. For implemented code, however, the semantic tags have no bearing. The focus of this research has been on the question of whether is it possible to retrieve knowledge from class diagrams in the absence of semantic information.

This thesis formulates an approach which combines case-based reasoning with graph matching to retrieve knowledge from class diagrams using only structural information. The practical applicability of this research has been demonstrated in the areas of cost estimation and plagiarism detection. It was shown that by applying case-based reasoning and graph matching to measure similarity between class diagrams it is possible to identify properties of an implementation not encoded within the actual diagram, such as the domain, programming language, quality and implementation cost.

An approach for increasing users’ confidence in automatic class diagram matching by providing explanation is also presented. The findings show that the technique applied here can contribute to industry and academia alike in obtaining solutions from class diagrams where semantic information is lacking. The approach presented here, as well as its evaluation, were automated through the development of the UMLSimilator software tool.

Item Type: Thesis (PhD)
Additional Information: uk.bl.ethos.616526
Uncontrolled Keywords: software design, cased based reasoning, UMLSimilator software tool,
Subjects: Q Science > QA Mathematics > QA76 Computer software
Pre-2014 Departments: School of Computing & Mathematical Sciences
School of Computing & Mathematical Sciences > Department of Mathematical Sciences
Last Modified: 17 Mar 2017 15:32
URI: http://gala.gre.ac.uk/id/eprint/11978

Actions (login required)

View Item View Item

Downloads

Downloads per month over past year

View more statistics