影院订票管理系统实验报告

合集下载

电影订票应用软件测试用例报告

电影订票应用软件测试用例报告

电影订票应用软件测试用例报告概述本文档提供了电影订票应用软件的测试用例报告。

该应用软件的目标是提供用户方便快捷地预订电影票的功能。

测试目标1. 确保应用软件的所有功能正常工作,包括用户注册、登录、浏览电影信息、选择座位、支付等功能。

2. 验证应用软件的界面设计是否符合用户体验原则,包括页面布局、字体大小、按钮交互等方面。

3. 检查应用软件的性能和稳定性,确保其在不同网络环境下能够正常运行。

测试用例用例1:用户注册步骤1. 打开应用软件。

2. 点击注册按钮。

3. 输入有效的用户名和密码。

4. 点击确认注册按钮。

预期结果- 用户成功注册,并显示注册成功的提示信息。

- 注册信息正确保存至数据库。

用例2:用户登录步骤1. 打开应用软件。

2. 输入有效的用户名和密码。

3. 点击登录按钮。

预期结果- 用户成功登录,并显示用户的个人信息。

- 登录信息正确验证。

用例3:浏览电影信息步骤1. 打开应用软件。

2. 点击浏览电影按钮。

预期结果- 显示电影列表,并包含电影的标题、海报、评分等信息。

- 用户能够通过滚动界面查看更多电影。

用例4:选择座位步骤1. 打开应用软件。

2. 选择一个电影。

3. 点击选择座位按钮。

4. 在座位图上选择一个可用的座位。

5. 点击确认选择按钮。

预期结果- 座位成功选择,并显示座位号和价格。

- 座位信息正确保存至数据库。

用例5:支付步骤1. 打开应用软件。

2. 选择一个电影并选择座位。

3. 点击支付按钮。

4. 输入有效的支付信息。

5. 点击确认支付按钮。

预期结果- 支付成功,并显示支付成功的提示信息。

- 支付信息正确保存至数据库。

总结以上是电影订票应用软件的测试用例报告。

通过执行这些测试用例,可以验证应用软件的各项功能是否正常工作,界面设计是否符合用户体验原则,以及应用软件的性能和稳定性。

在测试过程中,应注意记录测试结果并及时修复发现的问题,以提高应用软件的质量和用户满意度。

电影管理系统实验报告

电影管理系统实验报告

电影管理系统实验报告1. 引言电影管理系统是一种用于管理电影信息的软件系统。

它可以实现电影的增加、删除、修改和查询功能,方便用户对电影进行管理和查找。

本实验通过使用Markdown格式输出,记录了电影管理系统的设计与实现过程,以及实验中遇到的问题和解决方案。

2. 设计与实现2.1 系统需求分析在实验开始前,我们首先进行了需求分析。

根据实验要求和用户需求,我们确定了系统的功能需求,包括电影的增加、删除、修改和查询功能。

此外,还需要考虑用户界面设计和操作流程。

2.2 系统设计根据系统需求分析的结果,我们根据面向对象的设计原则,对电影管理系统进行了设计。

主要设计了以下几个类:- Movie类:用于表示电影信息,包括电影名称、导演、演员和上映日期等。

- MovieManager类:用于管理电影信息,包括电影的增加、删除、修改和查询等。

- UserInterface类:用于和用户进行交互,包括显示菜单、接收用户输入和执行相应操作等。

2.3 系统实现基于系统设计,我们使用Python语言进行了系统的实现。

使用了面向对象的编程方法,将每个类封装成一个独立的模块。

在编码过程中,我们遵循了统一的命名规范,并使用了合适的注释,以增加代码的可读性。

为了方便测试和演示,我们采用了命令行界面的方式,用户通过命令输入具体的操作指令。

系统会根据用户的指令进行相应的操作,并返回操作结果。

3. 实验过程3.1 准备工作在正式开始实验前,我们先进行了准备工作。

包括组员之间的分工合作、学习Markdown格式和Python语言的相关知识、搭建实验环境等。

3.2 编码实现在完成准备工作后,我们开始根据系统设计编写代码。

根据任务的不同,我们分别工作,并进行了代码的整合和测试。

在编码过程中,我们遇到了一些问题,如数据的存储方式、界面的设计和用户输入的验证等。

针对这些问题,我们进行了讨论,并通过查阅资料和请教老师进行解决。

3.3 测试与优化当代码编写完成后,我们进行了系统的测试。

电影票系统实习报告

电影票系统实习报告

电影票系统实习报告一、实习背景与目的近期,我参加了电影票系统开发的实习项目,旨在了解电影票系统的运作流程,掌握相关技术栈,提高自己的实际操作能力。

本次实习主要由两部分组成:一是电影票系统的使用与操作;二是电影票系统的设计与开发。

通过本次实习,我对电影票系统有了更深入的了解,也积累了宝贵的实践经验。

二、实习内容与过程1. 电影票系统的使用与操作在实习的第一周,我主要进行了电影票系统的使用与操作学习。

内容包括:电影票的购买、退票、改签、查询等基本操作,以及电影票系统的用户管理、影院管理、影片管理等后台管理功能。

通过实际操作,我熟悉了电影票系统的界面与功能,掌握了各项操作的流程与规范。

2. 电影票系统的设计与开发在实习的第二周,我参与了电影票系统的设计与开发。

首先,我们对现有电影票系统进行了需求分析,发现存在一些不足之处,如用户体验不佳、购票成功率低等问题。

针对这些问题,我们提出了改进方案,并进行了系统设计。

在系统设计过程中,我主要负责前端页面的设计与实现。

我使用了HTML、CSS、JavaScript等技术,实现了电影票购买、退票、改签等功能的页面布局与交互。

同时,我还使用了Vue.js框架,提高了页面开发的效率。

在系统开发过程中,我们采用了前后端分离的设计模式,后端使用Java语言,搭建了Spring Boot框架,提供了API接口供前端调用。

我负责了部分后端接口的开发,包括用户登录、影片查询等功能。

在开发过程中,我学习了数据库设计、接口规范、数据验证等方面的知识。

三、实习收获与反思1. 技术层面:通过本次实习,我掌握了电影票系统的运作流程,熟悉了前端页面设计与实现,了解了后端接口开发与数据库设计。

同时,我学会了使用Vue.js框架,提高了自己的技术水平。

2. 团队协作:在实习过程中,我与团队成员密切配合,共同解决问题,提高了自己的团队协作能力。

同时,我也学会了如何在一个团队中发挥自己的优势,为团队作出贡献。

课设报告书电影院售票系统

课设报告书电影院售票系统

沈阳航空航天大学课程设计任务书学院:材料科学与工程学院专业:功材班级:1501 学号:153411030108 题目:电影院售票系统一、课程设计时间2016年10月17日至10月23日,共计1周,20学时。

二、课程设计内容某电影院的观众席共有A、B、C、D四个区,每个区有500个座位。

请写程序模拟这个售票过程(允许退票)。

三、课程设计要求程序质量:✧贯彻结构化的程序设计思想。

✧用户界面友好,功能明确,操作方便。

✧用户界面中的菜单至少应包括“售票”、“退票”、“统计满座率”、“退出”4项。

✧代码应适当缩进,并给出必要的注释,以增强程序的可读性。

课程设计说明书:✧课程结束后,上交课程设计说明书。

课程设计说明书的写法参见提供的模板。

四、指导教师和学生签字指导教师:________ 学生签名:________五、成绩六、教师评语目录一、需求分析 (3)二、设计分析 (4)三、主要界面截图 (6)四、技术要点 (7)五﹑总结 (8)六、源程序 (9)七、参考文献 (12)一、需求分析根据任务书给定的“课程设计内容”和“课程设计要求”作如下的需求分析。

该系统是一个较典型的售票操作系统,其使用者为工作人员和广大消费者,系统应该具有安全、稳定、功能齐全的特点。

1. 安全性分析该系统管理的数据直接对电影院的收入产生影响,数据量较大且是一种基础性数据,能够为电影院管理提供重要参考,该程序简洁明了,无赘余语句,增加了程序运行的安全性。

2. 稳定性分析指系统比较健壮,只要是用户的合理操作,系统都应给出合理正确的回应,而不是出现令用户感到意外的系统错误或系统崩溃。

3. 主要功能分析(1)显示售票系统:这个程序可以模拟电影院售票系统,可以供顾客参考,另外这个系统简单明了,可以让顾客在选择看电影时更容易。

(2)显示退票系统:这个程序可惜模拟电影院退票系统,方便进行退票处理。

(3)显示满场率:这个系统可以统计电影院的满场率,给管理人员提供了方便。

电影购票系统设计报告

电影购票系统设计报告

电影购票系统设计报告1. 引言电影购票系统是一个在线购票平台,为用户提供方便快捷的电影票购买服务。

本报告将介绍该系统的需求分析、系统设计、实现以及测试情况,并对未来系统的改进和扩展进行展望。

2. 需求分析电影购票系统的主要功能包括电影浏览、选座购票、电影院信息查询和用户个人资料管理。

根据需求分析,系统需要具备以下功能和特性:- 用户账户管理:用户可以注册账户、登录系统,修改个人资料和密码。

- 电影浏览:用户可以查看正在上映的电影,了解电影的基本信息,包括片名、导演、演员、剧情简介、评分等。

- 选座购票:用户在选定电影后,可以选择电影院和座位,并进行购票。

- 电影院信息查询:用户可以查询电影院的地址、联系方式、电影场次等。

- 订单管理:用户可以查看和管理自己的订单,包括退票、查看购票历史等。

- 系统管理:管理员可以管理电影、电影院信息,并处理用户反馈。

3. 系统设计基于以上需求,我们设计了以下系统架构:![系统架构图](system_architecture.png)3.1 前端设计前端采用响应式设计,可在不同设备上适配,并提供友好的用户界面。

用户可以通过浏览器访问系统,进行电影浏览、选座购票等操作。

3.2 后端设计后端采用分层架构,包括用户管理模块、电影管理模块、订单管理模块和系统管理模块。

- 用户管理模块:负责用户账户的注册、登录、个人资料修改等功能的实现。

- 电影管理模块:负责电影的查询、添加、编辑功能的实现。

- 订单管理模块:负责订单的生成、取消、查询等功能的实现。

- 系统管理模块:负责管理员对电影、电影院信息的管理和处理用户反馈。

3.3 数据库设计数据库采用关系型数据库,根据需求设计了以下表结构:- 用户表:存储用户信息,包括用户ID、用户名、密码、邮箱等。

- 电影表:存储电影信息,包括电影ID、电影名、导演、演员、评分等。

- 电影院表:存储电影院信息,包括电影院ID、电影院名、地址、联系方式等。

电影票务信息管理系统

电影票务信息管理系统

淮海工学院计算机工程学院实验报告书课程名:《面向对象程序设计》实验名称: Java面向对象编程初步(电影票务信息管理系统)班级:软件081班组长: XX组员: XX一.实验目的1. 掌握Java面向对象深入编程的知识,学会运用属性的继承和隐藏、方法的继承、重载与覆盖、构造函数的继承与重载等来实现Java的继承与多态的思想,理解Java的接口与异常处理机制。

2. 熟练掌握工具类的使用二.实验题目以与大学生学习、生活、娱乐相关的信息服务为例,各团队自选题目,用面向对象的方法进行需求分析,划分功能模块,每位成员负责其中某些模块的设计与实现。

三.要求1. 在作业二的基础上,练习属性的继承和隐藏、方法的继承、重载与覆盖、构造函数的继承与重载,以及接口与异常处理的定义和使用。

2. 运用Java语言常用类库(Object类、Math 类、数据类型类、System类、String类及StringBuffer 类),重点是向量类和字符串,对作业二的源程序进行改进,尽量学会用各种方法来优化作业二的实现过程。

3. 在源程序和实验报告中对本次作业优化过的部分要进行重点说明;4. 提交时间:4月30日四、实验步骤与源程序1. 选题与团队分工◆选题:电影票务信息管理系统◆分工:2. 系统需求分析◆系统功能描述电影票务信息管理信息主要有三个用户,一个是系统管理员,负责系统中所有功能;第二个是票务管理员,主要进行电影票的增加,修改以及删除等功能;第三个是普通用户,只可以进行订票,退票以及电影票查询等功能的操作。

系统用例图3. 系统类图设计杨娟李晓天陈点点4. 源程序作者:李晓天主界面:package lxt;import cdd.*;import yj.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class MainWindow extends JFrame implements ActionListener{JPanel panel1;//定义面板Container c;//定义容器JMenuBar MenuB;//定义表单JMenu SystemMenu,TicketMGRMenu,TicketSellMenu,ReturnTicketMenu,InfoBrowseMenu,UserMGRMenu;JMenuItemUserLoginMenuItem,UserAddMenuItem,UserModifyMenuItem,UserDeleteMenuItem,ExitMenuItem, TicketAddMenuItem,TicketModifyMenuItem,TicketDeleteMenuItem,TicketSellMenuItem,ReturnTicketMenuItem,TicketListMenuItem,UserListMenuItem;JLabel titleLabel;//定义标签public MainWindow(){super("电影票务信息管理系统");//初始化菜单//--系统管理菜单--MenuB=new JMenuBar();SystemMenu=new JMenu("系统管理");UserMGRMenu=new JMenu("用户管理");UserLoginMenuItem=new JMenuItem("用户登录");UserAddMenuItem=new JMenuItem("添加用户");UserModifyMenuItem=new JMenuItem("修改用户");UserDeleteMenuItem=new JMenuItem("删除用户");ExitMenuItem=new JMenuItem("退出");SystemMenu.add(UserLoginMenuItem);//添加菜单UserMGRMenu.add(UserAddMenuItem);UserMGRMenu.add(UserModifyMenuItem);UserMGRMenu.add(UserDeleteMenuItem);SystemMenu.add(UserMGRMenu);SystemMenu.add(ExitMenuItem);UserLoginMenuItem.addActionListener(this);//注册监听UserAddMenuItem.addActionListener(this);UserModifyMenuItem.addActionListener(this);UserDeleteMenuItem.addActionListener(this);ExitMenuItem.addActionListener(this);MenuB.add(SystemMenu);//---电影票管理菜单--TicketMGRMenu=new JMenu("电影票管理");//初始化菜单TicketAddMenuItem=new JMenuItem("添加电影票");TicketModifyMenuItem=new JMenuItem("修改电影票");TicketDeleteMenuItem=new JMenuItem("删除电影票");TicketMGRMenu.add(TicketAddMenuItem);//添加菜单TicketMGRMenu.add(TicketModifyMenuItem);TicketMGRMenu.add(TicketDeleteMenuItem);TicketAddMenuItem.addActionListener(this);//注册监听TicketModifyMenuItem.addActionListener(this);TicketDeleteMenuItem.addActionListener(this);MenuB.add(TicketMGRMenu);//--出售管理菜单--TicketSellMenu=new JMenu("出售管理");TicketSellMenuItem=new JMenuItem("电影票出售");TicketSellMenu.add(TicketSellMenuItem);TicketSellMenuItem.addActionListener(this);MenuB.add(TicketSellMenu);//--退票管理菜单--ReturnTicketMenu=new JMenu("退票管理");ReturnTicketMenuItem=new JMenuItem("电影票退还"); //添加表单ReturnTicketMenu.add(ReturnTicketMenuItem);ReturnTicketMenuItem.addActionListener(this);MenuB.add(ReturnTicketMenu);//--信息一览菜单--InfoBrowseMenu=new JMenu("信息一览");TicketListMenuItem=new JMenuItem("电影票列表");UserListMenuItem=new JMenuItem("用户列表");//添加表单InfoBrowseMenu.add(TicketListMenuItem);InfoBrowseMenu.add(UserListMenuItem);//注册,监听TicketListMenuItem.addActionListener(this);UserListMenuItem.addActionListener(this);MenuB.add(InfoBrowseMenu);setJMenuBar(MenuB);// 将菜单条添加到窗口的顶端titleLabel=new JLabel(new ImageIcon(".\\pic.jpg"));c=getContentPane();c.setLayout(new BorderLayout());panel1=new JPanel();panel1.setLayout(new BorderLayout());panel1.add(titleLabel,BorderLayout.CENTER);c.add(panel1,BorderLayout.CENTER);setBounds(100,50,400,300);show();//--设置初始功能:--UserMGRMenu.setEnabled(false);TicketMGRMenu.setEnabled(false);TicketSellMenu.setEnabled(false);ReturnTicketMenu.setEnabled(false);InfoBrowseMenu.setEnabled(false);}//--设置每个菜单点击后出现的窗口和窗口显示的位置--public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="用户登录"){ //初始化用户登录窗口UserLogin UserLoginFrame=new UserLogin(this);UserLoginFrame.setLocation(170,150); //弹出框位置UserLoginFrame.pack(); //显示登录窗口UserLoginFrame.show();}else if(e.getActionCommand()=="添加用户"){ //初始化添加用户窗口UserAdd UserAddFrame=new UserAdd();UserAddFrame.setLocation(160,140);//弹出框位置UserAddFrame.pack();UserAddFrame.show(); //显示窗口}else if(e.getActionCommand()=="修改用户"){ //初始化修改用户窗口UserModify UserModifyFrame=new UserModify();UserModifyFrame.setLocation(160,140);//弹出框位置UserModifyFrame.pack();UserModifyFrame.show(); //显示窗口}else if(e.getActionCommand()=="删除用户"){ //初始化删除用户窗口UserDelete UserDeleteFrame=new UserDelete();UserDeleteFrame.setLocation(150,150);//弹出框位置UserDeleteFrame.pack();UserDeleteFrame.show(); //显示窗口}else if(e.getActionCommand()=="添加电影票"){ //初始化添加窗口TicketAdd TicketAddFrame=new TicketAdd();TicketAddFrame.setLocation(130,110);//弹出框位置TicketAddFrame.pack();TicketAddFrame.show(); //显示窗口}else if(e.getActionCommand()=="修改电影票"){ //初始化修改窗口TicketModify TicketModifyFrame=new TicketModify();TicketModifyFrame.setLocation(130,110);//弹出框位置TicketModifyFrame.pack();TicketModifyFrame.show(); //显示窗口}else if(e.getActionCommand()=="删除电影票"){ //初始化删除窗口TicketDelete TicketDeleteFrame=new TicketDelete();TicketDeleteFrame.setLocation(150,150);//弹出框位置TicketDeleteFrame.pack();TicketDeleteFrame.show(); //显示窗口}else if(e.getActionCommand()=="电影票出售"){ //初始化出售窗口TicketSell TicketSellFrame=new TicketSell();TicketSellFrame.setLocation(160,140); //弹出框位置TicketSellFrame.pack();TicketSellFrame.show(); //显示窗口}else if(e.getActionCommand()=="电影票退还"){ //初始化退还窗口ReturnTicket ReturnTicketFrame=new ReturnTicket();ReturnTicketFrame.setLocation(160,140); //弹出框位置ReturnTicketFrame.pack();ReturnTicketFrame.show(); //显示位置}else if(e.getActionCommand()=="电影票列表"){ //初始化列表TicketList TicketListFrame=new TicketList();TicketListFrame.setLocation(110,130); //弹出框位置TicketListFrame.pack();TicketListFrame.show(); //显示窗口}else if(e.getActionCommand()=="用户列表"){ //初始化用户列表UserList UserListFrame=new UserList();UserListFrame.setLocation(120,140); //弹出框位置UserListFrame.pack();UserListFrame.show(); //显示窗口}else if(e.getActionCommand()=="退出"){this.dispose();System.exit(0);}}//--设置登录用户的权限--public void setEnable(String powerType){if(powerType.equals("系统管理员")){UserMGRMenu.setEnabled(true);//系统管理员拥有所有权限TicketMGRMenu.setEnabled(true);TicketSellMenu.setEnabled(true);ReturnTicketMenu.setEnabled(true);InfoBrowseMenu.setEnabled(true);UserListMenuItem.setEnabled(true);}else if(powerType.equals("电影票管理员")){UserMGRMenu.setEnabled(false);//电影票管理员只有票务管理权限TicketMGRMenu.setEnabled(true);TicketSellMenu.setEnabled(false);ReturnTicketMenu.setEnabled(false);InfoBrowseMenu.setEnabled(true);UserListMenuItem.setEnabled(false);}else if(powerType.equals("普通用户")){UserMGRMenu.setEnabled(false);//设置权限TicketMGRMenu.setEnabled(false);TicketSellMenu.setEnabled(true);ReturnTicketMenu.setEnabled(true);InfoBrowseMenu.setEnabled(true);UserListMenuItem.setEnabled(false);}else if(powerType.equals("else")){UserMGRMenu.setEnabled(false);//设置对应界面TicketMGRMenu.setEnabled(false);TicketSellMenu.setEnabled(false);ReturnTicketMenu.setEnabled(false);InfoBrowseMenu.setEnabled(false);}}public static void main(String args[]){MainWindow mainFrame=new MainWindow();}}数据库模块:package lxt;import java.sql.*;public class DataBaseManager{Connection con;//声明对象ResultSet rs;//声明ResultSet对象Statement stmt;//声明Statement对象public DataBaseManager(){//捕获建立桥接器时的异常try{Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );//建立一个JDBC-ODBC桥接器con=DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=Cinema.mdb");//创建连接对象stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABL E);//得到可滚动的结果集}catch ( ClassNotFoundException cnfex ){System.err.println("Failed to load JDBC/ODBC driver." );//标准错误cnfex.printStackTrace(); //捕获加载驱动程序异常System.exit( 1 ); // terminate program}catch(SQLException sqle){System.out.println(sqle.toString());}}public ResultSet getResult(String strSQL){try //捕获返回结果时的异常{rs=stmt.executeQuery(strSQL);//返回相应类型结果集return rs;}catch(SQLException sqle){System.out.println(sqle.toString());return null;}}public boolean updateSql(String strSQL){try //捕获添加新纪录时的异常{stmt.executeUpdate(strSQL);//向数据库表中添加新纪录mit();return true;}catch(SQLException sqle){System.out.println(sqle.toString());return false;}}public void closeConnection(){try //捕获连接时的异常{con.close();}catch(SQLException sqle){System.out.println(sqle.toString());}}}退票模块:package lxt;//定义所属包名import lxt.*;//引用包import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;public class ReturnTicket extends JFrame implements ActionListener{DataBaseManager db=new DataBaseManager();//调用DataBaseManager()类ResultSet rs;//声明对象JPanel panel1,panel2;//定义面板Container c;//定义容器布局管理器JLabel ReturnedTicketPersonLabel,ReturnedTicketNameLabel;//定义标签JTextField ReturnedTicketPersonTextField;//定义文本框JButton ClearBtn,YesBtn,CancelBtn;//定义按钮JComboBox FilmNameComboBox=new JComboBox();//定义组合框public ReturnTicket(){super("电影票退还");c=getContentPane();//获得面板内容c.setLayout(new BorderLayout());//边界布局ReturnedTicketPersonLabel=new JLabel("退票者姓名",JLabel.CENTER);//初始化标签ReturnedTicketNameLabel=new JLabel("电影片名",JLabel.CENTER);ReturnedTicketPersonTextField=new JTextField(20);//初始化文本框//捕获异常try{String strSQL="select filmName from tickets where tickets_count>=borrowed_count";rs=db.getResult(strSQL);//获得数据库记录while(rs.next()){FilmNameComboBox.addItem(rs.getString(1));//获得数据库记录}}catch(SQLException sqle){System.out.println(sqle.toString());}catch(Exception ex){System.out.println(ex.toString());}panel1=new JPanel();//初始化面板panel1.setLayout(new GridLayout(5,2));//定义网格布局panel1.add(ReturnedTicketPersonLabel);//添加按钮panel1.add(ReturnedTicketPersonTextField);panel1.add(ReturnedTicketNameLabel);panel1.add(FilmNameComboBox);c.add(panel1,BorderLayout.CENTER);//添加面板,定义边界布局panel2=new JPanel();panel2.setLayout(new GridLayout(1,3));//定义网格布局ClearBtn=new JButton("清空");//初始化按钮YesBtn=new JButton("确定");CancelBtn=new JButton("取消");ClearBtn.addActionListener(this);//注册监听YesBtn.addActionListener(this);CancelBtn.addActionListener(this);panel2.add(ClearBtn);//添加按钮panel2.add(YesBtn);panel2.add(CancelBtn);c.add(panel2,BorderLayout.SOUTH);//添加面板}public void actionPerformed(ActionEvent e){if(e.getSource()==CancelBtn)//取消{this.dispose();}else if(e.getSource()==ClearBtn){ReturnedTicketPersonTextField.setText("");//退票}else if(e.getSource()==YesBtn){String strSQL1; //确认该用户是否已经退票strSQL1="select * from ticketBrowse where name='"+ ReturnedTicketPersonTextField.getText()+"'and filmname='"+FilmNameComboBox.getSelectedItem()+"'and is_returned='否'";rs=db.getResult(strSQL1);boolean isExist=false;try{isExist=rs.first();}catch(SQLException sqle) //如果数据库出错{System.out.println(sqle.toString());}if(!isExist)//确定是否订票{JOptionPane.showMessageDialog(null,"用户名未订此票!","出错提示",0);}else if(ReturnedTicketPersonTextField.getText().trim().equals("")) {JOptionPane.showMessageDialog(null,"请输入退票者的姓名。

影城票务系统测试报告

影城票务系统测试报告
预置条件
系统不存在该电影
输入
用例八
预期输出
电影编号应该为整数
测试用例编号
009
测试项目
管理员添加电影信息
测试标题
电影信息(内容提要)输入不合法
预置条件
系统不存在该电影
输入
用例九
预期输出
内容提要不能为空
测试用例编号
010
测试项目
管理员添加电影信息
测试标题
电影信息(上映日期)输入不合法
预置条件
系统不存在该电影
18.非年-月-日格式
主演
19.非空
20.空
内容简介
21.非空
22.空
用例一:1,3,5,7,9,11,13,15,17,19,21(表中序号)
用例二:2,3,5,7,9,11,13,15,17,19,21
用例三:1,4,5,7,9,11,13,15,17,19,21
用例四:1,3,6,7,9,11,13,15,17,19,21
输入
用例十
预期输出
上映日期格式不正确
测试用例编号
011
测试项目
管理员添加电影信息
测试标题
电影信息(主演)输入不合法
预置条件
系统不存在该电影
输入
用例十一
预期输出
主演不能为空
测试用例编号
012
测试项目
管理员添加电影信息
测试标题
电影信息(内容简介)输入不合法
预置条件
系统不存在该电影
输入
用例十二
预期输出
内容简介不能为空
请输入地址
测试用例编号
008
测试项目
用户注册信息
测试标题

电影票系统实习报告

电影票系统实习报告

一、实习背景与目的随着互联网技术的飞速发展,传统电影院售票方式已逐渐不能满足现代观众的需求。

为提高电影票务工作效率,提升观众购票体验,我于近期在某电影院进行了为期一个月的电影票系统实习。

本次实习旨在了解电影票系统的运作原理,掌握票务管理的操作流程,并分析系统在实际应用中的优缺点,为今后的票务管理工作提供参考。

二、实习单位及环境实习单位为一家具有较高知名度的电影院,位于市中心繁华地段。

该电影院拥有多个放映厅,上映影片种类丰富,观众流量较大。

实习期间,我主要在票务部进行操作培训和实践。

三、实习内容与过程1. 系统操作培训实习初期,我对电影票系统进行了全面的学习。

在指导老师的带领下,我了解了系统的基本功能,包括电影信息管理、放映计划管理、票务销售、退票、改签等。

同时,还学习了系统操作流程,如电影场次设置、票价管理、座位分配等。

2. 实际操作实践在掌握系统操作的基础上,我开始参与实际操作。

以下为部分实践内容:(1)协助售票员进行电影票销售,包括座位选择、票价计算、支付方式等。

(2)处理观众退票、改签业务,确保操作准确无误。

(3)协助管理人员进行电影信息更新、放映计划调整等。

(4)参与票务数据分析,为管理层提供决策依据。

3. 问题分析与解决在实习过程中,我遇到了一些问题,如系统操作失误、观众咨询解答等。

以下为部分问题及解决方法:(1)系统操作失误:通过查阅操作手册、请教同事等方式,快速找到问题原因,并正确操作。

(2)观众咨询解答:耐心倾听观众需求,准确解答问题,确保观众满意。

(3)系统故障:及时上报故障,协助技术人员进行排查和修复。

四、实习收获与体会1. 技能提升通过本次实习,我熟练掌握了电影票系统的操作方法,提高了自己的计算机应用能力。

同时,还学习了票务管理的相关知识,为今后的工作打下了坚实基础。

2. 团队协作在实习过程中,我深刻体会到团队协作的重要性。

与同事共同解决问题,共同进步,让我认识到团队的力量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件工程实验报告一.系统概述;1.项目需求;2.需求分析;二.项目开发计划书;三.设计说明书;1.分析与创建数据库2.创建登陆窗体模块;3.创建售票窗体模块4.创建检票界面5.创建维护界面1.创建影库界面2.创建职工界面3.创建票务界面四.用户操作手册;五.改进意见;六.自我评价;七.参考资料、书籍;一.系统概述;1.项目需求;现在中国大部分的家庭都喜欢在家里置办属于自己风格的家庭影院。

但是,仍然有很多人喜欢到电影院去看电影。

因为家里的气氛毕竟不如影院好。

所以,现代家庭影院的出现并不会让电影院没有生路。

每个社会服务系统都有自己的一套管理机制。

当然,电影院也不除外。

其实电影院的管理系统应该来说比其他的社会服务系统的管理要简单一点。

电影院不外乎是引进电影,制定播放影片的时间表,买票,检票进场观看,还有就是一些数据管理方面的事。

如工作人员管理,票务管理等等。

为了工作机制简单有序,必然要引进一套管理系统。

2.需求分析;具体而言,影院售票系统需要实现以下的需求:(1)能够对播放电影,工作人员,售票事宜,检票事宜,无用数据进行处理。

(2)售票管理自然有专人负责,要处理各电影的电影票销售问题。

当然包括退票问题,还有就是预订电影票其实也就相当于买票。

两者可以当一回事处理。

(3)检票管理事宜要完成观众进场时检票的事宜。

其中包括了电影票的真假检测问题。

(4)数据管理要处理电影的播放的次序,工作人员的管理,以及过期电影票的处理问题。

二.项目开发计划书;根据需求分析的结果,本小组成员讨论协商,决定本系统主要划分为以下三个子模块:售票管理模块、检票管理模块、数据管理模块。

影院售票管理系统是一个基于电影院工作人员的系统,不同类型的用户在系统中有不同的权限。

主要有三种用户:1.售票管理人员:主要负责卖票,订票及退票事宜;2.检票管理人员:主要负责观众进场时检票工作,以及辨认电影票的真假(此工作自然可以由服务系统来完成);3.数据处理人员:主要负责播放电影导入数据库,工作人员的应聘以及开除以下分别介绍此系统中各个系统(3个子模块。

):(1)售票系统模块给观众提供售票服务。

不同的位置有不同的价格。

要选购哪个位置由观众决定。

工作人员根据观众的需要进行操作。

系统在购票成功后会产生一个验证码,此验证码连工作人员都不知道。

是随机生成的。

用于对电影票真假的辩识。

(2)检票系统模块在观众进场时所使用的系统。

由扫描仪扫描,取的验证码,然后进行辩识,看是不是和数据库中数据一样,如果一样,则电影票为真,否则电影票为假。

由此来决定让不让观众入场。

(3)维护系统模块此模块是由电影院的数据库管理员来管理的。

他根据电影院事情的需要对有关数据进行处理。

如电影票的管理,工作人员的管理,和电影库的管理等。

整个系统的结构如下图1所示:以下分别介绍系统中数据系统3个子模块。

(1)影片播放管理模块影片播放管理是对电影院播放的电影的充实,设定电影的播放,以及电影时间的设定。

当所设定的电影已经播放完成后,要对其进行删除。

还要对数据库进行清理,把一些没用的数据全部清除。

(2)工作人员管理:电影院里当然有工作人员的增加与开除,以及他们的管理权限的变化。

这一部分事件的发生都需要数据库管理人员将有关数据进行处理。

保证数据库里数据的其中有他们的共号,登陆电影院管理系统的密码,以及所拥有的权限。

(3)过期票务管理:电影院里的电影在放过以后,在数据库的电影票数据就会变成没有用的数据。

通过此管理可以把那些没用的过期的数据清除。

这里指的是与放过的电影同名的电影票清除,而其他的电影票保存不变。

小组人员分工情况:王圣武登陆界面和售票界面、系统转换界面的程序编写,整个系统框架的设计,整个系统界面及美化设计,整个系统流程的管理,创建数据库张润驰检票系统和整个维护系统的程序编写,局部框架辅助设计,创建数据库本系统后台数据库采用目前比较流行的 Microsoft SQL Sever ,该数据库系统在安全性、准确性、运行速度方面有绝对的优势,并且处理数据量大、效率高;前台采用 Microsoft公司的 2003 作为主要的开发工具,其可与SQL Sever 2000数据库无缝衔接。

三.设计说明书;1.分析与创建数据库;根据系统的功能分析结果,影院售票管理系统将会使用Microsoft SQL Sever 2000 作为后台的数据库管理系统。

本管理系统是应用于电影院中,而且需要和数据库之间进行频繁数据交换,所以采用Microsoft SQL Sever 2000 作为后台的数据库管理系统。

在本管理系统中,需要掌握影库充实信息,职工管理信息,票务管理信息,此外,由于要进行职工管理,还需要掌握使用本系统的职工。

表1存储硬库信息列表,表2存储了电影院座位的相关数据连接关系,表3存储了电影票销售情况管理,表4存储了系统使用者职工的相关情况的管理列表。

表1 影库管理表---MOVIES同时在这些表之间又存在着一些关联关系。

这四个表之间的这两种关系表现在下图所示的关系:2.创建登陆窗体模块;(1)窗体模块的功能登陆窗体(2)窗体界面的设计在工程中添加一个窗体,命名为“登陆系统”,用来作为系统登陆窗体。

界面的设计如图3所示。

(3)窗体代码ImportsPublic Class Form1InheritsDim navigator As BindingManagerBase '用来对记录导航Dim mycon As New SqlConnection '连接对象Dim mycom As New SqlCommand '命令对象Dim mycom1 As New SqlCommandDim frm2 As New Form2Dim frm3 As New Form3Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.TickStatusBar1.Panels(0).Text = DateTime.TodayEnd SubPrivate Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter If RadioButton1.Checked = True ThenRadioButton2.Checked = FalseRadioButton3.Checked = FalseElseIf RadioButton2.Checked = True ThenRadioButton1.Checked = FalseRadioButton3.Checked = FalseElseIf RadioButton3.Checked = True ThenRadioButton1.Checked = FalseRadioButton2.Checked = FalseEnd IfEnd SubPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickAxShockwaveFlash1.Movie = "E:\实验运行场\程序设计\电影院票务系统\image\登陆界面1.swf"AxShockwaveFlash1.Playing = FalseAxShockwaveFlash1.Stop()Dim tox1 As Int32Dim tox2 As Int32Dim mydataadapter As New SqlDataAdapterDim myds As New DataSetDim i As IntegerDim j As Integertox1 = Val(TextBox1.Text)tox2 = Val(TextBox2.Text)mycon.ConnectionString = "initial catalog=ticketbooking;user id=sa;password=;"mycom.Connection = mycon '通过 MYCON 连接对象操作数据库mandType = CommandType.Text '设置命令类型mandText = "select * from workers" '设置要执行的命令Trymycon.Open()mydataadapter.SelectCommand = mycomCatch ex As ExceptionMessageBox.Show("连接失败")Finallymycon.Close()End Trymydataadapter.Fill(myds, "workers")For i = 0 To myds.Tables("workers").Rows.Count - 1If tox1 = Val(myds.Tables("workers").Rows(i).ItemArray(0)) Thenj = 0Exit ForElsej = 1End IfFor i = 0 To myds.Tables("workers").Rows.Count - 1If tox2 = Val(myds.Tables("workers").Rows(i).ItemArray(1)) Thenj = 0Exit ForElsej = 1End IfNextIf j = 1 ThenMessageBox.Show("您的工号或者密码错误", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning) ElseTrymycom1.Connection = mycon '通过 MYCON 连接对象操作数据库mandType = CommandType.Text '设置命令类型mandText = "select leibie from workers where workerid=" + CStr(tox1) + "and password=" + CStr(tox2) + "" '设置要执行的命令Dim mydataadapter1 As New SqlDataAdaptermydataadapter1.SelectCommand = mycom1Dim myds1 As New DataSetmydataadapter1.Fill(myds1, "workers")If RadioButton1.Checked = True And Val(myds1.Tables("workers").Rows(0)("leibie")) = 1 Thenfrm2.Show()Me.Hide()ElseIf RadioButton2.Checked = True And Val(myds1.Tables("workers").Rows(0)("leibie")) = 2 Thenfrm3.Show()Me.Hide()ElseIf RadioButton3.Checked = True And Val(myds1.Tables("workers").Rows(0)("leibie")) = 3 Thenfrm8.Show()Me.Hide()ElseMessageBox.Show("您超出职责范围或未选择服务系统,请重新输入!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1)End IfCatch ex As ExceptionEnd TryEnd IfEnd SubPrivate Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadAxShockwaveFlash1.Movie = "E:\实验运行场\程序设计\电影院票务系统\image\登陆界面1.swf"AxShockwaveFlash1.Play()End SubPrivate Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim exitform As New Form7If exitform.ShowDialog = DialogResult.OK Thenexitform.Close()Me.Close()Application.Exit()End SubEnd Class3.创建售票窗体模块(1)窗体模块的功能为观众提供买票服务。

相关文档
最新文档