系统分析设计札记

一、关于认知

“我们从浩瀚的宇宙中抓起一小把沙子,并把它们看成一个‘世界’——一个意识中的世界,接着我们就会开始尝试认知这个‘世界’,该过程就像用一把小刀,将这些沙子分为代表着不同意义,不同角色的部分:这个和那个、这里和那里、黑与白、现在和将来,等等。认知事物就是将它分成代表不同角色和意义的更小事物的一个过程”

---Robert Pirsig

二、应用系统

应用系统 = 一组相互作用的对象

      对象 = 一个或多个角色的实现

      角色 = 一组相关的责任

      责任 = 执行一项任务或掌握某种信息的义务

      协作 = 对象或角色(或两者)之间的互动

      契约 = 描述协作提纲的一种协定

 

三、对象角色构造型(Role Stereotypes)

在一个应用系统中,各种角色都具有自身的特征,这些特征就是构造型。

常见的构造型有以下几种:

  1. 信息的持有者:掌握并提供信息
  2. 构造者:维护对象之间的关系以及与这些关系相关的信息
  3. 服务提供者:执行工作,通常为其他对象提供服务
  4. 协调者:通过向其它对象委托任务来响应事件
  5. 控制者:进行决策并指导其它对象的行为
  6. 接口:连接系统的各个部分,并在它们之间进行信息和请求的转换

四、系统设计

软件实现了一个责任系统。不同的角色通过协作履行不同的责任,良好的软件结构可以有效的运行这些责任。我们的设计工作从创建对象开始,将特定的责任分配给对象,使其了解某些信息或完成某些工作,而这些对象的集体行为将履行更大的责任。

对象由于某种需要,相互调用或协作。一个对象需要帮助时,另一个对象则提供相应服务,它们一起共同努力履行更大的责任。设计协作使得我们将对象看成相互协作的伙伴而不是独立的个体。

设计本身是一个迭代递增的过程,在该过程中,我们不断的引入对象及其责任,不断地在小邻域之间构建弹性的协作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值