【读书笔记】AgilePPP——系统设计:简单设计
2012-03-14 00:43
183 查看
系统设计的本质
•系统设计的本质是寻找隐藏于应用背后抽象
•需求和用例不会表述或提及这些抽象,它们太过专注细节以至于不能表达底层抽象的一般性
如何抽象
•抽象需要根据需求的全局来展开
•不能只按个别用例来展开
•抽象就是归纳、总结,并提炼需求的共同逻辑
关于数据库
•数据库是实现细节!应该尽可能的推迟考虑数据库。有太多的应用程序之所以和数据库绑定在一起而无法分离,就是因为一开始设计时就把数据库考虑在内了。请记住抽象的定义:“本质部分的放大,无关紧要部分的去除。”在项目的分析设计阶段数据库就是无关紧要的,它只不过是一项用来存储和访问数据的技术而已!
面向对象的分析和设计
•面向对象的分析和设计应从用户或系统的行为模型展开,而不是数据库。
•用户故事描述的就是行为
用户故事->用例->设计
•用户故事->用例->设计。用例不需要陷入过多细节,只要有助于代码设计即可;设计不用太详尽彻底,应从简单开始,以小步增量的方式前进。
•源代码是最终的设计文档
•系统设计的本质是寻找隐藏于应用背后抽象
•需求和用例不会表述或提及这些抽象,它们太过专注细节以至于不能表达底层抽象的一般性
如何抽象
•抽象需要根据需求的全局来展开
•不能只按个别用例来展开
•抽象就是归纳、总结,并提炼需求的共同逻辑
关于数据库
•数据库是实现细节!应该尽可能的推迟考虑数据库。有太多的应用程序之所以和数据库绑定在一起而无法分离,就是因为一开始设计时就把数据库考虑在内了。请记住抽象的定义:“本质部分的放大,无关紧要部分的去除。”在项目的分析设计阶段数据库就是无关紧要的,它只不过是一项用来存储和访问数据的技术而已!
面向对象的分析和设计
•面向对象的分析和设计应从用户或系统的行为模型展开,而不是数据库。
•用户故事描述的就是行为
用户故事->用例->设计
•用户故事->用例->设计。用例不需要陷入过多细节,只要有助于代码设计即可;设计不用太详尽彻底,应从简单开始,以小步增量的方式前进。
•源代码是最终的设计文档
相关文章推荐
- 【读书笔记】AgilePPP——设计模式
- 【读书笔记】AgilePPP——敏捷设计
- 谈谈电子商务系统中的规格设计,SKU的简单管理
- 简单之美——系统设计黄金法则
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- Linux内核设计第三周——构造一个简单的Linux系统
- <转>简单之美——系统设计黄金法则
- 操作系统实验四——文件系统的简单命令的设计与实现
- 【DAO】计费系统数据库设计简单文档
- 深入理解计算机系统读书笔记之一个简单汇编程序的调试分析
- 【人月神话】读书笔记第四章 贵族专制、民主政治和系统设计
- ICE笔记(06):简单文件系统的设计、实现
- 杭州电子科技大学操作系统课程设计:简单文件系统的实现
- 深入浅出 - Android系统移植与平台开发(十) - led HAL简单设计案例分析
- C语言-实现简单的车辆管理系统-课程设计
- verilog 数字系统设计教程 读书笔记(2)
- 操作系统课程设计(二)简单文件系统实现
- asp.net web网站权限系统的简单设计
- 简单http认证系统的设计
- 【读书笔记】简约至上--交互设计四策略--第1章 话说简单