EBGSD: Emergence-Based Generative Software Development

Generative Software Development (GSD) is an area of research that aims at increasing the level of productivity of software development processes. Despite widespread research on GSD approaches, deficiencies such as impracticability/impracticality, limited generation power, and inadequate support for complexity management have prevented them from achieving an ideal level of generativity. We propose a GSD approach based on a novel modeling paradigm called ‘Ivy’. Ivy models the context domain as a set of conceptual phenomena, and depicts how these phenomena emerge from one another. Our proposed approach, Emergence-Based Generative Software Development (EBGSD), uses Ivy models for modeling how a software system (as a phenomenon) can emerge from its underlying phenomena, and can provide an effective means for managing software complexity. Developers can also elicit generative patterns from Ivy models and utilize them to increase the level of reuse and generativity, and thus improve their productivity. Keywords-generative software development; phenomenon; emergence; conceptual model