基于架构的软件开发方法_1.概述和相关概念及术语

1.体系结构的设计方法概述

**基于体系结构的软件设计(Architecture-Based Software Design,ABSD)**方法。ABSD方法是由体系结构驱动的,即指由构成体系结构的商业、质量和功能需求的组合驱动的。

使用ABSD方法,设计活动可以从项目总体功能框架明确就开始,这意味着需求抽取和分析还没有完成(甚至远远没有完成),就开始了软件设计。设计活动的开始并不意味着需求抽取和分析活动就可以终止,而是应该与设计活动并行。特别是在不可能预先决定所有需求时(例如,产品线系统或长期运行的系统),快速开始设计是至关重要的。

ABSD方法有3个基础。第1个基础是功能的分解。在功能分解中,ABSD方法使用已有的基于模块的内聚和耦合技术。第2个基础是通过选择体系结构风格来实现质量和商业需求。第3个基础是软件模版的使用,软件模版利用了一些软件系统的结构。

2.概念与术语

2.1设计元素

ABSD方法是一个自顶向下,递归细化的方法,软件系统的体系结构通过该方法得到细化,直到能产生软件构件和类。

ABSD方法中使用的设计元素如图1所示。在最顶层,系统被分解为若干概念子系统和一个或若干个软件模版。在第2层,概念子系统又被分解成概念构件和一个或若干个附加软件模版。

图1 ABSD方法过程

2.2视角与视图

考虑体系结构时,要从不同的**视角(Perspective)**来观察对架构的描述,这需要软件设计师考虑体系结构的不同属性。例如,展示功能组织的静态视角能判断质量特性,展示并发行为的动态视角能判断系统行为特性,因此,选择的特定视角或视图(如逻辑视图、进程视图、实现视图和配置视图)可以全方位的考虑体系结构设计。使用逻辑视图来记录设计元素的功能和概念接口,设计元素的功能定义了它本身在系统中的角色,这些角色包括功能、性能等。

2.3用例和质量场景

用例已经成为推测系统在一个具体设置中的行为的重要技术,用例被用在很多不同的场合,用例是系统的一个给予用户一个结果值的功能点,用例用来捕获功能需求。

在使用用例捕获功能需求的同时,人们通过定义特定场景来捕获质量要求,并称这些场景为质量场景。 这样一来,在一般的软件开发过程中,人们使用质量场景捕获变更、性能、可靠性和交互性,分别称之为变更场景、性能场景、可靠性场景和交互性场景。质量场景必须包括预期的和非预期的场景。

相关推荐
敢敢是只喵i37 分钟前
15 万+ Star 的 DeepSeek Harness,让它接入真实业务系统直接接管后台
架构·开源·deepseek
磐链科技42 分钟前
交易所开发新范式:从社交钱包隐私保护中汲取的五大架构启示
架构·区块链
Logintern0942 分钟前
Celery 的底层架构正是进程池、事件循环、epoll 和协程全部组合在了一起
python·架构·消息队列·进程·celery·事件循环
码艺-Alimjan1 小时前
JWT 的本质、误区与正确落地:一套不依赖任何框架的架构方法论-微信小程序代码案例-Api 安全性拉满
微信小程序·架构·notepad++
阿懂在掘金1 小时前
记录四年前的一次前端项目权限方案改造
前端·vue.js·架构
来日方长。。。。long1 小时前
生产级MCP落地指南:FastMCP与官方MCP SDK的选型、架构与实战
架构·mcp
bytemaster1 小时前
SSH 连接被秒断?从握手失败到跳板机自动中转的完整排查路径
后端·架构
绿智校园1 小时前
一套基座替代五类系统:DeepBasic Folar与传统BA/SCADA/IoT平台的架构对比
物联网·架构
吃饱了得干活2 小时前
为什么你的Service越写越臃肿?三层架构的“业务逻辑层”是个黑盒
java·后端·架构