引言——走入软件开发的“魔鬼”地带:从哪开始 9
第1章 从这里开始——于实践,编好系统开发计划 13
1.1调查研究一下这是一个什么项目 14
1.1.1了解一下这家酒店的背景 15
1.1.2讨论清楚软件的目标 17
1.1.3画一张酒店组织构架图 20
1.1.4重点是一定要研究清楚在信息系统支持下酒店运行的业务流程 23
1.1.5还要画一张系统的网络环境图 25
1.2如何组成系统 28
1.2.1把系统划分成几个子系统 28
1.2.2明确每个子系统的功能 30
1.2.3确立系统的软硬件配置 32
1.3如何安排好项目计划 35
1.3.1安排好时间:软件过程模型的实际应用与管理 36
1.3.2安排好资金:为测试与维护留有余地——40-20-40原则 42
1.3.3安排好人员:人件与风险管理 44
1.4如何考虑知识产权问题 46
1.4.1严谨制定开发合同:不要以为合同是虚的 47
1.4.2具体确定利益分派:不要以为利益只是钱 48
1.5如何编好系统开发计划书——计划书实例 51
第2章 从这里入手——观察实践,分析软件需求 77
2.1从宏观上把握系统——系统Use Case图 78
2.1.1在线预订Use Case图 81
2.1.2前/后台系统Use Case图 83
2.2从微观上明确概念——系统概念模型 85
2.2.1系统ER图 86
2.2.2概念定义——数据表 90
2.2.3概念定义——数据字典 92
2.3从流程上明确需求——系统DFD图与相关IPO描述 96
2.3.1全系统0层DFD 96
2.3.2系统一层DFD 98
2.3.3系统二层DFD 101
2.3.4 IPO描述 102
第3章 从这里深化——深入实践,建立UML模型 104
3.1哪些是我系统中的对象——静态Class图 105
3.1.1系统Class图 107
3.1.2系统GUI类图 111
3.2如何用这些对象实现我的系统——动态Sequence图 114
3.2.1预订(Reservation)序列图 117
3.2.2登记入住(Check In)序列图 119
3.2.3退房结账(Check Out)序列图 123
3.3如何编好软件需求规范说明书SRS——SRS实例 125
第4章 从这里构筑——围绕实践,设计系统构架与部件 151
4.1如何考虑系统的构架 151
4.1.1以数据为中心的体系架构 152
4.1.2分层体系架构 153
4.1.3三层体系(C/S,B/S)架构 153
4.1.4调用/返回体系架构 155
4.1.5面向对象体系架构 156
4.1.6面向对象与面向过程 158
4.2如何组织对象部件——Package图 161
4.3如何设计对象部件 162
4.3.1预订Component图 164
4.3.2客房Component设计 165
4.3.3预订Activity图 167
4.3.4客房State图 170
4.3.5入住/退房Swimlane图 171
第5章 哇噻,软件出来了——反复实践,实现系统 174
5.1酒店网站首页的设计:注意全局风格的安排 175
5.2客房预订的实现——关联预订的分析与设计 182
5.3入住登记的实现——关联入住的分析与设计 185
5.4退房收银的实现——关联退房的分析与设计 189
5.5如何编好设计说明书——设计说明书实例 193
后记 221