Skip to main content

Model-Centric Development of Highly Available Software Systems

  • Chapter
Architecting Dependable Systems IV

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4615))

Abstract

In today’s rapidly evolving marketplace, the ability to quickly build and deploy new systems is an increasingly critical factor in a company’s success. For certain domains, such as telecommunications, it is taken for granted that systems will be highly available, with expectations of “5 9s” or even higher availability, translating to five minutes or less downtime per year. However, building highly available systems is generally very challenging, and becoming even more challenging as the systems increase in complexity. High availability (HA) middleware solutions partially address this challenge by providing common HA services that system developers can use. However, developers still need to spend significant effort integrating their systems with the HA middleware. In this paper, we present the Aurora Management Workbench (AMW) as a solution to the integration problem. AMW is an HA middleware and tools for building highly available distributed software systems. It is unique in its approach for developing highly available systems: developers focus only on describing key architectural abstractions of their system as well as system high availability needs in the form of a model. Tools then use the model to generate much of the code needed to integrate the system with the AMW HA middleware, which also uses the model to coordinate and control HA services at run-time. This paper describes our approach and our initial successes using it to develop commercial telecom systems.

This work was done while the author was at Bell Laboratories.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. SEI Series in Software Engineering (2003)

    Google Scholar 

  2. Baxter, I., Pidgeon, C., Mehlich, M.: DMS: Program Transformations for Practical Scalable Software Evolution. In: Proceedings of the 2004 International Conference on Software Engineering, Scotland, UK (May 2004)

    Google Scholar 

  3. Bianchini, R., Buskens, R.: Implementation of On-Line Distributed System-Level Diagnosis Theory. IEEE Transactions on Computers 41(5) (1992)

    Google Scholar 

  4. Birman, K.: ISIS: A System for Fault Tolerance in Distributed Systems. Technical Report TR 86-744, Department of Computer Science, Cornell University, Ithaca, NY (April 1986)

    Google Scholar 

  5. Borland C++ Builder, http://www.borland.com/us/products/cbuilder/index.html

  6. Buskens, R., Sabnani, K.: Towards Rapid Development of Configurable, Reliable, and Scalable Wireless Applications, PIMRC (2000)

    Google Scholar 

  7. Childs, A., Greenwald, J., et al.: CALM and Cadena: Metamodeling for Component-Based Product Line Development. IEEE Computer 39(2) (2006)

    Google Scholar 

  8. Chung, P., Huang, Y., Yajnik, S., et al.: DOORS – Providing Fault Tolerance of CORBA Objects. In: Middleware 1998. IFIP International Conference On Distributed Systems Platforms and Open Distributed Processing, The Lake District, England (1988)

    Google Scholar 

  9. Clovis Software, http://www.clovis.com

  10. Cukier, M., Ren, J., Sabnis, C., et al.: AQuA: An Adaptive Architecture that Provides Dependable Distributed Objects. In: Proceeding of the IEEE 17th Symposium on Reliable Distributed Systems (SRDS-17), West Lafayette, IN (1998)

    Google Scholar 

  11. Eclipse Integrated Development Environment (IDE), http://www.eclipse.org

  12. Enea, http://www.enea.com

  13. Ericsson, Eternal Systems, et al.: FT-CORBA. Joint Revised Submission. OMG TC Document orbos/99-12-19, OMG, Framingham, MA (1999)

    Google Scholar 

  14. GoAhead Software, http://www.goahead.com

  15. Hatcliff, J., Deng, W., et al.: Cadena: An Integrated Development, Analysis, and Verification Environment for Component-Based Systems. In: Proceedings of the 2003 International Conference on Software Engineering, Portland, Oregon (2003)

    Google Scholar 

  16. IBM Rational Software Architect, www.ibm.com/software/awdtools/architect/swarchitect/index.html

  17. Iyer, R.K., Kalbarczyk, Z., Whisnant, K., Bagchi, S.: A Flexible Software Architecture for High Availability Computing. In: Proceedings of the High-Assurance Systems Engineering Symposium, Washington DC (1998)

    Google Scholar 

  18. Kiczales, G., Lamping, J., et al.: Aspect-Oriented Programming. In: Proceedings of the 1997 European Conference on Object-Oriented Programming, Jyvaskyla, Finland (1997)

    Google Scholar 

  19. Ledeczi, A., Maroti, M., et al.: The Generic Modeling Environment. Workshop on Intelligent Signal Processing, Budapest, Hungary (May 2001)

    Google Scholar 

  20. Majzik, I., Huszcrl, G.: Towards Dependability Modeling of FT-CORBA Architectures. In: Proceedings of the 4th European Dependable Computing Conference (2002)

    Google Scholar 

  21. Martin, J.: Rapid Application Development, Macmillan Publishing Co. Inc. (1991)

    Google Scholar 

  22. Microsoft Visual Studio, msdn.microsoft.com/vstudio

  23. Modarressi, A.R., Skoog, R.A.: Signaling System No. 7: A Tutorial. IEEE Communications Magazine 28(7) (1990)

    Google Scholar 

  24. Moser, L.E., Melliar-Smith, P.M., et al.: The Eternal System: An Architecture for Enterprise. In: Proceeding of the 3rd International Enterprise Distributed Object Computing, Mannheim, Germany (1999)

    Google Scholar 

  25. Ren, Y., Buskens, R., Gonzalez, O.: Dependable Initialization of Large-Scale Distributed Software. In: Proceedings of the 2004 International Conference on Dependable Systems and Networks (2004)

    Google Scholar 

  26. van Renesse, R., Maffeis, S., Birman, K.: Horus: A Flexible Group Communication System. Communications of the ACM 39(4) (1986)

    Google Scholar 

  27. Rodrigues, G., Rosenblum, D., Emmerich, W.: A Model Driven Approach for Software Systems Reliability. In: Proceedings of the 26th International Conference on Software Engineering (2004)

    Google Scholar 

  28. Royce, W.: Managing the Development of Large Software Systems. In: Proceedings of IEEE WESCON, vol. 26(8) (1970)

    Google Scholar 

  29. Roy-Chowdhury, A.: Manual and Compiler Assisted Methods for Generating Fault-Tolerant Parallel Programs, PhD thesis, University of Illinois at Urbana-Champaign (1996)

    Google Scholar 

  30. Schmidt, D.: Model-Driven Engineering. IEEE Computer 39(2) (2006)

    Google Scholar 

  31. Service Availability Forum, http://www.saforum.org

  32. Slaby, J.M., Baker, S., Hill, J., Schmidt, D.C.: Applying System Execution Modeling Tools to Evaluate Enterprise Distributed Real-Time and Embedded System QoS. In: RTCSA 2006. Proceedings of the 12th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, IEEE Computer Society Press, Los Alamitos (2006)

    Google Scholar 

  33. Telelogic Rhapsody, www.telelogic.com/Products , www.ilogix.com/sublevel.aspx?id=53

  34. Unified Modeling Language, http://www.uml.org

  35. Waddington, D.G., Yao, B.: High Fidelity C++ Code Transformation. In: Proceedings of the 5th Workshop on Language Descriptions, Tools and Applications (LDTA) (April 2005)

    Google Scholar 

  36. Zorpette, G.: Keeping the Phone Lines Open. IEEE Spectrum 26(6) (1989)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rogério de Lemos Cristina Gacek Alexander Romanovsky

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Buskens, R., Gonzalez, O. (2007). Model-Centric Development of Highly Available Software Systems. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds) Architecting Dependable Systems IV. Lecture Notes in Computer Science, vol 4615. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74035-3_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74035-3_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-74033-9

  • Online ISBN: 978-3-540-74035-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics