酒店客房管理系统-案例需求分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库课程项目实践
所在系:计算机科学系
专业:计算机网络技术
项目名称:酒店客房管理系统项目组长:XX
项目组成员:XX、XX、XX
2012年10月
酒店客房管理系统
1、案例背景
酒店客房管理系统是一个酒店管理部门不可缺少的部分,它的内容对于酒店管理的决策者和住宿客户来说都至关重要,所以酒店客房管理系统应该能够为酒店管理人员提供充足的信息和快捷的查询手段。传统的人工安排酒店住宿信息需要填写各种表格,这种管理方式存在着许多缺点,如:效率低,保密性差,更新不及时等问题。因此,开发一套这样酒店客房管理软件成为很有必要的事情。
2、案例需求
(1)系统性质:MIS软件
(2)系统使用者:管理人员
(3)根据系统的初步要求,整理出如下的系统功能由客房管理、客户管理、预定管理和退房管理4个部分组成。
•客房管理
1)客房的基本信息包括客房的编号、客房的类别、价位、当前的状态、负责人等。
2)查询某一负责人负责客房的数目。
•客户管理
1)录入客户的基本情况,包括客户的身份证号、姓名、客房编号。
2)对已退房的客户,删除客户相关信息。
•预定管理
1)提供查询当前处于“空闲”状态的客房信息。
2)查询某客户预定的客房编号。
•退房管理
1)提供修改已退客房的当前状态信息,由“住宿”改为“空闲”。
3、需要完成的任务:
1)根据需求分析的说明完成系统功能图。
2)概念结构设计(要求:分析系统的实体,属性和联系,完成系统E-R图或局部功能E-R图)。
3)逻辑结构设计(要求:将E-R图转换成关系模式,分析各关系模式的范式等级,给出各关系模式的表格结构,如下图,确定表中各属性的类型、长度、是否为主键等信息)。
4)数据库实施(要求:根据上述关系模式,使用SQL命令创建数据库和数据表)。5)设计SQL命令的查询。(要求:SQL命令能完成相应的系统功能)
6)设计测试用例(使用有效数据测试SQL命令的正确性)。
目录
1 需求分析 (5)
2 概念结构设计 ......................................................................................................................... ==5
3 逻辑结构设计 (6)
4 数据库实施 (7)
5 设计SQL查询命令 (7)
6 设计测试用例 (12)
1 需求分析
酒店客房管理系统主要包含客房管理、客户管理、预订管理、退房管理四个主要功能,其系
统功能模块图如下所示:
2 概念结构设计
经分析可知,酒店客房管理系统的实体包括: 客房:编号,类别,价位,当前状态,负责人 客户:身份证号,姓名,客房编号 各实体间的联系描述如下:
1个客户可以预订多个客房,1个客房只能有一个客户预订 1个客户可以退房多个客房,1个客房只能有一个客户退房 系统的完整E-R 图/局部E-R 图如下所示:
酒店客房管理系统全局E-R 图
n
n
1
1
客房
客户
预订
退房
类型 编号
价位
负责人
姓名
身份证号
当前状态
3 逻辑结构设计
根据E-R图向关系模式转换的原则,作如下设计:
(1)将实体转换成独立的关系模式:
客房(编号,类别,价位,当前状态,负责人)
客户(身份证号,姓名,客房编号)
(2)将联系转换成相应的关系模式:
预订(身份证号,编号)
退房(身份证号,编号)
预订和退房均与客房实体集对应的关系模式合并,合并后的关系模式为:
客房(编号,类别,价位,当前状态,负责人,身份证号)
综上分析,酒店客房管理系统包含的关系模式如下:
客户信息表
列名数据类型长度是否为主键是否为空备注Cname Char 10 否否姓名CIDnum Char 20 是否身份证号客房信息表
列名数据类型长度是否为主键是否为空备注Rnum Char 10 是否客房编号Rtype Char 12 否否客房类型Rprice Float 12 否否客房价格Rstates Char 10 否否客房状态Rperson Char 10 否否负责人CIDnum Char 20 否否身份证号
4 数据库实施
1、使用SQL命令创建数据库
create database hotel
2、使用SQL命令创建数据表
create table Custom
(
Cname char(10)not null,
CIDnum char(20)primary key not null, )
create table Room
(
Rnum char(10)primary key not null, Rtype char(12)not null,
Rprice float(12)not null,
Rstates char(10)not null,
Rperson char(10)not null,
CIDnum char(20)
)
5 设计SQL查询命令
1、客房管理模块中相应功能的实现:
(1)登记客户信息
原理:
insert into Custom(Cname,CIDnum)
values('相应信息','相应信息');
举例:
insert into Custom(Cname,CIDnum)
values('张三','421222************');
insert into Custom(Cname,CIDnum)
values('李四','421222************');
insert into Custom(Cname,CIDnum)
values('王五','421222************');
insert into Custom(Cname,CIDnum)
values('小明','421222************');
insert into Custom(Cname,CIDnum)
values('小红','421222************');
或打开表直接添加: