1、软件工程实验总结四个实验软件工程实验报告实验一结构化分析实验1实验目的:通过此实验了解结构化分析的特点和步骤,以及结构化分析所采用的基本图 形工具。2. 实验内容:假设你在一所职业髙中工作,负贵该校信息系统的建设和维护。财务科长请 你研宂用学校拥有的PC机生成工资明细表和各种财务报表的可能性。3. 实验要求:1. 问题定义:谙在这个阶段描述你需要解决的问题。包括用户面临的问题和预 期的项目规模。最后生成一份问题定义报告书。2. 可行性研宂:在这个阶段产生处理工资事务的大致过程,画出髙层逻辑模型, 并且画出相应的数据流图,建立数据字典。3. 对此系统进行成本效益分析。4. 实验步骤:4.1问题定
2、义报告书1. 项目名称:工资支付2. 问题描述:该校一直由会计人工计算工资并编制财务报表,随着学校规模扩大工作量也 越來越大。目前每个月都需要两名会计紧张工作半个月才能完成, 不仅效率低而 且成本髙。今后学校规模将进一步扩大,人工计算工资的成本还会进一步提髙。3. 项目目标:1)研宂开发费用较低的新工资支付系统的可能性。4项目规模:1)开发成本应该不超过7.2万元5. 初步设想:1)用学校自己的计算机系统生成工资明细表和财务报表6. 可行性研宂:为了更全面地研究工资支付项目的可能性,建议进行大约历时两周的可行性 研宂。这个研宂的成本不超过4000元。4.2可行性研究:1.处理工资事务的大致过程
3、 :1) 每月月末教师把他们当月实际授课时数登记在课时表上, 由各系汇总后交给财务科,职工把他们当月完成承包任务的情况登记在任务表上,汇总后交给财务科。2) 两名会计根据这些原始数据计算每名教职工的工资,编制工资表、工资明细 表和财务报表。然后,把记有每名教职工工资总额的工资表报送银行。3) 由银行把钱打到每名教职工的工资存折上,同时把工资明细表发给每名教职 工。2髙层逻辑模型,4. 数据字典:1)名字:授课情况登记表 别名:描述:记录每个教师的当月完成的课时及任务。定义:授课情况登记表=教职工编号+姓名+职务+职称+基本工资+生活补贴+ 书报费+交通费+洗理费位罝:输出到打印机字名述义置 名
4、别描定位名别描:教职工编号:唯一的标识一个教职工:教职工编号=8字符8:授课情况登记表:义定S.字名义 位 名别描定每个人当月的实发工资数记录每个教师当月应发的工资数每个人当月的实发工资数=课时费+岗位津貼-个人所得税-住房公积金-保险费工资明细表工资明细表置位记录每个教职工每个月应得的和应扣除的费用工资明细表=每个人当月的实发工资数+课时费+岗位津貼+个人所得税+住房公积金+保险费输出到打印机4.3成本效益分析:1. 低成本系统:解决方案:把每月发一次工资改为每两个月发一次工资,则人工计算工资的成本大约可 减少一半,即每年可节省1.2万元。除了己经进行的可行性研宄的费用外,不再 需要新的投资
5、,优缺点:1) 违反常规:2) 教职工反对:3) 不能解决根木问趣.随巷学校规模扩大,人工处理工资事务的费用也将成比例地增加。2. 中等成木系统:解决方案:1) 建议基本上复制现有系统的功能:课时表和任务表交到处理工资事务的专用 机房,操作员把这些数据通过终端送入计算机2) 数据收集程序接收并校核这些事务数据,把它们存储在磁盘上。3) 然后运行工资支付程序,这个程序从磁盘中读取事务数据,计算工资,打印 出工资表、工资明细表和财务报表。优缺点:1) 效率介于离成本系统与低成木系统之间,开发成木也是如此。2) 仍然需要专门人员來操作管理系统, 每年仍要在这方而耗费人力,资力。从长久利益來看.效益不
6、佳。3. 商成木系统:I)建立一个中央数据库,为开发完整的管理信息系统做好准备,并且把工资支付系统作为该系统的第一个子系统。2)这样做开发成本大约将增加到 12万元,然而从工资支付这项应用中获得的 经济效益并不变。最佳方案:综合以上三个系统的优缺点,中成本系统是最适合的。草拟开发计划如下 :阶段需要用的时间(月)可行性研究0.5需求分析1.0概要设计 10.5详细设计 J1.0实现2.0总计 I5.0实验二结构化设计实验1. 实验目的:能够通过结构化分析的结构进行设计,了解设计过程中的模块化原理。2. 实验内容:在上一次实验己经用结构化分析方法详细地分析了这个工资支付系统, 请从结构化分析所得
7、到的结果(完整数据流图),判断为事务流或是变换流,采用模 块化的方法,设计工资支付系统的结构。最终生成一个工资支付软件结构。3. 实验要求:写出设计过程、画出工资支付软件结构,用层次图表现4. 实验步骤:4.1设计过程:1. 供选择的方案1) 低成本系统:把每月发一次工资改为每两个月发一次工资,则人工计算工资的成本大约可减少一半,即每年可节省 1.2万元。除了己经进行的可行性研宂的费用外,不再需要新的投资。2) 中成本系统:i. 建议基本上复制现有系统的功能:课时表和任务表交到处理工资事务的专用机房,操作员把这些数据通过终端送入计算机H. 数据收集程序接收并校核这些事务数据,把它们存储在磁盘上
8、。iii. 然后运行工资支付程序,这个程序从磁盘中读取事务数据,计算工资,打印出工资表、工资明细表和财务报表。3) 髙成本系统:建立一个中央数据库,为开发完整的管理信息系统做好准 备,并且把工资支付系统作为该系统的第一个子系统。2. 最佳方案低成本系统存在的问题:4) 违反常规:5) 教职工反对:6) 不能解决根本问题,随着学校规模扩大,人工处理工资事务的费用也将成比例地增加。髙成本系统:开发成本大约将增加到12万元,然而从工资支付这项应用中获得的经济 效益并不变。所以,中等成本系统是最佳方案,成本居于髙成本与低成本之间,而效 益不次于髙成本系统。3.功能分解1) 取数据a) 收集事务数据b)
9、 审核事务数据2) 计算工资a) 计算正常工资b) 计算超额工资 C)更新年度报表3) 打印表格4.2工资支付软件结构:实验三软件测试实验(2学时)一、 实验目的:了解软件测试的基本概念,以及黑盒、白盒测试的基本过程。二、 实验内容:1. 设计测试下列函数的测试方案:函数SearCh(SOmearrayJSiZe)VaIUe) 的功能是,在一个整数数组 SOmearray中搜索一个值为ValUe的整数,如果数组中有这个数,则函数值 等于该数的下标,否则函数值等于-1。数组的长度由参数SiZe指定。假定 数组第一个元素的下标为1。三、 实验要求1. 采用黑盒测试的方法,写出相应的测试用例2. 用
10、C语言实现此函数,并且由此设计白盒测试方案(选做)。四、 实验步骤:1.采用黑盒测试的方法,写出相应的测试用例(假定数组中的值为:5,8,-56, 235, -65, 449)1) 等价划分:a) 有效输入的等价类:一个正整数 输入:10 预期的输出:-1一个负整数 输入:-56 预期的输出:3b) 无效输入的等价类:一个非数字符号 输入:S输出:错误一一无效输入 一个浮点型数字输入:23.1预期的输入:错误一一无效的输入 若干个空格输入: ,预期的输出:错误一一无效的输入 空输入输入:预期的输出:错误一一没有输入 数字和非数字符号的组合输入:5#预期的输出:错误一一无效的输入 负号与最髙位数
11、字之间有空格输入:-56预期的输出:错误一一无效的输入 C)合法输入的等价类:在计算机能表示的最小负整数和零之间的负整数。 输入:-IOoOO 预期的输出:-1零输入:0 预期的输出:-1在零和计算机能表示的最大整数之间的正整数 输入:IOOOO 预期的输出:-1d)非法输入的等价类:比计算机能表示的最大正整数还大的正整数。输入 132767预期的输出:错误一一无效的输入 比计算机能表示的最小负整数还小的负整数。输入:-47561预期的输出:错误一一无效的输入 2) 边界值分析:使输出刚好等于最小的下标 输入:5 预期的输出:1使输出刚好等于最大的下标 输入:449 预期的输出:6使输出不是数
12、组的下标(这里为-1 )输入:500 预期的输出:-12.用C语言实现此函数,并且由此设计白盒测试方案(选做)#includeint 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; doPrintf( “请输入一个整数:”);SCanf(“ d,&value); while(int(value)!=val
13、ue);if(int(value)=value)SearCh(array,size+1 ,value);1) 语句羝盖:ValUe=8 .覆盍路径:abcdefgifghj2) 判定箝盖:ValUe=8.,播盍路径:abcdefgifghj ValUe=8.5 ,羝路径:abckb ValUe=IO ,澄路径:abcdefgifk实验四面向对象分析(2学时)实验目的:通过采用面向对象的方法对问题进行分析,建立系统的对象模型和功能模型。动 态模型为选作内容。实验内容:某医生开了一家牙科诊所。他有一个牙科助手、一个牙科保健员和一个接待 员。医生需要一个软件系统來管理预约。当病人打电话预约时,接待员
14、将査阅预约登记表,如果病人申请的就诊时间 与己定下的预约时间冲突,则接待员建议一个就诊时间以安排病人尽早得到诊治。 如果病人同意建议的就诊时间,接待员将输入约定时间和病人的名字。系统将核 实病人的名字并提供纪录的病人数据,数据包括病人的病历号等。在每次治疗或 淸洗后,助手或保健员将标记相应的预约诊治己经完成, 如果有必要,安排摘人下一次再來。系统能够按病人姓名和日期进行査询,能够显示记录的病人数据和预约信息。 接待员可以取消预约,可以打印出前两天预约尚未接诊的病人淸单。系统可以从 病人记录中获知病人的电话号码。接待员还可以打印出关于所有病人的每天和每 周的工作安排。实验要求:1. 建立牙科诊所
15、管理系统的对象模型2. 用数据流图建立牙科诊所管理系统的功能模型。3. 写出牙科诊所管理系统的脚本(选作)。4. 画出牙科诊所管理系统状态图(选作)。实验步骤:1.建立牙科诊所管理系统的对象模型2.用数据流图建立牙科诊所管理系统的功能摸型。3 4写出牙科诊所管理系统的脚本(选作)。画出牙科诊所管理系统状态图(选作)。预约管理系统的正常情况脚本系统请接待员输入病人预约信息 系统查询该病人是否己预约过如果预约过,且时间冲突,提示接待员建议一个合适的时间 病人接受建议的时间】Or如果没有预约过,系统提示会诊时间 病人会诊中,系统记录相关病人数据会诊完毕,系统更改预约信息中预约诊治是否完成信息 系统增加新的预约登记表预约管理系统的异常情况脚本 系统请接待员输入病人预约信息 系统査询该病人是否己预约过如果预约过,且时间冲突,提示接待员建议一个合适的时间 如果病人接受建议的时间,系统审核输入信息正确与否 输入病人信息有误,提示重新输入系统审核输入信息正确与否输入信息正确or如果没有预约过,系统提示会诊时间 病人会诊中,系统记录相关病人数据 会诊完毕,系统更改预约信息中预约诊治是否完成信息 系统增加新的预约登记表
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1