ASP.NET 学生成绩管理系统的设计与实现(论文+源码)_Nueve

【摘要】

本系统依据开发要求主要应用于教育系统,完成对日常的教育工作中学生成绩档案的数字化管理。开发本系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规范化。

目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的。

本系统在开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。在开发方法的选择上,选择了生命周期法与原型法相结合的方法,遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,采取了演化式原型法,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。本论文主要从系统分析、系统设计、系统实施与使用等几个方面进行介绍。

【关键词】成绩管理信息系统 信息化 数据库 Asp.net

【Abstract】

According to there quirements of developing, the system is mainly applied to education system which manage as the daily teaching education al administration and computeration of teachers and students.Developing grade Management System cannot only ruduce thep resure of the staff and system atically manage the service and information,but also decrease the use of lab our force,accelerate there quiring speed,improve management,speed the pace of concernad nationa l department automated information retrieval to standardize the managements.Nowdays,the universities work are miscellaneous,especially inprivate ones.It's important  to put the teachers'management on the table.Up to now,mamage ment has come in to universities but not popularized.As for the teaching management,the reis not a set of complete and unified system,so it's very necessary to develop a common,compatibleone.

The system is wide and comprehensive in including most of the service items of teaching plans,such as grade management which refers to teaching plans,grade management,students management and soon.In developing procedure,we pursuer the comprehensiveness and commomality of the system,so that it can not only be applied in on eeducational in stitution.In choosing the developing methods,we combine the life sycle approach and the proto type-based approach,approach infourmain steps:systeminvestigation,systemanalysis,system design and system implementation.AS to data design,evolutionary prototype-based approach is partially adopted to reanaly size,redisign and reimplemate with the user'sever-in creasing under standing of the system.In choosing the developing too l, Microsoft Visual Studio .NET 2003.0programming language is employed.In line of its self-sustaining.to ensure the in tegrated ness and consistency.This the sismainly introduce the idea softhe analysizing,designing,implementing and application of this system.

第一章 绪 论

本毕业论文是以学校学生管理信息系统建设中的成绩管理系统的开发为背景,论述了管理信息系统的概念、结构及系统开发的基本原理和方法,全文共分为绪论、系统分析、概要设计、详细设计、开发总结、致谢、参考文献、附录等。

1.1问题的提出

随着计算机技术的发展,特别是计算机网络技术与数据库技术的发展,使用人们的生活与工作方式发生了很大的改观。网络技术的应用使得计算机之间通信、信息共享成为可能,而数据库技术的应用则为人们提供了数据存储、信息检索、信息分析等功能,从而使得工作更高效地进行。

数据库始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。

而互联网技术的出现,更是进一步丰富的人类生活,数字化生存已经一步步走进我们的生活与工作。互联网技术与数据库技术的结合为计算的在人类生活中的应用带来了巨大的影响。产业信息化,管理现代化,科学化已经成为行业发展的重要课题,这不仅是企业提高自身竞争力,甚至是国家提高综合国力,走向国民富强的重要手段。

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

1.2现有系统存在问题的分析

在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校根本就没有信息任何管理系统,所有的工作几乎还是手工操作来完成。计算机技术在日新月异的发展,但是有的很多学校,特别是在西部贫困地区,学校的种类管理都依然由手工操作来完成,这十分落后,效率极低,成本很大,而且极异出错。随着社会的发展,信息化是社会进程的必然趋势,学校管理只有只有快,准,精才能发挥其价值。

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

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

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

1.3系统开发目标与意义

1.3.1系统开发目标:

本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:

1.系统应具有实用性、可靠性和适用性,同时注意到先进性。

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

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

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

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

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

1.3.2意义:

在各大中小学校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。

1.4可行性分析

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

1.4.1 经济上可行性

现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开发,

为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:

第一,本系统的运行可以代替人工进行许多繁杂的劳动;

第二,本系统的运行可以节省许多资源;

第三,本系统的运行可以大大的提高学校的工作效率;

第四,本系统可以使敏感文档更加安全,等等。

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

1.4.2技术上可行性:

本系统的开发利用Microsoft SQL Server2000作为本系统的数据库,它是一个支持多用户的新型数据库,适用于大中规模的数据量需求。学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。

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

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

1.4.3运行上可行性

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

第二章 需求分析

21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。

2.1 教育系统学生管理现状分析

2.1.1 学校工作流程分析

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

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

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

每举行一次考试后由任课老师对成绩进行录入。班主任对本班的成绩汇总。并进行排名,然后年级组长再进行汇总,并对本年级各科成绩及总成绩进行排名。

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

2.1.2 学校具体需求分析

学生:对各科成绩的查询及查看本班成绩排名等情况。

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

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

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

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

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

2.1.3 系统设计思想

  1. 采用现有的资源,先进的管理系统开发方案,充分利用学校现有的资源,减少开发中的时间和财力、物力、提高系统开发的水平和应用效果。
  2. 系统就满足学校的需求,例如学生信息的录入、查询、更新等。学生录入与排名。
  3. 系统就具备数据库维护功能,及时根据用户需求进行数据添加、删除、修改等操作。

2.1.4 系统设计分析

      本系统适用于中小学校,其功能主要分为六大类:

      用户管理:用于对用户的添加,赋于不同权限及对用户的修改及查询。

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

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

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

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

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

       学生成绩统计: 统计本科的总分,平均分等信息。

本系统性能力求易于使用,具体有较高的扩展性和可维护性。

2.1.5 系统功能分析

      权限功能:系统具有动态的权限分配功能,可按用户权限对用户进行分组。可分为普通用户,一般用户,超级用户。普通用户只是查询不能修改,一般用户只能对授权范围内进行相应修改及删除,超级用户能修改、删除所有信息。

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

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

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

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

2.1.6 学生学籍系统的目标

节约资源,提高学籍信息的精确度

    本系统能减少很多不必要的资源,不用象以前那样用冗余的纸张式的管理。大节省了学校能源。并且计算机的存储与快速查询功能大大提高了学籍管理的效率,并且还提高了学籍信息管理的精确度。

方便快速操作,精减人员,节约开支

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

数据库分析

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

2.2  基于B/S结构技术的应用

2.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等多种脚本语言。PHP是一种跨平台的服务器端嵌入式脚本语言。其大量地借用C,Java和Perl语言的语法,并耦合PHP自身的特性,使Web开发者能够快速地生成动态页面,PHP是完全免费的,而且可以不受限制地获得源代码,甚至可以按用户需要进行个性化设计。JSP是Sun公司推出的新一代网站开发语言,具有很强的多平台支持和极大的伸缩能力,JSP可在Serverlet和JavaBean的支持下,建立功能强大的Web应用程序。

在推出ASP之后,微软于1998年又发布了ASP2.0,其与ASP1.0的主要区别是ASP1.0外部的组件需要实例化。在这之后,Microsoft又推出了ASP.Net,它并不是ASP的简单升级,而是全新的一个动态网页实现体系。ASP.Net是微软发展的新的体系结构.NET的一部分,其策略是将互联网本身作为构建新一代操作系统的基础,对互联网和操作系统的设计思想进行合理延伸,这样开发将可创建出摆脱设备硬件束缚的应用程序,轻松实现互联网连接。

2.2.2 动态网站开发技术比较

现在,在互联网中流行着多种动态网页实现技术,例如ASP、JSP、CGI、PHP等。对应于这些动态网页技术,也存在有多种多样的Web服务器系统,例如Microsoft IIS、Apache、Cold Fusion等。而对于这些实现动态网页的技术,ASP.NET技术可以说是现在最为流行和应用最为广泛的一种。ASP.NET向世界展现了一种更为领先的技术,这正是它推出不久就深受开发人员青睐的原因。

WEB开发与数据库是密不可分的。目前流行的数据库有Microsoft公司的SQL Server 2003,IBM公司的DB2,开源的MySQL,以及Oracle公司的Oracle 9i等。在ASP.NET Web开发最受青睐的是Microsoft公司的SQL Server 2003。

动态网站语言及技术比较:

(1)ASP,JSP,PHP共同点

都提供在HTML代码中混合某种程序代码,由语言引擎解释执行程序代码的能力。在这种方式下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP,PHP,JSP页面则需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送到浏览器。

都是面向WEB服务器的技术,客户端浏览器不需要任何附加的软件支持。

(2)ASP,JSP,PHP的平台支撑区别

ASP是微软公司开发的动态网页语言,也继承了其产品一贯的传统,只能执行于微软的服务器产品IIS或者PWS上。虽然在UNIX下也有Chili Soft的组件来支持ASP,但是因为ASP本身的功能有限,所以必须通过ASP+COM的群组合来扩充。

PHP3可以在Windows,UNIX,Linux的WEB服务器上正常运行,还支持IIS,Apache等一般的Web服务器,有相当好的跨平台性。

JSP与ASP在技术方面有很多相似之处,都是基于WEB应用实现动态交互网站的技术环境,但也有很多不同之处,两者的本质区别在于来源于不同的技术规范组织,其实现的基础――Web服务器平台要求不同。JSP技术基于平台和服务器的相互独立,技术支持由广泛的,专门的各种工具包,服务器的组件和数据库产品开发商提供,相比之下,ASP技术则主要是靠Microsoft的支持。Jsp可支持任何Web服务器,包括Apache,IIS等,并技术绝大多数的流行平台,包括Solaris操作系统,Windows操作系统,MAC OS,Linux及其他NUIX系列平台。

(3)ASP,JSP,PHP的应用情况

PHP存在着缺乏规模支持,缺乏多层结构和提供的数据库接口支持不统一等缺点,因此PHP不适合应用于大型电子商务站点或者大型的基于B/S结构的应用程序,其适合应用在一些小型的商业站点。

ASP和JSP则没有以上缺陷,ASP可通过COM/DCOM获得ActiveX规模支持,通过DCOM和Transaction Server获得结构支持;JSP则可通过Java Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。

目前国内ASP与PHP应用最为广泛,尤其是ASP。而JSP则在国外非常流行,国外电子商务类的网站许多都采用JSP。

(4) ASP.Net -----全新的Web开发理念与技术

由于ASP的核心编辑语言为VB Script或JavaScript等脚本语言,这决定了ASP先天不足,它无法进行象传统编程语言那样的底层操作,所以如果需要进行一些诸如socket,文件等的操作时不得不借助于其它传统语言。而 PHP则存在着缺乏规模支持,缺乏多层结构和提供的数据库接口支持不统一等缺点,只适合应用于一些小型商务网站或者业务处理系统。另外,ASP与PHP等都属于解释型的编辑架构,其运行是边解释边执行的,因此在运行效率上会有很大的损失。所以,在开发本系统的时候,我选择了微软新一代的Web开发技术――ASP.Net。

ASP.Net有以下几个重要的优点:

(1)强大的动态Web支持:

ASP虽有较大的灵活性,但效率不高,且缺乏面向对象的设计,从页导致ASP代码比较凌乱,开发维护都相对困难。ASP.Net为Web页面提供了一种集成式的支持。使用ASP.Net,可以编译页面中的代码,而这些代码可以运用高级语言来编写,因此易于实现并有较高的运行效率。

(2)高效的数据访问技术:

ASP.Net中可以运用ADO.NET。ADO.NET提供了对关系数据库和各种数据源的高效访问。这些组件甚至可以访问文件系统和目录。另外,.Net内置了XML的支持,可以处理从非Windows平台导入或者导出的数据。

(3)代码共享:

ASP.Net沿用.Net中引入的程序集概念,替代了传统的DLL,可较好的实现代码在应用程序之间的共享方式。

(4)面向对象的编程:

ASP.Net处于.NET Framework中,.NET Framework及其推荐采用的语言C#是完全基于面向对象的。

(5)语言的无关性:

在.NET中,VB.Net,C#,J#和Managed C++等语言都可以编译为通用的中间语言(IL)。这说明语言可以用从前未有的方式交互操作。

(6)增强的安全性:

每个程序集可以包含内置的安全信息,这样就可以非常准确的控制程序集的使用方式。

(7)可运用C#:

C#是.Net的一种面向对象的新语言。这种企业编程语言带有下一代编程语言服务运行时( NGWS Runtime ): NGWS Runtime 是一个不仅管理执行代码、同时也提供使编程更加容易的动态环境.编译器产生受管代码以指向这种受管理执行环境.你获得跨平台语言集成、跨平台语言异常处理、增强安全性、版本控制、安排支持和查错服务.

支持NGWS Runtime 的主要语言是C#.支持NGWS框架的很多程序是用C#写的, C#语言借鉴了C++,但是具备现代化和新增的类型安全——使C#成为企业解决方案的首选语言.在企业计算领域,C#将会变成为用于编写"下一代窗口服务"( Next Generation Windows Services,简写为NGWS)应用程序的主要语言. 

基于C#具有如此多的优良特性,而且又是.net开发的首选语言,因此,在开发本系统时我选择了它作为开发语言。

2.2.3 本系统的开发采用Asp.Net---- 一种全新的设计模式

Asp.net之三层WEB结构及其优点

三层模式是在两层模式的基础上,增加了新的一级。这种模式在逻辑上将应用功能分为三层:客户显示层、业务逻辑层、数据层。客户显示层是为客户提供应用服务的图形界面,有助于用户理解和高效的定位应用服务,负责处理用户的输入和向用户的输出,但并不负责解释其含义(出于效率的考虑,它可能在向上传输用户输入前进行合法性验证),这一层通常用前端工具(VB,VC,ASP等)开发;业务逻辑层位于显示层和数据层之间,专门为实现企业的业务逻辑提供了一个明确的层次,在这个层次封装了与系统关联的应用模型,并把用户表示层和数据库代码分开 。其主要功能是执行应用策略和封装应用模式,并将封装的模式呈现给客户应用程序,它是上下两层的纽带,它建立实际的数据库连接,根据用户的请求生成SQL语句检索或更新数据库,并把结果返回给客户端,这一层通常以动态链接库的形式存在并注册到服务器的注册簿(Registry)中,它与客户端通讯的接口符合某一特定的组件标准(如COM,CORBA),可以用任何支持这种标准的工具开发;数据层是三层模式中最底层,他用来定义、维护、访问和更新数据并管理和满足应用服务对数据的请求。

三层模式的主要优点为 :

①良好的灵活性和可扩展性。对于环境和应用条件经常变动的情况,只要对应用层实施相应的改变,就能够达到目的。

②可共享性。单个应用服务器可以为处于不同平台的客户应用程序提供服务,在很大程度上节省了开发时间和资金投入;

③较好的安全性。在这种结构中,客户应用程序不能直接访问数据,应用服务器不仅可控制哪些数据被改变和被访问,而且还可控制数据的改变和访问方式 。

④增强了企业对象的重复可用性。“企业对象”是指封装了企业逻辑程序代码,能够执行特定功能的对象。随着组件技术的发展,这种可重用的组件模式越来越为软件开发所接受。

⑤三层模式成为真正意义上的“瘦客户端”,从而具备了很高的稳定性、延展性和执行校率。

⑥三层模式可以将服务集中在一起管理,统一服务于客户端,从而具备了良好的容错能力和负载平衡能力。 

ASP.Net的运用可以轻松地使用近年流行的三层结构模式开发WEB站点或基于B/S结构的应用程序。它可以使程序具有更好的扩展性,灵活性,安全性,平台无关性以及可维护性。ASP.Net的三层结构开发方法思想与Java类似:Java中的三层架构为前端的HTML,JSP,Serverlet,中间层为JavaBean,EJB,后面为数据器库服务器。而在ASP.Net中,前端为HTML,asp,aspx等,中间层为扩展名是.vb,.cs等文件编译而成的.dll控件,后面为数据库服务器。

多层结构的应用正是在对C/S 结构的总结基础上产生的,并且也已经扩展到了B/S应用开发领域。

学生成绩管理信息系统是由 Web后台进行统一管理,所有业务逻辑都集中在Web应用程序中管理和制定,具有数据的录入和查询统计等功能,客户端的分布广泛,数据集中处理,因此在设计时充分考虑各种体系结构的优缺点,选择三层WEB模式进行开发实现。

2.2.4 面向对象的开发过程

面向对象的软件开发和相应的面向对象的问题求解是当今计算机技术发展的重要成果和趋势之一,C#是一种面向对象的语言。面向对象编程具备了几个优点,比如:代码维护方便、可扩展性好、支持代码重用技术等等。这些优点是过程编程语言所不具备的。下面我们就来谈谈面向对象技术的这些优点:   

(1) 可管理性 维护简单

对于面向过程的开发来说,版本管理主要是管理函数以及全程变量,而函数可以有很大的变动,同样,全程变量也可以有较大的变动,但是,对于面向对象程序设计来讲,一个系统是有对象来组成的,而对象是由类生成的,因此只需管理类就行,一个系统中,类是相对稳定的,因此便于管理.   

(2) 模块化

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

(3) 可扩充性  

是对现代应用软件提出的又一个重要要求,即要求应用软件能够很方便,容易的进行扩充和修改,这种扩充和修改的范围不但涉及到软件的内容,也涉及到软件的形式和工作机制.

面向对象编程从本质上支持扩充性。如果有一个具有某种功能的类,就可以很快地扩充这个类,创建一个具有扩充的功能的类。  

面向对象的程序设计可以用很好的可扩充性.这是由于类可以根据人对事物的理解而进行丰富,没有必要进行作大的改动,可以利用继承,对新的类添加属性和方法.用它可以生成系统的简单雏形,在征求用户的意见,在加入新的类,以及类的方法与属性等.

(4) 代码重用  

可重用性是面向对象软件开发的一个核心思路.面向对象程序设计的抽象,封装,继承,多态的四大特点都无一例外,或多或少的围绕着可重用性这个核心并为之服务.

由于功能是被封装在类中的,并且类是作为一个独立实体而存在的,提供一个类库就非常简单了。事实上,任何一个.NET Framework编程语言的程序员都可以使用.NET Framework类库,.NET Framework类库提供了很多的功能。更令人高兴的是,我们可以通过提供符合需求的类来扩充这些功能。  

可重用性体现在两个方面:

(1) 开发的类可以被别人以及别的项目使用

(2) 由于可以继承,因此可以实现代码级的重用.  

2.2.5 开发工具的选择

(1)在开发工具上,我选择Visual Studio .NET。Visual Studio .NET 是一套完整的开发工具,用于生成 ASP Web 应用程序、XML Web services、桌面应用程序和移动应用程序。Visual Basic .NET、Visual C++ .NET、Visual C# .NET 和 Visual J# .NET 全都使用相同的集成开发环境 (IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了 .NET Framework 的功能,此框架提供对简化 ASP Web 应用程序和 XML Web services 开发的关键技术的访问。

Visual Studio .NET 是用于快速生成企业级 ASP.NET Web 应用程序和高性能桌面应用程序的工具。Visual Studio 包含基于组件的开发工具(如 Visual C#、Visual J#、Visual Basic 和 Visual C++),以及许多用于简化基于小组的解决方案的设计、开发和部署的其他技术。  

Visual Studio 支持 Microsoft .NET Framework,该框架提供公共语言运行库和统一编程类;ASP.NET 使用这些组件来创建 ASP.NET Web 应用程序和 XML Web services。

(2)ASP.net不仅仅是 Active Server Page (ASP) 的下一个版本,而且是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.net提供许多比现在的Web开发模式强大的的优势。

执行效率的大幅提高  

ASP.net是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。

世界级的工具支持  

ASP.net构架是可以用Microsoft(R)公司最新的产品 Visual Studio.net开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.net强大化软件支持的一小部分。

强大性和适应性  

因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server上)。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。ASP.net同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。  

简单性和易学性  

ASP.net是运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。例如ASP.net页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。另外,通用语言简化开发使把代码结合成软件简单的就像装配电脑。

高效可管理性  

ASP.net使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为"Zero Local Administration"的哲学观念使Asp.net的基于应用的开发更加具体,和快捷。一个ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。

多处理器环境的可靠性  

ASP.net已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。  

自定义性,和可扩展性  

ASP.net设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。这与原来的包含关系不同,ASP.net可以加入自己定义的如何组件。网站程序的开发从来没有这么简单过。 

安全性  

基于Windows认证技术和每应用程序配置,你可以确性你的原程序时绝对安全的。ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。

ASP.NET 是一个已编译的、基于 .NET 的环境,把基于通用语言的程序在服务器上运行。将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和 JScript .NET.)创作应用程序。另外,任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。

ASP.NET 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。

当创建 ASP.NET 应用程序时,开发人员可以使用 Web 窗体或 XML Web services,或以他们认为合适的任何方式进行组合。每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义.

2.2.6 数据库系统选择

本系统将采用Microsoft SQL Server2000作为系统的DBMS支撑,SQL Server2000是能够支持企业级关系型数据库的管理系统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用户界面风格与Windows一样非常友好。SQL Server2000在存储大容量数据方面,在数据的安全性和完整性方面,在分布式处理等都是适合于企业级应用的。而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较低。采用SQL Server2000 + ASP.Net开发本系统是一个较为理想的组合。

SQL Server2000的新特点:

动态的自我管理:SQL Server2000运行时动态配置运行环境,优化并简化了许多服务器配置选项,可随用户增多或者减少动态地请求追加或者释放资源,并可随数据的增减自动改变数据库大小。

丰富的管理工具:SQL Server2000提供了许多数据库系统管理工具。系统管理员可以在运行SQL Server Enterprise Manager的中央控制台上,管理和监视服务器运行性能和企业数据库。

可编程的管理:SQL分布式对象可用于编写应用程序,这就可以使应用程序数据包透明地将SQL Server 2000嵌入应用程序中。也可以使用SQL-DMO为不同站点的通用的管理任务建立应用程序。

可能收缩性和高可能性:SQL Server 2000数据库引擎可以几乎所有Windows平台上运行,是可管理上千万个用户的大型数据库。同时其还具有动态自我调解的特性,能有效地在笔记本或者PC上运行。

支持数据仓库: SQL Server 2000支持数据仓库。

系统访问Internet集成:SQL Server 2000与其他产品一起为Internet或Intranet系统形成一个稳定的安全的数据存储;可为运行在IIS下的Web应用程序提供一个高性能的数据存储服务;此外,SQL Server2000数据库引擎还包括了对XML的本地支持,Transact-SQL结果可以作为XML文档返回给使用OLEBD和ADO API的应用程序,XML文档还可以添加到SQL Server 2000中。

综上所述,在开发空警管理信息系统时,采用SQL Server 2000作为数据库管理系统。

2.2.7 开发方法的选择

在开发方法的选择上,选择了演绎式原型法与生命周期法相结合的方法。具体来说,就是在系统开发之前对系统有一个总体框架设想,各功能单元的结构和功能也比较清楚,但是还没有具体实现。系统完成什么功能,分成哪几个部分,各个部分又有哪几个模块,都已理解掌握,且以后不需要做更大的变动,只是具体到每个模块,还没有全部实现。具体地设计可能是完全实现一个模块,也可能是用一个效率高地模块代替一个旧模块。信息系统的开发是一项比较复杂的工作,我们必须选用科学的有效的开发方法。近年来,国内外已逐步总结出一些开发信息系统的方法和技术,但是,从目前的情况来看,系统的开发技术仍是一个比较薄弱的环节。那么根据本系统开发的要求,本系统选择了生命周期法和原型法相结合的方法。现具体介绍如下:

生命周期这个概念源于系统工程方法。广义地说,任何系统均有其发生、发展、成熟、消亡或更新换代的过程,这个过程称为系统的生命周期。主要包括系统调查阶段、系统分析、系统设计、系统实施及系统维护与评价五个部分。根据系统设计而对整个系统实施,包括物理实施,程序设计,调试等。实施是最后的一步,关系着最后的成功。

在建筑学和机械设计学中,“原型”指的是其结构、大小和功能都与某个物体相类似的模拟该物体的原始模型。在管理信息系统开发中,用“原型”来形象地表示系统的一个早期可运行版本,它能反映新系统的部分重要功能和特征。“原型方法”则是利用原型辅助开发系统的一种新方法。原型方法要求在获得一组基本的用户需求后,快速地实现新系统的一个“原型”,用户、开发者及其他有关人员在试用原型的过程中,加强通信和反馈,通过反复评价和反复修改原型系统,逐步确定各种需求的细节,适应需求的变化,从而最终提高新系统的质量。因此可以认为原型方法确定用户需求的策略,它对用户需求的定义采用启发的方式,引导用户在对系统逐渐加深理解的过程中作出响应。

原型法主要包括确定系统基本需求阶段、构造初始原型阶段、原型的使用评价阶段、修改原型阶段和确定模型后的处理阶段。

原型法的基本思想是:凭借着系统分析人员对用户要求的理解,在强有力的软件环境支持下,快速地给出一个实实在在的模型(或称原型、雏形),然后与用户反复协商修改,最终形成实际系统。

在本系统中选择了演化型(EvolutionaryPrototying)原型法,其目的不在于改进规格说明和用户需求,而是将系统改造得易于变化,在改进原型的过程中将原型演化成最终系统。它将原型方法的思想贯穿到系统开发全过程,对满足需求的改动较为适合。

2.2.8 开发本系统的意义

学生成绩管理是学校管理中异常重要的一个环节,作为学校,除了育人,就是育知,学生成绩管理的计算机化是整个学校教务管理中的重要一部分,能否实现这一步关系到学校办学整体效率的高低,介与它的重要性,学生成绩管理系统的开发与应用就逐渐提入议程,并占着越来越重要的份量。

运用学生成绩管理系统可以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够合理安排时间,能够尽快的知道自己的考试成绩,投入新的课程的学习或复习这次没有考过的课程。而学生成绩管理系统的应用也为今天的民办教育在未来市场的竞争力有所提高。从大的方向说,就是为了加速我国四化建设的发展,实现全部的自动化,使我国发展成为通讯网络化,决策科学化,办公自动化的国家。

在现代,高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,不好管。对于一个学校而言,更应该运用一些本地资源,提高管理的力度,对学生负责,对国家负责。

2.2.9 本文档编写目的

本文档为定义项目的需求,以软件工程学的思想来组织管理并展开本次毕业设计课题的研究,以指导后期的系统分析与设计,并为系统用户与开发者提供参考标准。本文档力求准确,清晰地表达项目需求与开发过程,以保证开发过程满足项目需求的正确方向进行。

Web应用具体项目的确立是建立在各种条件、环境及需求之上的,通常情况下项目的开发与应用,运营的参与者拥有不同的知识结构体系,因此,所有人员对项目的理解程度很大程度上决定的项目的建设成败。因此,需要对系统之间的关系进行详细的设计分析说明。

2.2.10 定义

软件需求:IEEE软件工程标准词汇表(1997年)中定义软件需求为:

(1) 用户解决问题或达到目标所需的条件或权能(Capability)。

(2) 系统或部件要满足标准、规范或其它正式规定文档所需具有的条件或权能。

(3) 一种反映上面(1)或(2)所描述的条件或权能的文档说明同工作,以及相互之间进行有效的交流和沟通。

参考资料(标准)

中华人民共和国国家标准UDC681.3:

(1) 信息技术软件生存期过程》(GB/T8566-1995)

(2)《计算机软件产品开发文件编制指南》(GB 8567-88)

(3)《软件工程术语》(GB/T11457-1995)

(4) IEEE软件工程标准词汇表(1997年)

第三章 学生成绩管理系统概要设计

3.1系统设计图例说明

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值