《曲阜师范大学软件工程 复习资料.docx》由会员分享,可在线阅读,更多相关《曲阜师范大学软件工程 复习资料.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程(-)名词解释.软件危机2.软件生存周期3.白盒测试简答题.简述总体设计阶段的启发规则。1 .什么是程序结构设计?综合分析题.为了方便储户,某银行拟开发计算机储蓄系统。储户填写的存款 单或取款单由业务员输入系统,如果是存款,系统记录存款人姓名, 住址,存款类型,存款日期,利息等信息,并印出存款单给储户;如 果是取款,系统计算利息,并印出利息清单给储户。使用实体-联系 图描绘系统中的数据对象1 .给定下面一段伪码:procedure:sortdo while records remainread record;if record field 1=0then process record;
2、store in buffer;increment counter;elseif record field 2=0then reset counter;else process record;store in file;endif2.参考答案1)程序流程图2)环形复杂度二4个Stopendifenddoend1)画出上述伪码对应的程序流程图。计算程序的环形复杂度。答案名词解释(1)软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导 致软件开发与维护过程中出现一系列严重问题的现象。(2)软件生存周期是指一个软件从得出开发要求开始直到该软件报废为止的整个时期。 (3)白盒测试也
3、称结构测试或逻辑驱动测试。它是在已知程序内部结构和处理过程的 前提下,通过测试来检测程序中的每条路径是否按预定要求正常运行。简答题).参考答案:1)改进软件结构提高模块独立性2)模块规模应该适中3)深度,宽度,扇出,扇入都应适当4)模块的作用域应该在控制域之内5)力争降低模块接口的复杂程度6)设计单入口单出口的模块7)模块功能应该可以预测).参考答案:结构程序设计的经典定义如下:如果一个程序的代码块仅仅通过顺序、选择和循环 这三种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程 序是结构化的。综合分析题(1) E-R 图(隼址) (身份手号码)(姓名)(电话号码(名称储户
4、盘二多/VWJ) /(到期日前)J (电话号码) lz储群所(类型)(2)C1.率)1)流程图开始2)环形复杂度二4个软件工程(二)名词解释1.软件工程2.数据字典3.黑盒测试简答题.什么是软件危机,为什么会产生软件危机?1 .什么是数据流图,为什么数据流图要分层?综合分析题.为了方便储户,某银行拟开发计算机储蓄系统。储户填写的存款 单或取款单由业务员输入系统,如果是存款,系统记录存款人姓名, 住址,存款类型,存款日期,利息等信息,并印出存款单给储户;如 果是取款,系统计算利息,并印出利息清单给储户。1)用数据流图描绘本系统的功能。2)使用实体-联系图描绘系统中的数据对象。1 .程序的伪代码如
5、下所示:8) x=y+5;9) else10) x=y+10;11) 12) num;13) )14) )void sort (int num , int type),int x=0;1) int y=0;while(num0)2) if(type=0)x=y+2;3) else if(type=l)1)画出程序的控制流图。(不要改变语句前面的编号) 计算出环域复杂度。答案名词解释(1)软件工程是用科学知识和技术原理来定义、开发、维护软件的一门学科。其主要 思想是在软件生产中用工程化的方法代替传统手工方法。(2)数据字典是各类数据描述的集合。一个好的数据字典是一个数据标准规范,可以 使数据库的
6、开发者依此来实施数据库的建设、维护和更新,从而减低数据库的冗余度并 增强整个数据库的完整性。(3)黑盒测试又称为功能测试或数据驱动测试。它是在已知软件所应具有功能的前提 下,通过测试来检测每个功能是否都能正常使用。简答题.答:软件危机是指软件在开发和维护过程中遇到的一系统严重问题。主要包含二方 面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。产生软件 危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确 有关。1 .答:数据流图从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在 系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表
7、达工具及用于表 示软件模型的一种图示方法。为了表达数据处理过程的数据加工情况,用一个数据流图 是不够的。为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以 分层的数据流图反映这种结构关系综合分析题(1) 1)数据流图如下:2)实体-联系图1)程序流图2)计算圈复杂度是流通过公式:V(G) =E-N+2来计算。E是流图中边的数量,在本例中E=ll, 图中结点的数量,在本题中,N=9, V(G) =11-9+2=4o软件工程(三)名词解释1.软件2.数据流图3.灰盒测试简答题.比较瀑布模型与快速原型模型,简述各自的特点。1 .简述需求分析阶段建立的模型及其实现图形工具。综合分析题.
8、某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单 或取款单由业务员输入系统。如果是存款,则系统录入存款人的姓名、 住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、 利率及密码(可选)等信息,并打印出存款单给储户;如果是取款且 存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未 留密码,则系统计算利息并打印出利清单给储户。请用数据流图描绘 本系统的功能。1 .给定下面一段伪码:(1)start(2) input (A, B, C)(3) if A5(4)then x=10(5)else x=l(6)endif(7)if (B10)(8)then y=20(9)el
9、se y=2(10)endif2)画出上述伪码对应的程序流程图。计算程序的环形复杂度。答案名词解释1)软件是一系列按照特定顺序组织的计算机数据和指令的集合.(2)数据流图(Data Flow Diagram),简称DFD,它从数据传递和加工角度,以图形方 式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统 分析方法的主要表达工具及用于表示软件模型的一种图示方法。(3)灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测 试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。简答题.参考答案:1)瀑布模型以文档驱动工程,开始于需求分析阶段,每个阶段必须以另一个阶段 的结束为开始。特点:阶段间具有顺序性和依赖性,推迟实现的观点,质量保证的观点;2)快速原型模型以快速原型为驱动,开始于一个快速建立的原型。开发基本上是 线性顺序进行的,不含反馈环,可以获知用户的真正需求。1 .参考答案:1)数据模型,使用实体联系图,描绘数据对象及数据对象之间的关系;2)功能模型,使用数据流图,描绘数据在软件系统中移动时被变换的逻辑过程;3)行为模型,使用状态转换图,描绘系统的各种行为模式和在不同状态间转换的 方式。综合分析题1.参考答案1)数据流图如下:
限制150内