软件过程管理习题

合集下载

软件工程习题及解答1

软件工程习题及解答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:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理二、简答题1、美国一家公司在1982年计划用FORTRAN语言开发一个在VAX750计算机上运行的应用程序,估计这个程序的长度为10000条FORTRAN指令。

软件工程项目管理习题解答

软件工程项目管理习题解答

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。

软件项目管理案例教程(第2版)课后习题答案(精准版)

软件项目管理案例教程(第2版)课后习题答案(精准版)

课后练习题答案第三章练习题一、选择题1.快速跟进是指(A )A.采用并行执行任务,加速项目进展B.用一个任务取代另外的任务C.如有可能,减少任务数量D.减轻项目风险2.赶工一个任务时,你应该关注(C )A.尽可能多的任务B.非关键任务C.加速执行关键路径上的任务D.通过成本最低化加速执行任务3.“软件编码完成之后,我才可以对它进行软件测试”,这句话说明了哪种依赖关系?( A )A.强制性依赖关系B.软逻辑关系C.外部依赖关系D.里程碑4.如果用户提供的环境设备需要5月10日到位,所以环境测试安排在5月10日以后,这种活动安排的依赖依据是:(C)A.强制性依赖关系B.软逻辑关系C.外部依赖关系D.里程碑5.对一个任务进行进度估算时,A是乐观者,估计是6天完成,B是悲观者,估计是24天完成,C是有经验者认为最有可能是12天完成,那么这个任务的历时估算是介于10天到16天的概率是(B )A.50%B.68.3%C.70%D.99.7%6.下面哪项将延长项目的进度?(A)gB.LeadC.赶工D.快速跟进7.关于浮动,下面除了哪个都是不正确的?(D)A.每个任务都有浮动B.只有复杂的项目有浮动C.浮动是在不增加项目成本的条件下,一个活动可以延迟的时间量D.浮动是在不影响项目完成时间的前提下,一个活动可以延迟的时间量8.资源平衡最好用于(C )活动A.时间很紧的B.按时的C.非关键路径D.关键路径9.下面哪项可以决定进度的灵活性(B )A.PERTB.Total floatC.ADMD.赶工二、根据表3-11和图3-32,采用PERT方法估算,说明项目在20天内完成的概率的近似值?图3-32:项目网络图表3-11: PERT方法估计项目历时均值=(8+24+4*10)/6+(1+9+4*5)/6=17,标准差=(约等于)3所以,17+3=20天完成的概率大概是84.2%。

第四章练习题一、选择题1.(A)是用系统的功能数量来测量其规模,与实现产品所使用的语言和技术没有关系的。

软件项目管理第四章课后习题答案

软件项目管理第四章课后习题答案

四、项目进度管理1.简述时间管理包括哪些内容。

答:项目时间管理(也称进度管理)管理包括进度管理规划、活动定义、活动排序、活动资源估算、活动历时估算、制定进度计划和进度控制等管理过程。

在某些小的软件项目中,定义活动、排列活动顺序、估算活动资源、估算活动历时及制定进度计划等过程之间的联系非常密切,以至于可视为一个过程,由一个人在较短时间内完成。

2.如何理解项目进度管理的重要性,以及其他管理过程对进度管理的影响。

答:按时、保质完成项目是对项目的基本要求,但软件项目工期拖延的情况却时常发生,因而合理地安排项目时间是项目管理中的一项关键内容。

项目进度管理就是采用科学的方法确定项目进度,编制进度计划和资源供应计划,进行进度控制,在与质量、费用目标协调的基础上,实现项目的进度目标。

(1)范围、质量因素对进度的影响软件开发项目比其他任何建设项目都会有更经常的变更,大概是因为软件程序是一种“看不见”又“很容易修改”的东西吧,用户是想改就改,造成需求的蔓延,项目经理有时还不知如何拒绝,加上要说“我能”的心理因素,一般都会答应修改。

这样集少成多,逐渐影响了项目进度。

如果某项工作在进度上表面上达到目标了,但经检验其质量没有达到要求,则必然要通过返工等手段,增加人力资源的投入,增加时间的投入,实际上是拖延了进度。

不管是从横向或纵向来看,部分任务的质量会影响总体项目的进度,前面的一些任务质量中会影响到后面的一些任务质量。

(2)资源、预算变更对进度的影响资源,最主要的还是人力资源,有时某方面的人员不够到位,或者在多个项目的情况下某方面的人员中途被抽到其他项目、或身兼多个项目、或在别的项目不能自拔无法投入本项目。

还有一个很重要的资源,就是信息资源,如某些国家标准、行业标准,用户可能提供不了,而是需要去收集或购买,如果不能按时得到,就会影响需求分析、设计或编码的工作。

其他资源,如开发设备或软件没有到货,也会对进度造成影响。

预算其实就是一种资源,它的变更会影响某些资源的变更,从而对进度造成影响。

软件工程管理分析案例教程(第三版)课后习题-答案

软件工程管理分析案例教程(第三版)课后习题-答案

第一章二、判断题1、搬家属于项目。

(√)2、项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的永久性的努力。

(×)3、过程管理就是对过程进行管理,目的是要让过程能够被共享、复用,并得到持续的改进。

(√)4、项目具有临时性的特征。

(√)5、日常运作存在大量的变更管理,而项目基本保持连贯性的。

(×)6、项目开发过程中可以无限制地使用资源。

(×)三、选择题1、下列选项中不是项目与日常运作的区别的是(C)A. 项目是以目标为导向的,日常运作是通过效率和有效性体现的。

B. 项目是通过项目经理及其团队工作完成的,而日常运作是职能式的线性管理。

C.项目需要有专业知识的人来完成,而日常运作的完成无需特定专业知识。

D.项目是一次性的,日常运作是重复性的。

2、下列选项中最能体现项目的特征(C)A.运用进度计划技巧 B.整合范围与成本 C.确定期限 D.利用网络进行跟踪3、以下都是日常运作和项目的共同之处,除了(D)A.由人来做 B.受限于有限的资源 C.需要规划、执行和控制 D.都是重复性工作4、项目经理的职责不包括(D)A.开发计划 B.组织实施 C.项目控制 D.提供资金5、下列选项中属于项目的是(C)A.上课 B.社区保安 C.野餐活动 D.每天的卫生保洁6、下列选项中正确的是(C)A.一个项目具有明确的目标而且周期不限B.一个项目一旦确定就不会发生变更C.每个项目都有自己的独特性D.项目都是一次性的并由项目经理独自完成7、(B)是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力。

A.过程 B.项目 C.项目群 D.组合8、(B)是一系列伴随着项目的进行而进行,目的是确保项目能够达到期望结果的一系列管理行为。

A.人力资源管理 B.项目管理 C.软件项目管理 D.需求管理9、下列活动中不是项目的是(C)A.野餐活动 B.集体婚礼 C.上课 D.开发操作系统10、下列选项中不是项目的特征的是(C)A.项目具有明确的目标B.项目具有限定的周期C.项目可以重复进行D.项目对资源成本具有约束性第二章二、判断题1、项目初始阶段甲方为软件开发方,乙方为顾客。

软件项目管理习题题目

软件项目管理习题题目

第一章绪论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、软件就是计算机系统中的程序、数据及其文档()。

软件工程习题解答(含基本章节应试例子以及一个UML案例)

软件工程习题解答(含基本章节应试例子以及一个UML案例)

软件⼯程习题解答(含基本章节应试例⼦以及⼀个UML案例)软件⼯程习题解答⼀、软件⽣存周期各阶段的基本任务?1. 问题定义:(1)回答要解决的问题是什么。

(2)系统分析员应该提出关于问题性质、⼯程⽬标和规模的书⾯报告。

(3)经过和⽤户讨论,澄清含糊不清的地⽅,改正理解不正确的地⽅,得出⼀份双⽅都满意的⽂档。

(4)问题定义是软件⽣命周期中最简短的阶段。

2.可⾏性研究:(1)前⼀阶段定义的问题有可⾏的解决办法吗?(2)系统分析员要进⾏⼀次⼤⼤压缩和简化了的系统分析和设计。

导出⾼层逻辑模型(⽤数据流图表⽰)。

确定⼯程规模和⽬标,准确估计系统的成本和效益。

(3)使⽤部门的负责⼈根据可⾏性研究的结果决定是否继续进⾏该⼯程的开发⼯作。

3.需求分析:(1)主要确定⽬标系统必须具备哪些功能。

(2)系统分析员和⽤户密切配合,充分交流,得出经⽤户确认的系统逻辑模型(数据流图、数据字典、算法描述)。

4.总体设计:(1)回答如何解决问题。

(2)系统分析员应使⽤系统流程图或其他⼯具描述每种可能系统;估计每种⽅案的成本和效益。

推荐⼀较好的系统──有其详细计划。

设计软件的结构(⽤层次图或结构图描述)。

5.详细设计:(1)回答应该怎样具体地实现这个系统。

(2)设计出程序的详细规格说明(⽤HIPO层次图加输⼊/处理/输出图)或PDL语⾔(过程设计语⾔)。

6.编码和单元测试:(1)写出正确的容易理解,容易维护的程序模块。

(2)程序员:选取⼀种适当的⽤⾼级语⾔书写程序(或汇编语⾔)。

仔细测试编写出的每⼀个模块。

7.综合测试:(1)通过各种类型的测试,使软件达到预定的要求。

(2)最基本的测试是集成测试和验收测试⽅法。

集成测试是根据设计的软件结构,把经过单元测试检验的模块按某种选定的策略装配起来,在装配的过程中对程序进⾏必要的测试。

验收测试是按照需求规格说明书的规定,由⽤户对⽬标系统进⾏验收。

(3)⽤正式⽂档将测试计划、详细测试⽅案以及实际测试结果保存。

福师《软件过程管理》 练习题答案

福师《软件过程管理》 练习题答案

软件过程与软件管理课程复习题(一)解释相关概念或术语1)软件工程●是指导软件开发和维护的工程类学科,它以计算机科学理论及其他相关学科的理论为指导,采用工程化的概念、原理、方法和技术,进行软件的开发和维护,并与经过时间证明正确的管理方法与措施相结合,以较少的代价获取高质量的软件。

●The IEEE Computer Society:是(1) 将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。

(2) 对(1)中所述方法的研究。

2)软件过程●软件过程是指软件开发人员开发和维护软件及相关产品(如项目计划、设计文档、代码、测试用例、用户手册等)的一套行为、方法、实践及变换过程●根据IEEE对软件过程概念的解释,软件过程涵盖了软件采购、软件开发、软件维护、软件运行、软件获取、软件管理、软件支持等7大类的软件活动●ISO12207分别将这些活动归结为基本过程、支持过程和组织过程等3大类3)软件过程工程为建造软件过程所进行的一系列工程化活动,包含如下基本活动:过程定义、过程例化、过程模拟、过程运作。

现代软件工程=软件项目工程+软件过程工程,这标志着软件过程的时代的到来。

4)软件配置管理SCM是标识和确定系统中配置项的过程,在系统整个生命周期内控制这些项的投放和变动,记录并报告配置的状态和变动要求,验证配置项的完整性和正确性(GB/T11457-1995软件工程术语)。

针对SCM在软件生命周期各阶段所起的作用,一个完整的SCM环境要求具有版本控制、变更管理、状态统计、和配置审计的功能。

5)CMMCMM是指“能力成熟度模型”,其英文全称为Capability Maturity Model for Software,英文缩写为SW-CMM,简称CMM。

它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。

CMM 的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。

习题-2-软件工程管理-参考答案[2页]

习题-2-软件工程管理-参考答案[2页]

第二章软件工程管理习题参考答案一.选择题1. C2. B3. B4. C5. C6. B7. B二.简答题1、40人分成8组比40人归为一组更合适。

因为软件开发组的规模会直接影响到组内成员间沟通的代价,40人一个组,要想两两间都能沟通,渠道有40×(40 – 1)/ 2 个。

要是小组只有5个人那要方便的多,不同小组之间要想沟通再通过各组代表即可。

此外在管理等方面上也是分成8组更有优势。

2、要开发的项目是图书馆管理系统,是一个典型的管理信息系统(MIS)。

可以按照MIS 开发的一般经验来做相关计划。

(1)需求分析和设计、实现、测试按4:2:4的时间分配。

(2)项目经理:整个项目的管理系统分析员:需求的获取和分析软件架构师:软件的设计程序员:编码实现和单元测试测试人员:集成测试、系统测试集成人员:系统实施客户:参与需求获取、验收测试3、相同点都是质量管理方面的权威认证体系。

不同点主要体现在:(1)ISO9000比CMM 针对的范围广泛,CMM用于软件企业的能力成熟度评估。

(2)ISO9000是获得资质的最低标准,CMM是一个指导软件企业可持续改进的体系框架。

(3)ISO9000是基于文档管理的。

4、我会选择民主型项目组,因为本产品是一个技术创新型的产品,对技术要求高,需要开发团队能够充分沟通,最大化集体智慧的力量。

开发的软件过程模型会选择螺旋模型,因为项目开发的风险比较大,主要反映在市场竞争激烈和开发难度方面上,螺旋模型能够更好的监控项目风险,此外螺旋模型中的快速原型思想也能够更好的确定用户需求,降低需求变动带来的风险。

软件工程(习题与参考答案)

软件工程(习题与参考答案)

第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. 〔〕是将系统化的、标准的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。

IT软件项目管理课后习题及答案

IT软件项目管理课后习题及答案

IT软件项目管理概述1.什么是项目?项目的特征有哪些?项目是一个特殊的将要被完成的有限任务。

它是在一定时间内,满足一系列特定目标的多项相关工作的总称。

项目的特征主要有:项目的独特性;项目的一次性;项目的组织性;项目的生命期;项目的资源消耗性;项目的目标冲突性;项目后果的不确定性。

2.什么是项目管理?项目管理有哪些特征?有哪些基本内容?项目管理就是在项目活动中运用专门的知识、技能、工具和方法,使项目达到预期目标的过程,是以项目作为管理对象,通过一个临时性的、专门的组织,对项目进行计划、组织、执行和控制,并在时间、成本、性能、质量等方面达到预期目标的一种系统管理方法。

项目管理的特征主要有:项目管理对象是项目;系统工程思想贯穿项目管理的全过程;项目管理的组织具有一定的特殊性;项目管理的体制是基于团队管理的个人负责制,项目经理是整个项目组中协调、控制的关键;项目管理的要点是创造和保持一个使项目顺利进行的环境,使置身于这个环境的人们能在集体中协调工作以完成预定目标;项目管理的方法、工具和技术手段具有先进性。

项目管理的基本内容主要包括:项目综合管理;项目范围管理;项目时间管理;项目成本管理;项目质量管理;项目人力管理;项目风险管理;项目沟通管理;项目采购管理九大知识领域。

3.IT软件项目的独特性表现在哪些方面?生产无形的产品;过程没有明显的划分;大都是“一次性”的人力消耗型项目。

4.IT软件项目管理包括哪些阶段和活动?软件项目管理分为六个阶段:需求分析阶段;概要设计阶段;详细设计阶段;编码阶段;测试阶段;安装及维护阶段。

IT软件项目管理的活动包括:编写项目建议书;项目成本的度量;项目计划和进度安排;项目监控和复审;人员选择和评估;项目报告的准备和发布。

5.典型的IT软件项目管理的组合模式是什么结构?试用图表示,并说明每个成员的主要职责。

IT软件项目管理的组合模式是层次结构。

在一个典型的IT软件项目中,它的组织模式如图所示。

软件项目管理复习题

软件项目管理复习题

一、选择题1、可行性研究在项目的()过程组实施 ?A. 启动B. 实施C. 计划D. 控制2 、下面哪项工作是制订进度计划的基础:A、工作分解结构(WBS)B、网络图C、甘特图(GANTT)D、资源平衡(RESOURCE LEVELLING)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 、“COCOMO”是“构造型成本模型”的缩写,它主要是用在A. 软件估计B. 软件开发C. 软件测试D. 软件运行9 、对一个任务进行进度估算时, A 是乐观者,估计是 6 天完成, B 是悲观者,估计是 24 天完成, C 是有经验者认为最有可能是 12 天完成,那么这个任务历时估算是A. 12B. 13C. 14D. 1510、以下各项关于回避风险的陈述哪个是错误的A. 消除引起风险的因素B. 决定不对风险过高的项目进行投标C. 风险倘若发生,就接受后果D. 决定取消采用具有高风险的新技术11、当用户提出项目必须提前 2 天完成的要求时,你会集中于A.尽可能多做任务 B .请示老板C.寻求方法加速关键路径上任务的执行 D.通过降低成本加速执行12、购买保险是哪种类型的风险处理策略A.风险规避 B.风险转移 C.风险抑制 D.风险自担13、对于风险比较大的项目,最好选择哪种生存期模型A.瀑布模型 B.喷泉模型 C. 螺旋模型 D.增量模型14、增加有益的活动过程减少没有价值的活动过程是下列哪类质量活动A.质量保证 B.质量规划 C.质量控制 D.质量改进15、里程碑的最佳定义A.相关工作和事件的结合B.通常用来表示工作或事件的两条或多条线段或箭头的相交C.项目中表示报告要求或重要工作完成的可以辨别的点D.需要资源和时间投入才得以完成的具体的项目任务16、在以下哪种项目组织中项目经理将可能对项目资源进行最严格的控制A.强矩阵型 B.项目化型 C.弱矩阵型 D.项目协调者17、以下哪一项是项目团队建设的基本原则A.进行经常性的执行情况评估B.确保项目团队每位成员除了向项目经理汇报之外同时向职能经理汇报C.尽早进行项目团队建设D.解决成员间的政治分歧18、对活动工时估算的输入不包括:A、专家判断B、限制因素C、假定D、资源能力19、开始和完成日期反映着预期的资源可行性,这样的项目进度被称为:A、资源限制的进度B、资源分配进度C、资源平衡进度D、资源定量化进度20、要缩短关键路径,下列哪一方法对降低项目成本有最大潜力但是可能增大风险?A、赶工B、工作外包而不是内部实施C、减少工作的范围D、以并行方式而不是按序列方式来实施进行工作21、大多数质量问题是由下列哪些因素引起的:A、员工不够小心谨慎B、缺乏对员工的激励C、缺乏来自管理层的关注D、需求规格错误22、周期性的评估项目执行,以便提供项目是否满足相关质量标准的证据的过程被称为:A、质量保证B、质量控制C、质量计划D、质量评审23、质量计划过程包括的工具和方法有:A、收益/成本分析B、基准C、质量审计D、以上所有的24、质量是:A、零缺陷B、满足需求C、产品或服务满足明确和隐含需求的能力D 、B 和 C25、人力资源管理的主要程序是:A、组织设计,团队建设,资源规划,评优和奖励B、组织规划 ,人员招募, 团队发展C、业主管理 , 团队发展,项目计划编制,项目相关者管理D、员工规划,资源外购,团队发展,业主管理26、项目收尾的结束规划包括所有下列事项,除了:A、为下一个项目保留所有的资源B、记录已建的产品或完成的安装C、项目过程历史报告D、移交责任27、项目团队成员能与项目经理成功沟通的程度主要地取决于:A、项目经理如何有效地与团队建立关系B、项目经理在组织层级中的地位C、项目的规模和性质D、项目经理的薪水和年龄28、管理收尾包括所有下列事项,除了:A、项目验收B、合同清算C、项目文件档案D、经验教训学习29、下列哪个不是项目管理计划的一部分A. 里程碑图示B. 进度C. 数据库设计D. 风险清单30 、一个高科技公司的项目经理,现正在为一个新的项目选择合适的组织结构,这个项目涉及很多的领域和特性,他应该选择哪种组织结构A. 矩阵型B. 项目型C. 职能型D. 组织型31、对于风险比较大的项目,最好选择下面哪个生存期模型A. 瀑布模型B. 原型C. 螺旋模型D. V 模型32、组成范围基准的内容是A. 项目章程、批准的详细的项目范围说明书和 WBSB. 批准的详细项目范围说明书、 WBS 和 WBS 字典C. 项目章程、项目工作说明书和 WBSD. WBS33、如果你是某项目的项目经理,你已经估算出每个单元的成本是¥ 200。

软件项目管理练习题

软件项目管理练习题

软件项目管理练习题一、单选题1。

变更控制是对( B )的变更进行标识、文档化、批准或拒绝,并控制。

A。

详细的WBS计划 B.项目基线C.项目预算D。

明确的项目组织结构.2。

项目配置管理的主要任务中,不包括( C )。

A。

版本管理B。

发行管理C.检测配置D。

变更控制3. 在项目团队会议上,一个小组成员建议扩大工作范围,他的建议已经超越了项目章程中的范围。

这时,项目经理指出项目团队应该集中精力完成仅限于需要完成的所有工作。

这属于( B )。

A。

范围定义B。

范围管理C.项目章程D.范围分解4。

使用工作分解结构的主要原因是:( D )。

A。

组织工作 B.防止遗漏工作C。

为项目估算提供依据D。

以上都是5.进行活动历时压缩时,可以在关键路径活动上增加资源。

这时必须进一步考虑什么?( B )。

A。

其他活动的延迟B。

出现新的关键活动C。

分配给关键路径上其他任务的资源D。

进度计划中历时最长的任务6.如果一个任务的最乐观估算为12天,最悲观估算为18天,那么最可能估算为多少?(15天)。

A。

15天 B.13天C。

16天D。

以上都不是7。

有一个文件,它通过确定项目目标和主要项目可交付成果,形成了项目团队和项目客户之间达成一致的基础。

这个文件的名称是:( C )。

A。

执行计划 B. 配置管理计划C. 范围说明书D. 工作授权计划8。

工作包是:( A )。

A.WBS最低层的可交付成果B.带有一个特定标示符的任务C.要求的汇报级别D.可以分配给一个以上组强单位的任务9.项目可能:( D ).A. 没有关键路径B.多条关键路径C。

一条关键路径D。

一条或多条关键路径10.举行项目团队会议时,小组决定在某个特定领域付出额外工作使客户获得他们不需要的需求,于是他们把额外的工作加进项目中,这称为:( A ).A。

镀金B。

额外范围C。

经批准的变更单D。

好主意11。

“在对软件编码前不能进行软件测试”这句话说明了哪种依赖关系?( D )A。

软件项目管理课后习题参考答案

软件项目管理课后习题参考答案

第一章项目管理概述一.选择题1.项目是(D)。

A.一个实施相应工作范围的计划B.一组以协作方式管理、获得一个期望结果的主意C.创立独特的产品或服务所承担的临时努力D.必须在规定的时间、费用和资源约束条件下完成的一次性任务2.你刚被指派在你的公司的一个不同的部门中管理一个大的项目。

你正试图了解项目是关于什么的,谁是主要的项目干系人,为了管理好此项目,你首先应该做(C)。

A.所有的项目计划B.会见以前的项目经理,以找出他离开的原因C.与你的老板见面,了解他对项目的看法D.与你的新项目团队见面,认识他们和了解他们对项目的看法3.不属于项目的活动是(B)。

A.一种新型罐头产品的开发B.罐头产品的生产C.罐头产品的试制D.罐头产品的营销策划4.项目是一个特殊的将被完成的有限任务,它是在一定的时间内,满足一系列特定目标的多项相关工作的总称。

此定义实际包含的含义有(D)。

A.项目是一项有待完成的任务,且有特定的环境与要求B.在一定的组织机构内,利用有限资源(人力、物力、财力等)在规定时间内完成任务C.任务要满足一定性能、质量、数量、技术指标等要求D.项目的实施具有一定的风险第二章项目实施的环境与过程一.选择题1.项目管理中应用最广泛的组织形式是(C)。

A.项目式B.职能式C.矩阵式D.网络式2.下面有关矩阵式组织环境的描述,不正确的是( A)。

A.项目的经理必须是职能部门领导,这样才能取得公司总经理对项目的信任B.项目经理和职能经理必须就谁占主导地位达成共识C.矩阵式项目组织能够充分利用人力资源D.矩阵式项目组织能够对客户的要求作出快速响应3.在下列组织结构形式中,团队建设最困难的是( C)。

A.直线式结构B.职能式结构C.矩阵结构D.项目结构4.职能式项目组织形式中项目经理的权限( A)。

A.很小B.有限C.中等D.很高5.项目在哪种组织中最不被重视(D )。

A.平衡矩阵型B.强矩阵型C.项目协调员型D.职能型6.下面各种类型的组织中,哪种最常发生冲突( B)。

软件项目管理课后习题参考答案

软件项目管理课后习题参考答案

1.为什么要用系统的观点看待项目?只有采用系统分析的思想,对所有与项目相关的人和组织进行分析,编制项目计划时尽量对不同部门和个人的需求进行协调,统筹兼顾,取得某种平衡,最大限度调动项目利益相关者的积极性,减少项目实施的阻力,创造有利于项目发展的环境,才能有利于项目的成功。

2.简述几种项目组织结构的不同之处?职能型优势:分工明确,执行力强,各部门中的职员可以实现技术、信息的共享,从而有利于提高员工在某一领域的专业能力。

劣势:管理责任的集中;组织结构僵硬,灵活性不好。

项目型优势:目标明确,工作效率高,对项目的成败直接负责;项目沟通与协调容易,项目成员之间冲突容易解决;机动灵活,应付突发事件的能力强。

劣势:资源的重复设置,管理成本相对较高;与其他项目缺乏信息沟通,难以吸收其他项目的成功经验和失败教训;项目成员流动频繁,影响工作情绪。

弱矩阵型:没有设置项目经理一职,靠员工的自觉完成工作任务,这类组织结构,结构松散,约束少,是用于需要创造性思维活跃,时间充裕的小型项目。

平衡矩阵型优势:项目由主管负责,对项目的成败起关键作用;资源共享,相对资源浪费少,管理成本低;多项目管理成为可能。

劣势:对项目主管的要求很高,否则项目不可能成功;员工受多头管理;项目协调困难。

强矩阵型:由项目经理组成一个部门,凌驾于各个职能部门之上,这样做的好处是结合了弱矩阵和平衡矩阵组织的所有优点,同时避免了他们的劣势,也是目前企业项目组织结构设置的最多的一种。

3.简述高级管理层的支持对项目管理成功的重要性。

(一)、获取足够的资源:打杀一个项目最好的办法就是不提供需要的资金、人力、资源和成功的希望。

如果项目经理能得到高级管理层支持,他很容易突破资源的困局,得到足够的资源,不为项目以外的琐事分心;(二)、项目经理经常需要及时获取对项目特殊要求的审批,比如:项目需要二次开发时,对技术人员的技能要求。

再比如项目过程中需要对软硬件的性能进行整体测试等,项目经理为了留住关键人员,可能需要额外的奖励。

软件项目管理期末复习题集与参考答案解析

软件项目管理期末复习题集与参考答案解析

软件项⽬管理期末复习题集与参考答案解析软件项⽬管理期末复习题及参考答案⼀、单项选择题(1)赶⼯⼀个任务时,你应该关注(C )A. 尽可能多的任务B. ⾮关键任务C. 加速执⾏关键路径上的任务D. 通过成本最低化加速执⾏任务(2)下列哪个不是项⽬管理计划的⼀部分?(C)A. ⾥程碑图⽰B. 进度C. 数据库设计D. 风险清单(3)对⼀个任务进⾏进度估算时,A是乐观者,估计是6天完成,B是悲观者,估计是24天完成,C是有经验者认为最有可能是12天完成,那么这个任务的历时估算是介于10天到16天的概率是()E1=(O+4M+P)/6 δ1=(P-O)/6A. 50%B. 68.3%C. 70%D. 99.7%(4)关于浮动,下⾯除了哪个之外都是不正确的?(b )A. 每个任务都有浮动B. 只有复杂的项⽬有浮动C. 浮动是在不增加项⽬成本的条件下,⼀个活动可以延迟的时间量D. 浮动(时间)是在不影响项⽬完成时间的前提下,⼀个活动可以延迟的时间量(5)关于⽹络图,下⾯哪个是不正确的?(D )A. ⽹络图可⽤于安排计划B. ⽹络图展⽰任务之间的逻辑关系C. ⽹络图可⽤于跟踪项⽬D. ⽹络图可⽤于详细的时间管理(6)需求分析是回答系统必须( a )的问题A. 做什么B. 怎么做C. 何时做D. 为谁做(7)为了有效地管理项⽬,应该将⼯作分解为更⼩的部分,以下各项中,哪⼀项不能说明任务应该分解到什么程度?(A )A. 可以在80⼩时内完成B. 不能再进⼀步进⾏逻辑细分了C. 可由⼀个⼈完成D. 可以进⾏实际估算(8)下⾯哪个不是需求管理的过程(D )A. 需求设计B. 需求获取C. 需求分析D. 需求变更(9)(a )是⽤系统的功能数量来测量其规模,与实现产品所使⽤的语⾔和技术没有关系的。

A. 功能点B. 对象点C. 代码⾏D. ⽤例点(10)如果你是某项⽬的项⽬经理,你已经估算出每个单元的成本是¥129。

这个项⽬⼀共有1200单元,你采⽤什么估算⽅法?(b )A. ⾃下⽽上估算法B. 类⽐估算法C. 专家估算法D. 参数估算法(11)风险的三个属性是(c)A. 风险发⽣的时间、地点、负责⼈B. 风险事件、时间、影响C. 风险事件、概率、影响D. 风险数量、风险影响程度、概率(12)“质量成本”是⼀个项⽬管理概念,它说明了下列哪项成本(a )A. 额外需求的成本B. 需求变更的成本C. 确保符合需求的成本D. 固定成本(13)在风险分析过程中,确定已经识别的⼀个风险事件是⽆法避免的,也是不能减轻的,也不能投保,这是⼀个关键的风险事件,⼀旦发⽣可能造成项⽬的失败,项⽬经理最佳的选择是(C )A. 降低风险的级别,项⽬团队将找到⼀个克服故障的⽅法B. 特别关注,加强管理该风险事件和所有的相关事件C. 让风险评估⼩组继续分析该风险事件,直到降低预期影响D. 忽略风险评估,因为不管赋予什么值,都只是⼀个估算。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、阅读全部的CMM内容,选择出您认为最有价值的十条关键实践,并说明理由。

(1)项目软件负责人,设计/编程/测试人员、软件版本管理员均已得到相应的培训,具备了完成其职责所需要的知识与技能。

理由:通过培训,工作人员具有了一定的知识储备,遇到困难能够很快找到相应的解决措施,就可以很快上手,不至于在一个问题上耽误太多时间。

因此,为了达到统一的科学技术规范、标准化作业,通过目标规划设定、知识与信息传递、技能熟练而进行培训就是十分必要的,这样能减少所需工作时间,提高成员的开发能力与创新能力,从而降低人力成本;减少浪费,从而降低了开发成本。

因此,参加培训就是十分必须的。

(2)根据项目要求,建立软件有关组(例如工程组、软件测试组等)。

理由:通过建立相关组,各组可以各施其职,同步工作,提高工作效率。

因为软件开发时不可能一个人兼顾所有的方面,应该分成几个模块,只做好自己的然后与其她组协调就可以。

如专人负责技术方案设计,专人负责数据,专人做技术层面的指导等。

这样权责分明,遇到问题能够很快找到相应的负责组,解决问题的时间也将大大减少。

(3)确定设计、编程、测试人员,并实施三分离。

理由:实现了三分离可以更加开阔人员的思维,防止由于思路固定而不能及时发现问题,更有助于激发员工的创新思维,使软件更先进,更经得起考验。

(4)根据项目软件的质量需要确定本项目所采用的软件开发方法。

理由:确定好软件开发所采用的开发方法,就能尽早的做下步计划,不至于到最后为选择开发方法而浪费太多时间。

目前已形成了八类软件开发方法,开发时就是选择面向数据结构的开发方法还就是面向对象的开发方法,直接会影响到小组的开发进度。

要根据成员的擅长情况制定方法。

(5)软件版本管理员,以及设计、编程、测试人员的职责明确。

理由: 权责分明,遇到问题追究到人,会使项目开发更有计划。

完善制度,将责任明确到人,这样才能明确目标,将工作细化,使成员做好自己的工作,认识到重要性,使开发过程能高效的进行。

(6)制定正式评审规程、建立相应的评审机构。

理由:项目评审工作就就是对项目计划执行情况以及未来计划的新情况做一个评审,同时对项目的财务状况及其它情况做一个总结。

另外,它可以为项目团队在处理项目风险时提供机会,以获得管理层的支持,同时也为项目团队继续开展项目工作提供在高层管理方面的认可。

(7)根据项目实际情况,选定本项目应遵循的软件过程标准、规范。

理由:如果一个团队中有了统一的过程,那么,大家的行为就会符合规范,从而提高团队的整体能力。

如果一个团队缺乏执行规范化过程的活动,就会导致整个组织的混乱。

为了消除软件过程所常见的问题,建立软件过程规范就是必要的。

软件过程规范可以确保过程活动的一致性、有效性与持续性。

(8)任命项目负责人。

理由:项目负责人除了调配好小组成员,运用专业知识做整体质量的导向,控制项目的进度以外,还要与用户协调,利用周边人力资源做项目规划的流程安排,项目负责人要及时的发现程序开发中的困难与障碍,并且努力的及早的解决。

一个项目从开始运作到最后完成,不论就是合同的签定、还就是人员的调配、还就是执行的安排,处处隐藏着不可预见的漏洞,因此需要项目负责人全局的掌控思维与能力。

(9)具有各阶段活动所需要的软/硬件环境、支持工具,并提供足够的经费。

理由:只有硬件基础具备了,才能形成一个好的开发环境,同时经费也就是基础,要合理的制定经费计划,保证开发过程顺利进行。

要做好软件开发成本估算,这样才能合理的开发。

(10)项目软件负责的职责明确。

理由:责任就是管理的基础,明确了职责,才能使成员更加认真的做好自己的本职工作,同时将责任细分,在出问题后也可以责任到人。

2、软件配置管理主要包括哪些?请详细说明。

(1)配置管理过程软件配置管理(SCM)简单而言就就是管理软件的变化。

它属于软件工程过程,通常由相应的工具、过程与方法学组成。

在整个过程管理的活动中占有很重要的位置。

IEEE“软件配置管理计划标准”关于SCM论述如下。

软件配置管理由适用于所有软件开发项目的最佳工程实践组成,无论就是采用分阶段开发,还就是采用快速原型进行开发,甚至包括对现有软件产品进行维护。

SCM通过以下手段来提高软件的可靠性与质量。

1)在整个软件的生命周期中提供标识与控制文档、源代码、接口定义与数据库等工件的机制。

2)提供满足需求、符合标准、适合项目管理及其她组织策略的软件开发与维护的方法学。

3)为管理与产品发布提供支持信息,如基线的状态、变更控制、测试、发布与审计等。

软件配置管理贯穿于项目的整个软件过程中,与项目过程行为密不可分。

一方面,对于在软件过程中所产生的工作产品或变更请求通过配置管理活动进行管理,将有效的信息存储在配置管理库中。

另一方面,项目人员可依赖配置管理活动获取配置项的有效版本与历史信息。

软件配置控制就是软件配置管理的核心工作。

软件配置控制主要包括对软件的存取控制、版本控制、变更控制与产品发布等4个方面。

(2)基线控制在软件开发过程中,由于各种原因,可能需要变动需求、预算、进度与设计方案等,尽管这些变动请求中绝大部分就是合理的,但在不同的时机做不同的变动,其难易程度与造成影响差别比较大,为了有效的控制变动,软件配置管理引入基线的概念。

简单地说,基线就就是项目存储库中每个工件版本在特定时期的一个“快照”,它提供一个正式标志,随后的工作基于这个标志进行,并且只有经过授权后才能变更这个标志。

建立一个初始基线后,以后每次对它进行的变更都将记录一个差值,直到建成下一个基线。

基线就是软件生命期各阶段末尾的特定点,也称为里程碑。

在这些特定点上,阶段工作已结束,并且已经取得了正式的阶段性产品。

建立基线的概念就是为了把各个阶段的工作划分的更加明确,使得本来连续开展的软件工作在这些点上被割开,从而更加有利于检验与肯定阶段性的成果。

同时也有利于变更控制。

有了基线的规定后,就可以禁止跨越里程碑去修改另一阶段“已冻结”的工作成果。

就各种不同类型的基线而言,有一条较为特殊的基线,它就是软件过程中的第一条基线。

它包含通过评审的软件需求,因此称之为“需求基线”。

通过建立这样一个基线,受控的系统需求成为进一步软件开发的出发点,对需求基线的变更请求将受到慎重的评估与严格的控制。

受控的需求还就是对软件进行功能评审的基础。

需求基线就是整个软件生命周期的起点与终结点。

(3)版本控制版本控制就是对系统不同版本进行标识与跟踪的过程,就是实行软件配置管理的基础,也就是所有配置管理系统的核心功能。

配置管理系统的其她功能大都建立在版本控制功能之上。

版本控制主要分为版本的访问与同步控制、版本的分支与合并。

1)版本的访问与同步:一般来说,不同的工作空间就是由不同的目录来表示的,而对工作空间的访问就是由文件系统提供的文件访问权限来加以控制的。

版本的访问控制:工作区域中的源文件就是从库中恢复得到的一个副本,该副本可以就是“可写”的,也可以就是“可读”的。

对于“可写”的副本来说,它就就是真正的工作文件。

而对于“可读”的副本,它可以被视为软件库中源文件的一个缓冲副本,此时一般有两种工作模式。

在工作区域一旦有“读”请求,则作一次恢复操作,获得一个副本。

当“读”操作结束后,该副本被删除。

这样就形成一种重复恢复,从而可以保证工作区域中的文件内容被更新为与软件库中的内容一致。

针对上一种模式中重复恢复引起的较大时间代价,不就是每次“读”操作都要求与软件库中发生交互,而就是将重点放在工作区域上,仅当软件库中的内容发生更改时,才发生交互。

版本同步控制:同步控制实际上就是版本的检入检出控制。

2)版本的分支与合并:版本分支的人工方法就就是从主版本---称为主干上复制的一份,并做上标记。

在实行了版本控制之后,版本的分支也就是一份复制,这时的复制过程与标记动作由版本控制系统自动完成。

对于合并,在没有版本控制的时候,一般就是通过文件的比较来进行合并。

在实行了版本控制之后,还就是要通过文件的比较来进行合并,但就是这时的比较工作可以由版本比较工具自动进行合并,自动合并后的结果需要人工检查,才有很高的可靠性。

(4)变更控制在软件过程中要产生许多变更,比如配置项、配置、基线、构建的版本与发布版本等。

对于所有的变更,都要有一个控制机制,以保证所有变更都就是可控的、可跟踪的与可重现的。

为了有效地进行变更控制,需要规范相应的变更控制流程,变更控制流程主要分为7个阶段,变更请求提交、接受、评估、决策、实现、验证与完成。

3、如何综合运用过程管理的工具?在软件过程活动中,要经历不同的阶段与涉及很多的过程域,为了有效的执行这些软件过程活动,需要在整个软件开发过程中引入相关工具。

一般来说,实施软件过程活动所需要的工具主要有下面几种。

●需求管理工具●面向对象的分析设计工具●配置管理、变更管理工具●软件测试管理、缺陷跟踪工具(1)需求管理工具一个优秀的需求管理工具,可以有效地管理需求,提高需求管理工作流程的自动化程度,在项目实施中完整的、一致的管理好需求。

IBM-Rational AnalystStudio:IBM-Rational AnalystStudio可以帮助更好地分析问题,更好地定义并交流问题的解决方案,用于可视化建模、需求与用例管理以及缺陷与变更请求跟踪等。

Telelogic DOORS:Telelogic DOORS-Enterprise Requirements Suite(DOORS/ERS)就是基于整个软件组织的需求管理系统,用来捕捉、链接、跟踪、分析及管理信息,以确保项目与特定的需求及标准保持一致。

DOORS/ERS提供多种工具与方法对需求进行管理,可以灵活地融合到组织的软件过程管理中。

Borland Caliber:Borland Caliber就是一个基于Web与用于协作的需求定义与管理工具,可以帮助分布式的开发团队平滑协作,从而加速交付应用系统。

Caliber 辅助团队成员沟通,有助于更好地理解与控制项目,较少错误与提升项目质量。

(2)面向对象的分析设计工具IBM-Rational Rose就是面向对象技术分析设计工具的代表,就是可视化的建模工具。

它采用“统一建模语言(UML)”的表示方法,在同一个模型中实现业务建模、对象建模与数据建模,使所有参与项目的成员都可以在统一的语言环境中工作于同一个模型之上,有利于改善成员之间的沟通。

其次,IBM-Rational Rose支持多种语言的代码生成及双向工程,可实现代码与模型的互相转换,并且可以将遗留代码引入模型中。

最后,IBM-Rational Rose带有对设计元素进行测试的模块工具,可以尽早发现设计中的问题,真正实现“质量从头抓起”。

(3)配置管理与变更管理工具在CMM标准中,明确规定了软件配置管理以及变更请求管理的相关工作,主要包括以下两方面。

相关文档
最新文档