前言:软件方法第一章主要讲解建模和UML,书中提出了很多新颖的概念,对于建模-需求-分析-设计之间的关系,让我耳目一新。虽然很多概念我知晓的很混乱,但是我仍然坚持写到读书札记中,因为我相信,阅读者早晚会给我启发,而我通过反复阅读我自己的感悟,终究会探寻出我想要的答案。
利润=需求(能卖)-设计(低成本)
需求致力于解决“产品好卖”的问题,设计致力于解决“产品成本”的问题,我在作者的标题中加上了能卖和低成本两个概念,这样可能就更加直观。先来了解需求和设计是什么样的概念,以及其相关概念应该是什么?
业务建模
组织要解决什么问题
以软件模型方式描述企业管理和业务所涉及到的对象、要素,以及他们的属性、行为和彼此关系
非常苦涩,拿手机来按照我自己的意向来表述一下,在没有手机之前,我假设我要创造一个产品XX,手机当然也是为了解决人们之间的及时通信,那么它和电话有什么区别呢,XX要解决电话带给我们的什么问题呢,当然就是更加便利,人们不再通过电话机进行通信,you can say hello to someone anywhere。
需求
详细描述系统要卖出去所必须提供的功能和性能
继续拿XX来说,XX只所以不要同于电话,必须要没有电话线,也就是说最主要先解决掉电话线的麻烦,这时我们就可以拿着一个不需要电话线的电话到处和其他人通信,然而这还不能使XX卖得更好,XX还需要有一个便捷的电话号码输入方式,还需要方便的接听和对话,还需要能够续航,那这些功能和性能就是XX所要的需求
分析
提炼系统内需要封装的核心领域机制
对于XX产品,需求有了很多很多,那么就需要分析,为了提供这些功能,要解决什么样的核心问题,我们都知道,必须是先解决电话线的问题,手机之所以称之为移动电话,核心就是要先解决电话线的核心领域
设计
将核心域知识和非核心域知识结合,最终实现系统
代码也是设计
看完书中介绍,我们当前敏捷开发的确存在很大弊端,我们使用禅道,禅道里面虽然有需求池、迭代、单元测试,但是真正的需求、单元测试都没有其真正应担负的职责,我们把代码作为设计,把客户想要什么作为需求,我们把这些称谓我们的财富,冷静下来想想,这会成为我们进步的障碍。
工具操作
CSDN上提供了enterprise architect的下载,下载完成后,可用。