学籍管理系统设计项目
学籍管理系统设计
一、项目概述3
二、项目工作计划错误!未定义书签。
三、管理业务流程分析错误!未定义书签。
四、数据流程图错误!未定义书签。
五、数据字典7
六、E-R图8
七、功能模块图10
八、代码设计10
九、数据表设计错误!未定义书签。
十、IPO设计错误!未定义书签。
十一、源程序清单错误!未定义书签。
十二、总结与体会错误!未定义书签。
一、项目概述
1、项目名称:简单学籍管理系统
2、项目目的:学生学籍信息管理是学校管理的一项重要任务,信息管理经由最初的传统管理时期过渡到信息技术管理
时期,再到现在的信息资料管理时期,管理信息系统以计算机技术为核心,大大提高了工作效率,节省了劳动力。
因此,编写本学籍管理系统就是本着方便学校管理,方便学生与学校、教师交互等目的而开发的。本系统根据学
校的实际情况设计了这一套简单学籍管理系统。
3、开发设计思想:
介于本系统的以上目的,我们的设计思想有以下几条(由于受专业技术的限制,我们所建立系统并不复杂,但能满足简单要求):
系统应符合学生学籍管理系统的规定,即满足学校对学生日常管理的需要,并达到操作过程中的直观,方便等要求。
所开发的系统应该满足模块化程序设计方案,这样即便于系统功能的各种组合和修改,有便于未参与开发的技术维护人员的补充,维护。
所开发的系统应具备数据库维护功能,能够及时根据用户需求进行数据的添加,删除,修改和备分等操作。
4、开发运行环境:
开发工具:
运行环境:window vista
5、系统功能:
(1)信息的增加(2)信息查询(3)信息的删除(4)信息的保存
二、项目工作计划
以下为根据参阅相关书籍和资料,整理得出的各环节的内容.
具体分工情况如下表:
三、管理业务流程分析
在本系统中,学生,系统用户,老师都可以登录到对应的主界面,进行相应的操作。
在学期初,由学院负责人员录入学生和教师信息,包括个人的学号、姓名、性别、年级、班级、年级、班级、系别、专业、户口所在地、家庭住址、联系电话、出生日期、民族、政治面貌、身份证号、填卡日期及备注。如此形成系统的学籍数据库。
相关权限是:学生可以由学号查询对应专业、电话等,老师同样可以查询学生各项信息等,系统用户则可以查询和修改各项学院、学生信息。
四、数据流程图
Root Process Graph
Subprocess Graph of 学籍管理系统
本学籍系统的详细工作流程如下:
1.根据学生处出示的新生名单,建立档案,将档案登记为档案文件。并对应新生名单建立个人的学习文档。
2.根据档案文件登记学籍表。
3.若学生遇到退学、留级、惩罚的事件,教务处将分别进行退学处理、留级处理、奖惩处理。4.若学生受到留级处理、奖惩处理,分别建立留级名单、奖惩名单,并修改对应档案文件。5.若学生受到退学处理,删除对应学生的档案文件。
6.学生毕业时,教务处根据档案文件填制其毕业登记表,并最后将毕业生登记表交给用人单位。
五、数据字典
(2)数据流
(3)实体
六、E-R图
简单学籍管理的E-R如下:
E-R图简单描述:
1.本E-R图的实体有学生、学院、教师、班级、课程。
2.一个学生只在一个学院和一个班级中,一个学院或一个班级有很多学生。
3.一个学院有很多教师,一个教师只对应一个学院。
4.一个学生要修多门课程。
七、功能模块图
八、代码设计
代码指明了事物的名称、属性、状态。科学的代码设计能使计算机进行数据处理时,能节省存储空间,提高处理速度、效率和精度。进行代码设计的过程中,我们应该尽量遵循以下基本原则:1、要适合计算机处理;2、要便于使用;3、要具有系统性、通用性和可扩展性;4、选择最小代码;5、代码标准化。本学籍管理系统中的数据库代码用部分代码设计范例如下: (1) 部门代码
部门代码采取数字和字符混合编码的形式,具体如下: ①学生处 XSC * * *
③系 ①教师 ②学生 (2)
教师表
课程表
十、IPO设计
进入本系统的人都要进行身份认证,认证的方式是验证登录用户账号及其密码,选择登录类型(学生,教师,系统用户)。登陆名为学号,教师号,系统用户号,所有用户的密码预设为888888。登陆界面如下:
十一、源程序清单
连接数据库的源程序:
// Profile Ours
= "ODBC"
= False
= "Connectstring='DSN=ours;UID=dba;PWD=sql'"
connect using sqlca;
open(w_main)
登录源程序:
string ls_pass,ls_passdata,l1,l3,l5,ls_user,usertype
integer l0,l2,l4
ls_user=string
ls_pass=string
l1=string
if ='' then
messagebox("提示信息","请选择用户登陆类型!")
()
return
end if
choose case
case "系统用户"
if ls_user="" then
messagebox("提示信息","请输入用户登陆名!")
return
end if
if ls_pass="" then
messagebox("提示信息","请输入密码!")
return
end if
if isnull(ls_pass) then ls_pass = ""
select count(*) into :l0 from xitong where xno =:ls_user ;
if l0 <1 then
messagebox("提示信息","请输入正确的用户登陆名!")
()
return
end if
select password into :ls_passdata from xitong where xno =:ls_user;
if isnull(ls_passdata) then ls_passdata = ""
if ls_pass <> trim(ls_passdata) then
messagebox("提示信息","请输入正确的密码!")
()
return
end if
open(w_1)
close(w_main)
case "学生"
if ls_user="" then
messagebox("提示信息","请输入用户登陆名!")
return
end if
if ls_pass="" then
messagebox("提示信息","请输入密码!")
return
end if
if isnull(ls_pass) then ls_pass = ""
select count(*) into :l2 from stu where sno =:ls_user;
if l2 <1 then
messagebox("提示信息","请输入正确的用户登陆名!")
()
return
end if
select password into :l3 from stu where sno =:ls_user; if isnull(l3) then l3 = ""
if ls_pass <> trim(l3) then
messagebox("提示信息","请输入正确的密码!")
()
return
end if
open(w_12)
close(w_main)
case "教师"
if ls_user="" then
messagebox("提示信息","请输入用户登陆名!")
return
end if
if ls_pass="" then
messagebox("提示信息","请输入密码!")
return
end if
if isnull(ls_pass) then ls_pass = ""
select count(*) into :l4 from teacher where tno =:ls_user ;
if l4 <1 then
messagebox("提示信息","请输入正确的用户登陆名!")
()
return
end if
select password into :l5 from teacher where tno =:ls_user;
if isnull(l5) then l5 = ""
if ls_pass <> trim(l5) then
messagebox("提示信息","请输入正确的密码!")
()
return
end if
open(w_12)
close(w_main)
end choose
按学号查询信息的源程序:
string ls_old_sql,ls_new_sql
string ls_sno
ls_sno=
ls_sno="'%"+trim(upper(ls_sno))+"%'"
ls_old_sql=()
ls_new_sql=ls_old_sql+"where sno like "+ls_sno
(ls_new_sql)
()
(ls_old_sql)
增加信息的源程序:
long ll_row
ll_row=(0)
()
(ll_row)
(1)
删除信息的源程序:
int s
s=() //得到当前行号
(s) //从DataWindow控件中删除当前行。
() //将DataWindow中所做的改变保存到数据库中。
() //重新检索数据到数据窗口
() //设置光标焦点
保存信息的源程序:
()
十二、总结与体会
通过这次的系统设计,我收获了很多。不仅提高了我的理论知识水平,也锻炼了我们的团队合作能力和协调能力。在本次设计的全过程中,我对本学期所学的知识有了一个比较系统的认识和理解。
我由此对《计算机信息管理基础》这门课程有了更深刻的认识,了解到它不仅仅是关于计算机系统的一门技术,其中的管理信息系统更是一门囊括了经济管理理论、计算机科学、现代通信技术、运筹学、统计学、系统工
程学等学科的系统方法论的边缘科学。而其中的奥妙是可以不断学习而领会到的。
我们在设计的过程中遇到了各种问题,例如最初我们必须把学生选课系统进行抽象,找到它的实体和关系,从而建立E-R图和数据流程图。由于我们在建立E-R图的时候没考虑到登陆时需要密码,最后只有在数据库中通过SQL语言(alter table stu add password char(10))增加密码这一属性,并(update stu set password ='888888';)设定密码都为888888。从中也发现,光是掌握一些理论知识是远远不够的。要懂得怎样把理论应用到实践中去,才能完成具体的工作。而学会应用的过程是能够并且只能通过不断练习而达到的。计算机是一门非常复杂且庞大的学科,一项课题往往需要多项技术才可以完成的。
通过这次设计,我们学到了许多书本上学不到的知识,增强了自己的动手能力。我们按部就班的完成了自己的设计任务,由于自己的知识水平有限,仍然存在很多的不足之处,恳请老师多多指教!
总而言之,我们从参与本次项目中体会颇多。除开以上已经提到的,它还教会了我们不少做人的道理。首先,它使我们深切体会到了团队的重要性,特别是其中遇到的很多困难,需要同学们共同努力共同探讨,以实现思想的交流与碰撞,这对工作的完成也是非常有利的。同时,很重要的一点,是教会我们做什么都要有计划性,尤其是完成一些大型工作。