Skip to main content
Log in

xBreeze/ADL: A language for software architecture specification and analysis

  • Research Article
  • Published:
International Journal of Automation and Computing Aims and scope Submit manuscript

Abstract

Architecture description languages play an important role in modelling software architectures. However, many architecture description languages (ADLs) are either unable to deal with the verification and dynamic changes directly or too formal to be understood and manipulated. This paper presents xBreeze/ADL, a novel extensible markup language (XML)-based verification and evolution supported architecture description language, which is specifically designed for modelling the software architecture of large, complex systems. Five principle design goals are 1) to separate template from instance to define a loose coupling structure, 2) to present virtual and concrete link to identify service execution flow, 3) to clearly represent component behaviour to specify architecture semantics, 4) to introduce multi-dimension restrictions to define the architecture constraints, and 5) to use the graph transformation theory to implement the architecture configuration management (i.e., reconfiguration and verification). Various advanced features of xBreeze/ADL are illustrated by using an example on online movie ticket booking system.

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.

Similar content being viewed by others

References

  1. C. Li, L. P. Huang, L. X. Chen, C. Y. Yu. Breeze/ADL: Graph grammar support for an XML-based software architecture description language. In Proceedings of the 37th IEEE Computer Software and Applications Conference, IEEE, Kyoto, Japan, pp. 800–805, 2013.

    Google Scholar 

  2. C. Li, L. P. Huang, L. X. Chen, C. Y. Yu. BGG: A graph grammar approach for software architecture verification and reconfiguration. In Proceedings of the 7th International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, IEEE, Taichung, Taiwan, China, pp. 291–298, 2013.

    Google Scholar 

  3. R. Allen, D. Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, vol. 6, no. 3, pp. 213–249, 1997.

    Article  Google Scholar 

  4. R. Allen, R. Douence, D. Garlan. Specifying and analyzing dynamic software architectures. In Proceedings of the First International Conference on Fundamental Approaches to Software Engineering, Springer, Lisbon, Portugal, vol. 1382, pp. 21–37, 1998.

    Google Scholar 

  5. D. Garlan. An Introduction to the Aesop System, [Online], Available: http://www.cs.cmu.edu/afs/cs/project/able/www/aesop/html/aesopoverview.ps, May 10, 2015.

    Google Scholar 

  6. A. Terry, R. London, G. Papanagopoulos, M. Devito. The ARDEC/Teknowledge Architecture Description Language (ArTek), Version 4.0, Technical Report, Teknowledge Federal System and U. S. Army Armament Research, Development and Engneer. Centery, USA, 1995.

    Google Scholar 

  7. N. Medvidovic, P. Oreizy, J. E. Robbins, R. N. Taylor. Using object-oriented typing to support architectural design in the C2 style. ACM SIGSOFT Software Engineering Notes, vol. 21, no. 6, pp. 24–32, 1996.

    Article  Google Scholar 

  8. P. Binns, M. Englehart, M. Jackson, S. Vestal. Domainspecific software architectures for guidance, navigation and control. International Journal of Software Engineering and Knowledge Engineering, vol. 6, no. 2, pp. 201–227, 1996.

    Article  Google Scholar 

  9. W. Tracz. LILEANNA: A parameterized programming language. In Proceedings of IEEE 2nd International Workshop on Software Reusability, IEEE, Lucca, Italy, pp. 66–78, 1993.

    Google Scholar 

  10. M. Moriconi, R. A. Riemenschneider. Introduction to SADL 1.0: A Language for Specifying Software Architecture Hierarchies, Technical Report SRI-CSL-97-01, SRI International, USA, 1997.

    Google Scholar 

  11. M. M. Gorlick, R. R. Razouk. Using weaves for software construction and analysis. In Proceedings of IEEE 13th International Conference on Software Engineering, IEEE, Austin, USA, pp. 23–34, 1991.

    Chapter  Google Scholar 

  12. J. Magee, N. Dulay, S. Eisenbach, J. Kramer. Specifying distributed software architectures. In Proceedings of the 5th European Software Engineering Conference, Springer, Sitges, Spain, vol. 989, pp. 137–153, 1995.

    Google Scholar 

  13. D. C. Luckham, J. Vera. An event-based architecture definition language. IEEE Transactions on Software Engineering, vol. 21, no. 9, pp. 717–734, 1995.

    Article  Google Scholar 

  14. M. Shaw, R. DeLine, D. Klein, T. Ross, D. Young, G. Zelesnik. Abstractions for software architecture and tools to support them. IEEE Transactions on Software Engineering, vol. 21, no. 4, pp. 314–335, 1995.

    Article  Google Scholar 

  15. D. Garlan, R. Monroe, D. Wile. ACME: An architecture description interchange language. In Proceedings of the 1997 Conference of the Centre for Advanced Studies on Collaborative Research, ACM, Ontario, Canada, pp. 159–173, 1997.

    Google Scholar 

  16. E. M. Dashofy, A. Van der Hoek, R. N. Taylor. A highlyextensible, XML-based architecture description language. In Proceedings of 2001 Working IEEE/IFIP Conference on Software Architecture, IEEE, Amsterdam, The Netherlands, pp. 103–112, 2001.

    Chapter  Google Scholar 

  17. H. Mei, F. Chen, Q. X. Wang, Y. D. Feng. ABC/ADL: An ADL supporting component composition. In Proceedings of the 4th International Conference on Formal Engineering Methods, Springer, Shanghai, China, vol. 2495, pp. 38–47, 2002.

    MATH  Google Scholar 

  18. C. A. R. Hoare. Communicating sequential processes. Communications of the ACM, vol. 21, no. 8, pp. 666–677, 1978.

    Article  MathSciNet  MATH  Google Scholar 

  19. G. Taentzer. AGG: A graph transformation environment for modeling and validation of software. In Proceedings of the 2nd International Workshop, Lecture Notes in Computer Science, Springer, Charlottesville, USA, vol. 3062, pp. 446–453, 2004.

    Google Scholar 

  20. W. P. Jiao, H. Mei. Automated adaptations to dynamic software architectures by using autonomous agents. Engineering Applications of Artificial Intelligence, vol. 17, no. 7, pp. 749–770, 2004.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hong-Ji Yang.

Additional information

This work was supported by National Natural Science Foundation of China (No. 71473018).

Recommended by Associate Editor Matjaz Gams

Chen Li received the B. Sc. degree in computer science and technology from University of Science and Technology of China, China in 2003, the M. Sc. degree in computer applications technology from the University of Shanghai for Science and Technology, China in 2010, and the Ph.D. degree in computer science and technology from Shanghai Jiao Tong University, China in 2015. Currently, he is a postdoctoral research assistant in School of Humanities and Cultural Industries at Bath Spa University, UK. He has published about 28 refereed journal and conference papers. He is a member of CCF and IEEE.

His research interests include software architecture, software reliability and formal methods.

ORCID iD: 0000-0001-6249-8957

Hong-Yi Yang received the B. Sc. and M. Sc. degrees in computer science from the Jilin University, China in 1982 and 1985, respectively, and the Ph.D. degree in computer science from Durham University, UK in 1994. He was a faculty member at Jilin University, China in 1985, at Durham University, UK in 1989, at De Montfort University, UK in 1993, and at Bath Spa University, UK in 2013. Currently, he is a professor in School of Humanities and Cultural Industries at Bath Spa University, UK. He has published about 400 refereed journal and conference papers. He has become IEEE Computer Society Golden Core member since 2010. Also, he is a member of EPSRC Peer Review College since 2003. He is the editor in chief of International Journal of Creative Computing, InderScience.

His research interests include software engineering, creative computing, web and distributed computing.

ORCID iD: 0000-0001-6561-3631

Mei-Yu Shi received the B. Sc. and M. Sc. degrees in economic from the Jilin University, China in 1990 and 1997, respectively, and the Ph. D. degree in economic from Graduate School of Chinese Academy of Social Sciences, China in 2003. Currently, she is a professor at the Tourism Institute of Beijing Union University, China. She has published about 40 refereed journal and conference papers.

Her research interests include intangible cultural heritage tourism development, tourism shopping and tourism products development, convention and exhibition tourism, tourism destination marketing.

Wei Zhu received the Ph.D. degree in computer science and computer engineering from La Trobe University, Australia in 2013. Currently, he is a lecturer of Tourism Institute of Beijing Union University, China.

His research interests include artificial intelligence and data mining in tourism.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Li, C., Yang, HJ., Shi, MY. et al. xBreeze/ADL: A language for software architecture specification and analysis. Int. J. Autom. Comput. 13, 552–564 (2016). https://doi.org/10.1007/s11633-016-1028-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11633-016-1028-9

Keywords

Navigation