当前位置:文档之家› 酒店管理系统需求分析范文.doc

酒店管理系统需求分析范文.doc

酒店管理系统目录一、引言 (2)1. 概述 (2)2. 编写要求 (2)3. 参考资料 (2)二、系统分析与总体设计 (3)1. 系统需求分析 (3)2. 系统体系结构设计 (3)3. 开发工具的选择 (9)4. 开发所需的实用技术 (9)5. 数据库结构设计 (10)6. 系统模块界面设计 (12)7. 系统主要代码 (15)三、系统运行环境 (18)四、测试方案 (18)1. 登陆模块测试 (18)2. 入住模块测试 (19)3. 换房模块测试 (19)4. 续住模块测试 (20)5. 退房模块测试 (20)五、特色 (21)六、个人心得体会 (21)一、引言1.概述酒店业是一个前景广阔而又竞争激烈的行业。

我国的酒店业迅速发展,已经成为一个具有相当规模的产业。

酒店客房管理使用手工处理账务,存在许多现金流失的漏洞,使用软件来管理宾馆业务,结账既准确,速度又快,而且统计的报表也快捷。

对酒店整个来说,对酒店经营状况起决定作用的是酒店的服务管理水平。

如何利用先进的管理手段来提高酒店的管理水平成为酒店业务发展的当务之急。

面对信息时代的机遇和挑战,利用科技手段提高酒店的管理无疑是一条行之有效的途径。

虽然计算机管理并不是酒店管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对酒店的业务管理提供强有力的支持。

2.编写要求系统内容:酒店信息管理系统系统名称:酒店信息管理系统系统架构: C/S架构需求分析部分:针对于预订信息管理、客房管理、账务管理、员工管理等酒店管理服务开发的系统。

系统设计部分:概念模型(ER )系统实现部分:以数据的CRUD为核心3.参考资料《软件工程(第 3 版)》——张海藩、倪宁编著,人民邮电出版社。

《数据库系统概论(第 4 版)》——王珊、萨师煊编著,高等教育出版社。

《Visual Basic 数据库系统开发实例导航》——刘韬、骆娟、何旭洪编著,人民邮电出版社。

二、系统分析与总体设计1.系统需求分析本酒店管理系统主要针对于预订信息管理、客房管理、账务管理、员工管理等酒店管理服务开发的系统。

包括以下功能:对预订信息的管理,包括查询、添加、修改、入住、删除。

对客房信息的管理,包括查询、入住登记、退房、续住、换房。

对账务信息的管理,包括收入报表及消费报表两个部分的管理。

实现查询、添加、修改、删除账务信息的功能。

对酒店员工信息的管理,需要有管理员权限。

包括查询、添加、修改、删除。

对系统用户信息的管理,需要有管理员权限。

包括查询、添加、修改、删除。

对个人账号信息的管理,包括修改密码。

2.系统体系结构设计1. 系统总流程图如图 1 所示图.1 系统总流程图2.系统的功能模块图如图 2 所示在功能模块示意图的树形结构中,每一个叶节点都是一个最小的功能模块,每一个功能模块都需要针对不同的数据表完成相同的数据库操作,即添加记录、修改记录、删除记录以及查询显示记录信息。

图.2 系统功能模块图在本系统中,账号管理模块的功能比较简单。

在系统初始化时,有五个默认的用户。

系统管理员用户为 admin 、a ,普通用户为 1 、2 、3 ,由程序设计人员手动添加到数据库中,它们的默认密码均与用户相同。

管理员用户可以创建用户、修改用户信息以及删除用户;普通用户则只能修改自己的密码。

3.账号管理功能模块的关系如图3 所示。

图 3. 账号管理功能模块4. 系统总数据流图如图 4 所示。

图 4. 系统总数据流图图 5.入住模块数据流图图 6.退房模块数据流图7. 换房模块数据流图如图7 所示。

图 7.换房模块数据流图图 8.续住模块数据流图9. 预订模块数据流图如图9 所示。

图 9.预订模块数据流图图 10.管理模块数据流图3.开发工具的选择开发数据库管理信息系统需要选择两种工具,即前台开发语言和后台数据库。

本系统选择开发工具为Visual Basic和Access。

与其他开发工具相比,Visual Basic具有简单易学、灵活方便和易于扩充等特点,越来越多地被用作客户/ 服务器应用程序的前端开发工具,与后台的Access数据库相结合,能够提供一个高性能的管理信息系统解决方案。

所以采用Visual Basic作为开发工具,Access作为后台数据库。

4.开发所需的实用技术开发酒店管理系统需要掌握如下技术:Visual Basic的基本编程方法。

Access数据库基础的管理方法。

常用 SQL 语句的使用。

ADO 数据库访问技术。

5.数据库结构设计数据库采用Access2003建立,用ADO 作为连接数据对象。

1.数据表:管理员信息字段名字段类型说明账号文本管理员账号,主键密码文本管理员密码员工 ID 文本对应的员工 ID权限文本账号类型客房信息字段名字段类型说明房间号数字客房房间号,主键房间类型数字客房类型价格数字客房价格房态文本客房入住信息客户信息字段名字段类型说明ID 文本客户身份证号码,主键姓名文本客户姓名联系电话文本客户联系电话入住房间数字客户入住房间号入住日期日期/ 时间客户入住日期实收房费数字入住时收取的房费预收押金数字入住时收取的押金退房日期日期/ 时间入住时的退房时间备注文本备注收入报表字段名字段类型说明账务 ID 文本收入账务 ID ,主键收入类型数字账务收入类型收入日期日期/ 时间账务收入日期金额数字账务金额操作员文本账务操作员备注文本备注消费报表字段名字段类型说明账务 ID 文本消费账务 ID ,主键消费类型数字账务消费类型消费日期日期/ 时间账务消费日期金额数字账务金额操作员文本账务操作员备注文本备注预订信息字段名字段类型说明预订 ID 文本预订信息 ID ,主键姓名文本客户姓名身份证文本客户身份证联系方式文本客户联系电话入住天数数字客户入住天数入住人数数字客户入住人数客房数数字预订的客房数客房类型数字预订的客房类型入住日期日期/ 时间预订的入住日期退房日期日期/ 时间预订的退房日期备注文本备注员工信息表字段名字段类型说明员工 ID 文本员工 ID ,主键姓名文本员工姓名身份证文本员工身份证所属部门数字员工的所属部门职位数字员工的职位入职日期日期/ 时间员工的入职日期基本工资数字员工的基本工资奖金数字员工的奖金备注文本备注类型表字段名字段类型说明类型编号数字类型的编号,主键类型名称文本类型名称2. E-R 图如图 11 所示。

图 11.E-R图6.系统模块界面设计1. 登陆界面如图12 所示。

图 12. 登陆界面图 13. 管理系统主界面3.预订管理信息界面如图 14 所示图 14. 预订管理信息界面4. 客房信息管理界面如图15 所示图 16. 收入报表管理界面6.消费报表管理界面如图 17 所示图 17. 消费报表管理界面7. 员工信息管理界面如图18 所示图 19. 用户管理界面7.系统主要代码1.连接数据库:Public Rs As New ADODB.RecordsetPublic conn As New ADODB.ConnectionPublic dFlie As StringPublic Sub Connect()conn.ConnectionString 酒店管理系统.mdb"= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &dFileconn.OpenEnd SubPublic Sub Open_Rs(SQL As String)If Rs.State = 1 Then Rs.CloseRs.Open SQL, conn, adOpenKeyset, adLockBatchOptimistic End Sub2.初始化用户:Type PerInfoID As StringName As StringDepartment As StringPosition As StringEDate As DateState As StringRoot As BooleanPassword As StringUsername As StringEnd TypePublic PInfo As PerInfoPublic Sub init(TmpID As String)Dim SQL As StringSQL = "SELECT 员工信息表. 员工ID, 员工信息表. 姓名 , [Department]. 类型名称AS 部门 "SQL = SQL + ", [Position].类型名称AS 职位 ,员工信息表 . 入职日期 , 管理员信息 .权限" SQL = SQL + ",管理员信息.账号,管理员信息.密码"SQL = SQL + "FROM (((员工信息表LEFT JOIN管理员信息ON员工信息表.员工ID= 管理员信息 .员工 ID)"SQL = SQL + "LEFT JOIN类型表AS [Department]ON员工信息表. 所属部门=[Department].类型编号 )"SQL = SQL + "LEFT JOIN类型表AS [Position] ON员工信息表.职位+员工信息表.所属部门 =[Position].类型编号)"SQL = SQL + "WHERE员工信息表.员工ID='" + TmpID + "'"Open_Rs (SQL)With PInfo.ID = Rs("员工ID").Name = Rs("姓名").Department = Rs("部门").Position = Rs("职位").EDate = Rs("入职日期").State = Rs("权限").Password = Rs("密码").Username = Rs("账号")If Rs(" 权限 ") = " 管理员 " Then.Root = TrueElse.Root = FalseEnd IfEnd With = "员工ID:" + PInfo.ID + vbCrLf + vbCrLf + "姓名:" + = + "所属部门:" + PInfo.Department + vbCrLf + vbCrLf + "职位: " + PInfo.Position + vbCrLf + vbCrLf = + "入职日期:" + Trim(PInfo.EDate) + vbCrLf + vbCrLf + "权限: " + PInfo.StateEnd Sub3.登陆:Private Sub OK_Click(Index As Integer)Dim SQL As StringUsername = txtUserPassword = txtPasswordIf Trim(Username) = "" ThenMsgBox "请输入用户名"txtUser = ""txtPassword = ""txtUser.SetFocusExit SubEnd IfIf Password = "" ThenMsgBox "请输入密码"txtPassword = ""txtPassword.SetFocusExit SubEnd IfSQL = "SELECT * FROM 管理员信息WHERE 账号 ='" + Username + "'"Open_Rs (SQL)If Rs.RecordCount = 0 ThenMsgBox "没有该账号"txtUser = ""txtPassword = ""txtUser.SetFocusElseIf Password = Rs("密码") ThenMsgBox "登陆成功"SQL = "SELECT姓名,权限,员工信息表.员工ID "SQL = SQL + "FROM员工信息表LEFT JOIN管理员信息ON 员工信息表. 员工 ID= 管理员信息 .员工 ID "SQL = SQL + "WHERE 账号 ='" + Username + "'"init (Rs("员工ID"))Me.HideElseMsgBox "密码错误"txtPassword = ""txtPassword.SetFocusExit SubEnd IfEnd IfRs.CloseEnd Sub三、系统运行环境硬件配置:CPU : PIII800 或AMD 1G 以上内存: 1G 及以上硬盘: 20G 及以上操作:鼠标、键盘软件开发环境:系统: Windows98/2000/XP软件: Microsoft Office Access 2003 、Microsoft Visual Basic 6.0四、测试方案1.登陆模块测试编号等价类输入预期的输出1 正确的账号,正确的密码账号: a ;密码: a 进入主界面2 正确的账号,错误的密码账号: a ;密码: as “错误——密码错误”3 错误的账号账号: b “错误——账号不存在”编号等价类输入预期的输出1 正确填写添加入住,添加收客户信息入2 错误的客“错误——身份户信息;证不足 18 位,错(身份证误——联系方式位数不足不足 11 位,错误18 位;联——房间已入住,系方式不错误——没有该足11位;房间号,错误——错误房间入住日期过早,错号;入住日误——入住天数期小于现小于 1”在;入住天数小于 1)3.换房模块测试编号等价类输入预期的输出1 正确客户信客户信息更息,正确换新,客房信息房信息更新2 错误客户信客房号码:错误填写或身份证:错误填写或姓名:错误填写“错误——不息存在该客户”3 错误的客房房间号:已入住的房间,房间号:没有该房间号“错误——没信息有该客房,错误——该客房编号等价类输入预期的输出1 正确客户更新客户信信息,正确息续住信息2 错误客户客房号码:错误填写或身份证:错误填写或姓名:错误填写“错误——信息不存在该客户”3 续住天数续住天数: -1 “错误——小于 1 续住天数错误”5.退房模块测试编号等价类输入预期的输出1 正确客户信更新客户信息息,更新客房信息,更新收入消费报表2 错误客户信客房号码:错误填写或身份证:错误填写或姓名:错误填写“错误——息不存在该客户”其他模块测试与上基础模块测试雷同。

相关主题