《软件工程》经典考试例题复习试题,重点知识点[含答案解析]
软件工程复习题及答案

软件工程复习题及答案一、选择题软件工程复习题(一)1、瀑布模型本质上是一种()A、线性顺序模型B、顺序迭代模型C、线性迭代模型D、及早见产品模型2、使用程序设计的控制结构导出测试用例的测试方法是()A、黑盒测试B、白盒测试C、边界测试D、系统测试3、软件结构图的形态特征能反映程序重用率的是()A、深度B、宽度C、扇入D、扇出4、软件结构图中,模块框之间若有直线连接,表示它们之间存在() A、调用关系B、组成关系C、链接关系D、顺序执行关系5、需求分析最终结果是产生()A、项目开发计划B、需求规格说明书C、设计说明书D、可行性分析报告6、快速原型模型的主要特点之一是()A、开发完毕才见到产品B、及早提供全部完整的软件产品C、开发完毕后才见到工作软件D、及早提供工作软件7、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是()A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法8、软件详细设计主要采用的方法是()A、模块设计B、结构化设计C、PDL 语言D、结构化程序设计9、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 () A、.软件工程B、软件周期C、软件危机D、软件产生10、按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作()A、需求分析B、概要设计C、详细设计D、软件维护11、在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是()A、探索型模型B、演化型模型C、实验型模型D、提交型模型12、程序设计语言的工程特性之一为()A、软件的可重用性B、数据结构的描述性C、抽象类型的描述性D、数据库的易操作性13、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为 ()A、可用性B、可靠性C、正确性D、完整性14、模块设计中,最不希望的内聚是()A、功能内聚B、通信内聚C、过程内聚D、偶然内聚15、实施快速原型模型方法开发软件的关键在于()A、CASE 工具的支持B、如何开发演化型模型C、项目主管的支持D、开发人员的素质16、程序流程图(框图)中的箭头代表()。
《软件工程》11套考试复习练习试题、作业题[含答案解析]
![《软件工程》11套考试复习练习试题、作业题[含答案解析]](https://img.taocdn.com/s3/m/2958e1d3910ef12d2bf9e70d.png)
作业1:1. 软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。
其中,( A )是按事先设计的功能和性能要求执行的指令序列。
( B )是使程序能够正确操纵信息的数据结构。
( C )是与程序开发、维护和使用有关的图文材料。
供选择的答案:A~C. ①软件②程序③代码④硬件⑤文档⑥外设⑦数据⑧图表2. 开发软件时对提高软件开发人员工作效率至关重要的是( A )。
软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。
供选择的答案:A.①程序开发环境②操作系统的资源管理功能③程序人员数量④计算机的并行处理能力B.①需求分析②需求调查③可行性分析④问题定义C、D.①方案设计②代码设计③概要设计④数据设计⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计3. 从供选择的答案中选出适当字句填入下列关于软件发展过程的叙述中的( )内。
有人将软件的发展过程划分为4个阶段:第一阶段(1950~1950年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。
第二阶段(1950年代末~1960年代末)称为“基本软件期”。
出现了( A ),并逐渐普及。
随着( B )的发展,编译技术也有较大的发展。
第三阶段(1960年代末~1970年代中期)称为“程序设计方法时代”。
这一时期,与硬件费用下降相反,软件开发费急剧上升。
人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。
第四阶段(1970年代中期~现在)称为“软件工程时期”。
软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、( G )及其整体有关的各种管理技术。
供选择的答案:A ~ D:①汇编语言②操作系统③虚拟存储器概念④高级语言⑤结构式程序设计⑥数据库概念⑦固件⑧模块化程序设计E ~ G:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理4. 软件工程过程有哪几个基本过程活动?试说明之。
软件工程考试题及答案

软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素不包括以下哪一项?A. 工具B. 方法C. 过程D. 环境答案:D2. 软件需求分析阶段的主要任务是确定软件的()。
A. 功能需求B. 性能需求C. 界面需求D. 所有选项答案:D3. 软件测试的目的是()。
A. 发现软件中的错误B. 证明软件是正确的C. 验证软件是否满足需求D. 所有选项答案:D4. 以下哪一项不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 开发性维护答案:D5. 软件项目管理的主要目标是()。
A. 提高软件质量B. 控制成本C. 缩短开发周期D. 所有选项答案:D6. 瀑布模型的主要缺点是()。
A. 缺乏灵活性B. 难以适应需求变化C. 无法并行开发D. 所有选项答案:D7. 敏捷开发方法的核心理念是()。
A. 以文档为中心B. 以人为中心C. 以过程为中心D. 以工具为中心答案:B8. 软件配置管理的主要目的是()。
A. 确保软件的一致性B. 跟踪软件的变更C. 控制软件的版本D. 所有选项答案:D9. 以下哪一项不是软件工程的原则?A. 抽象B. 模块化C. 复用D. 随机性答案:D10. 软件工程的目标是()。
A. 开发高质量的软件B. 提高软件生产率C. 降低软件成本D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件需求分析阶段可能包括以下哪些活动?A. 需求收集B. 需求分析C. 需求规格说明D. 需求验证答案:ABCD2. 软件测试的类型包括以下哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的常见原因包括以下哪些?A. 适应环境变化B. 修正软件缺陷C. 提高软件性能D. 增加新功能答案:ABCD4. 软件项目管理的关键活动包括以下哪些?A. 项目规划B. 项目监控C. 项目沟通D. 风险管理答案:ABCD5. 软件工程中的常见开发模型包括以下哪些?A. 瀑布模型B. 螺旋模型C. 敏捷模型D. 增量模型答案:ABCD三、判断题(每题2分,共10分)1. 软件工程的目标是开发出零缺陷的软件。
软件工程考试题(含答案)

软件工程考试题简答题1、什么叫软件?软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?软件危机是指在计算机软件开发与维护过程中所遇到的一系列严重问题。
包括两点:(1)如何开发软件,以满足对软件日益增长的需求;(2 )如何维护数量不断膨胀的已有软件。
软件开发和维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。
具体表现如下:(1)软件是逻辑部件而不是物理部件。
(2)软件的规模越来越大,复杂性越来越大。
(3)轻视需求分析的重要性,轻视软件维护的错误观点和方法。
3、什么叫软件工程?1968年在第一届NATO会议上的早期定义:“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。
1993年IEEE的定义:“①软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②进而研究①实现的途径”。
我们国家最近定义:软件工程是指导计算机软件开发和维护的工程学科。
它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
4、两种软件工程方法学开发软件时要建立哪些模型?软件工程方法学包括:传统方法学和面向对象方法学。
常用的开发模型有:瀑布模型(需求稳定,而且可以预先指定)原型模型(需求模糊或者随时间变化)增量模型(分析员先作出需求分析和概要设计,用户参与逐步完善)螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析)喷泉模型(使开发过程具有迭代性和无间隙性)5、软件过程模型有哪些?简述它们的特点。
过程模型分为五大类:1•管理过程模型。
2•瀑布模型(又称为生命周期模型)。
3•增量过程模型:包括增量模型”RAD模型。
4•烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。
软件工程精彩试题及问题详解

4. 面向对象的分析方法主要是建立三类模型,即( D )。
A) 系统模型、ER模型、应用模型 B)对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型 5. 在E-R模型中,包含以下根本成分( )。
A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性 D) 实体、属性、操作9.假如有一个计算类型的程序,它的输入量只有一个X,其X围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是〔 c 〕A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法10、详细设计的根本任务是确定每个模块的( d11.设函数C〔X〕定义问题X的复杂程序,函数E〔X〕确定解决问题X需要的工作量〔时间〕。
对于两个问题P1和P2,如果C〔P1〕>C〔P2〕显然E〔P1〕>E〔P2〕,如此得出结论E〔P1+P2〕>E〔P1〕+E〔P2〕就是:〔 a 〕 A.模块化的根据 B.逐步求精的根据 C.抽象的根据 D.信息隐藏和局部化的根据13.面向数据流的设计方法把〔 D 〕映射成软件结构。
A.数据流 B.系统结构 C.控制结构 D.信息流15.确定测试计划是在( D16.需求分析的产品是〔 D 〕 A.数据流程图案 B.数据字典 C.判定表D.需求规格说明书17.数据字典是软件需求分析阶段的最重要工具之一,其最根本的功能是〔 C 〕A.数据库设计 B.数据通信 C.数据定义 D.数据维护18.( D )引入了“风险驱动〞的思想,适用于大规模的内部开发项目。
A.增量模型 B.喷泉模型 C.原型模型D.螺旋模型〔×〕2、系统测试的主要方法是白盒法,主要进展功能测试、性能测试、安全性测试与可靠性等测试。
〔×〕4、软件需求分析的任务是建立软件模块结构图。
(附答案)软件工程重点大题

答:结构程序设计的概念最早是由E. W. Dijkstra提出来的,他指出:“可以从高级语言中取消GOTO语句,程序质量与程序中所包含的GOTO语句的数量成反比”。并指出结构程序设计并非简单的取消GOTO语句,而是创立一种新的程序设计思想、方法和风格,以显著提高软件生产率和质量。
●需求分析与规格说明(明确系统的规格和要求);
●设计(包括概要设计和详细设计,将系统分解为模块);
●编程(用程序语言实现每个模块,简单容易);
●测试(发现并改正错误,分为模块测试、集成测试和系统联调三级);
●运行维护(扩充功能、纠错等)。
5.如何画分层数据流图?有哪些基本原则?
答:总的原则是:至顶而下,逐层分解(画分层数据流图)。逐层分解的画法可以控制每一层的复杂度。
答:以集中式的仓库模型为例。其主要优点:
(1)数据由某个子系统产生,并且被存储到仓库中,以便为另外一些子系统共享;
(2)由于中央集中控制的缘故,共享数据能得到有效的管理,各子系统之间不需要通过复杂的机制来传递共享数据;
(3)一个子系统不必关心其他的子系统是怎么使用它产生的数据;
(4)所有的子系统都拥有一致的基于中央数据仓库的数据视图。如果新子系统也采用相同的规范,则将它集成于系统中是容易的。
模块是由边界元素限定的相邻的程序元素的序列,而且有一个总体标志符来代表它。
所谓模块化,即是将一个大任务分成若干个较小的任务,较小的任务又细分为更小的任务,直到更小的任务只能解决功能单一的任务为止,一个小任务称为一个模块。各个模块可以分别由不同的人编写和调试。把大任务逐步分解成小任务的过程可以称为是“自顶向下,逐步细化”的过程。
数据结构的复杂性。要根据不同语言构造数据结构类型的能力选取合适的语言。C++、Java这样的高级语言显然比汇编语言的表达能力要强。
北理工《软件工程》期末考试精选题汇总【含答案解析】 96

《软件工程》模拟题2一、单选题(每题3分,共30分)1.第一个体现结构化编程思想的程序设计语言是____。
A.FORTRANB.C语言C.PascalD.Cobol答案:C题型:单选题知识点:6.2结构化程序设计难度:12.____是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。
A.软件过程B.软件测试C.软件生存周期D.软件工程答案:D题型:单选题知识点:1.1软件工程的产生和发展难度:13. 可行性是系统方案实现的____。
A.可能性B.必要性C.可能性和必要性D.操作性答案:A题型:单选题知识点:1.2软件与软件过程难度:14. 在软件的需求分析中,开发人员要从用户那里解决的最重要的问题是______。
A.要让软件做什么B.要给该软件提供哪些信息C.要求软件工作效率怎样D.要让软件具有何种结构答案:A题型:单选题知识点:2.1软件需求的基本概念难度:15. 数据字典的任务是对于数据流图中出现的所有被命名的数据元素,在数据字典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的______。
A.对象B.名字C.符号D.描述答案:D题型:单选题知识点:3.2软件体系结构设计难度:16. 模块独立性是软件模块化所提出的要求,衡量模块独立性的试题是模块的____。
A.抽象和信息隐蔽B.局部化和封装化C. 内聚性和耦合性D. 激活机制和控制方法答案:C题型:单选题知识点:3.3模块分解难度:17.一个程序如果把它作为一个整体,它也是只有一个入口、一个出口的单个顺序结构,这是一种______。
A.结构程序B.组合的过程C.自顶向下设计D.分解过程答案:B题型:单选题知识点:6.2结构化程序设计难度:18. 编码阶段的任务是将____阶段的过程描述转换成用程序设计语言实现的源程序。
A.需求分析B.概要设计C.详细设计D.编码答案:C题型:单选题知识点:6.4算法与程序效率难度:19.软件测试的目的是____。
软件工程复习题库带答案完整版

一、选择题1、白盒测试法是通过分析程序的(C)来设计测试用例的。
A.应用范围B.功能C.内部逻辑D.输入数据2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。
A.风险产生的原因B.风险监控技术C.风险能否消除D风险发生所产生的后果3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。
A.好的计划B.不断的发布C.反馈和勇气D.持续集成4、等价分类法的关键是(C)。
A.确定等价类的边界条件B.按照用例来确定等价类C.划分等价类D确定系统中相同和不同的部分5、下列不属于黑盒测试的技术是(A)。
A.程序段或语句的功能B.模块的接口C.数据的名称和用途D.模块的功能6、为了提高模块的独立性,模块之间最好是(D)耦合。
A.控制耦合B.公共耦合C.内容耦合D.数据耦合7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。
A.角色B.活动C.制品D.工作流&功能性注释嵌入在源程序内部,它是用来说明(A)。
A.程序段或语句的功能B模块的接口C.数据的名称和用途D模块的功能9、在结构化分析方法中,数据字典是重要的文档。
对加工的描述是数据字典的组成内容之一,常用的加工描述方法有(C)。
A.只有结构化语言.B有结构化语言和判定树C.有结构化语言、判定树和判定表D.有判定树和判定表10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行(B)维护。
A.正确性B适应性C完善性D预防性11、软件危机的主要原因是(A)。
A软件本身特点与开发方法B对软件的认识不够C软件生产能力不足D软件工具落后12、DFD是常用的进行软件需求分析的图形工具,其基本符号是(C)。
A.输入、输出、外部实体和加工B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体D•变换、数据存储、加工和数据流13、软件工程管理是对软件项目的开发管理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.某旅馆的电话服务如下:可以拨分机号和外线号码。
分机号是从7201至7299。
外线号码先拨9,然后是市话号码或长话号码。
长话号码是以区号和市话号码组成。
区号是从100到300中任意的数字串。
市话号码是以局号和分局号组成。
局号可以是455,466,888,552中任意一个号码。
分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据流条目的定义即组成。
电话号码=[分机号|外线号码]分机号=7201 (7299)外线号码=9+[市话号码|长话号码]长话号码=区号+市话号码区号=100 (300)市话号码=局号+分局号局号=[455|466|888|552]分局号=4{数字}4数字=[0|1|2|3|4|5|6|7|8|9]2.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例,并标明程序执行路径。
(1)语句覆盖测试用例令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。
(2)判定覆盖可以设计如下两组数据以满足判定覆盖:x=3,y=0,z=1(1分)(通过路径abce);x=2,y=1,z=2(1分)(通过路径acde)。
或者x=2,y=1,z=1;覆盖路径acdex=1,y=1,z=1;覆盖路径acex=3,y=0,z=1;覆盖路径abce(注意:本题也还可以有其他答案)3.请用判定表画出以下问题的行为逻辑。
人们往往根据天气情况决定出门时的行装。
天气可能下雨,也可能不下雨;下雨或不下雨天气可能变冷,也可能不变冷。
如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。
4.对下列子程序进行调试:procedure example(y,z: real; var x: real)beginif (y>1) and (z=0) then x:=x/y;if (y=2) or (x>l) then x:=x+l;end.该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。
完成下列各题:(1)画出程序流程图。
(2)用条件组合覆盖设计测试用例,并写出其中一组测试用例。
答:(1)程序流程图(2)用白盒法中条件组合覆盖设计测试用例:① y=2, z=0, x=4;② y=2, z=1, x=1;③ y=1, z=0, x=2;④ y=1, z=1, x=1. (注:也可有其它答案)5.选择排序的伪代码如下,请根据代码画出其PAD图。
select_sort(a[1],a[2],…,a[n]){for(i=1;i<n;i++){k=i;for(j=i+1;j<=n;j++){if(a[j]<a[k]) k=j;if(k!=i) exchange(a[i],a[k]);}} }6. 一本书有一个封面、一个目录、一个前言、若干章、每章有若干节、每节有若干段,有若干句子,有0个或多个插图,还有0个或多个表格,书最后有一个附录。
试建立该书的对象模型。
书目录封面前言章附录节段句子插图表格1+1+1+1+**7. 根据伪码画出N -S 图和PAD 图。
STARTIF A THENX1DO UNTIL BELSE X2 Y END IF Z STOP N-S 图:PAD 图:TFUNTIL BSTARTSTOPZX2YX18. 某报社采用面向对象技术实现报刊征订的计算机管理系统,该系统基本需求如下: (1)报社发行多种刊物,每种刊物通过订单来征订,订单中有代码,名称,订期,单价,份数等项目,订户通过填写订单来订阅报刊。
(2)报社下属多个发行站,每个站负责收集登陆订单、打印收款凭证等事务。
(3)报社负责分类并统计各个发行站送来的报刊订阅信息。
请就此需求建立对象模型。
9. 指出下列数据流图中存在的问题。
E父图子图(1)父图没有输入数据流;(2)子图的输入数据流应该是C,而不是B;(3)子图的输出数据流应该只有D和E,而不应有F。
10.某公司为本科以上学历的人重新分配工作,分配原则如下:(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作;(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务;(3)如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员;(4)学历是硕士,任课题组组长。
要求:画出分析过程,得出判定表,并进行化简。
(1)判定条件可能取值表:(2)计算条件组合数2*3*2=12;(3)初步判定表(4)简化后的判定表11.建立以下有关“微机”的对象模型。
一台微机有一个显示器,一个主机,一个键盘,一个鼠标,汉王笔可有可无。
主机包括一个机箱,一个主板,一个电源及储存器等部件。
储存器又分为固定储存器和活动存储器两种,固定存储器为内存和硬盘,活动存储器为软盘和光盘。
微机显示器主机键盘鼠标汉王笔机箱主板存储器电源固定存储器活动存储器内存硬盘软盘光盘12.某商场在“五一”期间,顾客购物时付款有4种情况:普通顾客一次购物累计少于100元,按A类标准付款(不打折),一次购物累计多于或等于100元,按B类标准付款(打9折);会员顾客一次购物累计少于1000元,按C类标准付款(打8折),一次购物累计等于或多于1000元,按D类标准付款(打7折)。
(1)请使用程序流程图来设计付款算法。
(2)按照路径覆盖法设计一组测试用例。
程序流程图(2)按照路径覆盖法设计测试用例如下:(注:累计消费可取其它值)是会员,累计消费900元,覆盖路径1-2-6-8是会员,累计消费2000元,覆盖路径1-2-7-9 不是会员,累计消费80元,覆盖路径1-3-4 不是会员,累计消费300元,覆盖路径1-3-5-1013. 试将下面程序流程图用N-S 图和PAD 图表示,并计算它的McCabe 环路复杂度。
AFQ=TAUntil NOT PN-S 图Q=TQTBBPAD 图QTUntil NOT PENDSTARTMCCABe 环路复杂度=2+1=314.图表示下图所示的二维表格:该学生名册由表头和表体两部分组成。
其中表头又顺序包括表名和字段名。
表体可由任意行组成,每行包括学生的姓名、性别、年龄和学号。
15.某培训中心要研制一个计算机管理系统。
它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。
(1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
(2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
(3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:对以上问题画出数据流程图。
16.已知被测试模块流程图如下,按照条件覆盖法,在表格中填入满足测试要求的数据。
题44图假设几种可能的条件是:T1: A>3 F1:A<=3 T2: B=1 F2: B≠1 T3: A=1 F3: A≠1 T4: M>1 F4: M<=1 填写下表17.设计一个软件的开发成本为50000元,寿命为3年。
未来3年的每年收益预计为22000元﹑24000元﹑226620元。
银行年利率为10%,不计复利。
试对此项目进行成本效益分析,以决定其经济可行性。
解:三年后,50000万的价值为50000*(1+3*10%)=65000元三年软件总获利为22000*(1+2*10%)+24000*(1+1*10%)+26620=79420元而 79420元>65000元所以此项目盈利,经济可行。
18.如图1和图2所示是某公司员工工资管理的一部分,他们分别是同一功能的两个不同设计方案,你认为那种设计方案较好?请陈述理由。
如图2所示的设计方案2好。
利用衡量模块独立性的两个标准耦合性和内聚性(模块划分时应尽量做到高内聚、低耦合,提高模块独立性)判断设计方案优劣。
图1中模块B 的功能是取平均工资或最高工资,可见模块B 包含两个功能,故模块B 内聚弱,而模块B 与模块A 的耦合是控制耦合,耦合程度较高,模块的相对独立性差。
而在图2中,模块B 分解成两个相对独立的模块B1和B2,模块B1和B2内聚程度高,模块B1和B2与模块A 之间的耦合是数据耦合,耦合程度较低,因此模块的独立性好,所以图2的设计方案2好。
19. 某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。
请用等价类划分法设计测试用例。
划分等价类:设计测试用例:题42 图1 设计方案1题42 图2 设计方案220.试用判定表描述下列加工逻辑。
加工逻辑为:如果申请者的年龄在21岁以下,要额外收费;如果申请者是21岁以上并是26岁以下的女性,适用于A类保险;如果申请者是26岁以下的已婚男性,或者是26岁以上的男性,适用于B类保险;如果申请者是21岁以下的女性或是26岁以下的单身,适用于C类保险。
附此之外的其他申请者都适用于A 类保险。
21.假设对顾客的订货单按如下原则处理:将顾客的信用度分三个档次:欠款时间不超过30天;欠款时间超过30天但不超过100天;欠款时间超过100天。
对于上述三种情况,分别根据库存情况来决定对顾客订货的态度。
情况之一(欠款时间≤30天),如果需求数≤库存量,则立即发货,如果需求数>库存量,则只发现有库存,不足部分待进货后补发。
情况之二(30天<欠款时间≤100天),如果需求数≤库存量,则要求先付款再发货,如果需求数>库存量,则不发货。
情况之三(欠款时间>100天),则通知先付欠款,再考虑是否发货。
试用判定树的形式予以描述(设欠款时间D,需求数N,库存量Q)。
22. 有一过程,其流程如下图所示。
其中b1 、b2、 b3为判定的逻辑条件,s1、 s2为加工处理。
试用判定表给予描述。
答:或者23. 有一过程如下图所示的流程,试用判定表予以描述。
24.对一个长度为48000条机器指令的程序进行测试,第一个月由甲、乙二人分别测试它。
甲改正20个错误,使程序的平均无故障时间为8小时。
乙在测试该程序副本时改正了24个错误,其中6个错误与甲改正的下同。
然后,由甲继续测试该程序。
根据上述数据完成TT T FF F下列各题:( 每题5分,共15 分) 1.程序中固有的错误总数是多少?2.为使MTTF 达到240小时,如果甲不利用乙的工作成果,则他还需改正多少个错误? 3.为使MTTF 达到480小时,如果甲利用乙的工作成果,则他还需改正多少个错误?附:()()t E E K I MTTF C T T -=E T = B 2 * B 1 / b cE T :测试前程序的错误总数 I T :程序长度(机器指令总数)E c (t):t 时间内改正的错误数B 1、B 2 分别为测试员1、测试员2发现的错误数,b c 为测试员1、测试员2发现的相同错误数解:1.E T =80 2.58 3.4125.计算出如下工程网络图中各节点的最早开始时刻和最迟开始时刻(10分)简答题1. 软件产品的特性是什么? a.软件产品是一种逻辑产品。