2020年6月12日

摘要: 功能特征和非功能特征 Q: 设计软件架构时,为什么非功能特征很重要? A: 首先,软件系统将随时间演化,它们必须应对不断变化的技术、需求和系统环境。因此,仅以合适的方式对应用程序面临的怎个任务进行分解还不够,系统还必须为应对变化、扩展和修改做好准备。否则,软件系统维护起来既困难又需付出高昂的代价,在 阅读全文
posted @ 2020-06-12 17:00 <demon> 阅读(146) 评论(0) 推荐(0) 编辑
 
摘要: 组件 定义: 组件是被封装起来的软件系统的一部分,包含一个借口。组件是用于打造系统的构件。在编程语言层面,组件可能由模块、类、对象或一组相关的函数表示。 [PW92]将组件分为三类,并称之为元素: 处理元素数据元素连接元素面向对象编程范式中采用了另一种分类方案,将组件分为如下几类: 控制组件协调组件 阅读全文
posted @ 2020-06-12 16:59 <demon> 阅读(149) 评论(0) 推荐(0) 编辑
 
摘要: 介绍了8个架构模式: 分层 Layers 管道和过滤器 Pipes and Filters 黑板 Blackboard 中间人 Broker 模型-视图-控制器 Model-View-Controller, MVC 表示-抽象-控制 Presentation-Abstraction-Control 阅读全文
posted @ 2020-06-12 16:58 <demon> 阅读(144) 评论(0) 推荐(0) 编辑
 
摘要: 要学会架构切分。 切分就是利益的调整我们要非常的清楚,所有的切分调整,都是对相关人的利益的调整。为什么这么说呢,因为维护自己的利益,是每个人的本性,是在骨子里面的,我们不能逃避这一点。 我们以第一篇文章里面的例子为例来做解释。那么为什么需要切分?当人们认识到要主动的去切分一个系统的时候,毫无疑问,我 阅读全文
posted @ 2020-06-12 16:54 <demon> 阅读(111) 评论(0) 推荐(0) 编辑
 
摘要: 主要讲的是认识概念是理解架构的基础。 “什么是桌子”,以及概念在古代称之为名相,名为人们给事物起的名字,用来标识该事物的作用,相为人们看到的形状以及该事物所代表的的作用。那么为何需要这个作用,主要是还是为了解决人们在最初所发生的问题,如人们需要一个可单手持握,但是希望避免直接接触所盛物体,于是生产了 阅读全文
posted @ 2020-06-12 16:53 <demon> 阅读(90) 评论(0) 推荐(0) 编辑
 
摘要: 主要讲的什么是架构以及为什么会产生架构。 从架构的概念上来看很模糊,就说明了架构好像是一个过程,不是很清晰。那么为什么会产生架构,从原始社会开始的人们刚开始自顾自己,大部分都难以生存,直到人们发现大家一起合作,每个人站在自己会的熟练的工作上,最后大家共享成果,能够更好的解决生活问题,最大化的发挥生产 阅读全文
posted @ 2020-06-12 16:51 <demon> 阅读(109) 评论(0) 推荐(0) 编辑
 
摘要: 软件架构设计过程 过程总览 一般的软件过程: 概念化阶段 -> 分析阶段 -> 架构设计阶段 -> 并行开发与测试阶段 -> 验收与交付阶段 软件架构设计过程: 需求分析 -> 领域建模 -> 确定关键需求 -> 概念性架构设计 -> 细化架构 -> 验证架构 需求分析 需求捕获 , 需求分析 , 阅读全文
posted @ 2020-06-12 16:41 <demon> 阅读(201) 评论(0) 推荐(0) 编辑
 
摘要: 软件架构设计方法 架构师应当为项目相关的不同角色而设计: 架构师要为客户负责,满足他们的业务目标和约束条件。 架构师要为用户负责,满足他们关心的功能需求和运行期质量属性。 架构师必须顾及处于协作分工“下游”的开发人员。 架构师必须考虑“周边”的管理人员,为他们进行分工管理、协调控制和评估监控等工作提 阅读全文
posted @ 2020-06-12 16:30 <demon> 阅读(145) 评论(0) 推荐(0) 编辑
 
摘要: 《软件架构设计》这本书从思维方式的突破、面向对象设计、UML建模、过程与管理等关键过渡环节,为广大程序员的成长提供了指导。 什么是软件架构? 首先,我们要了解软件架构到底是什么? 软件架构的概念很混乱。软件架构概念主要分为两大流派: 组成派:软件架构 = 组件 + 交互。 决策派:软件架构 = 重要 阅读全文
posted @ 2020-06-12 16:19 <demon> 阅读(160) 评论(0) 推荐(0) 编辑