班级信息管理系统设计毕业论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

班级信息管理系统设计毕业论文
引言
随着计算机技术的发展,特别是计算机网络技术与数据库技术的发展,使用人们的生活与工作方式发生了很大的改观。

网络技术的应用使得计算机之间通信、信息共享成为可能,而数据库技术的应用则为人们提供了数据存储、信息检索、信息分析等功能,从而使得工作更高效地进行。

数据库始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。

数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。

而互联网技术的出现,更是进一步丰富的人类生活,数字化生存已经一步步走进我们的生活与工作。

互联网技术与数据库技术的结合为计算的在人类生活中的应用带来了巨大的影响。

产业信息化,管理现代化,科学化已经成为行业发展的重要课题,这不仅是企业提高自身竞争力,甚至是国家提高综合国力,走向国民富强的重要手段。

在我国,教育是一个影响着国富民强的重要行业,随着改革开放和市场经济的发展根据中国特有的国情发展,教育得到了国家的大力扶持与社会各界的高度重视,从而使教育业向规性与现代化的方向高速发展,但是同发达国家相比,我国的教育行业的信息技术的应用程度还很低,只有在大城市中发展较早、规模较大的院校中才使用计算机进行大规模操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些新兴的、规模较小的教育机构还没有全部具备这种功能。

因此可见,随着我国教育的迅速发展,信息技术在其上的应用会更加地广泛和深入。

1可行性分析
1.1现有系统存在问题的分析
在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校根本就没有信息任何管理系统,所有的工作几乎还是手工操作来完成。

计算机技术在日新月异的发展,但是有的很多学校,特别是在西部贫困地区,学校的种类管理都依然由手工操作来完成,这十分落后,效率极低,成本很大,而且极异出错。

随着社会的发展,信息化是社会进程的必然趋势,学校管理只有只有快,准,精才能发挥其价值。

所以机器代替人力是必然的历史发展趋势,只有领导的重视和支持才能从人工操作改为计算机的自动化系统。

人工操作必将被计算机代替。

有些学校虽使用了计算机,甚至管理系统,但是仍然存在很多问题,问题一日不解决,效率就一日提不上去。

还有,有的系统很不完善到处是漏洞,可以说是千疮百孔,这样极不完善的系统对管理来说是没有任何保障的。

1.2系统开发目标与意义
1.2.1系统开发目标
本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。

为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:
1.系统应具有实用性、可靠性和适用性,同时注意到先进性。

2.对各个数据库进行动态管理,防止混乱。

3.能够按照用户选择的不同的条件进行简单查询和复合查询。

4.能够对查询结果进行分类汇总,实现报表打印。

5.注意数据的安全性,具有数据备份和恢复的功能。

6.方便用户的操作,尽量减少用户的操作。

1.2.2意义
在各大中小学校,用计算机管理学校的信息已经越来越普遍了。

用计算机不但可以
提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。

提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。

1.3可行性分析
可行性研究的目的是用最小的代价在尽可能的时间确定问题是否能够解决。

1.3.1经济上可行性
现在,计算机的价格已经十分低廉,性能却有了长足的进步。

而本系统的开发,为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高学校的工作效率;
第四,本系统可以使敏感文档更加安全,等等。

所以,本系统在经济上是可行的。

1.3.2技术上可行性
本系统的开发利用Microsoft SQL Server2000作为本系统的数据库,它是一个支持多用户的新型数据库,适用于大中规模的数据量需求。

学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。

使用Visual 作为系统开发的开发环境,它提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。

综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。

1.3.3运行上可行性
本系统为一个小型的学生信息管理系统,所耗费的资源非常的小,学校的电脑无论
是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。

2需求分析
21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。

使原本的旧的管理方法越来越不适应现在社会的发展。

许多人还停留在以前的手工操作。

这大大地阻碍了人类经济的发展。

为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。

2.1教育系统学生管理现状分析
2.1.1学校工作流程分析
学校工作总体规划由教务人员在学生信息管理系统中完成对运行教务处所需的基本数据的维护,包括这些信息的增加、修改及对各项信息的变动都将在这进行操作。

新的学年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行基本的信息录入,新生入学后由教务人员在学籍系统中完成新学生信息的维护。

在每个学期开始,教务处根据班级的情况,以班为单位,为每个班级安排一个班主任及对此年级安排一个年级组长。

并对各科老师进行安排。

每举行一次考试后由任课老师对成绩进行录入。

班主任对本班的成绩汇总。

并进行排名,然后年级组长再进行汇总,并对本年级各科成绩及总成绩进行排名。

教务处、年级组长、班主任及任课老师跟据实际情况对录入的成绩进行维护,各位同学对以上录入的信息可以跟据自己的需要进行适当的查询。

2.1.2学校具体需求分析
学生:对各科成绩的查询及查看本班成绩排名等情况。

任课老师:输入并维护所教科目的学生成绩,计算本科的成绩排名、本科成绩在班上的排名。

输出本班科目的成绩及排名情况。

班主任:输入并维护本班的基本信息,对本班的各科成绩汇总,计算各科成绩的总分,排名,本班平均分等需求。

输出学生的基本信息,各科的成绩及各科成绩的部分,各科成绩的排名,总分的排名情况。

教务处:学校全体成员的信息管理,对考试科目,时间及对所考科目的编号等进行具体的管理,并对任课老师,班主任等输入的信息进行存库,对学生的信息进行必要的维护,可打印学生的所有信息。

2.1.3系统设计思想
采用现有的资源,先进的管理系统开发方案,充分利用学校现有的资源,减少开发中的时间和财力、物力、提高系统开发的水平和应用效果。

系统就满足学校的需求,例如学生信息的录入、查询、更新等。

学生录入与排名。

系统就具备数据库维护功能,及时根据用户需求进行数据添加、删除、修改等操作。

2.1.4系统设计分析
本系统性能力求易于使用,具体有较高的扩展性和可维护性,其功能主要分为六大类:
➢用户管理:用于对用户的添加,赋于不同权限及对用户的修改及查询。

➢课程管理:用于对各学期课程的开设和修改。

➢成绩管理:用于对成绩的输入、修改、汇总及排名。

➢学生信息管理:添加,删除,修改学生信息等。

➢任课信息管理: 对授课教师,课程号,学时数,班级等信息的添加,维护等。

➢学生信息查询: 对学生成绩等信息的查询,查询方式为模糊,且具有多条件组合查询功能。

2.1.5系统功能分析
权限功能:系统具有动态的权限分配功能,可按用户权限对用户进行分组。

可分为普通用户,一般用户,超级用户。

普通用户只是查询不能修改,一般用户只能对授权围进行相应修改及删除,超级用户能修改、删除所有信息。

录入功能:为一般用户提供相应的录入功能,为超级用户提供对所有信息的录入功能。

查询功能:为所有用户提供查询的功能,可查询允许围的所有信息。

维护功能:为一般用户提供查询及相应的修改,删除功能,为超级用户提供对所有信息的修改删除功能。

退出功能:结束并关闭系统。

2.1.6学生学籍系统的目标
☆节约资源,提高学籍信息的精确度
本系统能减少很多不必要的资源,不用象以前那样用冗余的纸式的管理。

大节省了学校能源。

并且计算机的存储与快速查询功能大大提高了学籍管理的效率,并且还提高了学籍信息管理的精确度。

☆方便快速操作,精减人员,节约开支
☆方便快速的操作,可减少学籍信息管理的漏洞,又减少因工作的冗余出现的错误,并且操作非常简单,可减少许多不很必要的人员,这无论从物质上还是工作人员的工资上都为学校节约了开支。

为学校增加了财富。

☆数据库分析
用户需求具体有学籍管理系统提供保存、更新、查询、维护和打印,这就需求数据库结构能充分满足各种信息的输入与输出,实现有组织地、动态地存储大量关联数据,方便用户访问系统中的数据,它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。

2.2C/S和B/S
2.2.1什么是C/S和B/S结构
C/S (Client/Server)结构,即大家熟知的客户机和服务器结构。

它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。

目前大多数应用软件系统都是Client/Server 形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。

这也就是目前应用系统的发展方向。

传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。

由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。

而且代价高,效率低。

B/S(Browser/Server)结构即浏览器和服务器结构。

它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW 浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。

这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。

以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。

它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。

特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

2.2.2C/S 与 B/S 区别
Client/Server是建立在局域网的基础上的,Browser/Server是建立在广域网的基础上的。

(1)硬件环境不同
C/S 一般建立在专用的网络上,小围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。

B/S 建立在广域网之上的,不必是专门的网络硬件环境,例如上网,租用设备,信息自己管理,有比C/S更强的适应围,一般只要有操作系统和浏览器就行。

(2)对安全要求不同
C/S 一般面向相对固定的用户群,对信息安全的控制能力很强。

一般高度的信息系统采用C/S 结构适宜,可以通过B/S发布部分可公开信息。

B/S 建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群。

(3)对程序架构不同
C/S 程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。

B/S 对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。

比C/S 有更高的要求,B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk 2000 Exchange 2000等,全面支持网络的构件搭建的系统。

SUN和IBM推的JavaBean构件技术等,使B/S更加成熟。

(4)、软件重用不同
C/S 程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。

B/S 对的多重结构,要求构件相对独立的功能。

能够相对较好的重用。

就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。

(5)、系统维护不同
系统维护是软件生存周期中,开销大,相当重要
C/S 程序由于整体性,必须整体考察,处理出现的问题以及系统升级难,可能是再做一个全新的系统。

B/S 构件组成方面构件个别的更换,实现系统的无缝升级。

系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。

(6)、处理问题不同
C/S 程序可以处理用户面固定,并且在相同区域,安全要求高的需求,与操作系统相关,应该都是相同的系统。

B/S 建立在广域网上,面向不同的用户群,分散地域,这是C/S无法作到的,与操作系统平台关系最小。

(7)、用户接口不同
C/S 多是建立在Window平台上,表现方法有限,对程序员普遍要求较高。

B/S 建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,降低开发成本。

(8)、信息流不同
C/S 程序一般是典型的中央集权的机械式处理,交互性相对低。

B/S 信息流向可变化, B-B、 B-C、 B-G等信息流向的变化,更象交易中心
2.2.3C/S架构软件的优势与劣势
◇应用服务器运行数据负荷较轻
最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。

二者可分别称为前台程序与后台程序。

运行数据库服务器程序的机器,也称为应用服务器。

一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据
库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。

数据的储存管理功能较为透明
在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。

所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。

在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。

在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。

◇C/S架构的劣势是高昂的维护成本且投资大
首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。

其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。

在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。

2.2.4面向对象的开发过程[1]
面向对象的软件开发和相应的面向对象的问题求解是当今计算机技术发展的重要成果和趋势之一,C#是一种面向对象的语言。

面向对象编程具备了几个优点,比如:代
码维护方便、可扩展性好、支持代码重用技术等等。

这些优点是过程编程语言所不具备的。

下面我们就来谈谈面向对象技术的这些优点:
(1) 可管理性,维护简单
对于面向过程的开发来说,版本管理主要是管理函数以及全程变量,而函数可以有很大的变动,同样,全程变量也可以有较大的变动,但是,对于面向对象程序设计来讲,一个系统是有对象来组成的,而对象是由类生成的,因此只需管理类就行,一个系统中,类是相对稳定的,因此便于管理.
(2) 模块化
是面向对象编程中的一个特征。

实体被表示为类和同一名字空间中具有相同功能的类,我们可以在名字空间中添加一个类而不会影响该名字空间的其他成员。

(3) 可扩充性
是对现代应用软件提出的又一个重要要求,即要求应用软件能够很方便,容易的进行扩充和修改,这种扩充和修改的围不但涉及到软件的容,也涉及到软件的形式和工作机制.
面向对象编程从本质上支持扩充性。

如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。

面向对象的程序设计可以用很好的可扩充性.这是由于类可以根据人对事物的理解而进行丰富,没有必要进行作大的改动,可以利用继承,对新的类添加属性和方法.用它可以生成系统的简单雏形,在征求用户的意见,在加入新的类,以及类的方法与属性等.
(4) 代码重用
可重用性是面向对象软件开发的一个核心思路.面向对象程序设计的抽象,封装,继承,多态的四大特点都无一例外,或多或少的围绕着可重用性这个核心并为之服务.
由于功能是被封装在类中的,并且类是作为一个独立实体而存在的,提供一个类库就非常简单了。

事实上,任何一个.NET Framework编程语言的程序员都可以使用.NET
Framework类库,.NET Framework类库提供了很多的功能。

更令人高兴的是,我们可以通过提供符合需求的类来扩充这些功能。

可重用性体现在两个方面:
(1) 开发的类可以被别人以及别的项目使用
(2) 由于可以继承,因此可以实现代码级的重用
2.2.5开发工具的选择[2]
(1)在开发工具上,我选择Visual Studio .NET 2008。

Visual Studio .NET 是一套完整的开发工具,用于生成 ASP Web 应用程序、XML Webs、桌面应用程序和移动应用程序。

Visual Basic .NET、Visual C++ .NET和 Visual J# .NET 全都使用相同的集成开发环境 (IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。

另外,这些语言利用了 .NET Framework 的功能,此框架提供对简化 ASP Web 应用程序和 XML Webs 开发的关键技术的访问。

Visual Studio .NET 是用于快速生成企业级 Web 应用程序和高性能桌面应用程序的工具。

Visual Studio 包含基于组件的开发工具(如 Visual C#、Visual J#、Visual Basic 和 Visual C++),以及许多用于简化基于小组的解决方案的设计、开发和部署的其他技术。

Visual Studio 2008 包括各种增强功能,例如可视化设计器(使用 .NET Framework 3.5 加速开发)。

.NET Framework 提供了用于解决常见编程任务的构建基块(预制的软件),从而能够快速构造具有出色的最终用户体验的紧密联系的应用程序。

在 .NET Framework 模型业务流程上有效构建的紧密联系的应用程序有利于在异类环境中实现系统集成。

Visual Studio 和 .NET Framework 的结合使用减少了对公用管道代码的需要,从而缩短了开发时间并使开发人员能够集中精力解决业务问题。

.NET Framework 3.5 是在 .NET Framework 3.0 的基础上构建的更高版本。

得到
增强的功能领域包括基类库、Windows workflow foundation、Windows Communication Foundation、Windows Presentation Foundation 和 Windows CardSpace。

开发人员使用 Visual Studio 2008 专业版能够:集成的单元测试能够更有效的验证应用程序。

应用程序的单元测试能够帮助我们在开发过程的早期轻松发现大量的问题。

现在,Visual Studio 2008 专业版中集成了单元测试功能,以前这个功能只在Visual Studio Team System 产品中提供。

(2).NET开发模式强大的的优势。

[3]
·整体功能: 提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。

提供一个将软件部署和版本控制冲突最小化的代码执行环境。

提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。

提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。

使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持一致。

按照工业标准生成所有通信,以确保基于 Microsoft Visual Studio .net 的代码可与任何其他代码集成。

·中间代码: 微软在用户选择何时MSIL应该编译成机器码的时候是留了很大的余地.微软公司很小心的声称MSIL不是解释性的,而是被编译成了机器码.它也明白许多--如果不是大多数的话--程序员认为Java程序要不可避免的比C编写的任何东西都要慢.而这种实现方式决定了基于MSIL的程序(指的是用C#,Visual Basic,"Managed C++"--C++的一个符合CLS的版本--等语言编写的程序)将在性能上超过"解释性的"Java 代码.当然,这一点还需要得到事实证明,因为C#和其他生成MSIL的编译器还没有发布.但是Java JIT编译器的普遍存在使得Java和C#在性能上相对相同.象"C#是编译语言而Java是解释性的,"之类的声明只是商业技巧.Java的中间代码和MSIL都是中间的汇编形式的语言,它们在运行时或其它的时候被编译成机器代码.。

相关文档
最新文档