1、软件工程课程设计终极版枣 庄 学 院信息科学与工程学院课程设计任务书 题 目: 学生成绩管理系统 学 号: 201212120202、201212120224、201212120234 姓 名: 崔浩 王珂 张勇 专 业: 网络工程 课 程: 软件工程 指导教师: 姜振凤 职称: 讲师 完成时间: 20 15 年 6 月-20 15 年 7月枣庄学院信息科学与工程学院制 2015年 7 月 8 日课程设计任务书及成绩评定课程设计的任务和具体要求 以开发小组为单位选择课题,完成“学生成绩管理系统”项目的分析、设计、开发、测试全过程,贯穿领会软件工程的基本思想,明晰软件工程阶段划分与各个阶段的主要
2、任务,借助相关计算机辅助软件工程工具(CASE),力图初步具备采用规范化的软件工程方法进行软件项目的研发能力。指导教师签字: 日期: 指导教师评语成绩: 指导教师签字: 日期: 课程设计所需软件、硬件等Powerdesigner、Sqlserver、笔记本电脑一台、c语言等课程设计进度计划起至日期工作内容备注6月10日6月25日我们小组根据所选的题目以及在这学期所学的软件工程的知识,严格按照软件生产的流程(使用的是瀑布模型)来完成此作品,小组成员各职其所,都完成了预期所做的工作!参考文献、资料索引序号文献、资料名称编著者出版单位1统一软件开发过程,Ivar Jacobson,James Rum
3、baugh,Grady Booch 著,周伯生 译,机械工业出版社,2002年1月。 第一章 摘要1.1系统开发的目的与意义 传统的教务信息处理利用手工方式登记、填写、更改和查询,早已不能满足当前成绩管理的需要。而随着时代的发展,计算机和网络的应用也是越来越普及,高校科技改革也是带头深入进行,通过设计一个有效的学生成绩管理系统,不仅可以节省大量的人力物力,减少投资和在填写,登记过程中可能出现的错误,而且极大的提高了查询效率和更新效率,并且是成绩管理变得系统化和自动化。通过编写文档作为系统的设计依据,对系统要完成的功能进行全面的要求。1.2系统用户和功能使用该系统的人有管理员,教师和学生。本系统
4、主要包含了管理员模块、教师提交信息模块、学生信息查询模块管理员进行系统的维护和更新及数据的存储和更新,包括权限控制,信息修改删除和出错处理等;教师通过身份验证进行成绩的提交和更改;学生能够通过身份验证进行成绩查询。第二章 可行性分析 进行研究的前提是系统能够实现:管理员用户录入所有学生的信息,包括学号、姓名、班级、出生日期、性别,课程,对学生数据进行管理、更新、修改、删除;教师用户登录后,能够阅读所教授课程及全部学生信息,并按学号录入学生成绩后提交给管理员,若成绩出错时可以修改、删除、增加学生成绩;学生用户登录后可以看到自己的学生信息和课程信息,并查询相应成绩2.1技术可行性 学生成绩管理系统
5、需要有软件工程,数据库技术,网络技术,相应软硬件支持,经济支持,人才要求等。 学生成绩管理系统的软件设备有操作系统WIN2000、WINXP,IE6.0及以上、10M以上的LAN接入网络带宽、数据库软件SQLServer,网络和办公软件EXCEL2000用以输出报表;学生成绩管理系统的硬件设备有100M网卡,电脑五台,CPU奔腾4以上,内存1G以上,硬盘160G以上,可打印A3纸的打印机1台用以打印所需学生成绩。在现代化社会,这些硬件设备以越来越低廉的价格进入千家万户。 学生成绩管理系统的人员要求:系统分析人员(2),开发人员(5),数据库管理人员(1)。采用C+实现,依靠强大的数据库控件和数
6、据库管理系统和其他语言相结合,两个月内开发出系统。现在有很多专门的机构用来培养计算机人才,各大高校也设置了很多的相应课程,现在的社会优秀的IT人才层出不穷,为系统的开发提供了强有力的智力支持。2.2经济可行性 通过对软件开发项目进行成本/效益估计,以确定软件系统可能带来的经济效益能否超过研制和维护此系统所需的费用。一套数据库软件如微软SQLServer价格在4万元,购买电脑、打印机网卡等硬件设备8万元,购买系统软件、办公软件、网络软件分别需要30000元、20000元和15000元,雇用2名系统分析员50元/小时,5名程序开发人员40元/小时,1名数据库管理人员45元/小时,2名技术书写人员3
7、0元/小时,工作5周,一周工作五天,每天8小时,其他物资消费5000元。假设一个学生成绩管理系统运行15年,后期软件硬件升级20000元,雇用系统管理员1500元/月。合计开发一个学生成绩管理系统需要56万元。应用传统成绩管理方式,根据学校规模学生人数每年消耗油墨纸张6万,雇用大量人力进行数据处理存储每年需要10万,累计15年需要资金240万。从直观上进行比较不仅每年可节省大量的物力(如传统管理方法的磁盘,纸张,相应的物理空间)和人力(数据量庞大需要大量的管理人员)开销,更重要的节约大量时间,提高工作效率,维护良好的学校工作形象,当然这些都是无形的资产,但也是无价的。2.3操作可行性 管理员需
8、要进行信息管理,教师用户和学生用户只需进行用户登录认证即可查看信息,操作简便易行,界面设计如果足够简单,可以非常方便的查询管理学生成绩。管理员对数据库的管理运用相关数据库知识,教师和学生用户只需在登录界面输入用户名和密码即可进入成绩查询系统,根据系统的提示,进行输入、单击操作即可输入成绩,查询成绩。操作简单易学。第三章 需求分析3.1功能需求3.1.1功能划分系统的功能需求包括以下几个方面(1)学生用户能够查询成绩和个人信息(2)教师用户能够查询学生信息,提交、修改学生成绩(3)管理员用户可以对系统的数据进行维护,如增加、删除、更新学生信息,增加、更改、删除教师信息满足以上需求的系统需要一下几
9、个模块(1)基本数据维护模块。基本数据维护模块提供了使用者录入、修改并维护基本数据的途径。如管理员对学生和教师用户信息的更新和教师用户输入学生成绩(2)信息查询模块。信息查询模块主要用于实现学生用户和教师用户对成绩和个人信息的查询(3)数据库管理模块。在系统中,所有的数据信息都要进行详细的记录,所以要用同意的数据库管理平台进行管理图3.1 学生成绩管理系统的功能需求图3.2 基本数据维护模块图3.3 信息查询模块图3.4 数据库模块3.2系统UML基本模型3.2.1系统的用例图学生用户,学生登录系统后可以查询个人信息和成绩,学生的成绩需要由产生成绩的人进行输入,需要教师把学生成绩的导入,同时需
10、要教师的信息,对于一个成绩管理系统,系统维护也至关重要,维护操作包括数据添加,更新修改,删除等。学生成绩管理系统主要实现学生查询成绩,教师录入成绩和管理员管理三个主要功能,涉及到角色有学生、教师和管理员根据分析可以得到系统的用例图为 图3.5 系统用例图第四章 总体设计4.1总体设计4.1.1软件结构体系 (1)系统流程图 图4.1 系统流程图 (2)系统数据流图 图4.2 系统数据流图(3)系统的类图在学生成绩管理系统中用到的类主要有:学生类,教师类,管理员类,成绩类,课程类,工作记录类学生类,属性包括姓名,学号,性别,年龄,年纪,班级,系别,专业,学生类能够进行的操作只有查询教师类,属性包
11、括姓名,教师号,性别,年龄,课程名称,能进行的操作有查询,包括学生信息和个人信息,添加成绩,修改成绩,删除成绩管理员类,属性包括姓名和工作编号,能进行的操作有查询信息,更新信息,修改信息,删除信息,删除成绩 图4.3 类图1其他相关的类课程类,属性有课程名称,课程编号,教师编号,能对课程进行查询操作成绩类,属性有对应课程名称,对成绩进行的操作可以有查询,创建,修改,删除工作记录,属性有进行某项操作的人员,操作时间,操作对数据库进行的修改,对工作记录进行查询,删除和保存图4.4 类图2各类之间的关系图4.5 系统类图4.2数据库设计1 DBMS简介:本系统应该实现学生成绩信息的管理与查询,具体包
12、括学生信息查询,如姓名,五门课程总成绩等;同时可以对以上信息进行修改,删除和添加。另外还要做到可以对学生成绩信息以及成绩信息查询和维护。 2 数据库的概念模型与逻辑设计:管理员只需要输入学生情况表和课程设置表中的数据及教师代码表中的信息;教师只需输入成绩表中的学生成绩。系部代码表、班级代码表、教师代码表、课程代码表等数据表的数据由教务处统一生成,由各系部共享。3 系统的主要数据表设计如下: 学生情况表(学号,姓名,性别,年龄,班级,年级,专业,系别) 系部代码表(系部代码,系部名称) 班级代码表(班级代码,班级名称) 教师代码表(教师代码,教师名称) 课程设置表(课程代码,课程名称,教师名称)
13、 学生成绩表(学号,姓名,课程代码,课程名称,学期,成绩,学分) 表4.1 学生基本信息表 字段名 数据类型 含义说明 空值情况 SID Char(10) 学号 主关键字 Name Char(27) 姓名 不为空 sex Char(2) 性别 可为空 speciality Char(20) 专业 可为空 class Char(10) 班级 可为空College Char(20) 系别 可为空 GRADE Char(5) 年级 可为空表4.2 课程表 字段名 数据类型 含义说明 空值情况 CID Char(6) 课程号 主关键字 CName Char(20) 课程名称 不能为空 CT Char(
14、20) 教师名 可为空表4.3 成绩信息表 字段名 数据类型 含义说明 空值情况 SID Char(10) 学号 不为空 CID Char(6) 课程号 不为空 term Char(20) 学期 不为空 score Float(8) 成绩 可为空 表4.4 系统用户表列名数据类型可否为空说明user_IDCHAR(10)NOT NULL用户名称(主键)user_PWDCHAR(10)NULL用户密码user_DESCHAR(10)NULL用户描述4.3界面设计1、屏幕格式采用B/S模式,界面由C设计实现,完全基于windows兼容的桌面平台 2、报表格式 采用与实际的报表格式一致,当然这也要求
15、客户端的硬件配置(如打印机等)要一致。3、菜单格式 采用工具栏与菜单并用的方式,力图简洁、明了。 图4.6 用户界面第五章 详细设计5.1 系统程序流程图图5.1系统流程图5.2系统程序设计5.2.1登入模块功能:是用户可以进行各种操作的必须前提。输入项目:用户名、密码。输出项目:浏览区和基本资料区程序逻辑:P1: 检查用户名、密码与数据库是否吻合。若是,转P3P2: 产生提示用户名或密码错误的消息窗口;P3: 用户确认后退出程序运行;P4: 进入主窗体;P5: 进入事件等待状态; 图5.2 模块设计15.2.2 关闭系统模块功能:关闭并退出系统,保留相应状态数据。输入项目:全局变量。输出项目
16、:更新后的数据库文件和配置文件。程序逻辑:P1: 设置数据库和配置文件;P2: 释放系统资源并退出系统;图5.2 模块设计25.2.3 刷新基本资料模块功能:对更改后的基本资料区进行刷新。输入项目:对原来记录中memo域的处理方式(更新、刷新)。输出项目:设置浏览区和数据库。5.2.4 系统功能模块功能:选择各种系统功能。输入项目:鼠标、键盘或写字板事件。输出项目:无程序逻辑:P1: 若事件为查询,调用查询模块M8,转P9;P2: 若事件为修改,调用修改模块M9,转P9;P3: 若事件为添加,调用增加模块M10,转P9;P4: 若事件为删除,调用删除模块M11,转P9;P5: 若事件为打印,调
17、用打印模块M12,转P9;P6: 若事件为统计,调用打印模块M13,转P9;P7: 若事件为最小化,执行Windows缺省操作,转P9;P8: 若事件为关闭,调用关闭系统模块M2;P9: 进入事件等待状态; 图5.3 模块设计35.2.5 查询模块功能:完成查询功能。性能:响应时间应尽量快。程序逻辑:P1: 进入查询窗体;P2: 若用户取消,则返回;P3: 获得查询结果;P4: 查询结果显示在主窗体上,并等待用户确认;P5: 若查询结果项数等于零,返回;测试要点:测试各种查询方式。 图5.4 模块设计45.2.6 修改模块功能:完成修改功能。输入项目:各种修改。输出项目:修改后的基本资料程序逻
18、辑:P1: 点击要修改的表;P2: 产生窗体; P3: 等待用户修改; P4: 若取消,返回; P5: 对数据进行修改; P6: 判断不能为空的字段是否为空;P7: 为空发出警告,并转到P3; P8: 若不为空,保存数据到数据库。 图5.5 模块设计55.2.7 添加模块功能:完成增加功能。程序逻辑:P1: 点击要修改的表;P2: 产生窗体; P3: 等待用户修改; P4: 若取消,返回; P5: 对数据进行修改; P6: 判断不能为空的字段是否为空; P7: 为空发出警告,并转到P3; P8: 若不为空,保存数据到数据库。图5.6 模块设计65.2.8 删除模块功能:完成删除功能。程序逻辑:
19、P1:产生窗口;P2: 若取消,则返回;P3: 若确定,从数据库中删除记录;P4: 保存记录至数据库;P5: 调用刷新浏览模块M4;P6: 调用刷新基本资料模块M6,返回; 图5.7 模块设计75.2.9 打印模块功能:完成打印功能。程序逻辑:P1: 产生打印窗口;P2: 若取消,则返回;P3: 若确定,完成打印任务,返回; 图5.8 模块设计85.2.10 统计模块功能:完成打印功能。输入项目:所要统计的数据字段。输出项目:所统计的数据。程序逻辑:P1: 产生统计窗体;P2: 等待用户输入所需统计的字段; P3: 若取消,返回;P4: 输入字段; P5: 判断是否有此字段; P6: 为无发出
20、警告,并转到P3; P7: 若有,产生统计列表。 P8: 返回; 图5.9 模块设计95.2.11 详细资料模块功能:显示记录的详细资料。程序逻辑:P1 启动系统;P2: 产生窗体,显示信息;P3: 根据用户操作,返回相应值; 图510 模块设计10第六章 系统测试6.1 测试目的测试是为了发现程序中的错误而执行程序的过程,测试的目的就是在软件投入生产运行之前,尽可能的发现软件中的错误。成功的测试是发现了至今为止尚未发现的错误的测试。测试用例设计和执行是测试工作的核心,也是工作量最大的任务之一,设计良好的测试用例模板能提高测试用例的设计质量,便于跟踪测试用例的执行结果,自动生成测试用例覆盖率报
21、告。 6.2测试项目(1)登录测试(2)数据输入和输出测试(3)权限测试(4)学生功能测试(5)教师功能测试(6)教务管理员的功能测试6.3测试步骤6.3.1软件测试流程测试阶段的步骤 :每个软件测试阶段都要经历以下步骤:测试需求分析、测试过程设计、测试实现、测试实施、测试评价、测试维护。 测试角色 :每个测试步骤都对应一个测试角色,另外还定义测试配置管理的角色。 明确区分各类测试角色,并明确定义其资源(人/物/时间)的安排,是保障软件测试工作有序开展、有效管理的关键。 明确区分测试需求分析角色和测试过程设计的角色意义还在于:软件测试对软件功能/软件实现有了可追踪性,因而为准确评议测试用例的质
22、量提供依据。 软件系统的测试流程:单元测试、部件集成、部件确认、配置项组装、配置项确认、系统综合和系统验收。 6.3.2测试用例1 软件测试用例的定义 软件测试用例可以被定义为如下元组: 表6.1 测试用例测试用例ID测试用例的ID(由案例管理系统自动生成,方便跟踪管理)测试环境进入测试实施步骤所需的代码和数据测试功能点测试的功能检查点测试输入运行测试所需的代码和数据测试类型测试类型:功能测试、边界测试、异常测试、性能测试、压力测试、兼容测试、安全测试、恢复测试、安装测试、界面测试、启动/停止测试、文档测试、配置测试、可靠性测试、易用性测试、多语言测试测试操作详细描述测试过程,案例的操作步骤建
23、议少于15个预期结果预期的测试结果用例执行结果执行时填写,分为通过、失败、警告、阻塞、忽略2软件测试用例的生成和执行 软件测试的核心任务是生成和执行软件测试用例。 (1) 测试索引和测试环境在测试需求分析步骤中定义,是软件测试计划的内容; (2) 测试输入、测试操作、预期结果和评价标准的描述性定义在软件设计步骤中定义,是软件测试说明的内容; (3) 测试输入、测试操作、预期结果和评价标准的计算机表示(代码/数据定义)在软件测试实现步骤中给出,是软件测试程序产品。 3、测试用例的设计用户登录功能描述:用户凭用户名和密码进行登录,用户名对应学号,假设本班共有50名学生,学号由4101到4150,密
24、码不能少于6个字符,则可根据划分等价类,边界值检测法,错误推测法,因果图法等设计测试用例。表6.2 测试用例设计输入数据有效等价类无效等价类用户名4个数字字符非数字多于4少于4个对应数值在4101到4150之间4150密码大于6个字符小于6个字符测试用例为表6.3 测试用例用例ID输入等价类用例说明测试数据预期结果1001用户名有1非数字字符412B输入无效1002全为非数字字符ABCD1003多于4个410231004少于4个41210054个数字字符4102输入有效1006对应数值41504151输入无效1008最小的数值4101输入有效1009最大的数值41501010密码少于6位字符1
25、2345输入无效10116个字符123456输入有效1012多余6个字符12345678查询测试用户要登录系统查询成绩,必须同时输入用户名和密码,用户名和密码必须匹配才能成功登录系统。用户名和密码的定义规则在上面的登录测试中有所规定表6.4 测试用例用例编号测试标题测试步骤预期结果2001页面显示从测试用例入口处进入页面元素完整显示,页面与设计时一致2002学号:成功输入输入已存在的用户名通过验证2003学号:容错性验证输入:41203输入到第五位时系统提示2004用户名:成功输入输入存在的用户名成功输入2005用户名:学号验证没有输入用户名页面信息显示失败,并提示输入用户名2006信息显示:
26、成功输入正确的用户名、密码页面显示完整信息2007信息显示:用户名、密码校验输入用户名,没有输入密码页面显示失败,并提示输入密码2008信息显示:用户名、密码校验输入密码,没有输入学用户名页面显示失败,并提示输入用户名2009信息显示:用户名、密码匹配校验输入用户名与密码不一致的姓名页面显示信息失败,并提示用户名密码不匹配2010输入有效性校验输入不存在的密码页面显示失败,并提示密码不正确数据库测试:核实是否可以输入和检索用户信息。 核实是否可以插入和显示内容和类别。 表6.5 测试用例用例ID测试标题测试步骤预期结果3001管理员插入数据添加新用户添加成功并保存到数据库3002管理员删除数据
27、删除用户数据删除成功并保存到数据库3003教师插入数据添加新成绩添加成功并保存3004教师删除数据删除旧成绩删除成功并保存3005学生用户插入数据插入数据不能添加数据,操作无效,并提示用户没有此权力3006学生用户删除数据删除数据不能删除数据,操作无效,并提示用户没有此权力用户界面测试, 浏览所有的用例,核实是否每个用户界面面板都易于理。核实所有的联机帮助功能。 表6.6 测试用例用例ID测试标题测试步骤预期结果4001用户界面的易用性输入用户名密码,点击确定显示用户查询的信息4002用户界面的易用性输入用户名密码,按回车显示用户查询的信息 4003联机帮助功能点击帮助显示帮助信息4004联机
28、帮助功能点击帮助显示帮助信息 核实在具有 20 名并行用户时的系统响应。 核实在具有 100 名并行用户时的系统响应。 核实在具有 5.00 名并行用户时的系统响应。 核实在具有 1.000 名并行用户时的系统响应。 核实在具有 3.000 名并行用户时的系统响应用例ID测试标题测试步骤预期结果5001系统的响应20名用户同时使用系统系统响应时间1S5002100名用户并行使用系统响应时间1S5003500名用户并行系统响应时间1.5S50041000名用户并行系统响应时间2S50053000名用户并行系统响应时间3S 数据库容量有一定的限度,当数据超过一定的限度时系统提示用例ID测试标题测试步骤预期结果6001数据库容量小于系统容量的数据系统正常运行6002等于系统容量的数据系统正常运行,同时提示空间不足6003大于系统容量系统正常运行,但不能进行操作,同时提示空间不足,要求用户扩展空间第七章 总结在这次课程设计中,使我们小组学会了软件系统设计,在一个完整的应用系统中,软件系统设计是系统实现的基础,一个良好的软件系统设计能在很大程度上减轻程序员程序设计的工作量。另外,在设计中,要保证系统的有效性和完整性,否
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1