软件工程实验报告系统概述;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 存储了系统使用者职工的相关情况的管理列表。
2 SEATS4 WORKERS根据规化的设计理念,本管理系统的数据分成上面4个表,减少了数据的冗余,同时在这些表之间又存在着一些关联关系。
这四个表之间的这两种关系表现在下图所示的关系:2. 创建登陆窗体模块;(1) 窗体模块的功能登陆窗体(2) 窗体界面的设计在工程中添加一个窗体,命名为“登陆系统”,用来作为系统登陆窗体。
界面的设计如图3所示。
(3)窗体代码Imports System.Data.SqlClientPublic Class FormlInherits System.Windows.Forms.Form Dim navigator As BindingManagerBase Dim mycon As New SqlConnection Dim mycom As New SqlCommandDim mycom 1 As New SqlCommand Dim frm2 As New Form2 Dim frm3 As New Form3 Dim frm8 As New Form8Private Sub Timer l_Tick(ByVal sender As System.Object ByVai e As System.EventArgs) Handles Timer].TickStatusBarl .Panels(O).Text = DateTime.TodayStatusBarl .Panelsfl J.Text = DateTime.Now.ToString(T) End SubPrivate Sub GroupBoxl_Enter(ByVal sender As System.Object. ByVai e As System.EventArgs) Handles GroupBoxl.EnterIf RadioButtonl.Checked = True ThenRadioButton2.Checked = False RadioButton3.Checked = False Elself RadioButton2.Checked = True ThenRadioButton 1 .Checked = False RadioButton3.Checked = False Elself RadioButton3.Checked = True ThenRadioButton 1 .Checked = False RadioButton2.Checked = False End If End SubPrivate Sub Button l_Click(ByVal sender As System.Object ByVai e As System.EventArgs)'用来对记录导航'连接对象 '命令对象Handles Button!.ClickAxShockwaveFlashl.Movie = E\实验运行场程序设计'电影院票务系统\image\登陆界面i.swrAxShockwaveFlashl .Playing = FalseAxShockwaveFlashl .Stop()Dim toxl As Int32Dim tox2 As Int32Dim mydataadapter As New SqlDataAdapterDim myds As New DataSetDim i As IntegerDim j As Integertoxl = Val(TextBoxl.Text)tox2 = Val(TextBox2.Text)mycon.ConnectionString = 'Initial catalog=ticketbooking;user id=sa;password=;nmycom.Connection = mycon '通过MYCON连接对象操作数据库mandType = CommandType.Text '设命令类型mandText =''select * from workers"'设妥要执行的命令Trymycon.Open()mydataadapter.SelectCommand = mycomCatch ex As Exception MessogeBox.Show(”连接失败”) Finally mycon.Close()End Trymydataadapter.Fill(myds, "workers")For i = 0 To myds.Tables("workers u).Rows.Count ・ 1If toxl = Valfmyds.Tablesf'workers^.Rowsfil.ltemArrayfO)) Then1 = 0Exit For Else ]=1 End If NextFor i = 0 To myds.TablesC'workers^.Rows.Count-1It tox2 = Val(myds.Tables(,l workers,,).Rows(i).ltemArray(l)) Then1 = 0Exit For Else1 = 1 End IfNextlfj = 1 ThenMessageBox.Show(H您的工号或者密码错误“,”错误提示”,MessageBoxButtons.OK. MessageBoxIcon.Warning)ElseTrymycoml .Connection = mycon '通过MYCON连接对象操作数据库mycom 1 .CommandType = CommandType.Text '设妥命令类型mycoml .CommandText = ''select leibie from workers where workerid-* +CStr(toxl) + "and password^1 + CStr(tox2) +1,135童要执行的命令Dim mydataadapterl As New SqlDataAdapter mydataadapterl .Selectcommand =mycomlDim mydsl As New DataSet mydataadapterl .Fill(mydsb "workers") If RadioButton1 .Checked = True AndVal(mydsl Jables(Vorkers,l.Rows(0)neibie M)) = 1 Thenfrm2.Show()Me.Hidef)Elself RadioButton2.Checked = True AndVol(mydsl .TQblesrworkers”).Row$(0)neibie”))= 2 Thenfrm3.Show()Me.Hidef)Elself RadioButton3.Checked = True AndVal(myds 1 Jables(,R workers n) .Rows(O) fleibie1,)) = 3 Thenfrm8.Show()Me.Hidef)ElseMessageBox.Showf您超出职责国或未选择服务系统,请重新输入!”,”错误提示”, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button 1) End IfCatch ex As ExceptionEnd TryEnd IfEnd SubPrivate Sub Forml_Load(ByVal sender As System.Object ByVai e As System.EventArgs) Handles MyBase.LoadAxShockwaveFlashl.Movie = ”E:\实照运行场程序设计'电影院票务系统\image\登陆界面l.swfAxShockwaveFlashl .Play ()End SubPrivate Sub Button2_Click(ByVal sender As System.Object ByVai e As System.EventArgs) Handles Button2.ClickDim exitform As New Form7If exitform.ShowDialog = DialogResult.OK Then exitform.Close()Me.Close()Application.Exit()End IfEnd SubEnd Class3. 创建售票窗体模块(1) 窗体模块的功能为观众提供买票服务。