An evaluation method for aspectual modeling of distributed software architectures

Dealing with crosscutting requirements in software development usually makes the process more complex. Modeling and analyzing of these requirements in the software architecture facilitate detecting architectural risks early. Distributed systems have more complexity and so these facilities are much useful in development of such systems. Aspect oriented Architectural Description Languages (ADD) have emerged to represent solutions for discussed problems; nevertheless, imposing radical changes to existing architectural modeling methods is not easily acceptable by architects. Software architecture analysis methods, furthermore, intend to verify that the quality requirements have been addressed properly. In this paper, we enhance ArchC# through utilization of aspect features with an especial focus on Non-Functional Requirements (NFR). ArchC# is mainly focused on describing architecture of distributed systems; in addition, it unifies software architecture with an object- oriented implementation to make executable architectures. Moreover, in this paper, a comparative analysis method is presented for evaluation of the result. All of these materials are illustrated along with a case study.

[1]  Rick Kazman,et al.  The architecture tradeoff analysis method , 1998, Proceedings. Fourth IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.98EX193).

[2]  Richard N. Taylor,et al.  A comprehensive approach for the development of modular software architecture description languages , 2005, TSEM.

[3]  Hamid Bagheri,et al.  Injecting security as aspectable NFR into Software Architecture , 2007, 14th Asia-Pacific Software Engineering Conference (APSEC'07).

[4]  Amar Ramdane-Cherif,et al.  ISO quality standards for measuring architectures , 2004, J. Syst. Softw..

[5]  Leonard J. Bass,et al.  SAAM: a method for analyzing the properties of software architectures , 1994, Proceedings of 16th International Conference on Software Engineering.

[6]  Saeed Parsa,et al.  ArchC#: a new architecture description language for distributed systems , 2007, FSEN'07.

[7]  Hamid Bagheri,et al.  An Aspect Enhanced Method of NFR Modeling in Software Architecture , 2007, 10th International Conference on Information Technology (ICIT 2007).

[8]  Felix Bachmann,et al.  SACAM: The Software Architecture Comparison Analysis Method , 2003 .

[9]  Amar Ramdane-Cherif,et al.  Quality Characteristics for Software Architecture , 2003, J. Object Technol..

[10]  Paul Clements Active Reviews for Intermediate Designs , 2000 .