Nothing Special   »   [go: up one dir, main page]

Skip to main content
Log in

Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Model-based robustness testing requires precise and complete behavioral, robustness modeling. For example, state machines can be used to model software behavior when hardware (e.g., sensors) breaks down and be fed to a tool to automate test case generation. But robustness behavior is a crosscutting behavior and, if modeled directly, often results in large, complex state machines. These in practice tend to be error prone and difficult to read and understand. As a result, modeling robustness behavior in this way is not scalable for complex industrial systems. To overcome these problems, aspect-oriented modeling (AOM) can be employed to model robustness behavior as aspects in the form of state machines specifically designed to model robustness behavior. In this paper, we present a RobUstness Modeling Methodology (RUMM) that allows modeling robustness behavior as aspects. Our goal is to have a complete and practical methodology that covers all features of state machines and aspect concepts necessary for model-based robustness testing. At the core of RUMM is a UML profile (AspectSM) that allows modeling UML state machine aspects as UML state machines (aspect state machines). Such an approach, relying on a standard and using the target notation as the basis to model the aspects themselves, is expected to make the practical adoption of aspect modeling easier in industrial contexts. We have used AspectSM to model the crosscutting robustness behavior of a videoconferencing system and discuss the benefits of doing so in terms of reduced modeling effort and improved readability.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms. http://www.omg.org/spec/QFTP/1.1/ (2010)

  2. Modeling and Analysis of Real-time and Embedded systems (MARTE). http://www.omgmarte.org/ (2010)

  3. Jürjens, J.: UMLsec: extending UML for secure systems development. In: Proceedings of the 5th International Conference on the Unified Modeling Language. Springer, Berlin (2002)

  4. IEEE Standard Glossary of Software Engineering Terminology. IEEE, IEEE Std 610.12-1990 (1990)

  5. Yedduladoddi R.: Aspect oriented software development: an approach to composing UML design models. VDM Verlag Dr. Müller, Saarbrücken (2009)

    Google Scholar 

  6. Whittle, J., Moreira, A., Araújo, J., Jayaraman, P., Elkhodary, A., Rabbi, R.: An expressive aspect composition language for UML state diagrams (2007)

  7. Runeson H., Höst M.: Guidelines for conducting and reporting case study research in software engineering. Empirical Softw. Eng. 14(2I), 131–164 (2009)

    Article  Google Scholar 

  8. Aldini A., Gorrieri R., Martinelli F., Jürjens J.: Model-based security engineering with UML. Springer, Berlin/Heidelberg (2005)

    Google Scholar 

  9. Péreza J., Ali N., Carsı’b J.A., Ramosb I., Álvarezc B., Sanchezc P., Pastorc J.A.: Integrating aspects in software architectures: PRISMA applied to robotic tele-operated systems. Inf. Softw. Technol. 50(9-10I), 969–990 (2008)

    Article  Google Scholar 

  10. Cottenier, T., Berg, A.v.d., Elrad, T.: The Motorola WEAVR: model weaving in a large industrial context. In: Proceedings of the Aspect Oriented Software Development (AOSD) (2007)

  11. Cottenier, T., Berg, A.v.d., Elrad, T.: Stateful aspects: the case for aspect-oriented modeling. In: Proceedings of the 10th International Workshop on Aspect-Oriented Modeling. ACM, Vancouver (2007)

  12. Shafique, M., Labiche, Y.A.: Systematic review of model based testing tools. Carleton University, Department of Systems and Computer Engineering. Technical Report (SCE-10-04) (2010)

  13. Avizienis A., Laprie J.-C., Randell B., Landwehr C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secur. Comput. 1(1I), 11–33 (2004)

    Article  Google Scholar 

  14. IEEE Standard Classification for Software Anomalies. IEEE, IEEE Std 1044-2009 (2009)

  15. Kermeta-Breathe Life into Your Metamodels, IRISA and INRIA. http://www.kermeta.org/ (2010)

  16. Ali, S., Hemmati, H., Holt, N.E., Arisholm, E., Briand, L.C.: Model Transformations as a strategy to automate model-based testing—a tool and industrial case studies. Simula Research Laboratory, Technical Report (2010-01) (2010)

  17. QTRONIC, CONFORMIQ. http://www.conformiq.com/qtronic.php (2010)

  18. Standard for Software Quality Characteristics. International Organization for Standardization, ISO-9126-3 (2003)

  19. Software Assurance Standard. NASA Technical Standard, NASA-STD-8739.8 (2005)

  20. Larman C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. Prentice Hall, Englewood Cliffs (2004)

    Google Scholar 

  21. Bruning, S., Weissleder, S., Malek, M.: A fault taxonomy for service-oriented architecture. In: Proceedings of the 10th IEEE High Assurance Systems Engineering Symposium. IEEE Computer Society (2007)

  22. Chan K.S., Bishop J., Steyn J., Baresi L., Guinea S.: A Fault Taxonomy for Web Service Composition. Springer, Berlin (2009)

    Google Scholar 

  23. Mariani L.: A fault taxonomy for component-based software. Electron. Notes Theor. Comput. Sci. 82(6I), 55–65 (2003)

    Article  MathSciNet  Google Scholar 

  24. Hayes, J.H.: Building a requirement fault taxonomy: experiences from a NASA verification and validation research project. In: Proceedings of the 14th International Symposium on Software Reliability Engineering. IEEE Computer Society (2003)

  25. Ho, W.-M., Jézéquel, J.-M., Pennaneac’h, F., Plouzeau, N.: A toolkit for weaving aspect oriented UML designs. In: Proceedings of the 1st International Conference on Aspect-Oriented Software Development. ACM, Enschede (2002)

  26. Kienzle, J., Abed, W.A., Klein, J.: Aspect-oriented multi-view modeling. In: Proceedings of the 8th ACM International Conference on Aspect-Oriented Software Development. ACM, Charlottesville (2009)

  27. Zhang, G.: Towards aspect-oriented state machines. In: Proceedings of the 2nd Asian Workshop on Aspect-Oriented Software Development (AOASIA’06), Tokyo (2006)

  28. Zhang, G., Hölzl, M.: HiLA: High-Level Aspects for UML-state machines. In: Proceedings of the 14th Workshop on Aspect-Oriented Modeling (AOM@MoDELS’09) (2009)

  29. Zhang, G., Hölzl, M.M., Knapp, A.: Enhancing UML State Machines with Aspects (2007)

  30. Pazzi, L.: Explicit aspect composition by part-whole state charts. In: Proceedings of the Workshop on Object-Oriented Technology. Springer, Berlin (1999)

  31. France, R., Ray, I., Georg, G., Ghosh, S.: Aspect-oriented approach to early design modelling. IEEE Softw. 151(4I) (2004)

  32. Binder R.V.: Testing Object-Oriented Systems: Models, Patterns, and Tools. Addison-Wesley Longman Publishing Co., Inc., Reading (1999)

    Google Scholar 

  33. Xu, D., Xu, W., Nygard, K.: A state-based approach to testing aspect-oriented programs. In: Proceedings of the 17th International Conference on Software Engineering and Knowledge Engineering, Taiwan (2005)

  34. Lagarde, F., Espinoza, H., Terrier, F., André, C., Gérard, S.: Leveraging Patterns on Domain Models to Improve UML Profile Definition (2008)

  35. Weilkiens T.: Systems Engineering with SysML/UML: Modeling, Analysis, Design. Tim Weilkiens, Hamburg (2008)

    Google Scholar 

  36. UML Profile for Schedulability, Performance and Time. http://www.omg.org/technology/documents/profile_catalog.htm (2010)

  37. Baker P., Dai Z.R., Grabowski J., Haugen Ø., Schieferdecker I., Williams C.: Model-Driven Testing: Using the UML Testing Profile. Springer, Berlin (2007)

    Google Scholar 

  38. Steinberg D., Budinsky F., Paternostro M., Merks E.: EMF: Eclipse Modeling Framework. Addison-Wesley Professional, Reading (2008)

    Google Scholar 

  39. Filman R.E., Elrad T., Clarke S., Aksit M.: Aspect-Oriented Software Development. Addison-Wesley Professional, Reading (2004)

    Google Scholar 

  40. IBM OCL Parser, IBM. http://www-01.ibm.com/software/awdtools/library/standards/ocl-download.html (2010)

  41. OCLE. http://lci.cs.ubbcluj.ro/ocle/ (2010)

  42. EyeOCL Software. http://maude.sip.ucm.es/eos/ (2010)

  43. Pender T.: UML Bible. Wiley, New York (2003)

    Google Scholar 

  44. Laddad R.: AspectJ in Action: Practical Aspect-Oriented Programming. Manning Publications, Greenwich (2003)

    Google Scholar 

  45. Ali, S., Briand, L.C., Hemmati, H.: Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems. Simula Research Laboratory, Technical Report (2010-03) (2010)

  46. Stein, D., Hanenberg, S., Unland, R.: A UML-based aspect-oriented design notation for AspectJ. In: Proceedings of the 1st International Conference on Aspect-Oriented Software Development. ACM, Enschede (2002)

  47. Clarke, S., Walker, R.J.: Composition patterns: an approach to designing reusable aspects. In: Proceedings of the 23rd International Conference on Software Engineering. IEEE Computer Society, Toronto (2001)

  48. Stein, D., Hanenberg, S., Unland, R.: Designing aspect-oriented crosscutting in UML. In: Proceedings of the In AOSD-UML Workshop at AOSD ‘02 (2002)

  49. Utting M., Legeard B.: Practical Model-Based Testing: A Tools Approach. Morgan-Kaufmann, San Fransisco (2007)

    Google Scholar 

  50. Tessier, F., Badri, L., Badri, M.: Towards a formal detection of semantic conflicts between aspects: a model-based approach. In: Proceedings of the The 5th Aspect-Oriented Modeling Workshop in Conjunction with UML 2004 (2004)

  51. Perceptual Evaluation of Speech Quality (PESQ). http://en.wikipedia.org/wiki/PESQ (2010)

  52. Ali, S., Iqbal, M.Z., Arcuri, A., Briand, L.C.: A search-based OCL constraint solver for model-based test data generation. In: Proceedings of the 11th International Conference on Quality Software (QSIC 2011) (2011)

  53. Ali, S., Yue, T., Briand, L.C., Malik, Z.I.: Does aspect-oriented modeling help improve the readability of UML state machines? Simula Reserach Laboratory, Technical Report (2010–11) (2010)

  54. Pintér, G., Majzik, I.: Modeling and Analysis of Exception Handling by Using UML Statecharts (2005)

  55. Jiang, M., Zhang, J., Raymer, D., Strassner, J.: A modeling framework for self-healing software systems. In: Proceedings of the Models@run.time in conjunction with MoDELS/UML (2007)

  56. Lei B., Liu Z., Morisset C., Li X.: State based robustness testing for components. Electron. Notes Theor. Comput. Sci. 260, 173–188 (2010)

    Article  Google Scholar 

  57. Nebut C., Fleurey F., Traon Y.L., Jezequel J.-M.: Automatic test generation: a use case driven approach. IEEE Trans. Softw. Eng. 32(3I), 140–155 (2006)

    Article  Google Scholar 

  58. Entwisle, S., Schmidt, H., Peake, I., Kendall, E.: A model driven exception management framework for developing reliable software systems. In: Proceedings of the 10th IEEE International Enterprise Distributed Object Computing Conference. IEEE Computer Society (2006)

  59. Jingjun, Z.: Modeling Aspect-Oriented Programming with UML Profile (2009)

  60. Júnior, J.U., Camargo, V.V., Chavez, C.V.F.: UML-AOF: a profile for modeling aspect-oriented frameworks. In: Proceedings of the 13th Workshop on Aspect-Oriented Modeling. ACM, Charlottesville (2009)

  61. Aldawud, O., Elrad, T., Bader, A.: UML profile for aspect-oriented software development. In: Proceedings of the The Third International Workshop on Aspect Oriented Modeling (2003)

  62. Evermann, J.: A meta-level specification and profile for AspectJ in UML. In: Proceedings of the 10th International Workshop on Aspect-Oriented Modeling. ACM, Vancouver (2007)

  63. Zhang, J., Cottenier, T., Berg, A.V.D., Gray, J.: Aspect composition in the motorola aspect-oriented modeling weaver. J. Object Technol. 6, 7I (2007)

  64. Petriu D., Rouquette N., Haugen Ø., Morin B., Klein J., Kienzle J., Jézéquel J.-M.: Flexible Model Element Introduction Policies for Aspect-Oriented Modeling. Springer, Berlin (2010)

    Google Scholar 

  65. Whittle J., Jayaraman P.: MATA: A Tool for Aspect-Oriented Modeling Based on Graph Transformation. Springer, Berlin (2008)

    Google Scholar 

  66. Xu, D., Xu, W.: State-based incremental testing of aspect-oriented programs. In: Proceedings of the 5th International Conference on Aspect-Oriented Software Development. ACM, Bonn (2006)

  67. Xu, D., Xu, W., Nygard, K.: A State-based approach to testing aspect-oriented programs. In: Proceedings of the 17th International Conference on Software Engineering and Knowledge Engineering (2005)

  68. Xu, W., Xu, D.: A model-based approach to test generation for aspect-oriented programs. In: Proceedings of the First Workshop on Testing Aspect-Oriented Programs (2005)

  69. Bruel, J.-M., Araújo, J., Moreira, A., Royer, A.: Using aspects to develop built-in tests for components. In: Proceedings of the In AOSD Modeling with UML Workshop. 6th International Conference on the Unified Modeling Language (2003)

  70. Bruel, J.M., Moreira, A., Araújo, J.: Adding Behavior Description Support to COTS Components through the Use of Aspects. In: Proceedings of the 2nd Workshop on Models for Non-functional Aspects of Component-Based Software (2005)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Shaukat Ali.

Additional information

Communicated by Dr. Jean-Michel Bruel.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ali, S., Briand, L.C. & Hemmati, H. Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems. Softw Syst Model 11, 633–670 (2012). https://doi.org/10.1007/s10270-011-0206-z

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-011-0206-z

Keywords

Navigation