PB课程设计—学生选课系统

更新时间:2024-03-20 04:13:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1.1 课题的背景

当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最到好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。

尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好学生选课信息而设计的。

学生选课作为一种信息资源的集散地,包含很多的信息数据的管理。 由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的学校有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发基本环境。

数据处理手工操作,工作量大,出错率高,出错后不易更改。造成了时间上的浪费

基于这个问题,我认为有必要建立一个学生选课系统,使学生选课信息管理工作规范化、系统化、程序化,避免学生选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。

1.2 课题的设计

本文就学生选课系统的设计与制作展开分析。学生选课系统主要应用数据库技术开发,先从数据库的基本知识开始介绍, 数据库的基本概念、数据库的发展、数据库的结构,还介绍了开发工具PowerBuilder9.0和SQL语言。我主要是应用PowerBuilder9.0为前端开发工具,利用SQL语言实现数据查询。设计系统时,先从系统的数据流程开始分析,设计系统的业务流程图、系统的数据流程图、系统的E-R图。根据开题报告的设计要求开始进入系统的总体设计,接着制定系统的设计思想,分析系

1

统的功能并设计系统的功能模块,这些都是系统制作前的准备工作;准备工作完成后,开始系统数据库的建立,主要有各个功能窗口的设计,将设计好的窗口集中到主菜单上,通过用户的用户名和密码的登录可以进入到主窗口,这样就完成系统的制作。最后,对系统进行调试,性能

3 系统分析

3.1 系统分析

现代的社会是信息化的社会,信息无所不在。在生产领域、流通领域、各个部门每天都和信息打交道,如何处理如此多的信息成为了一个重要的课题。学生在学期开始选课是教学活动中的一个重要环节,该环节如果能管理好,它不仅能加快学生的选课速度,也提高了整个教学活动的效率。

大学一般都有上千名学生,每学期开始学生都要选课,因而产生了大量的课程信息。考虑到用户使用的方便和处理的信息量系统要完成录入,保存,查询,修改和删除课程信息的各种过程,能打印出课程信息表。所以系统的基本体系结构采用C/S模式。

3.1.1 用户要求

系统的主要使用对象是需要选课的学生。学生在选课是要察看各个课程的详细信息,还要选择一些感兴趣的课程,需要生成课表,在发现课程有冲突后能够修改先前选择的信息。需要随学生选课的变化,计算相应的总学分。在全部选定后,打印报表。系统还需要管理员来查看和修改学生的总体选课情况,课程信息和学生信息。

3.1.2 业务流程分析

学生选课前要登录系统,查看所有课程的详细信息,包括课程代号、授课教师、教室、上课时间、学分、剩余名额等。根据课程代号,学生可以查询相应的课程,并添加课程。查看课表,并能发现是否存在冲突课程,如果存在,可以删除该课程,并重新选择。打印课表,包含详细的课程信息。最后,选课完毕。学生选课的数据基本流程如图所示:

2 图3-1 学生选课流程

3.1.3 系统实体E-R图分析

经过上述系统功能分析和需求总结,设计如下所示的实体和属性的定义:

课程信息(课程代号,课程名称,授课教师,教室,剩余名额,上课

时间,学分)

学生信息(学号,姓名,性别,班级,出生年月日,是否已选课) 学生登录信息(学号,用户名,密码,权限代号) 学生选课信息(学号,课程代号,学期,课程成绩) 用户权限(权限名称,权限代号)。

本系统根据上面的设计规划出的实体有:课程信息实体,学生信息实体,学生登录信息实体,学生选课信息实体,用户权限实体。

实体之间关系的E-R图如图3-2所示。

图3-2系统E-R图 课程信息实体E-R图,如图3-3所示:

图3-3课程信息实体E-R图

3

学生选课实体E-R图,如图3-4所示:

图3-4 学生选课实体图

学生信息实体E-R图,如图3-5所示:

图3-5 学生信息实体图

登录信息实体E-R图,如图3-6所示:

图3-6 登录信息实体图

用户权限实体E-R图,如图3-7所示:

图3-7 用户权限实体图

3.2本章小结

学生选课系统主要是为学生选课的管理提供全面、准确、科学的管理方法,方便快捷地处理选课的管理信息;避免了信息处理错误,提高了信息管理的工作效率,大大地节省人力和物力的开支。本章主要阐述了系统的业务流程,根据业务流程画出绘制出了E-R图。

4

4 系统实现

4.1 创建一个工作空间和应用程序对象

创建一个工作空间(WorkSpace)student,目标(Target)student和应用(Application)stu,在应用的open 事件中写入如下的语句进行应用与数据库的连接。 // Profile stu_select SQLCA.DBMS = \SQLCA.AutoCommit = False

SQLCA.DBParm = \ connect;

4.2创建数据库表

为了保存学生信息、课程信息、学生选课信息、登录信息、用户权限信息,数据库设计了学生信息表,课程信息表,学生选课信息表,登录信息表和用户权限信息表。这些表使得用户对数据的增删改变得非常方便,数据的冗余不是十分明显。

数据库中的学生信息表结构如表4-1所示:

表4-1 学生信息表(stu_inform)

字段名 学号 姓名 性别 班级 出生年月日 是否已选课 数据类型 Char Nvarchar Char Nvarchar datetime char 长度范围 8 2 是否为空 否 是 是 是 是 是 字段说明 数据库中的课程信息表结构如表4-2所示: 表4-2 课程信息表(course_inform)

字段名 课程代号 数据类型 Char 长度范围 10 是否为空 否 字段说明 5

图4-9 splash界面

其主要代码如下: (1) open事件代码

//设定关闭时间 timer(3,this )

//将Splash窗口置于其他窗口之上 this.setposition( topmost!) (2) timer事件代码:

close(this) open(w_login) (3) clsoe事件代码:

timer(0,this)

21

结束语

随着信息技术的发展,办公自动化已成为社会发展的主要趋势,学生选课管理因其劳动的复杂性已经无法适应手工操作,所以应用先进的计算机技术对学生选课进行管理是势在必行的,因此本文采用目前流行的数据库开发工具之一的PowerBuilder9.0设计了一个小型的学生选课系统,并对设计结果进行了一定的总结。

(1)学生选课管理因为其日常事务比较繁琐,所以在设计数据库表之前一定要对系统的设计有一个整体的认识,对学生信息和课程信息进行整理,设计好各功能模块的E-R图。这样,在后期的设计时,会因前期工作处理的好而减少许多麻烦,为设计的顺利进行作好了铺垫。

(2)在设计各个功能模块时,要考虑和其他模块的联系,更要结合实际情况对窗口要放置的空间进行分析,尤其在编制代码是要充分考虑各种限制条件,对不同的身份规定其不同的登录权限。

(3)在使用学生选课系统后,提高了学生选课的准确性,信息能够准确无误的输入计算机并在数据库中存储起来。按照规范设定标准代码,既保证了统计原始数据的准确性,又在分析统计时最大限度的减少了人为的影响,提高了工作效率。

通过本次的毕业设计,我们不仅掌握了设计的基本步骤,更重要的是学会了解科学的系统设计方法,加深了我们对软件开发的认识与理解。

22

参考文献

[1] 萨师煊,王珊.数据库系统概论.北京:高等教育出版社,2002,2 [2] Graeme Malcolm.SQL Server 2000 with XML.北京:清华大学出版

社,2003,7 [3] 求是科技主编,沈兆普,陈雍.PowerBuilder数据库开发自学教程.北

京:人民邮电出版社,2002,10

[4] 杨昭.PowerBuilder 9.0基础与应用教程.北京:中国水利水电出

版社,2003,8 [5] 东方人华.PowerBuilder8.0入门与提高.北京:清华大学出版社,2003,11

[6] 何俊,谢春旺.SQL Server 2000案例教程.北京:冶金工业出版社,

2004,4

[7] 郑阿奇.PowerBuilder实用教程.北京:电子工业出版社,2001,3 [8] 陈弘原.PowerBuilder 8.0实用教程.北京:中国水利水电出版社,

2001,11

[9] 杨昭.PowerBuilder 9.0对象与控件技术详解.北京:中国水利水

电出版社,2003,8

[10] 樊金生,张翠肖.PowerBuilder 9.0实用教程.北京:科学出版社,

2004,6

[11] 胡存生.PowerBuilder8.0开发实例详解.北京:电子工业出版社,

2002,8

[12] Steve Erlank, Craig Levin.PowerBuilder 6.0基础教程.北京:

中国水利水电出版社,1999,7

[13] Simon J.A. Herbert.PowerBuilder 7.0 Unleashed.北京:电子

工业出版社,2001,1

[14] 张英杰,曹岩, 曾高强.PowerBuilder应用工程软件开发指南.西

安:西安交通大学出版社,2005,2

[15] 李政.PowerBuilde8.0开发与应用实例.北京:中国水利水电出版

社,2002,5

[16] 于德壹,刘云洲.Powerbuilder8.0 实用编程技术.北京:中国水

利水电出版社,2002,1

[17] 王晟.PowerBuilder数据库开发经典案例解析.北京:清华大学出

版社,2005,4 [18] 刘秉毅,许卫中,王延军,张鲁.PowerBuilder7.0编程实战新招.西

安:西安交通大学出版社,2000,10

23

本文来源:https://www.bwwdw.com/article/2u58.html

Top