软件工程专业毕业论文09904.doc

上传人:laozhun 文档编号:4069133 上传时间:2023-04-03 格式:DOC 页数:34 大小:756KB
返回 下载 相关 举报
软件工程专业毕业论文09904.doc_第1页
第1页 / 共34页
软件工程专业毕业论文09904.doc_第2页
第2页 / 共34页
软件工程专业毕业论文09904.doc_第3页
第3页 / 共34页
软件工程专业毕业论文09904.doc_第4页
第4页 / 共34页
软件工程专业毕业论文09904.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《软件工程专业毕业论文09904.doc》由会员分享,可在线阅读,更多相关《软件工程专业毕业论文09904.doc(34页珍藏版)》请在三一办公上搜索。

1、 学 士 学 位 论 文题 目: 高校毕业设计/论文选题系统设计与实现 目录第一章 引言41.1 课题研究的意义41.2 课题研究的目的及内容51.3 课题研究的特点51.4 论文研究内容5第二章 系统需求分析62.1 系统总体结构62.2 系统流程分析62.2.1系统总体业务流程62.2.2系统功能列表92.2.3系统用例102.3 系统性能需求11第三章 系统概要设计123.1 系统模块结构设计133.2 数据库设计143.2.1 数据库需求分析143.2.1 数据库设计14第四章 系统实现184.1 系统WEB界面设计原则184.2 系统文件目录结构设计184.3 系统实现194.3.1

2、 数据库连接操作类-DB项目集194.3.2 具体模块实现及方法调用21第五章 系统测试295.1软件测试的作用和意义295.2测试内容305.3测试结果30总结316.1 本文所做的主要工作316.2 今后进一步研究的方向31参考文献32致谢33毕业设计选题系统摘 要随着网络技术和数据库技术的发展,使人们的现代生活方式发生了深刻的变化。目前,运用先进的管理信息系统及软件开发平台,对信息进行科学化和网络化管理,己经成为高校信息系统的发展趋势。其中,毕业设计信息网络管理系统使毕业生在毕业设计的整个过程中以及教师对毕业设计信息管理的过程中实现了系统化,规范化,无纸化。本系统是针对院系级毕业设计教务

3、管理工作,研究、设计并开发的毕业设计选题系统。在开发过程中首先分析了其主要的业务流程和信息交流交互的内容,然后又结合了学校对毕业设计环节的管理标准和要求,经过系统的功能设计和数据库设计等过程,最终实现了系统要求的全部功能。毕业设计选题系统具有用户登录、教师基本信息管理、学生基本信息管理、课题名称发布、学生选题、信息查询、系统管理等功能。本系统使用ASP.NET技术, Visual C#语言开发,数据库采用 SQL Server技术。本论文从系统需求分析、概要设计、详细设计和系统测试这五个角度对系统的开发过程进行了详细的介绍,并对该系统的主要特点以及采用的主要系统开发工具进行了简单的介绍。关键词

4、:B/S,毕业设计,选题,管理系统,ASP.NET Graduate design Selection of subjects Management SystemABSTRACTWith the development of the technology for network and database, peoples lifestyle have changed a lot. Currently, using advanced management information systems and platforms of software development to manage inf

5、ormation with scientific and network has become develop direction. The Graduation Design Network Management System has achieved systematic, standardized, scripless, in the whole process of the graduation design.The system is researched, designed and developed for work of graduated designed education

6、al administration management in college. In development course, firstly, I analysis its key of business course and exchange information. Secondly, combined the management standard and request of college graduate design, through the course of the system function design and database design. Finally, I

7、 carry out all functions of the system request. The system has the main functions of users posting, management of the teachers basic information, management of the students basic information, publishing the names of subjects, students selection of subjects,imformation of searching, management of the

8、 system. The system is built with the technology of ASP.NET and SQL Server .The programming language is Visual C#.The thesis from the four points, system requirements analysis, design, detailed design and system testing, write up development course of system, and simply introduce the main characteri

9、stics of system and development tools.Key Words: B/S ,Graduate design ,Selection of subjects ,Management System, ASP.NET第一章 引言1.1 课题研究的意义Web技术高速发展,已经到了Web2.0时代,出现了很多新的技术和工具,这些工具和技术的出现,使得人们从原来Web1.0时代作为个人只能看Web内容过渡到了不仅是内容的浏览者,同时也是内容的发布者,人们的交流越来越容易。我国各大院校也加快了信息化进程,并且都建立了自己的校园网。这为我们网络现代化教育提供了必备的物质基础。而随

10、着近年来高校扩招工作的进一步深入,每年毕业生人数不断增加,再加上院校合并、扩建带来的异地办公、教学,毕业设计的管理工作难度越来越大。以往的高校普遍采用传统的单机管理模式,存在成本高、重复劳动量大、效率低、难维护等缺点,难以适应院校毕业设计管理的要求。针对毕业设计管理过程中,选题灵活性强、指导教师多、工作量大等特点,基于三层体系结构构建了一个适合于高校使用的网上毕业设计管理系统,从学生的角度,可以通过B/S的方式与教师进行交流,实现毕业设计题目的双向选择。对于教师来说,教师可以在线添加课题,选择学生,了解其他老师所发布的课题并作为参考,查看学生上传的论文,节省和很多时间。对于教务管理,管理人员可

11、以对题目进行审核和,不但提高了工作效率,而且提高了管理水平。课题的目的旨在应用现代的信息网络化管理技术解决毕业设计管理中存在的问题,减少师生毕业设计选题时间,增进、加强毕业设计过程监控。降低导师和教务人员工作强度。1.2 课题研究的目的及内容本系统主要目的是实现毕业设计选题的网络化,提高教师、学生和教务人员的效率,降低管理的成本。系统的主要任务是完成毕业生毕业设计环节中的毕业设计选题。主要针对的用户是学生,教师和教务管理员。学生通过该系统可以进行在线课题查询、课题选择、查看选题情况及个人信息的修改;教师用户可以通过该系统进行课题的操作(添加、修改、删除),查看选题,调整课题选择及个人信息的修改

12、;管理员通过该系统可以进行对课题的管理操作,系统的设置等。1.3 课题研究的特点 当今众多高校中的毕业设计管理尚未形成系统化,对于毕业设计选题系统还处于不断摸索完善的阶段。本系统优点在于针对本学院毕业设计流程设计定制了整个系统,完全符合本学院内毕业设计选报要求。本文从系统实际需求出发,构建了一种适合毕业设计现状,又能充分发挥ASP.NET及SQL SERVER 优势的Web应用系统开发模式。本系统应用了最新的开发工具Visual Studio 2008 和SQL SERVER 2008,采用三层架构模式,系统构建简易,架构清晰。功能扩展性强及通用性高是本系统的特点所在。1.4 论文研究内容 论

13、文主要在系统调查研究的基础上对系统进行了系统分析,明确了用户需求,并对数据库进行设计,分析了该系统数据库地结构和数据库安全性措施,根据模块化原理,将系统分为了几大功能模块,并对各部分功能进行了分析,采用结构化程序设计的思想,提出系统尤其是数据查询子系统地程序设计思想,然后对本系统地测试和安装进行了分析。全文共分为引言、系统需求分析、系统概要设计、系统实现、系统测试、系统总结、参考文献和致谢几个部分。第二章 系统需求分析2.1 系统总体结构根据毕业设计选题系统的具体情况,将该系统共分成教务管理员,教师,学生三大系统模块,主要包括信息修改,论文题目提交,论文题目审核,题目选报,信息浏览等功能。系统

14、总功能如图所示。毕业设计选题系统教师毕业设计课题管理教师个人信息编辑学生选报情况审核学生学生个人信息编辑上传论文及相关文档教师相关信息查询教务管理员论文查看及下载毕业设计课题审核管理毕业设计课题分类管理毕业设计题目选报图2-1 系统总体结构图2.2 系统流程分析2.2.1系统总体业务流程整个系统的总体业务流程如下:系统管理员分配教师和学生的权限,并初始化教师、学生和教务管理人员的用户名及密码。教师通过自己的教师工号,初始密码登录,登录后修改密码及完善个人详细信息,并可添加课题,提交至教务管理人员处审核。对于为提交和审核未通过的课题,教师可以进行删除和修改,对于待审核的课题,教师只能查看,不能对

15、其进行任何操作。教务管理人员审核课题是否重复、教师课题量是否符合要求,并将审核结果返回至教师处。学生通过学号和初始密码登录,登录后及时修改密码和完善个人详细信息,并可进行选题。每人只能选一个课题,选题成功后等待教师审核。在选择课题时,学生可以根据教师姓名、课题分类等进行课题筛选,也可查看所有课题。这里学生可以点击教师姓名链接,查看教师详细信息,还可查看课题详细信息。教师审核学生是否可以选择自己的课题,并将审核结果返回至学生处。学生选题成功后可以上传论文和相关文档给自己的导师。教师可以下载学生提交给自己的论文和相关文档。系统按角色分为教师、学生、教务管理员三类,各部分的功能流程图如下:图2-2

16、教务管理员流程图图2-3 教师流程图图2-4 学生流程图2.2.2系统功能列表开发这个系统的目的就是使学生在毕业设计选题环节中实现选题的规范化、智能化、高效化、简便化;同时极大得便捷学生和指导教师,减轻学生和教师的劳动强度,提高工作效率和管理水平。针对这样的目的系统设计了如下功能:1. 课题分类设置:包括教务管理员对课题分类的添加、修改、删除操作。2. 个人信息管理:教师,学生用户对自己个人基本资料的修改。3. 课题的设置:教师对课题的添加,修改,删除操作。4. 课题的管理:管理员用户对课题的审核操作。5. 课题选择:学生通过系统进行在线选题操作。6. 选题控制:教师对学生选报情况进行审核调整

17、操作。7. 文件管理:学生对论文及相关文档进行上传,教师对所上传文件查询、下载。系统具体功能列表如下所示:表2.1系统功能列表功能类别功能介绍个人信息管理登陆(学生、教师、教务管理员)修改个人信息(学生、教师、教务管理员)课题管理课题查询(学生、教师、教务管理员)添加、删除、修改课题(教师)课题审核(教务管理员)选题管理选择课题(学生)学生选题审核(教师)文件管理文件上传(学生)文件下载(教师)分类管理添加、修改分类(教务管理员)2.2.3系统用例该系统共有三类角色,分别为教师,学生和教务管理员,根据系统需求,整体用例如下图所示:图2-5 系统用例图2.3 系统性能需求1、技术可行性分析 就整

18、个系统的技术构成来看,它属于Visual C#编程与数据库的结合,将所有的数据信息都放入数据库进行存储,而这些数据信息的调用完全由程序来完成,即“程序设计数据化,数据管理程序化”思想。其基本操作是对数据库进行添加、删除、查找、编辑等。所以就技术应用来看,暂不存在太大的问题。2、经济可行性 减少了数据的流通环节,提高了办公效率,保证了各项数据的准确性,也解决了数据流动造成的数据跟踪信息丢失等问题,适应了当前的发展形势。3、实用性 使用本系统的一般操作人员要求有一定计算机基础。系统管理员要求具有计算机的专业知识。随着时代的发展,人员素质己逐步提高,不论是对于电脑系统的基本操作还是对于系统的维护都有

19、了一定的基础。4、基于安全控制 整个系统是一个灵活的、安全的系统。系统有效地保障了个人信息在系统内部流动的安全性。用户分为学生用户、教师用户和教务管理员。普通用户只能操作本系统设置的相关供给功能,教务管理员能够管理以及查询相关信息并作出审核。5、可移植性 毕业设计选题系统作为一个与业务紧密关联的信息系统,是随着业务需求的变化而动态变化的,因此系统必须具有很好的灵活性。 本系统采用模块化的设计思想,在结构上具有良好的可伸缩性,可根据实际业务需要扩展模块。综上所述,此系统开发目标已明确,在技术和经济等方面都可行。因此系统的开发是完全可行的。第三章 系统概要设计本系统的开发工作分为以下5个主要阶段:

20、(1)系统需求分析与系统的功能设计。包括可行性分析、系统详细调查和用户需求分析,获取毕业设计选题过程的业务流程,收集各种用户对系统功能的要求,整理相关信息资料,确定系统的开发范围。(2)数据库设计。确定数据库结构,设计数据库的各种参数、创建实体数据库和数据库表、数据库关系表等。(3)程序模块划分和实现。根据系统所管理的信息的类型和功能对系统进行模块划分,分别编写代码,逐一实现系统功能。(4)安全策略设计。根据系统功能划分用户类型和权限,并进行安全模型的设计。(5)测试。完成系统主体功能后,进行系统测试,查找设计缺陷与错误,对缺陷和错误进行改进和纠正。设计阶段的根本任务是确定怎样具体的实现要求的

21、目标系统,也就是说,经过这个阶段的设计工作,应该写出对系统的精确描述,从而在编辑阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。此阶段要设计出程序的“蓝图”,开发人员根据这个蓝图写出实际的程序代码。因此,详细设计的结果基本决定了最终程序代码的质量。除了应该保证程序的可靠性之外,也应保证编写的程序可读性好,易于理解、测试、修改和维护,这一点是详细设计的最重要的目标与任务。此外,界面设计也是本阶段完成的主要工作。界面提供了一个人机对话的有效窗口,一个良好的界面不仅能够使用户方便快捷的应用这个系统,而且还可以通过界面形象的了解系统所具有的功能。因此,界面设计是系统设计过程中的一个重要的环节

22、。3.1 系统模块结构设计根据需求分析,系统可分为以下几个模块进行系统实现。用户验证模块,按照三种用户类型(学生、教师、管理员)分成三种验证,对不同用户使用不同下拉框提交用户输入的用户名密码,提交后与数据库中的对应条目进行对比,查找不到的用户或者密码错误的用户则无法登陆面,对正确登录的用户,则跳转到对应用户类型的主信息界面,用户登录后选择页面上的退出系统,则会在客户端和服务器端同时退出用户;列表打印模块,学生,教师,管理员在使用系统的过程中随时可以将页面上显示的列表进行打印输出;帮助信息模块,用户登录系统后,可以通过菜单中的帮助信息连接查询该用户类型的帮助提示。教务管理员模块:分为系统功能设定

23、模块、情况查询模块和课题审核操作模块。系统功能设定模块,教务管理员可以对课题分类进行编辑,方便学生选题查询;课题审核操作模块,教务管理员可以对教师提交的毕业设计题目进行审核操作,决定是否审核通过,审核通过的题目学生才可以选报;情况查询模块,教务管理员随时可以通过情况查询模块查看题目提交情况、审核通过情况、学生选报情况等。教师模块:个人资料修改模块,课题模块,信息查询模块和审核模块。个人资料修改模块,教师登录系统后可以通过个人资料修改模块对初始化信息进行修改完善;课题模块,教师可以增加和编辑毕业课题,并且提交课题,提交后的题目进入待审核状态;审核模块,教师可以对选题的学生进行审核,审核通过表示学

24、生已成功选择了该课;课题信息查询模块,教师可以通过信息查询模块查看提交题目审核结果、选报情况以及选报题目的学生信息。学生模块:个人资料修改模块,选题模块,信息查询模块。个人资料修改模块,学生登录系统后可以通过个人资料修改模块对初始化的个人信息进行修改完善;选题模块,学生通过选题模块查询可选毕业设计题目,并且对毕业设计题目进行选报,每个学生只能选报一个课题,选报后进入待审核状态;信息查询模块,学生通过信息查询模块查看毕业设计题目的具体介绍及详细情况以及导师的详细资料。3.2 数据库设计数据库在一个系统中占有相当重要的位置,数据库结构设计地好坏将直接对应用系统地效率以及实现地效果产生影响。合理地数

25、据库结构设计可以提高数据地存储效率,保证数据地完整和一致。设计数据库系统时应该首先充分了解用户各个方方面地需求,包括现有的及将来可能增加的需求,数据库设计一般包括两个步骤:1.数据库需求分析;2.数据库设计3.2.1 数据库需求分析尽量合理地减少数据库的冗余,使重复的数据保持在最小限度,这样将尽量少的占用存储空间,减少产生混乱影响的危险,还能提高计算机的运行速度。作为毕业设计选题系统,必须解决以下方面的问题:能录入信息,所需录入地表有用户基本信息表、课题信息表,文件信息表等。创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。

26、3.2.1 数据库设计得到以上数据项和数据结构以后,就可以设计出实际的数据库实体,以及他们之间的关系,为后边的数据库逻辑结构设计打基础。这些实体包括各种具体信息,通过相互之间的作用形成数据的流动。此毕业设计信息管理系统包含以下实体:学生用户信息实体,教师用户信息实体,教务管理员用户信息实体,毕业设计课题信息实体,教师设计文档信息实体等。各实体间E-R图如下:图3-1 各实体E-R图其中一个教务管理员可以管理审核多个毕业设计课题,可以添加多个课题分类;一个教师课题提交多个毕业设计课题,下载多个文件;一个学生只能选择一个毕业设计课题,但可以上传多个文件。基于E-R图的设计,根据提出的要求,新建数据

27、库GP,用来存放相关数据表,并设计了如下的数据库表结构:表3.1 管理员信息表(AdminInfo)字段名数据类型是否为主键是否可为空字段说明AdminIDvarchar(20)是否登陆用户名Passwordvarchar(20)否否密码表3.2 课题分类表(Classification)字段名数据类型是否为主键是否可为空字段说明ClassificationIDint是否分类IDClassificationNamevarchar(20)否是分类名表3.3 权限表(Role)字段名数据类型是否为主键是否可为空字段说明RoleIDvarchar(20)是否权限IDRoleNamevarchar(2

28、0)否是权限名表3.4 学生信息表(StudentInfo)字段名数据类型是否为主键是否可为空字段说明StudentIDvarchar(20)是否学号Passwordvarchar(50)否否密码StudentNamevarchar(20)否是学生姓名Emailvarchar(50)否是邮件Telvarchar(20)否是电话号码Classvarchar(20)否是班级Professionvarchar(20)否是专业Sexvarchar(10)否是性别表3.5 教师信息表(TeacherInfo)字段名数据类型是否为主键是否可为空字段说明TeacherIDvarchar(20)是否教工号Pa

29、sswordvarchar(50)否否密码TeacherNamevarchar(20)否是教师姓名Emailvarchar(50)否是邮件Telvarchar(20)否是电话号码JobTitlevarchar(20)否是职称Departmentvarchar(20)否是院系Sexvarchar(10)否是性别表3.6 学生选题表(StudentTopic)字段名数据类型是否为主键是否可为空字段说明StudentIDvarchar(20)是否学生IDTopicIDint是否所选课题Statevarchar(20)否是教师审核状态表3.7 选题信息表(TopicInfo)字段名数据类型是否为主键是

30、否可为空字段说明TopicIDint是否课题IDTopicNamevarchar(20)否是课题名ClassificationIDint否是分类IDSummaryvarchar(max)否是课题简介StudentIDvarchar(20)否是学生IDFlagTeachervarchar(20)否是课题审核状态TeacherIDvarchar(20)否是教师ID表3.8 文件表(TextInfo)字段名数据类型是否为主键是否可为空字段说明TextIDvarchar(20)是否文件IDTextNamevarchar(20)否否文件名UplodeUservarchar(20)否否上传者UplodeT

31、imevarchar(20)否是上传时间根据以上数据库表,建立数据库关系图,数据库GP中各数据表之间关系如下图所示:图3-2 数据库关系图第四章 系统实现4.1 系统WEB界面设计原则系统是信息的载体形式,色彩设计必须以完成系统可视性阅读功能为目的。整个系统采用蓝白基调。系统界面采用CSS+DIV的设计样式布局,各功能模块易于管理,添加修改系统界面简单方便。系统首页如下:图4-1 系统首页4.2 系统文件目录结构设计本系统有三种类型用户:学生,教师,管理员,因为他们的权限各不相同,各自操作对象,操作内容也不相同,所以将他们各自分配一个目录,分别设计各自的操作页面,分别设计程序。系统文件目录如下

32、:图4-2 系统文件目录4.3 系统实现4.3.1 数据库连接操作类-DB项目集图4-3 DB项目集目录结构在ASP.NET中通过ADO.NET技术对数据库进行操作。ADO.NET中有许多很方便的类可用来操作数据库,例如SqlConnection类、DataTable类、SqlCommand类、DataSet类等。为了方便系统实现,故对其进行封装,存放在项目集中。比如DataHelper类,他是一个通用处理数据的类,提供操作数据库的通用方法,可以执行一般的SQL语句,包括查询和非查询的SQL语句;也可以执行存储过程。下面是比较常用的一个方法,用来执行带参数的SQL语句查询。 / / 执行带参数

33、的查询SQL语句 / / / / 返回一个DataTable public DataTable ExecCommandForDataTable(string commandText, params SqlParameter parameters) try DataTable dt = null; if (_transaction = null) dt = SqlHelper.ExecuteDataTable(_connection, CommandType.Text, commandText, parameters); else dt = SqlHelper.ExecuteDataTable(

34、_transaction, CommandType.Text, commandText, parameters); return dt; catch (Exception ex) throw new Exception(string.Format(执行0失败:1, commandText, ex.Message); 4.3.2 具体模块实现及方法调用登陆页面该毕业设计选题系统采用实名制登陆,用户凭学号和初始密码登录系统,教师凭教工号和初始密码登陆系统,教务人员凭初始密码登陆系统,登录时根据不同的角色分配不同的权限,判断用户名密码是否正确用到了下面的方法: /核对学生密码 public stat

35、ic bool CheckStudentLogin(string id, string password) bool flag = false; DataHelper dh = new DataHelper(); string sql = select * from StudentInfo where StudentID= + id + and Password = + password + ; DbDataReader dda = DataAccess.ExecuteDataReader(sql); if (sql != null & dda.HasRows) flag = true; re

36、turn flag; 信息修改页面教师和学生登录系统后可以修改个人信息及课题信息,需要用到的方法主要有,绑定数据源、添加和修改方法,添加数据方法如下: /课题添加 public void addDataBand(string s, string id,string tid) DataHelper dh = new DataHelper(); string sql = insert into TopicInfo (ClassificationID,TopicName,Summary,TeacherID,FlagTeacher) values( + id + , + s + , + ftbAdd.

37、Text + , + tid + ,0); dh.ExecCommand(sql); 修改数据页面要首先绑定数据源,让页面显示该条数据修改前的信息,方法如下: /课题数据绑定 public void topicDataBind(int id) string sql = select * from TopicInfo where TopicID= + id + ; try DataHelper dh = new DataHelper(); DataTable dt = dh.ExecCommandForDataTable(sql); if (dt.Rows.Count 0) this.txtNa

38、me.Text = dt.Rows0TopicName.ToString(); this.ftbEdit.Text = dt.Rows0Summary.ToString(); this.ddl2.SelectedItem.Value = dt.Rows0ClassificationId.ToString(); catch (Exception ex) throw ex; / 课题修改 public void UpdateDataBandT(int id, string tname, string s, string c) DataHelper dh = new DataHelper(); st

39、ring sql = update TopicInfo set TopicName= + tname + ,Summary= + s + ,ClassificationId= + c + where TopicID= + id + ; dh.ExecCommand(sql); 学生选题页面学生可以查询课题信息,并选择自己合适的课题,相关方法如下: / 学生选题 protected void jgvTopicS_RowCommand(object sender, GridViewCommandEventArgs e) int tid = Convert.ToInt32(e.CommandArgu

40、ment.ToString(); string sid = SessionID.ToString(); string sqlquery1 = select * from StudentTopic where StudentID= + sid + ; string sqlquery2 = select * from StudentTopic where TopicID= + tid + and State=1; string sql = insert into StudentTopic (StudentID,TopicID,State) values( + sid + , + tid + ,0)

41、; DataHelper dh = new DataHelper(); DataTable ds1 = dh.ExecCommandForDataTable(sqlquery1); DataTable ds2 = dh.ExecCommandForDataTable(sqlquery2); if (ds1.Rows.Count = 0 & ds2.Rows.Count = 0) dh.ExecCommand(sql); /Response.Write(alert(选题成功!); this.Response.Write(alert(选题成功!);window.opener.location.href=window.opener

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号