Architectural description of dependable software systems

  • Cristina Gacek
  • Rogério de Lemos

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    Allen, RJ (1997) A Formal Approach to Software Architecture. Technical Report CMUCS-97-144. Carnegie Mellon UniversityGoogle Scholar
  2. [2]
    Allen R, Garlan D (1997) A Formal Basis for Architectural Connection. ACM Transactions on Software Engineering and Methodology 6(3):213–249CrossRefGoogle Scholar
  3. [3]
    Anderson T, Lee PA (1981) Fault Tolerance: Principles and Practice. Prentice-HallGoogle Scholar
  4. [4]
    Avizienis A (1995) The N-Version Approach to Fault-tolerant Software. IEEE Transactions on Software Engineering 11(2): 1491–1501Google Scholar
  5. [5]
    Avizienis A, Laprie JC, Randell B, Landwehr C (2004) Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing 1(1): 11–33CrossRefGoogle Scholar
  6. [6]
    Balsamo S, Bernado M, Simeoni M (2003) Performance Evaluation at the Architecture Level. In: Bernado M, Inverardi P (eds). Formal Methods for Software Architectures. Lecture Notes in Computer Science 2804. Springer, Berlin, pp. 207–258Google Scholar
  7. [7]
    Balzer R (1999) Instrumenting, Monitoring, and Debugging Software Architectures. http://www.isi.edu/divisions/index.htmlGoogle Scholar
  8. [8]
    Balzer R (2001) The DASADA Probe Infrastructure. Internal Report. Teknowledge Corporation. USAGoogle Scholar
  9. [9]
    Bass L, Clements P, Kazman R (1998) Software Architecture in Practice. Addison WesleyGoogle Scholar
  10. [10]
    Bernado M, Donatiello L, Ciancarini P (2002) Stochastic Process Algebra: From an Algebraic Formalism to an Architectural Description Language. In: Performance Evaluation of Complex Systems: Techniques and Tools. Lecture Notes in Computer Science 2459. Springer, Berlin, pp. 236–260Google Scholar
  11. [11]
    Bertolino A, Inverardi P, Muccini H (2003) Formal Methods in Testing Software Architecture. In: Bernado M, Inverardi P (eds). Formal Methods for Software Architectures. Lecture Notes in Computer Science 2804. Springer, Berlin, pp. 122–147Google Scholar
  12. [12]
    Björkander M, Kobryn C (2003) Architecting Systems with UML 2.0. IEEE Software 20(4): 57–61CrossRefGoogle Scholar
  13. [13]
    Boehm B (1996) Anchoring the Software Process. IEEE Software 13(4): 73–82CrossRefGoogle Scholar
  14. [14]
    Bradbury JS, Cordy JR, Dingel J, Wermelinger M (2004) A Survey of Self-Management in Dynamic Software Architecture Specifications. Proceedings of the 2004 ACM SIGSOFT Workshop On Self-Managed Systems (WOSS’04). Newport Beach, CA, USAGoogle Scholar
  15. [15]
    Castor Filho F, Guerra PA de C, Pagano VA, Rubira CMF (2005) A Systematic Approach for Structuring Exception Handling in Robust Component-Based Software. Journal of the Brazilian Computer Society 3(10):5–19Google Scholar
  16. [16]
    Clements P (1996) A Survey of Architecture Description Languages. Proceedings of the 8th International Workshop on Software Specification and Design (IWSSD’96). Paderborn, Germany. pp. 16–25Google Scholar
  17. [17]
    Clements P, et al (2003) Documenting Software Architectures: Views and Beyond. Addison-WesleyGoogle Scholar
  18. [18]
    Clements P, Kazman R, Klein M (2002) Evaluating Software Architectures: Methods and Case Studies. Addison-WesleyGoogle Scholar
  19. [19]
    Cook JE, Dage JA (1999) Highly Reliable Upgrading of Components. Proceedings of the 21st International Conference on Software Engineering (ICSE’99). Los Angeles, CA, USA. ACM Press. pp. 203–212Google Scholar
  20. [20]
    Dashofy E, van der Hoek A, Taylor RN (2002) Towards Architecture-Based Self-Healing Systems. Proceedings of the 1st ACM SIGSOFT Workshop on Self-Healing Systems (WOSS’02). Charleston, SC, USA. pp. 21–26Google Scholar
  21. [21]
    de Lemos R (2004) Analysing Failure Behaviours in Component Interaction. Journal of Systems and Software 71(1–2): 97–115Google Scholar
  22. [22]
    de Lemos R, Gacek C, Romanovsky A (2003) Architectural Mismatch Tolerance. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 175–196Google Scholar
  23. [23]
    DeLine R (1999) A Catalog of Techniques for Resolving Packaging Mismatch. Proceedings of the 5th Symposium on Software Reusability (SSR’99). Los Angeles, CA. pp. 44–53Google Scholar
  24. [24]
    Dias M, Richardson D (2003) The Role of Event Description in Architecting Dependable Systems. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 150–174Google Scholar
  25. [25]
    Egyed A, Medvidovic N, Gacek C (2000) Component-Based Perspective on Software Mismatch Detection and Resolution. IEE Proceedings on Software 147(6): 225–236CrossRefGoogle Scholar
  26. [26]
    Gacek C (1998) Detecting Architectural Mismatches during System Composition. PhD Dissertation. Center for Software Engineering. University of Southern California. Los Angeles, CA, USAGoogle Scholar
  27. [27]
    Gacek C, Abd-Allah A, Clark B, Boehm B (1995) On the Definition of Software Architecture. Proceedings of the First International Workshop on Architectures for Software Systems (ISAW). Seattle, WA. pp. 85–95Google Scholar
  28. [28]
    Garlan D (2003) Formal Modeling and Analysis of Software Architectures. In: Bernado M, Inverardi P (eds). Formal Methods for Software Architectures.. Lecture Notes in Computer Science 2804. Springer, Berlin, pp. 1–24Google Scholar
  29. [29]
    Garlan D, Allen R, Ockerbloom J (1995) Architectural Mismatch: Why Reuse is so Hard. IEEE Software 12(6):17–26CrossRefGoogle Scholar
  30. [30]
    Garlan D, Monroe RT, Wile D (2000) Acme: Architectural Description of Component-Based Systems. Leavens GT, Sitaraman M (eds). Foundations of Component-Based Systems. Cambridge University PressGoogle Scholar
  31. [31]
    Garlan D, Cheng SW, Kompanek AJ (2001) Reconciling the Needs of Architectural Description with Object-Modeling Notations. Science of Computer Programming Journal 44: 23–49CrossRefGoogle Scholar
  32. [32]
    Garlan D, Cheng SW, Schmerl B (2003) Increasing System Dependability through Architecture-based Self-Repair. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 61–89Google Scholar
  33. [33]
    Gokhale SS, Horgan JR, Trivedi K (2003) Specification-Level Integration of Simulation and Dependability Analysis. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 245–266Google Scholar
  34. [34]
    Grassi V (2005) Architecture-based Reliability Prediction for Service-oriented Computing. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems III. Lecture Notes in Computer Science 3549. Springer, Berlin, pp. 291–309Google Scholar
  35. [35]
    Guerra PA de C, Rubira C, de Lemos R (2003) A Fault-Tolerant Software Architecture for Component-Based Systems. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 129–149Google Scholar
  36. [36]
    Guerra PA de C, Rubira C, Romanovsky A, de Lemos R (2004) A Dependable Architecture for COTS-based Software Systems using Protective Wrappers. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems II. Lecture Notes in Computer Science 3069. Springer, Berlin, pp. 144–166Google Scholar
  37. [37]
    Holzmann GJ (1997) The SPIN Model Checker. IEEE Transactions on Software Engineering 23: 279–295CrossRefGoogle Scholar
  38. [38]
    Issarny V, Banatre JP (2001) Architecture-based Exception Handling. Proceedings of the 34th Annual Hawaii International Conference on System Sciences (HICSS’34).Google Scholar
  39. [39]
    Issarny V, Zarras A (2003) Software Architecture and Dependability. Formal Methods for Software Architectures. In: Bernado M, Inverardi P (eds). Lecture Notes in Computer Science 2804. Springer, Berlin, pp. 259–285Google Scholar
  40. [40]
    Kazman R, Abowd G, Bass L, Webb M (1994) SAAM: A Method for Analyzing the Properties of Software Architectures. Proceedings of the 16th International Conference on Software Engineering (ICSE 1990). Sorrento, Italy. pp. 81–90Google Scholar
  41. [41]
    Kazman R, Klein M, Barbacci M, Longstaff T, Lipson H, Carriere J (1998) The Architecture Tradeoff Analysis Method. Proceedings of the 4th International Conference on Engineering of Complex Computer Systems (ICECCS98)Google Scholar
  42. [42]
    Klein M, Kazman R, Bass L, Carriere SJ, Barbacci M, Lipson H (1999) Attribute-based Architectural Styles. Proceedings of the 1st IFIP Working Conference on Software Architecture (WICSA-1). pp. 225–243Google Scholar
  43. [43]
    Kramer J, Magee J, Uchitel S (2003) Software Architecture Modeling & Analysis: A Rigorous Approach. Proceedings of SFM’2003. Lecture Notes in Computer Science 2804. pp. 44–51Google Scholar
  44. [44]
    Kruchten P (1995) The 4+1 View Model of Architecture. IEEE Software 12(6): 42–50CrossRefGoogle Scholar
  45. [45]
    Luckham DC, Kenney JJ, Augustin LM, Vera J, Bryan D, Mann W (1995) Specification and Analysis of System Architecture Using Rapide. IEEE Transactions on Software Engineering 21(4): 336–355CrossRefGoogle Scholar
  46. [46]
    Magee J, Dulay N, Eisenbach S, Kramer J (1995) Specifying Distributed Software Architectures. Proceedings of the Fifth European Software Engineering Conference (ESEC’95). Lecture Notes in Computer Science 989. Barcelona, Spain. pp. 137–153Google Scholar
  47. [47]
    Majzik I, Pataricza A, Bondavalli A (2003) Stochastic Dependability Analysis of UML Designs. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer. Berlin, pp. 219–244Google Scholar
  48. [48]
    Mateescu R (2004) Model Checking for Software Architectures. Proceedings of the 1st European Workshop on Software Architecture (EWSA’2004). Lecture Notes in Computer Science 3047. St Andrews, Scotland. Springer. Berlin, pp. 219–224Google Scholar
  49. [49]
    Medvidovic N, Rosenblum DS, Redmiles DF, Robbins JE (2002) Modeling Software Architectures in the Unified Modeling Language. ACM Transactions on Software Engineering and Methodology 11(1): 2–57CrossRefGoogle Scholar
  50. [50]
    Medvidovic N, Taylor RN (2000) A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering 26(1): 70–93CrossRefGoogle Scholar
  51. [51]
    Moraes RL de O, Martins E (2005) Fault Injection Approach based on Architectural Dependencies. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems III. Lecture Notes in Computer Science 3549. Springer. Berlin, pp. 310–334Google Scholar
  52. [52]
    Moriconi M, Qian X, Riemenschneider RA (1995) Correct Architecture Refinement. IEEE Transactions on Software Engineering, 21(4):356–372CrossRefGoogle Scholar
  53. [53]
    Object Management Group. Model Driven Architecture. Technical Report. July 2001. http://cgi.omg.org/docs/ormsc/01-07-01.pdf.Google Scholar
  54. [54]
    Oriezy P, et. al (1999) An Architecture-Based Approach to Self-Adaptive Software. IEEE Intelligent Systems 14(3): 54–62CrossRefGoogle Scholar
  55. [55]
    Perry DE, Wolf AL (1992) Foundations for the Study of Software Architectures. SIGSOFT Software Engineering Notes 17(4): 40–52CrossRefGoogle Scholar
  56. [56]
    Raistrick C, Bloomfield T (2004) Model Driven Architecture — an Industry Perspective. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems II. Lecture Notes in Computer Science 3069. Springer, Berlin, pp. 341–362Google Scholar
  57. [57]
    Rakic M, Medvidovic N (2001) Increasing the Confidence in On-the-Shelf Components: A Software Connector-Based Approach. Proceedings of the 2001 Symposium on Software Reusability (SSR’01). pp. 11–18Google Scholar
  58. [58]
    Randell B (1975) System Structure for Software Fault Tolerance. IEEE Transactions on Software Engineering SE 1(2): 220–232Google Scholar
  59. [59]
    Randell B, Xu J (1995) The Evolution of the Recovery Block Concept. Software Fault Tolerance. John Wiley Sons Ltd.Google Scholar
  60. [60]
    Rodrigues GN, Roberts G, Emmerich W (2004) Reliability Support for the Model Driven Architecture. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems II. Lecture Notes in Computer Science 3069. Springer, Berlin, pp. 80–100Google Scholar
  61. [61]
    Rodriguez M, Fabre JC, Arlat J (2002) Wrapping Real-Time Systems from Temporal Logic Specification. Proceedings of the European Dependable Computing Conference (EDCC-4). Toulouse, France. pp. 253–270Google Scholar
  62. [62]
    Roscoe AW (1994) Model-Checking CSP. A Classical Mind: Essays in Honor of C.A.R. Hoare. Prentice-HallGoogle Scholar
  63. [63]
    Roshandel R, Medvidovic N (2004) Toward Architecture-based Reliability Prediction. Proceedings of the ICSE 2004 Workshop on Architecting Dependable Systems (WADS 2004). Edinburgh, Scotland, UK. The IEE. London, UK. pp. 2–6Google Scholar
  64. [64]
    Schmerl B, Garlan D (2004) AcmeStudio: Supporting Style-Centered Architecture Development. Proceedings of the 26th International Conference on Software Engineering. Edinburgh, Scotland, UK. pp. 704–705Google Scholar
  65. [65]
    Shaw M (1998) Moving from Qualities to Architecture: Architecture Styles. Software Architecture in Practice. L. Bass, P. Clements, R. Kazman (eds). Addison-Wesley. pp. 93–122Google Scholar
  66. [66]
    Shaw M, Garlan D (1996) Software Architectures: Perspectives on an Emerging Discipline. Prentice-Hall, Inc. Upper Saddle River, NJGoogle Scholar
  67. [67]
    Shelton C, Koopman P (2003) Using Architectural Properties to Model and Measure Graceful Degradation. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 267–289Google Scholar
  68. [68]
    Tartanoglu F, Issarny V, Romanovsky A, Levy N (2003) Dependability in the Web Services Architectures. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin. pp. 90–109Google Scholar
  69. [69]
    Taylor RN, Medvidovic N, Anderson KM, Whitehead Jr. EJ, Robbins JE, Nies KA, Oreizy P, Dubrow DL (1996) A Component-and Message-based Architectural Style for GUI Software. IEEE Transactions on Software Engineering 22(6): 390–406CrossRefGoogle Scholar
  70. [70]
    Vestal S (1993) A Cursory Overview and Comparison of Four Architecture Description Languages. Technical Report. Honeywell Technology CenterGoogle Scholar
  71. [71]
    Vestal S (1996) MetaH Programmer’s Manual, Version 1.09. Technical Report. Honeywell Technology CenterGoogle Scholar
  72. [72]
    Xu J, et al (1995) Fault Tolerance in Concurrent Object-Oriented Software through Coordinated Error Recovery. Proceedings of the 25th International Symposium on Fault-Tolerant Computing (FTCS-25). Pasadena, CA, USA. pp. 499–509Google Scholar
  73. [73]
    Zarras A, Kloukinas C, Issarny V (2003) Quality Analysis for Dependable Systems: A Developer Oriented Approach. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems. Lecture Notes in Computer Science 2677. Springer, Berlin, pp. 197–218Google Scholar
  74. [74]
    Zhang J, Cheng BHC, Yang Z, McKinley PK (2005) Enabling Safe Dynamic Component-Based Software Adaptation. In: de Lemos R, Gacek C, Romanovsky A (eds). Architecting Dependable Systems III. Lecture Notes in Computer Science 3549. Springer, Berlin, pp. 200–219Google Scholar

Copyright information

© Springer-Verlag London Limited 2006

Authors and Affiliations

  • Cristina Gacek
    • 1
  • Rogério de Lemos
    • 2
  1. 1.University of Newcastle upon TyneNewcastle upon Tyne
  2. 2.University of KentKent

Personalised recommendations