1、学生信息管理系统 Student information management system 2014年10月软件工程课程设计组长:张利明120911061组员:史甜甜120911055 琚琳 120911048 李莎莎120911050 张利明(组长):全面协调小组工作;负责整个项目开发工作、网站需求分析、系统测试与调试和小组文档核查等工作。负责系统的需求分析和数据库设计以及实现,实现数据库与系统前台和后台的连接,对前台和后台设计存在的问题加以解决。负责PPT的制作。琚琳:主要负责系统结构设计与后程序的开发等工作。负责系统的可行性分析以及系统界面的设计,及部分功能模块代码的编写。史甜甜:负责
2、系统的概要设计的模块设计部分以及前台系统的设计与实现和检查运行环境配置,及部分代码的编写。 李莎莎:完成课程设计小组最终报告、小组电子文档管理和帮助系统开发等工作,以及部分功能模块的代码编写。软件生命周期01020304软件定义时期软件设计时期编码与单元测试软件测试与维护软件定义1问题定义时期可行性研究 需求分析软件定义问题定义问题定义可行性研究需求分析 现拟开发学生信息管理系统,应用现拟开发学生信息管理系统,应用领域是各大中专院校的学生管理部门,领域是各大中专院校的学生管理部门,目标系统应该是一个功能完善的应用目标系统应该是一个功能完善的应用系统。该系统应当具有:系统。该系统应当具有: 1
3、1)信息上)信息上传功能;传功能; 2 2)信息更新功能;)信息更新功能;3 3)信息)信息删除功能;删除功能; 4 4)信息查询功能;)信息查询功能;5 5)系)系统管理功能等;目标系统应该具有友统管理功能等;目标系统应该具有友好的用户界面,应满足不同地点的终好的用户界面,应满足不同地点的终端用户都可以使用此系统。端用户都可以使用此系统。软件定义问题定义可行性研究可行性研究需求分析技术可行性技术可行性操作可行性操作可行性经济可行经济可行性性要开发该系统必须会用到有关网络和数据库的知识,而且还需要熟练掌握一门编程语言。到目前,我们已经学习C和C+两门程序设计语言,其中C+就是一种很好的开发语言
4、。开发该系统软件所用的工具简单,主要是通过编程实现相关功能,再加上界面的相关设计,都比较简单,所以操作上是可行的。学校图书馆、机房和教学楼都有电脑,学生可以查看所需资料,当然,若学生有个人pc,也可以随时免费的查询所需信息。软件定义问题定义可行性研究需求分析需求分析1功能需求性能需求2界面需求3功能需求功能需求 为使我们开发的学生信息管理系统满足用户的需求,现将该系统所要实现的功能,总结如下: 1.学生信息管理:主要负责管理所有在校注册学生的个人信息,主要实现添加,删除,修改,查找学生信息的功能。 2.课程信息管理:负责管理本校所有的课程信息。主要实现添加,删除,修 改查找课程信息的功能。 3
5、.选课信息管理:负责选课的管理。主要实现删除,统计学生选课信息的功 能。 4.成绩信息管理:主要是实现对学生成绩的录入查询及考试的违规信息的管 理工作,包括:学生成绩的录入,学期成绩浏览,学生成绩查询,班级成绩查询,违规信息的增加及浏览。 5.班级信息管理:负责班级的管理。主要实现的功能包括添加,删除和修改 班级信息,以及对班级信息的查询。 6.学生信息查看:主要实现学生查看个人信息和修改登录信息等功能。通过该模块可以查看学生姓名、学号、所在院校、专业班级、教学计划和课表安排等信息。 7.成绩信息查看:主要负责实现学生查看成绩的功能。 8.个人信息管理:主要实现对个人信息的管理。界面需求 设计
6、该系统界面时主要本着用户易于操作的原则,另外尽量使界面看起来比较美观。性能需求1、数据精确度 查询时应保证查全率,所有相应域包含关键字的记录都应该能查到。添加、删除数据时应该保证正确的以及相关联的数据的彻底删除,避免出现一些缓冲区和存储块等的不一致以及存储区的浪费问题。2、时间特性 一般操作的响应时间应该在1-2秒内,对于软磁盘和打印机服务响应时间也应在可接受的时间内完成。3、适应性 开发的系统应该考虑学校的条件。考虑到技术约束、环境约束、标准约束已经硬件限制等。应该是普及适用性比较好的系统。性能需求4、可靠性 系统的运行应该是连续的稳定的,由平均无故障时间来判定系统的可靠性。5、可维护性 维
7、护软件可能耗费大量的物力、财力、时间,因此在开发软件的过程中,通过提高各模块的内聚度,降低各模块的耦合度等方法来提高软件的可维护性。并且通过四种维护性活动:改正性维护、适应性维护、完善性维护、预防性维护来进行维护。分析建模档案材料 系 班级 学生 辅导员 导师归档有指导管理组成 学生实体ER图 学籍管理部分ER图 课程管理部分ER图分析建模 功能模型(数据流图) 顶层数顶层数据流据流图图 功能模型(数据流图) 学学生信息管理生信息管理数数据流据流图图课课程信息管理程信息管理数数据流据流图图 功能模型(数据流图) 选课选课信息管理信息管理数数据流据流图图 功能模型(数据流图)成成绩绩信息管理信息
8、管理数数据流据流图图 功能模型(数据流图)班班级级信息管理信息管理数数据流据流图图 功能模型(数据流图)数据字典的定义 (1)名称:学生档案 描述:描述学生相关信息 定义:学生档案=姓名+学号+所在院校+专业班级+入学时间+性别+籍贯 位置:显示给用户 (2)名称:课程档案 描述:描述课程相关信息 定义:课程档案=课程名称+课程编号+任课教师 位置:显示给用户 (3)名称:选课档案 描述:描述选课信息 定义:选课档案=学生学号+课程号+成绩 位置:显示给用户 (4)名称:成绩档案 描述:描述学生成绩信息 定义:成绩档案=学生学号+课程号+分数 位置:显示给用户 (5)名称:违规档案 描述:描述
9、违规信息 定义:违规档案=学生学号+违规信息 位置:显示给用户 (6)名称:班级档案 描述:描述班级信息 定义:班级档案=学院名称+专业名称+班级名称 位置:显示给用户 数据字典行为模型(状态转换图) 管理管理员状态转换图员状态转换图行为模型(状态转换图) 学学生生状态转换图状态转换图3软件设计院系工作设计思路各模块的功能设计使各模块明确功能目使各模块明确功能目标,进行详细设计标,进行详细设计数据库设计对数据库及需要的数对数据库及需要的数据库表格进行设计据库表格进行设计院系工作将整个任务划分成各将整个任务划分成各个功能模块个功能模块软件设计总体设计管理管理员员模模块块学学生模生模块块设计思路经
10、过综经过综合分析合分析将将本系本系统划统划分分为为管理管理员员模模块块和和学学生模生模块块。其中管理。其中管理员员模模块块又又划划分分为学为学生信息管理、生信息管理、课课程信息管理、程信息管理、选课选课信息管理、成信息管理、成绩绩信息管理、班信息管理、班级级信息管理五信息管理五个个子模子模块块。学学生模生模块划块划分分为为成成绩绩信息信息查查看、成看、成绩绩信息信息查查看、看、个个人信息管理三人信息管理三个个子模子模块块 。功能能功能能层层次次图图功能模块设计(1)(1)学学生信息管理模生信息管理模块块(2)(2)课课程信息管理模程信息管理模块块(3)(3)选课选课信息管理模信息管理模块块(4
11、)(4)成成绩绩信息管理模信息管理模块块(5)(5)班班级级信息管理模信息管理模块块(6)(6)学学生信息生信息查查看模看模块块(7)(7)成成绩绩信息信息查查看模看模块块(8)(8)个个人信息管理模人信息管理模块块数据库设计1、学生基本信息表StudentTable2、教师信息表TeacherTable数据库设计4、选课信息表SelectCourseTable3、学生成绩表ScoreTable软件测试4 软件测试是软件开发时期的最后一个软件测试是软件开发时期的最后一个阶段,也是软件质量和可靠性保证中阶段,也是软件质量和可靠性保证中至关重要的一个环节。软件测试的基至关重要的一个环节。软件测试的
12、基本任务是通过在计算机上执行程序,本任务是通过在计算机上执行程序,暴露程序中潜在的错误,以便进行纠暴露程序中潜在的错误,以便进行纠错,从而保证程序的可靠运行,降低错,从而保证程序的可靠运行,降低软件的风险。软件的风险。 测试用测试用例是以发现错误为目的而设计的一组例是以发现错误为目的而设计的一组测试数据。测试一个程序,需要数量测试数据。测试一个程序,需要数量足够的一组测试用例。一个完整的测足够的一组测试用例。一个完整的测试用例不仅包含被测程序的输入数据,试用例不仅包含被测程序的输入数据,而且还包括这组数据执行被测程序后而且还包括这组数据执行被测程序后预期的输出结果。每次测试。都要把预期的输出结
13、果。每次测试。都要把实测的结果与期望结果作比较。不同实测的结果与期望结果作比较。不同则表示程序中存在错误。则表示程序中存在错误。软件测试参考文档 可行性分析,需求分析规格说明书,概要设计说明书,详细设计说明书测试项目 (1)登录测试 (2)数据输入和输出测试 (3)权限测试 (4)学生功能测试 (5)教师功能测试 (6)教务管理员的功能测试 测试阶段的步骤:每个软件测试阶段都要经历以下步骤:测试需求分析、测试过程设计、测试实现、测试实施、测试评价、测试维护。 界面展示界面展示评评 价价 分分 析析 学生信息管理系统,本质上是对学生学生信息管理系统,本质上是对学生信息的管理和检索。刚开始我们对系
14、信息的管理和检索。刚开始我们对系统的理解很模糊,不知道从何入手,统的理解很模糊,不知道从何入手,我们通过查找相关资料并参考学校的我们通过查找相关资料并参考学校的教务系统,初步了解了系统的功能需教务系统,初步了解了系统的功能需求和较详细的工作流程。由于我们课求和较详细的工作流程。由于我们课程设计时间较短不能完全实现学生信程设计时间较短不能完全实现学生信息管理的全部流程,只是尽最大的努息管理的全部流程,只是尽最大的努力把该系统要实现的功能进行了一定力把该系统要实现的功能进行了一定的划分。的划分。 通过这一次的课程设计,我们对学过的软件工程的知通过这一次的课程设计,我们对学过的软件工程的知识有了进一
15、步的认识,基本上了解了整个软件设计的过程,识有了进一步的认识,基本上了解了整个软件设计的过程,对数据流程图、状态转换图、对数据流程图、状态转换图、ER图、用例图、功能层次图、用例图、功能层次图等开发工具的应用更加熟练。同时我们深刻认识到了需图等开发工具的应用更加熟练。同时我们深刻认识到了需求分析阶段的重要性,它是整个系统设计过程的主线,如求分析阶段的重要性,它是整个系统设计过程的主线,如果在需求分析阶段对系统功能理解错误,那设计的软件就果在需求分析阶段对系统功能理解错误,那设计的软件就会完全失败。在设计过程中我们也加深了对数据库相关知会完全失败。在设计过程中我们也加深了对数据库相关知识的理解,在设计数据库时提取实体联系的过程就是对整识的理解,在设计数据库时提取实体联系的过程就是对整个系统的分析过程。可见,软件工程这门学科在整个软件个系统的分析过程。可见,软件工程这门学科在整个软件开发过程中的作用是不可小觑的。开发过程中的作用是不可小觑的。 结论请老师各位同学批评、指请老师各位同学批评、指正,正, 谢谢谢谢! ! O(_)OO(_)O谢谢大家!谢谢大家!O(_)O