软件工程课程设计小组报告.pdf
《软件工程课程设计小组报告.pdf》由会员分享,可在线阅读,更多相关《软件工程课程设计小组报告.pdf(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程课程设计小组报告软件工程课程设计小组报告机机票票预预订订系系统统专业名称:专业名称:_软件工程_班班级:级:_2010 级 3 班_同组成员同组成员:_李效伦_ 201001050515_同组成员同组成员:_郭瑶瑶_ 201001050509_同组成员同组成员:_韩方杰_ 201001050607_指导教师指导教师:_倪丽娜老师_实验地点实验地点:_计算机系实验室_完成日期完成日期:本学期教学周:第 8 至 14 周信息科学与工程学院信息科学与工程学院二零一二零一二二年十一月年十一月目目录录一、课程设计概述.3二、项目的需求分析过程及需求模型. 32.1.系统可行性分析.32.2.系统
2、需求分析.32.2.1.系统目标设计.32.2.2.系统功能需求分析.42.2.3.系统功能描述.52.2.4 系统的数据流图.5三、项目设计模型.63.1.系统 UML 建模设计.63.1.1.UML 简介.63.1.2.系统的用例分析.73.1.3.系统的顺序图.83.1.4.系统的状态图.143.1.5.系统的活动图.153.1.6.系统的类图.213.2.系统数据库建模.223.2.1.数据库概念设计.223.2.2.数据库物理设计.24四、实现项目的过程与步骤.27五、遇到的困难与获得的主要成果. 285.1.遇到的主要困难.285.1.1.界面风格的统一.285.1.2.数据库使用
3、的统一.295.1.3.文档的编写.295.1.4.高级语言嵌入 SQL 语言. 295.1.5.C#控件的使用.305.2.主要成果.305.2.1.软件工程知识的巩固. 305.2.2.visio 作图能力的提升. 315.2.3.编程能力的提升.315.2.4.团队意识的加强.325.2.5.数据库使用技巧的提高. 325.2.6.面向对象程序设计的认识的提高.32六、测试与运行记录.336.1.利用等价类划分进行身份证测试.336.2.注册账号测试用例.336.3.登录测试用例.346.4.修改密码测试用例.34七、课程设计完成结果分析.35八、附录.35山 东 科 技 大 学 课 程
4、 设 计3一、课程设计概述一、课程设计概述1.1. 目的通过本课程设计的实践及其前后的准备与总结,复习、领会、巩固和运用软件工程课堂上所学的软件开发方法和知识,以此来完成飞机订票系统的分析、设计、编码、测试等工作。1.2. 任务通过认真阅读老师所给的课程设计的题目要求, 进行系统的需求分析、 。1.3. 开发环境:Microsoft Visual Studio 2008 + SQL Server 2005 、 Windows XP1.4. 参考资料:1. 钱永秋等,软件工程,清华大学出版社,2007 年 3 月。2. 胡荷芬等,UML 系统建模基础教程,清华大学出版社,2010 年 5 月。3
5、. 郑阿奇等,SQL Server 使用教程,电子工业出版社,2009 年 12 月。4. 金旭亮等,C#程序设计语言基础,北京理工大学出版,2008 年 10 月。二、项目的需求分析过程及需求模型二、项目的需求分析过程及需求模型2.1.2.1.系统可行性分析系统可行性分析随着互联网的普及,越来越多的人都加快了生活的步伐。同样,买票也越来越方便,现在有更多的用户已经不再排队买票,而是通过互联网,很快就可以完成自己的订票。想要退票、改签,亦可以通过网络来完成。在很大程度上节约了人们的时间,可以说互联网给用户带来了一次伟大的变革。飞机订票系统,给用户提供友好的界面,方便的操作,满足简单用户的需求。
6、使用户使用更加方便,快捷。2.2.2.2.系统需求分析系统需求分析2.2.1.2.2.1.系统目标设计系统目标设计系统开发的总目标是实现飞机订票的系统化、规范化和自动化。对航空公司旗下的所有航班(包括航班类型,航班号,时间,所属公司,始发地,目的山 东 科 技 大 学 课 程 设 计4地,仓位,起飞时间,抵达时间,剩余座位,票价) 。进行统一管理对用户的信息(包括姓名,电话,身份证号,护照号)进行统一管理。提供方便的查询方法。如:时间、始发地、目的地、票价等进行查询。提供对机票的预定功能。提供对机票的改签功能。提供对退票功能。提供对付款功能。提供添加航班功能,比如:某一个航空公司新增加了从 A
7、 地飞往 B 地的航班。提供调整航班功能。提供取消航班,对于因天气、人为、飞机等原因为不能正常起飞的航班进行取消。提供用户的注册功能。2.2.2.2.2.2.系统功能需求分析系统功能需求分析(1) 用户管理:用户的分类、注册、订票、退票、改签、付款、取票等。(2) 系统管理:管理员订票、退票、改签、添加航班、取消航班、调整航班、统计售票情况。满足以上需求的系统主要包含有一下几个子系统(1)登录和注册子系统:该系统中主要包含了用户的注册和登录等功能。(2)管理员子系统:该子系统主要包含管理员对系统的操作。(3)旅客子系统:该子系统主要包含旅客对系统的操作。(4)旅行社子系统:该子系统主要包含旅行
8、社对系统的操作。下图为该飞机订票系统的主要功能模块图:山 东 科 技 大 学 课 程 设 计5图 1:飞机订票系统功能模块图2.2.3.2.2.3.系统功能描述系统功能描述(1)订票。处理各类用户的订票业务。(2)退票。处理各类用户的退票业务。(3)改签。处理各类用户的退票业务。(4)注册。处理用户注册业务。(5)登录。对用户的登录信息进行检查。(6)查询。负责机票信息的查询。(7)添加航班。负责航班信息的添加。(8)取消航班。负责航班的取消。(9)调整航班。对航班信息进行调整。(10) 统计售票。对售票情况进行统计。(11) 取票。用户完成取票功能。(12)付款。用户对订票进行网上付款。2.
9、2.42.2.4 系统的数据流图系统的数据流图山 东 科 技 大 学 课 程 设 计6图 2:飞机订票系统的 DFD 图三、项目设计模型三、项目设计模型3.1.3.1.系统系统 UMLUML 建模设计建模设计3.1.1.UML3.1.1.UML 简介简介UML 是一种功能强大的、面向对象的可视化系统分析的建模语言,它采用一整套成熟的建模技术, 广泛地适用于各个应用领域。 它的各个模型可以帮助开发人员更好地理解业务流程, 建立更可靠、 更完善的系统模型。 从而使用户和开发人员对问题的描述达到相同的理解,以减少语义差异,保障分析的正确性.山 东 科 技 大 学 课 程 设 计73.1.2.3.1.
10、2.系统的用例分析系统的用例分析该飞机订票系统的用况图如下:图 3:飞机订票系统的用况图从用例图中我们可以看出管理员、旅行社和旅客之间对本系统所具有的用例。管理员所包含的用例有:(1)登录系统:管理员可以通过登录该系统进行各项功能的操作(2)订票:帮助用户查询订购机票等。(3)退票:帮助用户退订机票等。(4)改签:帮助用户改签机票等。(5)增加航班:对航班的添加等。(6)调整航班:对航班信息的修改等。(7)取消航班:取消不能正常起飞的航班等。(8)统计售票信息:统计一个时间段内的售票信息等。旅客所包含的用例有:(1)登录系统:管理员可以通过登录该系统进行各项功能的操作山 东 科 技 大 学 课
11、 程 设 计8(2)订票:旅客查询订购机票等。(3)退票:旅客退订机票等。(4)改签:旅客改签机票等。(5)付款:旅客对订购的机票进行付款等。(6)取票:旅客取走自己订购的机票等。旅行社所包含的用例有:(1)登录系统:管理员可以通过登录该系统进行各项功能的操作(2)订票:旅行社查询订购机票等。(3)退票:旅行社退订机票等。(4)改签:旅行社改签机票等。(5)付款:旅行社对订购的机票进行付款等。(6)取票:旅行社取走自己订购的机票等。3.1.3.3.1.3.系统的顺序图系统的顺序图顺序图是显示对象之间交互的图, 这些对象是按时间顺序排列的。该飞机订票系统主要含有以下几个重要的顺序图,其他对象的顺
12、序图和这些也类似。本系统主要的顺序图有:1、 登录系统顺序图山 东 科 技 大 学 课 程 设 计9图 4:飞机订票系统登录顺序图【顺序图说明】(1)输入登录用户账号和密码:登录系统。(2)验证登录用户账号和密码:对用户的登录信息进行验证, 检查是否是笨系统的合法用户,并区分用户的权限。(3)登录信息有效:根据用户的不同权限进行不同的页面跳转。(4)退出系统:用户使用完系统后退出系统。登录系统时,系统自动区分不同用户的不用权限,用户以有效的身份登录后,可以在自己的权限范围内操作系统。2、 订票顺序图山 东 科 技 大 学 课 程 设 计10图 5:飞机订票系统订票顺序图【顺序图说明】(1)查询
13、:查询某个航班的信息。(2)订购: 检查订购信息无误后进行确认订购。(3)付款:为订票进行付款。(4)取票:取走自己在系统上定的票。(5)退出:退出系统。订票时,首先查询所定的票是否存在以及是否有余票。如果有余票,检验订票信息,并订购、付款以及取票。3、 退票顺序图山 东 科 技 大 学 课 程 设 计11图 6:飞机订票系统退票顺序图【顺序图说明】(1)查询:查询某个已订票的信息。(2)退订: 检查退订信息无误后进行确认退票。(3)退出:退出系统。退票时,首先查询自己的订票信息,确认退票信息后确认退订即可。4、 改签顺序图山 东 科 技 大 学 课 程 设 计12图 7:飞机订票系统改签顺序
14、图【顺序图说明】(1)查询:查询某个已订票的信息。(2)删除已订票: 检查改签信息无误后退订已订票。(3)查询要改签的余票:有余票才可以改签。(4)改签:改签机票,将新改签的机票存入订票表中。山 东 科 技 大 学 课 程 设 计13(5)退出:退出系统。改签时,首先查询自己的订票信息,首先查询要改签的机票是否有此航班并且有余票,然后退订自己已订购的机票,再订购自己想改签成的机票即可。5、 添加航班顺序图图 8:飞机订票系统添加航班顺序图【顺序图说明】(1)添加航班:查询是否已存在此航班的信息,如果没有就添加航班。(2)退出:退出系统。添加航班时,首先查询是否已存在此航班的信息,如果没有就添加
15、航班,有就提示添加有误。6、 取消航班顺序图山 东 科 技 大 学 课 程 设 计14图 9:飞机订票系统取消航班顺序图【顺序图说明】(1)查询:查询是否存在要取消的航班信息。(2)取消航班:取消航班。(3)退出:退出系统。取消航班时,首先查询是否存在要取消的航班信息,如果不存在,则提示取消有误;如果存在,则确认取消此航班。7、 调整航班顺序图图 10:飞机订票系统调整航班顺序图【顺序图说明】(1)查询要调整的航班:查询要调整的航班是否存在。(2)调整航班:输入要调整的信息,如果调整信息正确,则调整成功。(3)退出:退出系统。调整航班时,首先:查询要调整的航班是否存在,如果存在,则输入要调整的
16、信息,如果调整信息正确,则调整成功。退出系统。3.1.4.3.1.4.系统的状态图系统的状态图飞机订票系统的机票状态图如图 7 所示。【状态图说明】山 东 科 技 大 学 课 程 设 计15机票在未出售时为系统的剩余机票,可以被订购。在有剩余机票的前提下,如果机票被订购以后,系统中的相应的机票就应该减少。同时,被订购的机票可以在规定的时间之前被退订或者改签。超出退订或者改签时间的不能被退订或者改签。当用户退订机票时,机票的剩余张数应该增加。当用户改签机票时,被改签的机票的张数应该增加,改签后的机票应该减少。添加一个航班,系统中就会产生此航班的机票信息。图 11:飞机订票系统的机票状态图3.1.
17、5.3.1.5.系统的活动图系统的活动图活动图描述的是某流程中的任务的执行,活动图描述活动是如何协同工作的,当一个操作必须完成一系列事情, 而又无法确定以什么样的顺序来完成这些事情时, 活动图可以更清晰地描述这些事情。在本飞机订票系统中,我们主要描述了飞机订票系统的订票、退票、改签、增加航班、调整航班、取消航班的活动图。1.订票活动图【订票活动图说明】订票时,首先登陆系统,系统验证用户登录信息的有效性。用户查询所要定的票是否存在以及是否有余票。如果有余票,输入自己的信息(如:姓名、身份证号等信息) ,检验订票信息是否正确。如果正确就确定订票,并记录取票,及时取票。如果不正确,就核对订票信息,进
18、行改正,直到正确为止。山 东 科 技 大 学 课 程 设 计16图 12:飞机订票系统订票活动图2、退票活动图【退票活动图说明】山 东 科 技 大 学 课 程 设 计17退票时,首先登陆系统,系统验证用户登录信息的有效性。用户查询所要退订的票是否存在。如果存在,检验退票信息是否正确。如果正确就确定退票。如果不正确,就核对退票信息,进行改正,直到正确为止。图 13:飞机订票系统的退票活动图3、改签活动图【改签活动图说明】改签时,用户首先登陆系统,系统验证用户登录信息的有效性。用户查询所要改签的票是否存在。如果存在,检验退票信息是否正确。如果正确就进行改签。如果不正确,就核对改签信息,进行改正,直
19、到正确为止。然后查询要改签的机票是否有余票,如果有余票就确认改签。山 东 科 技 大 学 课 程 设 计18图 14:飞机订票系统的改签活动图4、添加航班活动图【添加航班活动图说明】添加航班时, 用户首先登陆系统, 系统验证用户登录信息的有效性 (必须是管理员身份) 。管理员查询要添加的航班是否存在。如果不存在,检验添加航班信息是否正确。如果正确就添加航班。如果不正确,就核对添加航班信息,进行改正,直到正确为止。山 东 科 技 大 学 课 程 设 计19图 15:飞机订票系统的添加航班活动图5、取消航班活动图【取消航班活动图说明】取消航班时, 用户首先登陆系统, 系统验证用户登录信息的有效性
20、(必须是管理员身份) 。管理员查询要取消的航班是否存在。如果存在,检验取消航班信息是否正确。如果正确就取消航班。如果不正确,就核对取消航班信息,进行改正,直到正确为止。山 东 科 技 大 学 课 程 设 计20图 16:飞机订票系统的取消航班活动图6、调整航班活动图【调整航班活动图说明】调整航班时, 用户首先登陆系统, 系统验证用户登录信息的有效性 (必须是管理员身份) 。管理员查询要调整的航班是否存在。如果存在,检验调整航班信息是否正确。如果正确就调整航班。如果不正确,就核对调整航班信息,进行改正,直到正确为止。山 东 科 技 大 学 课 程 设 计21图 17:飞机订票系统的调整航班活动图
21、3.1.6.3.1.6.系统的类图系统的类图【类图说明】(1)login 类是用户登录的类,它的属性有用户名、密码、权限、编号,操作有登录。(2)admin 类是管理员类,他没有属性,操作主要是订购机票、退订机票、改签机票、添加航班、取消航班、调整航班等等。(3)users 类是用户类,包括用户的姓名、身份证号等属性,同样具有订购机票、退订机票、改签机票等操作。(4)ticket 类是具体机票的类,属性包括航班类、时间、航班号、始发地、目的地、起飞时间、抵达时间、舱位、余票数、票价等属性。山 东 科 技 大 学 课 程 设 计22图 18:飞机订票系统的类图及关系3.2.3.2.系统数据库建模
22、系统数据库建模考虑到系统的推广性,本系统采用 SQL SERVER 2005 作为数据库。并且采用PowerDesigner 进行数据建模,从而自动生成 sql 脚本。3.2.1.3.2.1.数据库概念设计数据库概念设计1、数据库表设计(1)登录用户表 login_users:用户名,密码,用户编号,分组。(2)客户表 users:姓名,电话,地址,身份证号,性别,客户编号。(3)售票表 sale_ticket:时间,航班号,舱位,座号,身份证号。(4)航班表 flight:航班类,时间,航班号,所属公司,始发地,目的地,舱位,起飞时间,抵达时间,剩余票数,票价。(5)订票表 book_tic
23、ket:时间,航班号,舱位,座号,身份证号。山 东 科 技 大 学 课 程 设 计232、飞机订票系统个实体之间的 E-R 图图 12:飞机订票系统各实体之间的 ER 图3、基于 powerdesigner 的 CDM 数据库模型(1)数据库概念数据模型 CDM 对象如下图,该图显示了各实体的属性及各实体之间的关系。山 东 科 技 大 学 课 程 设 计24图 13:飞机订票系统数据库关系图3.2.2.3.2.2.数据库物理设计数据库物理设计由概念模型生成物理模型的的数据库脚本文件为 图书管理.sql 文件,代码如下:USE aircraf_booking_systemGO/* 对象:Tabl
24、e dbo.flight脚本日期: 10/30/2012 17:28:45 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE dbo.flight(航班类 varchar(10) NULL,时间 datetime NULL,航班号 varchar(10) NOT NULL,所属公司 varchar(10) NULL,始发地 varchar(10) NOT NULL,目的地 varchar(10) NOT NULL,舱位 varchar(10) NULL,起飞时间 varchar(10
25、) NOT NULL,抵达时间 varchar(10) NOT NULL,剩余票数 int NOT NULL,山 东 科 技 大 学 课 程 设 计25票价 float NULL,CONSTRAINT PK_flight PRIMARY KEY CLUSTERED(航班号 ASC)WITH (PAD_INDEX= OFF, STATISTICS_NORECOMPUTE= OFF, IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS= ON, ALLOW_PAGE_LOCKS= ON) ON PRIMARY) ON PRIMARYGOSET ANSI_PADDING OFF
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课程设计 小组 报告
限制150内