一、第1章软件工程概述1.Softwaredeterioratesratherthanwearsoutbecause(软件通常是变坏而不是磨损的原因是)A:Softwaresuffersfromexposuretohostileenvironments(软件暴露在不利的环境中)B:Defectsaremorelikelytoariseaftersoftwarehasbeenusedoften(软件错误更容易在使用后被发现)C:Multiplechangerequestsintroduceerrorsincomponentinteractions(在组件交互中需求发生变化导致错误)D:Softwaresparepartsbecomehardertoorder(软件的备用部分不易组织)2.Todaytheincreasedpowerofthepersonalcomputerhasbroughtaboutanabandonmentofthepracticeofteamdevelopmentofsoftware.(如今个人电脑性能的提升导致遗弃了采用小组开发软件的方式。)A:True(真)B:False(假)3.Whichquestionnolongerconcernsthemodernsoftwareengineer?(现如今的软件工程师不再考虑以下哪个问题?)A:Whydoescomputerhardwarecostsomuch?(计算机硬件为什么如此昂贵?)B:Whydoessoftwaretakealongtimetofinish?(软件为什么开发时间很长?)C:Whydoesitcostsomuchtodevelopapieceofsoftware?(开发一项软件的开销为什么这么大?)D:Whycann'tsoftwareerrorsberemovedfromproductspriortodelivery?(软件错误为什么不能在产品发布之前被找出?)4.Ingeneralsoftwareonlysucceedsifitsbehaviorisconsistentwiththeobjectivesofitsdesigners.(通常意义上,只有表现得和设计目标一致的软件才是成功的软件。)A:True(真)B:False(假)5.Changecannotbeeasilyaccommodatedinmostsoftwaresystems,unlessthesystemwasdesignedwithchangeinmind.(需求变化不适应于大多数的软件系统,除非软件在设计之初便考虑了变化因素。)A:True(真)B:False(假)6.Thefunctionalityofmostcomputersystemsdoesnotneedtobeenhancedthelifetimeofthesystem.(大多数的软件系统的功能在它们的生命周期内不需要被增强。)A:True(真)B:False(假)7.Mostsoftwarecontinuestobecustombuiltbecause(大多数软件产品是定制的原因是)A:Componentreuseiscommoninthesoftwareworld.(软件领域中组件复用很普遍)B:Reusablecomponentsaretooexpensivetouse.(组件重用的代价太高)C:Softwareiseasiertobuildwithoutusingsomeoneelse'scomponents.(软件很容易被开发因而不需要使用其他的已有的组件)D:Off-the-shelfsoftwarecomponentsareunavailableinmanyapplicationdomains.(在很多的软件应用领域中没有现成可用的软件组件)8.Mostsoftwaredevelopmentprojectsareinitiatedtotrytomeetsomebusinessneed.(大多数的软件开发项目最初都是为了满足一些商业要求.)A:True(真)B:False(假)9.Softwareisaproductandcanbemanufacturedusingthesametechnologiesusedforotherengineeringartifacts.(软件是一个可以通过采用其他工程领域中的相同技术来构建的产品。)A:True(真)B:False(假)10.Thenatureofsoftwareapplicationscanbecharacterizedbytheirinformation(软件应用的本质可以被特色化,通过他们信息的)A:complexity(复杂度)B:content(内容)C:determinacy(确定性)D:bothbandc(b、c都是)11.Modernsoftwareapplicationsaresocomplexthatitishardtodevelopmutuallyexclusivecategorynames.(当今软件应用非常复杂,以至于很难提出类别互斥的名字。)A:True(真)B:False(假)12.Thesocalledneweconomythatgrippedcommerceandfinanceduringthe1990sdiedandnolongerinfluencesdecisionsmadebybusinessesandsoftwareengineers.(90年代所谓的专注了商业和金融的“新经济”消亡了,并且不再影响商业和软件工程师们做出决策。)A:True(真)B:False(假)1.WhatisSoftware?2.WhatisSoftwareEngineering?3.Whatarethecharacteristicsofsoftware?4.Whataremajorcausesofsoftwarecrisis?5.Whyprofessionalandethicalresponsibilitiesareconsideredimportant?二、第2章软件工程过程模型1.Theformalmethodsmodelofsoftwaredevelopmentmakesuseofmathematicalmethodsto(软件开发的形式化方法模型利用了数学方法)A:Definethespecificationforcomputer-basedsystems(定义基于计算机的系统的需求)B:Developdefectfreecomputer-basedsystems(开发无错误的基于计算机的系统)C:Verifythecorrectnessofcomputer-basedsystems(验证基于计算机的系统正确性)D:Alloftheabove(以上所有)2.Evolutionarysoftwareprocessmodels(软件演化模型)A:Areiterativeinnature(本质上是迭代模型)B:Caneasilyaccommodateproductrequirementschanges(可以轻易地适应软件需求变化)C:Donotgenerallyproducethrowawaysystems(一般不会产生丢弃系统)D:Alloftheabove(以上所有)3.Therapidapplicationdevelopmentmodelis(快速开发模型是)A:Anothernameforcomponent-baseddevelopment.(组件开发模型的别名。)B:Ausefulapproachwhenacustomercannotdefinerequirementsclearly.(当客户无法清晰定义需求时的有效开发手段。)C:Ahighspeedadaptationofthelinearsequentialmodel.(线性顺序模型的高速适应方式。)D:Alloftheabove.(以上所有。)4.Thespiralmodelofsoftwaredevelopment(螺旋开发模型)A:Endswiththedeliveryofthesoftwareproduct(在软件产品发布后结束)B:Ismorechaoticthantheincrementalmodel(比增量模型更混乱)C:Includesprojectrisksevaluationduringeachiteration(在每个迭代中都包括项目风险评估)D:Alloftheabove(以上都是)5.Thelinearsequentialmodelofsoftwaredevelopmentis(软件开发中的线性模型是)A:Areasonableapproachwhenrequirementsarewelldefined.(当需求被良好定义时的合理开发方式。)B:Agoodapproachwhenaworkingprogramisrequiredquickly.(程序被急需时的良好开发方式。)C:Thebestapproachtouseforprojectswithlargedevelopmentteams.(拥有大型开发团队时的最佳开发方式。)D:Anoldfashionedmodelthatcannotbeusedinamoderncontext.(一个过时的开发模式,已无法在当今的环境中使用。)6.WhichoftheseisnotoneofthephasenamesdefinedbytheUnifiedProcessmodelforsoftwaredevelopment?(以下哪一个阶段不属于软件开发中的统一过程模型?)A:Inceptionphase(初始阶段)B:Elaborationphase(细化阶段)C:Constructionphase(构建阶段)D:Validationphase(确认阶段)7.Theprototypingmodelofsoftwaredevelopmentis(软件开发中的原型模型是)A:Areasonableapproachwhenrequirementsarewelldefined.(当需求被良好定义时的合理开发方式。)B:Ausefulapproachwhenacustomercannotdefinerequirementsclearly.(当客户无法清晰定义需求时的有效开发方式。)C:Thebestapproachtouseforprojectswithlargedevelopmentteams.(拥有大型开发团队时的最佳开发方式。)D:Ariskymodelthatrarelyproducesameaningfulproduct.(一个很少产生有意义产品的风险模型。)8.Theincrementalmodelofsoftwaredevelopmentis(软件开发中的增量模型是)A:Areasonableapproachwhenrequirementsarewelldefined.(当需求被良好定义时的合理开发方式。)B:Agoodapproachwhenaworkingcoreproductisrequiredquickly.(当核心产品需要被迅速开发时的良好开发方式。)C:Thebestapproachtouseforprojectswithlargedevelopmentteams.(拥有大型开发团队时的最佳开发方式。)D:Arevolutionarymodelthatisnotusedforcommercialproducts.(一个不被用于商业产品的演化模型。)9.Theconcurrentdevelopmentmodelis(并发模型)A:Anothernamefortherapidapplicationdevelopmentmodel.(是快速开发模型的别名。)B:Often