TY - JOUR
T1 - A Cooperative Coevolution Approach to Automate Pattern-based Software Architectural Synthesis
AU - Xu, Y.R.
AU - Liang, P.
PY - 2014
Y1 - 2014
N2 - To reuse successful experience in software architecture design, architects use architectural patterns as reusable architectural knowledge for architectural synthesis. However, it has been observed that the resulting architecture does not always conform to the initial architectural patterns employed. Architectural synthesis using architectural patterns is also recognized as a challenging task, especially for novice architects due to lack of experience. In this paper, we propose a cooperative coevolution approach to automate architectural synthesis using architectural patterns. We first analyze several common architectural patterns and the constraints when using them. We then extend existing architectural synthesis activity with patterns based on the results of this analysis. Finally, we map the extended architectural synthesis to a cooperative coevolution model, which can optimize the resulting architectural solutions and avoid the violations to the pattern constraints automatically. We evaluate the proposed approach through a case study: architecture design of a cinema booking system. The results show that the proposed approach can generate architectural solutions which are closer to the expert design.
AB - To reuse successful experience in software architecture design, architects use architectural patterns as reusable architectural knowledge for architectural synthesis. However, it has been observed that the resulting architecture does not always conform to the initial architectural patterns employed. Architectural synthesis using architectural patterns is also recognized as a challenging task, especially for novice architects due to lack of experience. In this paper, we propose a cooperative coevolution approach to automate architectural synthesis using architectural patterns. We first analyze several common architectural patterns and the constraints when using them. We then extend existing architectural synthesis activity with patterns based on the results of this analysis. Finally, we map the extended architectural synthesis to a cooperative coevolution model, which can optimize the resulting architectural solutions and avoid the violations to the pattern constraints automatically. We evaluate the proposed approach through a case study: architecture design of a cinema booking system. The results show that the proposed approach can generate architectural solutions which are closer to the expert design.
U2 - 10.1142/S0218194014400130
DO - 10.1142/S0218194014400130
M3 - Article
JO - International Journal of Software Engineering and Knowledge Engineering
JF - International Journal of Software Engineering and Knowledge Engineering
SN - 0218-1940
ER -