Design by derivational analogy: issues in the automated replay of design plans
Artificial Intelligence
Analysis and empirical studies of derivational analogy
Artificial Intelligence
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
AntiPatterns: refactoring software, architectures, and projects in crisis
AntiPatterns: refactoring software, architectures, and projects in crisis
Software Architecture in Practice
Software Architecture in Practice
Using ontology to support development of software architectures
IBM Systems Journal
In search of `architectural knowledge'
Proceedings of the 3rd international workshop on Sharing and reusing architectural knowledge
Sharing the Architectural Knowledge of Quantitative Analysis
QoSA '08 Proceedings of the 4th International Conference on Quality of Software-Architectures: Models and Architectures
Hi-index | 0.00 |
The architecture definition activity of complex systems is intellectually intensive -- consuming much of the design time and budget. Rather than being regarded merely as a collection of views, software architecture can also be regarded as a collection of design decisions, such as tactics and design patterns, which are embodied in the architectural process. Therefore, the reuse of the architecture would be naïve if only carried out based on the architectural views, i.e. without regard to the design reasoning behind the architectural process. In this paper we review an approach to defining new software architectures through the use of derivational analogy, i.e. by replaying the process, sequence of decisions, behind the definition of a previously defined architecture. We conclude that, without the design reasoning, the reuse of the architecture would be a risky process, which can violate original design assumptions and dependencies.