Software safety: why, what, and how
ACM Computing Surveys (CSUR)
Component software: beyond object-oriented programming
Component software: beyond object-oriented programming
Software reliability and dependability: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Theory of software reliability based on components
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Architecture-based approach to reliability assessment of software systems
Performance Evaluation
Self-organising software architectures for distributed systems
WOSS '02 Proceedings of the first workshop on Self-healing systems
An Approach for Analysing the Propagation of Data Errors in Software
DSN '01 Proceedings of the 2001 International Conference on Dependable Systems and Networks (formerly: FTCS)
Software Architecture in Practice
Software Architecture in Practice
Software Component Reliability Analysis
ASSET '99 Proceedings of the 1999 IEEE Symposium on Application - Specific Systems and Software Engineering and Technology
Automatic Failure-Path Inference: A Generic Introspection Technique for Internet Applications
WIAPP '03 Proceedings of the The Third IEEE Workshop on Internet Applications
OpenSESAME: An Intuitive Dependability Modeling Environment Supporting Inter-Component Dependencies
PRDC '01 Proceedings of the 2001 Pacific Rim International Symposium on Dependable Computing
Error Propagation In Software Architectures
METRICS '04 Proceedings of the Software Metrics, 10th International Symposium
Safety Tactics for Software Architecture Design
COMPSAC '04 Proceedings of the 28th Annual International Computer Software and Applications Conference - Volume 01
Basic Concepts and Taxonomy of Dependable and Secure Computing
IEEE Transactions on Dependable and Secure Computing
Towards a rule model for self-adaptive software
ACM SIGSOFT Software Engineering Notes
Error Propagation in the Reliability Analysis of Component Based Systems
ISSRE '05 Proceedings of the 16th IEEE International Symposium on Software Reliability Engineering
Software Architecture as a Set of Architectural Design Decisions
WICSA '05 Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture
Identifying "good" architectural design alternatives with multi-objective optimization strategies
Proceedings of the 28th international conference on Software engineering
A survey of architecture design rationale
Journal of Systems and Software
Improving Reliability and Safety by Trading off Software Failure Criticalities
HASE '07 Proceedings of the 10th IEEE High Assurance Systems Engineering Symposium
Early prediction of software component reliability
Proceedings of the 30th international conference on Software engineering
On Failure Propagation in Component-Based Software Systems
QSIC '08 Proceedings of the 2008 The Eighth International Conference on Quality Software
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Hi-index | 0.00 |
Software architectural design decisions are key guidelines to achieve non-functional requirements of software systems in the early stages of software development. These decisions are also important for justifying the modifications of dynamic architectures during software evolution in the operational phase. Incorporating reliability goals in software architectures is important for successful applications in large and safety-critical systems. However, most of the existing software design mechanisms do not consider the architectural reliability (the impact of software architecture on system reliability). As a result, alternative software architectures cannot be compared adequately with respect to software system reliability. In this paper, we extend our previous work on failure propagation analysis to propose a selection framework for incorporating reliability in software architectures. The selection criterion in this framework exploits architectural attributes to appropriately select software architectures based on their reliabilities. We provide algorithms to derive the architectural attributes required by the model and to select the appropriate architecture using a quick and a comprehensive decision approach for minor and major architectural changes, respectively.