1、随着信息技术在管理上越来越深入而广泛的应用摘 要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。目前,在学校里,随着高校规模的不断扩大和招生人数的不断增加,需要处理大量的学生数据信息。如何更好的组织学生信息,更加快捷的管理学生信息显得更为重要。作为计算机应用的一部分,使用计算机对学生信息进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储性高、存储量大、保密性好、寿命长。成本低等。这些优点能够
2、极大的提高学生信息管理的效率,也是学校科学化、正规化管理,与世界接轨的重要条件。我们就为此开发了一套学生信息管理系统,面向学校的教务人员,目的是为学校办公管理提供一个快速、简单规范的管理平台,使学院在学生信息管理方面更加规范化快速化。关键词学生信息;信息管理系统;C#.NET应用目 录摘 要 I第1章 绪论 11.1 课题背景 11.2 课题目标 11.3 本章小节 2第2章 开发工具介绍 32.1 开发工具选择 32.2 开发工具介绍 32.2.1 Microsoft Visual Studio 2005中文版 32.2.2 C# 42.2.3 Microsoft Sqlserver2000
3、 52.3 本章小节 7第3章 数据库设计 83.1 Microsoft Sqlserver2000数据库建立过程 83.2 表结构实现 83.2.1 学生成绩表 83.2.2 学生信息表 93.2.3 班级表 93.2.4 课程表 103.2.5 用户表 103.3 本章小节 10第4章 系统设计 114.1 流程处理及系统层次模块图 114.1.1 系统流程处理 114.1.2 系统层次模块图 114.2 系统的功能简介 114.2.1 项目规划 114.2.2 登陆模块 124.2.3 系统维护模块 124.2.4 学生信息管理模块 124.2.5 学生成绩管理模块 124.2.6 帮助
4、信息模块 134.3 系统详细设计 134.3.1 登陆模块 134.3.2 系统主界面 134.3.3 权限管理模块 144.3.4 新生录入界面 144.3.4 学生成绩录入模块 154.4 本章小结 16结 论 17参考文献 18致 谢 19第1章 绪论1.1 课题背景随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。目前,在学校里,随着高校规模的不断扩大和招生人数的不断增加,需要处理大量的学生数据信息。如何更好的组
5、织学生信息,更加快捷的管理学生信息显得更为重要。作为计算机应用的一部分,使用计算机对学生信息进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储性高、存储量大、保密性好、寿命长。成本低等。这些优点能够极大的提高学生信息管理的效率,也是学校科学化、正规化管理,与世界接轨的重要条件。我们就为此开发了一套学生信息管理系统,面向学校的教务人员,目的是为学校办公管理提供一个快速、简单规范的管理平台,使学院在学生信息管理方面更加规范化快速化。1.2 课题目标本学生信息管理系统可以说是一个综合性的学校学生管理系统,它提供了一个信息更新快捷、管理方便、功能设施合理的学生信息管理解决
6、方案。针对学校大量的学生信息,就学生管理的几个方面,提供了一个交互式的学生信息管理平台。本系统目标如下:(1)通过学生信息管理系统的实现,使学校的学生信息管理更加科学化。(2)提供灵活方便的操作。(3)节约学生信息管理的成本,提高学校管理的效率。(4)对系统提供必要的权限管理。(5)为学校考核学生的综合素质提供必要的数据支持。1.3 本章小节本章介绍了学生信息管理系统的开发背景,和开发目的。并对背景、目的做了简单的介绍。使读者了解本系统的开发前提。第2章 开发工具介绍2.1 开发工具选择由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较
7、适合于采用数据库管理。且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。本系统的设计是在Windows XP中文版操作系统环境下,使用Microsoft Visual Studio 2005中文版开发成功的。数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,本系统选用的数据库语言采用了Micr
8、osoft Sqlserver2000数据库。2.2 开发工具介绍2.2.1 Microsoft Visual Studio 2005中文版Visual Studio.NET提供统一的跨语言开发环境,可以用来开发Web应用系统、控制台应用系统等。另外,还可以使用.NET开发Web服务。简单而言,利用Web服务,可以把使用不同开发语言、不同对象类型,并且在不同的操作上实现的应用程序集成在一起,并将其转换成更容易发布和实用的Web程序。Visual Studio.NET支持多种开发语言,包括C+、C#、Visual Basic.NET以及Jscript.NET,这些语言都可以在Visual Stu
9、dio.NET这个集成环境下开发。开发程序时,如果使用符合通用语言规范(Common Language Specification)的开发语言,那么所开发的程序将可以在任何有通用语言开发环境(Common Language Runtime)的操作系统下执行,包括Windows95/98、Windows CE、WindowsNT/2000/XP等。.NET集成开发环境Visual Studio.NET是开发.NET应用的利器,秉承了Microsoft IDE一贯的易用性,功能非常强大。2.2.2 C# C#是一种安全的、稳定的、简单的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大
10、功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。并且C#成为ECMA与ISO标准规范。C#看似基于C+写成,但又融入其它语言如Delphi、Java、VB等。在本文中,我将考察创建一种新计算机语言的一般动机,并将特别指明是什么原因导致了C#的出现.然后我将介绍C#和它与Java,c,c+的相似之处.其次我将讨论一些存在于Java和C#之间的高层次的,和基础的差别.我将以衡量在用多种语言开发大型应用程序的时候所需的知识(
11、或者对这种知识的缺乏程度)来结束本文,而这正是.NET和C#的一个主要战略.目前,C#和.NET还只能以C#语言规则,以及Windows 2000的一个d预览版本,还有MSDN上迅速增多的文档集子的形式获得(还没有最终定型). 微软c#语言定义主要是从C和C+继承而来的,而且语言中的许多元素也反映了这一点.C#在设计者从C+继承的可选选项方面比Java要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,不可能挤垮Java.C#还需要进化成一种开发者能够接受和采用的语言.而微软当前为它的这种新语言大造声势也是值得注意的.目前大家的反应是:这是对Jav
12、a的反击. C#更象Java一些,虽然微软在这个问题上保持沉默.这也是意料中的事情,我觉得,因为Java近来很成功而使用Java的公司都报告说它们在生产效率上比C+获得了提高.C#还具有以下特点:1、类:在C#中类的申明与Java很相似.这是合理的因为经验告诉我们Java模型工作得很好.Java的关键字import已经被替换成using,它起到了同样的作用.一个类开始执行的起点是静态方法Main().2、编译:程序直接编译成标准的二进制可执行形式.但C#的源程序并不是被编译成二进制可执行形式,而是一中中间语言,类似于JAVA字节码。如果前面的Hello World程序被保存成一个文本文件并被命
13、名为Hello.cs,它将被编译成命名Hello.exe的可执行程序.3、结构体:一个C#的结构体与C+的结构体是相似的,因为它能够包含数据声明和方法.但是,不象C+,C#结构体与类是不同的而且不支持继承.但是,与Java相同的是,一个结构体可以实现接口.4、预编译:C#中存在预编译指令支持条件编译,警告,错误报告和编译行控制.5、中间代码:微软在用户选择何时MSIL应该编译成机器码的时候是留了很大的余地.微软公司很小心的声称MSIL不是解释性的,而是被编译成了机器码.它也明白许多-如果不是大多数的话-程序员认为Java程序要不可避免的比C编写的任何东西都要慢.而这种实现方式决定了基于MSIL
14、的程序(指的是用C#,Visual Basic,Managed C+-C+的一个符合CLS的版本-等语言编写的程序)将在性能上超过解释性的Java代码.当然,这一点还需要得到事实证明,因为C#和其他生成MSIL的编译器还没有发布.但是Java JIT编译器的普遍存在使得Java和C#在性能上相对相同.象C#是编译语言而Java是解释性的,之类的声明只是商业技巧.Java的中间代码和MSIL都是中间的汇编形式的语言,它们在运行时或其它的时候被编译成机器代码.2.2.3 Microsoft Sqlserver2000Microsoft Sqlserver2000在很多地方得到广泛使用,例如小型企业
15、,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB应用程序这些应用程序都利用ASP技术在Internet Information Services运行.它的使用方便程度和强大的设计工具为初级程序员提供许多功能。不过,这种便于使用可能使人误解。这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员。因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。一些专业的应用程序开发人员使用 sqlserver2000 用作快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透个网
16、络存取数据的话,sqlserver2000的可扩放性并不高因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如 Oracle、DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB,或者Filemaker。无论如何,不少sqlserver2000的功能(表单,报告,序列和VB代码)可以用作其他数据库的后期应用,包括 JET(档案为主的数据库引擎,Sqlserver2000 缺省使用)、Microsoft SQL Server、Oracle和任何
17、其他跟ODBC兼容的产品。这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经在适当的位置牺牲发展。同时它还具有一些非常便利的好处,如下:1、进入从程序员视角在它的有关兼容性有SQL-质问可能被观看并且作为SQL语句编辑,并且SQL语句直接在巨视和VBA模里可以被使用操作进入桌子。用户可能混合并且使用两个VBA并且宏编程形式和逻辑既没提供面向对象的可能性。2、导入导出报表的生成程序,当时有能力和到这项任务的复杂报告创造,没有另一受欢迎数据库报表程序的生成程序充满特色和强有力-水晶报告。MSDE(微软公司SQL服务器桌面发动机)2000,袖珍版本的MSSQL服务器2000
18、,被包括开发版的办公室XP并且被用于进入可能作为除之外的另一种选择JET数据库引擎。(尽快的*版本的MSDE和微软公司交换服务器实际上使用这台喷气发动机处理巨大大量数据并且安置一“赝品”在它之上的那些应用的应用层。大约这事实的缺乏知识因进入/喷口家庭的软件产品而为不该受不敬做贡献,特别是关于大工程。)3、进入分割和粘贴功能性能使它有用工具在其他数据库之间连结(例如,在数据或者数据库变换期间的Oracle和微软公司SQL服务器)。进入与给与窗子和其他平台应用一起的积分的各种各样进口和退场门特征一起来,一经请求从应用的里面或者手工由用户其中几可以被执行。例如非常紧密SNP完全格式化的为分享的形式与
19、没有全部的进入软件的人们报告。它也能容易被升级到微软公司SQL服务器。4、与一般的RDBMS完全不同,它缺乏数据库触发和预存程序。自从MS Sqlserver2000 (Jet 4.0),开发人员可以在查询中设定参数,这跟预存程序很相似的,但这些“预存程序”只能处理一个程序当资料表内数据发生变化时,它确实允许形式包含被引发的代码,使用是普通的透过查询和其他技术在进入营运储存的程序在方面RDBMS支援这些的。2.3 本章小节本章介绍了本系统开发所用到的开发工具和开发语言。包括Microsoft Visual Studio 2005中文版、Microsoft Sqlserver2000这两种工具和
20、C#语言编写。并介绍了这3种工具。第3章 数据库设计3.1 Microsoft Sqlserver2000数据库建立过程(1)首先打开Microsoft Sqlserver2000,用鼠标左键单击右边新建文件中的“空数据库”按钮,然后会弹出对话框提示新数据库的保存位置,将数据库保存在C盘根目录,同时命名数据库为“stumessage”。(2)在弹出的 “stumessage:数据库”对话框中点击“新建”、“数据表视图”。(3)在弹出的表中依次输入字段等信息。 (4)输入完成后,点击关闭。会弹出提示框提示是否保存,点击“是”。会弹出表命名对话框。提示更改表名。输入表名,点击确定。(5)弹出对话框
21、提示主键未创建,单击确定,进行主键的设置。(6)退出表创建界面,返回“stumessage:数据库”对话框。(7)依次创建其他系统索需要的表。3.2 表结构实现根据系统功能设计的要求以及功能模块的划分,对于系统用户信息数据库,可以列出一下数据库和数据结构:3.2.1 学生成绩表表名称标识:Grade表。数据来源:学生成绩录入模块进行录入。表3-1 学生成绩表字段名字段类型长度字段值约束对应中文名SnoVarchar20null课程号CnoVarchar20Not null学号GradeVarchar20null成绩CentVarchar20null学分3.2.2 学生信息表 表名称标识:Stu
22、dent表。数据来源:新生信息录入模块进行录入。如下表3-2表3-2 学生信息表字段名字段类型长度字段值约束对应中文名SnoVarchar20Not null学号ClassVarchar20Not null姓名SnameVarchar20Not null班级3.2.3 课程表表名称标识:course表。数据来源:课程管理模块进行录入。表3-4 课程表字段名字段类型长度字段值约束对应中文名CnoVarchar20Not null课程号CnameVarchar20Not null课程名TermVarchar20Not null学号CentVarchar20Not null学分3.2.4 用户表表名
23、称标识:login表。数据来源:权限管理模块进行录入。表3-5 用户表字段名字段类型长度字段值约束对应中文名idVarchar20Not null用户名pwdVarchar20Not null密码3.3 本章小节本章介绍了学生信息管理系统的数据库的构成、关系结构。并介绍了建立数据库的具体步骤。和各个表的具体建表内容。第4章 系统设计4.1 流程处理及系统层次模块图4.1.1 系统流程处理本系统的基本流程是:用户登陆主界面选择各子系统4.1.2 系统层次模块图“学生信息管理系统”主要分为登陆、新生信息录入、学生信息查询、更新学生信息、学生成绩录入、学生成绩查询、权限管理、密码管理、班级管理、课程
24、管理等10个模块。系统主要功能树如下图所示:图4-1 系统层次模块图4.2 系统的功能简介4.2.1 项目规划学生信息管理系统是一个典型的数据库应用程序,由登陆模块、系统维护模块、学生信息管理模块、学生成绩管理模块、帮助信息模块等模块组成。规划如下:4.2.2 登陆模块输入用户的名称和密码,如果用户名、密码正确,进入学生管理系统主界面;否则给出错误信息提示。4.2.3 系统维护模块该模块主要分4个子模块,分别如下:1、权限管理子模块:系统管理员进行用户权限设置和初始密码的设置。2、密码修改子模块:登录系统用户可以随时修改自己的密码,保证密码的有效性保密性。3、班级管理子模块:在新学期开始或每学
25、期中间需要开设的课程可以在本模块进行班级的设置和维护。4、课程设置子模块:在每学期开始需要进行本学期需要开设的课程的设置。在某一课程发生变动时可以进行课程的维护,包括修改课程的名称、学分等,也可以删除某一课程。4.2.4 学生信息管理模块该模块主要分4个子模块,分别如下:1、学生信息录入子模块:在每学期的开始或中间可以进行学生信息的录入,包括学生的基本信息等。2、学生信息查询子模块:方便教务管理人员快速的查找某一学生。该查询模块分为按照学生的姓名进行查找和按学生的所在班级进行查找,利于管理人员随时掌握学生信息。3、更新学生信息子模块:及爱物管理人员可以随时更改学生的某信息,包括学生姓名、身份证
26、号等信息的更改。4.2.5 学生成绩管理模块该模块主要分2个子模块,分别如下:1、学生成绩录入子模块:按照学生考试的时间和课程录入学生的考试成绩。2、学生筹集查询子模块:方便教务管理人员快速地某一学生的成绩。该查询模块分为按照学生的姓名进行查找和按照学生的所在班级名进行查找,有利于管理人员随时掌握学生考试的信息。4.2.6 帮助信息模块显示系统的开发版本和系统说明信息。4.3 系统详细设计4.3.1 登陆模块本界面的主要功能是为了对系统进行安全性管理,本系统的用户名和密码保存在USE表中,本系统根据不同的用户而设置了不同的权限。图4-2 登陆模块4.3.2 系统主界面本模块是本系统的应用界面,
27、在本界面上集成了本系统的所有功能,共有8个功能菜单和15个子菜单(功能模块),从而实现了本系统从专业管理、班级管理、学生管理、课程管理、成绩管理和用户管理等系统的具体功能,同时,在系统管理模块中可以完成对本系统的安全性管理。图4-3 系统主界面4.3.3 权限管理模块 权限管理模块负责长歌系统的安全性,只能增加新的用户而不能修改、删除用户,这样保证了系统的恶意操作、误删除等情况出现。该模块从对话框中取得新的用户名和密码以及相应的职务,写入到数据库的Syuser表中。具体界面如下图4-4所示:图4-4 权限管理模块4.3.4 新生录入界面 功能:新生录入模块负责登录用户录入学生信息,包括必须录入
28、的学生姓名、所在班级、入学日期等信息。然后更新到数据库StuMagSys的class表中。输入:学生姓名、性别、年龄、出生日期、民族、政治面貌、专业、班级、家庭住址和联系方式等信息。处理:1、 新生信息录入窗体启动。2、 在数据库StuMagSys的calss表中检索班级信息,并显示在窗体的Calss控件内。3、 用户输入新生信息,检验输入是否完整,并核对是否符合标准,如果不符合提示用户错误信息。4、 如果检验通过,在数据库StuMagSys内的class表内根据用户输入的班级信息查找想对应的班级号。以便于进行sutent表中的数据插入。5、 在数据库中查找输入的学生姓名和班级,如果存在该信息
29、,则表明输入重复,给出提示信息。6、 否则,把用户输入要添加的学生信息录入到数据库SutMagSys内的sutdent表中,给出成功的提示信息。具体功能如下图4-5所示:图4-5 新生录入界面4.3.4 学生成绩录入模块 功能:用户输入要添加的学生成绩信息,包括学生姓名、所在专业、所在班级、考试课程、考试成绩、考试时间,录入到数据库的student_course表中。输入:学生姓名、所在专业、所在班级、考试课程、考试成绩、考试学期。处理:1、 学生成绩录入窗体启动。2、 在数据库StuMagSys的class表中检索班级信息,并显示在窗体上。在StuMagSys表中的course表中检索课程信
30、息,并显示在窗体上。3、 用户录入学生成绩信息,包括学生姓名、所在装也、所在班级、考试课程、考试成绩、考试学期等信息。4、 在数据库StuMagSys表内的class表内根据用户输入的班级名称查找相对应的班级号Class_id。以便于进行sutdent表中的数据输入。5、 把用户输入要添加的考试信息,包括学生姓名、所在专业、所在班级、考试课程、考试成绩和考试学期录入到数据库StuMagSys内的student_course表中如果录入成功,则给出成功信息,否则给出时报的信息。输出:对成绩表student_course进行记录修改。图4-6 学生成绩录入模块4.4 本章小结本章主要介绍了学生信息
31、管理系统的登陆界面的界面设计和主要代码设设计,以及系统主界面的界面设计和主要代码的代码设计。结 论在本系统的开发过程中,由于本人是初次开发软件,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对学生管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。虽然网络在学生管理系统中的应用不是很多,但是未来的发展方向,在本次开发过程由于硬件的限制,未能实现网络功能,因此在以后的系统更新过程中可能会造成一些不必要的数据损失。尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。相信本学生管理系统是一套学校在日常管理中必不可少的管理软件,通
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1