Non-functional refinement of computer based systems architecture

M. Denford, J. Leaney, T. O'Neill
{"title":"Non-functional refinement of computer based systems architecture","authors":"M. Denford, J. Leaney, T. O'Neill","doi":"10.1109/ECBS.2004.1316696","DOIUrl":null,"url":null,"abstract":"Architecture based refinement is an important technique for ensuring efficiency, effectiveness and correctness in the practical design of complex computer based systems. With a few exceptions, current methods of architectural refinement focus on functional behaviour and fail to address nonfunctional requirements throughout the refinement process. A best practices approach to refinement would address both functional and nonfunctional requirements such that the refinement of an abstract into a concrete (implementation) architecture ensures that both sets of requirements are met. We propose a method that focuses on the nonfunctional requirements while still addressing the functional requirements throughout refinement. The method has a formal underpinning in abstract data types (based on term rewriting) which are used to represent the architectures throughout the refinement process and to place pre and post conditions on the refinements. In addition to this, the method uses nonfunctional requirement calculators to check the nonfunctional qualities of the architecture as refinement proceeds. Reflection on the practice of the method suggests that it may be possible to extend the architectural style idea to provide reusable refinement schema for the design of certain nonfunctional qualities into architectural patterns. The example considers reliability and performance in the refinement of a client server architectural pattern. The method does not aim to replace or fully automate the work of the designer. It aims to augment the design process and aid the designer in performing their tasks. It seeks to provide certain guidance for the designer that will help them make the right design decisions, and correct certain classes of errors.","PeriodicalId":137219,"journal":{"name":"Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004.","volume":"24 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"17","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ECBS.2004.1316696","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 17

Abstract

Architecture based refinement is an important technique for ensuring efficiency, effectiveness and correctness in the practical design of complex computer based systems. With a few exceptions, current methods of architectural refinement focus on functional behaviour and fail to address nonfunctional requirements throughout the refinement process. A best practices approach to refinement would address both functional and nonfunctional requirements such that the refinement of an abstract into a concrete (implementation) architecture ensures that both sets of requirements are met. We propose a method that focuses on the nonfunctional requirements while still addressing the functional requirements throughout refinement. The method has a formal underpinning in abstract data types (based on term rewriting) which are used to represent the architectures throughout the refinement process and to place pre and post conditions on the refinements. In addition to this, the method uses nonfunctional requirement calculators to check the nonfunctional qualities of the architecture as refinement proceeds. Reflection on the practice of the method suggests that it may be possible to extend the architectural style idea to provide reusable refinement schema for the design of certain nonfunctional qualities into architectural patterns. The example considers reliability and performance in the refinement of a client server architectural pattern. The method does not aim to replace or fully automate the work of the designer. It aims to augment the design process and aid the designer in performing their tasks. It seeks to provide certain guidance for the designer that will help them make the right design decisions, and correct certain classes of errors.
基于计算机的系统体系结构的非功能细化
在复杂计算机系统的实际设计中,基于体系结构的细化是保证设计效率、有效性和正确性的一项重要技术。除了少数例外,当前的架构细化方法关注于功能行为,而无法在整个细化过程中处理非功能需求。细化的最佳实践方法将处理功能性和非功能性需求,以便将抽象细化为具体(实现)体系结构,确保满足两组需求。我们提出了一种方法,在细化过程中关注非功能需求的同时,仍然关注功能需求。该方法在抽象数据类型(基于术语重写)中有一个正式的基础,用于在整个细化过程中表示体系结构,并在细化过程中放置前置和后置条件。除此之外,该方法在细化过程中使用非功能需求计算器来检查架构的非功能质量。对该方法实践的反思表明,将体系结构风格思想扩展为将某些非功能质量设计为体系结构模式提供可重用的细化方案是可能的。该示例考虑了客户端服务器体系结构模式细化中的可靠性和性能。该方法并不旨在取代或完全自动化设计人员的工作。它的目的是增加设计过程,并帮助设计师执行他们的任务。它旨在为设计师提供一定的指导,帮助他们做出正确的设计决策,并纠正某些类型的错误。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信