Skip to main content
Log in

Specifying redundancy tactics as crosscutting concerns using aspect-oriented modeling

  • Research Article
  • Published:
Frontiers of Computer Science Aims and scope Submit manuscript

Abstract

Various redundancy tactics can be modeled at the design stage of safety-critical systems thereby providing a set of fault-tolerance guidelines for subsequent development activities. However, existing approaches usually interweave redundancy tactics into the functional models making them complex and cluttered; the maintenance of such models is time-consuming and error-prone. To address this problem, we provide a modeling approach to separate the redundancy tactics from the base functional models using aspect-oriented modeling. More specifically, the conceptual models of the redundancy tactics and their semantic constraints are first de- fined for deriving the relevant aspects. Subsequently, a UML profile is proposed to specify the tactic aspects followed by mapping these concepts to the corresponding concepts of aspect-oriented modeling based on pre-defined principles. In accordance with our proposed profile, reuse directives are applied to handle the overlap of structural features between redundancy tactics and other kinds of tactic. Based on our tactic aspects and their configured attributes, a weaving algorithm is proposed to associate the tactic aspects with the base functional models. The proposed approach is compared with a traditional tactic modeling approach using two safety-critical systems, revealing that: 1) our approach significantly reduces the number of extra model elements needed in the tactic design stage; 2) our approach can largely avoid the impact of changing of the base functional model as the model evolves.

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

Access this article

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

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Bass L, Clements P, Kazman R. Software architecture in practice. Addison-Wesley Professional, 2003

    Google Scholar 

  2. Hanmer R. Patterns for fault tolerant software. John Wiley & Sons, 2007

    Google Scholar 

  3. Ziani A, Hamid B, Bruel J. A model-driven engineering framework for fault tolerance in dependable embedded systems design. In: Proceedings of the 38th EUROMICRO Conference on Software Engineering and Advanced Applications. 2012, 166–169

    Google Scholar 

  4. Kim S, Kim D K, Lu L, Park S. Quality-driven architecture development using architectural tactics. Journal of Systems and Software, 2009, 82(8): 1211–1231

    Article  Google Scholar 

  5. Harrison N B, Avgeriou P. Incorporating fault tolerance tactics in software architecture patterns. In: Proceedings of the 2008 RISE/EFTS Joint International Workshop on Software Engineering for Resilient Systems. 2008, 9–18

    Chapter  Google Scholar 

  6. Harrison N B, Avgeriou P. Implementing reliability: the interaction of requirements, tactics and architecture patterns. In: Architecting dependable systems VII, 97–122. Springer, 2010

    Chapter  Google Scholar 

  7. Khaled C V E O H, Khan M. Addressing non-functional properties in software architecture using ADL. In: Proceedings of the 6th Australasian Workshop on Software and System Architectures (AWSA 2005). 2005, 6–12

    Google Scholar 

  8. Wimmer M, Schauerhuber A, Kappel G, Retschitzegger W, Schwinger W, Kapsammer E. A survey on UML-based aspect-oriented design modeling. ACM Computing Surveys, 2011, 43(4): 1–33

    Article  Google Scholar 

  9. Pinto M, Fuentes L. Modeling quality attributes with aspect-oriented architectural templates. Journal of Universal Computer Science, 2011, 17(5): 639–669

    Google Scholar 

  10. Seperation of Concerns. http://en.wikipedia.org/wiki/Separation_of_concerns

  11. Ali S, Briand C L, Hemmati H. Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems. Systems and Software Modeling, 2012, 11(4): 633–670

    Article  Google Scholar 

  12. Cross-cutting concern. http://en.wikipedia.org/wiki/Cross-cutting_concern

  13. Zhang T, Zhang Y, Yu X F, Wang L Z, Li X D. MDA based design patterns modeling and model transformation. Journal of Software, 2008, 19(9): 2203–2217

    Article  Google Scholar 

  14. Pawlak R, Seinturier L, Duchien L, Martelli L, Legond-Aubry F, Florin G. Aspect-oriented software development with Java aspect components. Aspect-Oriented Software Development, 2005, 343-369

  15. EyeOCL. http://www.bm1software.com/eos/

  16. MagicDraw. www.nomagic.com

  17. Muller P-A, Fleurey F, Jézéquel J M. Weaving executability into object-oriented meta-languages. Lecture Notes in Computer Science, 2005, 264-278

  18. Xu D, Xu W, Nygard K. A state-based approach to testing aspectoriented programs. In: Proceedings of the 17th International Conference on Software Engineering and Knowledge Engineering. 2006, 180–189

    Google Scholar 

  19. Stein D, Hanenberg S, Unl R. Designing aspect-oriented crosscutting in UML. In: Proceedings of the 1st International Workshop on Aspect- Oriented Modeling with UML. 2002, 1–6

    Google Scholar 

  20. Integrated System Model. http://www.aadl.info/aadl/currentsite/

  21. Architecture Analysis & Design Language. http://www.aadl.info/

  22. Mylopoulos J. Structured analysis and design technique. Conceptual Modeling III, 2008, 1–13

    Google Scholar 

  23. Qiu X, Zhang L. Providing support for Specifying Redundancy Tactics Using Aspect-Oriented Modeling. In: Proceedings of the 13th International Conference on Quality Software. 2013, 183–186

    Google Scholar 

  24. Object Constraint Language, Version 2.0. http://www.omg.org/spec/OCL/2.0/.

  25. Qiu X, Fan Z, Zhang L. An Architecture modeling method for describing redundancy tactics of large-scale and software-intensive systems. SEI-BUAA Technical Report 2013-2(V.1). http://www.sei.buaa.edu.cn/english/a/publication/2013/0323/32.html

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

    Google Scholar 

  27. IBM Rational Software Architect. http://www.ibm.com/developerworks/cn/downloads/r/architect/

  28. Zhiqiang F, Yue T, Zhang L. An architecture modeling methodology for ship command and control systems. SEI-BUAA Technical Report 2012-5(V.1). http://www.sei.buaa.edu.cn/english/a/publication/2013/0315/30.html

  29. R. Allen. A formal approach to software architecture. PhD Thesis, Carnegie Mellon University, 1997

    Google Scholar 

  30. Xu L H, Ziv H, Alspaugh T A, Richardson D. An architectural pattern for non-functional dependability requirements. Journal of Systems and Software, 2006, 79(10):1370–1378

    Article  Google Scholar 

  31. Ray I, France R, Li N, Georg G. An aspect-based approach to modeling access control concerns, Information and Software Technology, 2004, 46(9):575–587

    Article  Google Scholar 

  32. Loiret F, Rouvoy R, Seinturier L, Romero D, Senechal K, Plsek A. An aspect-oriented framework for weaving domain-specific concerns into component-based systems. Journal of Universal Computer Science, 2011, 17(5): 742–776

    Google Scholar 

  33. France R, Fleurey F, Reddy R. Providing support for model composition in metamodels. In: Proceedings of the 11th International EDOC Conference. 2007, 15–19

    Google Scholar 

  34. Cottenier T, Berg A, Elrad T. The Motorola WEAVR: model weaving in a large industrial context. In: Proceedings of the 6th International Conference on Aspect-Oriented Software Development. 2006, 1–10

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiang Qiu.

Additional information

Xiang Qiu received his BE in computer science and technology from Beihang University, China in 2008. He is now a PhD candidate of the School of Computer Science and Engineering, Beihang University, China. His major field of study includes software architecturemodeling, and system reliability and analysis.

Li Zhang received her BS, MS, and PhD from the School of Computer Science and Engineering, Beihang University, China in 1989, 1992, and 1996, respectively. She is now a professor in the School of Computer Science and Engineering, Beihang University, China. She is a committee member of Software Engineering in China Computer Federation (CCF), committee member of education in CCF, and a committee member of computer applications in the Chinese Society of Astronautics (CSA). She is interested in software engineering, software architecture modeling, and system reliability analysis.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Qiu, X., Zhang, L. Specifying redundancy tactics as crosscutting concerns using aspect-oriented modeling. Front. Comput. Sci. 8, 977–995 (2014). https://doi.org/10.1007/s11704-014-3390-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11704-014-3390-5

Keywords

Navigation