酒店信息管理系统软件工程设计说明有图.docx

上传人:b****5 文档编号:5853814 上传时间:2023-01-01 格式:DOCX 页数:15 大小:182.06KB
下载 相关 举报
酒店信息管理系统软件工程设计说明有图.docx_第1页
第1页 / 共15页
酒店信息管理系统软件工程设计说明有图.docx_第2页
第2页 / 共15页
酒店信息管理系统软件工程设计说明有图.docx_第3页
第3页 / 共15页
酒店信息管理系统软件工程设计说明有图.docx_第4页
第4页 / 共15页
酒店信息管理系统软件工程设计说明有图.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

酒店信息管理系统软件工程设计说明有图.docx

《酒店信息管理系统软件工程设计说明有图.docx》由会员分享,可在线阅读,更多相关《酒店信息管理系统软件工程设计说明有图.docx(15页珍藏版)》请在冰豆网上搜索。

酒店信息管理系统软件工程设计说明有图.docx

酒店信息管理系统软件工程设计说明有图

xxx大学

软件详细设计说明书

项目名称:

酒店信息管理系统

 

实验课程:

年级:

专业:

班级:

学号:

姓名:

指导教师:

 

目录

一、绪论2

1.1开发背景2

1.2系统调查2

1.3项目开发的意义2

二、系统需求分析3

2.1需求问题模块划分3

2.1.1系统维护模块3

2.1.2用户需求模块3

2.1.3系统功能需求模块4

2.2酒店管理系统主要数据流图及数据字典4

2.2.1酒店管理系统的主要数据流图4

三、数据库设计5

3.1数据库管理系统的选择5

3.2数据库系统设计6

四、系统设计与实现10

4.1三层架构在系统设计过程中的应用11

4.2主要运行界面及功能代码11

4.2.1顾客入驻信息登记实现界面11

4.2.2顾客入驻信息登记实现界面12

4.2.3顾客信息查询实现界面12

4.2.2房间信息管理实现界面13

五、系统测试13

5.1程序调试13

5.2程序的测试14

5.2.1测试的重要性及目的14

5.2.2测试的步骤14

5.2.3测试的主要内容14

六、总结15

一、绪论

1.1开发背景

随着物质水平逐步提高,精神生活也开始趋向丰富多彩。

作为旅游服务的重要组成部分——酒店业也得到了迅猛的发展。

要提高整体竞争能力必须变革酒店的管理模式,要提高管理水平,实施信息化建设无疑是实现这一目的的必由之路和明智之举。

在信息时代,重要的是必须要有一个完善的管理信息系统,在总体上实现酒店管理的自动化、规范化和人性化,使酒店管理由经验管理转为科学管理。

随着计算机在酒店中的普及应用,计算机技术的不断发展,酒店管理系统的发展到了一个新的时期,新的系统平台、新的系统特点及发展方向不断涌现,本系统采用客户机/服务器模式,功能更加细致完善,系统更加稳定可靠。

并在预订、入住和退房等流程上简捷、方便,信息明朗,及时响应客户的需求创造更多的经济效益及利润。

1.2系统调查

随着入住旅客人数的增加,顾客的各种信息也成倍增长。

给酒店客房部的日常管理造成了一定的压力,有必要开发新的酒店管理系统来提高酒店客房的管理工作效率。

通过这样的系统,可以做到入住顾客规范管理、科学统计和快速查询,从而降低工作人员的工作压力,把更多的时间可以运用到提高服务质量上来,复杂重复的工作很多都可以用MIS管理系统来完成。

本系统通过应用  MicrosoftVisualStudio2010、SQLServer2012技术开发了本系统。

winform应用程序和其他windows应用程序一样,也是由两大部分组成的:

一是用户界面,二是应用于处理逻辑。

  

用户是通过窗口、菜单和窗口上的各种控件等界面元素来操作应用程序的,而应用处理逻辑是通过事件和函数中的程序代码来实现的。

它可以实现各种入住客户信息的管理操作。

本酒店客房管理系统具有较强的应用性和实用性。

1.3项目开发的意义

酒店客房信息的管理在整个酒店客房运作过程中起着非常重要的作用。

通过信息的管理,酒店客房的管理人员能够随时了解客房的预订、入住等情况,可以在宏观上分配基础设施的使用。

 

利用数据库管理资料可以方便地管理会员客户的资料以利于业务上的往来和客服调查,同时功能强大的新增、修改、删除及查询操作和钟点计费的功能使酒店客房管理系统成为管理人员的得力助手,基于手工操作的种种缺点,为了实现管理自动化,将酒店客房管理的流程与规则与现代的计算机技术相结合,建立起酒店客房管理系统。

酒店客房管理系统还可以全程监管客户在客房的消费活动,并对收入情况进行统计,从而实现酒店客房管理流程全过程的电子化操作。

二、系统需求分析

2.1需求问题模块划分

酒店管理系统主要分为两个模块:

用户需求模块、系统功能需求模块。

这两个模块设计主要是因为有了这两个模块管理者更容易发现该酒店的不足,还有就是容易看到酒店的入住情况。

2.1.1系统维护模块

(1)密码设置:

每个用户均有自己的密码,可以防止非本系统人员进入本系统;又因每个用户的权限不一致,故可防止用户越权操作。

(2)登陆设置:

设置每个用户的登陆,只有能进入管理系统的用户,可对系统进行操作。

(3)数据查询:

要求可以分别按房间编号,房间类型等进行数据查询。

2.1.2用户需求模块

用户希望通过使用酒店客房管理系统得到所需信息,达到提高管理水平的目的,希望新系统具有以下功能:

(1)数据记录:

使用计算机快速处理日常的业务及相关数据,实现实时查询各种入住信息。

(2)数据录入:

可以实时的录入住宿单和退宿单等的情况。

(3)数据查询:

可以实时查询客房信息、客人账单信息等的具体情况。

2.1.3系统功能需求模块

(1)预订功能需求:

其主要目的是提高酒店的开房率,为客人预留房间,并提供良好的预订服务。

其功能需求包括预订查询,可用房确认,预订记录建立,预订确认,预订记录维护等;

(2)接待功能需求:

其主要目的是以最快的速度为客人开房。

其功能需求包括宾客登记、可用房确认、修改宾客信息、删除宾客信息和查询宾客信息等;

(3)结账功能需求:

其功能需求包括客人结账、打印报表和客人挂账等;

(4)客房管理功能需求:

其主要目的是对客房的信息化管理,提高客房管理的精度和准确度,同时减轻酒店客房中心员工的工作负担,从而提高客房管理的效率和服务质量。

其主要功能是房态维护,费用记录和客人查询等。

2.2酒店管理系统主要数据流图及数据字典

在为系统确定最终的需求分析时,主要采用的是软件工程需求分析方法中面向数据流的分析方法,在面向数据流的分析方法中使用的是结构化(SA)分析方法,它是由美国Yourdon公司在上世纪70年代提出的,其基本思想是将系统分析看成工程项目,有计划、有步骤地进行工作。

这是一种特别适用于分析大型信息系统的开发方法。

虽然就酒店管理系统规模不大,但也使用了SA方法进行分析。

下面列出了系统需求分析阶段完成的数据流图和数据字典。

2.2.1酒店管理系统的主要数据流图

酒店管理系统的数据流图如图所示

酒店管理系统的顶层数据流图

 

酒店管理系统的零层数据流图

酒店管理系统的一层数据流图

三、数据库设计

3.1数据库管理系统的选择

本系统在数据库管理系统的选择上,对多种数据库管理系统(Access、Informix、Orcale、DB2、SQLServer、Foxpro)的优缺点进行了对比,最终确定使用Microsoft的SQLServer2008。

SQLServer数据库管理系统是美国Microsoft公司推出的一种关系型数据库系统。

它是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。

其主要特点如下:

(1)高性能设计,可充分利用Windows的优势。

(2)系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。

(3)强壮的事务处理功能,采用各种方法保证数据的完整性。

(4)支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。

SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。

选用SQLServer2008数据库管理系统可以说是一个明智的选择,它是面向中型企业的关系型数据库。

3.2数据库系统设计

数据库设计是建立数据库及其应用系统的关键技术,是信息系统开发和建设的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据模式,建立数据库及其应用系统,使之能够有效地存储数据,满足用户需求

将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。

它是整个数据库设计的关键。

描述概念模型的有力工具是E-R(Entity-Relationship,实体-联系)模型,本系统就是采用这种工具进行的概念模型设计。

设计概念结构通常有四种方法:

自顶向下、自底向上、逐步扩张和混合策略(即将自顶向下和自底向上相结合)。

本系统采用的是自底向上的方法,即自顶向下进行需求分析,然后再自底向上的设计概念结构(逐一设计分E-R图,然后再组合成完整的系统E-R图)。

总体E-R图

系统功能模块图

从(图3-2)中可以看出,系统总共分为8个模块。

客房类型模块:

可以对房型、房价等情况等进行查询、修改等操作。

客房查询模块:

实现对所有房间的基本情况进行查询。

客户预定模块:

实现对客户预定情况进行全面管理。

客户入住模块:

可以查询所有客户入住情况。

客房更改模块:

实现客户换房的一些相关操作。

客房状态模块:

可以对客房空房、预定、入住等情况等进行修改等操作。

客户结算模块:

实现酒店客房账务结算。

注册帐号模块:

实现用户注册的功能。

本软件的数据库名称为:

Hotel,包含6个数据表,分别是:

BookIn、CheckIn、CheckOut、Room、RoomType、UserInfo。

具体表结构如下:

表3-1用户表[UserInfo]

列名

数据类型

允许为空

说明

UserId

int

用户ID(主键)

UserName

varchar(50)

用户姓名

Password

varchar(50)

密码

IsAdmin

bit

是否管理员

表3-2客户入住表[CheckIn]

列名

数据类型

允许为空

说明

CustomerId

int

客户ID(主键)

Name

varchar(10)

姓名

Sex

char

(2)

性别

PType

varchar(50)

证件类型

P_ID

varchar(50)

证件号码

Tel

varchar(50)

电话号码

CType

varchar(50)

客户类型

RoomNum

int

房间号

Indate

datetime

入住时间

Days

int

入住天数

Dmoney

money

押金

Remark

varchar(50)

备注

表3-3客户结算表[CheckOut]

列名

数据类型

允许为空

说明

Id

int

客户结算ID(主键)

CustomerId

int

客户Id

Name

varchar(10)

姓名

列名

数据类型

允许为空

说明

Sex

char

(2)

性别

Tel

varchar(50)

电话号码

CType

varchar(50)

客户类型

RoomNum

int

房间号

Indate

datetime

入住时间

Days

int

入住天数

Discount

float

折扣

Addmoney

money

额外费用

SunMoney

money

总金额

Rem

varchar(50)

备注

表3-4客房预定表[BookIn]

列名

数据类型

允许为空

说明

BookId

int

预定号(主键)

Name

varchar(10)

姓名

Sex

char

(2)

性别

PType

varchar(50)

证件类型

P_ID

varchar(50)

证件号码

Tel

varchar(50)

电话号码

RoomNum

int

房间号

Indate

datetime

入住时间

Days

int

入住天数

Dmoney

money

押金

Remark

varchar(50)

备注

表3-5房间状态表[Room]

列名

数据类型

允许为空

说明

RoomId

int

房间号(主键)

RoomType

varchar(10)

房间类型

RoomNum

int

房间号

Book

char

(2)

是否预定

列名

数据类型

允许为空

说明

Empty

char

(2)

是否空

Stop

char

(2)

是否停用

Remark

varchar(50)

备注

表3-6房间类型表[RoomType]

列名

数据类型

允许为空

说明

RoomTypeId

int

房间类型ID(主键)

RoomType

varchar(10)

房间类型

Area

int

房间面积

Bed

int

床位

UnitPrice

money

单价

Broadband

char

(2)

是否有宽带

Remark

varchar(50)

备注

四、系统设计与实现

酒店管理系统的设计使用C#,采用微软一贯提倡的三层体系结构模式(用户层、业务逻辑层、数据层),在设计上体现为MVC(Model—View—Controller)设计模式。

所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。

这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有C/S应用才是三层体系结构,三层是指逻辑上的三层,这三个层可以放置到一台机器上。

三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。

通常情况下,客户端不直接与数据库进行交互,而是经由中间层与数据库进行交互。

三个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。

三层体系结构具有以下明显的优点:

逻辑结构清晰——程序结构清晰,代码易于维护;

资源优化——由于一个应用程序的功能被子分为三个部分,不同的项目组处理不同的组件,在执行时,能够生成更加优化的代码。

4.1三层架构在系统设计过程中的应用

如何将应用程序的业务逻辑和表示逻辑分离,以便我们能够在不影响业务逻辑的情况下修改用户界面,或者反之,在不影响表示逻辑的情况下修改业务实现,三层架构开发正是这样的模式。

三层架构基于用户输入将建模、显示和操作分为三个独立的类。

模式用于管理应用程序域的行为和数据,并响应为获取其状态信息(通常来自于视图)而发出的请求,还会响应更改状态的指令(通常来自于控制器);视图用于管理信息的显示,它代表用户交互界面;控制器用于解释用户的鼠标和键盘输入,以通知模式和(或)视图进行相应的更改,控制器并不做任何的数据处理。

三层架构要求对应用分层,虽然要花费额外的工作时间,但产品的结构清晰,产品的应用通过模型可以得到更好地体现。

4.2主要运行界面及功能代码

4.2.1顾客入驻信息登记实现界面

4.2.2顾客入驻信息登记实现界面

4.2.3顾客信息查询实现界面

4.2.2房间信息管理实现界面

五、系统测试

5.1程序调试

1.测试的基本工作流程

在设计系统的过程中,存在一些错误是必然的。

对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。

但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致。

这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。

5.2程序的测试

5.2.1测试的重要性及目的

测试的重要性:

软件的测试在软件生命周期中占据重要的地位。

近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。

测试的目的:

1.软件测试是为了发现错误而执行程序的过程;

2.测试是为了证明程序有错,而不是证明程序无错误;

3.一个好的测试用例是在于它能发现至今未发现的错误;

4.一个成功的测试是发现了至今未发现的错误的测试。

测试并不仅仅是为了要找出错误。

通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。

5.2.2测试的步骤

与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。

大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。

因此,大型软件系统的测试基本上由下述几个步骤组成:

1.模块测试在这个测试步骤中所发现的往往是编码和详细设计的错误。

2.系统测试在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。

3.验收测试在这个测试步骤中发现的往往是系统需求说明书中的错误。

5.2.3测试的主要内容

为了保证测试的质量,将测试过程分成几个阶段,即:

代码审查、单元测试、集成测试、确认测试和系统测试。

1.单元测试

单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。

2.集成测试

集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。

如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。

3.确认测试

确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。

经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。

4.系统测试

软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。

包括恢复测试、安全测试、强度测试和性能测试等。

六、总结

在设计的过程中,我掌握了很多C#的编程知识,并对这种成熟并广泛应用的技术进行了深入的学习。

设计的过程也是一个再学习的过程,在遇到问题的时候我尽量自己想办法解决,这在很大程度上激发了我们的自学能力;在没有办法解决的情况下,认真的向老师请教,从老师那里我学到了很多的知识,老师对我的指导起到了画龙点睛的作用。

在我的程序设计过程中,我充分的体会到了“实践出真知”这一点,书本上的知识是不够的,只有把理论与实践相结合才能够真正的学到知识。

一个管理信息系统的设计,不可能一步到位,还需要不断的完善和补充。

编程前的深思熟虑是减少程序调试工作量的重要方法,只有进行充分考虑,才会减少调试过程中的工作量。

虽然在开始写程序之前我们做了多的准备工作,但在真正的写程序时仍然发现许多问题,有些问题是分析时的疏漏,有些则是如果不做无论如何也想不到的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1