开发信息系统,是一个复杂的项目,因为针对的需求不同,所有功能模块的组合设计便成为重中之中。在实际开发过程中我们总会遇到这样或那样的问题,总在开发中越走越“窄”,越来越复杂,这是为什么?本书以一个酒店信息系统的开发为例,进行逆向思维,直面大家在开发中遇到的问题,并一一解答。如果你正在或即将负责一个酒店信息系统开发,那么本书就是你的操作手册;如果你正在学习信息系统开发知识,那么本书就是你参加实际项目前的内功心法!读懂它,事半而功倍!
本书以一个典型的信息系统――酒店信息系统的开发为例,站在欠缺经验的新手的角度,从一开始懵头懵脑地了解业务,调研背景,策划分解,建立计划,到逐步思考Use Case,构建ER、DFD、面向对象UML模型,再到构思软件构架、实现系统界面,给出了各种思考案例。从这些来自真实案例的糊涂思考及相应图、表、文档的粗拙产生,再到分析、改进、提升的思考过程中,读者可以举一反三,避免重蹈覆辙,逐步理解、深化、悟透信息系统、软件工程的真实内涵,切实提高系统分析、软件开发的实际修养。全书将“前后一贯,左右顾盼”的理念贯穿开发活动的始终,十分有助于读者系统化一致化思考能力的提升。
目 录
引言 走入信息系统开发的“魔鬼”地带:从哪里开始 1
第1章 从这里开始――基于实践,编好系统开发计划 5
1.1 调查研究一下这是一个什么项目 7
1.1.1 了解一下这家酒店的背景 7
1.1.2 讨论清楚系统的目标 9
1.1.3 画一幅酒店组织架构图 11
1.1.4 重点是一定要研究清楚在信息系统支持下酒店运行的业务流程 13
1.1.5 画一幅系统的网络环境图 15
1.2 如何分解系统 17
1.2.1 把系统划分成几个子系统 17
1.2.2 明确每个子系统的功能 19
1.2.3 确定系统的软硬件配置 21
1.3 如何安排好项目计划 23
1.3.1 安排好时间:软件过程模型的实际应用与管理 23
1.3.2 安排好资金:为测试与维护留有余地――40-20-40原则 28
1.3.3 安排好人员:人件与风险管理 30
1.4 如何考虑知识产权问题 32
1.4.1 严谨制定开发合同:不要以为合同是虚的 33
1.4.2 具体确定利益分派:不要以为利益只是钱 34
1.5 如何编好系统开发计划书――计划书实例 36
第2章 从这里入手――观察实践,分析需求 55
2.1 从宏观上把握系统――系统Use Case图 56
2.1.1 在线预订Use Case图 58
2.1.2 前/后台系统Use Case图 60
2.2 从微观上明确概念――系统概念模型 62
2.2.1 系统E-R图 62
2.2.2 概念定义――数据表 65
2.2.3 概念定义――数据字典 67
2.3 从流程上明确需求――系统DFD图与相关IPO描述 70
2.3.1 全系统0层DFD 70
2.3.2 系统1层DFD 72
2.3.3 系统2层DFD 74
2.3.4 IPO描述 75
第3章 从这里深化――深入实践,建立UML模型 77
3.1 哪些是我系统中的对象――静态Class图 79
3.1.1 系统Class图 80
3.1.2 系统GUI类图 83
3.2 如何用这些对象实现我的系统――动态Sequence图 85
3.2.1 预订(Reservation)序列图 87
3.2.2 登记入住(CheckIn)序列图 89
3.2.3 退房结账(CheckOut)序列图 91
3.3 如何编好系统需求规范说明书――SRS实例 93
第4章 从这里构筑――围绕实践,设计系统架构与部件 116
4.1 如何考虑系统架构 117
4.1.1 以数据为中心的体系架构 117
4.1.2 分层体系架构 118
4.1.3 三层体系(C/S, B/S)架构 119
4.1.4 调用/返回体系架构 120
4.1.5 面向对象体系架构 121
4.1.6 面向对象与面向过程 122
4.2 如何组织对象部件――Package图 124
4.3 如何设计对象部件 126
4.3.1 预订Component图 127
4.3.2 客房Component设计 128
4.3.3 预订Activity图 130
4.3.4 客房State图 132
4.3.5 入住/退房 Swimlane图 133
第5章 哇,软件出来了――反复实践,实现系统 136
5.1 酒店网站首页的设计:注意全局风格的安排 137
5.2 客房预订的实现――关联预订的分析与设计 142
5.3 入住登记的实现――关联入住的分析与设计 145
5.4 退房收银的实现――关联退房的分析与设计 147
5.5 如何编好设计说明书――设计说明书实例 150
第6章 从这里解析――酒店薪资管理系统 174
6.1 背景 175
6.2 问题与需求分析 175
6.3 系统开发过程 178
6.4 薪资发放管理子系统 180
6.5 薪资分析管理子系统 186
6.6 阶段成效及全系统目标 188
后记 190