软工课程设计学生成绩管理系统.docx
- 文档编号:7625477
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:19
- 大小:347.20KB
软工课程设计学生成绩管理系统.docx
《软工课程设计学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《软工课程设计学生成绩管理系统.docx(19页珍藏版)》请在冰豆网上搜索。
软工课程设计学生成绩管理系统
长治学院
课程设计报告
课程名称:
软件工程课程设计
设计题目:
学生成绩管理系统
系别:
计算机系
专业:
计算机科学与技术
组别:
学生姓名:
学号:
起止日期:
2010年7月7日~2010年7月12日
指导教师:
第一章学生成绩管理系统可行性研究
1.1问题描述
在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校根本就没有信息任何管理系统,所有的工作几乎还是手工操作来完成。
计算机技术在日新月异的发展,但是有的很多学校,特别是在西部贫困地区,学校的种类管理都依然由手工操作来完成,这十分落后,效率极低,成本很大,而且极异出错。
随着社会的发展,信息化是社会进程的必然趋势,学校管理只有快,准,精才能发挥其价值。
所以机器代替人力是必然的历史发展趋势,只有领导的重视和支持才能从人工操作改为计算机的自动化系统。
人工操作必将被计算机代替。
有些学校虽使用了计算机,甚至管理系统,但是仍然存在很多问题,问题一日不解决,效率就一日提不上去。
还有,有的系统很不完善到处是漏洞,可以说是千疮百孔,这样极不完善的系统对管理来说是没有任何保障的。
1.2开发背景
随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。
几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。
该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,课程基本信息,以及学生所学课程的考试成绩。
要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
1.3开发意义
在各大中小学校,用计算机管理学校的信息已经越来越普遍了。
用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。
提高了学校的管理能力,为学生提供优质的可视服务,家长也可以远程访问。
为此,用计算机来管理学校的成绩信息,是非常必要的。
1.4可行性分析
可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。
1.4.1经济可行性
现在,计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高学校的工作效率;
第四,本系统可以使敏感文档更加安全,等等。
所以,本系统在经济上是可行的。
1.4.2技术可行性
本系统的开发利用MicrosoftSQLsever作为本系统的数据库,适用于大中规模的数据量需求,而且操作简单方便。
学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。
使用PowerBuilder9.0作为系统开发的开发环境,它提供完善的指令控制语句的支持及丰富的数据类型,更加界面化的操作,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
1.4.3运行可行性
本系统为一个小型的学生信息管理系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
第二章学生成绩管理系统需求分析
2.1问题现状
21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。
使原本的旧的管理方法越来越不适应现在社会的发展。
许多人还停留在以前的手工操作。
这大大地阻碍了人类经济的发展。
为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。
一个人将代替原来10人的工作量。
是很多学校单位管理的新天地。
2.2用户对系统的需求
2.2.1功能需求
对于学生成绩管理系统,应包括:
系统登录与操作功能,满足对学生成绩信息的查询、更改和删除以及保存。
系统应包括四大模块:
一.登录管理,二.系统管理,三.信息管理,四.信息查询。
这四大模块是对学生成绩信息的全面了解,可以满足教师和学生对学生成绩管理系统的基本需求。
管理功能系统具有动态的权限分配功能,可按用户权限对用户进行分组。
可分为学生用户、教师用户、管理员用户。
学生用户只是查询不能修改,老师用户只能对授权范围内进行相应修改及删除,管理员用户能修改、删除所有信息(除管理员管理)。
我所担任的是信息查询模块。
2.2.2性能需求
(1)时间需求:
每项操作的处理时间在2s之内;
(2)可靠性:
设置错误判断,错误跟踪,错误处理功能,使得程序错误减少;
(3)易用性和可理解性:
符合windows界面风格;
2.2.3接口需求
硬件:
服务器:
CPU:
P42.0G以上内存:
512M硬盘:
60G以上
客户机:
CPU:
500Mz内存:
128M以上硬盘:
1G以上
2.2.4用户界面需求
用户界面:
体现美观、简约、现代、友好易用等设计元素。
2.3系统的数据流图
2.4系统的数据库分析
2.4.1数据字典
表2.4选修数据字典
2.4.2数据分析
学生成绩管理系统主要用于学生成绩信息管理,据分析学生成绩管理系统的数据表可浓缩为:
班级信息表、选修信息表、课程信息表和用户信息表。
根据学校的情况,可按下面的步骤来分析:
(1)确定学生所在的院系、所学的专业以及所在的班级;
(2)确定学生所在班级的课程以及该课程学生的成绩,另外还需要知道学生所在班级、学号和学期;
(3)分析学生的基本信息,如姓名、性别、出生年月、籍贯、政治面貌;
(4)用户信息分析,通常包括用户名和密码。
可以同过对以上各个表来查询所需数据,从而得到查询结果。
2.4.3E-R图
图2.8选修E-R实体图
第三章学生成绩管理系统概要设计
3.1系统模块划分
本系统可划分为四个模块,分别为:
(1)登录管理:
对用户权限的验证,根据验证结果系统转向相应界面;
(2)系统管理:
包括用户管理、密码修改、系统的注销和退出;
(3)信息管理:
包括院系管理、专业管理、班级管理、课程管理、成绩
管理,它可以对相应信息进行增、删、改操作;
(4)信息查询:
包括课程、成绩、专业等的查询。
3.2系统层次结构图
第四章学生成绩管理系统详细设计
4.1数据库设计
4.1.1各个表结构
系统数据库中主要包含以下4个表:
(用户信息表)user_information:
用于保存用户的账号,姓名,,密码,性别号,系号,民族号,籍贯,出生日期,入学年份,班级号,政治面貌号,职称号等信息;
(课程表)course:
用于保存课程号,课程名,授课教师工号,授课年份,授课学期,学分,课时等信息;
(选修表)major:
用于保存学生学号,课程号,成绩等字段;
(班级表)class:
用于班级号,系号,班级名,专业号等信息.
列名
数据类型
长度
允许空
主键
备注
账号
char
10
否
是
密码
char
10
否
用户类型号
int
4
否
姓名
char
10
是
性别号
int
4
是
系号
int
10
是
民族号
int
10
是
籍贯
char
10
是
出生日期
char
20
是
入学年份
char
10
是
班级号
int
10
是
政治面貌号
int
4
是
职称号
int
4
是
列名
数据类型
长度
允许空
主键
备注
课程号
char
10
否
是
用户名
char
10
否
课程
char
20
否
授课教师工号
int
4
否
授课年份
int
4
否
授课学期
int
4
否
学分
float
8
否
课时
int
4
否
列名
数据类型
长度
允许空
主键
备注
用户名
char
10
否
是
课程号
char
10
否
是
成绩
float
8
是
列名
数据类型
长度
允许空
主键
备注
班级号
char
10
否
是
系号
char
10
否
班级
char
10
否
注册年份
char
10
否
4.2算法描述
信息查询模块包括成绩查询(按班级查询、按所授科目查询、个人成绩查询),学籍查询(按院系查询、按专业查询、按班级查询、个人学籍查询),课程查询(按班级查询、按教师查询、个人课程查询),个人、教师信息查询。
1、成绩查询:
2、个人信息查询:
4.3主要界面设计
(1)成绩查询:
a、通过班级查询:
选择班级,选择学年,选择学期,选择课程类型对成绩进行查询,提交后得到查询结果;
b、通过所授科目进行查询:
选择授课年份,授课学期,待查科目来进行成绩查询,提交后得结果;
c、通过个人成绩查询:
:
选择学年,学期来进行查询,得结果。
(2)学籍查询:
通过选择学号来进行查询,提交后得到结果。
(3)课程查询:
通过对班级,学年,学期的选择来进行课程的查询,提交后可得到所查结果。
(4)个人信息查询:
只要是用自己的账号登陆点击个人信息查询就可直接得到自己的信息。
(5)教师信息查询:
同个人信息查询。
第五章编码
5.1模块概要
信息查询模块:
它包括成绩查询(按班级查询、按所授科目查询、个人成绩查询),学籍查询(按院系查询、按专业查询、按班级查询、个人学籍查询),课程查询(按班级查询、按教师查询、个人课程查询),个人、教师信息查询。
5.2部分代码及所对应图
1、成绩查询
integercourse_year_,course_type_no_,course_term_no_
course_year_=integer(ddlb_2.text)
course_type_no_=ddlb_4.finditem(ddlb_4.text,1)
course_term_no_=ddlb_3.finditem(ddlb_3.text,1)
class_no_=trim(left(ddlb_1.text,8))
dw_1.SetTransObject(SQLCA)
dw_1.Retrieve(class_no_,course_type_no_,course_term_no_,course_year_)
ifdw_1.rowcount()=0then
dw_1.visible=false
elseifdw_1.rowcount()=-1then
messagebox("错误提示","查询失败")
else
dw_1.visible=true
endif
2、学籍查询
subject_no_=left(ddlb_1.text,4)
class_no_=trim(left(ddlb_1.text,9))
department_no_=ASS_department_no
ifrb_1.checkedthen
dw_1.dataobject="d_child_status_inquire_by_department"
dw_1.settransobject(sqlca)
dw_1.retrieve(department_no_)
elseifrb_2.checkedthen
dw_1.dataobject="d_child_status_inquire_by_subject"
dw_1.settransobject(sqlca)
dw_1.retrieve(subject_no_,department_no_)
elseifrb_3.checkedthen
dw_1.dataobject="d_child_status_inquire_by_class"
dw_1.settransobject(sqlca)
dw_1.retrieve(class_no_)
endif
3、课程查询:
class_no_=trim(left(ddlb_1.text,9))
course_year_=integer(ddlb_2.text)
course_term_no_=ddlb_3.finditem(ddlb_3.text,1)
user_id_=ls_user_id
dw_1.settransobject(sqlca)
choosecasels_type_no
case1
dw_1.retrieve(user_id_,course_year_,course_term_no_)
case2
dw_1.retrieve(user_id_,course_year_,course_term_no_)
case3
dw_1.retrieve(class_no_,course_year_,course_term_no_)
endchoose
4、个人、教师信息查询:
class_no_=trim(left(ddlb_1.text,9))
course_year_=integer(ddlb_2.text)
course_term_no_=ddlb_3.finditem(ddlb_3.text,1)
user_id_=ls_user_id
dw_1.settransobject(sqlca)
choosecasels_type_no
case1
dw_1.retrieve(user_id_,course_year_,course_term_no_)
case2
dw_1.retrieve(user_id_,course_year_,course_term_no_)
case3
dw_1.retrieve(class_no_,course_year_,course_term_no_)
endchoose
第六章测试
第七章总结与体会
此系统中使用的是PowerBuilder+SQLsever实现的,由于我的经验不足及阅历颇浅,因此,在该系统的设计方面还有很多不足,比如功能过少,代码不够优化等问题,我会在以后的学习、工作的过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋向完美。
学习任何知识,仅从理论上去求知,而不去实践、探索是不够的,所以在学习完后进行课程设计是很及时、很必要的,这样不仅能加深我们对所学知识的了解,而且还及时、真正的做到了学以致用。
在这次课程设计过程中,遇到了很多问题。
尤其是设计方面有些困难,但是通过上网,查书,向别人请教解决了,这次课程设计让我学到了很多,不仅是巩固了先前学的的理论知识,而且也培养了我的动手能力,更令我的创造性思维得到拓展。
致谢
在本系统是我第一次尝试这么大的软件编程。
在刚开发系统完毕准备开始写论文时我对论文的写法是一片空白,所以只能问同学和上网查资料,所以首先感谢在程序上帮助我的同学,再次感谢网上贴出同类资料的友士,最后谢谢马老师对我们的指导。
参考文献
[1]唐学忠.SQLServer2000数据库教程[M].北京:
电子工业出版社
[2]姜代红.数据库原理与应用[M].北京:
机械工业出版社
[3]邵亮.PowerBuilder9.0快速入门篇[M].北京:
清华大学出版社
[4]周岐.PowerBuilder程序开发项目案例[M].北京:
清华大学出版社
[5]李春葆,曾慧.SQLServer2000应用系统开发教程[M].北京:
清华大学出版社
[6]张勇毅,姚华.PowerBuilder+SQLServer数据库应用系统开发与实例[M].北京:
人民邮电出版社
指导教师评语:
指导教师签名:
年月日
成绩评定
项目
权重
成绩
1、设计过程中出勤、学习态度等方面
0.1
2、设计技术水平
0.4
3、编程风格
0.2
4、设计报告书写及图纸规范程度
0.3
总成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 学生 成绩管理系统