Interactive, Evolutionary Search in Upstream Object-Oriented Class Design
Authors:
- 18 March 2010
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 36 (6) , 798-816
Abstract
Although much evidence exists to suggest that early life cycle software engineering design is a difficult task for software engineers to perform, current computational tool support for software engineers is limited. To address this limitation, interactive search-based approaches using evolutionary computation and software agents are investigated in experimental upstream design episodes for two example design domains. Results show that interactive evolutionary search, supported by software agents, appears highly promising. As an open system, search is steered jointly by designer preferences and software agents. Directly traceable to the design problem domain, a mass of useful and interesting class designs is arrived at which may be visualized by the designer with quantitative measures of structural integrity, such as design coupling and class cohesion. The class designs are found to be of equivalent or better coupling and cohesion when compared to a manual class design for the example design domains, and by exploiting concurrent execution, the runtime performance of the software agents is highly favorable.Keywords
This publication has 46 references indexed in Scilit:
- User-centered, evolutionary search in conceptual software design2008
- A cross-disciplinary technology transfer for search-based evolutionary computing: from engineering design to software engineering designEngineering Optimization, 2007
- A model of design decision making based on empirical results of interviews with software designersInformation and Software Technology, 2007
- Support for managing design-time decisionsIEEE Transactions on Software Engineering, 2006
- Requirements Engineering and Downstream Software Development: Findings from a Case StudyEmpirical Software Engineering, 2005
- Concept identification in object-oriented domain analysis: why some students just don't get it2005
- Ten Challenges for Making Automation a "Team Player" in Joint Human-Agent ActivityIEEE Intelligent Systems, 2004
- A unified framework for coupling measurement in object-oriented systemsIEEE Transactions on Software Engineering, 1999
- An Investigation into the Applicability and Validity of Object-Oriented Design MetricsEmpirical Software Engineering, 1998
- Designing the Design Process: Exploiting Opportunistic ThoughtsHuman–Computer Interaction, 1990