软件项目管理基础知识复习

更新时间:2023-12-08 12:24:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1. 什么是软件项目管理?软件项目管理的主要内容有哪些?软件项目管理中

最突出的问题是什么?

答案:○1软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员(People)、产品(Product)、过程(Process)和项目(Project)进行分析和管理的活动。○2软件项目管理的内容主要包括如下几个方面:人员的组织与管理,软件度量,软件项目计划,风险管理,软件质量保证,软件过程能力评估,软件配置管理等。○3管理

2. 常用的软件开发模型有哪几种?各自有什么特点?(至少给出6种以上)。 答案:

1瀑布模型:传统瀑布模型:规定了各项软件工程活动,包括:制定开发计划、需求分析和说明、软件设计、程序编码、测试、运行维护。并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

2快速原型模型:第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品

3增量模型:在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成。增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品。整个产品被分解成若干个构件,开发人员逐个构件地交付产品,这样做的好处是软件开发可以较好地适应变化,客户可以不断地看到所开发的软件,从而降低开发风险

4螺旋模型:由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。

5喷泉模型:具有更多的增量和迭代性质,生存期的各个阶段可以相互重叠和多次反复,而且在项目的整个生存期中还可以嵌入子生存期。就像水喷上去又可以落下来,可以落在中间,也可以落在最底部。

6 RUP模型:RUP具有两个轴,一个轴是时间轴,这是动态的。另一个轴是工作流轴,这是静态的。在时间轴上,RUP划分了四个阶段:初始阶段、细化阶段、构造阶段和发布阶段。每个阶段都使用了迭代的概念。在工作流轴上,RUP设计了六个核心工作流程和三个核心支撑工作流程,核心工作流轴包括:业务建模工作流、需求工作流、分析设计工作流、实现工作流、测试工作流和发布工作流。核心支撑工作流包括:环境工作流、项目管理工作流和配置与变更管理工作流。

3. 软件项目经理的作用是什么?软件项目经理应具备哪些能力和特征?如何

如何做一个好的项目经理?

答案:○1项目经理直接报告给项目总监,负责完成项目的具体管理,是项目综合管理的焦点,是客户、高层和部门沟通的中心。○2具备良好的自身素质和较强的管理、技术能力。○3要有责任心、要善于沟通、能引导客户、能预测风险、善于总结、随需应变、善于激励团队、同时也要懂技术。

4. 针对XP和SRCUM两种开发模型进行比较,分析它们各自的特点和优势? 答案:XP:是一种轻型开发方法。它规定了一组核心价值和方法,消除了大多数重量型过程的不必要产物,建立了一个渐进型开发过程。该方法将开发阶段的4个活动(分析、设计、编码和测试)混合在一起,在全过程中采用迭代增量开发、反馈修正和反复测试。它把软件生命周期划分为用户故事、体系结构、发布计划、交互、接受测试和小型发布6个阶段。优点:①采用简单计划策略,不需要长期计划和复杂模型,开发周期短。②在全过程采用迭代增量开发、反馈修正和反复测试的方法,软件质量有保证。③能够适应用户经常变化的需求,提供用户满意的高质量软件。

SRCUM:特点:1专注于如何在最短的时间内实现最有价值的部份○2每隔一○两周或者一个月,我们就可以看到实实在在的可以上线的产品○3团队按照商业价值的高低先完成高优先级的产品功能,并自主管理,凝结了团队智慧创造出最好的方法因而提高效率○4能够在开发进程中不断检查,并作出相应调整,便于快速发现问题,促使团队和组织持续改进。

5. 软件项目计划阶段主要解决什么问题?软件项目计划的主要内容有哪些? 答案:○1必须描述如何去完成项目目标;把项目工作排序,估计每项工作需要多少时间完成,确定初阶段交付日期,并最终制定一个详细的项目日程表;根据技术和能力将人员分配到具体任务上。○2目标、策略、流程、标准、质量、进度安排、预算、资源、风险、配置管理。

6. 软件项目计划阶段主要解决什么问题?如何理解软件项目计划不是一个文

档,而是一个持续的策划过程? 答案:○1怎么做、如何做、谁来做。○2

7. 常用的软件项目计划方法有哪些?分析它们的各自优点和缺点?

答案:滚动计划方法:优点是具有灵活、适应性强、稳定性和可操作性,使组织始终有一个较为切合实际的长期计划作指导,并使长期计划能始终与短期计划紧密的衔接在一起。缺点是降低了计划的严肃性。

网络计划方法:是一种应用网络模型直观的表示软件开发众多工作之间的逻辑关系与时间关系,对软件工程项目所需时间、费用、资源进行求解和优化的计划方法。一般是建立在WBS方法之上,先分解才能优化。工作任务是明确的,如果两项任务之间有依赖关系,前项任务没有完成,后面的任务可能无法开始。

工作分解结构方法(WBS):是一种将复杂的问题分解为简单地问题,然后再根据分解的结果进行计划的方法;以可交付的成果为导向,对项目要素或整个工作范围进行分解,逐层推进,每向下分解一层就能对项目工作有更详细的了解和定义,从而掌握项目的全部细节,有利于做出相对准确的计划。

8. 何谓工作分解结构WBS方法?它有什么作用?创建WBS方法有哪些? 答案:是一种将复杂的问题分解为简单地问题,然后再根据分解的结果进行计划的方法。

以可交付的成果为导向,对项目要素或整个工作范围进行分解,逐层推进,每向下分解一层就能对项目工作有更详细的了解和定义,从而掌握项目的全部细节,有利于做出相对准确的计划。

自上而下、自下而上、类比、归纳等方法。

9. 软件项目估算的主要内容有哪些?常用的软件项目规模估算方法有哪些?

常用的软件项目工作量估算方法有哪些?

答案:○1规模估算、工作量估算、进度估算、风险估算、其他估算。○2德尔菲法、代码行估算方法、功能点分析方法、标准构件法、综合讨论。○3COCOMO方

法、多变量模型、基于用例的工作量估计、IBM RMC估算方法、扑克牌估算方法、不同场景的估算方法。

10. 什么是里程碑?里程碑有什么作用?瀑布开发模型需要定义哪些里程碑? 答案:软件项目实施过程中的重大事件,这些事件有助于了解项目实施的进展情况。获取对项目实施的整体了解;便于向高层管理者汇报项目进展情况。

产品需求文档完成、开发计划书初稿完成、产品需求文档审查通过、产品功能规格说明书完成、开发计划书签发、产品功能规格说明书签发、测试用例设计完成、测试用例审查通过、测试脚本开发完成、代码完成、单元测试完成、集成测试完成、功能测试完成、系统测试完成、安装测试完成、代码冻结、验收测试完成、质量评估报告、产品发布

11. 常见的进度编制方法有哪些?分析它们各自的特点和优势? 答案:

计划评审技术方法(PERT法):把各项工作的时间作为随机变量来处理,并能指出缩短时间、节约费用的关键所在。

甘特图法:用水平线段来描述把任务分解成子任务的过程,以及没格子任务的进度安排,简单、明了、直观、易于跟踪和管理。

表格表示法:用表格来表示各个活动历时和相互之间的依赖关系,比较适合小型项目。

12. 影响软件项目进度的因素有哪些?你认为如何更好地控制软件项目的进

度?

答案:从进度计划本身分析:进度计划制定不够细致、进度计划的约束条件和依赖环境考虑不全、工作量评估不准确;从进度控制角度:进度信息收集问题、进度监控和管理问题、计划变更调整不及时;从团队协调方面考虑:完美主义、自尊心、想当然主义。从项目管理三角关系考虑:在保证质量的前提下,寻求任务、时间、成本三者之间的最佳平衡。

项目阶段情况汇报与计划、定期和不定期的项目进度检查、制定适当的进

度控制流程、调整各种项目目标之间的平衡。

13. 影响软件项目成本的因素有哪些?你认为如何更好地控制软件项目的成

本?

答案:项目的质量对成本的影响、项目管理水平对成本的影响、人力资源对成本的影响。

14. 什么是软件质量?影响软件质量的主要因素有哪些? 答案:软件产品满意用户要求的程度。

外在因素:软件提供的功能、性能、人机交互界面是否美观、易于操作;内在因素:软件的设计好坏、故障数目和严重程度

产品的修正性:可维护性、灵活性、可测试性;产品的转移性:可移植性、可重用性、可互操作性;产品运行性:正确性、可靠性、有效性、完整性、有用性。

15. 什么是软件质量保证?需要从哪些方面去关注软件质量?如何保证软件质

量?

答案:为管理层提供为获知产品质量信息所需的数据,从而获得产品质量是否符合预定目标的认知和信息。是要为软件产品的质量提供某种可视性,知道哪些地方有质量问题,便与改进方法和措施,提高软件的质量。 软件产品、开发活动、标准和规程

正确理解用户的要求、制定标准和规程、审查软件开发活动、审核软件工作产品、测试源程序代码、记录开发活动和软件产品的偏差、记录所有不符合项,报告高级管理层。

16. 什么是软件风险?软件风险的主要特点哪些?风险管理的主要策略有哪

些?

答案:软件项目风险是指在软件开发过程中潜在的、可能发生的问题,它可能会

对软件过程或产品造成伤害或损伤。 不确定性和损失

风险识别、风险量化、风险对策、风险监控

17. 什么是软件风险管理?如何进行软件风险管理?

答案:项目风险管理是指对项目风险从识别到分析直至采取应对措施等的一系列过程。

风险识别、风险评估、风险计划、风险应对(规避、转移、弱化、接受)

18. 风险管理的常用技术有哪些?

答案:风险识别:头脑风暴法、面谈、Delphi法、SWOT技术 风险量化:风险因子计算、VERT、决策树分析、风险模拟 风险应对计划制定:回避、缓解、转移、显出风险的措施 风险监控:核对表、定期项目评估、挣值分析

19. 什么是基线?为什么需要基线?软件产品典型基线有哪些?

答案:已经通过正式复审和批准的软件产品、标准或规约,它们可以作为进一步开发的基础,并且只能通过正式的变化控制过程才允许对它们进行变更。 基线是为今后项目实施时候提供了一个可以控制、追踪项目进度的依据,在软件实施过程中就以这个基准开控制和管理,使进度不偏离正常轨道。

20. 什么是软件配置管理?为什么需要软件配置管理?软件配置管理的主要任

务是什么?

答案:在软件的整个生命周期中,对SCI(软件配置项)进行:系统地控制SCI的标识、存储、更动和发放、记录、报告其状态、验证SCI的正确性和一致性、对上述工作的审计。

软件产品的易改性与可控性、修改很可能引入新的错误, 使结构变坏、牵一 SRS、软件设计文档、源代码、测试计划/报告

发动全身(影响域)、团队开发时,多人并发存取需加控制(存取控制)、多应用开

发时,同一软件的不同版本可能对应于不同应用,对此需加控制(版本控制)、应对软件更动状态予以追踪,并及时向有关人员通报状态情况、如果软件产品不能自始至终地保持清晰、互相一致,造成混乱、丢失,那么该软件系统会因无法使用而不得不报废

必须使每个SCI保持与相关SCI的可追踪性(正确性)和完备性、使相关的SCI之间满足文实相符,文文一致以确保SCI的有效性、以清晰、明了、易管理的方式标识每个SCI,使其满足 :可视性 、唯一标识性、使最终软件产品的正确地生成、改进和维护成为可能,保证最终软件产品的正确性

21. 团队管理的主要目的是什么?团队管理的主要内容有哪些?你认为如何使

团队更成功?

答案:确保团队的战斗力、确保团队的凝聚力、确保团队的工作效率和质量 团队的组织(工作效率和质量、凝聚力)、团队的交流和合作(工作效率和质量、战斗力)、团队的纪律(战斗力)、团队的激励机制(凝聚力) 明确团队的目标、确定团队的种类、理解高效团队的特征

22. 什么是软件项目跟踪?软件项目跟踪的目标是什么?主要对哪些对象进行

跟踪?软件项目跟踪的方式主要方式有哪些?

答案:在项目实施过程中,随时掌握项目的实际开发情况,使得当项目实施与计划相背离,或者出现问题和风险时,能够采取有效的措施。 了解项目进展、发现问题和风险、采取措施

项目风险、项目进展、项目活动、开发活动的问题、项目展望

成立项目跟踪小组PTT、指定项目跟踪负责人、定期召开项目跟踪会议,获取项目实施的详细情况和面临的问题

23. 软件项目收尾需要完成哪些工作? 答案:

范围确认 项目接收前,重新审核工作成果,检验项目的各项工作范围是否完成,或者完成到何种程度,最后,双方确认签字

质量验收 质量验收是控制项目最终质量的重要手段,依据质量计划和相关的质量标准进行验收,不合格不予接收

费用决算 费用决算是指对从项目开始到项目结束全过程所支付的全部费用进行核算,编制项目决算表的过程

合同终结 整理并存档各种合同文件

资料验收 检查项目过程中的所有文件是否齐全,然后进行归档

24. 软件项目验收有什么意义?主要依据是什么?项目验收的内容有哪些? 答案:项目的验收标志着项目的结束(或阶段性结束);若项目顺利地通过验收,项目的当事人就可以终止各自的义务和责任,从而获得相应的权益。同时,项目团队可以总结经验,接受新的项目任务;项目验收是保证合同任务完成,提高质量水平的最后关口;通过项目验收,整理档案资料,可为项目最终交付成果的正常使用提供全面系统的技术文档和资料 主要依据项目的工作成果和成果文档 质量验收和文件验收。

本文来源:https://www.bwwdw.com/article/ma3t.html

Top