火车票购票系统实验报告
- 格式:doc
- 大小:2.01 MB
- 文档页数:17
数据库课程设计报告 -------火车售票管理信息系统软件学院软件工程2013级x班姓名: xx学号:2013xxxxxxxx目录一、系统开发平台 (1)四、需求分析 (2)4.1 用户需求说明 (2)4.1.1 数据需求 (2)4.1.2 事务需求 (3)4.2 系统需求说明 (4)五、数据库逻辑设计 (4)5.1 ER图 (4)5.2 数据字典 (5)5.3 关系表 (7)六、数据库物理设计 (7)6.1 索引 (7)6.2 视图本节可选 (8)6.3 安全机制 (8)七、应用程序设计 (8)7.1 功能模块 (8)7.2 界面设计 (15)7.3 事务设计 (15)八、测试和运行 (16)九、总结 (16)一、系统开发平台题目:对火车站的售票进行管理。
主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理(车厢号、座位号)、售票、退票、查询、异常处理。
开发工具:eclipse数据库:mysql操作系统:windows8.1二、数据库规划2.1 任务陈述:做一个火车票售票管理系统:对火车站的售票进行管理。
主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理(车厢号、座位号)、售票、退票、查询、异常处理。
2.2 任务目标完成一个火车票售票管理系统,要实现管理员对车票的增添以及删改功能,同时需要实现用户对车票的查询购买,以及出现调整之后的退票服务。
三、系统定义3.1 系统边界管理员:可以对车票以及车次进行删改操作。
用户:可以买票,但是不可以对火车票进行添加操作3.2 用户视图3.2.1 管理员视图(1)列车管理:包括列车的录入、查询、修改和删除。
(2)用户管理:包括系统使用用户的添加、查询、修改、删除等。
在线支付用户身份信息用户注册车次设置管理员车次信息录入用户信息管理票务系统车站实际情况(3)系统数据处理:数据查询,根据关键字过滤,查看当前车次信息,车票信息,用户信息以及处理历史。
火车订票系统可行性研究报告一、前言随着高铁和城际铁路的不断发展,火车出行已成为人们出行的重要方式之一。
然而,传统的火车售票方式存在很多问题,比如排队购票、抢票难等。
因此,利用现代信息技术研发一套火车订票系统势在必行。
本报告旨在对火车订票系统的可行性进行研究,分析系统的需求和功能,评估其项目开发的可行性,并提出相应的解决方案。
二、系统需求分析1. 用户需求a. 用户群体:火车订票系统将服务于广大火车出行的乘客,包括个人、家庭、公司组织等。
b. 用户需求:用户需要能够通过系统进行车次查询、选座购票、在线支付、改签退票等操作,满足用户出行的便捷性和灵活性。
2. 功能需求a. 车次查询:用户可以根据出发地、目的地、时间等条件进行车次查询,获取相关车次信息。
b. 选座购票:用户在系统中可以选择座位进行购票,系统需要实时更新座位信息,防止多人购买同一座位。
c. 在线支付:用户需要能够通过系统进行在线支付,支持多种支付方式。
d. 改签退票:用户可以在系统中进行改签和退票操作,系统需要能够实时更新订单状态和余票信息。
3. 系统性能需求a. 响应速度:系统需要保证用户的查询、购票、支付操作都能够在短时间内完成,避免长时间等待。
b. 可靠性:系统需要保证订单信息的准确性和安全性,避免出现订单丢失或泄露等问题。
c. 扩展性:系统需要支持多用户同时在线,保证系统的稳定性和可用性。
三、技术可行性分析1. 开发技术a. 前端技术:可以选择使用HTML、CSS、JavaScript等前端技术进行页面开发,保证系统的友好性和易用性。
b. 后端技术:可以选择使用Java、Python、Node.js等后端技术进行系统的开发,保证系统的稳定性和性能。
2. 数据库技术a. 数据库选择:可以选择使用MySQL、MongoDB等数据库技术进行订单信息的存储和管理,保证订单数据的安全和可靠性。
b. 数据库设计:需要设计合理的数据库结构,保证订单信息的一致性和完整性。
火车站售票系统调研报告1. 引言1.1 背景介绍火车站作为人们出行的重要交通枢纽,每天都会迎来大批的乘客。
为了提高售票效率和方便乘客购票,很多火车站纷纷推出了售票系统。
本报告旨在对火车站售票系统进行调研,并分析其特点和优缺点。
1.2 调研目的和方法本次调研的目的是了解火车站售票系统的运作方式、用户体验、效率等方面的情况。
调研采用了访谈和用户调查两种方法进行数据收集。
2. 火车站售票系统的运作方式2.1 系统架构火车站售票系统一般由前台售票窗口和自助售票机两个部分组成。
前台售票窗口由工作人员负责,乘客可以通过窗口购票、退票等。
自助售票机则是乘客自助购票的便捷设备。
2.2 功能特点火车站售票系统的功能包括车票查询、购票、退票、改签等。
乘客可以通过系统查询车次、余票信息,并选择购票座位。
退票和改签也可以通过系统实现,方便了乘客的操作。
3. 用户体验分析3.1 便捷性火车站售票系统的推出极大地提高了购票的便捷性。
乘客可以通过前台售票窗口或自助售票机随时购票,无需排队等待。
同时,系统方便了乘客的退票和改签操作。
3.2 用户界面火车站售票系统的用户界面应简洁明了,操作便捷。
对于自助售票机来说,屏幕的大小和显示效果非常重要,以确保乘客能够清晰地看到相关信息。
4. 系统效率分析火车站售票系统的推出,在一定程度上提高了售票的效率。
前台售票窗口的工作人员可以通过系统快速查询车次、余票信息,并为乘客办理购票等手续。
自助售票机则可以一次性处理多张车票的购票需求,避免了排队等待。
5. 优缺点分析5.1 优点火车站售票系统的推出方便了乘客的购票操作,提高了售票效率。
系统的自助功能使乘客可以在不受时间和地点限制的情况下购票、退票和改签。
同时,系统可以减少人工售票窗口的工作压力,提高工作效率。
5.2 缺点火车站售票系统存在一些缺点。
首先,对于老年人或不熟悉电子设备操作的乘客来说,自助售票机可能会比较复杂,造成不便。
其次,系统的故障率也可能会影响售票效率,需要有专业人员及时处理。
1.1 需求分析调查学生火车票预定系统应用领域涉及的内容,对涉及到领域的各个应用的信息要求和操作要求进行详细分析。
最重要的是调查、采集信息、分析购票人信息和火车票预定流程。
处理要求、数据的安全性与完整性要求。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求客户端的界面要简单明了,易于操作。
火车站为方便旅客返程,需要开辟一个火车票订票系统,这个火车订票系统可以满足旅客的主要需求。
首先是要有旅客的登陆界面,包括旅客的用户名和密码。
然后登陆到主操作界面,旅客可以进行车票的查询,显示起始车站和终点车站,乘车的日期,发车时间,座号和票价,并且在查询到自己的所要车坐的车次后可以预订车票;旅客还可更改自己的用户名和密码,以保证个人信息的安全。
如是管理员登陆的话,还可以添加车次,包括起始站,终点站,发车时间,车次类型,还可以删除某个车次;并且在需要的时候,管理员也可添加和删除用户。
1.2 流程图经过可行性分析和初步需求调查,抽象出该系统业务流程图,结合该实例具体情况,给出旅客订票的具体需求。
图1.2 旅客购票流程图1.3 系统框架在调查完了系统需求之后,就要开始分析用户需求。
在此,采用自顶向下的结构化分析方法。
首先,定义全局概念结构的框架,如图 1.3 所示:图 1.3 火车定票系统总框架图每一个子系统需要进一步细化。
车次信息系统的细化如图 1.4 所示:车票信息系统的细化如图 1.5 所示:旅客信息系统的细化如图 1.6 所示:1.3 软件模块划分1.普通用户模块在普通用户模块中可以实现登陆,用户名修改,车次查询,订票。
2.管理员模块管理员模块包含三个板块的内容:①管理员可以实现登陆,用户名修改,车次查询,订票。
②车次基本信息管理:包括添加,查询,删除车次。
③用户信息管理:包括添加,删除用户。
1.4 功能结构2 详细设计(更功能模块的实现)2.1 登陆界面①用户名两个静态文本输入框②密码①用户名编辑框登陆界面两个编辑框②密码编辑框①登录两个按钮②取销登陆界面如图 2.1 所示:图2.1 登陆界面功能的实现:①首先建立一个对话框,命名为“欢迎使用火车票预订系统”,添加两个静态文本输入框“请输入用户名”和“请输入密码”,再添加两个编辑框“用户名编辑框”和“密码编辑框”然后建立类向导。
数据结构与算法课程实验报告课程设计一:火车售票系统设计及实现姓名:cll班级:学号:一、实验内容:火车售票系统在现实中的应用已经非常普遍,目前通常使用可视化的方法实现,例如采用C/S模式下的程序设计或者采用B/S模式下的程序设计,通常都具有较为友好的界面和较为完善的功能。
火车售票系统的实现过程中,主要涉及到数据格式的设计,也就是数据结构的设计。
通常在采用数据库的情况下,可以运用数据库的设计来实现。
在没有采用数据库情况下需要,单独设计相应数据结构和算法。
二、实验目的:按给定需求,通过查找相关资料,完成火车售票系统设计及实现,在设计过程中充分运用数据结构与算法课程中所学知识,从而熟练地掌握和应用线性表、单链表等重要数据结构和常用算法。
提前熟悉软件需求分析,软件测试等环节,运用相应程序设计语言实现该系统,从而进一步提高程序设计能力。
三、问题描述(1)此系统可以实现售票、退票、车票剩余情况查询等功能。
(2)每张车票包含车次、座位信息。
在售票、退票、查询剩余票等环节中,都必须显示出车票的信息,即车次、座位情况。
(3)退票时,必须是车站售出的车票才能退,否则视为无效票,不能退票。
(4)演示程序以用户和计算机的对话方式进行,即在计算机终端上显示“提示信息”之后,由用户在键盘上输入程序中规定的运算命令;相应的输入数据(滤去输入中的非法字符)和运算结果显示在后。
(5)由订票系统的主要功能使程序的命令包括:1)查询;2)订票;3)退票4)退出订票系统四、问题的实现4.1所用的数据结构(包括所用数据结构的抽象数据类型定义和说明)typedef struct LNode{//数据域char name[10];//订票姓名int dnum;//订票数量char dj[50];//证件编号int zhekou; //1代表折扣对象float pay;//付费struct LNode *next;//指针域int zuohao[200];}LNode,*LinkList;//构造单链表(已订票)typedef struct Tickets{char *endname;//终点站名char *hnum;//车次名int fnum;//票价float discut;//折扣int day;//日期int wholenum;//总票额int lastnum;//余票量int tuipiao[100]; //退票处理,记录退票的座位号int tpcs;//记录目前退票次数int mcps;//记录卖出去的票数(包括退票)LinkList la;//已订票链表}Tickets;//构造结构类型(火车票)typedef struct{struct Tickets *elem;//存储空间的基址int length;int listsize;//当前分配的存储容量(以sizeof(Tickets)为单位)}SqList;//构造顺序表4.2主要实现思路1、火车站的火车票采用顺序表表示。
实习报告一、实习背景及目的近期,我参加了一次车票管理系统的实习,该系统采用C语言进行编程,旨在提高我对计算机编程能力的掌握,以及对于实际项目开发的认知。
本次实习的主要目的是熟悉C语言编程,了解软件开发流程,掌握项目管理工具,提高团队协作能力。
二、实习内容在本次实习中,我主要负责以下几个方面的工作:1. 录入班次信息:根据实际情况,录入发车班次的相关信息,包括班次号、发车时间、起点站、终点站、行车时间、额定载客量等,并将信息保存至文件。
2. 浏览班次信息:显示出所有班次的当前状态,如果当前系统时间超过了某班次的发车时间,则显示此班已发出”的提示信息。
3. 查询路线:可按班次号查询,也可按终点站查询。
4. 编写相关文档:包括需求分析、设计报告等。
三、实习过程及收获1. 实习过程:(1)首先,我们对车票管理系统进行了需求分析,明确了系统的功能要求,包括录入班次信息、浏览班次信息、查询路线等。
(2)然后,我们进行了系统设计,确定了采用文本菜单界面,以及C语言进行编程。
(3)接着,我们进行了编码实现,分别实现了录入班次信息、浏览班次信息、查询路线等功能。
(4)最后,我们对代码进行了调试和优化,确保系统的稳定性和性能。
2. 实习收获:(1)通过本次实习,我深入了解了C语言编程,掌握了C语言的基本语法和编程技巧。
(2)我学会了如何使用项目管理工具,如版本控制系统、代码调试工具等。
(3)我提高了团队协作能力,学会了如何与团队成员进行有效沟通,分工合作,共同完成项目。
(4)我了解了软件开发流程,包括需求分析、设计、编码、测试等环节,为今后从事软件开发工作奠定了基础。
四、实习总结通过本次实习,我对C语言编程有了更深入的了解,掌握了项目管理工具的使用,提高了团队协作能力。
同时,我也认识到了自己在编程能力和团队协作方面的不足,今后将继续努力,提高自己的综合素质,为更好地投身于软件开发工作做好准备。
程序设计买票实验报告一、实验介绍本次实验是为了加深对程序设计的理解,熟悉编程语言的使用,并通过设计一个简单的买票系统来实践所学知识。
本次实验的主要任务是设计一个命令行界面的买票系统,实现用户购票、查询票价和座位信息的功能。
二、实验环境本次实验使用的是Python编程语言,通过PyCharm集成开发环境进行开发。
三、实验内容1. 买票功能买票功能实现用户购买车票的操作。
在程序开始运行时,用户可以选择购票,并输入乘车日期、起始站和目的站信息。
根据用户输入的信息,系统查询并展示可用车次及票价,用户选择购买的车次和座位号后,系统生成订单并保存订单信息。
2. 查询功能查询功能实现用户查询车次票价和座位信息的操作。
用户输入乘车日期、起始站和目的站信息后,系统查询并展示可用车次及票价和座位信息。
3. 退出功能退出功能实现用户退出程序的操作。
在程序运行过程中,用户可以选择退出程序。
四、实验过程1. 数据结构设计首先,我设计了几个必要的数据结构,包括车次信息、座位信息和订单信息。
车次信息包括车次号、起始站和目的站信息,以及每个站点的票价,使用字典进行存储。
座位信息包括座位号和座位状态,座位状态有两种,分别是"可用"和"不可用"。
使用字典进行存储。
订单信息包括订单号、车次号、座位号、乘车日期、起始站和目的站,使用列表进行存储。
2. 用户交互设计我使用循环语句实现了一个简单的菜单,用户可以根据菜单选择功能。
根据用户的选择,程序调用相应的函数进行处理。
在买票功能中,用户输入乘车日期、起始站和目的站信息后,程序根据车次信息查询并展示可用车次及票价。
用户选择购买的车次和座位号后,程序生成订单并保存订单信息。
在查询功能中,用户输入乘车日期、起始站和目的站信息后,程序查询并展示可用车次及票价和座位信息。
3. 文件操作设计为了实现订单信息的保存和读取,我使用了文件操作。
在程序启动时,先读取已有的订单信息。
⽕车票预定系统可⾏性实验报告1引⾔1.1编写⽬的可⾏性研究的⽬的是研究⽕车票预定系统的总体需求、实现⽅案,并分析开发系统的可⾏性,为决策者提供是否开发该系统的依据和建议。
初拟系统实验报告,对软件开发中将要⾯临的问题及其解决⽅案进⾏初步设计及合理安排。
明确开发风险及其所带来的经济效益。
1.2背景购票时的⼀些不便情况1、出⾏⼈员长时间排队购票,购票效率低2、倒票⾏为3、票点和代售点售票的时间限制⽕车票预订系统可以有效的避免这些情况的发⽣,能够使订票者⽅便、快捷购票1.3定义1、系统简介:某⾼校后勤集团为了学⽣寒暑假返乡,办理代学⽣预订返乡⽕车票事务,订票必须提前三天办理,后勤订票处提前三天向⽕车站办理购票事务。
订票处使⽤⼀台微机处理订票后购票事务,学⽣订票⼀次称为⼀个事务,由订票员将其输⼊在微机中,系统核实订单后,将订票信息记录放在订票库中。
系统每天打印预订三天的购票单,并更新订票库。
2、⾯向⼈群:学⽣,⾼校后勤处3、⽕车票预定系统是指电⼦计算机和⽹络通信设备,为⾼校后勤处代办学⽣预定⽕车票事务,核实订票信息,打印购票单,更新订票库的⽤户需求型软件系统1.4参考资料《软件⼯程导论》《软件⼯程与UML实训指导书》2. 可⾏性研究的前提2.1要求⽕车票预定系统是⼀个复杂的电⼦系统,它必须提供为乘客提供⽕车票预定服务,还必须⽅便铁路局的售票⼯作运作。
同时还必须提供系统化的管理接⼝以供管理员处理乘客预定订单并维护系统和页⾯的正常运作。
2.2⽬标在先进的计算机技术⽀持下,运⽤所学的计算机软件开发知识所开发的⽕车票预定系统,进⾏⽇常的⽕车票预定事务处理,包括乘客接⼝模块,管理员接⼝模块和数据服务模块。
2.3、功能,要求和开发环境a.主要功能:为乘客提供⽕车票预定服务,⽅便铁路局的售票⼯作,提⾼铁路局的服务质量和服务效率b.性能要求:⽕车站提供的信息必须及时的反映在铁路局的⼯作平台上。
售票系统的定单必须⽆差错的存储在⽕车站的主服务器上。
东华大学____软件设计实践___报告专业计算机科学与技术班级学号姓名完成日期一、需求分析1.1.设计背景铁路作为中国最重要的交通工具之一,在市场经济浪潮中,面临着严峻的考验。
公路运输的便捷,航空运输的快速,这一切都对铁路运输构成很大的冲击。
在对铁路客运服务存在的最大问题进行调查时,结果表明,有29.3%的乘客认为购票难排在各项选择的第一位。
火车站市场的管理和规范问题,是困扰我们多年的一个老问题,也是政府管理中的一个难点,订票是客运业务中的一个最基本的业务,表面上看,它只是火车站业务的一个简单的部分,但是它涉及到管理与客户服务等多方面,因此,随着我国铁路交通的不断发展,过去传统的售票方式已经不能满足现代客运业务流量剧增的客观要求,简单的窗口售票模式已经不能满足方便人们出行的目的。
采用先进的网络技术开发出方便快捷的网上订票系统是现代客运业务发展的必然需求。
电子商务的出现,正好带给了铁路客运服务一个发展契机,推出新型的订票方式-- 网上订票,来缓解订票高峰时期的客运压力,并为用户提供方便快捷的订票服务。
它既是技术上的创新,又将完善铁路服务,在一定程度上解决买票难这一大难题,增强铁路竞争力,为铁路争取到更多的客流。
本次设计的火车票网上订票系统通过访问主页,可以实现个人信息注册、车次车票价格查询、在线订票退票等基本功能,为用户提供方便快捷的订票服务。
本次设计便是利用开发工具VS2008和SQL Server 2005数据库共同开发的一个火车站网上订票系统,它能方便快捷地运用在火车站订票业务的营运之中。
该系统要解决的是火车站网上售票工作所要解决的问题,可以满足火车票网上售票的基本要求,包括查询、订票、退票三个方面的功能。
该系统能运用到火车站售票的工作中,根据用户的需求,设置其权限,并快捷方便的为用户提供服务。
1.2 系统设计目标本系统是利用网络的方便、快捷和计算机的准确、高效实现火车票网上订票系统。
火车票网上订票系统是通过主页访问、身份识别实现区别不同身份用户完成车票、车次的管理操作。
火车票自动售票系统实验报告学院:电子与信息工程学院专业:软件工程班级: 2010级本(1)班姓名:刘亿、崔佳、曾玉婷、刘硕、张丽君指导教师:**起讫时间: 2012.02——2012.06(初学者实验报告)目录1可行性研究报告引言 (5)1.1编写目的 (5)1.1.2背景 (6)1.1.3定义 (6)1.1.4参考资料 (6)1.2可行性研究的前提 (8)1.2.2要求 (8)1.2.2目标 (9)1.2.3条件、假定和限制 (9)1.2.4进行可行性研究的方法 (9)1.2.5评价尺度 (9)1.3对现有系统的分析 (10)1.3.1数据流程和处理流程 (10)1.3.2工作负荷 (12)1.3.3费用开支 (12)1.3.4人员 (12)1.3.5设备 (13)1.3.6局限性 (13)1.4所建议的系统 (13)1.4.1对所建议系统的说明 (15)1.4.2数据流程和处理流程 (15)1.4.3改进之处 (17)1.4.4影响 (17)1.4.5局限 (18)1.4.6技术条件方面的可行性 (18)1.5可选择的其他系统方案 (18)1.5.1可选择的系统方案1 (18)1.5.2可选择的系统方案2 (19)1.6投资及收益分析 (19)1.6.1支出 (19)1.6.2收益 (20)1.6.3收益/投资比 (20)1.6.4投资回收周期 (20)1.6.5敏感性分析 (21)1.7社会条件方面的可行性 (21)1.8结论 (21)2项目开发计划引言 (21)2.1.1 编写目的 (21)2.1.2项目背景 (22)2.1.3 定义 (22)2.1.4参考资料 (23)2.2项目概述 (23)2.2.1 工作内容 (23)2.2.2 主要参加人员 (24)2.2.3 产品及成果 (24)2.2.3.1 程序 (24)2.2.3.2 文件 (24)2.2.3.3 服务 (24)2.2.3.4 非移交产品 (24)2.2.4验收标准 (25)2.2.5 完成项目的最迟期限 (25)2.2.6 本计划的审批者与批准者 (25)2.3实施总计划 (25)2.3.1 工作任务的分析 (25)2.3.2 接口人员 (25)2.3.3 进度 (25)2.3.4 预算 (26)2.3.5 关键问题 (26)2.4支持条件 (27)2.4.1计算机系统支持 (27)2.4.2 需要用户承担的工作 (27)2.4.3 需由外单位提供的条件 (27)2.5. 专题计划要点 (28)3软件需求说明书引言 (28)3.1编写目的 (28)3.2范围 (28)3.2.1 名称 (28)3.2.2 任务目标 (28)3.2.3 任务描述 (29)3.3参考资料 (29)3.4项目概述 (30)3.4.1项目来源 (30)3.4.2运行环境 (30)3.4.3产品功能 (30)3.4.4用户特点 (31)3.5具体要求 (31)3.5.1功能需求 (31)3.5.2 功能组成 (31)3.6数据库 (33)3.6.1 数据关系 (33)3.6.2 数据定义 (34)3.8其他要求 (35)3.8.1可使用性 (35)3.8.2保密性 (35)3.8.3可维护性 (36)3.8.5双方签字 (36)4数据要求说明书引言 (36)4.1编写目的 (36)4.1.1背景 (37)4.1.2定义 (37)4.1.3参考资料 (38)4.2数据的逻辑描述 (38)4.2.1静态数据 (38)4.2.2动态输入数据 (43)4.2.3动态输出数据 (43)4.2.3.2内部生成数据 (51)4.2.3.3数据约定 (52)4.3.数据的采集 (52)4.3.1要求和范围 (52)4.3.2输入的承担着 (53)4.3.3影响 (54)5概要设计引言(崔佳) (54)5.1.1编写目的 (54)5.1.2 背景 (54)5.1.4参考资料 (55)5.2.1运行环境 (56)5.2.2基本设计概念和处理流程 (56)5.2.3结构 (57)5.2.4功能需求与程序关系 (59)5.2.5人工处理过程 (59)5.2.6尚未处理的过程 (59)5.3 接口设计 (59)5.3.1用户接口 (59)5.3.2外部接口 (60)5.4 运行设计 (60)5.4.1运行模块组合 (60)5.4.2运行控制 (61)5.4.3运行时间 (61)5.5 系统数据结构设计 (62)5.5.1逻辑结构设计要点 (62)5.5.2物理结构设计要点 (62)5.6 系统出错处理设计 (64)5.6.1出错信息 (64)5.6.2补救措施 (64)5.6.3统维护设计 (65)6详细设计说明书引言 (66)6.1. 编写目的 (66)6.1.1 项目背景 (66)6.1.3参考资料 (67)6.2程序系统的组织结构 (67)6.3. 程序1(结构符)设计说明 (69)6.3.1登录模块 (69)6.3.2查询模块 (73)6.3.3 确认、购票模块 (77)7测试计划引言 (81)7.1编写目的 (82)7.1.1背景 (82)7.1.2术语定义 (82)7.1.3参考资料 (83)7.2测试需求 (84)7.3测试约束 (84)7.4相关参考文档 (84)7.4.1测试参考文档 (84)7.4.2测试提交文档 (84)7.5测试类型和策略 (84)7.5.1测试项目计划 (84)7.5.2功能测试 (85)7.5.3性能测试 (85)7.5.4负载测试 (86)7.5.5可靠性测试 (86)7.5.6数据和数据库完整性测试 (86)7.5.7接口测试 (87)7.5.8集成测试 (87)7.6测试项目说明 (88)7.6.1测试用例 (88)7.6.2测试结果 (92)7.7评价 (96)7.7.1软件能力 (96)7.7.2缺陷和限制 (96)7.7.3测试结果 (96)1可行性研究报告引言1.1编写目的可行性研究的目的为明确将要设计的软件是否有开发价值,以最小的代价在最短的时间内确定问题是否可解。
火车票售票系统一、实验目的:1、熟练掌握数据库设计原理及模型构建软件PowerDesignerd 的使用。
2、熟练掌握Visual Studio 2008的使用。
3、实现方便、快捷使用火车票购票系统查票、购票、退票等功能。
4、实现系统的安全性设置,使系统具有一定的维护功能。
二、实验设备及软件:PC 机一台、Visual Studio 2008、SQL SERVER 2000三、需求分析: 3.1 功能分析:功能模块图教师评阅意见:签名: 年 月 日实验成绩:火车票售票系统新用户注册 购票 、预约余 票 查询 退 票 票价查询1、新用户注册模块:新用户注册需要新用户填入自己的基本信息包括用户名、密码和确认密码),详细的购票需要信息(包括姓名、性别、出生日期、证件类型、证件号码)以及联系方式(包括手机号码、电子邮箱、地址),只有当所有的信息格式填写正确和填写完全后才能注册成功。
2、购票/预订模块:购票/预订模块需要用户登录后,输入需要购票的出发站、目的站和出发日期后即可显示可购票,选择自己需要的票即可购票,点击购票则购票成功。
3、余票查询模块:余票查询模块需要用户在登录进入售票系统后点击余票查询按钮,按照要求填入出发地、目的地,选择出发日期,选择填入出发车次,完成输入后即可在界面下方看到所有满足要求的查询结果。
4、退票模块:退票模块需要用户在登录后,进入退票界面,即可显示登录用户所有订单,选择需要退票的订单,点击退票按钮即可退票。
5、票价查询模块:票价查询模块同样需要用户在登录进入售票系统后点击余票查询按钮,按照要求填入出发地、目的地,选择出发日期,选择填入出发车次,完成输入后即可在界面下方看到所有满足要求的查询结果。
3.2 流程图:火车票售票系统业务流程图如下图所示:1、新用户注册及登录流程图:新用户填写失败注册信息提交注册成功2、购票/预订流程图:填写失败成功2、余票查询流程图:填写显示3、退票流程图:登陆失 败 显示成功 出 发 站 目 的 站 出 发 日 期 用 户购 票 用 户 出 发 站 目 的 站 出 发 日 期 余 票 信 息用 户 退票界面所 有 订 单 退 票4、票价查询流程图:用户登陆票价查询显示车票票价四、数据库结构设计:4.1 E-R模型的建立:E-R模型由新用户注册、登录界面、购票、余票查询、票价查询这五个实体构成。
1.概念模型设计:2.物理模型设计:4.2 数据库设计:五、系统实现:5.1 主要界面:1.主界面:2.新用户注册界面:3.登录界面:4.购票界面:5.票价查询界面:6.余票查询界面:5.2 主要代码:using System;using System.Collections.Generic; using ponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace火e车μ票±订?票±系μ统?{public partial class主ô界?面? : Form{//主ô界?面? ZJM = new 主ô界?面?();public主ô界?面?(){InitializeComponent();}private void pictureBox1_Click(object sender, EventArgs e) {}private void主ô界?面?_Load(object sender, EventArgs e){}private void button2_Click(object sender, EventArgs e){登?陆?界?面? a = new登?陆?界?面?();a.Show();}private void button1_Click(object sender, EventArgs e){新?用?户§注痢?册á a = new新?用?户§注痢?册á();a.Show();}private void pictureBox1_Click_1(object sender, EventArgs e) {}private void toolTip1_Popup(object sender, PopupEventArgs e) {}private void textBox1_TextChanged(object sender, EventArgs e){}private void textBox2_TextChanged(object sender, EventArgs e){}private void domainUpDown1_SelectedItemChanged(object sender, EventArgs e) {}private void groupBox1_Enter(object sender, EventArgs e){}private void pictureBox1_Click_2(object sender, EventArgs e){}private void pictureBox2_Click(object sender, EventArgs e){}private void pictureBox4_Click(object sender, EventArgs e){}private void button4_Click(object sender, EventArgs e){登?陆?界?面? a = new登?陆?界?面?();a.Show();}private void button5_Click(object sender, EventArgs e){登?陆?界?面? a = new登?陆?界?面?();a.Show();}private void button3_Click(object sender, EventArgs e){登?陆?界?面? a = new登?陆?界?面?();a.Show();}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace火e车μ票±订?票±系μ统?{public partial class登?陆?界?面? : Form{public登?陆?界?面?(){InitializeComponent();}private void登?陆?界?面?_Load(object sender, EventArgs e) {}private void panel2_Paint(object sender, PaintEventArgs e) {}private void panel1_Paint(object sender, PaintEventArgs e) {}private void pictureBox1_Click(object sender, EventArgs e){}private void textBox2_TextChanged(object sender, EventArgs e){}private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {}private void label2_Click(object sender, EventArgs e){}private void button1_Click(object sender, EventArgs e){int i = 0;if (textBox1.Text == "223"){i += 1;}if (textBox2.Text == "223"){i += 1;}if (i == 2){余 ?票±查é询ˉ d= new余 ?票±查é询ˉ();d.Show();Close();}else{MessageBox.Show(" 账?号?或ò者?密ü码?有瓺误ó!?登?录?失骸?败悒?!?");i = 0;return;}}private void textBox1_TextChanged(object sender, EventArgs e){}private void button2_Click(object sender, EventArgs e){新?用?户§注痢?册á a = new新?用?户§注痢?册á();a.Show();Close();}}}using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.Sql;using System.Data.SqlClient;using System.Data.SqlTypes;namespace火e车μ票±订?票±系μ统?{public partial class新?用?户§注痢?册á : Form{public新?用?户§注痢?册á(){InitializeComponent();}private SqlConnection con;//表括?示?一?个?到? SQL Server 数簓据Y库a的?打洙?开a的?连?接ó。
£此?类え?不?能ü被?继ì承D。
£private SqlDataAdapter com, com1;//DataAdapter对?象ó在úDataSet与?数簓据Y之?间?起e桥?梁 作痢?用?private SqlCommand com2;private string connect = "server=;uid=sa1;pwd=123;database=m_student";//string strConn="uid=账?号?;pwd=密ü码?;database=数簓据Y库a;server=服 务?器ô";//SQL Server链ⅰ?接ó字?符?串?private string s = "select * from cf";//string strSQL = "SELECT * FROM 表括?名?1 "; //要癮执′行D的?SQL语?句?private string s1 = "select * from student";private DataSet ds = new DataSet(), ds1 = new DataSet();private DataTable dt = new DataTable(), dt1 = new DataTable();private void Form2_Load(object sender, EventArgs e){}private void label10_Click(object sender, EventArgs e){}private void label5_Click(object sender, EventArgs e){}private void textBox5_TextChanged(object sender, EventArgs e){}private void label7_Click(object sender, EventArgs e){}private void textBox6_TextChanged(object sender, EventArgs e){}private void textBox10_TextChanged(object sender, EventArgs e){}private void label15_Click(object sender, EventArgs e){}private void radioButton2_CheckedChanged(object sender, EventArgs e) {}private void radioButton1_CheckedChanged(object sender, EventArgs e) {}private void label20_Click(object sender, EventArgs e){}private void button2_Click(object sender, EventArgs e){主ô界?面? f1 = new主ô界?面?();f1.Show();this.Hide();}private void label4_Click(object sender, EventArgs e){}private void label14_Click(object sender, EventArgs e){}/* private void button1_Click(object sender, EventArgs e){}*/private void button1_Click(object sender, EventArgs e){con = new SqlConnection(connect);con.Open();com = new SqlDataAdapter(s, con);com.Fill(ds, "保馈?存?");dt = ds.Tables["保馈?存?"];int i = 1;int n = dt.Rows.Count;com1 = new SqlDataAdapter(s1, con);com1.Fill(ds1, "添 ?加ó1");//da.Fill(ds,"自?定¨义?虚é拟a表括?名?");//使?用?DataAdapter的?Fill方?法ぁ?填?充?),?调獭?用?SELECT命ü令?dt1 = ds1.Tables["添 ?加ó1"];int i1 = 1;int n1 = dt1.Rows.Count;if (i == 0 && i1 == 0){if (textBox3.Text != "" && textBox4.Text != ""){DateTime t1;t1 = Convert.ToDateTime(textBox4.Text);com2 = new SqlCommand("insert into cf values ('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + t1 + "')", con);com2.ExecuteNonQuery();con.Close();//ConnSql.Close ();//关?闭?数簓据Y库aMessageBox.Show("添 ?加ó成é功|!?!?");}}elseMessageBox.Show("添 ?加ó失骸?败悒?!?!?");}}}六、心得体会:总的来说,通过这次课程设计我们感触很多。