酒店客房管理系统面向对象设计.docx
《酒店客房管理系统面向对象设计.docx》由会员分享,可在线阅读,更多相关《酒店客房管理系统面向对象设计.docx(12页珍藏版)》请在冰豆网上搜索。
![酒店客房管理系统面向对象设计.docx](https://file1.bdocx.com/fileroot1/2022-12/11/2334b9f1-716c-4e29-9421-066e9482b7d3/2334b9f1-716c-4e29-9421-066e9482b7d31.gif)
酒店客房管理系统面向对象设计
《软件工程》实验报告
酒店客房管理系统
面向对象设计
指导教师:
黄潇
班级:
1002班(第_2_组)
学生姓名:
李志芳
学号:
2010100216
完成日期:
2013年6月14日
运城学院计算机科学与技术系
目录
1.概述3
2.系统结构设计3
3.模块及人机界面设计4
3.1系统4
3.2入住管理5
3.3房间信息管理6
3.4管理员操作7
3.5帮助8
4.数据设计8
5.对象设计10
5.1.设计类的服务10
5.2.设计关联11
5.3优化对象模型12
6.总结12
1.概述
面向对象设计就是将面向对象分析的问题域分析模型转换为符合成本和质量的求解域设计模型。
该阶段再划分为系统设计和对象设计。
系统设计确定实现系统的策略,进行系统架构设计、人机界面设计、数据设计和模块设计;对象设计确定设计模型中的类、关联、接口和现实服务的算法。
面向对象设计与面向对象分析是一个多次反复迭代的过程,二者界限模糊。
2.系统结构设计
酒店客房管理系统整体上采用Java语言编写,其脚本程序简单易用、灵活性强,可以控制整个页面。
基于JavaScript的用户界面简单明了,便于管理员操作。
设计时设置了访问权限,只有管理员才有权限进入系统进行相应的操作。
酒店客房管理系统数据库是基于MicrosoftAccess数据库平台搭建。
本系统采用面向对象的三层体系结构,同时在进入系统进行操作时需要管理员身份验证。
如图1所示:
图1酒店客房管理系统体系结构
3.模块及人机界面设计
根据系统的功能需求模型,将系统划分为不同的模块,入住管理模块对应新客户登记,客户查询,账单查询;房间信息管理模块包括空房查询,退房结算,历史记录查询,管理员模块包括增加管理员,密码修改,此外还有系统和帮助两个模块。
主界面如图2所示:
图2酒店管理系统主界面
本系统开发的目的是实现酒店客房的便捷管理,以提高工作效率,所以系统的人机交互界面都是以Web页面形式呈现。
下面给出主要的功能界面和设计说明。
3.1系统
其功能界面如图3所示:
图3系统功能界面
点击【关于】可以查看该酒店管理系统版本,
点击【关闭】将关闭该系统
3.2入住管理
其功能界面如图4所示:
图4入住管理功能界面
初始化:
管理员点击入住管理选项,页面显示入住管理的操作选项;
输入:
选择需要进行的操作,点击并进入相应的界面;
处理:
系统需访问Access数据库,查询相关信息;
输出:
提示管理员操作是否成功或输出相应的结果。
各个子模块功能界面:
3.3房间信息管理
其功能界面如图5所示:
图5房间信息管理功能界面
初始化:
管理员点击房间信息管理选项,页面显示房间信息管理的操作选项;
输入:
选择需要进行的操作,点击并进入相应的界面;
处理:
系统需访问Access数据库,查询相关信息;
输出:
提示管理员操作是否成功或输出相应的结果。
各个子模块功能界面:
3.4管理员操作
其功能界面如图6所示:
图6房间信息管理功能界面
初始化:
管理员点击管理员操作选项,页面显示管理员操作的操作选项;
输入:
选择需要进行的操作,点击并进入相应的界面;
处理:
系统需访问Access数据库,查询相关信息;
输出:
提示管理员操作是否成功
各个子模块功能界面:
3.5帮助
这部分是该酒店管理系统的使用说明。
其功能界面如图7所示:
图7帮助功能界面
4.数据设计
这里采用UML类图进行数据类的设计。
与E-R图相比,UML类图的描述能力更强,可看作是E-R图的补充。
对于关系数据库来说,可以用类图描述数据库模式,用类描述数据库表,用类的操作来描述触发器和存储过程。
图8是数据类之间的关系图。
图8数据类之间的关系图
对应的4张表如表1~表4所示:
表1管理员表
表2客户住宿信息表
表3退房结算信息表
表4历史记录表
5.对象设计
对象设计就是进一步扩充、完善和细化面向对象设计模型。
根据面向对象分析阶段的对象模型进行对象设计。
5.1设计类的服务
面向对象分析中的对象模型中只包含关键的服务,而在该阶段需要综合考虑对象模型、动态模型和功能模型,才能正确确定类的服务。
设计者可以根据动态模型中的行为和功能模型中的用例描述确定类的服务,然后设计实现服务的数据结构和算法,主要是选择能正确描述信息的逻辑结构和相应的能够高效实现算法的物理结构。
设计的算法应该是高效的、易于理解的和易于扩展的。
这里采用活动图表示设计类的服务。
如客户住宿信息类的新客户登记服务,其活动图表示如图9所示;客户住宿信息类的退房结算服务,其活动图表示如图10所示:
图9客户住宿信息类的新客户登记服务的活动图
图10客户住宿信息类的退房结算服务的活动图
5.2设计关联
设计关联就是确定实现关联的具体方法,主要有单向遍历和双向遍历两种方式来访问关联。
许多情况下,都需要双向遍历关联。
对于单向关联,如果关联的重数是一元的,则采用指针实现,如果是多元的,则采用指针集合实现。
对于双向关联,通常采用易于修改的独立关联对象来实现。
如图11所示,在系统的对象设计模型中,存在以下关联:
管理员和客户、管理员和客房、管理员和业务记录等。
上述关联关系采用指针或指针集合方式实现。
图11管理员和客户、管理员和客房、管理员和业务记录之间的关联
5.2优化对象模型
主要是从效率和清晰性角度优化对象模型,提高效率和调整继承关系。
增加派生属性和派生关联可以提高访问效率。
应进一步采用抽象与具体的方法来优化继承关系,建立合理的、易于理解的类继承结构,以实现代码共享、减少冗余。
6.总结
通过本次试验,我对面向对象的设计流程有了进一步的了解,进一步掌握了面向对象设计的分析模型转换。
熟悉了对象设计模型中的类、关联、接口和现实服务的算法的方法。
在实验过程中锻炼了实际应用能力,也发现了自己知识点掌握的薄弱方面,今后要努力补充。