Abstract:
Over the years the field of software development has undergone a series of mutations, particularly in the types of approaches and methodologies that are applied during the development process. One thing that has not been fully achieved by software development method engineers is to move the development process completely from the mechanistic functionalist paradigm to a neo-humanist romantic paradigm. Although many researchers claim to have introduced new development paradigms in software development, these are merely new methodologies that are grounded in old paradigms. There are three fundamental development approaches that lie in the hard systems approach: the traditional structured, object-oriented and the recently invented agile approaches that have been widely adopted by software practitioners. Few of these practitioners have embraced the soft systems approach and their development methods have not migrated from the syntactic processes of the hard-systems approach. Another problem that software developers continue to face is a lack of a method or tool that can augment current syntactic programming language technologies and software development methods by the addition of semantic-based tools to facilitate the construction of romantic, adaptive and evolvable software products. In fact, most of the problems encountered in software development can be attributed to deficiencies in the methodologies, that is: the approaches, methods, techniques and tools used during the development of the software product. This research study introduces the concept of ontologies in software development and motivates for an ontology-driven approach to software development that reduces the mechanistic nature of software products but increases their adaptability and usability. Although current industrial and academic research has focused at the semantic properties of ontologies in software development, researchers have not considered how the methodological process can be designed and used to develop romantic software products. This research study used one variant of GTM and followed an interpretive approach in the investigation of several issues that are known and documented but not addressed by the current software development approaches. The field of software development has been investigated and a framework of requirements that enables the development of romantic systems is presented. The ontology discipline, focusing on the semantic, pragmatic and contextual characteristics of ontologies, was also consulted. Starting from a set of differentiated ontological frameworks and from the syntactic, semantic and pragmatic nature of ontologies, the research then presents a framework of ontologies that can be co-opted into a software development approach to address the deficiencies in current software development approaches highlighted in the framework of software development requirements. As part of the research findings, a new definition of ontology, as well as a framework of components that make up the ontology and a theoretical translation model that is needed to develop romantic software products, are presented. The theoretical translation model comprises three parts: an ontology-driven software development framework, an ontological approach to software development and an ontology-based methodology for software development. Of note is the use of domain, method, process, intentional, and status ontologies at different stages of software development to cater for the semantic, pragmatic and contextual gaps that are not currently addressed by existing development approaches. However, in this study, a balance is reached between addressing the needs of current and future developers of software products, that is, one that reacts to an urgent market need, as well as addressing a software development approach need that is heavily grounded in the softer, neo-humanist paradigm.