学生课程管理系统-论文(毕业论文)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生课程管理系统-论文(毕业论文)
毕业设计 [论文]
题目:学生课程管理系统设计与实现学院:计算机科学与技术学院
专业:信息管理与信息系统
姓名:尹志恒
学号:083211244
指导老师:王春丽
完成时间:2013-5-20
摘要
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
课程管理系统是一个不断发展的新型学科,任何一个学校要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的学生课程管理信息系统。
作为计算机应用的一部分,使用计算机对学生课程进行管理,.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生课程管理的效率,也是学校的科学化、正规化管理,与世界接轨的重要条件。
本文介绍了在Visual Studio 2005 +SQL Server2005环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个学生课程信息管理系统的过程。
通过分析一个学校学生课程管理的需要,创建了一个行之有效的计算机管理学生课程的方案。
文章介绍了学生课程信息管理系统的系统分析部分,包括可行性分析、数据流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,本系统界面友好,操作简单,比较实用。
关键词:学生课程管理系统,Visual Studio 2005 ,SQL Server2005
Abstract
With more and more widespread and profound application of student information technology in management, the implement of management course information system has become mature in technology step by step. Student managing course information system is a new subject. Enterprise needs existence and development, so enterprise activities should be organized efficiently and organically, which means tightening up the enterprise management
design. And the system realization section has provided several major function , together with the main windows and programs. This system friendly interface, simple operation, more practical.
KEY WORDS:Student course management system,Visual Studio 2005 ,SQL Server2005
目录
第一章绪论 (1)
1.1问题的提出 (1)
1.2现有系统存在问题的分析 (2)
1.3系统开发目标与意义 (2)
1.3.1系统开发目标: (2)
1.4可行性分析 (3)
1.4.1 经济上可行性: (3)
1.4.3运行上可行性: (3)
第二章需求分析 (4)
2.1 教育系统学生管理现状分析 (4)
2.1.1 学校工作流程分析 (4)
2.1.2 学校具体需求分析 (4)
2.1.3 系统设计思想 (4)
2.1.4 系统设计分析 (5)
2.1.5学生课程管理系统的目标 (5)
2.2 基于B/S结构技术的应用 (5)
2.2.1 B/S结构技术发展简述 (5)
2.2.2 动态网站开发技术比较 (6)
2.2.3 面向对象的开发过程 (6)
2.2.4 开发工具的选择及优点 (7)
2.2.5数据库系统选择及其特点 (9)
2.2.6开发本系统的意义 (9)
第三章学生课程管理系统概要设计 (10)
3.1系统设计图例说明 (10)
3.2 系统设计业务目标(业务逻辑层) (12)
3.2.1系统设计目标概述 (12)
3.2.2 身份(角色) (12)
3.3 技术总体目标 (13)
3.3.1系统技术性能要求 (13)
3.3.2 精度 (13)
3.3.3 数据管理能力要求 (13)
3.3.4 时间特性要求 (13)
3.3.5 故障处理要求 (14)
第四章学生课程管理系统详细 (14)
4.1 系统结构 (14)
4.2 程序逻辑 (14)
4.2.1系统E-R图: (14)
4.2.2查询模块流程图 (15)
4.2.3 维护模块流程图 (17)
4.3 用户/管理员登入系统设计 (18)
4.4 创建数据库 (20)
4.5 数据库表逻辑结构设计 (23)
4.5.1 数据库表介绍 (23)
4.6主要求程序设计说明 (26)
4.6.1 管理用户登录模块 (26)
4.6.2 类设计说明 (28)
类设计是基于OO的设计方法,采用三层体
系结构方式,如下图所示: (28)
4.6.3 管理功能模块设计 (28)
第五章学生课程管理系统测试 (30)
5.1. 概述 (30)
5.2 测试方法 (30)
5.2.1 界面测试 (30)
5.2.2 功能测试 (31)
5.3 不同的测试技术区分 (32)
5.3.1 白盒测试和黑盒测试技术 (32)
5.3.2 手工测试和自动化测试 (32)
第六章开发技巧和难点 (33)
第七章结束语 (33)
致谢 (34)
参考文献 (35)
1 绪论
本毕业论文是以学生课程管理系统开发为背景,论述了课程管理系统的概念、结构及系统开发的基本原理和方法,全文共分为绪论、系统分析、概要设计、详细设计、开发总结、致谢、参考文献、附录等。
1.1问题的提出
随着计算机技术的发展,特别是计算机网络技术与数据库技术的发展,使用人们的生活与工作方式发生了很大的改观。
网络技术的应用使得计算机之间通信、课程共享成为可能,而数据库技术的应用则为人们提供了数据存储、课程检索、课程分析等功能,从而使得工作更高效地进行。
数据库始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。
数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。
而互联网技术的出现,更是进一步丰富的人类生活,数字化生存已经一步步走进我们的生活与工作。
互联网技术与数据库技术的结合为计算的在人类生活中的应用带来了巨大的影响。
产业课程化,管理现代化,科学化已经成为行业发展的重要课题,这不仅是企业提高自身竞争力,甚至是国家提高综合国力,走向国民富强的重要手段。
在我国,教育是一个影响着国富民强的重要行业,随着改革开放和市场经济的发展根据中国特有的国情发展,教育得到了国家的大力扶持与社会各界的高度重视,从而使教育业向规范性与现代化的方向高速发展,但是同发达国家相比,我国的教育行业的课程技术的应用程度还很低,只有在大城市中发展较早、规模较大的院校中才使用计算机进行大规模操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些新兴的、规模较小的教育机构还没有全部具备这种功能。
因此可见,随着我国教育的迅速发展,课程技术在其上的应用会更加地广泛和深入。
1.2现有系统存在问题的分析
在我国,各大高校的各类课程管理系统并非是一个新的课题,但也有的学校根本就没有课程管理系统,所有的工作几乎还是手工操作来完成。
计算机技术在日新月异的发展,但是有的很多学校,特别是在西部贫困地区,学校的种类管理都依然由手工操作来完成,这十分落后,效率极低,成本很大,而且极异出错。
随着社会的发展,课程化是社会进程的必然趋势,学校管理只有快、准、精才能发挥其价值。
所以机器代替人力是必然的历史发展趋势,只有领导的重视和支持才能从人工操作改为计算机的自动化系统。
人工操作必将被计算机代替。
有些学校虽使用了计算机,甚至管理系统,但是仍然存在很多问题,问题一日不解决,效率就一日提不上去。
还有,有的系统很不完善到处是漏洞,可以说是千疮百孔,这样极不完善的系统对管理来说是没有任何保障的。
1.3系统开发目标与意义
1.3.1系统开发目标:
本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学校的工作流程设计完成的。
为了使系统在学校的管理中发挥更大的作用,实现工作过程的信息化,提高工作效率和工作质量,现提出如下的系统开发目标:
1.系统应具有实用性、可靠性和适用性,同时注意到先进性。
2.对各个数据库进行动态管理,防止混乱。
3.能够按照用户选择的不同的条件进行简单查询和复合查询。
4.方便用户的操作,尽量减少用户的操作
5.注意数据的安全性,具有数据备份和恢复的功能。
1.3.2意义:
在各大高校,用计算机管理学校的课程已经越来越普遍了。
用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。
提高了学校的管理能力,为此,用计算机来管理学校的课程,是非常必要的。
2可行性研究
可行性研究的目的是用最小的代价在尽可能的时间内确定问题是否能够解决。
1.4.1 经济上可行性:
现在,计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,
为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高学校的工作效率;
第四,本系统可以使敏感文档更加安全,等等。
所以,本系统在经济上是可行的。
1.4.2技术上可行性:
本系统的开发利用Microsoft SQL Server2005作为本系统的数据库,它是一个支持多用户的新型数据库,适用于大中规模的数据量需求。
学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。
使用Visual Studio 2005作为系统开发的开发环境,它提供了完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
1.4.3运行上可行性:
本系统为一个小型的学生课程管理系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
3 需求分析
21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。
使原本的旧的管理方法越来越不适应现在社会的发展。
许多人还停留在以前的手工操作。
这大大地阻碍了人类经济的发展。
为了适应现代社会人们高度强烈的时间观念,学校课程管理系统软件为学校办公室带来了极大的方便。
3.1 教育系统学生管理现状分析
3.1.1 学校工作流程分析
学校工作总体规划由教务人员在学生课程管理系统中完成对运行教务处所需的基本数据的维护,包括这些课程的增加、修改及对各项课程的变动都将在这进行操作。
新的学年,教务管理员要进行年级课程,班级课程分配等工作,新生入学后由教务管理员在学籍系统中完成新学生课程的维护。
每举行一次考试后由任课老师对课程进行录入。
班主任对本班的课程汇总。
并进行排名,然后年级组长再进行汇总,并对本年级各科课程及总课程进行排名。
各位同学对以上录入的课程可以根据自己的需要进行适当的查询。
3.1.2 学校具体需求分析
学生:对各科课程的查询及查看本班课程排名等情况。
任课老师:输入并维护所教科目的学生课程,计算本科的课程排名、本科课程在班上的排名。
输出学生的基本课程,各科的课程及各科课程的部分,各科课程的排名,总分的排名情况。
管理员:学校全体成员的课程管理,对考试科目,时间及对所考科目的编号等进行具体的管理,并对任课老师,班主任等输入的课程进行存库,对学生的课程进行必要的维护,可打印学生的所有课程。
3.1.3 系统设计思想
采用现有的资源,先进的管理系统开发方案,充分利用学校现有的资源,减少开发中的时间和财力、物力、提高系统开发的水平和应用效果。
系统就满足学校的需求,例如学生课程的录入、查询、更新等。
学生录入与排名。
系统就具备数据库维护功能,及时根据用户需求进行数据添加、删除、修改等操作。
3.1.4 系统设计分析
本系统的功能分为以下几个模块:
课程管理子模块:主要功能包括添加、删除、修改、查找课程信息等。
班级管理子模块:主要功能包括添加、删除、修改、查询班级信息等。
教师管理子模块:主要功能包括教师信息的浏览、查询、修改、删除等。
成绩管理子模块:主要功能包括查询课程名称、学分、成绩等。
本系统性能力求易于使用,具体有较高的扩展性和可维护性。
3.1.5学生课程管理系统的目标
(1)节约资源,提高课程管理的精确度
(2)方便快速操作,精减人员,节约开支
(3)实现课程管理的系统化及规范化
3.2 基于B/S结构技术的应用
3.2.1 B/S结构技术发展简述
随着IT技术的高速发展, 互联网几乎已经渗透到人们生活的每一个角落。
而网络技术与数据库技术的应用,则大大改变的人们的学习、生活与工作的方式,提高并丰富了人类生活。
互联网的发展应用促使网页技术的产生。
但在不久后,人们对静态页面并不满足,随后出现了采用CGI(Common Gateway Interface 通用网关接口)和ISAPI(Internet Server Application Program Interface互联网服务器应用程序接口)来编写网页,但它们的编程比较复杂,用Perl或者是VC进行编写,将HTML标识嵌入代码中,维护相当困难。
此后,随着技术日新月异的发展,相断出现了ASP,PHP,JSP等网站开发技术,它们给网站开发带来了一阵狂潮。
ASP是一个Web服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的Web服务应用程序,ASP支持VBScript,JavaScript等多种脚本语言。
ASP是微软发展的新的体系结构.NET的一部分,其策略是将互联网本身作为构建新一代操作系统的基础,对互联网和操作系统的设计思想进行合理延伸,这样开发将可创建出摆脱设备硬件束缚的应用程序,轻松实现互联网连接。
3.2.2 动态网站开发技术比较
现在,在互联网中流行着多种动态网页实现技术,例如ASP、JSP、CGI、PHP 等。
对应于这些动态网页技术,也存在有多种多样的Web服务器系统,例如Microsoft IIS、Apache、Cold Fusion等。
而对于这些实现动态网页的技术,技术可以说是现在最为流行和应用最为广泛的一种。
向世界展现了一种更为领先的技术,这正是它推出不久就深受开发人员青睐的原因。
在 Web开发最受青睐的是Microsoft公司的SQL Server 2005。
有以下几个重要的优点:
强大的动态Web支持:
高效的数据访问技术:
代码共享:
面向对象的编程:
语言的无关性:
增强的安全性:
可运用C#:
2.2.3 面向对象的开发过程
面向对象的软件开发和相应的面向对象的问题求解是当今计算机技术发展的重要成果和趋势之一,C#是一种面向对象的语言。
面向对象编程具备了几个优点,比如:代码维护方便、可扩展性好、支持代码重用技术等等。
这些优点是过程编程语言所不具备的。
下面我们就来谈谈面向对象技术的这些优点:(1) 可管理性维护简单
对于面向过程的开发来说,版本管理主要是管理函数以及全程变量,而函数可以有很大的变动,同样,全程变量也可以有较大的变动,但是,对于面向对象程序设计来讲,一个系统是有对象来组成的,而对象是由类生成的,因此只需管理类就行,一个系统中,类是相对稳定的,因此便于管理.
(2) 模块化
是面向对象编程中的一个特征。
实体被表示为类和同一名字空间中具有相同功能的类,我们可以在名字空间中添加一个类而不会影响该名字空间的其他成员。
(3) 可扩充性
是对现代应用软件提出的又一个重要要求,即要求应用软件能够很方便,容易的进行扩充和修改,这种扩充和修改的范围不但涉及到软件的内容,也涉及到软件的形式和工作机制.
面向对象编程从本质上支持扩充性。
如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。
面向对象的程序设计可以用很好的可扩充性.这是由于类可以根据人对事物的理解而进行丰富,没有必要进行作大的改动,可以利用继承,对新的类添加属性和方法.用它可以生成系统的简单雏形,在征求用户的意见,在加入新的类,以及类的方法与属性等.
(4) 代码重用
可重用性是面向对象软件开发的一个核心思路.面向对象程序设计的抽象,封装,继承,多态的四大特点都无一例外,或多或少的围绕着可重用性这个核心并为之服务.
可重用性体现在两个方面:
(1) 开发的类可以被别人以及别的项目使用
(2) 由于可以继承,因此可以实现代码级的重用.
2.2.4 开发工具的选择及优点
在开发工具上,我选择Visual Studio .NET。
它是一套完整的开发工具,用于生成 ASP Web 应用程序、XML Web services、桌面应用程序和移动应用程序。
另外,它包含基于组件的开发工具(如 Visual C#、Visual J#、Visual Basic 和 Visual C++),以及许多用于简化基于小组的解决方案的设计、开发和部署的其他技术。
Visual Studio 支持 Microsoft .NET Framework,该框架提供公共语言运行库和统一编程类; 使用这些组件来创建 Web 应用程序和XML Web services。
提供许多比现在的Web开发模式强大的的优势:执行效率的大幅提高
是把基于通用语言的程序在服务器上运行。
不像以前的ASP即时解
释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。
世界级的工具支持
构架是可以用Microsoft(R)公司最新的产品 Visual 开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。
这些仅是强大化软件支持的一小部分。
强大性和适应性
因为是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到的Web应用中。
同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。
将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向。
简单性和易学性
是运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。
例如页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。
另外,通用语言简化开发使把代码结合成软件简单的就像装配电脑。
高效可管理性
使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。
因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。
一个的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。
多处理器环境的可靠性
已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。
即使你现在的应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。
自定义性,和可扩展性
设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。
这与原来的包含关系不同,可以加入自己定义的如何组件。
网站程序的开发从来没有这么简单过。
安全性
基于Windows认证技术和每应用程序配置,你可以确性你的原程序时绝对安全的。
的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编
程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有 ASP 应用程序中逐渐添加 功能,随时增强 ASP 应用程序的功能。
当创建 应用程序时,开发人员可以使用 Web 窗体或 XML Web services,或以他们认为合适的任何方式进行组合。
每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义.
2.2.5数据库系统选择及其特点
本系统将采用Microsoft SQL Server2005作为系统的DBMS支撑,SQL Server2005是能够支持企业级关系型数据库的管理系统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用户界面风格与Windows一样非常友好。
SQL Server2005在存储大容量数据方面,在数据的安全性和完整性方面,在分布式处理等都是适合于企业级应用的。
而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较低。
采用SQL Server2000 + 开发本系统是一个较为理想的组合。
SQL Server2005的新特点:
动态的自我管理、丰富的管理工具、可编程的管理、可能收缩性和高可能性、支持数据仓库、系统访问Internet集成等。
综上所述,在开发空警管理课程系统时,采用SQL Server 2005作为数据库管理系统。
2.2.6开发本系统的意义
运用学生课程管理系统可以减轻学校教学人员的工作量,缩小开支,提高工作效率与准确率,使学生能够合理安排时间,清楚知道自己的学习课程或复习没有考过的课程。
而学生课程管理系统的应用也为今天的民办教育在未来市场的竞争力有所提高。
从大的方向说,就是为了加速我国四化建设的发展,实现全部的自动化,使我国发展成为通讯网络化,决策科学化,办公自动化的国家。
4 学生课程管理系统概要设计3.1系统设计说明
学生课程管理系统功能包括以下几个模块:
1.管理员模块。
图4.1 系统功能图
程序逻辑结构有以下几个:
图4.2 逻辑结构图例
(1)顺序结构:一个命令接一个地执行;
(2)选择结构:(或IF-THEN-ELSE)当一个决定有多种不同执行结果
时;
(3)循环结构:只要条件成立就一直执行.
3.2 系统设计业务目标(业务逻辑层)
3.2.1系统设计目标概述
课程管理系统的业务总体目标是建立一个先进、高效、安全、可靠的能被有效和应用于学生课程管理的课程化数据库管理系统。
该系统基于B/S结构,即采用浏览器/服务器模式,服务器端由运行的Web应用程序及运行Microsoft SQL Server2005的数据库服务器组成,客户端可以用Internet Explorer访问该系统。
本课程系统体现了学生课程管理的业务逻辑行为、大大简化了相关工作的烦琐流程,同时为管理层提供有力的决策支持。
3.2.2 身份(角色)
本系统用户角色主要有:系统管理员、教师、学生。
其中系统管理员:可进行学生课程管理,课程课程管理,课程管理,课程查询,课程统计等工作。
教师:可进行有关教师一些信息的查询及管理。
学生:可进行个人相关信息查
询等操作。
3.3 技术总体目标
3.3.1系统技术性能要求
学生课程管理系统的技术总体目标是应用先进的计算机网络与数据技术为教学工作中的课程管理提供稳定、安全、可靠课程化服务,具体技术上的要求为:先进性、开放性、可靠性、高效性、可用性、可扩展性、可管理性、安全性。
3.3.2 精度
系统精度主要包括两个方面:系统课程流转的正确性、系统课程流转的完整性
3.3.3 数据管理能力要求
系统内数据保存具有持久不丢失性,数据的安全保证要能防止病毒和网络上非法用户如黑客的获取。
这些可以通过对Web服务器的维护管理和各种杀毒与网络安全系统来提供保证,不属于本系统数据安全性要求范围内。
3.3.4 时间特性要求
系统的时间性能规定要求系统的大部分操作在用户视觉延迟时间范围之内。
对某些检索和其它涉及复杂计算的操作系统响应也应保持在3-5倍用户视觉延迟时间范围内。
连接性能:为保证系统可能存在的大量的并发连接数,因此需要保证用户在其网络正常情况下可访问站点数据。
数据库检索性能:由于系统需要检索大量用户数据,因此在数据库检索性。