Using Knapsack Problem Model to Design a Resource Aware Test Architecture for Adaptable and Distributed Systems

  • Mariam Lahami
  • Moez Krichen
  • Mariam Bouchakwa
  • Mohamed Jmaiel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7641)


This work focuses on testing the consistency of distributed and adaptable systems. In this context, Runtime Testing which is carried out on the final execution environment is emerging as a new solution for quality assurance and validation of these systems. This activity can be costly and resource consuming especially when execution environment is shared between the software system and the test system. To overcome this challenging problem, we propose a new approach to design a resource aware test architecture. We consider the best usage of available resources (such as CPU load, memory, battery level, etc.) in the execution nodes while assigning the test components to them. Hence, this work describes basically a method for test component placement in the execution environment based on an existing model called Multiple Multidimensional Knapsack Problem. A tool based on the constraint programming Choco library has been also implemented.


  1. 1.
    Brenner, D., Atkinson, C., Malaka, R., Merdes, M., Paech, B., Suliman, D.: Reducing verification effort in component-based software engineering through built-in testing. Information Systems Frontiers 9(2-3), 151–162 (2007)CrossRefGoogle Scholar
  2. 2.
    Lahami, M., Krichen, M., Jmaiel, M.: A Distributed Test Architecture for Adaptable and Distributed Real-Time Systems. In: Journées Nationales IDM, CAL, et du GDR GPL, Lille, France (June 2011)Google Scholar
  3. 3.
    Zhang, X., Shan, H., Qian, J.: Resource-Aware Test Suite Optimization. In: Proceedings of the 2009 Ninth International Conference on Quality Software, QSIC 2009, pp. 341–346. IEEE Computer Society, Washington, DC (2009)Google Scholar
  4. 4.
    Merdes, M., Malaka, R., Suliman, D., Paech, B., Brenner, D., Atkinson, C.: Ubiquitous RATs: how resource-aware run-time tests can improve ubiquitous software systems. In: SEM 2006: Proceedings of the 6th International Workshop on Software Engineering and Middleware, pp. 55–62. ACM, New York (2006)Google Scholar
  5. 5.
    Din, G., Tolea, S., Schieferdecker, I.: Distributed Load Tests with TTCN-3. In: TestCom 2006: Proceedings of International Conference for Testing of Communicating Systems, 18th IFIP TC6/WG6.1, pp. 177–196 (May 2006)Google Scholar
  6. 6.
    Csorba, M., Eottevenyi, D., Palugyai, S.: Experimenting with Dynamic Test Component Deployment in TTCN-3. In: 3rd International Conference on Testbeds and Research Infrastructure for the Development of Networks and Communities, TridentCom 2007, pp. 1–8 (May 2007)Google Scholar
  7. 7.
    Maassen, J., Bal, H.E.: Smartsockets: solving the connectivity problems in grid computing. In: Proceedings of the 16th International Symposium on High Performance Distributed Computing, HPDC 2007, pp. 1–10. ACM, New York (2007)Google Scholar
  8. 8.
    Piel, É., González-Sanchez, A., Groß, H.G.: Automating Integration Testing of Large-Scale Publish/Subscribe Systems. In: Hinze, A., Buchmann, A.P. (eds.) Principles and Applications of Distributed Event-Based Systems, pp. 140–163. IGI Global (2010)Google Scholar
  9. 9.
    Gonzalez, A., Piel, E., Gross, H.G., Glandrup, M.: Testing Challenges of Maritime Safety and Security Systems-of-Systems. In: Proceedings of the Testing: Academic & Industrial Conference - Practice and Research Techniques, pp. 35–39. IEEE Computer Society, Washington, DC (2008)CrossRefGoogle Scholar
  10. 10.
    King, T.M., Allen, A.A., Cruz, R., Clarke, P.J.: Safe Runtime Validation of Behavioral Adaptations in Autonomic Software. In: Calero, J.M.A., Yang, L.T., Mármol, F.G., García-Villalba, L.J., Li, X.A., Wang, Y. (eds.) ATC 2011. LNCS, vol. 6906, pp. 31–46. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  11. 11.
    Mei, L.: A context-aware orchestrating and choreographic test framework for service-oriented applications. In: ICSE Companion, pp. 371–374. IEEE (2009)Google Scholar
  12. 12.
    Flores, A., Augusto, J.C., Polo, M., Varea, M.: Towards context-aware testing for semantic interoperability on PvC environments. In: SMC (2), pp. 1136–1141. IEEE (2004)Google Scholar
  13. 13.
    Rodriguez, I.B.: Dynamic Software Architecture Management for Collaborative Communicating Systems. PhD thesis, University of Sfax & University of Toulouse (March 2011)Google Scholar
  14. 14.
    ETSI ES 201 873-1 (V3.1.1): Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language (2005)Google Scholar
  15. 15.
    Portigliatti, V., Philippe, L.: Java Components with constraints and preferences in automatic administration of execution and placement. In: PDP, pp. 266–273. IEEE Computer Society (2003)Google Scholar
  16. 16.
    Pizzocaro, D., Chalmers, S., Preece, A.: Sensor assignment in virtual environments using constraint programming. In: Ellis, R., Allen, T., Petridis, M. (eds.) The Twenty-seventh SGAI International Conference on Innovative Techniques and Applications of Artificial Intelligence Applications and Innovations in Intelligent Systems XV: Proceedings of AI 2007. Winner of Best Poster Presentation, AI 2007, pp. 333–338. Springer (2007)Google Scholar
  17. 17.
    Hermenier, F., Lorca, X., Cambazard, H., Menaud, J.M., Jussien, N.: Reconfiguration dynamique du placement dans les grilles de calculs dirigée par des objectifs. In: 6ième Conférence Francophone sur les Systèmes d’Exploitation (CFSE 2006), Fribourg, Switzerland (2008)Google Scholar
  18. 18.
    Jussien, N., Rochart, G., Lorca, X.: Choco: an Open Source Java Constraint Programming Library. In: CPAIOR 2008 Workshop on Open-Source Software for Integer and Contraint Programming (OSSICP 2008), pp. 1–10, Paris, France (2008)Google Scholar
  19. 19.
    Cotta, C., Troya, J.: A hybrid genetic algorithm for the 0-1 multiple knapsack problem. Artificial Neural Nets and Genetic Algorithms 3, 251–255 (1998)Google Scholar
  20. 20.
    PospÍchal, P., Schwarz, J., Jaroš, J.: Parallel Genetic Algorithm Solving 0/1 Knapsack Problem Running on the GPU. In: 16th International Conference on Soft Computing, MENDEL 2010, pp. 64–70. Brno University of Technology (2010)Google Scholar
  21. 21.
    Puchinger, J., Raidl, G.R., Pferschy, U.: The Core Concept for the Multidimensional Knapsack Problem. In: Gottlieb, J., Raidl, G.R. (eds.) EvoCOP 2006. LNCS, vol. 3906, pp. 195–208. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  22. 22.
    Martello, S., Toth, P.: Solution of the zero-one multiple knapsack problem. European Journal of Operational Research 4(4), 276–283 (1980)MathSciNetzbMATHCrossRefGoogle Scholar
  23. 23.
    Jansen, K.: Parameterized approximation scheme for the multiple knapsack problem. In: Proceedings of the Twentieth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2009, Philadelphia, PA, USA. Society for Industrial and Applied Mathematics, pp. 665–674 (2009)Google Scholar
  24. 24.
    Song, Y., Zhang, C., Fang, Y.: Multiple multidimensional knapsack problem and its applications in cognitive radio networks. In: Military Communications Conference, MILCOM 2008, pp. 1–7. IEEE (November 2008)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2012

Authors and Affiliations

  • Mariam Lahami
    • 1
  • Moez Krichen
    • 1
  • Mariam Bouchakwa
    • 1
  • Mohamed Jmaiel
    • 1
  1. 1.Research Unit of Development and Control of Distributed Applications, National School of Engineering of SfaxUniversity of SfaxSfaxTunisia

Personalised recommendations