武汉理工大学华夏学院课程设计报告书课程名称:软件工程题目:学生信息管理系统的设计与开发系名:信息工程系专业班级:计算机1111班姓名:学号:指导教师:钱小红2014 年 7 月 4 日课程设计任务书学生姓名:专业班级:计算机1111班指导教师:钱小红工作单位:信息工程系设计题目:学生信息管理系统的设计与开发课程设计的目的与任务:软件工程课程设计是《软件工程》课程的后续实践课程,本课程设计的目的是通过一周的实践训练,开发一个学生信息管理系统,使同学们经历一个软件从问题定义、分析、设计到开发的全过程和受到一次软件系统开发的综合训练,以便能熟练掌握软件开发的完整生命周期过程及较全面地理解、掌握和综合运用所学的软件工程的知识。
结合具体的学生信息管理选题开发项目,理解并掌握系统分析、系统设计、系统实施的主要环节和步骤以及软件文档的制作能力,进一步提高学生分析问题、解决问题,进行一个完整系统开发的能力。
课程设计的内容与主要要求:要求学生根据所学的软件工程的知识,利用所学的Java语言/Vb语言/C++语言+Mysql/SQL知识实现一个学生信息管理系统,并对实现后的软件进行测试。
系统主要实现用户管理、班级管理、课程管理、成绩管理、学生管理、教师管理、用户登陆、修改密码等功能,详见下表。
表1.1 学生信息管理系统主要功能表课程设计的步骤及时间进度、场地安排本课程设计将安排在第20周, 教育技术中心211。
具体安排如下:6月27日下午:下发任务;6月28日:查找资料,理清整理软件工程实验课所完成的学生信息管理系统需求分析、系统设计及相关模型的建立(通过visio/rational rose/powerdesigner建立系统的需求模型、数据模型及设计模型,具体包括数据流图、软件结构图、程序流程图、ER图、用例图、类图、时序图、活动图、状态图等);6月29日-7月2日:完成学生信息管理系统的开发;7月3 日~7月4日完成系统测试、报告的写作及答辩验收,并将以上工作整理成为课程设计报告,于7月4日下午前提交课程设计报告。
课程设计报告撰写格式要求:1设计题目与要求2 设计思想3系统结构4 数据结构的说明和模块的算法流程图5 使用说明书(即用户手册)、运行结果、关键界面截图6 测试计划说明书、测试用例规格说明、缺陷报告7 自我评价与总结8 附录:程序清单,注意加注释(包括关键字、方法、变量等),在每个模块前加注释;要求层次清楚、整洁规范、不得相互抄袭,凡正文内容有整段完全相同者一律以抄袭论处。
设计报告正文字数不少于0.2万字(不包括附录)。
第1级(章)题序和题名用黑体三号字;第2级(目)题序和题名用黑体小四号字;第3级(条)题序和题名用黑体小四号字;正文内容用宋体五号字(英文用新罗马体),多倍行距1.25。
报告内容一律使用A4打印纸计算机打印,页码在页下居中标明。
必须使用国家公布的规范字。
页面设置:上空2.5 cm,下空2.0 cm,左空2.5 cm,右空2.0cm(左装订)。
插图图面要整齐、美观,插图应与正文呼应,不能脱节。
每幅插图应有图序与图题,图序编号要连续,图序与图题间空一格且要放在插图下方居中处。
课程设计考核及评分标准课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。
总分按五级记分法记载最后成绩:优秀(100~90分),良好(80~89分),中等(70~79分),及格(60~69分),不及格(0~59分)指导教师签字:钱小红2014年6月27日系主任签字:邱珊2014年6月27日1设计题目与要求1.1设计题目学生信息管理系统的设计与开发1.2设计目的结合具体的学生信息管理选题开发项目,理解并掌握系统分析、系统设计、系统实施的主要环节和步骤以及软件文档的制作能力,进一步提高学生分析问题、解决问题,进行一个完整系统开发的能力。
1.3设计任务及要求利用所学的Java语言/Vb语言/C++语言+Mysql/SQL知识实现一个学生信息管理系统,并对实现后的软件进行测试。
系统主要实现用户管理、班级管理、课程管理、成绩管理、学生管理、教师管理、用户登陆、修改密码等功能1.4 硬件环境CPU:Pentium 4 3.0以上。
内存:512MB以上。
硬盘:80GB以上。
显示器:1024×768像素以上。
数据库:Access2000以上。
操作系统:Windows XP或更高版本。
1.5软件环境Windows环境下使用Myeclipse和mysql1.6 设计背景及意义学生信息管理系统是一个教育单位不可缺少的部分。
一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。
所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差,人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着来越重要的作用。
作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。
2需求分析能实现对数据库的增删查改操作,能登陆学生系统,完成对学生系统的操作,能实现数据库的调用和存储。
本需求分析包含了初步分析设计各功能模块、提供性能要求、对用户影响的信息、以及对各功能模块功能的描述;同时也是规范开发人员进行设计和部署实施的基础和依据,为整体工作组的工作流程做出明确指导,引导工作组员之间、工作组员与用户之间的沟通。
最终作为总体审核、验证、确认和结项验收的依据;为开发方与客户方提供合法的合同保障。
具体学生信息管理系统的功能总结起来如下:图2.1 学生信息管理系统的功能3系统结构3.1结构设计根据对系统的需求分析,本系统将分为3个模块:⑴管理员管理:管理员可以各个模块的信息进行管理操作,包括添加、删除、修改和查询。
同时可以对管理员的个人登录密码进行修改。
⑵教师管理:教师操作中教师只拥有查看个人信息,查看学生信息、添加学生成绩信息、修改学生成绩和查看课程的功能。
⑶学生管理:学生操作中学生只拥有对专业信息,课程信息,学生信息,成绩信息的查询权限和对自己登录密码修改的权限。
3.2系统功能结构图学生信息管理系统主要由五个模块构成:专业管理模块,课程管理模块,学生管理模块,成绩管理模块和用户管理模块。
学生信息管理系统的功能结构图如下:图3.1 学生信息管理系统的功能结构图3.3功能流程以及工作流描述3.3.1增加学生信息系统操作人员打开学生信息添加界面,输入相关的信息(姓名、性别、民族、籍贯、出生日期、入学年份、专业和学院等),在数据库中添加相关数据。
3.3.2修改学生信息根据学生的学号查询出该学生的相关信息,修改相关条目后保存在数据库中。
3.3.3删除学生信息根据学生的学号查询出该学生的相关信息,确定删除后,在数据库中删除该信息。
3.3.4增加课程信息系统操作人员根据打开的课程增加界面,输入相关信息(课程名称、授课教师、课程学分、课程系数、上课地点等),在数据库中添加相关的数据。
3.3.5登记成绩根据学号,以及该学生所选择的课程,进行成绩登记,为选课的同学将无法登记。
3.3.6修改成绩对已经登记的成绩信息进行修改。
4数据结构的说明4.1数据库E-R图图4.1 系统E-R图4.2数据库表设计数据库中包含有7个表,即为管理员信息表(tb_admin),教师信息表(tb_teacher),学生信息表(tb_student),课程信息表(tb_course),成绩表(tb_grade),教师课程表(tb_teacher_course),学生课程表(tb_student_course),设计要求如下:表4.2 tb_admin表表4.4 tb_student表表3.8 tb_student_course表5模块的算法流程图5.1学生信息管理系统总流程图学生信息管理系统总流程图如下:图5.1 学生信息管理系统总流程图5.2管理员操作流程图管理员操作流程图如下:图5.2 管理员操作流程图5.3教师操作流程图教师操作流程图如下:图5.3 教师操作流程图5.4学生操作流程图学生操作流程图如下:图5.4 学生操作流程图6 运行结果6.1登录学生管理系统界面图6.1 登录学生管理系统界面6.2管理员登录6.2.1管理员登录界面图6.2 管理员登录界面6.2.2管理员登录后的界面图6.3 管理员登录后的界面6.2.3添加学生信息6.2.4添加老师信息图6.5添加老师信息6.2.5添加课程信息图6.6 添加课程信息6.2.6分配教师课程可以选择课程编号和工号图6.7 分配教师课程可以选择课程编号和工号6.3教师登录6.3.1教师登录界面图6.8 教师登录界面6.3.2教师登录后的界面图6.9 教师登录后的界面6.3.3选择“添加学生成绩”后的界面图6.10 选择“添加学生成绩”后的界面6.4学生登录6.4.1学生登录时的界面图6.11 学生登录时的界面6.4.2学生登录后的界面图6.12 学生登录后的界面7心得体会在这历时近一周的时间的软件工程课程设计过程中,我体会到了许多,也学到了许多。
本次任务我们是合伙完成的。
在对设计任务进行分析后,我们相互商量后确定了我们各自的任务,做了明确的分工,开始直攻我们的任务。
在本次课设中,我认为需求调研和分析对于软件开发过程至关重要。
我们在开发时如果不进行调研和分析,那么对于后来的项目进展将产生致命的后果在做任何一个项目时,前期的需求调研和需求分析都是必须的,这是在做一个项目的基本,是关系成败的重要一环。
对于一个项目,它的需求设计也非常重要。
在我们的文件管理系统开发的过程中,遇到了一些问题,出现的这些问题很多都是非常棘手的,我们为了解决这些棘手的问题浪费了大量的时间,我们不得不在工程代码上改了又改,在数据库里增表、删表、加数据、减数据,当然,在文档里也要做出相应的修改以适应新的功能。
还好,我们能及时地发现问题,通过相互沟通讨论,问题也得到了解决。
通过总结,我们也意识到,我们大家在做需求分析和进行需求了解时仅仅考虑了一些基本的功能,而至于管理员,教师和学生之间的联系,以及具体的一些流程我们都没有深究,而导致我们到后期花费了大量的时间用于修复之前没有考虑周全而带来的问题。