软件工程实验(四个实验)(2020年整理).pdf

上传人:摩西的****12 文档编号:145891349 上传时间:2020-09-24 格式:PDF 页数:14 大小:469.19KB
返回 下载 相关 举报
软件工程实验(四个实验)(2020年整理).pdf_第1页
第1页 / 共14页
软件工程实验(四个实验)(2020年整理).pdf_第2页
第2页 / 共14页
软件工程实验(四个实验)(2020年整理).pdf_第3页
第3页 / 共14页
软件工程实验(四个实验)(2020年整理).pdf_第4页
第4页 / 共14页
软件工程实验(四个实验)(2020年整理).pdf_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《软件工程实验(四个实验)(2020年整理).pdf》由会员分享,可在线阅读,更多相关《软件工程实验(四个实验)(2020年整理).pdf(14页珍藏版)》请在金锄头文库上搜索。

1、 1 武汉轻工大学 软件工程实验报告 院系:院系: 数数学和计算机学院学和计算机学院 班级:班级: 软件工程软件工程 1504 姓名:姓名: 赵佳赵佳璐璐 学号:学号: 1508100065 2 实验一实验一 结构化分析实验结构化分析实验 1 实验目的:实验目的: 通过此实验了解结构化分析的特点和步骤, 以及结构化分析所采用的基本图 形工具。 2.实验内容:实验内容: 假设你在一所职业高中工作,负责该校信息系统的建设和维护。财务科长请 你研究用学校拥有的 pc 机生成工资明细表和各种财务报表的可能性。 3.实验要求:实验要求: 1 问题定义:请在这个阶段描述你需要解决的问题。包括用户面临的问题

2、和预 期的项目规模。最后生成一份问题定义报告书。 2 可行性研究: 在这个阶段产生处理工资事务的大致过程, 画出高层逻辑模型, 并且画出相应的数据流图,建立数据字典。 3 对此系统进行成本效益分析。 4.实验步骤:实验步骤: 4.1 问题定义报告书问题定义报告书 1.项目名称:工资支付 2.问题描述: 该校一直由会计人工计算工资并编制财务报表, 随着学校规模扩大工作量也 越来越大。目前每个月都需要两名会计紧张工作半个月才能完成,不仅效率低而 且成本高。今后学校规模将进一步扩大,人工计算工资的成本还会进一步提高。 3.项目目标: 1) 研究开发费用较低的新工资支付系统的可能性。 4 项目规模:

3、1) 开发成本应该不超过 7.2 万元 5.初步设想: 1) 用学校自己的计算机系统生成工资明细表和财务报表 6. 可行性研究: 为了更全面地研究工资支付项目的可能性,建议进行大约历时两周的可行性 研究。这个研究的成本不超过 4000 元。 3 4.2 可行性研究:可行性研究: 1. 处理工资事务的大致过程处理工资事务的大致过程 : 1) 每月月末教师把他们当月实际授课时数登记在课时表上,由各系汇总后交给 财务科,职工把他们当月完成承包任务的情况登记在任务表上,汇总后交给 财务科。 2) 两名会计根据这些原始数据计算每名教职工的工资,编制工资表、工资明细 表和财务报表。然后,把记有每名教职工工

4、资总额的工资表报送银行。 3) 由银行把钱打到每名教职工的工资存折上,同时把工资明细表发给每名教职 工。 2高层逻辑模型高层逻辑模型: 会计会计 D D1 1:课时表和课时表和 任务表任务表 1.1 审核数据审核数据 1 1. .2 2 加工事务数据加工事务数据 事务数据事务数据 D D2 2:工资明细表工资明细表 D 事务数据事务数据 2 2 汇总数据汇总数据 事务数据事务数据 D D2 2:财务报表财务报表 银行银行 3.数据流图:数据流图: 教师教师 1 1. .1 1 登记登记 D1:课时表课时表 授课时数授课时数 1 1. .2 2 汇总汇总 D2:任务表任务表 承包任务完成情况承包

5、任务完成情况 2 2. .1 1 计算工资计算工资 2 2. .2 2 编制表格编制表格 课时表课时表 任务表任务表 D3:工资表工资表 D4:工资明细表工资明细表 D5:财务报表财务报表 银行银行 3 3 发工资发工资 职工职工 3 3 分发工资明细表分发工资明细表 职工职工 教师教师 4.数据字典数据字典: 1) 名字:授课情况登记表 别名: 描述:记录每个教师的当月完成的课时及任务。 定义:授课情况登记表=教职工编号+姓名+职务+职称+基本工资+生活补贴+ 书报费+交通费+洗理费 位置:输出到打印机 2) 4 名字:教职工编号 别名: 描述:唯一的标识一个教职工 定义:教职工编号=8字符

6、8 位置:授课情况登记表 3) 名字:每个人当月的实发工资数 别名: 描述:记录每个教师当月应发的工资数 定义: 每个人当月的实发工资数=课时费+岗位津贴-个人所得税-住房公积金-保险费 位置:工资明细表 4) 名字:工资明细表 别名: 描述:记录每个教职工每个月应得的和应扣除的费用 定义:工资明细表=每个人当月的实发工资数+课时费+岗位津贴+个人所得税+住 房公积金+保险费 位置:输出到打印机 4.3 成本效益分析:成本效益分析: 1.低成本系统低成本系统: 解决方案:解决方案: 把每月发一次工资改为每两个月发一次工资, 则人工计算工资的成本大约可 减少一半,即每年可节省 1.2 万元。除了

7、已经进行的可行性研究的费用外,不再 需要新的投资。 优缺点优缺点: 1) 违反常规; 2) 教职工反对; 3) 不能解决根本问题,随着学校规模扩大,人工处理工资事务的费用也将成比例地增加。 2.中等成本系统:中等成本系统: 解决方案:解决方案: 1) 建议基本上复制现有系统的功能:课时表和任务表交到处理工资事务的专用 机房,操作员把这些数据通过终端送入计算机 2) 数据收集程序接收并校核这些事务数据,把它们存储在磁盘上。 3) 然后运行工资支付程序,这个程序从磁盘中读取事务数据,计算工资,打印 出工资表、工资明细表和财务报表。 优缺点:优缺点: 1) 效率介于高成本系统与低成本系统之间,开发成

8、本也是如此。 2) 仍然需要专门人员来操作管理系统,每年仍要在这方面耗费人力,资力。从长久利益来 看,效益不佳。 3.高成本系统高成本系统: 1) 建立一个中央数据库,为开发完整的管理信息系统做好准备,并且把工资支 付系统作为该系统的第一个子系统。 5 2) 这样做开发成本大约将增加到 12 万元,然而从工资支付这项应用中获得的 经济效益并不变。 最佳方案:最佳方案: 综合以上三个系统的优缺点,中成本系统是最适合的。草拟开发计划如下: 阶段 需要用的时间(月) 可行性研究 0.5 需求分析 1.0 概要设计 0.5 详细设计 1.0 实现 2.0 总计 5.0 6 实验二实验二 结构化设计实验

9、结构化设计实验 1.实验目的:实验目的: 能够通过结构化分析的结构进行设计,了解设计过程中的模块化原理。 2.实验内容:实验内容: 在上一次实验已经用结构化分析方法详细地分析了这个工资支付系统, 请从 结构化分析所得到的结果(完整数据流图) ,判断为事务流或是变换流,采用模 块化的方法,设计工资支付系统的结构。最终生成一个工资支付软件结构。 3.实验要求:实验要求: 写出设计过程、画出工资支付软件结构,用层次图表现 4.实验步骤:实验步骤: 4.1 设计过程:设计过程: 1. 供选择的方案 1) 低成本系统:把每月发一次工资改为每两个月发一次工资,则人工 计算工资的成本大约可减少一半,即每年可

10、节省 1.2 万元。除了已经进 行的可行性研究的费用外,不再需要新的投资。 2) 中成本系统: i. 建议基本上复制现有系统的功能:课时表和任务表交到处理工资事 务的专用机房,操作员把这些数据通过终端送入计算机 ii. 数据收集程序接收并校核这些事务数据,把它们存储在磁盘上。 iii. 然后运行工资支付程序,这个程序从磁盘中读取事务数据,计算工 资,打印出工资表、工资明细表和财务报表。 3) 高成本系统:建立一个中央数据库,为开发完整的管理信息系统做好准 备,并且把工资支付系统作为该系统的第一个子系统。 2. 最佳方案 低成本系统存在的问题: 4) 违反常规; 5) 教职工反对; 6) 不能解

11、决根本问题,随着学校规模扩大,人工处理工资事务的费用也将 成比例地增加。 高成本系统: 7 开发成本大约将增加到 12 万元,然而从工资支付这项应用中获得的经济 效益并不变。 所以,中等成本系统是最佳方案,成本居于高成本与低成本之间,而效 益不次于高成本系统。 3. 功能分解 1) 取数据 a) 收集事务数据 b) 审核事务数据 2) 计算工资 a) 计算正常工资 b) 计算超额工资 c) 更新年度报表 3) 打印表格 4.2 工资支付软件结构:工资支付软件结构: 计算教职工工资计算教职工工资 取数据取数据 计算工资计算工资 印表格印表格 收集事务数据收集事务数据 审核事务数据 计算正常工资计

12、算正常工资 计算超额课时费计算超额课时费 更新年度数据更新年度数据 8 实验三实验三 软件测试实验(软件测试实验(2 学时)学时) 一、一、 实验目的:实验目的: 了解软件测试的基本概念,以及黑盒、白盒测试的基本过程。 二、二、 实验内容:实验内容: 1. 设计测试下列函数的测试方案: 函数 Search(somearray,size,value)的功能是,在一个整数数组 somearray 中搜索一个值为 value 的整数,如果数组中有这个数,则函数值等于该数的 下标,否则函数值等于-1。数组的长度由参数 size 指定。假定数组第一个元 素的下标为 1。 三、三、 实验要求实验要求 1

13、采用黑盒测试的方法,写出相应的测试用例 2 用 c 语言实现此函数,并且由此设计白盒测试方案(选做) 。 四、四、 实验步骤:实验步骤: 1. 采用黑盒测试的方法, 写出采用黑盒测试的方法, 写出相应的测试用例相应的测试用例(假定数组中的值为: 5, 8,-56,235,-65,449) 1) 等价划分: a) 有效输入的等价类: 一个正整数 输入:10 预期的输出:-1 一个负整数 输入:-56 预期的输出:3 b) 无效输入的等价类: 一个非数字符号 输入:S 输出:错误无效输入 一个浮点型数字 输入:23.1 9 预期的输入:错误无效的输入 若干个空格 输入: 预期的输出:错误无效的输入

14、 空输入 输入: 预期的输出:错误没有输入 数字和非数字符号的组合 输入:5# 预期的输出:错误无效的输入 负号与最高位数字之间有空格 输入:- 56 预期的输出:错误无效的输入 c) 合法输入的等价类: 在计算机能表示的最小负整数和零之间的负整数。 输入:-10000 预期的输出:-1 零 输入:0 预期的输出:-1 在零和计算机能表示的最大整数之间的正整数 输入:10000 预期的输出:-1 d) 非法输入的等价类: 比计算机能表示的最大正整数还大的正整数。 输入:132767 预期的输出:错误无效的输入 比计算机能表示的最小负整数还小的负整数。 输入:-47561 预期的输出:错误无效的

15、输入 2) 边界值分析: 使输出刚好等于最小的下标 输入:5 预期的输出:1 使输出刚好等于最大的下标 输入:449 预期的输出:6 使输出不是数组的下标(这里为-1) 输入:500 预期的输出:-1 2. 用用 c 语言实现此函数语言实现此函数,并且由此设计白盒测试方案(选做) 。,并且由此设计白盒测试方案(选做) 。 #include 10 int Search(int somearray,int size,int value) for(int i=1;i=size;i+) if(sonearrayi=value) return i; return -1; void main() int size=6; int value; int arraysize=5,8,-56,235,-65,449; do printf(“请输入一个整数:”); scanf(“%d”, while(int(value)!=value); if(int(value)=value) Search(array,size+1,value); 11 开始开始 输入一个整数输入一个整数valuevalue valuevalue是整数是整数 吗吗? SearchSearch( (soneArraysoneArray, ,sizesiz

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号