《一线架构师实践指南》--阅读笔记三

 传统的架构设计很片面,评定需求,根据需求确定物理架构,技术架构则到此为止了,下面的内容则是开发人员的事了。 
    而本书讲述的架构设计在整个产品开发过程中都有角色,将架构设计分成了3个阶段, 
    需求阶段做前置架构设计(Pre-architecture),主要是针对需求做一些架构预言,需要提炼的内容主要有:确定关键需求,关键功能,关键质量 
    不同的需求影响架构的不同原理,利用admems矩阵方法(需求层次-需求方面矩阵)来提取上面所提的内容; 
    三因素:功能,质量,约束; 
    四步法:需求结构化,分析约束影响,确定关键质量,确定关键功能; 
    通过二维需求观从业务级需求,用户级需求,开发级需求多视图来分析上面三个因素; 
    第二阶段就是根据关键需求,来完成概念架构的设计,概念架构的职责用于界定系统的高层组件,确定高层组件之间的关系,对系统进行适当的分解,但不关注细节。此架构面对管理人员,市场人员,用户,并不能做为开发人员架构,可用于投标或售前。 
    重大的需求(包含功能,质量与约束)塑造概念架构, 
    在做概念架构设计时,应该分三个步骤: 
    首先是初步设计,基于关键功能,利用鲁棒图,以发现职责为目的进行初步设计,考虑职责之间的关系; 
     然后对系统进行高层分割,以利于进一步的分析设计; 
    第三就是要考虑非功能需求,具体的方法可以采用目标-场景-决策表。 

    在初步设计中,注意不要关注细节,不要过分关注UI,采取增量建模的方式。 

    细化架构从多视图,多方位的去开展工作, 
    运行架构,逻辑架构,物理架构,开发架构,数据架构,我们很多时候只关注于后面三项。 
    主要的工作有进程、线程相关设计,接口的定义,子系统的划分,服务器的选型,结构化模块设计,考虑逻辑层,考虑物理层,源程序目录结构定义,数据分布与数据库设计,文件存储格式定义,如果针对嵌入式系统,还得进行flash存储结构设计; 
    
    多视图方法有多种,如RUP 4+1视图, SEI3视图,5视图 

原文地址:https://www.cnblogs.com/yishaui/p/13111221.html