学生作业档案图形管理系统论文16436.doc
毕 业 设 计 (论 文)课 题 学生作业档案图形管理系统 摘 要在这个日新月异的信息科技时代,计算机已成为我们生活中不可或缺的一部分。传统的学生作业档案图形管理方式,已渐渐无法适应社会的发展,它要求有更方便和人性化的管理方式,因此就有了这个学生作业档案图形管理系统。本系统采用ASP.NET技术和三层架构技术进行设计和开发,并通过使用SQL Server 2005数据库来对数据进行管理。该系统主要解决在建筑与规划学院的教学中,学生需要制作大量的设计图纸,老师要花费大量的时间批改作业,这些已经批改的作业是学生和老师的有价值的成果,最终的作业需要存入资料库以便以后利用,学生能够查阅相关资料。该系统是结合学校的实际情况,开发的一个Web 作业系统,主要包括学生自由空间、作业系统、考试系统和教师系统几大模块。该系统已投入学校机房的使用中,将在使用中不断的改进。关键词:ASP.NET,三层架构,SQL Server 2005AbstractIn this era of rapid development of science and technology, the computer has become an important part of our lives. Student Job Management has gradually can not adapt to social development. It requires a more convenient and human-oriented management, so we will have a graphics file management system of student work.The system uses ASP.NET technology and three-tier architecture design and development of technology, and by using SQL Server 2005 database to manage the data. The system solution in the teaching of Architecture and Planning, students need to make a lot of design drawings, the teacher to spend a lot of time correcting homework, these operations have been marking the students and teachers valuable results, and ultimately need to save jobs Into the database for later use, students can access relevant information.The system is a combination of the actual situation of the school, the development of a Web operating system, including students free space, operating system, the examination system and the teachers system, several modules. The system has been put into use in the school room, in the use of continuous improvement.Key words:ASP.NET,Three-tier,SQL Server 2005目录摘 要2Abstract31 引言51.1课题的研究意义51.2课题的设计目标51.3评价的激励作用、评价主题多元化52 开发环境和相关技术简介72.1开发语言72.2 SQL Server 200572.3 B/S体系结构82.4 .NET三层架构82.5 开发及运行环境93 系统需求分析103.1 系统可行性分析103.2系统需求分析103.2.1系统功能需求103.2.2系统性能需求113.3 系统的主要工作流程113.3.1学生作业档案管理系统功能模块113.3.2 角色管理模块123.3.3专业模块133.3.4数据库逻辑结构设计134 系统登录界面实现174.2 角色管理模块204.3 专业管理界面235 结束语306 致 谢317参考文献331 引言随着社会的进步和发展,计算机在我们日常生活中已经成为不可或缺的部分。它在人类社会的各个领域都发挥着重要的作用。作为计算机应用的一部分,使用计算机对论文信息进行管理,具有着手工管理所无法比拟的优点。在快速而便捷的网络社会里,无不促使师生交流与沟通从面对面变成通过论文管理系统来实现。本系统是一个基于.NET技术,结合实际情况开发的论文管理系统。通过网络来完成从学生选导师到论文中期检查到论文的成绩评定和最后的论文提交整个过程,为师生提供了便利。1.1课题的研究意义在建筑与规划学院的教学中,学生需制作大量的设计图纸,老师要花费大量时间批改作业,这些已批改的作业是学生和教师的有价值的成果,最终的作业需要存入资料库以便以后利用.但是目前的现状是,由于设计图纸数量繁多而且不易存储,导致大量优秀设计作业以及珍贵的参考资料很难得到合理的利用.如何使优秀教育资源得以发挥最大的潜力,使网络数据交换、资源共享的基本功能得以充分体现,实现资源的有序组织,已成为当前亟待解决的问题.为了实现建筑学与规划学院的教学资料合理分配、管理与运用,达到高效利用资源,避免设计图纸的浪费和无效堆积,加强师生之间的互动,从而提高学生作业的效率和质量,进而提高教学质量和效率.开放的具有建筑与规划学院特点的作业档案管理系统的开发与应用已成为学院的迫切需要.1.2课题的设计目标建筑与规划学院的教学中,学生需制作大量的设计图纸,老师要花费大量时间批改作业,这些已批改的作业是学生和教师的有价值的成果,最终的作业需要存入资料库以便以后利用.学生能够查阅相关资料,解决平台建设的关键技术。1.3评价的激励作用、评价主题多元化(1)长期以来,我们较多地重视评价评定作用地发挥,不太关注发挥评价地激励作用。而实际上,作业评价应体现对学生地激励作用,让学生主体得到尊重,使更多地品尝到学习成功地喜悦。即使作业发生错误,也要让学生把改正作业作为自己的一种自觉需要。(2)Web作业系统充分体现了这一思想:学生的一份作业可以多次提交,通过教师指导与自己的思考在不断的改进的过程中逐渐完善自己的作业;教师从这一过程中,可以发现学生学习上存在的问题,并且给予一定的反馈意见,学生也能从教师的反馈中,感受到教师的激励和希望。充分调用学生学习的主动性和积极性,通过评价让学生自己及时调整自己的作业行为,了解自己的学习情况,关心自身的学业提高,进一步发展自己的潜能。2 开发环境和相关技术简介2.1开发语言通过使用C#语言来开发本系统。C#是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET Framework 上运行的各种安全、可靠的应用程序。Microsoft Visual C# 2005 提供高级代码编辑器、方便的用户界面设计器、集成调试器和许多其他工具,以在 C# 语言版本 2.0 和 .NET Framework 的基础上加快应用程序的开发。C#语言由C/C+演变而来。但是,它现代、简单、完全面向对象和类型安全。简单,它没有C中的指针,容易学,C#使用统一的类型系统,摒弃了C 多变的类型系统;现代,全面的内存管理已经不是您的任务了,因为C#程序在运行时提供一个垃圾收集器,负责C#程序中的内存管理;面向对象,它是C# 的核心,C#支持所有关键的面向对象的概念,如封装、继承和多态性。封装是一种程序设计机制,它绑定代码及其操作的数据,并使它们不受外界干涉和误用的影响,从而保证安全性;多态性,定义了一个接口,多个方法;继承,是一个对象或的另一个对象的属性的过程;类型安全,C#实施最严格的类型安全,以保护自己及垃圾收集器,在C#中,被传递的引用参数是类型安全的。2.2 SQL Server 2005SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。SQL Server 2005有助于简化企业数据与分析应用的创建、部署和管理,并在解决方案伸缩性、可用性和安全性方面实现重大改进。基于SQL Server 2000技术优势构建的SQL Server 2005将提供集成化信息管理解决方案,可帮助任何规模的组织机构:(1)创建并部署更具伸缩性、可靠性和安全性的企业级应用。 (2)降低数据库应用创建、部署与管理的复杂程度,进而实现IT效率最大化。(3)凭借可供创建更具安全保障之数据库应用的丰富、灵活、现代化开发环境增强开发人员工作效能。 (4)跨越多种平台、应用和设备实现数据共享,进而简化内部系统与外部系统连接。 (5)实现功能强劲的集成化商务智能解决方案,从而在整个企业范围内推进科学决策,提高工作效率。 (6)在不必牺牲性能表现、可用性或伸缩性的前提下控制成本费用水平。 2.3 B/S体系结构B/S软件体系结构,即Browser/Server (浏览器/服务器)结构,是随着Internet技术的兴起,对C/S体系结构的一种变化或者改进的结构。在B/S体系结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。B/S体系结构主要是利用不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件体系结构。基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了"零客户端"的功能,很容易在运行时自动升级。B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。但是,与C/S体系结构相比,B/S体系结构也有许多不足之处,例如:(1)B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理能力。(2)B/S体系结构的系统扩展能力差,安全性难以控制。(3)采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构。(4)B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理和应用。2.4 .NET三层架构三层体系结构式指:用户界面表示层(USL)、业务逻辑层(BLL)、数据访问层(DAL)。数据访问层:主要是对数据的操作,而不是数据库,具体是为业务逻辑层或表示层提供数据服务;业务逻辑层:主要是对数据层的操作,对数据业务逻辑处理。表示层:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成:ASPX, 如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。Browser/Server三层体系结构,如图2.1所示浏览器Web服务器(IIS)Web应用程序数据库HTMLHTTP图2.1 Browser/Server三层体系结构三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。 三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交换.开发人员可以将应用的商业逻辑放在中间层应用服务器上,把应用的业务逻辑与用户界面分开。在保证客户端功能的前提下,为用户提供一个简洁的界面。这意味着如果需要修改应用程序代码,只需要对中间层应用服务器进行修改,而不用修改成千上万的客户端应用程序。从而使开发人员可以专注于应用系统核心业务逻辑的分析、设计和开发,简化了应用系统的开发、更新和升级工作。使用三层结构主要是使项目结构更清楚,分工更明确,有利于后期的维护和升级。它未必会提升性能,因为当子程序模块未执行结束时,主程序模块只能处于等待状态。2.5 开发及运行环境l 系统开发平台:Visual Studio 2005l 系统开发语言:C#l 数据库管理系统:SQL Server 2000l 系统运行平台:Windows XP/Windows2000或更高版本l 系统运行环境:Microsoft.NET Framework SDK v2.0或更高3 系统需求分析3.1 系统可行性分析系统可行性可以从、技术可行性和社会可行性2个方面来论证。(1)技术可行性分析本系统使用Microsoft Visual Studio 2005和Microsoft SQL Server 2005开发工具,而这两个开发工具相对而言也是比较简单、易学的。开发语言使用C#,这种面向对象语言,相对于C,C+而言也简单很多,主要是开发人员对C#更加熟悉。所以技术上也是可行的。(2)操作可行性分析本系统界面友好,操作方便,只要懂得计算机的基本操作,都会使用该系统的相关操作。所以,在操作可行性上也是可行的。经上述可行性分析,系统是可行的,可以立即进行。3.2系统需求分析3.2.1系统功能需求Web 作业系统主要包括学生自由空间、作业系统、考试系统和教师系统。其中教师系统又可以分为教师子系统和管理员系统。学生自由空间是为学生本人准备的一些空间。学生在这里可以上传一些个人文件。教学子系统主要是教师通过登录系统发布作业、收取作业、发布考试、考卷收取以及个人文件管理。教师登录了教学系统后,根据教学的需要发布作业,将学生需完成的作业上传到系统中,同时通过系统生成作业用户名和密码,再将这些作业用户名和密码分配给学生。学生根据这些用户名和密码登录作业系统即可下载作业要求。待学生将完成的作业上传到系统后,教师即可打开系统的作业系统收取并批改作业。发布考试科目和发布作业的过程类似,学生登录考试系统的准考证和密码也是由科任老师分配给定的,不同的是系统提供的是上机考试,考试完毕必须立即上传到系统。个人文件管理给教师一个私人平台,这个文件夹与作业和考试文件夹是分开的。学生进入系统后根据老师给定的用户名和密码登录作业系统,查看并下载作业,按作业要求完成并上传作业;由于系统提供上机考试,学生必须在老师的指导下完成并将考卷上传。3.2.2系统性能需求本系统是基于网络、操作简便。为了能够满足学生在做作业整个过程中都能够顺利的上传文件和作业,老师能够在批改的时候在线打分和管理学生的相关文件和作业,管理员可以在线查看报表和管理学生的相关文件和作业,Web作业系统主要实现功能如下:1 教师在网上发布作业,包括作业题目上载、公布作业完成时间、内容;发布考试题目和要求。教师在网上下载批阅作/考卷,给出学生成绩。2 学生在网上完成作业,包括作业下载、上传作业内容和作业成绩查询等。3 学生完成网上考试。包括考试题目下载,上传考试文件和考试成绩查询等。4 学生和老师都实现上传、下载、删除个人文件。5 新教师在使用新系统时,可以申请使用系统。6 管理员管理学生信息管理,包括学生用户名和密码修改和查询。7 管理员管理教师信息管理,包括添加、删除、修改、查询、审批新教师信息。3.3 系统的主要工作流程3.3.1学生作业档案管理系统功能模块学生作业档案管理系统功能模块图见图一,系统采用.net2005作为开发平台,采用三层结构进行开发,数据库为SQLSERVER2005, 客户端:Windows XP,Internet Explorer(IE)等, 服务器端:Windows2003,Internet Information Server (IIS) .用户通过浏览器进入系统。档案属性数据显示、下载打印作业电子图片经扫描的电子照片查询,检索系统功能档案数据库SQLSERVER2005电子照片共享文件目录管理数据图 3.1学生作业档案管理系统功能模块图。3.3.2 角色管理模块角色管理模块流程图,如图3.2 所示。学生操作界面教师操作界面查看老师布置的作业查看作业结果修改密码安全退出布置作业批改作业员理管统计作业结果查看作业信息其他功能图3.2 角色管理模块流程图也就是说管理员具有所有的功能对老师和学生的权限也有权修改,但是删除和新建是一般不使用的。 密码修改:每个学生第一次登录系统时,使用的密码就是本人的学号,为了方便,登录后,学生可以自行修改个人密码。修改的密码将保存到数据库中。文件管理:打开文件夹,可以查看和删除保存到文件夹里的文件。同时也可以将文件下载到机器上。3.3.3专业模块 下面是介绍专业模块管理的流程图如图3.3,是介绍在专业管理中管理员、老师、学生。分别可以进行什么操作。启动程序身份验证管理员、教师。学生对专业评论进行查看对专业进行修改、删除、新增否是对专业进行评论管理员教师学生这样方便学生了解老师的要求和让大家知道个专业的特点,对学生也是一种激励。3.3.4 数据库逻辑结构设计本系统使用SQL Server2000作为数据库管理系统。数据库名为WebSystem. WebSystem数据库中包含的数据表及相应功能如下表3.1所示。表3.1数据表功能tblUser存放用户(学生)等基本信息tblTeacher存放教师类用户的基本信息tblExercise存放学生的作业基本信息以及学生和教师的基本信息tblExam存放学生的考试基本信息以及学生和教师的基本信息tblDepartment存放学院信息tblApply存放教师申请的基本信息SD_inform存发教师发布的公告信息(1)学生用户信息表 tblUser学生用户信息表主要用于存放学生用户类的基本信息,包括学生ID号、登录名、学生卡号、班级ID号、密码、权限、真实姓名几项基本信息。在已创建的SQL Server数据库WebSystem中,右击“表”创建一个表,名为tblUser。向表中添加如下字段。表3.2 tbUser字段名数据类型长度可否为空说明UserIDint4否学生ID号LoginNamevarchar32否登录名CardNoVarchar20可卡号ClassIDint4否班级别号Passwdvarchar16否密码Statusint4可身份权限TrueNamevarchar32可真实姓名Banlanceint4可(2) 教师用户信息表tblTeacher教师用户信息表主要用于存放教师类用户的基本信息表,包括教师ID号、登录名、教师卡号、密码、真实姓名、单位ID号、单位名称等基本信息。表3.3 tblTeacher字段名数据类型长度可否为空说明UserIDint4否教师ID号LoginNamevarchar50否登录名CardNOvarchar50否卡号Passwdvarchar50否密码TrueNamevarchar50可姓名ClassIDint4可单位ID号Classvarchar50可单位名称(3) 作业信息表tblExercise作业信息表主要是用于存放教师生成的作业信息以及学生和教师的基本信息等。包括作业任务名、教师ID号、作业用户名、用户密码、教师真名、学生学号、学生真名、学生学院、学生班级。作业信息表结构如表3.4所示。表3.4 tblExercise字段名数据类型长度可否为空说明subjectnvarchar128可作业任务名teachernvarchar16可教师ID号usernameNvarchar64可作业用户名passwordnvarchar32可用户密码jszmnvarchar32可教师真名CardNOnvarchar50可学生学号xszmnvarchar50可学生真名xsxynvarchar50可学生学院xsbjnvarchar50可学生班级(4) 考试信息表tblExam考试信息表主要用于存放老师生成的考试基本信息以及学生和教师的基本信息。包括考试科目名、教师ID号、考试用户名、用户密码。教师真名、学生学号、学生真名、学生学院、学生班级等基本信息。考试信息表的结构如表3.5所示。表3.5 tblExam字段名数据类型长度可否为空说明subjectnvarchar128可考试科目名teachernvarchar16可教师ID号usernameNvarchar64可作业用户名passwordnvarchar32可用户密码jszmnvarchar32可教师真名CardNOnvarchar50可学生学号xszmnvarchar50可学生真名xsxynvarchar50可学生学院xsbjnvarchar50可学生班级4 系统登录界面实现该模块主要是对想要登录本系统的用户的用户名、密码和登录类型进行检验。只有用户名、密码和登录类型都正确了才能成功的登录本系统,而且会根据不同的登录类型到不同的界面;若用户名、密码或者登录类型只要有一个出错或者没有填写都会导致登录失败。具体如图:5-1所示:图:5-1此时点击登录按钮(登录类型不正确),会出现图:5-2的错误提示:图:5-2其他无论是用户名还是密码出错了都是会出现图:5-2的错误提示框。登录的具体实现代码如下:protected void btnlogin_Click(object sender, ImageClickEventArgs e) bool select = false; int type = 0; bool success = false; for (int i = 0; i < rbltype.Items.Count; i+) if (rbltype.Itemsi.Selected) select = true; type = int.Parse(rbltype.Itemsi.Value); if (select) string username = this.txtname.Text.Trim(); string password = this.txtpass.Text.Trim(); System.Text.StringBuilder strwhere = new System.Text.StringBuilder(); switch (type) case 1:/学生 strwhere.AppendFormat(" Stu_Number='0' and Stu_Password='1' ", username, password); BLL.Student bll = new BLL.Student(); DataSet ds = bll.GetList(strwhere.ToString(); if (ds.Tables0.Rows.Count != 0) success = true; Session"did" = ds.Tables0.Rows0"DID".ToString(); Session"StudentNum" = ds.Tables0.Rows0"Stu_Number".ToString(); Session"StudentId" = ds.Tables0.Rows0"Stu_id".ToString(); Response.Redirect("Student/main.aspx"); break; case 2:/教师 strwhere.AppendFormat(" Tea_Number='0' and Tea_Password='1' ", username, password); BLL.Teacher bll = new BLL.Teacher(); DataSet ds = bll.GetList(strwhere.ToString(); if (ds.Tables0.Rows.Count != 0) success = true; Session"TeacherNum" = ds.Tables0.Rows0"Tea_Number".ToString(); Session"TeacherId" = ds.Tables0.Rows0"Tea_ID".ToString(); Response.Redirect("Teacher/main.aspx"); break; case 3:/管理员 strwhere.AppendFormat(" Admin_Number='0' and Admin_Password='1' ", username, password); BLL.Admin bll = new BLL.Admin(); DataSet ds = bll.GetList(strwhere.ToString(); if (ds.Tables0.Rows.Count != 0) success = true; Session"AdminNum" = ds.Tables0.Rows0"Admin_Number".ToString(); Session"AdminName" = ds.Tables0.Rows0"Admin_Name".ToString(); Session"AdminId" = ds.Tables0.Rows0"Admin_id".ToString(); Response.Redirect("Admin/main.aspx"); break; default: MessageBox.Show(this.Page, "请选择登录类型!"); ; break; if (!success) MessageBox.Show(this.Page, "登录失败,请重新登录!"); else MessageBox.Show(this.Page, "请选择登录类型!"); 4.2 角色管理模块角色管理的主界面如图5-3,学生的具体操作就可以在这个界面上选择要操作的内容来实现,同时也可以对个个角色的权限进行管理,操作也十分的方便。图5-3实现代码如下;public partial class FrmRoleList : PageBase DataSet ds = new DataSet(); AssignmentSln.BLL.SRole SRoleBLL = new AssignmentSln.BLL.SRole(); PageUtility mPageUti = new PageUtility(); protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) btnUpdate.Attributes.Add("onclick", "return CheckUpdate('hdnSelectValue')"); btnDelete.Attributes.Add("onclick", "return SelectConfirmMsg('hdnSelectValue',' '请选择一条记录,您确认删除这些记录吗?')"); dgListDataBind(); protected void dgListDataBind() ds = SRoleBLL.GetList(GetWhere(); dgList.DataSource = ds.Tables0; dgList.DataBind(); protected string GetWhere() string where = "" if (txtRoleName.Text.Replace(" ", "") != "") where = " and RoleName like '%" + txtRoleName.Text.Replace(" ", "").Replace("'", "''") + "%'" return where; protected void dgList_PageIndexChanged(object source, DataGridPageChangedEventArgs e) dgList.CurrentPageIndex = e.NewPageIndex; dgL