项目小组介绍
项目小组成员
xxx
xxx
任务分配
xxx :
例
xxx:可行性研究
xxx:软件需求分析
xxx :软件总体设计
xxx:软件详细设计
xxx:软件测试
xxx:软件维护
一、可行性分析报告
1系统目的
1.1编写目的
教务管理是大学的主要日常管理工作之一,涉及到校、系、师、生的诸多方面。如何把教务工作信息化,模块化,便捷化是现代高校发展的重点,所以迫切需要研制开发一种综合教务管理软件。
1.2 系统目标
本系统是教务处人员,各院教学主管,教师的工作界面。它完成:
(1)教务处人员制定各学院的教学计划并录入,
(2)各院教学主管对相关课程加以限制,如:规定课时,任课教师的条件等
(3)教师制定自己的教学计划,经所在教研室协调认可,录入
(4) 教务处人员根据教师的投课计划和相关课程的限制条件制定出下学期各学院各班的课程表以及全院教师的教学任务书。
2信息描述
2.1信息内容
本系统是一个面向学校教务管理人员、教师,为其提供服务的综合管理系统。教务人员通过本系统完成所有的日常教务工作。教务人员根据条件制定下学期的课程表。教师通过系统可查学自己的投课内容。
3.功能描述
3.1系统功能划分
本系统适合学院课程安排管理模式。本系统集信息管理、教学计划管理、排课、教师信息管理等教务功能于一体,并可以输出各院课程表及教师任务书。
整个系统分为以下模块:
1.教务人员信息管理
2.学院教务主管管理
3.教师信息信息管理
4.教学计划录入系统
5.课程限制录入系统
6.排课系统
7.课程表定制系统
8.教师任务书下达系统
3.2性能需求
(1)网络环境下的多用户系统。
信息主要存储在服务器端的数据库中,由各用户在规定的权限下在各自的客户端上录入,修改,删除相关的内容,各用户还可进行查询,调用,达到信息共享。
(2)数据的完整性,准确性。
录入数据采用表格方式,限制录入数据类型及取值范围以保证数据的完整性及准确性。系统应具有部分反悔修改功能,系统备有的修改功能均可反悔
(3)数据安全性。本系统采用二级安全保障:
第一级:依赖于网络本身对用户使用权限的规定。
第二级:在程序模块中通过使用密码控制功能对用户使用权限加以限制。
3.3系统流程图
3.4 顶层数据流图
3.5 用户平台要求
开发出的软件要适用于各种WINDOWS 平台和SQL SERVER 数据库下,支持局域网和INTERNET 下的资源共享以及EXCEL的表格输出等,最低配置要求PIII800,128M内存以及8M显存显卡。
开发环境:Windows10
开发工具:C
数据库管理系统:SQL
4.行为描述
在整个系统中通过教学计划有效管理,方便准确下达教学任务,进行排课前数据准备、排课条件设定、自动排课和课表的日常管理:教师可以实时登入查询授课情况,学生也可随时登陆查询下学期课标;排课系统是各系部教务员根据下达的教学任务安排本系部课程的开课教师、教室名单等工作:各系统功能分开、但又相互关联,而数据完全共享,具体管理工作人员根据自己的职责范围,运用相应的系统完成各自的日常教务工作。
二、传统软件工程的需求分析建模
一、目的与任务
目的:确定项目要做什么及其可实施性,在此基础上完成系统的逻辑功能模型的建立。
任务:可采用不同的需求分析技术,完成对项目的需求分析过程,给出系统的逻辑功能模型,数据字典以及规格说明书。
二、内容、要求
1、实验内容与要求:
熟悉系统项目的业务流程,根据现有资料绘制系统数据流图,功能分析图,编写数据字典,数据加工处理的描述以及软件系统流程设想图(新系统模型),完成系统需求规格说明书。
2、准备参考资料和阅读相关的国家有关软件开发的标准文档。
数据流图:
顶层数据流图:
0层数据流图:
3.4数据字典:
(1)数据流条目
相关限制=任课教师的职称+上课的班数+最高周学时数+最低周学时数
任课教师的职称=教授+研究生
教学计划=课程名称+课程代码+课时+班级类别+班号+计划学时+合班系数
班级类别=本科+专科+成人教育+研究生
授课计划=课程名称+班级类别+班号
教学任务书=课程名称+课程代码+课时+班级类别+班号
课表=课程名称+课程代码+课时+班级类别+班号
教学任务=课程名称+课程代码+课时+班级类别+班号
合格名单=课程名称+课程代码+课时+班级类别+班号
已通过计划=教工号+课程名称+课程代码+课时+班级类别+班号
未通过人员=教工号
通过名单=教工号+课程名称+课程代码+课时+班级类别+班号
(2)数据存储条目
文件名:课程信息
组成:教工号+课程名称+课程代码+课时+班级类别+班号+限制条件+计划学时+
合班系数+{已被选择|未被选择}+{通过|未通过}
组织方式:索引文件,以课程代码为关键
文件名:教学任务书
组成:教工号+课程名称+课程代码+课时+班级类别+班号+计划学时+合班系数
组织方式:索引文件,以课程代码为关键
文件名:学生信息
组成:学号+班号+密码
组织方式:索引文件,以学号为关键
文件名:老师信息
组成:教工号+密码+授课计划是否通过限定条件+是否出现严重教学事故
组织方式:索引文件,以教工号为关键
文件名:人员信息
组成:教务号+密码
组织方式:索引文件,以教务号为关键
(3)数据项
课程名称:别名:无
类型:字符型
长度:2{汉字}15
课程代码:别名:无
类型:整型
长度:5位
课时:别名:无
类型:整型
长度:2位
(4)加工条目
加工名:教务管理系统
编号:无
输入:授课计划,教学计划,限制条件
输出:教学任务书,课表
加工名:录入储存处理
编号:1
输入:相关限制,教学计划
加工逻辑:将审查通过的教学计划添加相关限制,放入课程信息中
加工名:学生查询
编号:2
输入:学生信息
输出:课表
加工逻辑:If是学生
Then将教学任务书改为课表
Else退出
加工名:
编号:3
输入:授课计划、老师信息
加工逻辑:if合格
根据设定的条件判断是否满足为合格计划
加工名:限定条件
编号:3
输入:授课计划、老师信息
加工逻辑:If合格
Then修改课程信息
Else 修改老师信息为授课计划未通过限定条件
加工名:老师查询
编号:4
输入:教工号
输出:教学任务
加工逻辑:If是老师
Then根据教学计划书给出教学任务
Else 退出
加工名:教务处
编号:5
输入:教务号
输出:教学任务书
加工逻辑:if是教务人员
Then if审核通过
Then 下达教学计划书
Else 修改课程信息
Else 退出
三、软件总体设计
第一部分
数据流图:
软件结构图:
第二部分
数据流图:
软件结构图:
第三部分
数据流图:
软件结构图:
第四部分
数据流图:
软件结构图:
第五部分
数据流图:
软件结构图:
四、软件详细设计
一、目的与任务
目的:在上个实验的基础上完成系统的体系结构的建立和系统详细设计
任务:认真分析实验三的结果,给出系统合理的体系结构,描绘系统结构图,并合理划分系统的各组成模块。
二、内容、要求
1、实验内容与要求:
(1)用面向数据流的设计方法(教材P48-P52)从需求分析的数据流图导出系统结构图,并进行优化,画出系统的软件结构图。
(2)选择一个模块描绘其程序流程图。
(3)了解N-S图、PAD图、判定表和判定树的使用和特点。
一、详细设计第二部分
判断学生输入的账号信息,做有效性检查。
二、详细设计第三部分
判断老师提交的授课计划是否满足条件。
五、测试
一、目的与任务
目的:在实验四基础上选择一个模块进行编码,完成相关的测试。
任务:正确运用软件测试技术和方法。
二、内容、要求与安排方式
1、完善系统所设计的程序框图,选择合适的模块,完成和单元测试,完成测试报告。
2、能够正确运用软件测试的过程与方法,结合选定项目,复习、巩固软件工程中测试相关的知识,提高软件测试的实践能力。
三、单元测试(白盒测试)
第一个大模块:
1.1审查:
测试用例:课程名称+课程代码+课时+班级类别+班号+计划学时+合班系数
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
1.2再次审查:
测试用例:任课教师的职称+上课的班数+最高周学时数+最低周学时数
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
第二个大模块:
2.1有效性检查
测试用例:学号+密码 学号(是否存在) 密码(是否正确)
2.2排课系统
测试用例:学号+课程名称+课程代码+课时+班级类别+班号
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
第三个大模块:
3.1是否满足条件
测试用例:Z≤2 300≤A≤600 C=0
Z>2 300≤A≤600 C=0
Z≤2 A<300或A>600 C=0
Z≤2 300≤A≤600 C≠0
Z>2 A<300或A>600 C=0
Z≤2 A<300或A>600 C≠0
Z>2 300≤A≤600 C≠0
Z>2 A<300或A>600 C≠0
3.2更新信息
测试用例:教工号+课程名称+课程代码+课时+班级类别+班号
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
第四个大模块:
4.1检查
测试用例:教工号+密码 教工号(是否存在) 密码(是否正确)
4.2查询
测试用例:教工号+课程名称+课程代码+课时+班级类别+班号+限制条件+计划学时+
合班系数+{已被选择|未被选择}+{通过|未通过}
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
第五个大模块:
测试用例:
5.1审核
测试用例:教务号+密码 教务号(是否存在) 密码(是否正确)
5.2审计
测试用例:教工号+课程名称+课程代码+课时+班级类别+班号+限制条件+
计划学时+合班系数+{已被选择|未被选择}+{通过|未通过}
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
5.3更新信息
测试用例:教工号+课程名称+课程代码+课时+班级类别+班号
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。
集成测试(黑盒测试)
利用自底向上集成方法,根据功能划分简略的示意图
确认测试(黑盒测试)
由专门的测试人员和用户参加进行测试。
系统测试
验证功能是否满足需求,考虑安全性,可靠性,性能等多方面因素。
六、维护方法
软件问题报告
登记号:1
软件名称:教务管理系统之子系统-学院课程安排
开发单位名称:xxxx班,1-6号
报告人姓名:xxx
报告时间: 2021.6.21
问题来源:程序在逻辑上存在问题。
问题描述:在教师登陆系统后,无法正确的显示该教师的职称,如李丽,正确的职称是教授,而显示的却是其他乱码的英文,与该教师填写的职称的基本信息不符。
处理意见:主要查看在教师登陆后数据库获取信息的程序代码,反复测试与修改。附注:
软件修改报告
登记号:1
修改日期:2021.6.22
软件名称:教务管理系统之子系统-学院课程安排
开发单位:xxxx班,1-6号
修改时的运行环境:硬件正常,软件运行正常,程序在逻辑上存在错误,运行不出正确的结果,其他正常。
修改内容:对程序中的教师职称判断进行改进,在读取数据库时,将该教师的职称一并获取出来,并给予显示,添加代码:select职称 from 教师基本信息表 where 教师名=”李丽”。
测试情况:测试用例,如姓名:李丽,密码:12345登陆后显示该人的职称为教授,测试成功。
修改时的资源消耗:人工数1
软件问题报告
登记号:2
软件名称:教务管理系统之子系统-学院课程安排
开发单位名称:xxxx班,1-6号
报告人姓名:xxx
报告时间:2021.6.25
问题来源:程序的具体实现中出现了问题
问题描述:在生成课表时的算法是随机的,有可能出现课程重复的情况。
处理意见:对于重复的课程进行筛选比对,去除重复的或者添加。
软件修改报告
登记号:2
修改日期:2021.6.26
软件名称:教务管理系统之子系统-学院课程安排
开发单位:xxxx班,1-6号
修改时的运行环境:硬件正常,软件运行正常,程序在逻辑上存在错误,运行不出正确的结果,其他正常。
修改内容:出现相同课程的情况的原因是因为产生课程表的算法是随机的,如果在生成课表后,添加一个相同比较的算法,对每个课程进行比对,如果相同则选择相同类别的其他课程代替或者直接删除该课程其中的一个,这样就可以避免课程重复。
测试情况:通过反复测试,对于课程重复的问题得到了解决,但由于算法不太简单和不完善,还是会出现类似这样的问题,我们小组也在不断的寻求更好的算法来彻底解决该问题。
修改时的资源消耗(人工数和计算机时数):人工数1。
完整报告请私信