软件工程及项目管理习题(新)
- 格式:doc
- 大小:344.81 KB
- 文档页数:40
一、选择题(每题2分,共20分)1. 软件工程项目管理中,以下哪个不是项目范围管理的过程?A. 规划范围管理B. 定义范围C. 创建工作分解结构(WBS)D. 项目评审2. 在软件项目进度管理中,以下哪个方法用于确定项目关键路径?A. PERT(项目评估与审查技术)B. Gantt图C. 关键路径法D. 预算管理3. 软件项目成本管理中,以下哪个不是成本估算的方法?A. 自顶向下估算B. 自底向上估算C. 差别估算D. 成本估算模型4. 软件配置管理中,以下哪个不是配置项?A. 软件代码B. 设计文档C. 测试用例D. 用户手册5. 软件质量管理中,以下哪个不是质量模型?A. CMM(能力成熟度模型)B. ISO 9000系列标准C. 六西格玛D. 软件质量保证6. 软件项目风险管理中,以下哪个不是风险的属性?A. 发生概率B. 影响程度C. 风险识别D. 风险控制7. 软件项目管理中,以下哪个不是软件项目特点?A. 需求变更B. 项目周期短C. 项目复杂性高D. 团队协作紧密8. 在软件项目任务分解中,以下哪个不是工作包?A. 完成一项具体工作所要求的一个特定的、可确定的、可交付的以及独立的工作单元B. 项目活动C. 项目里程碑D. 项目阶段9. 软件需求分析中,以下哪个不是需求分析的标志?A. 提交一份完整的软件需求规格说明书B. 确定用户需求C. 分析业务需求D. 设计系统架构10. 软件项目管理中,以下哪个不是软件项目可行性研究的内容?A. 技术可行性B. 经济可行性C. 社会可行性D. 项目管理可行性二、简答题(每题5分,共25分)1. 简述软件工程项目管理的基本任务。
2. 简述软件项目进度管理的基本原则。
3. 简述软件项目成本管理的过程。
4. 简述软件配置管理的基本概念。
5. 简述软件项目风险管理的方法。
三、论述题(10分)论述软件工程项目管理中,如何有效地进行范围管理、进度管理、成本管理、软件配置管理和风险管理。
IT软件项目管理概述1.什么是项目?项目的特征有哪些?项目是一个特殊的将要被完成的有限任务。
它是在一定时间内,满足一系列特定目标的多项相关工作的总称。
项目的特征主要有:项目的独特性;项目的一次性;项目的组织性;项目的生命期;项目的资源消耗性;项目的目标冲突性;项目后果的不确定性。
2.什么是项目管理?项目管理有哪些特征?有哪些基本内容?项目管理就是在项目活动中运用专门的知识、技能、工具和方法,使项目达到预期目标的过程,是以项目作为管理对象,通过一个临时性的、专门的组织,对项目进行计划、组织、执行和控制,并在时间、成本、性能、质量等方面达到预期目标的一种系统管理方法。
项目管理的特征主要有:项目管理对象是项目;系统工程思想贯穿项目管理的全过程;项目管理的组织具有一定的特殊性;项目管理的体制是基于团队管理的个人负责制,项目经理是整个项目组中协调、控制的关键;项目管理的要点是创造和保持一个使项目顺利进行的环境,使置身于这个环境的人们能在集体中协调工作以完成预定目标;项目管理的方法、工具和技术手段具有先进性。
项目管理的基本内容主要包括:项目综合管理;项目范围管理;项目时间管理;项目成本管理;项目质量管理;项目人力管理;项目风险管理;项目沟通管理;项目采购管理九大知识领域。
3.IT软件项目的独特性表现在哪些方面?生产无形的产品;过程没有明显的划分;大都是“一次性”的人力消耗型项目。
4.IT软件项目管理包括哪些阶段和活动?软件项目管理分为六个阶段:需求分析阶段;概要设计阶段;详细设计阶段;编码阶段;测试阶段;安装及维护阶段。
IT软件项目管理的活动包括:编写项目建议书;项目成本的度量;项目计划和进度安排;项目监控和复审;人员选择和评估;项目报告的准备和发布。
5.典型的IT软件项目管理的组合模式是什么结构?试用图表示,并说明每个成员的主要职责。
IT软件项目管理的组合模式是层次结构。
在一个典型的IT软件项目中,它的组织模式如图所示。
2. 如果一个程序有两个输入数据,每个输入都是一个32位的二进制整数,那么这个程序有多少个可能的输入?如果每微秒可进行一次测试,那么对所有可能的输入进行测试需要多长时间?答:每个32位的二进制整数具有232个可能的值,因此,具有两个整数输入的程序应该具有264个可能的输入。
每微秒可进行一次测试,即每秒可进行106个测试,因此,每天可进行的测试数为:60×60×24×106=8。
64×1010这等于每年大约可进行3.139×1013个测试。
因为210=1024≈103,所以264=(210)6.4≈1019.2.5132.191010139.310>⨯,所以做完全部测试将至少需要105年(即10万年)。
4.设计下列伪码程序的语句覆盖和路径覆盖测试用例:STARTINPUT(A,B ,C) IF A>5THEN X=10 ELSE X=1 END IF IF B>10THEN Y=20 ELSE Y=2 END IF IF C 〉15 THEN Z=30 ELSE Z=3 END IFPRINT(X,Y ,Z ) STOP 答:(1) 语句覆盖的测试用例因为每个判定表达式为真或为假时均有赋值语句,为了使每个语句都至少执行一次,总共需要两组测试数据,以便使得每个判定表达式取值为真或为假各一次。
下面是实现语句覆盖的典型测试用例:① 使3 个判定表达式之值全为假 输入:A=1,B=1,C=1预期的输出:X=1,Y=2,Z=3② 使3 个判定表达式之值全为真 输入:A=20,B=40,C=60 预期的输出:X=10,Y=20,Z=30 (2)路径覆盖的测试用例本程序共有8 条可能的执行通路,为做到路径覆盖总共需要8 组测试数据。
下面是实现路径覆盖的典型测试用例:① 3 个判定表达式之值全为假输入:A=1,B=1,C=1预期的输出:X=1,Y=2,Z=3② 3 个判定表达式依次为假、假、真输入:A=1,B=1,C=60预期的输出:X=1,Y=2,Z=30③ 3 个判定表达式依次为假、真、假输入:A=1,B=40,C=1预期的输出:X=1,Y=20,Z=3④ 3 个判定表达式依次为假、真、真输入:A=1,B=40,C=60预期的输出:X=1,Y=20,Z=30⑤ 3 个判定表达式依次为真、假、假输入:A=20,B=1,C=1预期的输出:X=10,Y=2,Z=3⑥ 3 个判定表达式依次为真、假、真输入:A=20,B=1,C=60预期的输出:X=10,Y=2,Z=30⑦ 3 个判定表达式依次为真、真、假输入:A=20,B=40,C=1预期的输出:X=10,Y=20,Z=3⑧ 3 个判定表达式全为真输入:A=20,B=40,C=60预期的输出:X=10,Y=20,Z=306。
2023 软考项目管理试卷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. 在质量管理中,以下哪个原则是质量管理的基础?A. 以客户为中心B. 注重过程和结果的可测量性C. 强化团队合作和领导作用D. 以上全部8. 项目风险管理过程中,风险应对计划的主要内容应包括哪些?A. 风险识别方法B. 风险评估标准C. 风险应对措施和策略D. 以上全部9. 项目人力资源管理中,团队建设的主要目的是什么?A. 提高团队绩效B. 增强团队凝聚力C. 降低人员流失率D. 以上全部10. 在项目收尾阶段,以下哪些工作是必要的?A. 进行项目验收和审计B. 进行项目总结和经验教训记录C. 进行项目后评估和审计整改工作安排 D、以上全部。
软件项⽬管理习题第⼀章概述⼀、名词解释1、计算机软件:与计算机系统操作有关的程序、规程、规则及任何与之有关的⽂档和数据。
2、软件危机:指在计算机软件开发、使⽤与维护过程中遇到的⼀系列严重问题和困难。
3、软件⼯程:⽤⼯程、科学和数学的原则与⽅法开发、维护计算机软件的有关技术和管理⽅法。
4、软件⽣存周期:软件从形成概念开始,经过开发、使⽤和维护,直到最终退役的全过程称为软件⽣存周期。
5、瀑布模型:严格按照软件⽣存周期各个阶段来进⾏开发,上⼀阶段的输出即是下⼀阶段的输⼊,并强调每⼀阶段的严格性。
它规定了各阶段的任务和应提交的成果及⽂档,每⼀阶段的任务完成后,都必须对其阶段性产品(主要是⽂档)进⾏评审,通过后才能开始下⼀阶段的⼯作。
⼆、单项选择题1、下⾯不属于软件⼯程的3个要素的是( D )。
A、⼯具B、过程C、⽅法D、环境2、软件开发的结构化⽣命周期⽅法将软件⽣命周期划分成( A )。
A、计划阶段、开发阶段、运⾏阶段。
B、计划阶段、编程阶段、测试阶段。
C、总体设计、详细设计、编程调试。
D、需求分析、功能定义、系统设计。
3、( D )引⼊了“风险驱动”的思想,适⽤于⼤规模的内部开发项⽬。
A.增量模型B.喷泉模型C.原型模型D.螺旋模型4、原型化⽅法是⽤户和软件开发⼈员之间进⾏的⼀种交互过程,适⽤于( A )系统。
A、需求不确定的B、需求确定的C、管理信息D、决策⽀持5、软件是⼀种( C )A、程序B、数据C、逻辑产品D、物理产品6、瀑布模型的关键不⾜在于(B)A、过于简单B、不能适应需求的动态变更C、过于灵活D、各个阶段需要进⾏评审7、具有风险分析的软件⽣存周期模型是( C )。
A、瀑布模型B、喷泉模型C、螺旋模型D、增量模型8、以下哪⼀项不是软件危机的表现形式( C )A、成本⾼B、⽣产率低C、技术发展快D、质量得不到保证9、软件是⼀种( B )性⼯业产品。
A、理论B、知识C、消耗D、体⼒10、软件定义期间的问题定义阶段涉及的⼈员有( D )。
第一章绪论1.列举你在执行 IT 相关任务时曾经碰到的问题。
试把这些问题按频率和影响大小分别排序。
对每一个问题,考虑是否可以通过某种方法降低发生的可能性。
2.软件工程的三个目标是什么,以什么衡量是否达到目标?3.软件工程活动包括哪些?那些活动需要有最终用户的参预?每一个过程需要有怎样的文档产出?4.设计包括哪两个阶段,具体任务,干系人有什么区别?5.软件工程的原则有哪些?6.你能说出哪些软件工程模型,他们各自有什么有缺点,合用于怎样的系统?7.有人说“线性模型已经过时了,有着诸多缺点,不需要再了解它。
”你怎么看待这种说法?线性模型和其他模型的关系是怎样的?8.在下列哪一个阶段项目发起人对项目的范围、质量、时间和成本有最大的影响力,为什么?9.项目的定义是什么,有什么特点,请给出三个是项目的例子,并给出三个不是项目的例子。
10.软件项目与普通的项目的区别在什么地方11.判断以下活动中哪些是项目,哪些不是项目,并请说明理由。
(1)升级某政府部门的办公自动化系统(2)打字员打印文件(3)报考软件学院软件工程硕士研究生(4)购买家用轿车(5)每天骑车上班12.项目生命周期包括哪些阶段?哪个阶段具有最大的不确定性?各个阶段的活动主要有哪些?13.项目管理的六要素有哪些?相互之间是什么关系。
TQC 又指什么?14.怎样衡量项目是否成功?15.项目管理分哪几大知识体系,它们之间什么关系?16.在选择职员时,应该考虑哪些因素?17.管理者是否应该和小组中更多的普通员工交朋友,并和他们打成一片?18.如果项目快结束时,忽然有一个很重要的,但非常耗时的变更,你作为项目经历应该怎么做19.为什么说时间和人员不能交换?试说明其原因。
20.你能列出那些人际关系的矛盾?试阐述可能的解决方法。
第二章需求管理1.软件需求的定义是什么,分别从用户角度,开辟者角度,相关文档角度给以阐述2.描述软件需求要做的五项主要事情指什么。
第一章练习题一、单项选择题1、软件是()。
A.处理对象和处理规则的描述B.程序C.程序、数据及文档D.计算机系统2、下列选项中()是软件开发中存在的不正确的观念、方法。
A.重编程、轻需求B.重开发、轻维护C.重技术、轻管理D.以上三条都是3、下列哪个阶段不属于软件生存周期的三大阶段()。
A.计划阶段B.开发阶段C.编码阶段D.维护阶段4、计算机系统就是()。
A.主机,显示器,硬盘,软驱,打印机等B.CPU,存储器,控制器,I/O接口及设备C.计算机硬件系统和软件系统D.计算机及其应用系统5、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )。
A.软件工程B.软件周期C.软件危机D.软件产生6、以下属于软件危机现象的是()。
A.软件开发进度难以预测B.软件产品难以维护C.软件缺少适当的文档资料D.以上三条都是7、软件工程的出现主要是由于()。
A.程序设计方法学的影响B.其它工程科学的影响C.软件危机的出现D.计算机的发展8、以下哪一项不属于项目成功要考虑的因素()。
A.工作范围与成本B.进度计划C.客户满意度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.运行软件二、判断题1、软件就是计算机系统中的程序、数据及其文档()。
一、选择题(每题2分,共20分)1. 软件工程项目的生命周期可以分为以下几个阶段,下列哪个不是软件工程项目的阶段?A. 需求分析B. 系统设计C. 硬件开发D. 编码实现2. 下列哪个不是软件工程项目的典型角色?A. 项目经理B. 程序员C. 测试员D. 销售员3. 在软件项目管理中,以下哪个不是项目管理工具?A. Microsoft ProjectB. JIRAC. TrelloD. MySQL4. 下列哪个不是敏捷开发的方法论?A. ScrumB. KanbanC. WaterfallD. Lean5. 以下哪个不是软件项目风险管理的方法?A. 风险识别B. 风险评估C. 风险监控D. 风险规避6. 下列哪个不是软件项目进度控制的方法?A. Gantt图B.PERT图C. 时间序列分析D. 数据挖掘7. 以下哪个不是软件项目质量控制的方法?A. 单元测试B. 集成测试C. 系统测试D. 硬件测试8. 在软件项目管理中,以下哪个不是项目沟通的方式?A. 面对面会议B. 电话会议C. 邮件沟通D. 微信群聊9. 以下哪个不是软件项目团队建设的方法?A. 信任建设B. 角色分配C. 激励机制D. 培训与发展10. 以下哪个不是软件项目合同管理的内容?A. 项目范围B. 项目进度C. 项目质量D. 项目风险二、填空题(每题2分,共20分)1. 软件工程项目管理包括______、______、______、______和______等过程。
2. 软件工程项目的生命周期可以分为______、______、______、______和______等阶段。
3. 软件项目管理的主要目标包括______、______、______和______。
4. 软件项目风险管理的方法包括______、______、______和______。
5. 软件项目进度控制的方法包括______、______和______。
6. 软件项目质量控制的方法包括______、______、______和______。
《软件工程与项目管理》期末试卷及参考答案一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共20分)1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )A.软件工程B.软件周期C.软件危机D.软件产生2.研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.法律可行性3.IDEF0图不反映出系统( )A.系统做什么B.系统功能如何实现C.系统由谁来做D.系统实现的约束条件4.模块的内聚性最高的是( )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚5.在SD方法中全面指导模块划分的最重要的原则是( )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性6.软件详细设计主要采用的方法是( )A.模块设计B.结构化设计C.PDL语言D.结构化程序设计7.下列关于JSP方法不正确的说法是( )A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。
因此它只适用于详细设计阶段8.不适合作为科学工程计算的语言是( )A. PascalB. CC. FortranD. Prolog9.黑盒测试在设计测试用例时,主要需要研究( )A.需求规格说明与概要设计说明B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明10.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是( )A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法11.下列属于维护阶段的文档是( )A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告12.快速原型模型的主要特点之一是( )A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件13.因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )A.教正性维护B.适应性维护C.完善性维护D.预防性维护14.类库这种机制是( )级别的信息共享。
第1章概述(习题与参考答案)[判断题]1. 由于今天个人计算机不断发展壮大,人们不再采用软件团队的开发方式。
(×)2. 由于软件是产品,因此可以应用其他工程制品所用的技术进行生产。
(×)3. 购买大多数计算机系统所需的硬件比软件更昂贵。
(×)4. 大多数软件产品在其生命周期中不需要增强功能。
(×)5. 大多数软件系统是不容易变化的,除非它们在设计时考虑了变化。
(√)6. 一般来说,软件只有在其行为与设计者的目标一致的情况下才能成功。
(×)[选择题]1. ()因素促使计算机系统越来越复杂。
(D)A. 计算机内存和存储容量上的巨大增长B. 外部输入/输出选项的更加多样性C. 计算机体系结构方面的深刻变化D. 以上所有选项2. 下面的()不再是现代软件工程师关注的问题。
(A)A. 为什么计算机硬件的成本这么高?B. 为什么软件需要很长时间才能完成?C. 为什么开发一个软件的成本这么高?D. 为什么不能在产品发布前去除软件错误?3. 软件会逐渐退化而不会磨损,其原因在于()。
(C)A. 软件通常暴露在恶劣的环境下B. 软件错误通常发生在使用之后C. 不断的变更使组件接口之间引起错误D. 软件备件很难订购4. 大多数软件仍然是定制开发的,其原因在于()。
(C)A. 软件组件重用是十分普遍的B. 可重用的组件太昂贵而无法使用C. 软件在不使用其他组件的情况下很容易构造出来D. 商业组件在很多应用领域中可以得到5. 下面的()说法是正确的。
(C)A. 软件危机在20世纪70年代末期全面爆发B. 当前先进的软件工程方法已经解决了软件危机的问题C. 软件危机是指在计算机软件的开发和维护过程中遇到的一系列严重问题D. 软件危机是指在软件产品中存在一系列的质量问题6. 软件工程的基本目标是()。
(B)A. 消除软件固有的复杂性B. 开发高质量的软件C. 努力发挥开发人员的创造性潜能D. 更好地维护正在使用的软件产品7. ()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。
第一章概述一、名词解释1、计算机软件:与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据。
2、软件危机:指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和困难。
3、软件工程:用工程、科学和数学的原则与方法开发、维护计算机软件的有关技术和管理方法。
4、软件生存周期:软件从形成概念开始,经过开发、使用和维护,直到最终退役的全过程称为软件生存周期。
5、瀑布模型:严格按照软件生存周期各个阶段来进行开发,上一阶段的输出即是下一阶段的输入,并强调每一阶段的严格性。
它规定了各阶段的任务和应提交的成果及文档,每一阶段的任务完成后,都必须对其阶段性产品(主要是文档)进行评审,通过后才能开始下一阶段的工作。
二、单项选择题1、下面不属于软件工程的3个要素的是( D )。
A、工具B、过程C、方法D、环境2、软件开发的结构化生命周期方法将软件生命周期划分成( A )。
A、计划阶段、开发阶段、运行阶段。
B、计划阶段、编程阶段、测试阶段。
C、总体设计、详细设计、编程调试。
D、需求分析、功能定义、系统设计。
3、( D )引入了“风险驱动”的思想,适用于大规模的内部开发项目。
A.增量模型B.喷泉模型C.原型模型D.螺旋模型4、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于( A )系统。
A、需求不确定的B、需求确定的C、管理信息D、决策支持5、软件是一种( C )A、程序B、数据C、逻辑产品D、物理产品6、瀑布模型的关键不足在于(B)A、过于简单B、不能适应需求的动态变更C、过于灵活D、各个阶段需要进行评审7、具有风险分析的软件生存周期模型是( C )。
A、瀑布模型B、喷泉模型C、螺旋模型D、增量模型8、以下哪一项不是软件危机的表现形式( C )A、成本高B、生产率低C、技术发展快D、质量得不到保证9、软件是一种( B )性工业产品。
A、理论B、知识C、消耗D、体力10、软件定义期间的问题定义阶段涉及的人员有( D )。
A、用户、使用部门负责人B、软件开发人员、用户、使用部门负责人C、系统分析员、软件开发人员D、系统分析员、软件开发人员、用户与使用部门负责人11、(A )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程 B、软件工具 C、质量保证 D、软件工程12. 分析员是( B) 。
A、用户中系统的直接使用者B、用户和软件人员的中间人C、软件的编程人员D、用户和软件人员的领导13 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( B) 。
A、软件投机B、软件危机C、软件工程D、软件产生14、文档是软件开发人员、软件管理人员、维护人员、用户以及计算机之间的(B),软件开发人员在各个阶段以文档作为前段工作成果的(E)和后段工作的(F)。
A、接口B、桥梁C、科学D、继续E、体现F、基础15、软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是(B)。
A、引入新技术提高空间利用率B、用较少的投资获得高质量的软件C、缩短研制周期扩大软件功能D、硬软件结合使系统面向应用16. 软件危机出现于(C)①,为了解决软件危机,人们提出了用(B)②的原理来设计软件,这就是软件工程诞生的基础。
①A、50年代末B、60年代初C、60年代末D、70年代初②A、运筹学B、工程学C、软件学D、数字17、软件工程学的目的是以(B)的成本,研制(A)质量的软件。
A、较高B、较低C、可靠D、优秀18、瀑布模型把软件生存周期划分为软件定义、软件开发和(C )三个阶段,而每一阶段又可细分为若干更小的阶段。
A、详细设计B、可行性分析C、运行及维护D、测试与排错19、软件生存周期是指( D)阶段。
A、软件开始使用到用户要求修改为止B、软件开始使用到被淘汰为止C、从开始编写程序到不能再使用为止D、从立项制定计划,进行需求分析到不能再使用为止20、件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段。
(A)A、需求分析B、需求调查C、可行性分析D、问题定义三、填空题1、软件工程的3个要素的是工具、过程和方法2、软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和困难。
3、在软件开发过程中必须遵循的软件工程原则有抽象、信息隐藏、模块化、局部化和一致性等。
4、软件开发的结构化生命周期方法将软件生命周期划分成定义阶段、开发阶段和运行阶段。
5、螺旋模型综合了瀑布模型和原型模型的优点,即将两者结合,并加入了风险分析机制四、判断题1、文档是软件产品的一部分,没有文档的软件就不称其为软件(对)。
2、在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。
(×)3、螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。
[√]4、快速原型模型可以有效地适应用户需求的动态变化。
[√]5、软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码[×]。
五、问答题1、产生软件危机的主要原因有哪些?缓解软件危机的途径是什么答:(1)主要原因:1)需求描述不精确。
2)对需求的理解有偏差,导致软件与需求不一致。
3)缺乏处理大型软件项目的开发和管理经验。
4)开发大型软件易产生疏漏和错误。
5)缺乏有力的方法学的指导和有效的开发工具的支持。
6)解决供求矛盾将是一个永恒的主题。
(2)缓解软件危机的途径:用软件工程的思想指导软件的开发2、瀑布模型有哪些优点和缺点?适用于哪些场合?答:(1)优点:提供了软件开发的基本框架,有利于大型软件开发过程中人员的组织、管理,有利于软件开发方法和工具的研究与使用。
(2)缺点:1)在开发初期就要求做出正确、全面、完整的需求分析是极其困难的。
2)在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。
3)由于不支持产品的演化,缺乏灵活性,对开发过程中很难发现的错误,只有在最终产品运行时才能暴露出来,从而使产品难以维护。
(3)瀑布模型适用场合:一般适用于功能、性能明确、完整、无重大变化的软件系统的开发。
3、什么是软件工程?它的目标和内容是什么?答:(1)软件工程:用工程、科学和数学的原则与方法开发、维护计算机软件的有关技术和管理方法。
(2)目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。
第二章项目管理一、单选题1、软件复杂性度量的参数,不包括( D )A、规模B、难度C、智能度D、成本2、在软件开发的各种资源中,(D )是最重要的资源。
A、开发工具B、方法C、硬件环境D、人员3、( D )是以追求更高的效益和效率为目标的持续性活动。
A、质量策划B、质量控制C、质量保证D、质量改进4、下列模型属于成本估算方法的有( A )。
A、COCOMO模型B、McCall模型C、McCabe度量法D、CMM模型5、软件项目计划一般不包括以下哪项内容(D)A、培训计划B、人员安排C、进度安排D、软件开发标准的选择和制定6、软件按照设计的要求,在规定的时间和条件下达到不出故障、持续运行要求的质量特性称为( A )A、可靠性B、可用性C、正确性D、完整性7、软件复杂性主要体现在( C )。
A、数据的复杂性B、程序的复杂性C、控制的复杂性D、问题的复杂性8、在McCALL软件质量度量模型中,( A )属于面向软件产品操作的质量因素A、可用性B、可维护性C、适用性D、互操作性9、软件复杂性度量的参数包括( B )A.效率 B.规模 C.完整性 D.容错性10、( C )是指在规定的条件下和规定期间内,实现所指定功能的概率。
A、可测试性B、可理解性C、可靠性D、可移植性11、在软件工程中,当前用于保证软件质量的主要技术手段还是( B)。
A、正确性证明B、测试C、自动程序设计D、符号证明12、在软件工程中,高质量的文档标准是完整性、一致性和( C )。
A、统一性B、安全性C、无二义性D、组合性13、软件的可移植性是衡量软件质量的重要标准之一。
它指的是( D )。
A、一个软件版本升级的容易程度B、一个软件与其他软件交换信息的容易程度C、一个软件对软硬件环境要求得到满足的容易程度D、一个软件从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度14、Putnam成本估算模型是一个( D )模型。
A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量15、在McCall软件质量度量模型中,( C )属于面向软件产品修改。
A.可靠性 B.可重用性 C.适应性 D.可移植性二、填空题1、软件项目管理的对象:主要包括产品、过程和资源2、McCall等人提出的三层次度量模型由软件质量要素、评价准则、定量度量三个层次组成的。
3、风险按影响的范围可分为项目风险、技术风险和商业风险三类。
4、McCall提出的软件质量模型包括 11 个软件质量特性。
三、名词解释1、软件质量:软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。
2、风险分析:贯穿在软件工程上的一系列风险管理步骤,中包括风险识别、风险估计、风险管理策略、风险解决和风险监督等。
3、软件可靠性:在某个给定时间间隔内,程序按照规格说明成功运行的概率。
四、应用题1、已知有一个国外典型的软件项目的记录,开发人员M=6人,其代码行数L=20.2KLOC,工作量E=43PM,成本S=314000美元,错误数N=64,文档页数Pd=1050页。
试计算开发该软件项目的生产率P、平均成本C、代码出错率EQR和文档率D。
解:根据给出的已知数据,可得:P = L / E =20.2 KLOC /43 PM = 0.47 KLOC / PM= 470 LOC / PMC = S / L = 314000美元 / 20.2 KLOC= 15.54 美元 / LOCEQR = N / L = 64个 / 20.2KLOC = 3.17 个 / KLOCD = Pd / L = 1050 页 / 20.2 KLOC = 51.98 页 / KLOC2、已知某软件项目的特征为:用户输入数为30,用户输出数为60,用户查询数为24,共有8个文件,有2个外部界面。
如果每个信息量的加权因子都取“一般”值,所有的技术复杂性调节因子都取“普通”值,(1)用功能点度量方法计算该软件项目的功能点。
(2)其代码行数=20.2KLOC,工作量E=43PM,成本S=314000美元,错误数N=64,文档页数Pd=1050页。