软件工程课程设计封面.docx
- 文档编号:7521821
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:18
- 大小:2.77MB
软件工程课程设计封面.docx
《软件工程课程设计封面.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计封面.docx(18页珍藏版)》请在冰点文库上搜索。
软件工程课程设计封面
软件工程课程设计
项目名称:
酒店管理系统
项目团队名称:
钻金银
学院计算机工程学院班级计算1011
姓名上官剑新学号2010813062成绩
姓名李少坡学号成绩
姓名陈文武学号成绩
姓名陈志红学号成绩
姓名林顺明学号成绩
指导老师张敏
2014年1月5日
摘要:
本系统实现酒店管理的基本功能,包括房间管理、客户管理、基础设置、房间登记入住以及退房管理等。
系统利用.Net平台技术进行开发,实现酒店的动态管理,使得对客户入住以及登出的管理更加及时、高效,提高了效率。
同时还对系统的开发原理、功能特点和设计方案进行了介绍。
通过实际的训练掌握与理解软件工程学中的基本概念、方法和原则,进行一个从软件计划、需求分析、设计、编码、测试和软件开发全过程的训练,将所学的理论,方法和技术有机地串联起来,从而为将来实践和进一步深造打下基础。
关键词:
酒店管理SQL数据库.NET软件工程
一、课程设计的目的与要求
通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力,使学生的创造性得以充分发挥,有益于学生综合运用多学科的理论与技能,培养学生的独立工作能力。
其中主要重点在软件工程的分析、设计、实现与测试的过程,及文档的规范化和标准化。
具体如下:
1、软件项目计划
对风险管理策略不要求。
2、软件需求规约
需求分析建模主要侧重于信息描述和功能描述,可采用传统的结构化方法(如数据流图,数据字典),或面向对象的UML建模方法(包括场景描述、用例图、类图等)。
3、软件设计规约
结构化设计方法主要描述数据设计(数据库设计、体系结构设计、过程设计),过程设计需说明几个主要模块接口及内部设计结构即可。
面向对象方法需要包括相应的视图(如精化的类图、活动图、顺序图、状态图、构件图等),以及OO模型向关系模型的映射,对于面向WEB的应用开发,还应画出页面间的导航图(可参看有关资料)。
4、测试规约
写出对主要模块的测试过程和测试用例。
5、程序设计与编码
采用的编程工具与开发环境不限,实现系统部分功能(应是主要功能)的程序设计,并能够进行演示。
6以上文档鼓励采用面向对象的开发方法进行建模。
可采用相应的CASE工具完成,也可以采用基于UML的建模方式,或基于WEB的编程实现。
二、设计正文
1.软件项目计划
1.1课题题目:
酒店管理系统
1.2系统的主要目标:
本系统目标是实现酒店管理系统所需的各种基本功能,包括房间入住、退房功能、房间和客户的管理,还有基础诸如报表、预约等人性化功能。
1.3系统的开发环境及运行环境:
操作系统:
WindowsXP、Win7
数据库系统:
SQLServer2008
开发工具:
VisualStudio2010、MicrosoftOfficeVisio2003
服务器:
IIS+ASP.NET4.0平台
2.软件需求规约
2.1系统分析
在开发之前,需要尽可能地掌握客户的完整的需求,尽可能地提供改良性的建议,使得软件系统可以提高酒店的管理效率,改善服务水准。
2.1.1需求分析
通过与集大宾馆的大堂经理以及其他的操作管理人员进行细致交流以及上网查询酒店行业的一些信息后,最终确定本系统要具备以下功能。
●基础设置:
用于设置酒店管理系统的基本资料,包括房间类型、房间列表级等级等;
●客户管理:
用于管理入住的酒店刻画,提供基本的客户信息;
●消费项管理:
提供酒店其他消费项目的管理;
●入住退房管理:
提供登记入住管理和酒店退房的功能;
●酒店预定管理:
提供酒店预定服务,随时查看可用的房间信息;
●报表管理:
提供了押金、结算以及可用房间信息的报表查看功能;
●费用结算管理:
提供了结算管理功能,包括日结算、支票核对等;
●系统功能设置:
提供了基本信息管理、用户权限、数据库管理等。
2.2可行性分析
将来,酒店竞争将主要在智能化、信息化方面展开,酒店信息化的发展势在必行。
酒店管理系统可以为酒店管理者提供酒店方面及时而准确的信息,并且可以对酒店的经营、节省成本提高运营质量和管理效率方面提供控制。
2.2.1分析的项目背景
从酒店的需求以及现有技术等方面研究酒店管理系统的可行性,为公司上层进行决策提供依据。
★项目提出者:
本小组以及集大宾馆工作人员
★项目开发者:
本小组
★系统用户:
酒店的工作人员以及入住的客户。
2.2.2可行性分析的前提
通过对系要求和系统目标进行分析,如下:
★系统要求:
酒店管理系统可以为销售提供全面而准确的信息,为客户提供快捷、细致、周到的服务,为财务提供严密的账务系统,并具有应对各种复杂情况的能力,同时为领导的决策提供强有力的支持。
★系统目标:
信息收集的制度化、信息加工的标准化、信息存储的档案化、信息传递规范化以及酒店管理的专业化。
2.2.3对酒店支出与收益的分析
据网上的一些统计,当前酒店行业的管理仍然比较散乱,信息不及时,大部分工作需要手工操作,对信息的维护不仅费用高、工作量大,而且对信息的安全行很难得到保障。
一些酒店的如果支出一定的资金进行自身配套系统的研发后,会使得大部分的工作实现了自动化,那么酒店的管理就只需话费很少的财力物力即可,并且降低了数据被恶意破坏的风险。
2.2.4其他的社会因素分析
本小组的人员之前有做过相应的宾馆管理MS的开发,在先前数据库课设的基础上再次开发酒店管理系统就比较容易上手,本小组的成员对数据库理论知识以及C#编程语言的掌握也大大推进了本项目系统的计划。
综上以上各方面的分析,本小组一致认为此项目结构清晰、功能合理,而且使用C#结合面向对象UML建模方法能够进行开发,并实现例如集大宾馆要求的全部功能。
3.软件设计规约
3.1系统功能结构
本系统为C/S结构,采用面向对象方法实现了房间管理功能、客户管理功能、客户入住与退房功能、财务运算功能以及系统设置功能,如图3.1所示。
图3.1
3.2类图
本系统的主要类图如下图3.2所示,具体类的说明参见源代码处,限于篇幅,此处省略部分。
图3.2
3.3顺序图
(1)管理员修改房间信息顺序图
图3.3.1管理员修改房间信息顺序图
(2)登记入住的顺序图
图3.3.2登记入住的顺序图
3.4协作图
图3.4协作图
3.5数据库设计
(1)数据库表,限于篇幅,只做主要数据库的介绍,更多详情请参考HMS数据。
序号
数据库表
数据表存储的内容
1
Room
存储房间如楼层、电话等信息
2
Customer
存储客户如姓名、联系方式等信息
3
Users
存储管理员如用户名、密码、权限等信息
4
Booking
存储订房登记信息
5
CheckIn
存储入住信息
6
Item
存储额外消费信息
(2)数据表之间的关系
酒店管理系统采用SQLServer2008作为后台存储数据库。
根据功能的结构和需求中的业务流程,对数据库中将要涉及的信息进行了归纳,本系统使用了将近20个表,该项目包含的实体主要有客户、客房、消费项、用户等。
下面通过E-R图介绍主要实体间的属性关系,酒店管理系统的E-R图如图3.5.2所示。
部分视图如图3.5.3所示。
图3.5.2E-R图
图3.5.3视图
3.6流程图
图3.6.1登录验证流程图
图3.6.2订房流程图
图3.6.3管理员登记客户入住
图3.6.4添加房间流程图
4.程序设计与编码
本系统采用了三层架构来实现,即分为用户界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数据库打交道,为业务逻辑层提供底层的数据库操作。
具体程序详见附件代码处。
下面对整个系统进行主要功能的演示。
4.1Connection类主要是与数据库连接,提供数据库操作功能,代连接服务器的码如下:
//XML中连接字符串constr
//构造一个新的连接
this.sqlConnection1=newSqlConnection(DataLevel.Connection.ConnString);
this.sqlCommand1=newSqlCommand();
this.sqlCommand1.Connection=this.sqlConnection1;
4.2登录界面的实现
登录窗口位于UILevel文件下的LoginForm.cs文件中。
当用户输入了用户名和密码后,单击连接按钮,将开始验证用户,并根据验证的结果决定是否进入酒店管理系统。
如图4.2所示。
图4.2
4.3系统主页面加载
图4.3系统的主页面
4.4房间管理
图4.4
4.4.1添加房间
图4.4.1添加房间
4.5客户管理
图4.5
4.5.1添加客户
图4.5.1添加客户
4.6登记入住
图4.6登记入住
4.7退房演示
图4.7退房
5.测试规约
5.1计算此项目的代码度量值如下所示。
图5.1代码度量值
5.2测试过程(单元测试、集成测试、确认测试)
在系统测试中,我们首先对各个子模块进行单元测试,即把每一个模块作为一个单独的实体来测试,保证每个模块作为一个单元能正确运行。
然后在完成所有模块后,我们将各子模块集成起来,再对它进行系统测试,找出系统设计或编码上的错误,以及验证系统是否实现了指定的功能。
最后找几个其他的同学再对系统进行黑盒子测试,验证系统是否满足用户的功能需求。
在测试的过程,特别是在集成测试之后,发现了许多问题及功能缺陷,最后经过修改调试后都解决了。
比如,有一个问题是,在删除用户之后,系统里还剩有许多与该用户有关的冗余记录,造成系统混乱。
在进行了分析之后,发现是因为在删除用户时,没有对与他所关联的记录进行删除造成的,在添加了对其关联记录的级联删除之后,问题得到了解决。
三、课程设计总结或结论
1.通过这次软件工程课程设计的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。
1.1学习和实践了分析和设计软件系统的各种知识,包括面向对象的系统分析与设计,编码和测试方面的知识。
1.2掌握了自动化的软件开发工具MicrosoftOfficeVisio2003的建模过程,并将其运用于软件开发的全过程。
1.3加深掌握了.Net平台的三层架构模式设计。
1.4进一步加强和提高软件工程文档的编写能力。
2.本系统基本实现了关键的功能模块,在功能上基本满足了用户的需求,但是由于时间较紧,有些模块以及整个系统还有许多不完善的地方,如界面不太美观,操作性不太友好等。
四、参考文献
[1]刁成嘉.UML系统建模与分析设计.北京:
机械工业出版社,2007
[2]刁鄂大伟.软件工程.北京:
清华大学出版社,2010
[3]王小科.C#开发宝典.北京:
机械工业出版社,2012
[4]王院峰.C#3.0实例精通.北京:
机械工业出版社,2009
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课程设计 封面