Specifying redundancy tactics as crosscutting concerns using aspect-oriented modeling

Xiang QIU, Li ZHANG

PDF(1633 KB)
PDF(1633 KB)
Front. Comput. Sci. ›› 2014, Vol. 8 ›› Issue (6) : 977-995. DOI: 10.1007/s11704-014-3390-5
RESEARCH ARTICLE

Specifying redundancy tactics as crosscutting concerns using aspect-oriented modeling

Author information +
History +

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 defined 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.

Keywords

redundancy tactic, aspect-oriented modeling, weaving algorithm / reuse directives

Cite this article

Download citation ▾
Xiang QIU, Li ZHANG. Specifying redundancy tactics as crosscutting concerns using aspect-oriented modeling. Front. Comput. Sci., 2014, 8(6): 977‒995 https://doi.org/10.1007/s11704-014-3390-5

References

[1]
Bass L, Clements P, Kazman R. Software architecture in practice. Addison-Wesley Professional, 2003
[2]
Hanmer R. Patterns for fault tolerant software. John Wiley & Sons, 2007
[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
[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
CrossRef 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
CrossRef Google scholar
[6]
Harrison N B, Avgeriou P. Implementing reliability: the interaction of requirements, tactics and architecture patterns. In: Architecting dependable systems VII, 97, 2010
[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
[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
CrossRef 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
[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
CrossRef 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
CrossRef 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
CrossRef Google scholar
[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
[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
[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
[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
[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).
[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
[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).
[29]
R. Allen. A formal approach to software architecture. PhD Thesis, Carnegie Mellon University, 1997
[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
CrossRef 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
CrossRef 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
[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
[34]
Cottenier T, Berg A, Elrad T. The Motorola WEAVR: model weaving in a large industrial context. In: Proceedings of the 6th InternationalConference on Aspect-Oriented Software Development. 2006, 1−10

RIGHTS & PERMISSIONS

2014 Higher Education Press and Springer-Verlag Berlin Heidelberg
AI Summary AI Mindmap
PDF(1633 KB)

Accesses

Citations

Detail

Sections
Recommended

/