资源描述
浙江经贸职业技术学院毕业论文(设计)毕 业 论 文(设计)题 目 指导老师 专业班级 姓 名 学 号 20XX年 5月 30 日25 第 页 摘 要:撰写毕业论文是每位大学毕业生必经的一个重要环节。目前,各高校普遍采取人工管理方式对毕业论文工作进行管理,整个过程在效率上、公平性方面都存在着一定的问题。本文通过对学院毕业论文选题、论文指导以及论文备份等工作流程的深入了解及进行了可行性分析后,对其作了需求分析、功能模块划分、数据库的设计以及界面设计,并完成了毕业论文选题系统的开发。本系统采用简单灵活的ASP语言,并结合简单灵活的Access数据库,实现在线毕业论文的选题工作,提供学生一个完全公正、开放的选题平台,同时在一定程度上方便了学生与指导教师间的相互交流,同时提供了论文电子稿的保存手段,提高了教务人员工作效率。关键词:ASP;Access数据库;毕业论文选题目 录引言11.系统概述11.1系统现状研究11.2系统开发方法12.系统调研及可行性分析22.1系统调研22.2系统总体目标22.3技术可行性分析23.系统分析33.1系统需求分析33.1.1功能需求33.1.2性能需求43.2系统流程图53.2.1数据流程图54.系统设计54.1概要设计54.1.1功能模块结构图54.1.2功能模块描述64.2数据库设计74.2.1表设计74.3详细设计94.3.1用户登录模块设计94.3.2论题管理模块设计104.3.3学生选题模块设计114.3.4筛选学生模块设计124.3.5留言联系模块设计134.3.6上传论文模块设计144.3.7查看论文模块设计144.3.8系统管理模块设计155.系统实现175.1论题管理模块实现175.2学生选题模块实现185.3筛选学生模块实现195.4留言联系模块实现205.5上传论文模块实现205.6查看论文模块实现226系统测试226.1系统登录模块测试226.2学生选题模块测试246.3测试总结26结论26参考文献27浙江经贸职业技术学院毕业论文(设计)引言毕业论文是大学毕业生必须完成的一项重要工作。首先,教师根据教务处通知开始出题并发放到各班级。接着,学生开始对相应教师的论文题目进行选择,选题结束后,指导教师对学生进行指导,待学生完成论文后,上交至指导教师处进行审核定稿,最后进行毕业论文答辩。目前各学校的这项工作还处于手工管理阶段,信息资源的数字化程度低,大部分选题资料尚未数字化。不利于科学管理和决策。在选题过程中经常出现漏报、错选等问题,在指导过程中,指导教师与学生间的沟通也极为不便。鉴于此,本人利用所学知识开发了在线毕业论文选题系统,实现了教师论文题目的管理、学生在线选题、教师筛选学生、留言联系、上传论文及下载查看论文等功能。通过使用本系统,可以提高教学管理水平,增强教学管理的透明度,提高学校工作效率。本文对系统开发中面临的问题及其解决方案进行详细的设计及合理安排,根据所掌握的ASP技术,并结合Access 技术对系统的各个功能进行了实现。1.系统概述目前,各高校的毕业论文选题工作还尚未实现数字化,大部分工作都需要人工完成,从教师出题到学生选题以及到最后的论文评审工作。整个过程极其复杂,并且容易出错,由于学生在外实习,与指导教师沟通也极为不便,以致于最后的毕业答辩工作难以顺利进行。有些同学正是由于在此期间没有与指导教师很好的沟通而无法顺利毕业。因此,开发一个能够对各流程进行统一管理的系统平台就显得非常的重要。所开发的系统将在一定程度上能够克服以上的种种缺点,实现各项工作在线完成,包括教师出题、学生选题、指导联系、论文上传及下载等功能,为学生、教师以及教务人员提供一个完全公正、开放、完善的管理平台,方便了学生与指导教师间的相互交流,提高了教务人员的工作效率。1.1 系统开发方法本系统采用B/S体系结构,不论是学生或是指导教师只要登录本系统的网站后,就可根据需要进行相应的操作。教师对论文题目的添加、删除、修改以及对学生的筛选,学生选题,学生与指导教师间联系以及论文电子稿备份存底等工作都可以在网上进行,避免了很多不必要的麻烦。2.系统调研及可行性分析2.1系统调研通过对学院的毕业论文工作流程进行了解,以及对校内学生、教师的调查,确定了本系统将要实现的功能。(1) 实现教师能够在线管理自己的论文题目,包括增加论题、修改论题、删除论题。这样避免了传统的纸上出题的麻烦,同时也节省了办公经费的支出。(2) 实现学生对相应教师的论题的选择,在没得到指导教师的确定前还可以多次重选.。这样在选题方面就是学生完全独立的自主选择,也不用每次换题目都需要与指导教师取得联系,节省了时间,提高了效率。(3) 实现教师对学生的筛选,可以根据需要在人数上进行调整,还可以对一些已经被确定的学生通过改变其状态使其可以进行重选。这在一定程度上增强了系统的灵活性。(4) 实现学生能够上传论文以及教师可以下载论文进行查阅,整个过程能够节省很多的时间。(5) 实现教师与学生间通过在线收发短信进行沟通,以便教师能更好地对学生进行毕业论文指导。2.2系统总体目标本系统在使用上比较方便、简单;界面设计上美观大方;后期维护上比较容易,如要对功能模块方面作修改,则无需进行整个系统的重新架构。2.3技术可行性分析本系统是一个典型的数据库应用程序。现有的数据库应用程序开发技术已非常成熟,利用现有技术完全可以实现预定的功能。ASP语言简单、功能强大并容易掌握,其脚本语言有VBScript和JavaScript。而Access是一个非常优秀的小型数据库管理软件,方便使用,性能稳定。于是,采用ASP+Access技术完全能够实现本系统的开发。3.系统分析3.1系统需求分析经过以上对本系统的调研及可行性分析后,下面将对系统在功能上以及性能上进行进一步的需求分析。3.1.1功能需求(1)系统管理功能系统管理功能主要实现基本信息的管理以及系统参数设置,基本信息主要包括学生信息、教师信息等,用户可以对其信息进行添加、修改、删除操作。系统参数设置主要是对系统开放和结束时间进行设定。(2)论题管理功能论题管理功能主要实现教师对自己已给出的论文题目的基础上增加论文题目,也可以根据需要对其论文题目进行修改或删除等操作。(3)学生选题功能(略)(4)筛选学生功能(略)3.1.2性能需求设备需求:PC机,Windows 2000/98/XP操作系统, P以上,64MB RAM。服务器,采用Access数据库管理。3.2系统流程图3.2.1数据流程图图3.1 系统数据流程图4.系统设计4.1概要设计4.1.1功能模块结构图 图4.1 功能模块结构图4.1.2功能模块描述(1)登录模块根据用户输入的用户名和密码,与数据库中进行匹配,验证帐号和密码, (2)论题管理模块根据教师登录的信息,加载其所有的论题。(3)学生选题模块根据学生登录的情况,显示适合该学生的所有论题供其选择,如果该学生的状态为已确定,则提示无法重选,否则,学生可以多次进行选择相应教师的论题,但每次只能选择一个题目,即每次操作都会覆盖前次操作。(4)筛选学生模块教师成功登录后,加载出该教师给出论题的选题情况,包括学生的基本信息,论题的一些基本信息,若已选人数超过了论题的限定人数,教师可以通过对相应学生进行淘汰。若接受该学生则同意其选择,而经确定后的同学又需要重新选题,则教师可通过改变该学生的状态来使其可以再次选题。(5)留言联系模块设计根据用户登录的信息,若是学生,则在收件框里加载所有的老师,根据需要选择其指导教师,并可以发短信与其取得联系;若是教师,则加载其所有指导的学生,可以选择多个学生进行群发,也可以给个别学生进行短信联系。(6)上传论文模块设计学生成功登录后,可以选择其存在本地的论文的路径进行上传。若成功则上传并保存到服务器中,若失败则提示信息,等待学生重新上传。(7)查看论文模块设计教师成功登录后,可以对其指导的学生所上传的论文进行下载并查看。(8)系统管理模块设计管理员成功登录后,可以对学生信息、教师信息进行管理。包括添加信息、修改信息、删除信息等。还可以对系统参数,如系统开放时间和结束时间进行设定。4.2数据库设计4.2.1表设计表4.1权限表(quanxian)字段名说明类型长度主键或外键User_id用户编号自动编号长整型主键User_phid帐号文本10User_name姓名文本10User_pwd密码文本6User_sex性别数字长整型User_xibie系别文本10zhichen职称文本10User_class适用班级文本15User_type身份数字长整型(身份:1代表学生,2代表教师,3代表管理员)表4.2系统时间表(admintime)字段名说明类型长度主键或外键Time_id编号自动编号长整型Starttime开始时间日期/时间主键endtime结束时间日期/时间主键addtime操作时间日期/时间表4.3 题目表(title)字段名说明类型长度主键或外键Title_id题号自动编号长整型主键user_id用户编号数字长整型title题目文本30Title_type论题类型文本10gclass适用年级文本10stunumber限定人数数字长整型comment说明文本30表4.4 选择表(xuanze)字段名说明类型长度主键或外键Titlevsstu_id编号自动编号长整型主键user_id用户编号数字长整型Title_id题号数字长整型istype确定数字长整型addtime选题时间日期/时间 确定(0表示等待中 1表示已确定,3表示淘汰)表4.5 留言表(liuyan)字段名说明类型长度主键或外键Mail_id邮件编号自动编号长整型主键Mail_to接收者数字长整型 Mail_from发送者数字长整型addtime发送时间日期/时间Mail_title邮件主题文本20Mail_content邮件内容文本50issee是否已看数字长整型 (1 表示没有看,2表示已看)表4.6 论文表(paper)字段名说明类型长度主键或外键File_id论文编号自动编号长整型主键File_url论文路径文本50File_size文件大小文本50User_id用户编号数字长整型addtime上传时间日期/时间4.3详细设计4.3.1用户登录模块设计 用户登录模块主要根据用户登录的信息,与数据库中信息成功匹配后,获得其相应的操作权限。 (1) 流程图图4.2 用户登录流程图(2) 处理说明说明一:打开网页,等待用户输入帐号、密码、选择身份,判断用户输入的信息与后台数据库是否匹配,查询语句为:sql=”select user_id,user_type,user_pwd,user_class from quanxian where user_name=”&id&” and user_pwd=”&mima&” and user_type=”&leixing若不匹配,则刷新页面,等待用户重新输入。说明二:根据用户选择的身份类别,进行判断,如果是学生,调出学生主页,同时显示学生信息,查询语句为:select * from quanxian where user_id=&user_id。如果是教师,则调出教师主页,同时显示教师信息 。4.3.2论题管理模块设计论题管理模块主要实现教师对其论文题目的添加、修改、删除等操作。(1) 流程图图4.3 论题管理模块流程图(2) 处理说明说明一:打开并激活窗口,根据登录的教师信息加载其论题信息至界面,查询语句为sql=select * from title where user_id=&user_id说明二:单击添加图标超链接,进入添加论题界面,等待用户输入有关论题信息,单击提交按钮,相关语句为:rs.addnew rs(title).value=title保存到数据库。说明三:单击需要修改的论题,进入修改界面,根据需要在文本框中修改信息,单击修改按钮并更新到数据库,若要删除此论题,则单击删除按钮,相关语句为:delete * from title where title_id=&title_id。4.3.3学生选题模块设计学生选题模块主要实现学生对相应教师的论题进行选择,若已选并经教师确定,则无法重选,否则可以进行多次选择。(1) 流程图图4.4 学生选题模块流程图(2) 处理说明说明一:打开并激活窗口,根据登录的学生所在的班级加载相应的所有选题信息。查询语句为:select * from title where gclass=&session(user_class)&说明二:首先判断当前学生是否已经选题并被指导教师确定,若是,则提示“你的选题已确定,无法再选”,若不是,等待学生选择相应的论题,当单击“我要选择”后,提示信息“你真的决定你的选择,这样会删除你以前的选择”,即在选题没被指导老师确定的情况下,学生可以多次进行选题,但每一次的选择都会覆盖前次的选择。同时适时改变已选人数。查询语句为:select titlevsstu_id from titlevsstu where userid=”&session(“user_id”)&”and istype=1”)4.3.4筛选学生模块设计筛选学生模块主要实现教师根据需要对学生进行淘汰或选择,以此来对论文题目人数上进行限定。(1) 流程图图4.5 筛选学生模块流程图(2) 处理说明说明一:打开并激活窗口,根据登录的教师信息,加载该教师的论题的选择情况。查询语句为:sql=select distinct title_id from titlevsstu where title_id=(select title_id from title where teacher_id=&id)说明二:教师对自己的每个论题选择情况进行筛选,若同意指导该学生,则通过单击“同意”,同时改变学生状态值,查询语句为:updata titlevsstu set istype=1 where titlevsstu_id=&titlevsstu_id;若人数上已经达到饱和的情况,则可以对相应学生进行淘汰,通过单击“淘汰”,同时删除选择表里的相应信息,查询语句为: delete * from titlevsstu where titlevsstu_id=&titlevsstu_id;若有些已经被确定的学生希望重新选题,则可以通过单击“等待”,查询语句为:updata titlevsstu set istype=1 where titlevsstu_id=&titlevsstu_id;同时改变学生的状态值,以便该学生可以进行再次选题。4.3.5留言联系模块设计留言联系模块主要实现指导教师与学生间的互相联系,通过收发短信进行彼此间的沟通。(1) 流程图图4.6 留言联系模块流程图(2) 处理说明说明一:打开并激活窗口,根据登录的用户信息,加载其所有信件信息。查询语句为:select user_name from quanxian where user_id=&mailrs(mail_from)。说明二:用户可以查看其信件,单击“查看”,显示该信件的内容,查询语句为:select * from mail where mail_id=&mail_id;同时,也可以根据需要进行回复,相关语句为:insert into mail(mail_to,mail_from, mail_title,mail_content,issee) values(&mail_to&”,”&session(“user_id”)&”,”&mail_title&”,”&。也可以将此信件删除,查询语句为: “delete * from mail where mail_id=”&mail_id。4.3.6上传论文模块设计 上传论文模块主要实现学生对所写好的论文进行上传,供指导教师查阅审核。(1) 流程图图4.7 上传论文模块流程图(2) 处理说明说明一:打开并激活窗口,学生选择需要上传的论文的本地路径,单击“上传”,若成功则提交至数据库,相关语句为:objStream.SaveToFile Server.MapPath(GetFileName(strFileName),2。若失败,则提示信息,等待学生重新上传。4.3.7查看论文模块设计 查看论文模块主要实现教师对其指导的学生的论文进行下载查看,并审核修改。(1) 流程图图4.8 查看论文模块流程图(2) 处理说明说明一:打开并激活窗口,根据登录的教师的信息,加载其所指导的学生所上传的论文。查询语句为:select * from personfile where user_id=&rs1(user_id)说明二:教师选择某学生的论文,单击“下载”,若成功,即可将其论文下载到本地,相关语句为:a href= target=_blank class=lj下载。若失败,则提示信息,等待教师重新下载。4.3.8系统管理模块设计 系统管理模块主要实现管理员对整个系统的基本信息管理以及对系统参数进行设置。(1) 流程图图4.9 系统管理模块流程图(2) 处理说明说明一:打开后台管理系统,等待用户输入帐号、密码,判断用户身份是否为管理员,查询语句为:sql=select user_id, user_name,user_pwd,user_type from quanxian where user_name=&userid& and user_type=3若是,登录成功,否则,提示信息,等待用户重新输入。说明二:管理员登录后,可以对系统的开放时间及结束时间进行设置,查询语句为:select * from admintime,以保证毕业选题工作按时进行。说明三:管理员根据需要可以对教师及学生的信息进行管理,包括添加信息、修改信息、删除信息等操作。若为添加,则将其信息保存到数据库中;若为修改,则将修改后的信息更新到数据库中,查询语句为:Update quanxian set user_name=”&ry_time&”,user_phid=”&,user_xibie=”&user_xibie”,user_class=”&user_class&”,user_pwd=”user_pwd&” where user_id=”&user_id。若为删除,则提示信息,同时将数据库中的信息删除,查询语句为:delete * from quanxian where user_id=&user_id5.系统实现5.1论题管理模块实现图5.1论题管理模块效果图该模块主要是根据登录的教师的信息,从数据库中加载该教师的论题信息,主要代码为select * from title where user_id=&user_id,同时,教师可以继续添加论题,主要代码为:rs.addnew rs(title).value=title; 5.2学生选题模块实现5.2学生选题模块实现图5.2 学生选题模块效果图该模块主要是根据登录的学生的信息,加载出适合该学生的所有论题的信息供其选择。如果该学生已经选题并得到指导老师的确定后,则不允许其再次选题,主要代码为:set isselect=conn.execute(select titlevsstu_id from titlevsstu where user_id=&session(user_id)& and istype=1);若没被老师确定,还可以继续重选,不过所选信息将覆盖前次选题信息。主要代码:delete * from titlevsstu where user_id=&session(user_id)。同时已选人数加1,set titlenum=conn.execute(select count(*) as titlenum from titlevsstu where title_id=&titlers(title_id)。5.3筛选学生模块实现图5.3筛选学生模块效果图该模块主要根据登录的教师的信息,加载其所有的论题对应的学生选择情况。如果某选题已选人数超过了限定人数,则可以对相应学生进行淘汰,主要代码:delete * from titlevsstu where user_id=&session(user_id);如果已确定的学生需要重新选题,则可将其状态改为“等待”,主要代码为:update titlevsstu set istype=&istype& where titlevsstu_id=&titlevsstu_id。5.4留言联系模块实现图5.4留言联系模块效果图该模块主要实现指导教师与学生间通过发送短消息进行联系。教师可以对其指导的所有学生发送消息(包括群发或私人留言),而学生也可以选择其指导老师发送短消息。主要代码为:insert into mail(mail_to,mail_from,mail_title,mail_content,Issee) values(“&j&”,”session(“user_id”)&”,”&mail_title&”,”&mail_content&”,1)5.5上传论文模块实现图5.5上传论文模块效果图该模块主要实现学生论文上传功能,先选择本地所要上传的文件的路径,然后上传到服务器中,主要代码为:If file.FileSize0 then newname=MakedownName()&”.”&mid(file.FileName,InStrRev(file.FileName,”.”)+1) file.SaveAsServer.mappath(formPath&newname)(保存文件);conn.execute(insertInto personfile(file_url,user_id,file_size) values(upload/”&newname&”,”&session(“User_id”)&”,”&cint(file.File.FileSize/1024)&”)”)(提交到数据库中)。5.6查看论文模块实现图5.6查看论文模块效果图该模块主要实现教师对所指导学生的论文进行查看审阅,通过将其文件下载保存至本地即可查看。主要代码为:set rs2=conn.execute(select * from personfile where user_id=&rs1(user_id);a href= target=_blank class=lj下载。6系统测试6.1系统登录模块测试(1)测试问题单项目编号 测试类别:集成测试 序号: LWXT_001产品标识产品中文标识毕业论文选题系统系统登录第几次测试2测试工程师XXX测试模块/功能/性能系统登录测试记录单测试时间2006-5-20问题记录序号故障现象级别处理人处理时间处理说明1输入用户名及密码后,不选择教师或学生选项仍可进入系统。中宋雪燕2006/5/20已处理2当输入一用户名及密码后,在数据库中查找无该用户时无提示信息。中宋雪燕2006/5/20已处理3管理员登录后显示后台不正确。中宋雪燕2006/5/20目前不处理(2)问题严重度描述,如表6.1所示:表6.1级别描述高如使系统崩溃,功能无法实现或实现错误等中如界面中的错误,性能不优化,校验不严格等低如提示信息不明确,操作不方便,焦点跳转错误等(3)填写说明6.2学生选题模块测试6.2学生选题模块测试(1)测试问题Bug单项目编号: 测试类别:集成测试 序号:LWXT_002产品标识产品中文标识论文选题系统学生选题第几次测试2测试工程师XXX测试模块/功能/性能学生选题模块测试记录单测试时间2006-5-23问题记录序号故障现象级别处理人处理时间处理说明1学生登录系统后,对论文题目的选择不能在数据库中进行更新。高宋雪燕2006/5/23已处理2学生登录系统后,无法显示最新的论文题目选择情况。高宋雪燕2006/5/23已处理3学生登录系统后,显示论文题目后显示的适用年级不对。即显示全部论文题目,没有分系别。低宋雪燕2006/5/23已处理(2)问题严重程度描述,如表6.2所示:表6.2级别描述高如使系统崩溃,功能无法实现或实现错误等中如界面中的错误,性能不优化,校验不严格等低如提示信息不明确,操作不方便,焦点跳转错误等(3)填写说明测试工程师负责填写除“处理人”、“处理时间”、“处理说明”以外的所有栏目“处理人”、“处理时间”、“处理说明”由开发人员负责填写。在“故障现象”填写中要详细描述发生问题的过程、操作、表现等,以便于开发人员恢复现场进行查错处理,必要时,可以附上相应的屏幕截图。如果有屏幕截图的话,请不插入到“故障现象”栏目中,在“故障现象”栏目只需填写相应图片的编号,在表单的后附图。“处理说明”:要详细说明发生问题的原因和解决问题的方法,项目主管要根据Bug级别及时督促有关负责及时解决问题。(4)附图图6.2学生选题模块测试图6.3测试总结本次测试主要用于对系统的出错进行测试,测试项目包括用户登录模块、学生选题模块、数据处理等方面。在本次测试中我们共发现了10余处错误,经过修改,已对部分错误进行更正,其他部分正在进行中。通过本次测试,我希望在以后的开发中能够避免再犯类似错误。结论经过以上详细的设计与构架,终于完成了毕业论文选题系统的开发。在本次开发过程中,遇到了很多的困难。包括数据库设计方面,技术实现方面以及系统测试方面。同时,我也受到了很大的启发,希望通过今后的学习,能够对本系统在安全性方面进行进一步的完善。参考文献 1 李晓毅ASP+SQLServer网络应用系统开发与实例M.北京:人民邮电出版社,2003.27(9):1116.2赵池龙.实用软件工程M.北京:电子工业出版社,2002, 111126.3 曾长军.Access数据库原理及应用M.北京:人民邮电出版社,2003.4 美C.M.克洛斯,D.K.弗雷德里克.动态系统模型的建立和分析M. 北京:机械工业出版社,1997,38.5 刘乐亭.字符串和正则表达式参考手册.北京:清华大学出版社,2003.6 王路群.数据结构(C语言描述).北京:中国水利水电出版社,2000.
展开阅读全文