Tool Support for Fuzz Testing of Component-Based System Adaptation Policies

  • Jean-François WeberEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10231)


Self-adaptation enables component-based systems to evolve by means of dynamic reconfigurations that can modify their architecture and/or behaviour at runtime. In this context, we use adaptation policies to trigger reconfigurations that must only happen in suitable circumstances, thus avoiding unwanted behaviours. A tool (cbsdr, standing for Component-Based System Dynamic Reconfigurations) supporting both the Fractal and FraSCAti component frameworks was developed, but the testing of the robustness of new adaptation policies was not easy. This is the reason to add to our implementation a new behavioural fuzzing tool. While fuzzing consists of sending invalid data to a system under test to find weaknesses that may cause a crash or an abnormal reaction, behavioural fuzzing sends invalid sequences of valid data. Valid traces are modified using fuzzing techniques to generate test cases that can be replayed on a dummy system using the adaptation policies to be tested while focusing on interesting regions of specific data sequences.


  1. 1.
    Kouchnarenko, O., Weber, J.-F.: Adapting component-based systems at runtime via policies with temporal patterns. In: Fiadeiro, J.L., Liu, Z., Xue, J. (eds.) FACS 2013. LNCS, vol. 8348, pp. 234–253. Springer, Cham (2014). doi: 10.1007/978-3-319-07602-7_15 Google Scholar
  2. 2.
    Kouchnarenko, O., Weber, J.-F.: Practical analysis framework for component systems with dynamic reconfigurations. In: Butler, M., Conchon, S., Zaïdi, F. (eds.) ICFEM 2015. LNCS, vol. 9407, pp. 287–303. Springer, Cham (2015). doi: 10.1007/978-3-319-25423-4_18 CrossRefGoogle Scholar
  3. 3.
    Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: The fractal component model and its support in java. Softw. Pract. Experience 36, 1257–1284 (2006)CrossRefGoogle Scholar
  4. 4.
    Seinturier, L., Merle, P., Rouvoy, R., Romero, D., Schiavoni, V., Stefani, J.B.: A component-based middleware platform for reconfigurable service-oriented architectures. Softw. Pract. Experience 42, 559–583 (2012)CrossRefGoogle Scholar
  5. 5.
    Takanen, A., Demott, J.D., Miller, C.: Fuzzing for Software Security Testing and Quality Assurance. Artech House, Norwood (2008)zbMATHGoogle Scholar
  6. 6.
    Schneider, M., Großmann, J., Tcholtchev, N., Schieferdecker, I., Pietschker, A.: Behavioral fuzzing operators for UML sequence diagrams. In: Haugen, Ø., Reed, R., Gotzhein, R. (eds.) SAM 2012. LNCS, vol. 7744, pp. 88–104. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-36757-1_6 CrossRefGoogle Scholar
  7. 7.
    Boyer, F., Gruber, F., Pous, D.: Robust reconfigurations of component assemblies. In: International Conference on Software Engineering, ICSE 2013, Piscataway, NJ, USA, pp. 13–22. IEEE Press (2013)Google Scholar
  8. 8.
    Hamilton, A.G.: Logic for Mathematicians. Cambridge University Press, Cambridge (1988)zbMATHGoogle Scholar
  9. 9.
    Schneider, M., Großmann, J., Schieferdecker, I., Pietschker, A.: Online model-based behavioral fuzzing. In: 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops (ICSTW 2003), pp. 469–475. IEEE (2013)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.FEMTO-ST UMR 6174 CNRS and Univ. Bourgogne Franche-ComtéBesançonFrance

Personalised recommendations