计算机科学与技术专业实践论文1
更新时间:2024-06-25 17:19:01 阅读量: 综合文库 文档下载
专 业 实 践 论 文
作 者: 学 号: 学 系: 信息科学系 专 业: 计算机科学与技术 题 目: 学生信息管理系统的设计与实现
指导者:
年 月 南 京
目 次
中文摘要............................................................ I Abstract........................................................... II 1. 绪论............................................................. 1 1.1学生信息管理系统背景 ............................................ 1 1.2学生信息管理系统的需求分析 ...................................... 2 2. 相关技术介绍..................................................... 3 2.1 ASP.NET技术简介 ............................................... 3 2.2 C#简介......................................................... 4 2.3 SQL SERVER2000数据库简介 ...................................... 8 2.4 本章小结..................................................... 10 3系统分析 ......................................................... 11 3.1 系统功能描述.................................................. 11 3.2 系统功能模块划分.............................................. 11 3.3系统流程分析 ................................................... 14 3.4 本章小结....................................................... 18 4.数据库结构设计与实现............................................. 18 4.1数据表的创建 ................................................... 18 4.2 数据库逻辑结构设计............................................ 20 4.3 本章小结...................................................... 21 5.界面设计......................................................... 23 5.1 系统首页...................................................... 23 5.2 学生详细信息界面............................................... 23 5.3 用户登录后界面................................................. 24 5.4 班级信息管理界面............................................... 24 5.5 学生信息管理界面............................................... 26 5.6 信息留言模块................................................... 28 5.7 选课模块....................................................... 28 5.8 代码实现....................................................... 29 5.9 本章小结....................................................... 33 6. 总结与展望...................................................... 34 6.1 学生信息管理系统的测试......................................... 34 6.2 学生信息管理系统的调试、运行与维护............................. 34 6.3 学生信息管理系统的展望........................................ 35 6.4 本章小结...................................................... 35 总结............................................................... 36 致谢............................................................... 37 参考文献 ...................................................................................................................................... 38
摘要
学生信息管理系统在广大院校中应用比较广泛,现在每个院校都提供了学习信息管理系统的功能,学生信息管理系统可以为广大用户提供比较详细的学生个人信息的查询与编辑。本学生信息管理系统是采用B/S模型结构,以Visual Studio.NET作为开发平台,利用Visual C#.NET作为主要开发语言,利用ASP.NET技术以及SQL Server数据库技术进行开发。系统按照一般学生信息管理系统的开发步骤进行开发,并力图涵盖基本功能。该系统的功能有:用户注册,用户登录,用户资料修改,留言版,班级信息管理,选修课查询等系统界面友好,使用方便。同时考虑到用户的安全性和网络优化性,增加了管理员管理模块。现在随着网络技术的飞速的发展,学校信息管理系统在广大学校中的应用将会更加广泛。整个系统的设计基本实现了在线交流的功能。
关键字: 学生信息管理系统 B/S结构 ASP.NET技术 SQL Server数据库
I
Abstract
Student Information Management System is widely used in most universities,which offers the user functions of search and editing detailed student personal information.This Student Information Management System is structured with B/S module, developd on Visual Studio.NET flatform.It use Visual C#.NET as main developing language, ASP.NET and SQL Server database as main technique.The system is developed according to the general student information management system and tries to involve basic functions.The functions of this friendly -interfaced and convenient-operating system is: user registration, user logging on, user information modification, message board, class information management, elective course search and so on. Administrator module is added as user security and network optimization considered. Student information management system will be used more abroad with the flying development of network techneque.The design of the whole system has already realized the function of online communication.
Keyword: Student Information Management System B/S structure ASP.NET
technique SQL Server Database
II
1. 绪论
1.1学生信息管理系统背景
当今社会,计算机已经成为我们学习和工作的得力助手,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:
首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等。
在学校中用计算机管理学生档案的意义:现在我国的学校中档案的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
作为一个计算机应用专业的大学生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我大学的所学编制出一个实用的程序来帮助学校进行更有效的学生档案管理
现在高校的学生档案的管理趋向于复杂化和多元化,随着计算机的广泛应
用,越来越多的高校均采用了计算机化的管理模式。查询、修改、录入、删除等基本操作都采用了计算机的数据库技术。比起以前使用卡片的方法有了很大的进步,方便管理,易于更新,极大的方便了学生档案的管理工作。
以前我国的大中专院校学生档案的管理水平停留在纸介质的基础上,那样的机制不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
学生档案信息管理[1]系统是一个教育单位不可缺少的部分,它的内容对于于学校的决策者和管理者来说都至关重要,所以学生档案管理系统应该能够为用户提供充足的信息和快捷的查询手段。
通过调查,几乎所有的大中专院校均以采用了计算机化的管理模式,极大的方便了学校的学生档案的管理工作。
作为计算机应用的一部分,使用计算机对学生档案信息进行管理,具有着手工管
1
理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是学校的科学化、正规化管理,与社会接轨的重要条件。
1.2学生信息管理系统的需求分析
本系统主要是针对学生的基本信息进行管理[2]。对于这些基本信息,各高校校的要求未必相同,可针对具体情况进行处理。对于学校的管理人员,工作重点是增加相应的功能模块,使用户更加方便、快捷、安全的食用本系统。基于此要求,本系统需要满足一下几点要求:
● 系统内容的全面性。学生信息管理系统面向的对象并不只是学生、学校,还要面向社会中的用人单位、其他高校(例如求职、求学,用人单位查看学生的个人简历),因此,本系统的应用涵盖学生、学校、用人单位等各类用户群,满足各自的业务需要,使各用户群可以快捷、简单地使用本系统。
● 技术的先进性。本系统采用集中式数据存放、分布式管理的结构体系。服务器端由数据库服务器、web服务器和中间件服务器组成,由客户端通过网络连接进行程序的管理和维护。数据库服务器中的数据要实现实时更新、定时备份、数据库的可靠性、稳定性要高。功能模块要及时进行更新和填补漏洞。由组件事务服务器来多线程处理数据业务流量,有效地控制网络流量。
● 可扩展性。站点的数据承载量、功能模块的单个或整体都可以满足变化的需要,这种适应性成为可扩展性。学生信息管理系统的可扩展性,体现在不同用户群需要处理不同类型的数据、数据与用户之间进行交互、数据要符合各用户的使用需求、将表搜索以及多表查询系统化、避免性能下降等方面。
● 易维护性。本系统采用B/S结构,系统的升级只需要在服务器端完成,更新软件系统的数据库、文件也只需要更新服务器端即可。在进行系统维护时,只需要远程登录服务器系统,减少了维护系统的成本和周期。
● 良好的安全性。学生信息管理系统数据量大、使用人数多,所以对系统的安全性有比较高的要求:对于数据库,要设置不同的用户的权限,数据的修改必须由合法用户操作;限制服务器端口被攻击,防止出现系统瘫痪现象;防止数据产生并发现象,以免数据库服务器无法响应操作。
2
2. 相关技术介绍
2.1 ASP.NET技术简介
ASP.net[3]是Microsoft.net的一部分,作为战略产品,不仅仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。它的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。
ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和 JavaScript .NET.)创作应用程序。另外,任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET [4]可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。
微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
ASP.net的新性能[5]:ASP.net提供了稳定的性能、优秀的升级性、更快速的的开发、更简便的管理、全新的语言以及网络服务。贯穿整个ASP.net的主题就是系统帮用户做了大部分不重要的琐碎的工作。
·全新的构造
新的ASP.net引入受管代码(Managed Code)这样一个全新概念,横贯整个视窗开发平台。受管代码在NGWS Runtime下运行,而NGWS Runtime是一个时间运行环境,它管理代码的执行,使程序设计更为简便。
·高效率
3
对于一个程序,速度是一件非常令人渴望的东西。一旦代码开始工作,接下来你就得尽可能地让它运作得快些快些再快些。在ASP中你只有尽可能精简你的代码,以至于不得不将它们移植到一个仅有很少一点性能的部件中。而现在,ASP.net会妥善地解决这一问题。
·易控制
在ASP.net里,你将会拥有一个“Data-Bounds” (数据约束),这意味着它会与数据源连接,并会自动装入数据,使控制工作简单易行。
语言支持
ASP.net支持多种语言,支持编译类语言,支持比如VB、VC++、C#等,它比这些编译类语言运行速度快,更适合编写大型应用。
·更好的升级能力
快速发展的分布式应用也需要更快速、更模块化、更易操作、更多平台支持和重复利用性更强的开发,需要一种新的技术来适应不同的系统,网络应用和网站需要提供一种更加强大的可升级的服务。ASP.net能够适应上面的要求。
·让你的生活更简单
对于今天的Web程序员来说,最大的挑战就是不断变化的浏览器兼容性以及它们不断升级的复杂性。在保证页面能在所有浏览器下工作的同时,又得尽量使用每个浏览器的最新属性来建立更具交互性的页面,这简直就是一场恶梦。更加可怕的是,需要对不同的用户设备建立不同的网页。
最简单的解决办法就是动态地对不同的用户生成不同的输出,或者就是对不同的用户写多个页面。大多数开发者都会选择第一种方法。但是,这就意味着用户的每次点击都会让服务器判断应该向用户显示什么。而通过ASP.net,我们可以看到一个新的服务控制的概念,它封装了一些普通的任务,提供了一种清晰的编程模块,有助于管理和处理不同的用户类型。简单地说,ASP.net把这些过程自动化了。
2.2 C#简介
在过去的二十年里,C和C++已经成为在商业软件的开发领域中使用最广泛
4
的语言。它们为程序员提供了十分灵活的操作,不过同时也牺牲了一定的效率。与诸如Microsoft? Visual Basic? 等语言相比,同等级别的C/C++应用程序往往需要更长时间来开发。由于C/C++语言的复杂性,许多程序员都试图寻找一种新的语言,希望能在功能与效率之间找到一个更为理想的权衡点。
目前有些语言,以牺牲灵活性的代价来提高效率。可是这些灵活性正是C/C++程序员所需要的。这些解决方案对编程人员的限制过多(如屏蔽一些底层代码控制的机制),其所提供的功能难以令人满意。这些语言无法方便地同早先的系统交互,也无法很好地和当前的网络编程相结合。
对于C/C++用户来说,最理想的解决方案无疑是在快速开发的同时又可以调用底层平台的所有功能。他们想要一种和最新的网络标准保持同步并且能和已有的应用程序良好整合的环境。另外,一些C/C++开发人员还需要在必要的时候进行一些底层的编程。
C# (C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。
正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选--无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。
最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。
·效率与安全性
新兴的网络经济迫使商务企业必须更加迅速的应对竞争的威胁。开发者必须不断缩短开发周期,不断推出应用程序的新版本,而不仅仅是开发一个\标志性\的版本。
C#在设计时就考虑了这些问题。它使开发者用更少的代码做更多的事,同时也不易出错。
5
·支持现有的网络编程新标准
新的应用程序开发模型意味着越来越多地解决方案依赖于新出现的网络标准,例如HTML,XML,SOAP等。现存的开发工具往往都是早于Internet出现的,或者是在我们所熟知的网络还处于孕育期时出现的。所以,它们一般无法很好地支持最新的网络技术。
C#程序员可以在Microsoft .NET平台上事半功倍的构建应用程序的扩展框架。C#包含了内置的特性,使任何组件可以轻松转化为XML网络服务,通过Internet被任何操作系统上运行的任何程序调用。
更突出的是,XML网络服务框架可以使现有的XML网络服务对程序员来说就和C#对象一样。这样,程序员就可以方便地使用他们已有的面向对象的编程技巧来开发利用现有的XML网络服务。
还有一些精细的特性,使得C#成为一流的网络编程工具。例如,XML正逐渐成为在网络上传输结构化数据的标准。这种数据集合往往非常小。为提高性能,C#允许把XML数据直接映射到struct数据类型,而不是class。这样对处理少量的数据非常有效。
·消除大量程序错误
即使是专家级的C++程序员也常会犯一些最简单的小错误--比如忘了初始化变量,但往往就是这些小错误带来了难以预料的问题,有些甚至需要很长时间来寻找和解决。一旦一个程序作为产品来使用,就算最简单的错误纠正起来也可能要付出极其昂贵的代价。
C#的现代化设计能够消除很多常见的C++编程错误。 例如: 1. 资源回收减轻了程序员内存管理的负担。 2. C#中变量由环境自动初始化。 3. 变量是类型安全的。
这样,程序员编写与维护那些解决复杂商业问题的程序就更方便了。
·对版本的更新提供内在的支持降低了开发成本
更新软件组件是一项很容易出错的工作,因为代码的修改可能无意间改变原有程序的语义。为协助开发者进行这项工作,C#为版本的更新提供内在的支持。例如,方法重载必须显式声明。这样可以防止编码错误,保证版本更新的灵活性。
6
还有一个相关的特性就是对接口和接口继承的内在支持。这些特性使得C#可以开发复杂的框架并且随着时间不断发展更新它。
总体来说,这些特性使得开发程序项目的后续版本的过程更加健壮,从而减少后续版本的开发成本。
·商业过程和软件实现的更好对应
企业的商业计划要付诸现实,必须在抽象的商业过程和实际的软件实现之间建立紧密地对应。不过大多数语言都很难做到这点。例如,如今的程序员们一般使用代码注释来注明哪个类对应于某个抽象的商业对象。
C#语言允许类型定义的,扩展的元数据。这些元数据可以应用于任何对象。项目构建者可以定义领域特有的属性并把他们应用于任何语言元素-类,接口等等。然后,开发人员可以编程检查每个元素的属性。这样,很多工作都变得方便多了,比如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者只是创建一份基于对象的领域特有属性的报表。定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。
·扩展交互性
作为一种自动管理的,类型安全的环境,C#适合于大多数企业应用程序。但实际的经验表明有些应用程序仍然需要一些底层的代码,要么是因为基于性能的考虑,要么是因为要与现有的应用程序接口兼容。这些情况可能会迫使开发者使用C++, 即使他们本身宁愿使用更高效的开发环境。 C#采用以下对策来解决这一问题:
1. 内置对组建对象模型(COM)和基于Windows?的API的支持; 2. 允许有限制地使用纯指针(Native Pointer)。
在C#中,每个对象都自动生成为一个COM对象。开发者不再需要显式的实现IUnknown和其他COM接口.这些功能都是内置的.类似的,C#可以调用现有的COM对象,无论它是由什么语言编写的。
C#包含了一个特殊的功能,使程序可以调用任何纯API。在一段特别标记的代码中,开发者可以使用指针和传统C/C++特性,如手工的内存管理和指针运算。这是其相对于其它环境的极大优势。这意味着C#程序员可以在原有的C/C++代码
7
的基础上编写程序,而不是彻底放弃那些代码。
无论是支持COM还是纯API的调用,都是为了使开发者在C#环境中直接拥有必要的强大功能。
C#是一种现代的面向对象语言。它使程序员快速便捷地创建基于Microsoft .NET平台的解决方案。这种框架使C#组件可以方便地转化为XML网络服务,从而使任何平台的应用程序都可以通过Internet调用它。
C#增强了开发者的效率,同时也致力于消除编程中可能导致严重结果的错误。C#使C/C++程序员可以快速进行网络开发,同时也保持了开发者所需要的强大性和灵活性。
2.3 SQL SERVER2000数据库简介
SQL[6](Structured Query Language),意思为结构化查询语言,是一种介于关关系代数与关系演算之间的结构化查询语言。它的主要功能就是同各种数据库建立联系,进行沟通。ANSI(美国国家标准协会)规定SQL是关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据、从数据库中提取数据等。
SQL Server2000概述
SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了。Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。SQL Server 2000, 是Microsoft 公司推出的SQL Server 数据库管理系统的新版本。该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。可跨越从运行Microsoft Windows 98 的膝上型电脑,到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。
其常见版本有如下几类:
8
? 企业版(Enterprise Edition)
支持所有SQL Server 2000的功能。该版本多用于大中型产品数据库服务器,并且可以支持大型网站,企业OLTP(联机事务处理)和大型数据仓库系统OLAP(联机分析处理)所要求的性能。
? 标准版(Standard Edition)
实用范围是小型的工作组或部门。它支持大多数的SQL Server2000功能。但是,不具有支持大型数据库,数据仓库和网站的功能。而且,不支持所有的关系数据库引擎的功能。
? 个人版(Personal Edition)
主要适用于移动用户,因为他们经常从网络上断开,而运行的应用程序却仍然需要SQL Server 2000的支持。除了事务处理复制功能以外,能够支持所有SQL Server 2000标准版支持的特性。
? 开发者版(Developer Edition)
适用于应用程序开发的版本,支持除图形化语言设置以外的SQL Server2000的所有其它功能。该版本主要适用于程序员在开发应用程序时,将SQL Server 2000作为其数据存储区。虽然开发版的功能齐备,但是只被授权为一个开发和测试系统,而不是一个产品服务器。
此外,SQL Server 2000 还有桌面引擎(Desktop Engine) 和Windows CE 版。用户可以根据实际情况选择所要安装的SQL Server 2000 版本。
SQL Server2000的特点 ? 实现了客户机/服务器模式
客户机/服务器(C/S)模式数据库计算是一种分布式的数据存储、访问和处理技术,它已成为大多数企业计算的标准。Microsoft SQL.Server是客户/服务器系统应用的完美的例子。
? 与Internet集成
SQL Server 2000数据库引擎提供完整的XMI.支持。具备构造大型Web站
9
点的数据存储组件所需的可伸缩性、可用性和安全性。
? 具备很强的可伸缩性和可用性
SQL Server 2000包含企业版、标准版、开发版和个人版等4个版本,使同一个数据库引擎可以在不同的操作系统平台上使用,从运行Windows 9x的便携式电脑,到运行Windows2000 Data Center Server的大型多处理器的服务器。增强的图形用户界面管理工具,使管理更加方便。
? 具备企业级数据库功能
SQL Server 2000关系型数据库引擎支持当今苛刻的数据处理环境所需的功能,可同时管理上千个并发数据库用户,其分布式查询使用户可以引用来自不同数据源的数据,同时具备分布式事务处理系统,保障分布式数据更新的完整性。
? 易于安装、部署和使用
SQL Server 2000的安装向导可帮助用户方便地实现各种方式的安装,如网络远程安装、多实例安装、升级安装和无人职守安装等。SQL Server 2000还提供了一些管理开发工具,使用户可以快速开发应用程序。
? 数据仓库功能
企业在正常的业务运作过程中需要收集各种数据[7],包含企业的动态历史记记录,数据仓库的目的是合并和组织这些数据,以便可对其进行分析并用来支持业务决策。数据仓库是一种高级、复杂的技术。Microsoft SQL Server 2000提供的强大工具,可帮助您完成创建、使用和维护数据仓库的任务。如:数据转换服务、复制、Analysis Services、English Query。和单词拼写有问题等。
2.4 本章小结
本章主要介绍了学生信息管理系统开发的整个运行环境,包括硬件开发环境和软件开发环境,对它们各自的配置都有了想换的介绍,从整体上明确了整个系统开发所以来的环境。之后对当代所流行的技术ASP.NET有了详细的介绍,包括它产生的北京,它所提供的功能和一些运行特点,从大体上交代了它的概念,最重要的是对ASP.NET技术的新特性作了总的概括和说明,指出了ASP.NET区别于
10
以往技术的新的特点,是这章的一个亮点,使得人们对ASP.NET技术的优越性有了更进一步的了解和加深。
3系统分析
3.1 系统功能描述
当用户进入系统主界面后,就可以对如图3-1所示的各个模块进行操作。
用户可以通过搜索引擎模块快速地查询到符合条件的学生信息。当管理员登录系统后,可以对学生的信息和班级的信息进行管理操作。用户可以通过留言簿模块发布和浏览用户的留言信息。在学生详细资料模块中,用户可以浏览到此学生的详细信息。在每月之星列表模块中,可以查看每月之星的详细的信息。在选课报名模块中,用户可以进行选修课报名报名。
搜索引擎 信息管理 留言簿 学生基础资料列表 每月之星列表 报名系统 主界面 符合 条件 的学生信 息 浏览、发布信息 选修课报名 学生详细系资料 班级信息管理 图3-1系统流程图
学生信息管理
3.2 系统功能模块划分
根据系统功能描述[8],可以把系统划分为以下几个:搜索引擎、信息管理、、留言簿、学生基础资料列表、每月之星列表和考试报名模块6个部分。一下是对各个模块进行描述。
11
● 搜索引擎模块
在学生信息管理系统中,共在两处应用到了搜索引擎,第一处是在首页中添加了搜索引擎,此处的搜索引擎没有权限设置,所有用户皆可以使用此搜索引擎查询学生的基础信息。第二处搜索引擎是学生信息管理界面中,此搜索引擎需要管理者登录后才可以使用。 ● 信息管理模块
信息管理模块需要管理员登录后才可以实现操作,内容包括学生信息管理和班级信息管理。
学生信息管理模块必须在用户登录后操作。学生信息管理模块分为:学生信息的录入、学生信息的修改和学生信息的删除三个部分,下面具体介绍各部分的内容。
·学生信息的录入:在此录入学生的学号、姓名、性别、出生年月、联系方式等信息。当一个学生的信息录入完毕并提交数据库后,会自动进入下一个学生信息的录入界面,并且学号自动加一,这样可以减轻信息录入人员的工作,也避免了错误的发生。数据提交时,若学号与数据库中的记录有重复,则不能完成数据提交。
·学生信息的修改:若要修改学生信息,首先要使用查询功能查询出要修改的数据,然后对其中的信息进行修改,但学号信息不允许修改。
·学生信息的删除:首先查询出符合条件的学生信息,然后进行删除操作。 班级信息管理模块可以对班级的信息进行添加或删除操作。班级信息的改变会直接影响学生信息的查询的结果,此模块必须由合法用户登录后才可以进行操作。
● 留言板模块
留言板模块不同于论坛系统提供的发表意见的场所,它只是一个留言簿,所有用户可以在此发言,所以不需要用户登录即可发表留言信息。 ● 学生基础资料列表模块
此模块显示在系统的首页中,可以浏览到学生的姓名、班级、职务、电话和Email信息。可以通过单击某个学生的姓名链接浏览此学生的详细信息。 ● 每月之星列表模块
12
此模块显示在系统首页中,主要显示每月之星的姓名信息,通过单击某个每月之星的姓名链接,可以浏览到此学生的详细信息。 ● 选修课报名模块
此模块显示在系统首页之中,但要用户登陆后才可以操作,学生可以通过此模块进行学校的报名。
13
3.3系统流程分析
本系统在使用时必须首先打开系统主界面,然后才可以进行各个模块的操作,图3-2展示了系统总体使用的流程
图3-2 系统总流程图
搜 索搜引索擎 引擎 管 理管员理登员录 登录 留 言留版言管簿理 管理 学生基础信息 学生基础信息 每 月每之月星之信星息 信息 选 修选课修信课息 报名 系统主界面
● 搜索引擎模块
当用户竟如系统主界面后,在搜索引擎模块中悬着“班级”信息,默认的班级信息为ALL Class,即所有班级。在“姓名”和“职务”文本框中可以输入形影的信息。这些查询条件可以全部填写,也可以只填写其中的一项或者两项。填写完毕后,单击“提交”按钮。如果数据表中有符合条件的数九,将会显示在窗口中,否则将没有数据的显示。此搜索引擎不需要用户登录即可使用,流程如图3-3所示。
14
搜索引擎 填写查询条件 执行查询 没找到 查找数据 无数据显示 找到 显示符合条件的学生信息 图3-3 搜索引擎流程图
● 管理员登录模块
管理员登录模块主要提供了管理员对班级和学生信息进行管理的功能。学生管理功能包括:信息数据的添加、信息数据的修改、信息数据的删除、信息数据的查询和信息数据的显示。这里的学生信息搜索引擎与主界面的搜索引擎略有不同,此搜索引擎在管理员登录系统后才可以使用。班级信息管理的基本功能包括:班级的添加、删除和修改。模块的功能流程图,如图3-4所示。 ● 留言簿模块
留言簿模块只要是提供了发布留言的功能。用户可以浏览已经 发布的留言信息,还可以在此发布留言信息。此功能的流程图如图3-5所示。
15
管理员登录 没 通 用户身份验证 过 通过 学生信息管理 班级信息管理 学生信息搜索引擎 添 加 学 删添修学生信息列表 生除加改 添加班级信息 信班班班息 修改学生信息 级 级级 否 信信信 息 息 息 是否存在 班级信息 是 填写学生信息数据 未通过 检验数据 重置 通过 更新数据表 返回 图3-4管理员功能流程图
16
查看留言 留言板模块 添加 未通过 填写数据
验证数据 通过 返回 图3-5 留言簿流程图
更新数据库 ● 学生信息模块
学生基础信息模块主要提供了学生详细的个人信息的资料,在系统的主界面上,用户不需要经过系统登录用户验证,就可以通过悬着学生既相互资料和每月之星的链接,浏览到此的学生的详细信息,也可以先通过搜索引擎查询到符合条件的学生,然后单击链接查询此学生的详细信息。此处的搜索引擎与图3的系统流程相同。此功能的流程,如图3-6所示。
搜索引擎 学生信息模块 学生基础资料 每月之星 单击链接 学生详细信息 图3-6学生信息模块流程图 ● 选修课报名模块 17
选课报名模块主要是给学生提供了选报本学校的各项选修课,在系统的界面上,用户需要通过系统登录用户验证,就可以通过选课报名系统进行选课。此功能的系统流程图如图3-7所示。
选课报名系统
没通过 身份验证 通过 选择科目
未通过 验证
通过 更新数据库
返回
图3-7 选课报名功能流程图 3.4 本章小结
本章主要介绍了在学生信息管理系统开发过程中的系统整体功能描述,以及其功能模块的划分,并且对该系统的流程进行分析概括其的特点,列出系统的各个模块,并画出流程图,对每个模块都进行了详细的介绍和描述其功能。
4.数据库结构设计与实现
4.1数据表的创建
该系统中共需要建立四个数据表:学生信息表、班级信息表、留言簿表和选修课程表
18
● 班级信息表 Class
首先创建班级信息表Class。此表包括两个字段:一个是班级标志Class_id字段,该字段为Class表的主键;另一个是班级的名称Class字段,数据类型为VarChar。详细描述如表4-1所示。
表4-1 Class表(班级信息)的定义
字段名 Class_id Class 数据类型 Int VarChar 长度 允许为空 是否为主键 4 50 否 是 是 否 说明 班级唯一标识 班级名称 ● 学生信息表Stu
然后创建学生信息表Stu。此表包括的字段很多,详细描述如表4-2所示。其中Student_id是此表的主键,Stu_level字段来区分用户的权限。
表4-2 Stu表(学生信息)的定义
字段名 Student_id Name Age Sex Login PassWork Stu_level business Class_id Email Work_ph Home_ph Mobile_ph Address 数据类型 长度 允许为空 是否为主键 Int VarChar VarChar Char Varchar Varchar Int Varchar Int Varchar Varchar Varchar Varchar Varchar 4 50 50 2 50 50 4 30 4 50 50 50 50 50 否 否 是 是 否 否 是 是 是 是 是 是 是 是 是 否 否 否 否 否 否 否 否 否 否 否 否 否 说明 学生唯一标识 姓名 年龄 性别 注册帐号 用户密码 用户级别 职务 班级ID Email地址 工作电话 家庭电话 移动电话 家庭地址 19
Super
Int 4 是 否 优秀学生 ● 留言簿信息表Info
创建留言簿信息表Info。此表中存储了留言簿中所有的数据,所有字段如表4-3所示
表4-3 Info表(留言簿信息)的定义
字段名 Title Name Letter 数据类型 Varchar VarChar Varchar 长度 50 50 300 允许为空 是否为主键 否 否 是 否 否 否 说明 标题 发言人 留言信息 ● 选修课课程表Course
最后我们来创建选修课程表Course,此表中存储了学校的选修课的名称,任课教师和学分, 所有字段如表4-4所示
表4-4 Course表(选修课信息)的定义
字段名 Num Course Teacher Credits 数据类型 Int Varchar Varchar Int 长度 4 50 50 4 允许为空 是否为主键 否 否 否 否 否 否 否 否 说明 课程编号 课程名称 教师名称 学分 4.2 数据库逻辑结构设计
在学生信息管理系统中,只涉及到三个数据表的操作,其中Stu表与Class表之间友相关联的字段Class_id,且Stu表和Class表为一对多的关系(在Stubiao中有多条数据与Class表中的一条数据对应),所以要在SQL Server中设置两表的关联,关系图如图4-1所示。
20
图4-1 关系图
上面介绍了在SQL Server中建立关系图的方法,整个系统数据表的关系图,如图4-2所示。
图4-2 整体关系图
4.3 本章小结
本章主要介绍了在学生信息管理系统开发过程中的数据可结构的设计于实现阶段。信息安全的核心就是数据库的安全,可见数据库设计的好坏关系到整个系统的运行。首先在本章的开始介绍了在学生信息管理系统中需要创建的表,并
21
对每个表都进行了说明和概括,列出了每个表的定义结构。每个表都指出了要定义了的而字段名,数据类型,长度,是否为主键和它的有关说明。接着介绍了数据库的逻辑结构设计,指出了逻辑结构设计阶段的任务和逻辑结构设计要进行的步骤。总的来说,使得自己对数据库的设计发面有了更加明确的认识和更好的掌握。
22
5. 界面设计
5.1 系统首页
首页是系统的窗口,通常显示的信息最多、结构也最复杂。在首页上需要有“用户登录”模块、“搜索引擎”模块、“学生基础信息资料”,“每月之星”和“课程设置”模块。此搜索引擎没有权限设置,所以用户皆可使用。具体结构排列如图5-1所示。
图5-1 首页界面
5.2 学生详细信息界面
在首页中单击“学生基础信息资料”列表中的一个学生姓名的链接,或单击“每月之星”列表中的一个学生姓名链接,可打开“学生详细信息”界面。在此界面中,学生的详细信息被显示出来,如图5-2所示。
23
图5-2 班级信息管理界面
5.3 用户登录后界面
在主页中的“用户登录”模块中,输入用户的账号和密码,然后单击“登录”按钮,经系统验证可以显示“学生管理”和“班级管理”的链接,如图5-3所示。
图5-3 “用户登录”模块
5.4 班级信息管理界面
单击“班级管理”链接,进入“班级信息管理”界面。在此界面中要列出班级信息,并且要有“创建新数据”和“编辑”班级信息的链接,使管理员可以对班级信息进行管理。此界面如图5-4所示。
24
图5-4 班级信息管理界面
此界面中,可以通过单击“创建新数据”或“编辑”链接对班级信息进行维护。在界面中只需要输人班级的信息,然后单击“创建”或“更新”或“删除”按钮就可以实现对班级信息的不同操作。添加班级信息的界面如图5-5所示,编辑班级信息的界面如图5-6所示。
25
图5-5 添加班级信息
图5-6 编辑班级信息
5.5 学生信息管理界面
在“用户登录”模块中,单击“学生管理”链接,打开学生信息管理界面。在此界面中,需要添加一个搜索引擎,以方便管理员搜索学生。在此的搜索引擎
26
与主界面中的搜索引擎的权限有些不同:主界面中的搜索引擎所有用户皆可使用,而这个搜索引擎只有管理员登录才可以使用,如图5-7所示。
图5-7 学生信息管理界面
在学生信息管理界面中,单击“添加学生”或“编辑”链接,可以打开学生信息编辑界面。在此界面中可以编辑学生的信息,界面设计图5-8所示。
图5-8 学生信息编辑界面
27
5.6 信息留言模块
单击首页上方的“信息留言”链接,可以进入信息留言界面。在此界面的上方,显示学生的留言信息,下面为信息添加框,在这里学生可以输入留言信息。界面结构如图5-9所示
图5-9 信息留言界面
5.7 选课模块
单击首页上方的“课程设置”链接,可以进入选课界面,在此界面上可以看到选修课的科目,老师以及学分等信息。界面结构如图5-10所示。
28
图5-10 选课界面
5.8 代码实现
根据前面的设计方案,给出相应的重要的代码实现。
下面的代码中首先定义了一个数据连接的全局变量,然后建立了一个
DataSet数据集,最后用SqlDataAdapter方法与数据库建立了数据库连接。 Public SqlConnection Connection; Public DataSet FillDataSet(string sSQL) {
DataSet ds=new DataSet();
SqlDataAdapter command=new SqlDataAdapter(sSQL, Connection); Return ds; }
下面的代码用于向数据集中填充数据,并返回该数据集。
Public int FillDataSet(string sSQL, ref DataSet ds)
29
{
SqlDataAdapter command=new SqlDataAdapter(sSQL, Connection); Return command.Fill(ds,”Table”); }
下面的程序中定义了数据库查询,并将字符串数据结果返回的方法。在此用
select语句查询数据,然后创建了一个SqlCommand对象执行此SQL语句,接下来用ExecuteReader方法获取数据。
string sSQL = \SqlCommand command = new SqlCommand(sSQL, Connection); SqlDataReader
reader=command.ExecuteReader(CommandBehavior.SingleRow); string sReturn;
下面的代码中设置了装载与关闭主页面时执行的事件。在Page_Load中,是
页面装载时所发生的事件,并与CCUtility类文件进行链接。在Page_Unload事件中,关闭了与CCUtility类的链接,并与数据库断开连接。 protected void Page_Load(object sender, EventArgs e) {
Utility=new CCUtility(this); if
(Session[\
!=
null
&&
Int16.Parse(Session[\Login_logged = true;
//如果初次装载页面,执行Page_Show if (!IsPostBack) {
30
AdminList_Title.Visible = false; AdminStu_Title.Visible = false; AdminClass_Title.Visible = false; Page_Show(sender, e); } }
protected void Page_Unload(object sender, EventArgs e) {
if(Utility!=null) Utility.DBClose(); }
下面的代码用于将数据和Repeater控件绑定。
void EmpMonth_Bind() {
EmpMonth_Repeater.DataSource = EmpMonth_CreateDataSource(); EmpMonth_Repeater.DataBind(); }
以班级信息管理为例,下面的代码为插入新记录事件。在此代码中,首先查
询出最大的ID值,将此ID值加1,然后将新添加的信息插入到数据表中。 sql=\
SqlCommand comm = new SqlCommand(sql, Utility.Connection); SqlDataReader myReader;
myReader = comm.ExecuteReader();
31
while (myReader.Read()) {
rs += myReader[0].ToString(); }
sSQL = \+ \
myReader.Close();
SqlCommand cmd = new SqlCommand(sSQL, Utility.Connection);
以班级信息管理为例,下面的代码为更新记录事件。在此应用了Update语
句更新数据表中的数据,修改数据不需要返回数据库,所以在此应用了ExecuteNonQuery()方法执行此更新语句。 sWhere
=
sWhere
+
\
+
CCUtility.ToSQL(p_cl_class_id.Value,CCUtility.FIELD_TYPE_Number); sSQL
=
\
class
set
\
+\
+CCUtility.ToSQL(Utility.GetParam(\t) ;
sSQL = sSQL + \
SqlCommand cmd = new SqlCommand(sSQL, Utility.Connection);
以班级信息管理为例,下面的代码为删除记录事件。在此执行Delete语句,
将符合条件的信息删除。
sWhere+=\CCUtility.FIELD_TYPE_Number);
string sSQL = \SqlCommand cmd = new SqlCommand(sSQL, Utility.Connection);
32
5.9 本章小结
本章主要介绍了在学生信息管理系统开发中的详细设计阶段以及实现过程。详细设计指出了整个系统应该怎么做的问题。介绍了系统部分功能代码的实现,给出了主页面,学生信息界面,班级信息界面,登录界面以及留言版界面的主要截图,之后对每个页面的代码进行了说明,代码的给出有利于帮助读者进行更好的理解。能对整个系统的实现有着更好的了解。通过本章的介绍,使自己对详细设计的概念以及它的步骤还有实现过程有了更加深层次的掌握,为自己的系统开发能力又有了进一步的提高,对自己以后的工作和学校又有了很大的帮助。
33
6. 总结与展望
整个学生信息管理系统的设计与实现即将接近尾声,下面我们将对整个系统的测试作一个简单的说明,以及对系统的运行和维护作一个介绍。众所周知,系统的测试、运行与维护在整个系统的开发过程中占有一个很重要的位置,它们是必不可少的。紧接着我们将谈一下该系统的未来发展前景。
6.1 学生信息管理系统的测试
系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方。
系统测试的任务是近可能彻底的检查出程序中的错误,提高软件系统的可靠性[10],其目的是检验系统\做得怎样?\。这阶段又可分为三个步骤:模块测试,,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。
系统测试是将已经确认的软件产品、计算机硬件、外设、网络等其他元素结合在一起[11],进行系统的各种安装测试、功能测试、确认测试等相结合的综合测测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案。
[9]
6.2 学生信息管理系统的调试、运行与维护
在经过系统测试后,如果开发的系统中的程序已经没有错误,模块测试和组装测试都良好,系统与用户需求相匹配,那将进入系统的调试运行阶段。运行成功后最后将进入最重要的一个和环节,系统的维护阶段。系统维护是为了清除系统运行中发生的故障和错误,软、硬件维护人员要对系统进行必要的修改与完善;为了使系统适应用户环境的变化,满足新提出的需要,也要对原系统做些局部的更新,这些工作称为系统维护。
34
系统维护的任务是改正软件系统在使用过程中发现的隐含错误,扩充在使用过程中用户提出的新的功能及性能要求,其目的是维护软件系统的\正常运作\。这阶段的文档是软件问题报告和软件修改报告,它记录发现软件错误的情况以及修改软件的过程。
6.3 学生信息管理系统的展望
随着现代社会日新月异的发展,尤其是当代网络已经成为人们必不可少的工具时,通过互联网来了解信息成为最主要的选择。学生信息管理系统的出现可以帮助广大院校通过计算机和网络来更好的管理学生的信息。在学校中用计算机管理学生档案的意义:现在我国的学校中档案的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。而且随着技术的进一步更新,学生信息管理系统还将有更大的发展空间,它的功能将大大扩充,不仅仅只局限于学生班级信息的查询编辑,前途不可限量。
6.4 本章小结
在本章主要介绍了系统开发过程中的最后的阶段——系统的测试,运行与维护。最后说明了学生信息管理系统的未来发展前景,分析了它的将来发展趋势,指出了该系统的良好的可行性和发展性,具有现实意义。总的来说,通过本章的内容,使自己对系统的测试、运行与维护有了更好的了解和掌握,明白了其重要性,为以后的开发工作奠定了基础。对自己的知识水平的提高有了更好的帮助。
35
总结
在本系统的开发过程中,由于本人是初次开发软件,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对学生管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。
尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。相信本学生管理系统是一套学校在日常管理中必不可少的管理软件,通过开发这个系统,我掌握了的项本过程,了解了的基本知识巩固了我对ASP.NET的学习,但在这次毕业设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。
36
正在阅读:
计算机科学与技术专业实践论文106-25
第四版人民币801天蓝冠号全分析07-01
顽强的野花作文450字06-19
食品检验工(中级)试题精选(2)答案05-12
四年级下一至八单元作文10-22
高中生物新课标2考试真题考点汇总03-08
AQ2001-2004 炼铁安全规程06-03
税务会计工作总结(精选多篇)09-28
小型企业考勤管理系统 毕业论文06-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 实践
- 计算机
- 科学
- 论文
- 专业
- 技术
- 2013中考全国100份试卷分类汇编:三角形相似 - 图文
- 第2章餐饮食品中常见的危害因素及其预防控制
- 关于印发《常州市市级机关差旅费管理暂行办法》的通知
- 计算机四级网络工程师题库及答案(12套)电子版
- 农业综合开发高标准农田建设项目《施工组织设计》(详细型)
- 建设工程项目经理岗位职业资质管理导则
- 危险化学品产品生产许可证实施细则(涂料产品部分) - 图文
- 中国灯芯绒行业行业市场发展预测及投资战略咨询报告(目录) -
- 元明清文学教案
- 新农合医疗及分级诊疗解读
- 2012版化学最新3年高考2年模拟(实验设计与评价 综合性实验) -
- 九年级思想政治第一学期复习试题(五)
- 2017年册会计师网络继续教育考试题库补充2
- 2013(秋季)计算机基础习题集答案
- NVR的SKD二次开发接口文档
- 2017-2018年人教版五年级下册语文教学计划及进度表(标准排版)
- 初一英语期中考复习提纲Unit1
- 化学与生活论文 - 绿色化学
- 安粮蓝海折页文案
- 2014年初级经济师考试《经济基础知识》考前测试试题及答案13