




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
硕士教学管理系统设计毕业论文1 引 言随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。伴随我国高等教育的飞速发展,高等教育逐渐大众化,很多高校的在校生人数达到万人以上,设立的专业、学科也是越来越多,从而使高校教学管理工作任务越来越繁重。为了适应新形势、新任务的要求,高校教学管理必须改变传统的教学管理模式,走信息化的路子,建立教学管理信息系统,提高工作效率,提升管理水平,使教学管理工作逐步实现科学化和现代化。应用计算机对高校教学管理信息工作进行辅助,具有人工管理所无法比拟的优点。例如:检索迅速,查找方便,可靠性强,存储量大,保密性能好等。这些优点能够极大地提高教学管理工作的质量和效率,也是高校教学管理工作科学化,规范化,信息化管理的重要条件。因此,开发在线教学管理系统很有必要。1.1课题研究背景近年来高校校园信息化逐步完善,高校师生借助校园网有效的提高了办事效率。校园数字化建设越来越受到重视,校园信息化发展迅速,规模不断扩大,目前为止全国85%以上的高校已经建立起校园网,为教学管理信息化创造了有利条件。各大高校针对师生的教务管理系统、成绩查询系统、招生就业系统、BBS、校园网站等系统纷纷出现,对全校师生的学习、生活、管理、办公带来了便利。但这些教学系统大部分功能单一,无法将学校中各部门、各用户整合在一起,使他们之间能够相互联系。这就造成了很多数据的大量冗余,这很容易造成数据的不一致性而使得教学工作无法正常运行。在以前我院学生上课考勤管理都是以任课老师上课点名,人工记录学生上课出勤情况,学期末根据上课出勤表及作业登记表对学生平时成绩打分,然后把数据上交到院系。对于师生交流方面,教师留言要口头转达,学生与教师交流困难。这种的模式在目前高校管理中暴露出了许多弊端:一是学生上课出勤表对班主任不透明,班主任很难知道本班学生上课的出勤情况,不便于与学生及时有效的沟通;二是学生对自己整个学期的上课出勤情况没有整体的统计信息;三是院系领导更加把握不住学生上课的出勤情况及整个班级出勤情况。四是任课教师与学生交流困难,教师布置教学任务不能及时传达到每个学生及学生不能及时反馈教师教学情况。如何能够将各部门有效统一,使教学管理者从繁重的日常事务中解放出来,让他们有更多的时间去思考、研究教学管理规律显得尤为重要而迫切。实现教学管理信息化,必须建立科学的教学管理信息处理系统1.2课题研究目标和意义本教学管理系统的目标是设计并实现一套完整统一、技术先进、高效稳定、安全可靠的基于B/S架构的教学管理系统。教学管理信息系统36的建设涉及信息资源和信息技术两方面的建设问题,是信息技术与信息资源两大要素的有机结合。信息化教学管理手段是教学管理适应社会进步和科学发展的必然选择,是实现教学管理现代化的前提和关键。要让信息网络技术广泛渗透到教学管理的全过程,充分利用现代信息技术,建立起先进、可靠、完善的技术平台,为实现教学管理的网络化和信息处理的智能化提供有力的技术支撑。信息资源的开发与建设是教学管理信息化的核心内容,也是教学管理信息化建设的基础。教学管理的信息资源主要有课程信息、学生信息、教师信息、教学条件信息、教学档案信息等。教学信息资源的建设必须以现代教育思想为指导,合理规划、统筹安排,做好教学信息的采集和管理软件的开发。本系统与以往的教学管理系统比较最大优点就是能够将我院的所有用户统一成一个有机的整体。在我院,一般学生工作比如学生请假、考勤等是由团总支负责,一般的教学工作,比如课程表的设置由院办公室负责,教师负责学生的教学工作,比如考试成绩的录入及上课点名等,而学生受以上部门的管理,并享有选修课程的权利。以上这些工作很多是需要各部门联合完成的,比如只有院办公室根据本学期的教学安排设置学生的选课范围,学生才能进行选课;又比如学生在团总支请假后应及时反映在教师课堂点名表中。而院领导也能通过本系统了解教师的教学情况。本系统就实现了我院所有部门的统一组织,统一管理。为各部门进行交流时提供了方便。本系统对师生交流、学生考勤、请假制度、选修课管理、课程管理等五个方面进行了设计,基本实现了学生的在线与教师交流、教师点名以及管理员对点名结果的管理、学生自选课程等功能。通过网上教学管理系统的实现,解决了我院的实际问题,提高了学校的办公管理的效率,减少了工作出错的几率,节约了资金成本,使得教学人员能够从繁重的教学管理工作中解脱出来。1.3论文组织结构本文共分七章,组织结构如下:第一章 引言:主要介绍和分析了目前高校教学管理系统的现状和面临的问题,本课题的研究背景和研究意义,指出了本系统的最大特点既是各部门的有机统一。第二章 应用系统开发环境及需求、可行性分析:主要介绍本系统开发设计的工具和组成架构。为解决高校教学管理中存在的问题,目标系统必须做什么,给出了系统的可行性分析,系统的用例图, 各模块的业务流程图。介绍了各系统用户所拥有的功能。第三章 系统总体设计:主要介绍功能模块结构图中各部分的功能,三层架构的实现、以及本系统的类图以及关系、各模块功能,介绍了所用数据表的具体设计,各表之间的关系。最后给出了其中能够体现三层架构思想的一段主要代码以及SQL Server数据库的连接方法。第四章 安全性分析:主要介绍本系统的安全性设计以及保证系统数据库安全的主要方面点第五章 系统测试:本章给出了测试目标,并使用黑盒测试法测试了系统的各模块功能,最后得到测试结论。第六章 总结:主要介绍了本系统的优缺点。第七章 致谢:感谢导师和同事对我在设计过程中的指导。2 应用系统开发环境及需求分析本系统的开发主要是基于面向对象和三层架构的思想,利用ASP.NET、SQL SERVER 2000和C#等工具开发而成,下面首先介绍一下这些思想的概念以及所使用的工具现状。2.1 ASP.NET与三层架构ASP.NET7又称ASP+,但它不是ASP的简单升级,而是微软提出的.NET框架的一部分,它是一种以.NET框架为基础开发网上应用程序的全新模式。.NET 26的核心内容之一就是要搭建第三代互联网平台,这个网络平台将打破不同的上网设备、不同的操作系统、不同的网站,以及各大机构和工业界的网络障碍,将解决网站之间的协同合作,使网站之间形成自动交流,从而最大限度的共享资源。ASP.NET的功能和特点: ASP.NET是.NET框架中专门用来开发网上应用程序的,它其实不是一种语言,而更像一个框架,在这个框架下可以采用VB.NET,C#等其他.NET语言开发网上程序。与以前的 Web 开发模型相比,ASP.NET 提供了数个重要的优点:增强的性能:ASP.NET 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。世界级的工具支持:ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。其中特性又包括13:1、简易性:ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 38的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。2、可管理性:ASP.NET 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 Web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此“零本地管理”哲学也扩展到了 ASP.NET 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。3、可缩放性和可用性:ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。4、安全性:借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。ASP.NET可以使用.NET平台快速方便的部署三层架构。ASP.NET革命性的变化是在网页中也使用基于事件的处理,可以指定处理的后台代码文件,可以使用C#,VB,J#作为后台代码的语言。.NET中可以方便的实现组件的装配,后台代码通过命名控件可以方便的使用自己定义的组件。显示层放在ASPX页面中,数据库操作和逻辑层用组件来实现,这样就很方便的实现了三层架构。表现层(Presentation Layer)表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。在ASP.NET中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。业务层(Business Tier)业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。在ASP.NET中,该层包括使用SqlClient或OleDb从SQL Server或Access数据库取数据、更新数据及删除数据,并把取得的数据放到DataReader或DataSet中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。BLL和DAL26通常该层被划分成两个子层:业务逻辑层(Business Logic Layer,BLL)和数据访问层(Data Access Layers,DAL)。业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。DAL访问数据并将其转给BLL。在ASP.NET中,该层可以用SqlClient或OleDb从SQL Server或Access数据库取数据,把数据通过DataSet 或DataReader的形式给BLL,BLL处理数据给表现层。有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL是一个透明层。数据层(Data Tier)数据层是数据库或者数据源。在.NET中,通常它是一个SQL Server或Access数据库,但不仅限于此两种形式,它还可能是Oracle27,mySQL,甚至是XML。2.2 SQL Server简介随着计算机技术的不断发展,信息化管理程度的不断提高,数据库技术在信息管理中的作用日益重要。Microsoft SQL Server是目前使用最广泛的数据库之一,它与Windows网络操作系统的无缝集成,智能化的内容管理,强大的功能,使它得到大量用户的喜爱。数据库是数据管理的最新技术,是计算机科学的重要分支。多年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。SQL11语言主要有数据定义语言、数据操纵语言、数据控制语言和其他类语言要素组成。T-SQL的分类也有类似于SQL语言的分类,不过做了许多扩充。T-SQL语言的分类如下:变量说明语句、数据定义语言(用来建立数据库、数据库对象和定义其列,大部分是以CREATE 开头的命令)、数据操纵语言(用来操纵数据库中的数据的命令,如:SELECT、INSERT、DELETE等)、数据控制语言(用来控制数据库组件的存取许可、存取权限等的命令,如:GRANT 等)、流程控制语言(用于设计应用程序的语句 ,如:If While和Case等)、内嵌函数(说明变量的命令)、其他命令(嵌于命令中使用的标准函数)。一个数据库能否保持信息的正确性、及时性、很大程度上依赖数据库的更新功能的强弱与数据库的实时更新能力,这些操作包括插入、删除、修改,也成为更新3种操作。SQL Server是Microsoft公司推出的SQL Server数据库管理系统,它使得用户能够更方便,更快捷地管理数据库和进行系统开发。基于要求数据库的吞吐量和稳定性较高,教学管理系统的开发选择了该数据库。2.3 C#语言简介C和C+是软件开发领域中内容最丰富的语言,为软件设计人员提供了非常多的功能和强大的控制力。利用C和C+语言开发Windows应用程序比较复杂,与VB等基础语言相比, C和C+在完成一个Windows程序开发的过程中需要消耗更多的时间。由于C和C+语言的复杂性,不管是经验丰富的程序员还是初涉编程的自学者都在试图寻找一种新的语言,希望能在功能和效率之间找到一个更为理想的平衡点。对于这一问题,微软公司9于2000年6月正式发布了C#,C#是一种最新的、面向对象的编程语言。C#使得程序员可以在Microsoft开发的最新的.NET平台上快速地编写Windows应用程序,而且Microsoft .NET提供了一系列的工具和服务应用在应用程序的开发中。C#面向对象的卓越设计使其成为构建各类组件的理想选择。使用这些组件可以方便地在XML网络服务中心随意转化,从而使它们可以通过Internet在任何操作系统中用任何语言在其上进行调用。C#继承了C和C+的优点,同时具有简单易学和快速开发等优点。通常情况下,C#具有以下几个方面的优点。31.简洁易用的语法C#主要从C和C+继承而来,同时吸收了Java和Delphi的优点,摒弃了C和C+中一些比较复杂而且不常用的语法元素,如多父类继承。说明:C#取消了指针,不允许直接对内存进行操作,让代码运行在安全的环境中。2.自动的资源回收机制C#37与.NET的完美集成使得C#完全拥有.NET的自动资源回收机制。在早期的Windows版本中,程序使用完资源后应该及时释放,否则会导致系统资源不足而运行变慢。在.NET框架中,系统会对一些使用后的资源进行清理。说明:编写C#程序不需要及时释放资源,因此,程序员可以把更多的精力放在编写程序的逻辑结构上。3.与Web的紧密结合网上办公和电子商务在各行各业中得到越来越广泛的应用,B/S模式程序的市场需求越来越多。在微软的.NET开发套件中,C#与ASP.NET是相互融合的。ASP.NET的应用程序可以使用VB.NET语法,也可以使用C#语法。使用C#语法编写的ASP.NET结构更严谨,运行更高效。说明:由于有了Web服务框架的帮助,对程序员来说,网络服务看起来就如同C#的本地对象。程序员们能够利用他们已有的面向对象的知识与技巧开发Web服务33。4.完整的安全性与错误处理语言的安全性与错误处理能力是衡量一种语言是否优秀的重要依据。在编写程序时任何人都会犯错误,即使是最熟练的程序员也不例外,如忘记变量的初始化、对不属于自己管理范围的内存空间进行修改等。C#的先进设计思想可以消除软件开发中的许多常见错误,并提供了包括类型安全在内的完整的安全性能。5.版本处理技术升级软件系统中的组件是一件容易产生错误的工作,在代码修改过程中可能对现存的软件产生影响,甚至可能导致程序的崩溃。为了帮助开发人员处理这些问题,在C#语言中内置了版本控制功能。通过版本控制,使用C#的开发人员能够更加轻易地开发和维护各种商业软件。2.4 需求分析需求分析是指理解用户需求,就软件功能与最初设想的达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。在这个过程中,用户是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。从狭义上理解:需求分析是指对需求的分析、定义过程。2.4.1 用户权限需求本教学管理系统将用户权限分为3类,分别是系统管理员权限、教师权限和学生权限。其目的主要是:1、为了改变本院一直以来人工进行各种教学管理的弊端,使得管理和教学人员能够从繁重的教学管理任务中解脱出来。2、实现学生可以直接在网上得到自己需要的一些教学信息,并与教学人员在网上进行互动,有利于提高学生的学习积极性。3、利用教学管理系统提高学生管理的响应速度,做到及时发现,及时解决。教学管理系统需要满足来自三方面的需求,这三个方面分别是学生、教师和管理员。学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以进行维护部分个人信息。一般情况下,学生只应该维护本人的个人信息。保护了学生的个人隐私。教师的需求是回复学生留言,及时提交考勤信息和给学生群发留言。管理员的功能最为复杂,包括对课程进行管理和设置,查看教师提交的考勤信息,其中在管理员权限中有一项只有领导才可以查看的全部教师留言。由于功能较多,所以需对管理人员登陆本模块进行更多的考虑。在此系统中,我院管理人员功能的信息量大,数据安全性和保密性要求最高。设计不同用户的操作权限。1、系统管理员权限可以通过超级用户身份登录,对系统进行全面的管理,对教师提交的考勤信息进行查看并对课程表信息进行管理,建立文档下载区,管理员可以对老师及同学的帐户进行管理。2、教师权限分为两种,一种是普通老师权限,一种是班主任权限。普通老师权限可以提交考勤信息,查看他所教授课程中全部学生考勤情况以及给学生留言,班主任权限除了普通老师权限中所提到的权限外,还有一个为所在班级学生请假,销假的权限。3、学生权限可以给教师留言并查看教师回复,并可以在网上选择自己选修的课程。2.4.1 用户登录需求设计不同用户的登陆方法:1、学生信息模块完成学生的登陆,其中学生登录模块的功能是验证登录人员确实是本院的学生,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入主控操作界面。2、管理员信息模块完成管理者的功能,其中管理员登陆模块的功能是验证登录人员确实是有管理权限的工作人员,启动本系统后,系统提示输入帐户和密码,验证后进入主控操作界面,其中普通管理员无权查看所有教师留言,只有特殊管理员才可查看。3、教师信息模块完成教师的登陆,其中教师登陆模块的功能是验证登录人员确实是我院的教师。2.5 可行性分析教学管理系统是面对学校学生用户和教师用户的简单便利的使用平台,针对校园网站的用户以及校内网络条件的特殊性,以B/S构建思想来实现网上教学的管理,可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。1、技术可行性技术可行性的考虑集中在计算机硬件和软件能否支持被开发的系统,首先关心的是该组织是否有相应的软件和硬件能够支持该系统。传统的教学管理系统的核心是C/S(Client/Server客户端服务器)架构,而基于Intenet的教学管理系统的核心是B/S(Browser/Server浏览器服务器)架构。B/S架构比起C/S架构有着很大的优越性,传统的教学管理系统依赖于专门的操作环境,这意味着操作者的活动空间受到极大限制;而B/S架构则不需要专门的操作环境,在任何地方,只要能上网,就能够操作教学管理系统。这也就给交互式信息的产生创造了先决条件。使得通过互联网的信息传递更加的便捷。B/S教学管理系统可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。技术可行性:以.NET技术为开发基础,以广泛应用的Windows为平台,C#和SQLSEVER为开发工具。2、 经济可行性经济可行性是一个经典的并且是最常使用的评价计算机系统的方法。这个评价的结果称为成本/效益分析。作为一个校内平台,有着得天独厚的用户优势和网络条件,系统的开发和日常维护不存在成本问题。本网站开发完成后可以作为免费的网络平台针对校内用户运行,不追逐经济利益。3、安全性、开放性、完备性该系统主要用于学校的教学管理,涉及学生个人信息和学校教学工作能否正常开展,因此,必须确保系统和信息的安全性、可靠性。学生在规定的时间段内可随时登录系统进行选课并查询相关信息,管理人员可随时对其进行管理和监控,以及对选课数据进行分析。综上所述,由于校园内有良好的网络条件,并且开发成本低,开发完成后针对校内用户免费运行,实现此系统在技术、经济各方面都是可行的。3 系统总体设计3.1系统总体功能模块结构设计本系统对登录控制,考勤管理,师生交流,请假销假,学生选课,课程管理等都作了进一步的功能划分,下面先对各模块进行详细的分析与阐述:功能描述如下:1、考勤管理教师通过录入考勤信息,可以将每次上课点名的考勤信息传到服务器上,便于学期末的查询。管理员可以按天查看考勤表的提交情况。管理员可以按周查看考勤表的提交情况,在期末考试时,任课教师可以通过查看考勤情况,准确的给每个学生考勤分。管理员可以查看每个班级的学生的缺勤情况,可以查看全系所有学生考勤。 2、师生交流教师可以给选自己课程的所有学生群发信息,便于教师对学生进行辅导或者下通知。学生可以通过这个功能给信息学院的所有教师留言,所留言论皆为匿名。教师可以查看学生发过来的留言。学生可以查看教师回复留言,这里的教师回复留言包括两个方面:一是学生给教师留言后教师回复回来的留言;二是教师给自己上课的学生发的通知公告。可以查看学生发给教师的所有留言,该功能只有书记院长才有权限。可以查看学生发给单个教师的留言。3、请假销假学生请假必须经过班主任或者团总支老师的同意,才能在网上录入请假信息。如果请假在一天之内,可以直接找班主任请假,然后由班主任帮忙销假,如果超过一天,必须找团总支老师请假,输入请假信息,然后由班主任帮忙销假。4、学生选修课程在学生选修课程前需要经过管理员对各班级的选课情况进行选课条件设置,然后学生在网上添加选课信息,在添加了选课信息后学生可以对自己的选课情况进行修改。5、课程管理系统管理员需要事先在本学期对课程进行录入,放入课程表中,然后根据课程信息生成本学期所有周的课堂考勤等情况供教师考勤。6、控制登录在学生,教师或者系统管理员进行登录时,系统可以根据用户输入的用户名直接判定该用户的登录权限,然后进入各自权限的页面。下面给出教学管理系统功能模块图:图3-1系统功能模块结构图Figure 3-1 system function structure chart3.2 教学管理系统的类图下面给出本教学管理系统相应的类图:图 3-2 系统类图Figure 3-2 System Class diagram因为本系统是从信息科学技术学院的实用角度开发的,并不是用于理论研究,因此很多业务逻辑功能的处理直接从页面表示层实现的,没有经过业务逻辑层,所以各业务逻辑类之间并没有继承、多态、接口等关系。本系统的每个逻辑类都是对应数据库中的每个表,采用面向对象的思想,而每个逻辑类都对应于相应的一个表。类中的属性与表中属性相同,为了方便期间,我们这里的类名与表名是同名的,就不再对每个类的属性做详细描述。为了方便,我们定义每个类的方法都是相同的,以下做详细说明:各个类中的方法都相同,分别如下:GetMaxId():获得表中的最大ID,每个表都设置了主键ID。Exists():判断是否存在该记录。Add():增加一条记录。Update():更新一条记录。Delete():删除一条数据。GetModel():得到一个对象实体。GetList():获得数据列表。3.3 数据库结构设计1、数据库设计原则数据库设计是整个系统设计的核心和基础,一个数据库设计的好坏直接影响系统运行的效率和系统稳定性。因此数据库设计要遵循数据库范式原则,保证数据的正确性和完整性。本系统采用的所有数据表都遵循了3NF范式的要求,个别数据表可以达到更好的范式要求,遵循了数据库设计原则中的以下原则:a 一致性原则;b 完整性原则;c 安全性原则;d 可伸缩性原则;e 规范化;数据库的设计应遵循规范化理论,规范化程度过低的关系,可能会存在插入、删除异常、修改复杂、数据冗余等问题,解决的方法就是对关系模式进行分解或合并(范化),转换成高级范式。但也应当注意到,并不是规范化程度越高的关系就越好。所以,在具体应用时,到底规范化进行到什么程度需要权衡利弊。一般做到第三范式(3NF)就足够了。为了更好实施数据库,下面给出数据库的E-R模型。2、数据库系统中实体间的E-R模型设计图3-3 教学管理系统数据库E-R模型Figure 3-3 teaching management system database E-R model说明:在本ER图中,每个教研室(部门)管理不同的专业班级,每个教师属于不同教研室,每个学期开始时管理员需要根据培养计划设置每学期的课程,而教师可以选取所教课程,学生可以选修不同的课程。需要特别说明的,关系是教师与学生之间的管理关系,其中包含了教师对学生的课堂点名以及教师与学生之间的交流;管理员与学生之间的管理关系,其中包含了管理员对学生的考勤管理以及管理员与学生之间的交流。3、数据库系统中表的关系图:图3-4 数据表的关系图Figure 3-4 data table diagram4、 数据库详细设计下面给出数据库中所使用到的表以及各个表的结构设计。数据库名:Rx_StuManage表3-1 Rx_User(用户表)Table 3-1 Rx-User序号列名数据类型长度小数位标识主键允许空默认值字段说明1UserIDint40用户号2UserNamevarchar500用户名3UserPwdvarchar500用户密码4UserTypeint40用户类型:0表示管理员;1表示教师;2表示学生;3表示班主任表3-2 Rx_TeacherChooseCourse(教师选课表)Table 3-2 Rx_TeacherChooseCourse序号列名数据类型长度小数位标识主键允许空默认值字段说明1IDint40ID号2TeacherIDint40教师ID3CourseIDint40课程号ID表3-3 Rx_Teacher(教师表)Table 3-3 Rx_Teacher序号列名数据类型长度小数位标识主键允许空默认值字段说明1TeacherIDint40教师ID2DepIDint40部门ID3TeacherNamevarchar100教师真实姓名4TeacherUserNamevarchar200教师登录用户名表3-4 Rx_StuLost(学生缺勤表)Table 3-4 Rx_StuLost序号列名数据类型长度小数位标识主键允许空默认值字段说明1StuLostIDint40缺勤ID2CourseListIDint40点名课程表ID3CourseIDint40课程号ID4StuIDint40学号表3-5 Rx_StuLeave(学生请假表)Table 3-5 Rx_StuLeave序号列名数据类型长度小数位标识主键允许空默认值字段说明1IDint40请假ID2StuIDint40学号3ClassIDvarchar500班级ID4StuNamevarchar500学生姓名5Reasonvarchar500请假原因6GoWherevarchar500去处7LeaveTimedatetime83离开时间8ComeTimedatetime83回来时间9Telvarchar500电话10IsComevarchar500(未销假)是否销假11Notevarchar500备注12TeacherIDint40班主任ID13ApproverIDvarchar500批准人ID14LeaveLongint40请假天数15Agreevarchar500是否同意16RemoveManvarchar500销假人ID表 3-6 Rx_Student(学生表)Table 3-6 Rx_Student序号列名数据类型长度小数位标识主键允许空默认值字段说明1StuIDint40学号ID2StuNumberint40学号3ClassIDint40班级ID4StuNamevarchar100姓名5StuSexvarchar20性别6StuBirthdayvarchar500出生日期7StuAddressvarchar500住址8StuCodevarchar500邮编9StuHouseholdervarchar500家长10StuLostTimeint40(0)缺勤次数11StuChooseCourseint40(0)是否选过选修课:0没有选;1选过12StuLeaveint40(0)学生请假:1表示请假;0表示在校表 3-7 Rx_StuChooseCourse(学生选修课程)Table 3-7 Rx_StuChooseCourse序号列名数据类型长度小数位标识主键允许空默认值字段说明1IDint402CourseIDint40课程号ID3StuIDint40学号ID表 3-8 Rx_ReNote(教师给学生留言表)Table 3-8 Rx_ReNote序号列名数据类型长度小数位标识主键允许空默认值字段说明1ReNoteIDint40留言ID2ReNoteTitlevarchar600留言标题3ReNoteTextvarchar80000留言内容4StuIDint40学号5TeacherIDint40教师ID6ReNoteTimedatetime83(getdate()留言时间表 3-9 Rx_Note(学生给教师留言表)Table 3-9 Rx_Note序号列名数据类型长度小数位标识主键允许空默认值字段说明1NoteIDint40留言ID2NoteTitlevarchar500(No Title)留言标题3NoteTextvarchar80000留言内容4StuIDint40学号5TeacherIDint40教师ID6NoteTimedatetime83留言时间表3-10 Rx_Department(院系部门表)Table 3-10 Rx_Department序号列名数据类型长度小数位标识主键允许空默认值字段说明1DepIDint40部门ID2DepNamevarchar500部门名3DepTelvarchar500部门电话4DepDirectorvarchar500部门领导人5DepClassNumint40(0)班级个数表3-11 Rx_CourseList(点名课表)Table 3-11 Rx_CourseList序号列名数据类型长度小数位标识主键允许空默认值字段说明1CourseListIDint40点名课程表ID2CourseIDint40课程号3HowWeekint40周次4HowDayint40星期几5Classint40哪节课6Addressvarchar500地点7Stateint40(0)是否点名8TeacherIDint40教师ID表3-12 Rx_CourseClass(班级选修课情况表)Table 3-12 Rx_CourseClass序号列名数据类型长度小数位标识主键允许空默认值字段说明1IDint40班级选修课ID2CourseIDint40课程号ID3ClassIDint40班级号ID表 3-13 Rx_Course (课程表)Table 3-13 Rx_Course序号列名数据类型长度小数位标识主键允许空默认值字段说明1CourseIDint40课程号ID2CourseNamevarchar500课程名3CourseCreditint40学分4CourseWeeksint40周次5CourseTypevarchar500课程类型6CourseCodevarchar500(0)课程代码表3-14 Rx_Class (班级表)Table 3-14 Rx_Class序号列名数据类型长度小数位标识主键允许空默认值字段说明1ClassIDint40班级ID2DepIDint40部门ID3ClassNamevarchar500班级名5ClassMonitorvarchar100班长6ClassStudyManvarchar100学习委员7ClassLevelvarchar500年级8ClassDatedatetime83入学日期9ClassStuNoint40(1)学生人数10TeacherIDint40教师号3.4三层架构的搭建1、建类库 新建一目录(文件夹StuManageSystem)- 打开Microsoft Visual Studio-文件-新建网站-ASP.NET网站(放在刚才的StuManageSystem目录下,这就是逻辑上的UI层)-文件-添加项目-类库(名称:IDAL,这就是逻辑上的数据访问层)-文件-添加项目-类库(名称:BLL,这就是逻辑上的业务逻辑层)-文件-添加项目-类库(名程:Model,这就是实体类库,不属于三层但穿梭于三层用于方便传送参数数据)。2、引用 在刚才新建的项目上添加引用如: IDAL层(数据访问)层 - 右击添加引用-项目-选择Model-确定;在BLL(业务逻辑)层 - 右击添加引用-项目-选择Model和IDAL-确定;在UI(用户界面)层- 右击添加引用-项目-选择Model和BLL-确定;这样三层就搭建好了。3、工作完成a 用户界面层调用业务逻辑层;业务逻辑层调用数据访问层;不能跨层调用,实体类穿梭在三层之间。b 写实体类(就是对象的模型包括:内部属性、方法、访问器)。c 所用和数据库交互的方法都要放在数据访问层的类中(这样的类需要引用上Model:Using Model;可根据需要创建多个此种类)。d 所有业务逻辑处理的方法放在业务逻辑层,需引用上IDAL和Model,其他同c。e 界面层功能代码尽可能简洁,需引用上BLL和Model。3.5 系统登录模块设计1、系统登录实现程序流程图3-5 系统登录程序流程图Figure 3-5 System login process flow chart2、功能描述所有用户必须先登陆才能进入系统。为了安全,没有开发注册系统,所有用户信息都由管理员统一进行录入,只有在用户信息范围内的用户才有权限登录。登录页面通过点击信息学院首页左侧“教学管理系统”链接进入登陆页面如图5-2所示,用户登录时输入用户名和密码,如果错误则不能进入,如果正确系统则直接判断该用户的权限,然后进入此用户权限的页面。如果在登录过程中输入的用户名、密码或者验证码中至少一个出现错误,都会登录失败,如果输入的用户名密码次数超过3次,将无法继续登录操作。用户界面的设计:图3-6 登陆界面Figure3-6 login Interface本学生选课系统的用户有三类,分别是学生、教师和管理员。以学生用户为例:登陆的用户名是学生的学号,初始密码也是学生的学号,点击登陆后,系统根据用户名判断此用户权限,进入相应的学生界面。图3-7 学生系统界面Figure 3-7 students System Interface登陆的用户名是教师姓名的汉语拼音全拼,初始密码也是教师姓名的汉语拼音全拼,点击登陆后,系统根据用户名判断此用户权限,进入相应的教师界面。图3-8教师系统界面Figure3-8 teachers System Interface 功能主要有五项:a 录入考勤信息b 查看考勤情况c查看学生留言d查看学生选课e修改密码。教师可以通过点击左侧功能条上的链接,打开相应的功能页面。3.6师生交流模块的设计1、教师与学生交流实现的程序流程: 图3-9 教师与学生交流程序流程图 图3-10 学生与教师交流程序流程图Figure 3-9 Teacher and student exchange Figure 3-10 Students and teachersprogram flow chart exchange program flow chart 2、功能描述:在教师登录后,教师可以通过teacherNote页面主动给学生留言,留言内容将通过Renote类的add方法存入教师留言表中供,学生可以通过TeacherNoteSingle页面进行查看。在学生登录后,学生可以通过StudentNote页面主动给教师留言,留言内容将他哦哦你干过note类中的add方法存入学生留言表中,教师可以通过StudentNoteSingle页面查看留言。 3.7 学生考勤模块设置1、学生考勤实现程序流程图图3-11 考勤程序流程图Figure 3-11 Attendance program flow chart2、功能描述:学生考勤模块的管理是教师权限和管理员权限,教师录入进入Coursechose页面将学生选择点名课表,然后进入Stulostadd页面设置,利用Stulost类中的add
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年制导仪项目提案报告
- 分期车贷合同(标准版)
- 纹版复制工中秋节后复工安全考核试卷含答案
- 项目建设施工合同(标准版)
- 增材制造设备操作员中秋节后复工安全考核试卷含答案
- 核心素养在中学教学中的应用
- 绝缘材料制造工国庆节后复工安全考核试卷含答案
- 小升初英语写作50篇范文集锦
- 电力系统故障诊断技术流程文档
- 青春励志作文写作指导及范文
- JTG 3362-2018公路钢筋混凝土及预应力混凝土桥涵设计规范
- 脑梗死知识讲解模板
- 女性中医保健智慧树知到期末考试答案章节答案2024年暨南大学
- (正式版)JTT 1497-2024 公路桥梁塔柱施工平台及通道安全技术要求
- 一种鞘翅目林木害虫的辐照灭虫方法
- 国旗的知识课件
- 胸部肿瘤放疗讲课
- 【自考复习资料】05175税收筹划(重点知识汇总)
- 充电桩采购安装投标方案(技术方案)
- 低血压的护理和处理课件
- GB/T 19494.2-2023煤炭机械化采样第2部分:煤样的制备
评论
0/150
提交评论