当前位置:文档之家› 学生选课系统的设计与实现

学生选课系统的设计与实现

学生选课系统的设计与实现
学生选课系统的设计与实现

防灾科技学院

毕业设计

题目学生选课系统的设计与实现

学生姓名涂语楠学号0630132

系别灾害信息工程系专业信息管理与信息系统班级07302

开题时间2011 年1 月1 日答辩时间2011年06月11日指导教师白灵职称讲师

学生选课系统的设计与实现

作者:涂语楠

指导老师:白灵

摘要:随着我校大学生人数的不断增加,使得教务管理系统的数据量也不断上涨。为了减轻教务处的教务管理工作,以及方便学生选择自己所喜欢的科目。学生选课系统针对这一环节,实现教学资源实体与学生两个集合的协调统一,规避课程分配冲突,更加有效衔接教学管理系统的各子系统的关系。本系统是一个典型的信息管理系统,其开发主要包括后台数据库的建立和维护,以及客户端程序的开发两个方面。

本文通过分析客户端/服务器结构的特点并结合选课的实际情况,提出了基于客户端/服务器结构选课系统的基本设计思想,简要介绍了系统需求分析和系统的功能设计、ACCESS数据库设计、C#程序设计及系统实现过程。重点描述了如何利用C#以及ACCESS数据库管理系统相结合的方法来开发基于客户端的选课系统。并在试运行的基础上对系统进一步完善提出了改进方案。通过该系统,使学生可以方便地在局域网内的计算机上安装客户端进行选课。

关键词:学生选课,客户端/服务器结构,C#,ACCESS数据库管理系统

The Design and Implementation of Student Select Course System

Author:TU Yu-nan

Instructor:BAI Ling

Abstract: With the increasing number of college students, the amount of data continue to rise greatly in educational system. In order to reduce the work of office of Academic Affairs , and make each student to better select their own favorite subjects ,this paper designs a student select course system.Elective for students in this part of the system achieve a credit system management entity-based teaching resources and student correspondence. The system is a typical information management system, which mainly includes the establishment and maintenance of back-end database, and the client development.

This analyzes the C/S architecture combined with the characteristics of the actual situation of course selection which is proposed based on C/S architecture,a brief description of the system functional requirements analysis ,and system design, database design, https://www.doczj.com/doc/927258997.html, design and system implementation process. How to use https://www.doczj.com/doc/927258997.html, and the database management system develop client-based enrollment system is the focuse. And on the basis of the trial operation of the system,the proposed improvements are further improved. Students can easily install it on a computer within the LAN client courses.

Key words: Student Select Coure System, C/S, C #, Access DBMS

目录

引言 (1)

1.概述 (2)

1.1课题背景 (2)

1.2课题目标 (3)

1.3课题意义 (3)

2.需求分析 (4)

2.1需求分析 (4)

2.2系统分析 (4)

2.2.1通用功能 (5)

2.2.2用户具有的功能 (5)

2.3系统结构 (6)

3.相关技术背景 (8)

3.1V ISUAL S TUDIO 2008T EAM S YSTEM开发工具 (8)

3.2A CCESS数据库 (8)

3.3C#开发语言 (10)

3.4MD5加密算法 (11)

4.系统总体设计 (12)

4.1功能模块简介 (12)

4.2面向对象分析 (13)

5.系统详细设计 (16)

5.1数据库设计 (16)

5.2数据库逻辑设计 (16)

5.3数据物理设计 (17)

6.系统实现 (19)

6.1客户端登录界面实现 (19)

6.2主界面的实现及权限管理 (19)

6.3学生信息管理的实现 (20)

6.4课程管理的实现 (20)

6.5学生选课信息管理的实现 (21)

6.6个人信息的实现 (22)

6.7系统用户管理的实现 (23)

6.9找回密码的实现 (24)

结论 (26)

致谢 (27)

参考文献 (28)

附录 (30)

引言

在信息发展全球化,网络化的今天,校园局域网已成为每所高校所必备的信息基础设施,各种管理信息系统凭借于校园局域网应运而生。在各大高校的教务系统管理过程中,课程表的编排是一项非常复杂的工作。在排课的过程中,除了必须满足大量的制约条件以外,还需要解决很多冲突与矛盾,例如:两位老师不能同一个时间在同一间教室上课,一位教师不能在同一个时间上两门课等等。利用计算机的辅助进行课程表编排工作,不但可以提高排课工作的科学性,还大大减轻了管理人员工作的强度,提高工作效率,使得学校教务管理迈上了一个新的台阶。现在,我国的高等教育事业正在蓬勃发展,高等学校的规模不断的扩大,在此,高等学校的教学改革也在全面的推行,学分制在各大高校全面启动。所谓学分制就是允许学生在计划的指导下,根据自己的条件、能力、兴趣,有选择的支配自己的学习时间和内容。因此,学生选课管理成为了推行实施学分制管理的重要任务。由于学生选课时的制约条件较多、较复杂,工作量也比较大,而且往往需要在很短的时间内完成,因此运用计算机辅助选课,即能实时地检验和统计大量的选课数据,又能十分方便地输出选课结果,同时也避免了在人工处理时产生的错误。

学生选课系统是以数据库作为后台,数据库从60年代初发展起来到今天,经过了四十多来年的发展,数据库技术己经逐渐成熟。就数据库应用来说,呈现了多样化的空间,例如数字图书馆、电子出版物、电子商务、远程教育系统等,给数据库技术的发展提出了更多、更高的要求。

本文引言部分主要介绍了学生选课的背景,第一章概述,介绍学生选课系统的背景,做这个设计的目标以及意义;第二章介绍该选课系统的需求分析,系统分析和系统结构;第三章主要介绍了系统设计相关的背景,主要包括Visual Studio 2008 Team System开发工具、Access数据库、C#开发语言;第四章系统总体设计的介绍,主要是各模块功能的简介,和面向对象分析;第五章是数据库的详细设计,具体介绍了数据库的设计,物理设计和逻辑设计;第六章是系统各个功能的实现,详细介绍了各个模块实现的功能;论文最后是结论、致谢及参考文献。

1.概述

1.1课题背景

二十一世纪是科学技术竞争与民族素质竞争的时代,其本质就是人才与教育的竞争。教育的历史让我们知道,教育的每次重大改革和发展都与科学技术息息相关,科学技术是第一生产力,也是发展教育的重要动力。随着科学技术的不断进步,计算机科学技术日渐成熟,计算机在各个领域所扮演的角色越来越重要。很长时间以来,人们都在用人工的方式来管理文件档案,这种管理方式存在着很多的缺点,例如:效率低,保密性差,除此之外时间一长,将有大量的文件和数据产生,这对于查询、更新和维护都带来了很大的困难。选课信息管理系统作为计算机应用的一个部分,其优点是手工管理所无法比拟的,例如:查询方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点是学校的科学化、正规化管理的重要条件。

选课管理系统属于教学信息管理系统的一个部分。随着高等教育的发展与社会需求,各大高校尽可能多地开设各类课程,使得学生的知识面得到拓展,塑造学生的个性,培养了学生的创造能力,使学生的综合素质有所提高。但是而传统的手工选课方式非常的烦琐与复杂,由学校统一发布可选课程表,让学生事先了解可选的课程和各班选课报名的时间,然后按规定的时间到指定的地方去报名。这种方式存在着明显弊病。主要是:许多学生一起去报名,十分拥挤,很难组织;由于各班选课报名时间不同,排在后面的各班的学生常常选不到理想的课程。传统的选课方式已经不适应现代教务教学的改革和发展,迫切需要一种新的选课方式。为使教学管理工作的科学化、规范化,就必须采用计算机辅助管理。计算机管理使选课更加高效准确,省去了大量的人力劳动,提高了教学管理的信息化水平。因此,学生选课是一项非常重要的工作,主要负责对整个学校学生的选课进行管理,除此之外,还需对学生信息及课程信息进行维护,对学生所选课程的考试成绩进行记录,学生选课是实现高校学分制的一个重要环节。随着学校硬件水平的提高、信息化进程的加快,教务工作急切希望能够抛开原有繁琐的管理方式,希望能够根据学校现状的实际需求开发一套能够系统化、科学、有效、易于掌握的管理软件。

现在学院已经基本实现了网络化管理,各部门已有了计算机,原来的计算机管理系统可以实现简单的信息管理,现在需要一个学生选课管理平台。为了切实解决课程管理中存在的诸多问题,提高教务管理的水平和质量,使学院选课的管理更加规范,经过几个月的努力,我设计开发了防灾科技学院选课系统。此系统基本上实现了一些选课相关的功能。

1.2课题目标

该选课系统的主要目的是实现学生选择课程的公平性和方便性,让他们可以在学校内任一安装客户端的机器上查询课程,选择课程,删除课程;对于课程管理员,可以通过登陆客户端添加、修改、查询、删除课程信息;对于学生管理员,可以通过登陆客户端添加、修改、查询、删除学生信息;对于教学管理部门,能够实现学生信息的管理,对课程信息的管理,以及对这个系统的维护。

1.3课题意义

选课系统是学校不可或缺的一个部分,它的内容对于学校来说都是非常的重要,所以选课管理系统应该能够为学生用户提供大量的课程信息,方便学生快速的查询。

随着科学技术的不断进步,计算机科学也在不断地成熟,其强大的功能已经被人们所深刻的认识,它已经深入到人类社会的各个领域并在这些领域里发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是教学的科学化、正规化管理,与世界接轨的重要条件。

开发此系统无论是从课题的研究上还是从技术方面考虑都是很有必要的。本课题的研究开发可以解决以往传统效率低、工作繁琐的人工管理选课方式,省去了大量的人力劳动,并且方便更有效的、更合理的完成教务人员对选课管理的效率。技术运用上也有利于加快学校信息化建设的步伐。实现教育的现代化、科技化,从而提高教学管理的信息化水平。

2.需求分析

2.1需求分析

选课系统需求满足来自三方面的需求,这三个方面分别是学生、管理员和超级用户。学生的需求是查询院系的课程、学生选课情况及学生信息的修改;管理员的功能比较复杂,其中包含三种:学生管理员、课程管理员和管理员;超级用户主要是系统状态的查看、维护。

学生可以直接查看选课情况,学生可以根据自己的学号和密码登录学生选课系统,还可以修改查询个人相关的部分信息。一般情况下,学生只能查询和修改自己所选课程的情况还有个人信息,若需要查询和修改其他学生的选课以及成绩查询,就需要知道其他学生的学号和密码。这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。

管理员分为学生管理员,课程管理员和管理员。学生管理员可根据学校学生的学号,增加学生用户,给新的学生用户建立新的用户名和密码,学生可以通过学生管理员提供的用户名和密码进行登录操作,学生管理员还可以对没有进行选课的学生进行删除操作,数据安全性和保密性要求最高;课程管理员是对课程进行操作,课程的增加、删除,根据学校的规定,安排选课的课时、学分、开课的时间都是由课程管理员执行的;管理员除了能操作学生管理员和课程管理员所有的内容,还能添加、删除学生管理员和课程管理员。

超级用户拥有最高权限,是用来系统初步实施的,在此系统中,超级用户可以管理系统中的所有用户,所有操作。

本系统的主要功能是完成我校教务管理对学生选课的功能。实现学生在客户端上进行独自的选课,学生能根据自己的意愿来选择自己感兴趣的课程。在教务管理的同时,教务处能全面的管理本学校的学生信息,学生,老师,课程以及上课的时间等。达到学生和老师都有合理的安排。

2.2 系统分析

在本系统中,有五类用户:超级用户、管理员、学生管理员、课程管理员、学生用户。五种不同的用户所具有的功能。

根据要求,从功能上可以分为两个类:一个是通用功能,登录、个人信息管理、切换用户、找回密码、系统帮助和退出是所有用户都具有的功能;另一种是为不同用户定制不

同功能。

2.2.1 通用功能

1、登录功能

登录功能是验证登录的用户信息,不同的用户在验证登录信息后,进入主界面会有不同的操作内容。

2、个人信息管理

个人信息管理是用来查询、修改用户的信息。

3、切换用户

切换用户功能是用户登录主界面后,需要切换到其他的用户时使用。

4、找回密码

找回密码是用户忘记自己的登录密码,可以通过找回密码设置的问题,找回自己的登录密码。

5、系统帮助

系统帮助是用户在不了解系统的使用方法时,可以查看系统帮助。

6、退出

在用户使用完学生选课系统后,不在进行其他的操作,选择退出即可退出选课系统界面。

2.2.2 用户具有的功能

1.超级用户主要用来系统的初步实施时使用,登录后具有系统所有的功能:

1)学生管理:可以添加、修改、查询、删除学生信息。

2)课程管理:可以添加、修改、查询、删除课程信息。

3)学生选课管理:可以为学生选课及查询、删除学生的选课信息。

4)系统用户管理:可以增加及删除管理员、学生管理员、课程管理员用户。

2.管理员用户登录后,可以进行学生管理、课程管理、系统用户管理。

1)学生管理:可以添加、修改、查询、删除学生信息。

2)课程管理:可以添加、修改、查询、删除课程信息。

3)系统用户管理:可以增加及删除学生管理员、课程管理员用户。

3.学生管理员用户登录后,可以进行学生管理。

1)学生管理:可以添加、修改、查询、删除学生信息。

4.课程管理员用户登录后,可以进行课程管理。

1)课程管理:可以添加、修改、查询、删除课程信息。

5.学生用户登录后,可以进行选课管理。

1)选课管理:可以选择各个学期开设的课程,查看自己所有已经选上的课程,删除已选课程。

2.3系统结构

本系统应用Visual Studio 2008 Team System开发工具,使用ACCESS作为数据库。

系统采用的是基于客户端的三层C/S(Client/Server,客户端/服务器)结构,它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问到新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。即界面层、业务逻辑层和数据处理层。界面层是一个建立在windows平台上应用程序界面;数据处理层包含访问后台数据库,提供后台数据库支持,同时包括与数据存储的接口。

第一层为界面层,客户机为校园网上的任何一台计算机,没有特殊要求,只需具有windows平台即可。学生通过客户端查看相关的选课信息,并进行选课操作。客户端把学生的数据交给业务实体实例化,再将实例化的对象交给业务接口。

第二层为业务逻辑层,业务逻辑层是封装商业逻辑,提供校验、逻辑实现,处理业务逻辑,实现业务逻辑处理方法,处理逻辑后交给数据层(调用数据接口)处理数据。

第三层为数据层,数据最终处理的地方,首先定义数据加工处理方法(调用数据工厂) ,处理数据加工方式,实现数据加工处理方法,加工后交给数据服务层提交数据库,常用的SqlHelper.cs 。

选用这样的结构模型主要出于以下几方面的考虑:

1. C/S模式一般都建立在专用的网络上,小范围的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务,一般面向相对固定的用户群,对信息安全的控制能力很强,一般高度机密的信息系统采用C/S 结构较为适宜,而仅通过C/S发布部分可公开信息,程序更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。

2.应用服务器运行数据负荷较轻,最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序,二者可分别称为前台程序与后台程序。一旦服务器

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

3.数据的储存管理功能比较透明,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的。对于工作在前台程序上的最终用户是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序并不是非常“瘦小”,并没有将麻烦的事情都交给了服务器和网络。在C/S体系下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。

3.相关技术背景

3.1 Visual Studio 2008 Team System开发工具

微软公司推出Visual Studio开发环境可以用来创建Windows 操作平台下的Windows 应用程序和网络应用程序,同时网络服务、智能设备应用程序和 Office 插件也可以用Visual Studio来创建。目前,windows操作平台应用程序开发环境要数Visual Studio最流行。

Microsoft Visual Studio 2008是为Windows Vista、Office 2007、Web 2.0或更高发展的下一代开发工具,代号“Orcas”。 VS2008中推出超过250种新功能,融合了对象、关系型数据、XML的访问方式,更加简洁了语言。使用Visual Studio 2008可以高效开发Windows应用。设计器中的变更可以实时的反映出来,XAML中智能感知功能使得开发效率得以提高。同时Visual Studio 2008支持项目模板、调试器和部署程序。Visual Studio 2008可以高效开发Web应用,集成了AJAX 1.0,包含AJAX项目模板,它还可以高效开发Office应用和Mobile应用。

Visual Studio 2008 提供了高级的开发工具、调试功能、数据库功能和创新功能,有助于在各种平台上迅速的建立一个当前最先进的应用程序。

Visual Studio 2008 包含了各种增强功能,例如可视化设计器(使用 .NET Framework 3.5 加速开发)、大幅改善Web 开发工具,以及能够加速开发和处理所有类型数据的语言增强功能。Visual Studio 2008提供了所有相关的工具和框架支持为开发人员使用,引人注目的、令人印象深刻的帮助创建,并且支持 AJAX 的 Web 应用程序。

利用这些大量的客户端和服务器端框架的优势,开发人员能够轻松的构建以客户为中心的 Web 应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问 ASP .NET应用程序服务和 Microsoft 平台。

Visual Studio 2008 提供了帮助开发团队改进协作的扩展的和改善的服务项目,包括帮助将数据库专业人员和图形设计人员加入到开发流程的工具。

3.2 Access数据库

Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了

表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。

Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料都能够被Access所存取。熟练的软件设计者或者资料分析者利用Access来开发应用软件,而一些不熟练的程序员和非程序员的“进阶用户”同样能使用Access来开发简单的应用软件。Access不能成为一种完整的面向对象开发工具,因为它只支持部份面向对象(OO)技术。

Microsoft Access在很多地方得到广泛的应用,例如小型企业,大公司的部门,或者开发人员利用它来制作处理数据的桌面系统。简单的WEB应用程序也常用来它来开发。这些应用程序主要使用ASP技术在Internet Information Services运行,较为复杂的WEB应用程序则使用PHP/MySQL或者ASP/Microsoft SQL Server。

Access为初级程序员的使用方便程度和强大的设计工具提供了很多功能。不过,这种易于使用可能使人产生误解。这样的开发者基本上都是没有在应用或者数据设计方面经过训练的办公室工作人员。因此,很多人认为这样的开发人员能够创建一个可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。

Access 用作快速应用开发被一些较为专业的应用程序开发者使用,尤其是给街道上的推销员制作一个早型或单独应用程序的工具。但是,如果是通过网络访问数据的话,Access 的访问可扩放性并不高。因此当使用者较多使用此程序时,他们往往选择倾向于一些客户端-服务器为主的方案,例如 Oracle、DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB,或者Filemaker。在任何情况下,数据库的后期应用很多使用Access 的功能(表单,报告,序列和VB 代码),例如 JET(档案为主的数据库引擎,Access 缺省使用)、Microsoft SQL Server、Oracle和任何其他跟ODBC兼容的产品。

对本开发系统选用Access2000作为后台数据库。数据库在信息管理系统中有着相当重要的地位,作为信息管理系统的后台,数据库存储着所有的信息,而数据库的设计直接影响到整个系统运行的效率。良好的数据库设计,可以有效提高数据信息的存储,从而保证数据信息的完整性和一致性。

美国Microsoft公司于1994年推出的Access管理系统。它具有界面友好、易于

系统。其主要特点如下:

(1) 各种数据库对象得到了完善的管理,具有强大的数据组织、用户管理、安全检查等功能。

(2)数据处理能力极其强大,在网络环境下的一个工作组级别,使用Access开发的多用户数据库管理系统具有传统的XBASE(DBASE、FoxBASE的统称)数据库系统所无法实现的客户端服务器(Cient/Server)结构和相应的数据库安全机制,Access具备了许多先进的大型数据库管理系统所具备的特征,如事务处理/出错回滚能力等。

(3)可以方便地生成各种数据对象,利用存储的数据建立窗体和报表,可视性好。

(4)作为Office套件的一部分,可以与Office集成,实现无缝连接。

(5)能够利用Web检索和发布数据,实现与Internet的连接。 Access主要适用于中小型应用系统,或作为客户机/服务器系统中的客户端数据库。

3.3 C#开发语言

C#(C Sharp)是微软(Microsoft)为.NET Framework量身订做的程序语言,C#拥有C/C++的强大功能以及Visual Basic简易使用的特性,是第一个组件导向(Component-oriented)的程序语言,和C++与Java一样亦为对象导向(object-oriented)程序语言微软c#语言的定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说structs),它还增加了自己新的特点(比方说源代码版本定义)。但它还太不成熟, C#还需要进化成一种开发者能够接受和采用的语言。

类是C#从JAVA继承而来的特点,在C#中类的申明与Java很相似。这是因为Java模型工作得很好。C#的关键字import已经被替换成using,它起到了同样的作用。一个类开始执行的起点是静态Main()方法。

C#从C和C++继承而来的两个特点:一个是编译,一个是结构体。编译,程序直接编译成标准的二进制可执行形式。例如一个Hello World程序被保存成一个文本文件并被命名为Hello.cs,它将被编译成命名Hello.exe的可执行程序;结构体,一个C#的结构体与C++的结构体是相似的,因为它能够包含数据声明和方法。但是,不象C++,C#结构体与类是不同的而且不支持继承。但是。与Java相同的是,一个结构体可以实现界面。

C#最引人入胜的地方是它和Java的不同,而不是相似的地方。C#拥有比C,C++或者Java更广泛的数据类型。这些类型是bool,byte,ubyte,short,ushort,int,

uint,long,ulong,float,double和decimal。象Java一样,所有这些类型都有一个固定的大小。又象C和C++一样,每个数据类型都有有符号和无符号两种类型。与Java相同的是,一个字符变量包含的是一个16位的Unicode字符。C#新的数据类型是decimal数据类型,对于货币数据,它能存放28位10进制数字。

C#对Windows程序最大的优点可能就是它与COM的无缝集成了,COM就是微软的Win32组件技术。实际上,最终有可能在任何.NET语言里编写COM客户和服务器端。C#编写的类可以子类化一个已存在的COM组件;生成的类也能被作为一个COM组件使用,然后又能使用,比方说,JScript语言子类化它从而得到第三个COM组件。这种现象的结果是导致了一个运行环境的产生,在这个环境里的组件是网络服务,可用任何.NET语言子类化。

3.4 MD5加密算法

MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),它是由MD2、MD3和MD4发展而来得一种单向加密算法,也就是哈希(HASH)算法,是由国际著名的公钥加密算法标准RSA的第一设计者R.Rivest于上世纪90年代初开发出来的。

加密算法一般有两种,即单向加密算法和双向加密算法。双向加密是加密算法中最常用的,它将可以直接理解的明文数据加密为不可直接理解的密文数据,在需要的时候,又可以使用一定的算法将这些加密以后的密文数据解密为原来的明文数据,双向加密适合于隐秘通讯。

双向加密既可以加密,又可以解密。而单向加密则刚好相反,它只能对明文数据进行加密,而不能对加密了的密文数据再解密成原来的明文数。在实际应用中,对软件系统数据库中的系统用户信息(如用户密码)以及银行账号信息(如银行账号密码)加密,例如:当用户注册一个新的账号或者使用银行账号时,这些绝密信息不是直接保存到数据库,而是经过单向加密后再保存,这样,及时这些绝密信息被泄露,别人也不能得到相应的明文数据,当然也就达不到盗窃账号的目的。

MD5算法就是单向加密的加密算法。它有两个很重要的特征,第一是任意两段明文数据,加密以后的密文数据一定不是相同的;第二是任意一段明文数据,经过加密以后,其密文数据永远是相同的。

由于MD5算法的可靠性,已经被广泛应用于项目实践中。经过许多程序员的努力,MD5算法已经被各种语言实现,.asp,.php,.java ,c,c#,vb,vc++,delphi等语言。

4.系统总体设计

4.1功能模块简介

在前面的系统的系统功能分析中,将系统划分成9个模块,如下图4.1所示。

图4.1 系统模块结构图

用户登录模块验证用户名和密码,并根据不同的用户类型,进行不同的操作。设置学生信息管理模块是提供给学生管理员增加、修改、删除学生信息。课程管理模块提供给课程管理员,用来增加、修改、删除选课信息。学生选课模块提供给学生用户,用来查询或者删除自己已选的课程。个人信息管理模块提供给学生用户,编辑学生自己的个人信息。用户管理模块用于用户超级管理员,可以对用户管理员经行增加、删除。系统帮助模块包括查看系统帮助信息。找回密码功能是对学生用户在忘记密码是找回密码。

4.2面向对象分析

根据上面的分析,将模块结构图转换成系统用例图如下图4.2所示。

图4.2 系统Use Case图

1.系统中包含的类。

系统中的类从系统包含的人员及事物开始。学生选课系统中包括对人员有:超级用户、管理员、课程管理员、学生管理员、学生用户。这些人员可以统称为“系统用户”,即系统中应该有一个“系统用户”类。

系统包含的事物有:学生、课程。同时学生也是一类系统用户。学生和课程是系统用户的操作对象。因此,系统还应包含“学生”类及“课程”类。

2.定义类的属性。

“系统用户”类主要用于系统登录及系统各个功能的使用,因此应该包含“用户名”和“密码”属性;系统中共有5种类型用户,因此,添加“用户角色”记录用户的类型。

“学生”类包括“学号”,“姓名”,“性别”,“年龄”,“所在系”。

“课程”类包括“课程编号”,“课程名”,“学分”,“开课学期”,“总学时”。

3.定义类的方法。

初步定义的各个类的方法,各个类都包含添加、删除、修改、获取信息等常规操作,系统用户如若是“超级用户”或“学生用户”的话,还可以进行“选课”及“取消选课”操作。

4.建立类之间的关系。

“学生”和“课程”类为“系统用户”类的操作对象,因此,“学生”和“课程”对象的存在依赖于“系统用户”,同样,“系统用户”本身也可以操作“系统用户”,对用户进行添加、修改、删除等操作,因此本身也是一种依赖关系。“学生”和“课程”之间存在一定的关联。

在分析阶段中,系统用户和个人信息之间存在着组合关系,学生和系统用户之间存在着聚合关系。由于在实际实现时,系统将所有的数据存储关系数据库中,现在不一定非要在系统用户和个人信息两个类之间保持组合关系,而只需要在个人信息类中保持其所属用户名就可以了;学生和系统用户类也不用保持聚合关系,学生是一类特殊的系统用户,只需在用户表中保持学生用户的一份拷贝即可,令学号的值为用户名。专业和班级,班级和学生,以及音乐类别和音乐之间的关系也是如此。

系统用户在添加一个新的用户的时候要首先判断是否此用户已经添加过,因此,添加“判断某个用户是否存在”方法。

系统用户的密码在存储的时候为了安全起见需进行加密处理,因此,添加“加密密码”方法,密码采用MD5哈希算法进行加密,MD5是一种单向加密算法,即能加密但不能进行解密操作。

添加某种机制令用户忘了密码的时候可以重新设置密码。机制规则:用户首次登录时提示用户输入一些信息,以后在忘记密码时,通过回答这些信息找回密码;若用户首次登录时没有输入这些信息,可以在以后的时候过程中在输入。因此,“系统用户”类需添加属性“是否首次登录”,添加额外的“个人信息”类记录这些额外的信息。

当添加一名学生时,需要判断这名学生是否已经添加过,因此,添加“是否已经存在”方法判断一个学生是否已经添加过。

当删除一名学生时,需要保证该名学生没有选过课,然后再进行删除操作,因此,添加“是否选过课”方法。

获取学生信息时,有时需要获取全部学生信息,有时需要按照条件获取部分学生的信息,添加“获取全部学生信息”和“获取部分学生信息”。

当添加一门课程时,需要判断这门课程是否已经添加过,因此,增加“是否已经存在”方法判断一门课程是否已经添加过。

当删除一门课程时,需要保证此课程没有学生选择,然后再进行删除操作,因此,增加“是否被选过”方法。

获取课程信息时,有时需要获取全部课程信息,有时需要按照条件获取部分课程的信

将对数据库的操作封装成一个类,其他的类对数据库的操作通过此类进行。将上述关系建立一个类图如下图2.3所示。

图4.3 系统类图

选课系统的设计与实现

防灾科技学院 实习报告书 防灾科技学院灾害信息工程系 2015年制

实习所用软件简介: 系统的搭建平台选用的操作系统是Windows XP:Microsoft Windows XP是微软公司推出供个人电脑使用的操作系统,包括商用及家用的台式电脑等。2011年9月底前,Windows XP是世界上使用人数最多的操作系统,它的全球市场占有率达42%。2012年8月份,统治操作系统市场长达11年之久的Windows XP最终被Windows 7超越。 基于数据库的选课系统的数据管理所选得软件是SQL Server2008:SQL Server 2008 在Microsoft的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。SQL Server 2008 允许使用Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据。 基于https://www.doczj.com/doc/927258997.html,的选课系统开发所选的开发工具 Visual Studio 2010:Microsoft Visual Studio 2010 是微软的一个综合性的应用程序生命周期管理工具套件,可供团队用于确保从设计到部署的整个过程都能取得较高质量的结果。无论是创建新的解决方案,还是改进现有的应用程序,都能针对不断增加的平台和技术(包括云和并行计算)将梦想变成现实。 基于系统的建模选择的画图软件viso:Office Visio 2007 是一款便于IT 和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用具有专业外观的 Office Visio 2007 图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。Visio帮助创建具有专业外观的图表,以便理解、记录和分析信息、数据、系统和过程。使用 Visio 时,以可视方式传递重要信息就像打开模板、将形状拖放到绘图中以及对即将完成的工作应用主题一样轻松。

基于jsp(java)学生选课系统的设计和开发

基于jsp学生选课系统的设计 姓名 系别、专业 导师姓名、职称 完成时间

基于JSP的学生选课系统 张三 内容摘要:随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视,是一个学校不可缺少的部分, 学生选课系统就是为了管理好选课信息而设计的。学生选课系统的将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。 关键词:选课、课程信息发布、B/S、JSP

目录 第一章引言 第二章相关技术介绍 第一节Java技术 (2) 第二节Servlet技术 (3) 第三节Jsp技术 (4) 第四节开发软件介绍 (5) 4.1 eclipse平台 (5) 4.2 Tomcat服务器 (6) 4.3 SQL server 2000 (6) 第三章系统分析 第一节系统功能模块划分 (8) 第二节系统功能类别划分 (8) 第三节系统维护 (9) 3.1 课程基本资料维护 (9) 3.2 系部维护 (10) 3.3 管理员维护 (10) 第四节学生选课 (10) 4.1 课程预览 (10) 4.2 选课 (10) 4.3 退课 (11) 4.4 修改密码 (11) 第五节教师课程查询 (12) 5.1 查询课程情况 (12) 5.2 修改密码 (12) 第四章系统功能设计 第一节系统功能设计图 (13) 第二节数据库设计 (13) 第三节页面及功能设计 (14) 第五章总结

在线选课系统设计

在线选课系统设计 摘要:随着在校大学生人数的不断增加,教务系统的数据量也不断的上涨。针对学生选课这一环节,本系统从学生网上自主选课以及教师的课程发布两个大方面进行了设计,基本实现了学生的在线信息查询、选课功能以及教师对课程信息发布的管理等功能,另外也初步解决了教师在课程信息发布管理上的权限问题。本程序前台采用Dreamweaver 4.03进行页面制作,后台由SQL Server数据库支持,通过使用ASP语言实现动态网页的效果,达到对数据库的操作以完成使用者的要求。本文中除了有对程序的总体设计、详细设计、功能实现等主体部分外,在这之前还介绍了与网上选课系统相关的信息管理系统、网络编程技术、ASP编程语言、SQL Server数据库服务器等的基本内容及发展情况。 关键字:选课、课程信息发布、权限、SQL Server、ASP Abstract:with the development of the enrolling number, the data for daily education is increasing, too. This system is special for the on-line course choosing to design both from the aspect of the student and the teacher. The student can choose the course independently and the teacher can manage the information of the announcing course, also. This system is basically used for the on-line information searching, the course choosing and the announcing course managing. Besides, the power of the teacher has been well controlled. The form is made by Dreamweaver 4.03 , the data base is built by SQL Server and the active website is made by using the ASP language .This paper includes the main designing , the detail designing, the function designing and , before this , some basic knowledge and present development of the programs mentioned above. Keywords:course choosing , announcing the course information , power , SQL Server , ASP

学生选课系统设计报告

大理学院数学与计算机学院《数据库系统设计》课程设计报告 班级:2012级计算机科学与技术1班 学号:201211514 姓名:刘秀珍 系统名称:学生选课系统 总分:

实验报告内容及撰写要求: 一、需求分析 程序的主要功能描述,可以用文字、框图、用例等方式。 参考《数据库系统设计任务书》附录中的内容来进行设计报告的撰写。 主要应当包含分析的过程及分析后得到的数据流图和数据字典。 二、数据库设计 2.1 数据库概念设计 实体关系模型设计,创建分ER图和总体ER图,并描述总体E-R图合并时的问题解决。 2.2数据库的逻辑设计 根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS下(SQL SERVER 2005)的表结构,并根据规范化理论对表结构进行优化调整。 同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。 三、系统实现 3.1 数据库访问 1)数据访问类及实现代码 2)SQL语句 3.2 业务逻辑层类及代码 描述业务流程、数据处理功能的模块代码 3.3表示层的实现 可以用界面截图及其实现类及核心代码描述

四、总结

一、需求分析 1.1背景 全校性选修课开设的目的在于扩大学生的知识面、加强学生素质教育、培养复合型高级人才,具有不可替代的重要性。随着教育改革的不断深入和素质教育的加强,学分制的实施,选修课在一个学生的培养计划中占的比重将越来越大。 网上选课系统的出现使同学们能够更加自主、便捷、准确的进行选课。但是,由于一般高校中的学生都比较多,因此带来了诸多如信息管理等问题,鉴于需要将学生信息、选课信息等信息数字化以便于管理维护,我们便想到了利用数据库能够比较良好地解决此类问题,由此下面我将设计出一个学生选课系统以供参考。 1.2系统设计要求: 设计出一个学生选课数据库系统的简要要求如下: 1)设计要求 ①建立相应的数据库及相关的表、属性、约束、规则、默认等; ②输入相应的记录(每个表不少于20条记录); ③编写进行数据管理的存储过程。 2)系统用户由系统管理员、学生用户和教师用户三类组成。 (1)系统管理员的主要功能: ①用户管理(对教师、学生信息的管理和维护); ②课程管理(对课程信息的管理和维护); ③选课管理(实现选课功能开放和禁止、老师成绩输入开放和禁止)。

学生选课系统(详细设计说明书)

1引言 (2) 1.1编写目的 (2) 1.2背景 (2) 1.3定义 (2) 1.4参考资料 (2) 2程序系统的结构 (2) 3程序1 (标识符)设计说明 (3) 3.1程序描述 (12) 3.2功能 (12) 3.3性能 (12) 3.4输人项 (113) 3.5输出项 (113) 3.6 算法 (113) 3.7流程逻辑 (113) 3.8 接口 (113) 3.9存储分配 (13) 3.10注释设计 (13) 3.11限制条件 (13) 3.12测试计划 (13) 3.13尚未解决的问题 (114) 4程序2 (标识符)设计说明 (114)

详细设计说明书 1引言 1.1编写目的 为了更好的描述软件结构以及系统各组成成分之间的相互关系,因此撰写详细设计说明书。 1.2背景 a?待开发的软件系统的名称:大连交通大学学生选课系统; b ?本系统主要为方便广大学选课,避免选课高峰期选不上等问题; c.本系统的受益人为:老师、学生和系统管理人员。 1.3定义 详见概要设计说明书。 1.4参考资料 【1】张海藩,软件工程导论【M】北京:清华大学出版社2008年2月第五版 【2】王珊、萨师煊,数据库系统概论【M】北京:高等教育出版社2006年5 月第四版2程序系统的结构 该详细设计只针对学生信息管理中的信息查询和信息维护两个子功能作说明, 其程序流程图如下:

图4-2学生信息管理模块程序流程图 结束 图4-1学生信息查询模块程序流程图 Y

3程序1 (标识符)设计说明 #in clude #in clude int N1,N2,kk1,kk2,kk3; struct couse * headl; struct stude nt * head2; struct couse//课程信息结构体 { int nu ml; char name1[20]; int score; int n elepeo;//课程已选人数 int Melepeo;//课程人数上限 struct couse * n ext; }; struct stude nt//学生信息结构体 { int nu m2; char name2[20]; int nelenum[50];〃已选课程编号 int nelen;〃已选课程数量 struct stude nt * n ext; }; void Ms() { for(kk1=0;kk1<1100;kk1++) for(kk2=0;kk2<1200;kk2++) for(kk3=0;kk3<1200;kk3++); } void keyboardc()〃录入课程子函数(从键盘录入) { struct couse *p1,*p2; 2= 0; p1=p2=(struct couse*)malloc(sizeof(struct couse)); printf("课程编号\t课程名称\t学分\t课程人数上限\n"); scan f("%d%s%d%d",&p1-> num1,p1-> name1, &p1->score,&p1->Melepeo); p1- >n elepeo=0; head 仁NULL; while(p1-> nu m1!=0) { 2= N1+1; if(N1==1)head 1= p1;

网上选课系统详细设计

网上选课系统 详细设计说明书 学院:计算机科学技术学院 专业:软件工程 班级:08-2班 组长:张一帆 组员:田晓磊张雪杨景隆潘萌

1 引言 1.1编写目的 随著WWW(World Wide Web) 及Internet 的快速发展及日渐普及,学校校务行政的电脑化也迈入以网络为基础的新纪元.选课系统是大学教务系统中非常重要一环,由于牵涉到每一学生该学期的学习,加上新的课程设计中,大量的选修与更具弹性的措施,使得传统的人工作业不合时宜,半自动的语音选课亦不能满足这些新需求;网际网路的兴起,使我们有机会重新检讨选课的作业流程,以及如何运用网路其不受时空限制的特性进行选课作业流程的改善.为了提高学校教务工作的效率,更加合理的利用既有的资源,减少传统选课方式给学生带来的不便和麻烦,网上选课系统的采用被提上日程。此外,学生公寓宽带的安装使得学生能够在寝室非常方便的获取网络资源。这又为网上选课系统被广大同学接受提供了必要的资源。在以往学生常常抱怨不易找到所要资讯,以及选课期间同学因怕额满选不到理想的课,都挤在第一天选课造成塞车严重,而且若第一天有课的同学便常因抢不到理想的课而忿忿不平.此外在选课时同学们必须先查好所欲选之课程代码再来选课,为此教务处每学期要印出各系所开课表供学生查询选课资讯,即使每两人共用一册数量仍相当庞大且选课后课表便没用处,而且一旦调课或开课上的变更,无法及时异动,一方面造成纸张资源的浪费,另一方面学生即使先查好课表再去选课,也无法确定自己的课表,既不方便又费时.在预选课后教务处人员要印一次点名计分册给老师,到了加退选后因选课有异动又得再印一次最新的选课名册给任课老师,造成教务处人员的重复工作负担,对老师而言,必须仰赖教务处工作人员的处理及列印,自己无法随时掌握选课学生名单,也甚不方便.每学期到了学期末同学们最关心的成绩,必须等收到成绩单才能知道自己的成绩,若要历年成绩单也要等开学后到教务处填申请单,再去出纳组缴费过一天后才能来领取.因此,如何建立一个方便且即时的成绩管理系统,以伴随选课系统也是十分迫切的.为了建立一个方便,公平,又有效率的选课系统,我们决定规划一个植基于网际网路的网路选课系统,并实现下列几个主要的目的: (1).提升选课公平性; (2).缩短选课时间,提高效率; (3).节省课表列印经费并节省人力; (4).学生可即时上网查询单学期或历年成绩 1.2项目背景

学生选课系统详细设计说明书

学生选课系统详细设计说明书

一、编写目的 该详细设计说明书的目的在于根据需求说明书与概要设计说明书提出该系统的详细设计,即系统的详细架 构,主要包括系统的模块划分、程序系统的结构、各个 模块的流程以及各层次中每个程序的设计考虑。 二、背景 软件系统名称:学生选课系统 软件实现计算机:LENOVO 三、管理员模块程序设计说明 ①人员管理:管理员在登录之后可以对系统内的人员(包括 学生、教师等)进行管理,包括对人员的信息进行查询、修改和删除等操作。 ②课程管理:管理员在后台添加、编辑课程的基本信息(包 括授课教师、开课时间设定),同时可以编辑系统开放选课的时间,在适当时间开启和关闭选课系统。 ③系统信息管理:管理员可对系统的基本信息进行编辑,对 系统公告进行更改或者系统标题、系统相关链接等。 ④系统权限管理:对不同的用户要分配不同的权限,管理员 可设定不同人员对不同模块的访问权限,允许或者拒绝不同用户对模块的增删查改操作。 四、教师模块程序设计说明 (1)基本信息管理:此模块主要实现两个分支功能: ①个人信息修改和密码修改。在教师用户登录状态下,实现这些功能,通过对自己的注册信息的修改满足用户的个性需求,能将注册信息及时反映个人状态,另外,密码修改则是很多网站都应具备的基本功能,能有效保护用户身份和网络安全。 ②其它基功能如学生查询,教师查询和留言查询,这三个功能都是在教师在线状态下实现的。学生查询对于教师来说非常实用,如果教师想要某个学生的基本信息,只要登录查询就可以找到目标学生,此模块目的在于让老师更方便的掌握学生的基本信息以备不时之需,用以师生交流上非常方

选课系统的设计与实现

项目说明书 项目名称:学生自主选课系统项目成员: 指导老师: 提交日期:

1. 系统概述 本文档是针对开发的学生自主选课系统而编写的,文档中将会对软件系统的开发进行详细的分析,主要包括几大方面:系统的功能实现、系统的运行环境、数据库的描述与设计的各个阶段等等。 1.1 系统开发目标 本系统是学生自主选课系统。随着各大高校的扩招及信息化社会的到来,学校为了合理规划人力资源的利用,保证学校信息的安全性,对信息化处理数据的要求也越来越高。学生选课系统就是为了减少学校对信息管理的工作量,增强学生选课及成绩信息管理的安全性的双重要求下出现的。通过本系统,学生可以在网上自主选择自己想要的课程,极大的减少学校在课程统计和学生选课记录上的工作量,而且也可以让学生自己安排选课时间,上课时间等,为学生和学校都提供了很大的方便。本系统实现的主要功能是学生选课,成绩录入,成绩查询,课程信息管理,用户信息管理等。采用的B/S架构,其作用范围为所有在校本科生和在校研究生和系统管理员。 项目背景 Internet的发展给我们的教育更加现代化,现在网上信息管理是我们现在教育中的一个热点。现在,学生跟学校的之间的信息传播只在一指之间,时为我们创造方便快速的途径。《学生自主选课系统》是高校教学管理系统的重要组成部分。熟悉教学管理工作的全部过程,从教务工作的实际出发,解决工作中关键性的难点问题,并充分利用计算机网络功能,实现教学工作全过程的计算机管理,帮助具体管理人员从复杂烦琐工作中解放出来。使得教学管理走向无纸化办公和规范化、现代化管理。 由于 Internet 具有影响范围广,能够方便快捷的传递信息,具有近乎实时的交互性,本身又是一个巨大无比的信息库等诸多优点。学生自主选课系统,学生和学校的管理效率。我们的目标是用学生自主选课系统实现最快对全校学习课程发布以及新闻发布,使学生最快知道,创造现代化的学习环境。学生选课是大学的主要管理工作之一,涉及到诸多方面,随着教学体制的不断改革,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。在这里,运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。 1.2 开发平台 VS2012 ,ASP开发框架,SQL Server 2008。 1.3 运行环境 操作系统:Windows 98/2000/XP/2003 数据库:SQL Server 2008 1.4 系统的条件与限制 系统必须通过登录才能进行操作。对于数据库的操作权限大多数都是在管理员中,只有当管理员安排课程后,学生才能选修该课程。除学生自己外,没有人有权限去修改他人的选课记录。 参考资料 需求分析说明书 概要设计说明书 系统详细设计说明书 软件工程概论郑人杰马素霞殷人昆编著机械工业出版社

网上选课系统的设计与实现(代码)

网上选课系统的设计与实现(代码) 目录 摘要 (1) ABSTRACT (2) 第一章引言 (3) 1.1课题背景及意义 (3) 1.2开发工具的选用及介绍 (3) 1.3课题的可行性分析 (5) 第二章系统总体分析与设计 (6) 2.1设计构想 (6) 2.2界面规划 (7) 2.3数据流程规划 (8) 第三章数据库设计与实现 (9) 3.1数据库系统分析 (9) 3.2数据库逻辑设计 (11) 第四章登录界面详细设计 (14) 4.1界面设计 (14) 4.2管理员/教师/学生登录功能 (14) 4.3密码修改页面 (18) 第五章管理员详细设计 (22) 5.1界面设计 (22) 5.2设计方法 (22) 第六章测试及设计过程中的问题及解决 (27) 6.1数据库的连接 (27) 6.2参数的传递 (27) 6.3运行环境 (28) 第七章结论 (29) 致谢 (30)

参考文献 (31)

摘要 在没有学生选课系统之前,选课方法是随堂报名,这种方法虽然简单,但是造成选课的盲目性和教务处处理选课数据的繁重性,并且容易发生数据丢失和统计错误。为了减轻教务处工作量,以及更加合理的分配教学资源,对学生选课系统进行设计和开发。 本文主要针对学生选课系统管理员端,以及登录,注销,修改密码这些功能的设计和开发。针对管理员的功能,主要从管理员对教师,学生,院系,课程,以及管理员自身信息功能的添加,查看,修改,删除进行了设计和开发,实现了对教师,学生,院系,课程,以及管理员自身信息的管理功能。 学生选课系统的基本设计思想是使用B/S结构来开发,另外着重讨论了用https://www.doczj.com/doc/927258997.html,技术和SQL Server 2000来开发该系统,并给出了主要部分的实现代码及控件的使用,另外还对控件的优点进行讨论。系统在Windows XP系统和https://www.doczj.com/doc/927258997.html,平台下开发完成,使用C#作为开发语言。由于架构比较合理,系统有较高的安全性和较好的使用性能。其中连接数据库的字符串可随时在web.config里修改,增加了配置的灵活性,保证了数据库的安全。 关键词:学生选课,https://www.doczj.com/doc/927258997.html,,B/S结构,管理员端

学生选课管理系统 概要设计

软件工程实验报告 班级:学号:姓名: 实验二:概要设计和详细设计 学生选课管理系统设计说明书 一、实验内容 1.引言 1.1编写目的 设计说明书的书写,主要是明确系统的功能和算法,把总任务分解成多个基本的、具体的任务。将系统分成若干个模块,确定各个功能模块的具体用途总体设计是系统开发过程中关键的一步。系统的质量及一些整体特性基本上是由这一步决定的。系统越大,总体设计的影响越大。项目开发的专业人员需要了解系统的总体概要设计,并以次为行动指南,开展下一个阶段的具体工作。 读者对象:项目分析和开发人员。 1.2项目背景 学校是一个与学生信息安全密切的重要机构,在高度信息化的今天,学生对学校管理的要求也越来越高。为了方便学生查询自己的选课信息,也为了学校更好的了解学生选课信息,学校需要一个学生选课信息管理系统。 系统的名称为:学生选课管理系统。 项目的开发提出者:学校。 软件的用户为:学校的学生、教师和管理员。 1.3 定义 本学生选课管理系统在开发时注意到使用专业术语会对今后的系统使用者造成不便,故所有相关词汇使用了简洁并通俗易懂的词汇,系统使用者不会出现对此系统词汇看不懂的问题,故而在此对系统及文件使用词汇不做定义。 2.任务概述 2.1目标 明确学生选课管理系统各个模块的需求和功能。 2.2运行环境 操作系统:windows2000以上版本。 2.3需求概述

学生选课管理系统的主要功能主要功能是实现对学生信息和教师信息的管理,以及学生成绩的管理。因此,该系统需要具备的具体功能如下: 学生页面操作:包括个人信息,密码修改,查询成绩,选课,退选五个功能; 教师页面操作:包括个人信息,密码修改,修改其所授科目的学生成绩; 管理员页面操作:包含学生信息管理(增加、修改、删除、查询); 教师信息管理(增加、修改、删除、查询); 课程信息管理(增加、修改、删除、查询); 成绩管理(查询、录入、修改); 3.总体设计 3.1处理流程 系统基本流程: 学生用户登录——>主界面——>选择各项子系统 教师用户登录——>主界面——>选择各项子系统 管理员登录——>主界面——>选择各项子系统 3.2总体结构和模块外部结构 本选课系统主要是由学生管理、教师管理和管理员管理三个部分构成。其中学生管理是学生对个人信息的一些查询、选课以及退课,并不能对一些信息进行修改。而管理员管理是管理员对学校一些信息的查询和修改。可从下面的系统结构图中看到。 (图一:总体模块) 学生选课管理系统 管理员管 理 学生管理 教 师 管 理

学生选课系统的设计与实现毕业设计

毕业设计 题目学生选课系统的设计与实现学生姓名学号 系别专业 班级 开题时间答辩时间 指导教师职称

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

网上选课系统课程设计文档

《网上选课系统》课程设计 20111 / 2012 学年第 1 学期 姓名:____黄勇、王超、陈云_____ 专业:____计算机科学与技术_____ 班级:_______0905092___________ 指导教师:周蓓、周荣、许秀兰、王剑 计算机科学与工程学院 2011

一、系统简介 (3) 1.1系统基本功能简介 (3) 1.2系统需求分析 (3) 1.2.1业务流程分析 (4) 1.2.2数据流分析 (8) 1.2.3数据字典 (11) 二、系统设计 (13) 2.1数据库设计 (13) 2.1.1概念结构设计 (13) 2.1.2逻辑结构设计 (16) 2.2系统模块设计 (22) 三、系统实现 (25) 3.1实现概况 (25) 3.2 登录模块 (26) 3.2.1程序流程图 (26) 3.2.2关键代码 (26) 3.3 排课模块 (29) 3.4选课模块 (32) 3.4.1程序流程图 (32) 3.4.2选课的存储过程 (33) 3.5其他模块简介 (34) 3.6系统界面设计 (35) 3.6.2选课主界面 (35) 结论 (38)

一、系统简介 1.1系统基本功能简介 网上选课系统是根据大学的选课的网上申请与管理而进行开发设计的是实现选课的网上申请与安排,管理。 此系统功能主要根据角色的不同而设置了不同的权限,例如管理员具管理此系统的全部权限(设置选课时间的开放时间),增删改学生,老师,管理员,发布选课信息,排课等。 学生随时都可以进入系统查看选课信息,等选课开放时间开放后能进行自主选课,取消所选课程。 教师没有时间限制,随时可以登录观看自己的上课时间,地点。 1.2系统需求分析 通过对系统需求进行分析,系统中设有三类用户:管理员,教师,学生期末管理员开放成绩输入的时候输入学生成绩。各用户的具体描述如下:(1)管理员 描述:管理员维护整个系统,包括发布选课信息,设置选课时段,选课前学生只能登录查看选课通知,不能选课;选课结束,学生不能再进行选课更改,只能查看选课信息。管理让学生所选的课程。增删改学生、老师,管理员信息。选课结束后,管理员手动进行排课,排课时数据库中有各种验证来验证排课信息的冲突,排完课后,发布排课信息,让老师,学生进行查看,设置成绩输入的开放时间。 (2)教师 描述:只能查看选课通知,排课安排,根据上课时间,地点准备教学资料,期末管理员开放成绩输入的时候输入学生成绩。 (3)学生: 描述:选课前查看选课通知,不能进行选课;等待到选课时间段后,

学生选课系统课程设计

滨江学院 软件工程课程设计报告( 2007 -- 2008 年度第二学期) 课程名称:软件工程课程设计 题目:学生选课系统 院系:软件工程 班级: 学号: 姓名: 指导教师: 设计周数:两周 日期:2008 年7月4日

摘要: 本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。系统利用.Net平台技术进行开发,实现学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。同时还对系统的开发原理、功能特点和设计方案进行了介绍。 关键词:学生选课数据库管理 https://www.doczj.com/doc/927258997.html, 一、课程设计的目的与要求 通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 具体如下: 1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编 码和测试方面的知识; 2.熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程; 3.进一步加强和提高软件工程文档的编写能力; 4.培养协作能力和团队精神。 二、设计正文 1.概述 1.1课题题目:学生选课系统 1.2系统的主要目标: 本系统目标是实现选课系统所需的各种基本功能,包括学生选课、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。 1.3 系统的开发环境及运行环境: 操作系统:Windows XP Pro SP2 建模工具:Rational Rose 2003 数据库系统:SQL Server2000 开发工具:Visual Studio 2005 Web服务器:IIS+https://www.doczj.com/doc/927258997.html, 2.0平台 2.系统需求分析 学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。 (1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等; (2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩; (3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。 在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实

学生选课系统概要设计说明书

学生选课系统概要设计说明书 目录 1引言 (2) 1. 1编写目的 (2) 1.2背景 (2) 1.3定义 (3) 1.4参考资料 (3) 2总体设计 (3) 2.1需求规定 (3) 2.2运行环境 (4) 2.3基本设计概念和处理流程 (5) 2.4结构 (9) 2.5功能需求与程序的关系 (9) 2.6人工处理过程 (10) 2.7尚未解决的问题 (10) 3接口设计 (10) 3.1用户接口 (10) 3.2外部接口 (10) 3.3内部接口 (11) 4运行设计 (11) 4.1运行模块组合 (11) 4.2运行控制 (11) 4.3运行时间 (13) 5系统论据结构设计 (13) 5.1逻辑结构设计要点 (13) 5.2物理结构设计要点 (13) 6系统出错处理设计 (13) 6.1出错信息 (13) 6.2补救措施 (15)

1引言 概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处。流程、程序系统的组织结构、模块划分、功能分配、接口设计。运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。编制概要设计说明书的内容。 1.1编写目的 为了保证项目团队按时保质地完成项目目标,便于项目团队成员更好地了解项目情况,使项目工作展开的各个过程合理有序,因此以文件化的形式,把开发过程中的各项工作记录下来,作为项目团队成员以及项目干系人之间的共识与约定,项目团队开展和检查项目工作的依据,以便计划开展和确保项目开发成功。 本文档的预期读者是: 设计人员 开发人员 测试人员 用户 1.2背景 开发软件名称:学生选课系统 项目任务提出者:姚敦红

UML网上学生选课系统程序设计

软件工程课程设计报告 (大三下期2015年) 课程名称:软件工程课程设计 题目学生选课系统 院系:软件工程 完成时间:2015.5. 8 组员:张中秋() 高蕾() 曾昭杰() UML网上学生选课系统程序设计 一、课程设计的目的与要求 UML统一建模课程是一门面向对象开发方法的设计语言。UML统一建模课程设计实验课,着重加强面向对象 建模技术。使用 UML统一建模语言,用需求模型简化业务领域;用分析模型验证用例的正确性,一致性,完备性,可行性;用设计模型标识解决方案。通过模型实现了从业务领域到软件领域的映射。通过建模,使问题可视化,形式化。通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。 通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 二、设计正文 1. 概述 1.1课题题目:网上学生选课系统 1.2系统的主要目标: 本系统目标是实现选课系统所需的各种基本功能,包括学生选课、查看已修课程、查看已选课程、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学 生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的 修改密码等功能。 1.3系统的开发环境及运行环境: 操作系统:wi ndow7 建模工具:Ratio nal Rose 2007 2. 系统需求分析 学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户(Student )、教师用户(Teacher)和管理员用户(Administrator ),也即是三类用户角色。 (1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进 行选课、、查看已修课程、退课操作等; (2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用 本系统提交学生的成绩;

软件工程学生选课系统详细设计说明书

软件工程学生选课系统 详细设计说明书 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT

详细设计说明书 1引言 编写目的 该详细设计说明书的目的在于根据需求说明书与概要设计说明书提出该系统的详细设计,即系统的详细架构,主要包括系统的模块划分、程序系统的结构、各个模块的流程以及各层次中每个程序的设计考虑。用户群体为需要选课的学生。 背景 软件系统名称:学生选课系统 软件实现计算机:LENOVO 任务提出者:黄素红 开发者:黄素红 用户:在校大学生 定义 (1)ActiveServer Pages(ASP)是服务器端脚本编写环境,是由Server端脚本、对象及 组件拓展过的标准主页使用它可以创建和运行动态、交互的Web页和基于Web 的功能强大的应用程序。ASP程序是由文本、HTML标记和脚本组合而成的。在ASP程序中,脚本通过分隔符与文本和HTML标记区分开来。ASP用分隔符

〈%和%〉包括脚本命令。由分隔符括起的命令称为主脚本命令,这些命令由主脚本语言进行处理。在ASP分隔符〈%和% 〉内,可以包括主脚本语言允许的任何语句、表达式和操作符等。 (2)SQLServer是一个具备完全Web支持的数据库产品,提供了对可扩展标记语言 (XML)的核心支持以及在Internet上和防火墙外进行查询的能力,提供了以Web标准为基础的扩展数据库编程功能。丰富的XML和Internet标准支持允许使用内置的存储过程以XML格式轻松存储和检索数据。 参考资料 1.魏志华.《软件工程》.北京:清华大学出版社,2005 2.张海藩.《软件工程导论》.北京:清华大学出版社,2013 3. RogerS.Pressman.软件工程-实践者之路第五版.影印.清华大学出版 社.2001 2程序系统的结构 1.总体模块如图1所示。 学生选课系统 2.教师模块:

网上选课系统总体设计说明书

1.导言 1.1目的 目的旨在推动软件的规范化,使设计人员遵循统一的概要设计书写规范,节 省制作文档的时间,降低系统实现的风险,做到系统设计资料的规范性和全面性, 以利于系统的实现、测试、维护、版本升级等。 1.2范围 软件设计总体结构设计、全局数据库和数据结构设计、外部接口设计、主要 部件功能分配设计、部件之间的接口设计等方面的内容。 1.3命名规则 变量对象命名规则:申明全局变量、局部变量对象的命名规则。 数据库对象命名规则:申明数据库表名、字段名、索引名、视图名等对象的 命名规则。 1.4术语定义 表1-1 术语定义或解释表 序号术语名称术语定义 1 总体结构软件设计的总体逻辑结构。按照不同的设计方法,有不同的总体逻辑 结构。 2 外部接口本软件系统与其他软件系统之间的接口,接口设施可以是中间件。接 口描述包括:传输方式、带宽、数据结构、传输频率、传输量、传输 协议。 3 数据结构数据结构包括:数据库表的结构、其他数据结构等 4 概念数据模型关系数据库的逻辑设计模型,叫做概念数据模型。主要包括一张逻辑 E-R图及其相应的数据字典。 5 物理数据模型关系数据库的物理设计模型,叫做物理数据模型。主要内容包括一张 物理表关系图及其相应的数据字典。 6 视图在基表或其他视图之上建立的一张虚表,叫做视图,它具有物理表的 许多性质,在数据处理和授权上很有用。 7 角色数据库只能够享有某些特权操作的用户,叫做角色。角色的权利通过 授权来实现。 8 子系统具有相对独立功能的小系统叫做子系统。一个大的软件系统可以划分 为多个子系统,每个子系统可由多个模块和多个部件组成。 9 模块具有功能独立、能被调用的信息单元叫做模块。模块是结构化设计中

UML网上学生选课系统程序设计

软件工程课程设计报告 ( 大三下期2015年) 课程名称:软件工程课程设计题目:学生选课系统 院系:软件工程 完成时间:2015 . 5. 8 组员:张中秋(U201217502) 高蕾(U201217507) 曾昭杰(U201217476)

UML网上学生选课系统程序设计 一、课程设计的目的与要求 UML统一建模课程是一门面向对象开发方法的设计语言。UML统一建模课程设计实验课,着重加强面向对象建模技术。使用UML统一建模语言,用需求模型简化业务领域;用分析模型验证用例的正确性,一致性,完备性,可行性;用设计模型标识解决方案。通过模型实现了从业务领域到软件领域的映射。通过建模,使问题可视化,形式化。通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。 通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 二、设计正文 1.概述 1.1课题题目:网上学生选课系统 1.2系统的主要目标: 本系统目标是实现选课系统所需的各种基本功能,包括学生选课、查看已修课程、查看已选课程、退课功能和教师查看选修课程、提交课程成绩功能以及管 理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修 课程,还有公用的修改密码等功能。 1.3 系统的开发环境及运行环境: 操作系统:window7 建模工具:Rational Rose 2007 2.系统需求分析 学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户(Student)、教师用户(Teacher)和管理员用户(Administrator),也即是三类用户角色。 (1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、、查看已修课程、退课操作等; (2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩; (3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。 本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。 2、1 用例图

学生选课系统详细设计说明书

学生选课系统详细设计说明书 一、编写目的 该详细设计说明书的目的在于根据需求说明书与概要设计说明书提出该系统的详细设计,即系统的详细架构,主要包括系统的模块划分、程序系统的结构、各个模块的流程以及各层次中每个程序的设计考虑。 二、背景 软件系统名称:学生选课系统 软件实现计算机:LENOVO 三、管理员模块程序设计说明 ①人员管理:管理员在登录之后可以对系统内的人员(包括学生、教师等)进行管理,包 括对人员的信息进行查询、修改和删除等操作。 ②课程管理:管理员在后台添加、编辑课程的基本信息(包括授课教师、开课时间设定), 同时可以编辑系统开放选课的时间,在适当时间开启和关闭选课系统。 ③系统信息管理:管理员可对系统的基本信息进行编辑,对系统公告进行更改或者系统标 题、系统相关链接等。 ④系统权限管理:对不同的用户要分配不同的权限,管理员可设定不同人员对不同模块的 访问权限,允许或者拒绝不同用户对模块的增删查改操作。 四、教师模块程序设计说明 (1)基本信息管理:此模块主要实现两个分支功能: ①个人信息修改和密码修改。在教师用户登录状态下,实现这些功能,通过对自己的注 册信息的修改满足用户的个性需求,能将注册信息及时反映个人状态,另外,密码修改则是很多网站都应具备的基本功能,能有效保护用户身份和网络安全。 ②其它基功能如学生查询,教师查询和留言查询,这三个功能都是在教师在线状态下实 现的。学生查询对于教师来说非常实用,如果教师想要某个学生的基本信息,只要登录查询就可以找到目标学生,此模块目的在于让老师更方便的掌握学生的基本信息以备不时之需,用以师生交流上非常方便;教师查询对于同事间的交流和联系会显得很重要,这个分支模块主要在于促进同事之间的了解和及时沟通,以便得到共同关心的话题并进行探讨;而留言查询,此模块是则实现师生,同事以及个体之间的交流实现了一个更好的交流平台。 (2)资料管理: 随着教师办公信息化的发展,教师对网络的以来与日俱增,自己的授课计划以及出行安排都会及时更新在自己的平台上,这种平台包括个人博客,此模块的涉及就在于想把学校的办公平台向个人博客过渡,让老师的工作伴随自己的个性体现。 (3)成绩录入: 对于在本教师选课范围内的学生,教师可以查看学生的基本信息,并对学生成绩进行登记和更改。

相关主题
文本预览
相关文档 最新文档