a framework for classifying intelligent design theories
Software Engineering (SE) design approaches are traditionally based on concepts associated with the procedural and object-oriented SE paradigms, such as stepwise methods and techniques for abstraction, modularity and refinement of software functionality. In contrast, researchers in other engineering domains have developed theories of Intelligent Design (ID) to explain what human design engineers think and do in the design process. So far these theories have provided useful process models, knowledge representations and strategies to underpin a number of approaches to designing complex artifacts. Our aim is to explore the potential of such engineering-based ID theories to support SE design. In pursuit of this we need to appraise existing ID theories in a systematic manner. Due to the large number of ID theories and the diversity of elements which they are composed of, the first stage of any systematic appraisal would be to develop a framework for classifying and analyzing ID theories. Such a framework is proposed in this paper. It can be used to categorize and assess ID theories, their elements and research methodologies. Together with a set of appraisal criteria, we can then assess the usefulness of each ID theory for supporting SE design activities. The framework identifies the main elements of ID theories including the underlying research approach, the process models created, and the knowledge representations derived. This paper provides a full description of the framework and shows how it can be used to analyze an example ID theory.
software engineering (se) intelligent design (id) design methodologies software development