《敏捷软件开发:原则、模式与实践 》
经典老书,无需多言
用浅显经典的例子讲述了几乎面向对象敏捷开发所有主要的相关技术的应用。
《UML和模式应用(原书第2版)》
"人们经常问我,引导他们进入00世界的最佳图书是哪一本。读过本书之后,它已经成为我的惟一选择。
---MartinFowler
这本书本人认为有以下特色:
1、本书是带领读者在具体的迭代开发过程中,进行论述OO软件的UP迭代开发过程。不会出现以前知道有莫一UML视图不知道何处使何处用。
2、本书重实际一不是类似ROSE公司出的带有公司宣传偏见问题,二不是学院派有未来学术目标的导向。
3、书中设计软件开发个个方面的组合,并且、这些各自方面的分量在书中恰到好处。
4、仔细阅读,书中的每句都是作者用心所著,几乎句句良言,尤其方框标出的更是有深刻含义,很少废话。
例如、目前我们小组正在进行收集Use Case阶段,借鉴了本书发现了很多以前Use Case上的错误认识。
1、用例图和用例关系是用例工作中的次要部分。用例本身是文本格式文档,用例工作意味着书写文本。(以前专注于Rose中的小人和椭圆以及为了连线和其箭头争论不休)。用例建模的新手(或学院派)的一个普遍标志是,专心于用例图和用例关系,而不是文本。顶级用例专家(如Anderson、Flower、Cockburn)不太重视用例图和用例关系…
2、一个值得注意的地方是 一个常见的用例错误是:定义了许多低级别上的用例。这些用例只相当(基本业务过程)EBP中的一个简单步骤、子功能或子任务。我目前理解的EBP是用户(角色可能是外部系统)通过这个用例可以明确到达某个用户目标,并且这个目标完成对用户就有可度量的业务价值。例如、用户登陆一般情况下就不是一个用例而是一个过程而已。正如书中所说,如果CEO问起来:“你今天干什么了?”你回答:“我登陆了20次!”他不会留下什么印象。登陆是为了完成其它有用的事情而服务的。因此我们发现诸如,读取插件清单文件是一个过程等等(因为要做纯UI平台系统,所以必须涉及界面否则应尽量避免用例对界面描述)
此书目前仍在摸索中,今后有什么心得在和大家交流。如果大家对此书或Use Case有什么心得也交流交流?