Advertisement

Problem-Specific Search Operators for Metaheuristic Software Architecture Design

  • Ramin Etemaadi
  • Michael T. M. Emmerich
  • Michel R. V. Chaudron
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7515)

Abstract

A large number of quality properties needs to be addressed in nowadays complex software systems by architects. These quality properties are mostly conflicting and make the problem very complex. This paper proposes a hybridization process about the problem of optimization of system architecture, in which it uses quality improvement heuristics within an evolutionary algorithm. The solution can be represented in a systems model representation (instead of genotype-phenotype mapping approach) and then it is manipulated by specific and customizable transformations of system architecture. These transformations are based on patterns, for instance Replicating-Component-Instant, Caching-Data. In this case, various system quality improvement patterns such as known performance or security improvement patterns can be easily used for exploration in multiobjective evolutionary search.

Keywords

System Architecture Design Optimization Genotype-Phenotype Mapping Model-Driven Software Development (MDSD) Evolutionary Multiobjective Optimization (EMO) 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Baos, R., Fonseca, C., Gil, C., Mrquez, A.L., Vila Melgar, E.Y., Montoya, F.G.: Design and evaluation of evolutionary operators for water distribution network optimisation. In: META (2010)Google Scholar
  2. 2.
    Cortellessa, V., Marco, A.D., Trubiani, C.: Performance antipatterns as logical predicates. In: Calinescu, R., Paige, R.F., Kwiatkowska, M.Z. (eds.) ICECCS, pp. 146–156. IEEE Computer Society (2010)Google Scholar
  3. 3.
    Droste, S., Wiesmann, D.: Metric Based Evolutionary Algorithms. In: Poli, R., Banzhaf, W., Langdon, W.B., Miller, J., Nordin, P., Fogarty, T.C. (eds.) EuroGP 2000. LNCS, vol. 1802, pp. 29–43. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  4. 4.
    Emmerich, M., Grötzner, M., Schütz, M.: Design of graph-based evolutionary algorithms: A case study for chemical process networks. Evolutionary Computation 9(3), 329–354 (2001)CrossRefGoogle Scholar
  5. 5.
    Koziolek, A., Koziolek, H., Reussner, R.: Peropteryx: automated application of tactics in multi-objective software architecture optimization. In: Crnkovic, I., Stafford, J., Petriu, D., Happe, J., Inverardi, P. (eds.) QoSA/ISARCS, pp. 33–42. ACM (2011)Google Scholar
  6. 6.
    Latif-Shabgahi, G., Bennett, S., Bass, J.: Smoothing voter: a novel voting algorithm for handling multiple errors in fault-tolerant control systems. Microprocessors and Microsystems 27(7), 303–313 (2003), http://www.sciencedirect.com/science/article/pii/S0141933103000401 CrossRefGoogle Scholar
  7. 7.
    Li, R., Etemaadi, R., Emmerich, M.T.M., Chaudron, M.R.V.: An Evolutionary Multiobjective Optimization Approach to Component-Based Software Architecture Design. In: IEEE CEC, pp. 432–439. IEEE (2011)Google Scholar
  8. 8.
    Martens, A., Ardagna, D., Koziolek, H., Mirandola, R., Reussner, R.: A Hybrid Approach for Multi-attribute QoS Optimisation in Component Based Software Systems. In: Heineman, G.T., Kofron, J., Plasil, F. (eds.) QoSA 2010. LNCS, vol. 6093, pp. 84–101. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  9. 9.
    Natsui, M., Homma, N., Aoki, T., Higuchi, T.: Topology-Oriented Design of Analog Circuits Based on Evolutionary Graph Generation. In: Yao, X., Burke, E.K., Lozano, J.A., Smith, J., Merelo-Guervós, J.J., Bullinaria, J.A., Rowe, J.E., Tiňo, P., Kabán, A., Schwefel, H.-P. (eds.) PPSN 2004. LNCS, vol. 3242, pp. 342–351. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Rotaru, O.P.: Caching patterns and implementation. Leonardo Journal of Sciences (8), 61–76 (January-June 2006)Google Scholar
  11. 11.
    Sand, G., Till, J., Tometzki, T., Urselmann, M., Engell, S., Emmerich, M.: Engineered versus standard evolutionary algorithms: A case study in batch scheduling with recourse. Computers & Chemical Engineering 32(11), 2706–2722 (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Ramin Etemaadi
    • 1
  • Michael T. M. Emmerich
    • 1
  • Michel R. V. Chaudron
    • 1
  1. 1.Leiden Institute of Advanced Computer ScienceLeiden UniversityNetherlands

Personalised recommendations