资源描述
学生信息成绩管理系统毕业论文学 院 名 称: 班 级: 姓 名: 指导教师姓名: 指导教师职称: yyyy年 M月12中文摘要学生信息成绩管理系统是高校学生管理信息系统中的重要组成部分。学生信息成绩管理,将对学校的教务起到一个很大的作用,对学生的资料信息,成绩信息进行规范的管理。本文结合了当前大学生的实际情况,以大学生综合素质测评为核心,以学生为主体进行科学分析,结合社会需求,构建出一套符合时代要求的综合评价体系,设计并实现了学生信息成绩管理系统。本系统采用SQL Server2008为后台数据库,Visual Studio 2010 C#的开发平台设计并制作而成。同时采用了B/S(浏览器/服务器)的模式,管理员、辅导员和学生都可以在任意客户端通过网络访问本系统,并进行修改、添加或查询等工作,为学校管理人员提供了一个合理的信息化管理平台,推进了学校素质教育工作的全面开展。关键词:学生信息成绩管理,功能设计,Visual Studio 2010 C#,SQL Server2008AbstractStudents information management system is an important part of university students management information system. Students information management, will be a big impact on the school educational administration, to students information, the management of the specification of the performance information.In this paper, in combination with the practical situation of the current college students, college students comprehensive quality evaluation as the core, take the student as the main body of scientific analysis, combined with the social needs, build a comprehensive evaluation system, conform to the requirements of the era of students information management system was designed and implemented. This system USES the SQL Server2008 as the background database, Visual Studio 2010 c # development platform design and production. And adopted B/S (browser/server) mode, administrators, counselors, and students can be in any client .Keywords: Students information management, functional design, Visual Studio 2010 C#,SQL Server2008目 录中文摘要IAbstractI第一章 绪论11.1选题背景11.2 课题研究的现实意义11.3 课题研究的目的21.4 课题的主要内容2第二章 系统开发的方法以及技术82.1系统开发法简介82.1.1结构化系统的开发法82.1.2快速原型法82.1.3面向对象的开发法92.2 比较各类开发法92.3相关技术的简介102.3.1. Visual C#2010的相关介绍102.3.2 SQL SERVER 2008与SQL语言的介绍与特点11第三章 学生信息成绩管理系统的系统分析133.1系统原则及目标133.2工作流程图153.2.1“选课管理”工作流程153.2.2“成绩管理”工作流程153.3业务流程分析163.3.1业务流程图图例163.3.2主要业务流程图17第四章 学生信息成绩管理系统的系统设计314. 1学生信息成绩管理系统的模块设计314.1.1结构化设计方法314.1.2 系统的构成314. 2学生信息成绩管理系统的数据库设计334.2.1数据库概念结构设计334.2.2数据库逻辑结构设计354.2.3系统主要数据信息表354.2.4数据库物理设计38第五章 系统主要模块的设计与实现445.1用户登录445.2管理员使用界面及操作465.2.1 基础信息管理465.2.2教师管理485.2.3 学生管理495.2.4课程管理515.2.5 成绩管理515.2.9系统管理525.3教师管理使用界面及操作555.4学生管理使用界面及操作565.4.1 学生管理565.4.2选课管理565.4.3 成绩管理585.5 系统的改进59第六章 总结与展望64第一章 绪论第一章 绪论1.1选题背景随着科学的进步,计算机技术方面也迅猛发展,比如计算机网络技术与数据库技术方面,这些方面的进步改变了人们生活工作的方式。网络技术的应用使得计算机之间通信、信息共享成为可能,而数据库技术的应用则为人们提供了数据存储、信息检索、信息分析等功能,从而使得工作更有效率。数据库始于20世纪60年代,经过40多年的发展,现在已经是变成了一种体系,成为计算机软件的一个不可替代的分支。数据库技术展现的是如今数据管理的方法,使计算机的应用切实融入到国民经济各个领域,在数据处理领域发挥着越来越大的作用。我国的教育是一个影响着国家兴盛的重要行业,随着市场经济体制的发展,根据社会主义制度的中国特有的国情发展,我国对教育也是大力扶持与重视的,这样就使教育业向规范性与现代化的方向高速发展,教育事业从各方面提高工作效率,取得很好的经济效益,而一些新兴的、比较小的教育机构还没有全部具备这种功能。由此可见,随着我国教育的快速发展,计算机信息技术在教育上的应用会更加普及。1.2 课题研究的现实意义学生信息管理系统是将计算机技术和教学、教务工作相结合,按照学校的工作流程设计完成的。为了使学生信息管理系统在学院的管理中发挥更大的作用,让工作过程的更加简便,提高工作效率和工作质量,系统应具有实用性、简便性和适用性,与此同时要做到科学性,对每个数据库要有条不紊的管理,防止错乱,能够按照用户的要求进行简单查询和复合查询,实现报表打印,能够对查询结果进行分类汇总,注意数据的安全性,方便用户的操作,尽量避免复杂操作。在学校,用计算机管理学生的信息已经越来越时尚了。用计算机不仅可以提高单位时间内做的事,还可以让错误发生到最低,更重要的是可以保证学校资料的安全性,从而提高了学校的管理能力。因此学生信息管理系统对于学校来说,是必不可少的。努力实现自身价值,为个人、社会乃至国家的发展等起到相当大的作用。1.3 课题研究的目的“帮助高校学生管理人员高效地完成学生信息成绩管理工作,促使高校学生管理工作更加公平公正高效率”是本系统开发课题的主要目的。本课题开发的系统优点突出,具有以下“三性”“安全性”、“灵活性”、“操作性”。不同于其他复杂的系统,本系统的操作性相当简单。这是考虑到一般使用管理系统平台的人员并非都是计算机操作专业人士,其计算机操作水平并非都很高,故本系统平台除了基本的操作外,没有涉及一些过于专业化的计算机语言和知识,界面简洁明了美观,方便使用操作。1.4 课题的主要内容 目前,国内外对学生信息的认定工作存在着“资料收集工作量大,繁琐细致”、计算统筹工作重复”、“工作效率、准确度较低”等问题。面对这种现状,笔者试图根据自身的专业知识以及多年从事教育工作的经验,开发出一套针对性强、实用性高的学生信息成绩管理系统管理软件,以期能为高校的学生管理工作提供技术支持,优化他们的工作方式,为高校学生管理工作提供辅助力量。本系统的前台是采用C#进行页面制作,后台则实施SQL Server数据库管理,在系统的内容和数据上实行的是数据库“动态”管理,对数据库的操作是基于Web的数据库信息管理,这样,一套能达成使用者的使用目标的科学的学生信息成绩管理系统便建立起来了。第二章 系统开发的方法以及技术第二章 系统开发的方法以及技术2.1系统开发法简介 比较常见的系统开发法有下列几类: (1)自主开发 (2)委托开发 (3)合作开发 (4)咨询开发 (5)购买商品化的软件。2.1.1结构化系统的开发法结构化系统的开发法在目前看来所有方法当中最成熟的和使用最为普遍的方法。结构化的系统开发法基本精神为:以用户至上为原则,以系统工程的想法以及工程化方法,模块化地、结构化地、从上向下分析和设计。具体一点,即为先把信息系统的开发过程分为几个相对来说不相干的阶段,比如说规划、分析、设计和实施等阶段。前面三阶段持续由上往下结构化划分系统,在进行系统调查的过程中或者是理顺管理业务的时候,要从最上层入手,先要知道组织目标和现在组织系统存在的问题以及信息战略,接着再知道怎样靠信息技术处理问题,慢慢深入到最底层;做系统分析的时候,要从上到下、一层一层剖析,从抽象至具象,一步步了解问题;系统设计的时候,首先斟酌系统整体优化,接着是局部优化;实施过程则是要保持从下到上,从局部到整体,在标准化模块链接作用下,构成一个完备的系统。2.1.2快速原型法原型法基本思路为:软件生产的过程中,引入工业生产时设计及生产阶段,试做样品的办法。这种方法不强制要求一次性做完分析设计,可以准许不完善的初步分析及设计存在,并再做修正。不过这种方法要求开发环境能够进行快速的反映。原型法工作过程:由用户提出要求,开发的人员进行识别以及归纳用,据此结果,做出原型(也就是程序模块),再跟用户一起对此进行评价。假如完全不行,就重做一次构造;假如不是非常满意,就在原型上修改,直至满意为止。快速原型法为建立在4GL基础上的快速模拟法,要把该方法使用到大型的信息系统开发中的全部环节是不现实的,所以该方法多数是用在小型的局部系统或者是处理的过程并不复杂的系统中设计以及实现环节。原型法的特点是能够在初期阶段,了解人们想法,减小用户以及分析人员间的距离也就是结构化法最难的一环。2.1.3面向对象的开发法 面向对象开发的前身是80年代面向对象的各种程序设计法(比如说C+等方法)。面向对象法(可以简单称作00法)是一类认识方法论,该方法着重突出了理解以及模拟现实世界,在面向对象的角度,提供给我们全新的一种认识事物、开发系统的方法。根据以上思想,我们能够把面对对象的方法进行开发的工作分成四阶段: (1)调查及需求的分析;(2)面向对象的分析(缩写为OOA);(3)整理问题,然后归类,再整理,最后把他们用范式的形式将定下来。;(4)程序实现,就是把上面一步整理出来的范式,以面对对象的程序设计的语言,直接对应成应用程序的软件。 2.2 比较各类开发法 观察国外最新统计出来的数据,信息系统的开发过程当中,每一个环节的工作量占以下比重见表2.2。 阶段 调查 分析 设计 实现 工作量 30% 40% 20% 10% 图2.2 开发过程中各个环节所占的比重 其实可以很容易地发现,调查、需求分及管理功能的分析这2个环节在总开发工作量中的比重大于60%,但是系统设计以及实现这2个环节,却只占到40%以下,当中占开发工作量最高比重的编程以及调试现在仅仅占了小于10%的量。所有的进步都是由于4GL和 RDBS及各类开发工具产生而带来的。 一些常见方法支持开发过程的几大主要环节的状况如下: (1)原型法 该方法基于4GL,是一种迅速的模拟法,。要把该方法使用到大型的信息系统开发中的全部环节是不现实的,所以该方法多数是用在小型的局部系统或者是处理的过程并不复杂的系统中设计以及实现环节。 (2)面向对象的开发法 面向对象的开发法环绕对象作系统分析及设计,再利用工具建筑系统。此法能够在各信息系统的开发中普遍应用,处理涉及分析前的环节。 总而言之,结构化的系统开发法才能真的比较全面地支撑整个系统的开发过程。别的方法就算优点众多,也仅能当做在局部的开发环节当中的补充,特别是对于工作量最多的调查及分析而言。一般这些方法并不互相独立,他们可以相互混合并应用。 本软件系统在整体的开发中,使用结构化系统的开发法(即 SSA&D ),系统分析及设计时,混合使用原型法、SSA&D以及00方法。2. 3相关技术的简介2.3.1. Visual C#2010的相关介绍 C#为Visual Studio 2010核心开发语言中的一种,它是一种面向对象的编程语言,是一种运行在.NET Framework上的高级设计语言。在保留之前C和C+功能前提下,删除了某些复杂的特性(比如:没有宏和模版,不能几重继承等)。C#比C, C+或别的类似开发软件拥有更加广的数据类型,而且可以跟COM进行无缝的集成。Visual C# 2010较易操作、也拥有比以前更加突出的优势,而且是面向对象的。它靠着许多的特性以及创新,不仅保留了C样式语言的形式及其优美,还使得应用程序得到了迅速开发。它有以下一些特点: (1)可视化的编程环境 可视化的环境让开发员人机界面在开发上产生了很明显的变化,为用户提供了许多元素(也可称为控件对象),例如检查框、窗体、菜单、命令按钮和工具按钮等。开发员只要拿鼠标或者是其他的输入设备,做出相关的操作即能设计出想要的界面,而不用进行代码的编写然后又编译生成,给开发人员提供了很多方便和快捷。 (2)提升效率和安全性 高效性在这个网络快速发展的社会上具有很重大的作用,为了应对激烈竞争和市场威胁,程序开发者们不间断地缩短开发的周期,开发出合适的应有程序的新版。在设计时,C#充分地遵守了讲究效率的原则,它出现的其中一个目标就是可以使开发者以更少代码做更多事。C#设计人员能在Microsoft. NET的平台上构建程序扩展框架,起到事半功倍的效果,并且极大地降低出错率。 (3)消除众多程序错误 相比C+,程序员不记得初始化的变量比较常见,但此类错误却常常会造成很难估量的难题,严重时要用很长时间进行查询以及解决。但在C#当中,现代化设计可以解决以前经常发生的问题,与C+相比,变量从环境开始自动进行初始化,而且变量是安全类型的。 另外,大学生的综合测评系统设计,还要随时反映学生素质的信息,把一定数据从数据源进行动态取回,再通过统计图,例如曲线图、饼状图和柱状图等表示,方便测评学生,也方便做高校学生的管理工作的人员查看与分析。在Microsoft.NET Framework产生前,我们主要由编写组件达成这一目标。现在使用Microsoft开发的众多GD工+类及对象能轻易完成这一任务。2.3.2 SQL SERVER 2008与SQL语言的介绍与特点 数据库是存储数据的介质,可以对数据库作出以下理解:数据库是仓库,里面存储着数据。数据库是数据一定形式关联下的产物。要有效地管理数据库,必须依赖数据管理软件。结合紧密的数据库有SQL Server与.NET。SQL Server的功能有:数据查询(Data Query)、数据操纵(Data Manipulation)、数据定义(Data Definition)和数据控制(Data Control),其特点主要体现在以下方面:(1)显著提高了安全性 和过去的数据库相对比,SQL Server 2008的安全性能得以改进提升。这体现在系统加密了数据库、设置了安全默认值、增强了密码策略、严密了许可控制,以及增强了安全模式。 (2)改善管理员连接的专属性 SQL Server 2008中引进了管理员,它是专门的管理员。这个专门的管理员被用于连接操作。管理员可以无视被服务器锁住、数据路因其他形式而不能正常使用的情况的发生,它依然能够通过而且连接正在运行的服务器。另外,问题的有效解决可以依靠管理员通过操作诊断功能和Transact-SQL的指令。 (3)全新的SQL Server Mannagement Studio 引入了新的SQL Server Mannagement Studio到SQL Server 2008中。SQL Server Mannagement Studio的管理工具组是新型的、统一的。它能对出现的故障进行开发、配置数据库、发现并且修理。 (4)复制功能的增强 从分布式数据库上说,SQL Server 2008为用户提供的方案修改复制功能更加全面。它提高升级了下一代的监控性能。此外,我们还可以复制、合并多个文本传输协议,更好地改进数据向外扩展的支持。 SQL语言允许用户在高层数据结构上工作,属于高级的非过程化编程语言。用户可以不指定数据的存放方法,不了解数据存放的具体方式。因而数据系统有完全不同的底层结构。我们能够把SQL语言作为数据输入与管理的接口。SQL语言的主要特点有: (1)在操作时采用SQL语言,我们仅需提出“做什么(Do what),不必要指明“怎么做(How to do)。系统会自动完成选择存取路径和操作sQL语句过程的工作,因而,用户可以不了解存取路径。用户的负担得到实质性的减少,数据的独立性亦得以提高。 (2)操作对象和查询结果体现为元组的集合外当采用集合操作的方式时,元组的集合包括每一次删除、插入、更新操作的对象。 (3)SQL语言属于自含式语言,在此同时,也属于嵌入式语言。它是自含式语言因为能独立应用于联机交互的使用方式。要操作数据库,使用者只需在网络终端输入设备上直接键入SQL命令;它也是嵌入式语言,它能够嵌入到高级语言程序中。在设计程序时,程序员可以使用。由此可见,即使是两种不同的操作方式,SQL的语法结构从基本上看是一致的。一种语法结构提供了两种不同的操作方式,这种统一语法结构使用户在操作上更趋灵活和简便。第三章 学生信息成绩管理系统的系统分析系统项目的确立是建立在各种各样的需求上面的,这种需求往往来自于客户的实际需求或者是出于公司自身发展的需要,其中客户的实际需求也就是说这种交易性质的需求占了绝大部分。面对系统开发拥有不同知识层面的客户,项目的负责人对用户需求的理解程度,在很大程度上决定了此类系统开发项目的成败。因此如何更好地的了解、分析、明确用户需求,并且能够准确、清晰以文档的形式表达给参与项目开发的每个成员,保证开发过程按照满足用户需求为目的正确项目开发方向进行,是每个系统开发项目管理者需要面对的问题。需求分析活动其实本来就是一个和客户交流,正确引导客户能够将自己的实际需求用较为适当的技术语言进行表达,以明确项目目的的过程。这个过程中也同时包含了对要开发系统基本功能和模块的确立和策划活动。按照用户提出的具体要求来确定管理信息系统是系统分析工作的基本任务;系统分析包括清楚了解业务或数据流程和提出新系统采用的方案两步。3.1系统原则及目标 把用户需求转变成为软件系统也就是系统设计,它是系统开发的中心环节。组织设计和技术设计是系统设计的两个方面的内容。从技术层面上说,要设计系统,必须调查和分析客户需求,了解用户的需求和工作业务流程。我们根据需求及系统特点设计如下原则: (1)可靠性:使用者在使用这些设备时,更多是把眼光放在考量设备的可靠性上。系统越复杂也就意味着存储的数据量越大。软件系统故障率的越大、损失也就越大。如果在设计过程中,忽视了系统的可靠性,一旦发生错误,这带来的损失肯定是十分严重的,后果不堪设想。所以,系统中的硬、软件及信息数据存储满足可靠性设计的要求是系统长期安全运行的保证。 (2)安全性:基于B/S结构设计的系统会涉及到软件安全问题,而大学生信息成绩管理系统采用的正是B/S结构。B/S结构的工作模式是以浏览器/服务器为基础的,在使用时,若果使用者想访问服务器中的软件系统,仅仅需要打开计算机浏览器。 (3)容错性:大学生综合测评系统设计具有开放性,而且使用者具有广泛性。然而,使用者的计算机操作技术差距比较大,误操作经常发生在使用者访问系统并且向体统提交数据的过程中。例如:当使用者输入的数据格式不正确。倘若,发生数据输入错误的情况,但是系统缺少纠错能力。这将能让管理者完成对最终评测结果的信息处理。 (4)适应性:不断完善和发展设计研发系统,促使研发系统能够与统计核算方法、调查方法、指标体系相适应。 (5)可扩充性:学生综合评测指标十分多远、易变。因此,设计系统要留一定的空间为扩充升级系统硬软件做准备。研发系统务必要与今后高校教育的发展和学生素质发展需求相适应。不能只把眼光放在当前,而要长远考虑。 (6)实用性:运用本系统有利于协助高校做好学生管理工作,它使管理工作由传统向数字化转变,充分发挥了网络技术的优势。在进行系统设计时务必实现最高的系统建设投入产出比,获得良好的效益。因而,很有必要在设计前,对素质测评工作的实质和流程进行了解,在设计时采用成熟又实用的开发技术。运行本系统能够更加高效地管理大学生综合素质测评信息,这也是本系统设计的总体目标。采集、处理加工数据,在管理工作上获得准确地数据支持,确保准确的、及时地开展管理工作,减少资源浪费。在系统设计过程中尽力做到:(1)实用性与可靠性 本系统具有强悍的实用性和可靠性。它可以长时间持续、无故障地运行。另外,按照设计要求,服务器会在数据服务器的配备上进行备份。系统的操作灵活方便,在设计中结合高校学生综合素质测评的要求。这大大地增强了本系统的实用性,管理员在增删相关信息时相当方便。(2)维护与管理通过对系统的设计,在管理和维护系统上,显得更加简单有效。如果想要对系统进行监控和试调时,仅需按照学校测评要求与阶段性安排。管理不同用户群体的使用权限、系统运行的相关参数设定,显得尤为简单便捷。(3)使用的便捷性学生用户是使用本系统的主要群体。学生用户的计算机水平差别比较大,因而,这些情况在设计过程中被予以重视。在设计界面和功能方面,应当直观地呈现,使操作更加简便。(4)系统运行的开发性对系统进行设计时,充分考虑到系统不单只是面向计算机终端。学生使用的设备多种多样。硬件接入设备可以通过互联网访问系统并且可以执行相关的操作,比如:手机、具有网络连接功能的电子书等。3.2工作流程图3.2.1“选课管理”工作流程登录界面图3.1是学生信息成绩管理系统中的“选课管理”工作流程,学生登录进系统后对自己个人可自行选择课。登录选课管理个人学生选课选择课程名称选择学期名称确定图 3.1 “选课管理”工作流程图3.2.2“成绩管理”工作流程 图3.2是学生信息成绩管理系统中的“成绩管理”工作流程。教师登录系统后,在进行授课时,教师必须按照授课计划,对每个学期学生的课程给出成绩。登录界面登录成绩管理成绩登记编辑输入分数 修改图 3.2 “成绩管理”工作流程图3.3业务流程分析 本系统分别对三种角色权限流程进行设计,分别为“学生”、“教师”、“管理员”,学生可对自己个人信息查看、修改。对自己的学期成绩查看,还可对喜欢的课程进行选课;教师可查看、修改自己个人信息,对学生信息进行管理,同时对学生每个学期各门课程的成绩进行登记;管理是最高的权限,可对系统任何模块进行操作。进一步细化业务功能也就是业务流程,目的是给出业务流程图(Transaction Flow Diagram,简称TFD )。在该业务流程图中,我们可以清楚地了解到业务处理全过程的细节和步骤,这些细节和步骤有一些特定的线条和图形符号连接起来组成。从中,我们还可以看出现行系统各机构的业务处理过程和它们之间的业务分工与联系。另外,业务流程图还包括了现行系统的界限、环境、输入、输出、处理和数据存储等内容。各机构的物流、信息流的传递和流通关系也清晰可见。3.3.1业务流程图图例 业务流程图所用符号参见国家标准GB1526-890,其中常用的符号及含义有: 系统内部结构 报表和单据 (人员及组织)系统外部环境 (人员及组织) 数据存储 信息流向 处理 3.3.2主要业务流程图1.学生业务流程图如图3.6登录界面登录主界面系统管理选课管理成绩管理学生管理个人学生信息个人成绩查询个人学生选课退出系统修改密码图 3.6学生业务流程图2.教师业务流程图如图3.7登录界面登录主界面学生管理成绩管理系统管理教师管理学生信息管理成绩登记个人教师信息个人教师信息退出系统修改密码图 3.7教师务流程图3.管理员业务流程图如图3.8登录界面登录登录界面成绩管理系统管理课程管理学生管理基础信息管理教师管理成绩登记学生信息管理退出系统修改密码课程信息管理教师信息管理学期设置班级管理专业管理院系管理图 3.8管理员业务流程图65 第四章 学生信息成绩管理系统的系统设计系统设计是新系统的物理设计阶段,主要针对系统所设计出来的模型,根据这个模型可以解决系统应该做什么的问题。在系统设计中,用户要想得到一个具体而又详细,符合实际需要的解决方案,首先就要进行系统分析,再得出具体的数据结果的情况下,再实事求是进行分析,最终在计算机上设计出一个模型,根据这个模型解决所面临的问题。4. 1学生信息成绩管理系统的模块设计4.1.1结构化设计方法系统设计有许多中方法,目前在系统设计中最常用也是最实用的一种方法是结构化设计方法。结构化设计方法主要是针对系统设计进行模块化的管理设计。由于结构化设计方法相对于其他的设计方法而言,具有成熟、完整、方便的特点,因此广为使用。在系统设计的不同阶段,它可以去其他的设计方法想链接。通过链接的方式,形成结构化设计方法的主线,由此展开系统设计。结构化设计方法中枢是模块化,意思是对复杂的系统结构进行分解,最后得到许多个相互独立但又相互联系的模块,这些模块与系统设计之间存在着一种层次关系。但模块之间的联系却并不紧密,只是与系统的关系紧密。在模块的内部结构中,产生强烈的凝聚力,共同指向整个系统,因此可以说结构化设计方法在今后具有非常远大的发展前景,最主要的表现是能把复杂的系统简单分解成为简单的模块,使整个系统具体良好的可读性,也加强对系统的维护。在使用结构化设计方法时候,首先要对整个系统进行具体的数据分析和研究,根据的触动的结果形成一个模块结构图。结构化设计主要是利用模块结构图成为一种分解工具,形成模块结构图的目的是方便对系统进行分解之外,也能使整个系统更加层次分明,结构更加清晰。此外,形成模块结构图还有一个好处是能够直观反应模块之间的调用和传递关系。 模块的规模并没有具体的限定,根据系统功能的不同可进行调节,可大可小。当一个系统被分解成许多个相对独立又相互联系的模块时,这些模块就是这个系统的基础组成部分也是重要的部分。4.1.2 系统的构成 在整个系统中,是由许多个子系统组成,子系统是对整个系统的补充和说明,有利于整个系统的优化和层次管理。在整个系统中,常采用树形的分支结构进行补充和说明,采用树形结构的好处是能够对整个系统一目了然,加快对系统的分层。系统层次较为简单,一般可分为母系统、子系统、功能、子功能等层次。以下是对上述学生综合素质评测的内容进行分析之后设计出来的系统结构:学生信息成绩管理系统作为一个母系统,下设六大模块进行说明,其中包括系统管理、基础信息管理等,六大模块的内容主要是根据学生信息成绩管理的研究而得出的结果进行模拟和分析,如图4. 1所示。学生信息成绩管理系统成绩管理系统管理课程管理学生管理基础信息管理教师管理 (1) 基础信息管理模块基础信息管理主要包括院系管理,专业管理,班级管理以及学期设置。 (2) 教师管理模块 教师管理主要为教师的信息进行添加、修改、删除及查看,记录教工号、教师名称等一些相关信息 (3)学生管理模块学生个人管理子系统主要针对的对象是学生个人,包括对学生个人的信息,对所掌握的信息要进行录入,以便日后进行对学生进行管理查询 (4)课程管理模块课程管理主要针对学校所有的课程信息进行管理。(5)成绩管理模块成绩管理主要针对学生的成绩进行登记,教师可记录每个学期学生课程考试的成绩。(6)系统管理模块系统管理模块主要包括对自己个人密码修改,及系统的退出。4. 2学生信息成绩管理系统的数据库设计 关于系统中的数据库,实际上是系统内的一个数据集合,因此数据库的主要功能是储存系统的数据。由于数据库中形成了相对于的数据访问机制,因此能够对数据进行有组织的储存,方便查询和管理。4.2.1数据库概念结构设计 数据库逻辑模型主要的是在数据库的概念模型上建立起来的。概念模型是一个抽象的存在,是现实世界所产生和储存的信息的反应,进行相对应的分析、选择等操作。数据库概念模型实际上是用户看到的数据信息。 目前对数据概念模型进行描述的方法很多,常用的方法主要是由实体、属性和联系组成实体联系图(E-R图),以下是对E-R图的介绍:1.E-R图的主要组成: E-R图主要构件包括了七种不同的构件,这七种构件分别是椭圆、菱形、矩形等。每一个构件代表的意义都不相同。 椭圆:代表数据概念模型中的属性 菱形:代表数据概念模型中的联系集 矩形:代表数据概念模型中的实体集2. 系统E-R如图4.2所示专业简介政治面貌学期名称教师ID教师名称管理员管理员ID密码账号院系院系ID院系名称联系方式专业院系ID专业名称班级班级名称专业ID班级ID专业ID学生学生ID学号姓名性别民族籍贯入学年份密码联系电话备注出生日期班级IDn:11:nn:1成绩学生ID学期ID课程ID成绩ID1:n课程课程ID课程简介课程名称教师ID课程学分n:1学期n:1教师分数密码教工号1:n学期ID图4.2 系统E-R图3.主要实体集及属性(带下划线为主键)管理员:管理员ID、账号、密码 教师:教师ID、教工号、教师名称、密码学生:学生ID、学号、姓名、性别、民族、班级ID、政治面貌、联系电话、出生日期、籍贯、入学年份、密码、备注学期:学期ID、学期名称院系:院系ID、 院系名称、联式方式专业:专业ID、专业名称、专业简介、院系ID 班级:班级ID、班级名称、专业ID 成绩:成绩ID、学生ID、课程ID、分数、学期ID课程:课程ID、课程名称、教师ID、课程学分、课程简介4.2.2数据库逻辑结构设计在进行数据库逻辑设计的时候要着重对数据库逻辑结构进行优化,最简单的一种方法是进行关系转换。由于数据库逻辑结构主要的目的是为了把概念结构转换成数据模型,而且这个数据模型是DBMS所支持的。因此,要把E-R图转换成一种DBMS所支持的关系模型,也就是要把E-R图中的具体构件内容转变为关系模式,需要遵守转换的原则:1.E-R图中一个实体型变成一个关系模式。2.E-R图中一个m:n联系变成为一个关系模式。3.E-R图中一个1:n联系变成为一个独立的关系模式。4.E-R图中一个1:l联系变成为一个独立的关系模式。5.E-R图中一个实体间的多元联系变成为一个关系模式。 4.2.3系统主要数据信息表 下图4.3是系统主要数据信息表:序号数据表名称对照物理表名1管理员Admin2教师Teacher3学生Sudents4学期Semester5院系Department6专业Major7班级Class8成绩Results9课程Course图4.3 系统主要数据信息表 (1) 管理员表 下图4.4是管理员表结构详细信息:字段字段类型是否非空字段名称AdminIdintNot Null管理员IDAdminNameNvarchar(50)Null账号PwdNvarchar(50)Null密码 (2) 教师表下图4.5是教师表结构详细信息:字段字段类型是否非空字段名称TeacherIdintNot Null教师IDTeacherCodeNvarchar(50)Null教工号TeacherNameNvarchar(50)Null教师名称PwdNvarchar(50)Null密码 (3) 学生表下图4.6是学生表结构详细信息:字段字段类型是否非空字段名称SutIdintNot Null学生IDSutCodeNvarchar(50)Null学生SutNameNvarchar(50)Null姓名ClassIdintNot Null班级IDNativeNvarchar(200)Null籍贯BorndatetimeNull出生日期NationalNvarchar(50)Null民族PoliticalNvarchar(50)Null政治面貌SexNvarchar(50)Null性别GradeintNull入学年份ContactNvarchar(50)Null联系电话NotentextNull备注PwdNvarchar(50)Null密码(4) 学期表表4.7是学期表结构详细信息:字段字段类型是否非空字段名称SemesterIdintNot Null学期IDSemesterNameNvarchar(50)Null学期名称 (5) 院系表表4.8是院系表结构详细信息:字段字段类型是否非空字段名称DeptIdintNot Null院系IDDeptNameNvarchar(50)Null院系名称ContactNvarchar(50)Null联系方式 (6) 专业表表4.9是专业表结构详细信息:字段字段类型是否非空字段名称MajorIdintNot Null专业IDMajorNameNvarchar(50)Null专业名称DeptIdintNot Null院系IDNotentextNull专业简介(7) 班级表 表4.10是班级表结构详细信息:字段字段类型是否非空字段名称ClassIdintNot Null班级IDClassNameNvarchar(50)Null班级名称MajorIdintNot Null专业ID(8) 成绩表 表4.13是成绩表结构详细信息:字段字段类型是否非空字段名称ResultsIdintNot Null成绩IDSutIdintNot Null学生IDCourseIdintNot Null课程IDScoreintNull分数SemesterIdintNot Null学期ID(9) 课程表 表4.16是课程表结构详细信息:字段字段类型是否非空字段名称CourseIdintNot Null课程IDCourseNameNvarchar(50)Null课程名称NotentextNull课程简介TeacherIdintNot Null教师IDCreditsintNull课程学分4.2.4数据库物理设计 数据库物理设计是后半段。将一个给定逻辑结构实施到具体的环境中时,逻辑数据模型要选取一个具体的工作环境,这个工作环境提供了数据存储结构与存取方法,这个过程就是数据库的物理设计。物理结构依赖于给定的DBMS和和硬件系统,因此设计人员必须充分了解所用RDBMS的内部特征、存储结构、存取方法。数据库的物理设计通常分为两步,第一,确定数据库的物理结构,第二,评价实施空间效率和时间效率确定数据库的物理结构包含下面四方面的内容:1、确定数据的存储结构2、设计数据的存取路径3、确定数据的存放位置4、确定系统配置数据库物理设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,选择一个优化方案作为数据库物理结构。在数据库物理设计中,最有效的方式是集中地存储和检索对象。第五章 系统主要模块的设计与实现第五章 系统主要模块的设计与实现5.1用户登录学生基本信息管理模块的设计具有明显的实用性,可以对对学生基本信息进行系统的管理,包括内容也十分丰富,有信息录入、查询信息等。此模块对整个系统的组建来说是比较重要的,有许多优点,包括制作上虽然复杂但功能上强大,其技术也相当先进,使用很多非传统的技术,包括图像处理技术、键盘操作控制技术这些比较先进的技术,由它录入的相关数据对于系统是有较重要影响的,特别要注意的是学号的重要性。学生信息成绩管理所设计的内容越来越多样化,包括基础信息管理、教师管理、学生管理、课程管理、成绩管理、系统管理等六大模块,由此来对学生进行更全面有效的管理。下面就举例来对部分模块的功能进行分析介绍。登录,是使用该系统的第一个步骤,系统共分三种角色,分别为管理员、教师、学生,每种身份由不同的权限,系统验证登录者身份后,筛选合法身份,允许其进入本系统。用户选择自己的角色后方可进行相应身份的操作,系统登录界面如图5.1所示。图5.1 系统登陆界面登陆界面的关键代码如下 :protected void imgbLogin_Click(object sender, ImageClickEventArgs e) if (ddlType.SelectedValue = 学生) Sudents sudents = new Sudents(); if (SudentsBLL.GetUsersLogin(txtUserName.Value.Trim(), txtPwd.Value.Trim(), out sudents) SessionSudents = sudents; Response.Redirect(SudentsMain.aspx, false); else this.Page.ClientScript.RegisterStartupScript(this.GetType(), myalert, alert(用户名或者密码错误!);); return; else if (ddlType.SelectedValue = 教师) Teacher teacher = new Teacher(); if (TeacherBLL.GetUsersLogin(txtUserName.Value.Trim(), txtPwd.Value.Trim(), out teacher) SessionTeacher = teacher; Response.Redirect(TeacherMain.aspx, false); else this.Page.ClientScript.RegisterStartupScript(this.GetType(), myalert, alert(用户名或者密码错误!);); return; else if (ddlType.SelectedValue = 管理员) Admin admin = new Admin(); if (AdminBLL.GetUsersLogin(txtUserName.Value.Trim(), txtPwd.Value.Trim(), out admin) SessionAdmin = admin; Response.Redirect(AdminMain.aspx, false); else this.Page.ClientScript.RegisterStartupScript(this.GetType(), myalert, alert(用户名或者密码错误!);); return; 如果用户名和密码输入有误则提示“用户名或者密码错误”,可选择重置。管理员登陆后,便会看见此界面(如图5. 2)。然后对用户进行管理,其操作多样,范围广而且方便,可以添加用户删除用户和设置用户权限等。5.2管理员使用界面及操作在本系统中管理员的权限级别最高,管理的内容最多,管理员登录后,界面如5.2所示,可以看到管理员有六大权限,管理员登录后,界面如5.2所示。图5.2 管理员登录后界面5.2.1 基础信息管理在基础信息管理中包含了院系管理、专业管理、班级管理、学期设置其中以专业管理为例,里面涉及编辑、添加和修改等功能,如图5.3所示图5.3 专业管理界面图中所涉及按钮的关键代码:/添加、修改 protected void btnAdd_Click(object sender, EventArgs e) if (btnAdd.Text = 添加) Major model = new Major(); model.DeptId = Convert.ToInt32(ddlDeptId.SelectedValue); model.MajorName = txtMajorName.Value.Trim(); model.Note = txtNote.Value.Trim(); if (MajorBLL.AddMajor(model) 0) this.Page.ClientScript.RegisterStartupScript(this.GetType(), , alert(添加成功!);window.location.replace(MajorManage.aspx);); return; else
展开阅读全文