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