学生学籍管理系统文档.docx
《学生学籍管理系统文档.docx》由会员分享,可在线阅读,更多相关《学生学籍管理系统文档.docx(15页珍藏版)》请在冰豆网上搜索。
学生学籍管理系统文档
软
件
工
程
实
验
组长:
符慧宇
年级:
2002
指导教师:
曹付元
项目名称:
学生学籍管理系统
开发人员:
符慧宇,郭彬婧,韩雅婷,郭晓晶,高飞,贺文文
软件计划:
一:
项目目标:
利用本系统实现学生信息管理,学生成绩管理,考试管理和用户管理。
二:
主要功能:
对学生学籍信息和学生成绩信息进行查询和管理
三:
人员分配
姓名
学号
任务
郭小晶
2002241017
需求分析
郭彬婧
2002241016
编写文档
符慧宇
2002241014
前台编程
韩雅婷
2002241018
数据库设计
贺文文
2002241019
前台编程
高飞
2002241015
前台编程
四:
进度安排
需求分析:
3到4周;
数据库设计:
2周;
前台编程:
3到4周
软件需求规格说明书:
一、开发平台:
开发工具:
Delphi7.0
数据库:
SQLServer2000
支持的操作系统:
Windows98/2000/XP
二:
系统流程图:
三:
E-R图
:
1n
四:
数据流图
D1:
事务数据
D2:
成绩排名表D3:
用户报表
五:
数据字典
数据项名:
学号
含义:
唯一标识每一学生
类型:
数值型
取值范围:
0001至9999
取值含义:
顺序编号
数据项名:
姓名
含义:
一个学生的一个属性
类型:
字符型
数据项名:
性别
含义:
一个学生的一个属性
类型:
字符型
数据项名:
籍贯
含义:
一个学生的一个属性
类型:
字符型
数据项名:
政治面貌
含义:
一个学生的一个属性
类型:
字符型
数据项名:
出生日期
含义:
一个学生的一个属性
类型:
日期型
数据项名:
所在院系
含义:
一个学生的一个属性
类型:
字符型
数据项名:
生源类型
含义:
学生的一个属性
类型:
字符型
数据项名:
专业
含义:
学生的一个属性
类型:
字符型
数据项名:
入学时间
含义:
唯一标识每一个项目
类型:
日期型
数据项名:
课程名称
含义:
课程的一个属性
类型:
字符型
数据项名:
课程号
含义:
课程的一个属性
类型:
字符型
数据项名:
授课教师
含义:
课程的一个属性
类型:
字符型
数据项名:
成绩
含义:
联系的一个属性
类型:
数值型
取值范围:
0至100
数据项名:
软件工程
含义:
《软件工程》的分数
类型:
数值型
取值范围:
0至100
数据项名:
网络工程
含义:
《网络工程》的分数
类型:
数值型
取值范围:
0至100
数据项名:
原编译理
含义:
《原编译理》的分数
类型:
数值型
取值范围:
0至100
数据项名:
体系结构
含义:
《体系结构》的分数
类型:
数值型
取值范围:
0至100
数据项名:
多媒体
含义:
《多媒体》的分数
类型:
数值型
取值范围:
0至100
数据项名:
英语
含义:
《英语》的分数
类型:
数值型
取值范围:
0至100
数据项名:
高等数学
含义:
《高等数学》的分数
类型:
数值型
取值范围:
0至100
数据项名:
微机原理
含义:
《微机原理》的分数
类型:
数值型
取值范围:
0至100
数据项名:
汇编语言
含义:
《汇编语言》的分数
类型:
数值型
取值范围:
0至100
数据项名:
C++
含义:
《C++》的分数
类型:
数值型
取值范围:
0至100
详细说明:
名:
学生
含义说明:
是此学籍管理系统的数据结构之一,定义了一个学生的有关信息
组成:
学号,学生姓名,学生学籍,学生成绩
数据流名:
查阅记录
说明:
查阅记录
数据来源:
欲查询信息
数据去向:
查询
数据结构:
即对数据存储各详细细节及各处理过程-数据流的输入,输出流作出说明
软件设计说明书
一功能结构图
详细的功能描述:
1学生信息管理模块主要是对学生信息(学号,姓名,性别,家庭住址等)进行管理。
本模块有分为三个子模块:
学生信息录入
学生信息查询
学生信息修改/删除
其中,学生信息查询不需要登录即可使用,信息录入和修改/删除模块则需要先登录后才能使用。
2学生成绩管理模块主要是对学生成绩进行管理。
本模块又分为5个子模块:
学生成绩录入
学生成绩查询
学生成绩修改/删除
计算总分与排名
其中学生成绩查询不需要登录即可使用,其他模块则需要先登录后才可使用。
3考试管理模块主要对考试进行如下管理:
添加新考试
对已有的考试信息进行修改/删除
对考试科目进行添加/删除
本模块需要先登陆后才能使用
4用户管理模块主要对使用本系统的用户进行如下管理:
添加新用户
对已有的用户进行更改用户名,密码和权限(管理员或普通用户)等操作
删除用户
本模块只有管理员才可以使用,普通用户不能进入
二数据库的设计
(一)学生学籍信息表
主键:
学号
字段名
类型
长度
是否为空
说明
学号
char
60
否
姓名
char
60
否
性别
char
60
否
籍贯
char
60
否
政治面貌
char
60
否
出生日期
char
60
否
所在院系
char
60
否
生源类别
char
60
否
专业
char
60
否
入学时间
char
60
否
(二)学生成绩信息表
主键:
学号
字段名
类型
长度
可否为空
说明
学号
int
60
否
姓名
int
60
否
软件工程
int
60
否
编译原理
int
60
否
高数
int
60
否
体系结构
int
60
否
多媒体
int
60
否
微机原理
int
60
否
网络工程
int
60
否
汇编
int
60
否
英语
int
60
否
C++
int
60
否
软件工程实验心得体会
(一)
《软件工程实验》第一节课上的是理论课,课堂上曹老师讲到:
"软件工程的本质就是管理思想"。
当时我对这句话并没有深刻的理解,直到完成了这个学期的实验项目时,我才对这句话有了切身的体会。
20世纪50年代中期,美国两位教授哈罗德.孔茨和西里儿.奥唐内尔在其有关管理学的教科书中,把管理的职能分为以下五种:
计划,组织,人员配备,指导和控制。
而这五项要素在软件工程项目的设计过程中也是必不可少的。
我们实验的第一步就是编写软件计划书。
"计划工作是一座桥梁,他把我们所在的这岸和我们要去的彼岸连接起来"。
计划工作给我们提供了通向未来目标的明确道路,也为一切后续工作提供了基础。
计划内容包括了"五W一H",即计划书必须清楚地描述和确定下述内容:
What做什么?
目标与内容。
Why为什么做?
原因。
Who谁去做?
人员。
Where何地做?
地点。
When何时做?
时间。
How怎样做?
方式和手段。
以上步骤在软件工程实验的计划阶段也是类似的。
我们确定了实验的基本目标和方向,并制定了明确的实施计划后,就必须通过组织设计为计划的有效实施创造条件。
我们软工实验的第二步是进行系统设计,包括:
确定所需要的硬件,软件和数据来源,并对将要设计生产出来的,用来满足既定功能要求的系统进行描述。
具体来说就是:
(1)涉及用户界面或人员和信息的交互点;
(2)产生数据及其属性和结构以及不同数据之间的关系,如:
系统流程图,E-R图,数据流图,数据字典等,还要将这些数据最终输入到数据库中,成为数据库的输入,(3)设计软件系统—各种计算机程序,以上这些步骤在管理活动的组织阶段也是一样的。
合理的人员配置在管理活动中,发挥着重要的作用。
我们在软件工程实验中也同样不可忽视人员配备问题,只有合理用人才能事半功倍。
我们应该根据小组人员的特点来分配任务,这样可以使工作热情得到最大限度的激发,从而提高工作效率。
如同管理的指导只能一样,在软工的实验过程中,一定的指导也是必需的。
每节实验课时,曹老师都在机房,我们遇到解决不了的问题时,可以及时地向老师请教,老师会给我们一些指导性的建议,对实验的顺利进展也有很大的帮助。
控制是管理过程中的不可分割的一部分,同样也是我们实验过程中的必不可少的一部分。
有效的控制可以保证各项工作朝着达到组织目标的方向进行。
而且,控制越是完善,组织目标就越容易实现。
控制在我们的实验中具体表现为:
保证各组织阶段的任务都能在预定的时间内完成,而且要把已完成的部分与预定的标准进行比较,来检验是否出现了偏差,以及时进行纠正和调整。
此外,通过软件工程的实验,我还有很多收获:
理论知识用于指导实践,亲身体验才能领悟软件工程的妙用。
我感觉到实验过程中虽然花费了大量的时间思考,但同时换取了宝贵的经验。
开发软件必须严谨求实,脉络清晰,还需要那么一点点敬业精神,牺牲部分休息娱乐的时间,运用工程学的思想开发软件,就要跳出原本只注重编程的狭隘圈子,从宏观上把握软件的生命周期,强调整体性与协调性,不能任意妄为。
特别是需求分析、总体设计和详细设计阶段的工作,更要做到细致、准确,为后期工作做好铺垫。
学习永无止境,在以后还需加强的方面有:
(一)分工合作:
起初,对软件工程处于一知半解的状态,分工比较混乱。
在划分模块后明确了各自分工,渐渐形成良性循环。
团队合作十分重要,争议固然存在,但通过讨论、协商,群策群力,在不断磨合中能够达成一致与默契。
团队成员中能力各有高下,互相尊重,各取所长,不宜妄自菲薄。
组长多加协调,组员积极配合,才能合作愉快。
(二)学习能力:
学习能力体现在能尽快接受新的知识,顺应变化,学为所用。
树立终身学习的理念,摸索有效的学习方式。
相关的中文网站就是我学习的得力助手,给予我很多帮助。
此外,在开小组讨论会时,大家各抒己见,也开阔了我的思路。
(三)有关系统:
文档书写必须详尽,否则将会导致标准不统一,造成模块集成时,做出来的半成品与原本的设计方案有出入,调试时也会出现一些小问题,因而需要进行完善性维护。
所以我们在实验过程中还必须养成良好的设计习惯—书写规范的文档。
软件工程实验心得体会
(二)
上软件工程课大家都觉得像学语文,不明所以,不知道上这门课的真正用途在哪里,虽然老师一直都在强调软件工程是一门很重要的课程,但同学们的学习劲头总是不大。
这学期开了软工实验,却有了书到用时方恨少的感觉。
当完成实验时,我们对软件工程有了新的认识。
一:
软件工程的本质是管理
这是曹老师在第一堂上理论课的时候对大家讲的。
从逻辑顺序上来考察,在特定时期内对某一组织的管理工作主要包含以下内容:
(1)确立系统的目标,即人们从事某项活动希望达到的状况和水平;
(2)确定并选择可实现目标的行动方案;(3)分解目标活动。
软件工程正是如此,我们第一步需要编写软件计划书,即确定目标,介绍系统的主要功能,进行人员分配和进度安排;然后是系统设计,包括确定所需要的硬件,软件和数据来源,产生数据及其属性和结构以及不同数据元素之间的关系(E-R图,数据流图,数据字典等),再将这些数据最终输入到数据库中,成为数据库的输入;接下来设计软件系统。
二:
团队精神
起初,对软件工程处于一知半解的状态,分工比较混乱。
在划分模块后明确了各自分工,渐渐形成良性循环。
团队合作十分重要,争议固然存在,但通过讨论、协商,群策群力,在不断磨合中能够达成一致与默契。
团队成员中能力各有高下,互相尊重,各取所长,不宜妄自菲薄。
组长多加协调,组员积极配合,才能合作愉快。
三:
纸上得来终觉浅,觉知此事要躬行
我们总觉得我们是毕业生,学了四年的计算机理论知识,能说的头头是道,但是理论知识用于指导实践,亲身体验才能领悟软件工程的妙用。
我们组做的是学籍管理系统,它主要是为了方便学校对学生的各种信息进行管理,通过做这个实验,让我对从书本上学到的东西也有了进一步的巩固和新的认识,让我有了一种小小的成就感。
四:
指导的重要性
在实验过程中,老师及时地为我们做出指导是我们的实验能够顺利进行下去直到完成的一个不能缺少的重要因素。
每一次实验课上,曹老师都会在机房,及时的得为大家排疑解惑,或者指出实验的不足,我们可以立即进行修改,这样为大家节省了了不少宝贵的时间。
与此同时,我们也从老师那里学到了不少实际操作的经验。
在这里,我想代表我们全组的成员说:
“老师,谢谢您!
”
一个多月的实验就这样到了尾声,我想我还学到了很多。
软件开发是一项很庞大和复杂的工程,开发软件必须严谨求实,脉络清晰,还需要那么一点点敬业精神,牺牲部分休息娱乐的时间。
运用工程学的思想开发软件,就要跳出原本只注重编程的狭隘圈子,从宏观上把握软件的生命周期,强调整体性与协调性,不能任意妄为。
特别是需求分析、总体设计和详细设计阶段的工作,更要做到细致、准确,为后期工作做好铺垫。
我们的差距还是很大,我们的学籍管理系统不是那么完美,调试的时候还有些功能不能够实现,与原本的设计方案有些出入,所以我们还需要更加努力的学习,还有在合作中加强成员之间协调性,以做到更好。
软件工程实验心得体会(三)
计算机软件尤其是数据库软件,已经成为了当代计算机应用的主流。
因此作为软件开发人员就必须掌握正确的开发手段,了解软件开发的主要过程,这样心中对软件项目才有清醒的认识,才能达到事半功倍的效果。
自从这个学期以来,我们依托软件工程、数据库信息系统、Delphi语言课程,通过亲自设计、编写以及调试终于把我们的学生学籍管理系统顺利完成。
在我们完成之际,从中切实感受到要达到我们预定目标需要小组各成员共同努力、集思广益。
以下我把制作管理系统的大概经过叙述一下:
开发前的准备工作。
在开始准备工作前,小组各成员选定符慧宇为组长,接下来大家各自分工,查找相关资料,收集数据信息。
在开发前制定了系统任务书,主要规定软件的开发目标、主要任务、功能、性能指标、进度等安排。
(1)本系统任务书的基本框架:
包括编写目的,背景,参考资料。
(2)本系统的目标及任务:
利用本系统实现学生信息管理,学生成绩管理,考试管理和用户管理。
(3)本系统的功能:
1、学生信息管理模块主要是对学生信息(学号,姓名,性别,家庭住址等)进行管理。
2、学生成绩管理模块主要是对学生成绩进行管理。
3、考试管理模块主要对考试进行管理:
4、用户管理模块主要对使用本系统的用户进行管理。
(4)本系统的规模及进度要求:
本系统规模适用于本科院校,研制进度共用了大约九周时间,参加人员六人。
本系统任务书只是学籍管理系统软件项目的一个基本要求,针对具体情况,软件开发人员和需求分析人员要联合对软件项目的细节进行具体分析,必要时还进行实地调研,然后共同商讨写出系统的需求分析。
对于开发语言的选择因人而易,但由于掌握知识有限。
经过商议大家决定前台工具使用Delphi。
后台工具使用SQLserver。
之所以选择Delphi是因为它对于数据库开发的支持很完善的。
软件项目在开发完成后还要进行系统测试,以测试开发出的软件的功能和性能是否达到预定要求。
经过大家多次数据测试。
不断的改进完善。
使得该系统基本能实现预期设定的各项功能。
由于这是第一次作比较正式的实用的软件开发。
难免缺乏相应的经验。
好多地方考虑不足。
导致该软件或多或少有些欠缺。
总结:
通过这次小组人员间的密切合作。
大家从中知道了通常一个人难以完成所有工作,任何一个成功软件的诞生需要一个良好的合作团队来协作完成,其中既需要大家对软件项目提出具体的要求和设计思想,也需要大家按这些要求创建出便于维护和持续开发的软件资源。
虽然在软件开发过程中遇到不少的问题。
但是经过小组成员的努力最终克服问题。
使得软件能如期完成。
最后要感谢老师的殷切指导。