{"title":"A Meta-Level Software Architecture based on Patterns for Developing Dependable Collaboration-based Designs","authors":"D. M. Beder, C. M. F. Rubira","doi":"10.5753/wtf.2000.23471","DOIUrl":null,"url":null,"abstract":"The focus of this paper is the design and implementation of dependable quality requirements, and their incorporation in the description of software architecture in an explicit and structured manner. More specifically, we propose three architectural styles for developing dependable collaboration-based software designs based on three notions: (i) the idealized fault-tolerant component model, (ii) the collaboration/role interaction model, and (iii) computational reflection together with a set of design patterns that focus on providing design solutions for implementing fault tolerance techniques, namely, error handling, coordinated recovery and software redundancy. Computational reflection defines a meta-level architecture that is composed of a base level where the application’s logic is implemented and a meta level where meta components are responsible for implementing the application’s quality requirements in a way that it is transparent to application designers. Application designers can apply the notion of separation of concerns and concentrate their attention on the functional requirements, abstracting from the quality requirements.","PeriodicalId":356716,"journal":{"name":"Anais do II Workshop de Testes e Tolerância a Falhas (WTF 2000)","volume":"38 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2000-07-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Anais do II Workshop de Testes e Tolerância a Falhas (WTF 2000)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5753/wtf.2000.23471","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
The focus of this paper is the design and implementation of dependable quality requirements, and their incorporation in the description of software architecture in an explicit and structured manner. More specifically, we propose three architectural styles for developing dependable collaboration-based software designs based on three notions: (i) the idealized fault-tolerant component model, (ii) the collaboration/role interaction model, and (iii) computational reflection together with a set of design patterns that focus on providing design solutions for implementing fault tolerance techniques, namely, error handling, coordinated recovery and software redundancy. Computational reflection defines a meta-level architecture that is composed of a base level where the application’s logic is implemented and a meta level where meta components are responsible for implementing the application’s quality requirements in a way that it is transparent to application designers. Application designers can apply the notion of separation of concerns and concentrate their attention on the functional requirements, abstracting from the quality requirements.