1、本科实验报告课程名称: 软件工程导论 实验项目: 机票预订系统 实验地点: 行勉楼 A306 专业班级:软件 6666 班 学号:2014006666 学生姓名: 6666 指导教师: 王会青 2016 年 5 月 15 日太原理工大学学生实验报告专业班级 学号 姓名 实验日期 2016.04.14 实验地点 行勉 A306 成绩课程名称 软件工程导论 实验题目 软件工程的网上资源与常用的 CASE 工具一实验目的1)通过 Internet 搜索与浏览,了解网络环境中主流的软件工程技术网站,掌握通过专业网站不断丰富软件工程最新知识的学习方法,尝试通过专业网站的辅导与支持来开展软件工程应用实践。
2、2)通过 Internet 搜索与浏览,了解主流的软件工具和软件开发环境产品及发展和应用情况。二工具/准备工作需要准备一台带有浏览器、能够访问因特网的计算机。三实验内容与步骤1)上网搜索和浏览,了解软件工程的国家标准了解软件工程技术的应用情况,看看哪些网站在做着软件工程的技术支持工作?请记录搜索结果。火龙果软件技术支持中心 (火龙果软件)北京的 (开源论坛)杭州下沙的 (做网站的论坛)以及国外的 www.wordpress.org (免费的创建网站和 BLOG 的软件网站)http:/ (Google 提供的代码开发网站)http:/ (免费开源软件网站)国内在于理论性质的网站 http
3、:/ (软件测试)软件工程专业网站实验记录网址 内容描述http:/ ChinaU(以下简称 CU)是一个以讨论 Linux/Unix 类操作系统应用技术、自由软件开发应用技术、网络应用技术为主的开源社区网站http:/ 帮助广大企业充分利用互联网优秀资源来为全球竞争做好准备,提高中国企业的互联网应用能力和网络竞争力。http:/ 51Testing.COM 是目前国内人气最旺的软件测试门户网站,其为软件测试人员免费提供社区交流、人才服务、沙龙聚会、个人博客、电子杂志、资料下载等全方位信息服务。http:/ CSDN 面向 IT 专业技术人员,提供专业、集成化的内容服务,包括最大的技术论坛,最
4、有影响力的 BLOG,最权威的技术杂志程序员 , IT 专业搜索服务等。http:/ 网站目前拥有新闻中心、文档中心、下载中心、源码中心、刻盘服务、网友作品、电子杂志、编程论坛等众多栏目,基本可以涵盖大部分关于编程开发的内容。当前,软件工程专业网站当前的技术(如培训内容) “热点”是(参考):(1) 名称:软件开发过程指南主要内容:基于客户针对实际项目或者产品的开发,通过项目的真实实践,指导客户整体实施工程,同时为客户的项目提供一个基本的原型,作为演进的基础。在实战教练结束后,提供后续技术支持。达到在项目中实用的效果。(2) 名称:软件测试主要内容:学员在资深软件测试工程师带领下,通过测试理论
5、、测试方法的系统学习、以及项目测试案例的实践,使学员掌握软件测试的流程、技术、方法以及规范,熟悉常用测试工具与测试过程,使学员具备测试技术和测试管理的基本能力,并能够独立承担并实施项目测试。(3) 名称:性能测试方法与技术太原理工大学学生实验报告专业班级 学号 姓名 实验日期 2016.04.14 实验地点 A303 行勉 A306课程名称 机票预订系统 实验题目 传统软件工程的可行性研究1 引 言随着社会的发展,人民生活水平的不断提高,出行旅游成为了人们放松心情、接触自然的最好方式。优质的服务,快速的运输,廉价的机票,空运成为了人们出行的第一选择。然而传统的购票方式,仍然是人工机械的处理。大
6、多数乘客通过电话方式了解信息和预订机票。这样给服务台增加了很大的压力,并且大多数时间不能及时响应乘客的要求。这种传统的购票方式,不仅效率低下,而且给人们的出行带来了很多不便。同时,人工处理的成本再加上巨额的通信费用造成了传统购票方式的巨大开销。当面对机票订购高峰时刻的大量数据处理的时候,仅靠手工操作以现有的工作人员根本无法应付。同时还会出现由此带来的大量记录存放和管理所带来的问题。从而给旅客和管理人员带来了许多的不便。航空公司需要开发一个机票预定系统,用于简化处理预定机票的过程。由各个旅行社直接将定票信息通过网络提交到航空公司,系统安排航班及打印各类单据。目标:在计算机网络,数据库和先进的开发
7、平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息,为旅客提供快捷、方便的服务。2可行性研究前提系统规模与功能:1. 旅行社记录旅客的基本信息以及航班需求,并且加工这些信息,最后存储这些信息。2.旅行社提供旅客订票信息:各个旅行社把预定机票的旅客信息输入到系统中;3.系统处理订票信息:系统根据旅行社提供的旅客订票信息,为旅客安排航班;4.系统打印取票通知单和帐单:当旅客交付了预订金后,系统打印出取票通知和帐单给旅客;5.系统出票:
8、旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客;6.航班信息中心:包括各航班飞机的乘载情况等信息;7.对于本系统还应补充一下功能:(1)旅客延误了取票时间的处理(2)航班取消后的处理(3)旅客临时更改航班的处理8.系统的外部输入:旅客、旅行社和航空公司。9注意事项:在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知和交款发票)等。三、对所建设系统的分析技术可行性:在计算机网络、数据库和先进的开发平台的基础上,使用 JSP 技术,在加上好的硬件支持,和高速的校园网络,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现
9、航空公司的机票销售的自动化的计算机系统是可行的。在加上扎实的理论知识和一些开发经验。在现有的技术条件和硬件条件的支持下开发机票预定系统被证实为可行的。本系统使用的操作系统和数据库是目前最为普及和成熟的一种系统开发软件。从这种软件过去使用、升级情况和软件商所承诺的今后软件发展情况分析,系统软件应支持原系统版本上的各种应用正常使用。因而,该机票预定系统不存在技术问题。服务器采用 Windows 最新系统,利用 MySQL 最新数据库系统。经济可行性:社会可行性:1、法律因素2、所有软件都选用正版.3、所有技术资料都由提出方保管。4、合同制定确定违约责任操作可行性:所有员工都要接受培训,包括前台工作
10、人员和系统管理人员。要求所有员工都具有一定的计算机操作能力。客户端与服务器端联系在一起,在旅游局中只设立终端,在机场设立服务器,数据输入由终端输入,所有数据都由服务器处理,只在终端上显示数据结果。此设计简化了数据处理,但加重了服务器的数据处理。而使用客户端/服务器机理,简化数据流量,加快数据处理。四、系统流程图填写基本信息旅客 初期数据旅行社将旅客信息输入系统安排航班交付定金打印出订票通知和账单交款 系统核对 打印机票机票旅客订票通知和账单旅客旅客信息太原理工大学学生实验报告专业班级 学号 实验日期 2016.05.06 实验地点 行勉 A303 成绩课程名称 机票预订系统 实验题目 传统软件
11、工程的需求分析建模1、 目 的 与 任 务目 的 :(1) 客户端功能旅行社把旅客要求订票的信息由专人负责输入,进行网上订票。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客。(2) 服务器端功能接收由旅行社客户端发回的所需机票信息。通过网络接收机票信息并存入到服务器的数据库中。生成航班信息。根据所需机票信息(时间,地点) ,在数据库中查询并得到正确的航班的信息,分配所需的机票数并在数据库中做出已售出的标记。传递航班信息到旅行社(客户端) ,把得到的航班信息通过网络传递到旅行社。打印机票给已经订票的旅客。根据旅客的取票通知及帐单,经过确认无误后,接受旅客的付款后把机票印出来交给旅客。任务:
12、数据流图(1) 旅客订票流程图,如图 3.1 所示:旅客旅客信息记录订票订票旅客清单传给航空公司订票信息订票信息安排航班订票信息传给旅行社订票信息航班机票信息航班信息产生取票通知旅客订票清单航班信息旅客取票通知图 3.1 旅客订票流程(2) 旅客取票流程图,如图 3.2 所示:旅客旅客订票信息取票通知订票信息确认打印机票核对正确售出机票信息旅客机票图 3.1 旅客取票流程数据字典名字 : 旅客信息别名 : c u s t o m描述 : 旅客个人信息 , 用于确认旅客定义 : 旅客信息 = 姓名 + 性别 + 身份证号码 + 旅行时间 + 旅行目的地位置 : 输入到旅行社 ( 浏览器端 )名字
13、 : 订票旅客清单别名 : o r d e r L i s t描述 : 已订票的旅客的记录定义 : 订票旅客清单 = 所有订票 旅客信息 的集合位置 : 输入到旅行社 ( 浏览器端 )名字 : 订票信息别名 : o r d e r I n f描述 : 旅客的旅行时间和目的地 , 用于确定旅客的航班定义 : 订票信息 = 旅客旅行时间 + 旅客旅行目的地位置 : 传输到航空公司端 ( 服务器端 )名字 : 机票信息别名 : t i c k e t描述 : 旅客的航班信息 , 根据旅客的旅行时间和目的地确定定义 : 航班机票信息 = 旅客机票时间 + 旅客机票班次 + 剩余机票数位置 : 记录在
14、航空公司 ( 服务器 端 )名字 : 取票通知别名 : g e t M e s g描述 : 旅客领取机票的凭证定义 : 取票通知 = 旅客姓名 + 旅客身份证号码位置 : 输出到打印机太原理工大学学生实验报告专业班级 学号 姓名 实验日期 2016.05.06 实验地点 行勉 A306 成绩课程名称 机票预订系统 实验题目 传统软件工程的结构设计总体设计可能的设计方法有自顶向下,逐步细化设计方法;模块化设计方法;结构化设计方法。针对以上系统要完成的功能,本系统总体设计采用自顶向下,逐步细化的方法将功能层次结构的各个部分组合起来,以完成整个系统的实现细节。1.层次结构(系统的的顶层结构)航班信息
15、管理航班录入航班查询航班修改航班删除2.数据库设计(整体 E-R 图)图 4.2 航班信息管理旅客姓名性别 身份证号 旅行时间旅行目的地订票nm机票剩余数机票编号出发地机票班次机票日期旅行出发地航班订票日期目的地编号旅行社编号模块设计模块设计将对总体设计中模块结构进行细化。登陆模块航班信息管理的各个模块订票处理的各个模块输入旅客信息检查信息的合法性是否正确 ?入口NY保存旅客数据出口列出匹配信息自动匹配航班调整和确认匹配入口出口更新数据旅客登记安排航班规范并打印通知单从旅客信息中读出订票信息入口出口通知旅客响应旅客图:订票处理各模块取票处理模块例外处理退票面模块(延误取票和这个模块类似)太原理
16、工大学学生实验报告学号 姓名 实验日期 2016.05.10 实验地点 行勉 A303 成绩课程名称 机票预订系统 实验题目 测试一 、 目 的 与 任 务目的:在实验四基础上选择一个模块进行编码,完成相关的测试。1、了解软件测试方法分类,其中包括:1)白盒测试 2)黑盒测试 3)静态测试 4)动态测试2、了解测试类型 1)单元测试 2)集成测试 3)确认测试 4)黑盒测试5)白盒测试 6)功能测试 7) 测试 8) 测试任务:正确运用软件测试技术和方法,完成系统的单元测试、综合测试、确认测试、系统测试的方法,掌握测试用例的设计方法,并给出测试报告。2、 内 容 、 要 求测 试 用 例 :使
17、用黑盒法测试 “新增航班” 模块功能1 验证表单完整性:用例一:出发城市:北京到达城市:起飞日期:起飞时间:机票价格:机票数目:用例二:出发城市:北京到达城市:上海起飞日期:起飞时间:机票价格:机票数目:用例三:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:机票价格:机票数目:用例四:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:机票数目:用例五:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:用例六:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机
18、票价格:1234机票数目:1232 验证出发城市及到达城市合法性:用例一:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:123用例二:出发城市:北京到达城市:北京起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:1233 验证起飞日期合法性:用例一:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:123用例二:出发城市:北京到达城市:上海起飞日期:2008-6-6起飞时间:12:30机票价格:1234机票数目:1234 验证机票价格合法性:用例一:出发城市
19、:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:123用例二:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:¥1234机票数目:123用例三:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:-1234机票数目:1235 验证机票数目合法性:用例一:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:0用例二:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:&123
20、用例三:出发城市:北京到达城市:上海起飞日期:2008-6-11起飞时间:12:30机票价格:1234机票数目:-123太原理工大学学生实验报告专业班级 学号 姓名 实验日期 2016.05.14 实验地点 行勉 A303 成绩课程名称 机票预订系统 实验题目 面向对象的分析与设计1、 目 的 与 任 务目的:掌握面向对象的分析、设计方法,建立对象模型、功能模型和动态模型,并掌握 UML 中常用的模型符号的使用方法。任务:用一个简单项目(可以考虑仍然选择前面面向过程软件工程所选定的项目) ,通过分析,建立系统用例图,抽取出类,建立顺序图及类的状态图等。2、 内 容 、 要 求用例模型图用例模型
21、图说明:机票预订系统主要使用的对象是旅行社管理员。管理员根据顾客填写的目的地和时间信息,将其输入系统,系统根据相关信息进行处理,则系统其中的一个功能即用例就是接收顾客信息。顾客需要用取票单去航空公司取票,系统由管理员输入的信息来识别,则系统的另一个功能即用例就是预定管理员输入信息符合的票。1-2、类图类图说明:为此系统定义了 4 个类,分别是顾客类,管理员类,航空公司类,机票类。各个类对应的属性和操作方法在图中已表示出,目前应该还是有很多不完善的地方,在后期再加以修改。1-3、对象图对象图说明:对象图是根据设置的类图而设置的。一个对象就是类的一个具体实例,本例中设置了一个 custom的取票操
22、作,详细信息在图中已经设置,根据顾客的相关信息和操作,系统会调用相应的类的对象来处理,在本例中不一定会全部都涉及。1-4、顺序图顺序图说明:顺序图用来描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。由于在顾客,旅行社,航空公司之间也有先后顺序,所以在顺序图中会有两个生命周期,分别是订票和取票操作。旅行社根据顾客填写的信息,就操作系统的订票功能。系统在对管理进行处理时,会先记录顾客的相关信息,最后再打印取票单给顾客。系统对取票进行处理时,会先收取款,最后会把票给顾客。1-5、状态图状态图说明:在订票系统中,主要会有两个对象的状态:顾客和管理员。顾客的状态最开始是填写信息,再管理员将
23、信息输入系统,此时系统查询合适的航班,顾客收到系统打印出的相应单据,最后顾客将取票单和款返回给系统得到票。1-6、活动图活动图说明:状态图着重描述对象的状态变化以及触发状态变化的事件,活描述系统中各种活动的执行顺序,刻画一个方法中所要进行的各项活动的执行流程。在订票系统中,各种活动由顾客和管理员的状态图转化而来。顾客的信息,之后就由管理员输入系统,系统对应的活动就有查询订票,各自活动都有自己的的后续活动。2、动态模型动态模型说明:动态模型主要是描述系统的动态行为和控制结构。动态行为包括系统中对象生存期内可能的状态以及事件发生时状态的迁移,还包括对象之问动态合作关系,显示对象之间的交互过程以及交
24、互顺序,同时描述了为满足用例要求所进行的活动以及活动问的约束关系。动态模型主要包括的状态图、顺序图和活动图已经在1-4、1-5、1-6 中画出。建立动态模型的第一步是编写交互行为的脚本;第二步从脚本中提取出事件,确定后触发每个事件的动作对象及接收事件的目标对象;第三步排列事件发生的次序,确定每个对象可能有的状态及状态间的转换关系,并用状态图描绘它们。最后,比较各个对象的状态图,检查它们之间的一致性,确保事件之间的匹配。3、功能模型功能模型表明了系统中数据之间的依赖关系,以及有关的数据处理功能,它由一组数据流图组成,此功能模型的分析与设计依照对象模型和动态模型而来。DFD图(数据流图)描绘信息流和数据从输入移动到输出的过程中所经受的变换。数据流中没有任何具体的物理部件,它知识描绘数据在软件中流动和被处理的逻辑过程,流程如图。4、对象模型对象模型说明:对象模型描述了现实世界中的类与对象以及它们之间的关系,表示了目标系统的静态数据结构。首先确定对象类和关联,对于大型复杂问题还要进一步划分出若干个主题;然后给类和关联增添属性,以进一步描述它们;接下来利用适当的继承关系进一步合并和组织类。而对类中操作的最后确定,则需要等到建立了动态模型和功能模型之后,以为这两个子模型更准确地描述了对类中提供的服务的需求。