11.概述1.1课题背景随着科学技术的发展,计算机已被广泛的用于社会的各个领域,成为推动社会发展的技术动力。而在计算机应用中,软件的作用十分突出,软件已经发展成为信息技术的核心,主导着信息产品的开发和信息技术市场的进一步的开拓。软件产业已成为社会信息化进程中的一个战略性产业。在软件技术的应用中,软件的开发技术尤其是应用型软件产品的开发技术成了重中之重。不断开发适应用户需求、市场需要的新型软件产品迫在眉睫。随着社会的发展,软件也在不断的更新换代。计算机领域不断取得的新研究成果使计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在工业方面而且在日常生活中也越来越离不开计算机。尤其是在学校里,要处理大量的学生数据。在数字化的今天,使用学生管理系统能使学校对学生数据的管理更加简单、到位,可大大的减轻管理人员的负担,实现高效办公。1.2学生管理系统分析学生管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要。为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成为必然。开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时,准确地获取需要的信息,充分发挥人员的工作潜力。正是咨询业的迅速发展使得人们从过去的手工劳动中得以解脱。同时,编写一套完善的学生管理系统的任务就显得尤为重要。本系统是参照我们学校的实际情况而设计的一套针对性和功能都比较强的学生管理系统。本学生管理系统可实现学生基本信息、成绩信息等的录入、修改、查询、和删除。1.3目的及意义这次的课程设计是在学习完《数据库原理》基础上进行的一次系统性的训练,既是对所学知识的巩固,也是对自己综合运用所学知识解决实际问题的一次锻炼。学生管理系统的主要目的是为了方便学校对学生的信息进行录入、修改、查询,提高学校的工作效率。这一系统的开发成功,解决了手写速度慢、容易出错的现状。无论是在学籍管理、成绩管理等方面都可以帮助学校最迅速最准确的完2成所需的工作,还是在适用性、灵活性和易操作性方面都显示出了它的强大功能。1.4可行性分析对于学生管理信息的可行性分析,可以从以下几个方面来进行考虑:(1)资源可行性分析在目前状况下,只需要一台个人电脑,安装了MicrosoftSQLServer数据库管理软件就有了开发条件,在此基础上,任何一个人都可以充当人力资源中的一员,有了开发环境和人力资源后就可以进行学生管理系统数据库的设计。(2)工具可行性分析在当前环境下,MicrosoftSQLServer数据库软件技术已经开发得相当成熟了,可以运用该工具来实现学生管理系统的相关功能。(3)效益可行性分析由于该学生管理系统只是一个很小的管理系统,在很多方面都有限制,还有许多需要完善的地方,使用性较差,不具备较高的经济效益,仅供练习使用。1.5开发设计思想本系统的开发尽量采用目前学校现有的软、硬件环境以及先进的系统开发方案,从而达到充分利用学校现有资源,提高系统开发水平和应用效果的目的。所开发的系统应符合学校学生管理系统的规定,满足学校对学生管理的需要,并达到操作过程中的直观、方便、实用、安全等要求。所开发的系统应该满足模块化程序设计方案,这样即便于系统功能的各种组合和修改,也便于未参与开发的技术维护人员的补充和维护。系统应具备数据库维护功能,能够及时根据用户需求进行数据的添加、删除、修改和查询等操作。2.系统目标和建设原则2.1系统设计目标本学生管理系统的设计应该尽量达到以下目标:(1)保证各方信息交互的畅通和正确;(2)保证软件的安全、可靠、简便性;(3)保证软件的相对实用性;3(4)利用信息数据的管理,提高工作效率及质量,提高组织、服务的管理水平;(5)为实现信息化的学生管理提供经验。2.2系统设计原则本学生管理系统应该尽量遵循以下设计原则:(1)简单性:在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一个学生管理系统来说是非常重要的。(2)实用性:程序应可以满足所有用户的基本需求,具有良好的实用性。(3)针对性:该系统平台针对某一个学校建立一个数据库来管理学生信息,所以具有专业突出和很强的针对性。3.支撑环境规划3.1设计思路概要本系统开发的任务是实现学生管理的信息化、系统化、规范化。目的是开发一个具有添加、查询、修改、删除等功能比较强大的数据库管理系统。通过熟悉开发环境和数据库系统,本系统前台开发工具采用可视化编程工具VisualStudio,后台数据库采用MicrosoftSQLServer2000数据库。3.2软件支撑环境及开发工具3.2.1软件支撑环境操作系统:Windowsxp数据库管理系统:MicrosoftSQLServer20003.2.2VisualStudio2005简介VisualStudio2005(以下简称VS2005)是美国微软公司推出的最新开发工具,该版本工具的新功能体现在对ASP.NET2.0、CLR2.0、VS.NET与C#.NET语言上的强化,提供更好的执行效能,并更加注重安全性等方面。VS2005是一套完整的开发工具集,用于生成ASP.NETWeb应用程序、XMLWebServices、桌面应用程序和移动应用程序。VisualStudio、VisualC++、VisualC#和VisualJ#全都使用相同的集成开发环境(IDE),利用此IDE可以共享工具4且有助于使用混合语言创建解决方案。另外,这些语言利用了VS.NETFramework的功能,通过此框架可使用简化ASPWeb应用程序和XMLWebServices开发的关键技术。3.2.3数据库及MicrosoftSQLServer2000简介随着计算机技术的飞速发展,数据库技术由一开始的简单数据存储发展到存储、关联、限制、安全管理及人工智能为一体的完整技术。与以前的dBase,Foxbase等数据库相比,现在的数据库管理系统诸如:Access,DB/2,SyBase,SQLServer,Oracle等,在功能、安全、及易用性等方面都有了质的飞跃。数据库系统的发展经历了层次模型数据库、网状模型数据库和关系模型数据库三个大的发展阶段。现在大量使用的是关系模型数据库。目前数据库的发展方向是面向对象的数据库系统。随着计算机网络的迅速发展,也大量的使用了基于客户/服务器分布计算模型下的数据库系统。数据库根据结构可以分为文件型数据库和C/S型数据库。SQLServer是一个关系数据库管理系统,它最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发的于1988年推出了第一个OS/2版本在WindowsNT推出后Microsoft与Sybase在SQLServer的开发上就分道扬镳了Microsoft将SQLServer移植到WindowsNT系统上专注于开发推广SQLServer的WindowsNT版本Sybase则较专注于SQLServer在UNIX操作系统上的应用在本书中介绍的是MicrosoftSQLServer以后简称为SQLServer或MSSQLServer。4.需求分析4.1需求详述(1)系统需要能够对不同的用户给出不同的权限,比如系统管理员只有对用户的管理权限,它可以增、删、改用户;学生可以查询个人信息、查询个人成绩;学生可以修改自己的密码,系统管理员也可以修改其余用户的密码。(2)系统运行在Windows平台上,要求有一个较好的图形用户界面,操作要求简单。5(3)系统应该有很好的可扩展性,以便学校根据实际情况添加新的功能。4.2功能需求本学生管理系统需要完成的功能有用户管理、班级管理和成绩管理三个部分。(1)用户管理该功能用于管理使用该系统的用户,以及模块按权限进行分配,从而为系统提供一定的安全性。使用这个系统的用户主要包括2种:一是系统管理员,只有对用户的管理权限,它可以增、删、改用户;一是学生,主要是查询个人信息、修改个人密码、查询个人成绩;系统管理员也可以修改其余用户的密码。(2)班级管理添加、修改、删除和查询班级信息。(3)成绩管理添加、修改、删除和查询成绩信息,并可以制作成绩报表。4.3数据需求通过分析,总结出本系统对数据的需求如下:(1)用户信息包括:用户名、用户密码(2)学生基本信息包括:学号、姓名、性别、出生日期、籍贯、专业、班号(3)学生基本成绩信息包括:学号、姓名、班号、大学英语、网络营销、电子商务概论、采购管理、体育5.数据库结构设计数据库设计的任务是确定系统所需的数据库。数据库是表的集合,通常一个系统只需一个数据库。物理设计就是具体确定表的结构,包括字段名、字段类型及宽度,需要的索引等。5.1物理结构设计根据对需求分析得到的数据结构进行分析,按数据输入输出的要求,确定表和表间的关系,并进行验证、调整、修改、完善,使其能够实现用户对数据和功6能的要求。本系统根据分析确定系统要设置如下表(1)学生基本信息表,字段包括:学号、姓名、性别、出生日期、籍贯、专业、班号。学号为主键、主索引,为班级编号建立索引,通过该索引和班级基本表建立关联。表名:Student结构:列名数据类型长度精度备注姓名varchar100不为空学号varchar130不为空性别char20出生年月datatime80籍贯varchar120专业varchar120班号varchar120(2)学生成绩信息表,字段包括:学号、姓名、班号、大学英语、网络营销、电子商务概论、采购管理、体育。表名:score结构:列名数据类型长度精度备注姓名varchar130不为空学号varchar120不为空班号varchar120大学英语char100网络营销char100电子商务概论char100采购管理char100体育char100(3)用户信息基本表,字段包括:用户名、用户密码、角色。表名:users7结构:列名数据类型长度精度备注管理员int40学生Varchar200密码Varchar200角色char206.运用设计6.1数据字典设计名称:用户(Useres)说明:登录系统备注:只用于登录名称:学生(Student)说明:学生基本信息备注:本系统的前台使用者,学号不能相同名称:学生成绩信息表(score)说明:学生成绩的基本信息备注:本系统的前台使用者,学号不能相同7.系统的具体实现7.1本系统的简要说明本系统主要是针对学生的基本信息以及成绩管理,根据以上功能性需求分类可知,该系统的流程主要描述的是对学生基本信息和主修课程的成绩录入。该系统的适用对象包括学生和管理员。因此包括2个基本的流程。87.2管理员登录如图7.1所示为系统的登录页面,也就是系统的入口。管理员首先输入用户名和密码,然后选择用户类型进入。图7.1系统的登录页面7.3管理员录入信息管理员的操作流程:管理员登录系统后,进入学生的基本信息的页面,对学生的课程进行新增、修改、删除、查询的操作(如图7.2-7.4);然后进入学生成绩的页面,对学生的基本信息进行添加、修改、删除的操作(如图7.5)。登录模块管理员模块学生用户模块9图7.2新增学生信息图7.3修改和删除学生信息10图7.4查询学生信息图7.5添加、修改、删除、查询学生成绩117.4学生查询信息学生的操作流程:学生根据学生的学号和密码登录系统,初始化的密码由管理员提供(如图7.6)。学生登录系统后,可以修改个人密码、查看个人信息和个人课程成绩。(如图7.7)图7.6学生登录图7.7学生查询信息界面12结论因为这次是要设计一个学生管理系统,需要有用户进行交互的接口,所以界面是必不可少的。用什么来做界面呢?在选择编程软件和数据库软件时,我们踌躇了好一阵,在图书馆里也查找了很多资料,C#没学过、VC++也没有学过、JAVA不会,最后自己感觉时间比较紧,来不及再重新学习新的编程环境或是换个数据库软件,最后还是选择了VisualStudio2005和SQLServer,虽然VS编程、设计界面并不难,要访问数据库我们还是第一次尝试,而且最近对VS编程的书籍看了很多了解了也很多,于是便借了基本关于VS数据库编程的参考书辅助完成这次的设计