《软件架构设计》阅读笔记三

本次是阅读了《软件架构设计》中关于“概念性架构设计”的相关知识,以下是学习总结:

一、概念性架构设计大致可以分为如下三步:

第一步,鲁棒性分析。

第二步,引入架构模式。

第三步,质量属性分析。

 

各层之间的单向依赖又可以分为两种:严格的分层架构要求第n层只能被第n+1层调用,与此相对的是不严格的分层架构,第n层可以被位于其上层的任意一层调用。在概念性架构设计时,功能需求是鲁棒性分析最主要的输入,而质量属性需求是质量属性分析的最主要的输入。

二、属性——场景——决策

“属性——场景——决策”表方法提倡通过一组具体场景将要达到的质量属性需求目标细化,再根据这些实实在在的场景制定架构决策。“属性——场景——决策”表方法使软件架构设计的决策过程从“黑盒”变成了“灰盒”,这样做有以下好处:

1.可操作性强。

2.避免过度设计。

3.便于系统升级时参考。

一般而言,逻辑架构的设计应完成下列工作:

细化功能单元;

发现通用机制;

细化领域模型;

确定子系统接口和交互机制。

三、机制 

机制(Mechanism)是模式的实例。机制必须进一步细化才能成为特定模型中的协作,因此,机制是独特上下文中重复出现的问题的特定解决方案。进程被称为“重量级控制流”,因为它既是处理机资源的分配单位,又是其他计算机资源的分配单位。线程则被称为“轻量级控制流”,它仅仅是处理机资源的分配单位。一个进程内可以包含多个线程,这些线程共享所在进程的资源。

原文地址:https://www.cnblogs.com/lover995/p/13095169.html