最新软件项目管理复习
- 格式:docx
- 大小:42.38 KB
- 文档页数:8
1.软件开发项目失败的共通原因P7(1)计划方案不好;(2)没有按照计划执行;(3)主要管理人员未参加;(4)项目管理人员、项目领导的运营管理水平低。
2.软件开发项目的特殊性P6共同特点:一次性、独特性、目标确定性、过程不确定性、活动整体性、资源依赖性自身特点:(1)以人为本:技术含量高,不能随意选择人员参与。
(2)知识产品:需要有规范的操作规程来保证项目的实施、需要熟练的技术人员负责实施、需要进行知识的积累、需要创造性的智慧活动。
(3)目标不精确:开始用户只有一些初步功能要求而无明确的想法。
软件项目的任务范围很大程度上取决于项目组所做的系统计划和需求分析。
(4)目标渐进性:注意在项目执行过程中对变更的控制,尽量保持工作范围不变,否则项目可能改来改去永远做不完。
(5)阶段性。
(6)不确定性。
(7)需求变化频繁。
3.软件项目工程管理的基本原则P9(1)工程进行时,尽快发现工程的异常和工程的延误;(2)对于工程的异常和工程的延误,要有适当的对策处理。
4.软件项目工程管理的要素P11(1)需求管理(2)进度管理(3)成本管理(4)质量管理(5)风险管理(6)配置管理(7)人力资源管理(8)沟通管理5.软件项目工程管理的关键6.软件项目工程管理的三大目标:进度、成本、质量P107.项目系统化计划概念:是对全工程的总体目标、开发对象、组织、资源等方面给予说明和计划。
又称为项目的总体计划,也称为工程计划。
P26主要内容:最大的成本:人员成本(人件费和外包费)。
P1149.什么是WBS,什么是PMC,WBS分四级,每一级是什么?WBS:(Work Breakdown Structure)即作业结构分解,在各个不同阶段把工程任务作业详细化,并用阶层构造形式表现出来。
即逐步分解工程,直至细化到最终能在1周内能完成的任务。
RMC:职责矩阵图(Responsibility Matrix Chart)为了把握开发工程的作业,通常采用明确实施作业的责任和权限的RMC 方法。
1. 需求分析团队中最主要的人员:项目经理、系统分析人员、设计人员、用户方业务人员。
2. 提高软件开发效率的方法:架构设计、软件包(成熟的)、开源软件、CASE 工具、面向对象代码重用方法、制定编码规范、代码生成工具、好的软件开发工具、平台。
3. 软件项目的属性:(1)惟一性。
(2)一次性(3)多目标性(4)生命周期属性(5)相互依赖性(6)冲突属性4. 软件设计中主要有哪些设计:系统架构设计、子系统设计、业务流程设计、数据库设计(核心)、系统间通信接口设计、批处理设计、用户界面设计、功能模块设计。
5. 软件项目管理的核心(内容):项目进度、项目质量、项目成果、项目人员。
6. 软件迭代开发的过程:制定过程、风险分析、实施工程、客户评估。
7. 软件项目生命周期中的四个重要阶段: 立项、设计、开发、收尾。
8. 软件项目管理角度软件生命周期为:1.软件计划2.软件需求分析3.软件设计4.软件编码5.软件测试6.软件实施7.软件维护9. 软件利益相关者:用户、软件拥有者、开发商。
【项目发起人、承约商/被委托人、客户/委托人、供应商、贡献者、项目投资方、经理以及项目涉及公共设施的当地居民。
】10. 系统试运行的目的: ( 1.检测系统设计和功能是否符合用户要求2.潜在问题和错误的发现 )(1) 通过对实际业务的模拟操作,检验系统设计和实现的功能是否真正满足用户的实际业务需求。
并在实际业务环境下,查找软件编码中潜在的问题和错误。
(2) 通过操作人员的实际工作体会,对系统的可行性提前进行评价。
(3) 提前在实际运行环境下检验系统处理业务峰值数据的稳定性和系统的健壮性。
(4) 为系统正式运行积累宝贵的经验。
11. 软件成本计算的公式: 程序规模的估算值 = 46A MB ++(程序的最小规模A ,最大规模B ,最可能的规模M ) 开发工作量 = /⨯修正系数(程序长度标准生产率)修正系数 = 10.1n +⨯12. 质量控制措施有哪些:1.实行工程化开发。
第一说一下试卷考试构造:软件项目管理期末复习重点1.名词解说( 1’x10=10’)2.填空题3.判断题(2’x10=20’)4.简答题(5’x5=25’)5.阐述题(15 分一题)王老师给了大多数题但不是所有一、名词解说题1.项目:项目是为达成某个独到的产品或服务所做的一次性任务。
2.项目管理:项目管理是对项目各个方面的计划、监察和控制,并激励项目的所有参加人员去达到项目的时间、质量、成本、性能等多方面的目标。
3.投资回报期:投资回收期是指用软件项目投资方案所产生的净利润赔偿初始投资所需要的时间。
4.原始资本投资:这个诚心没找到,找了半个小时啊5. QA(Quality Assuance)---质量保证经过成立和保持质量管理系统来保证产质量量没有问题,是过程质量审计者。
在我们软件开发过程中,QA 也就是质量构成员。
QA 所关注的是软件产质量量保证系统。
QC(Quality Control)--- 质量控制查验产品的质量,保证产品切合客户的需求;是产质量量检查者。
在软件开发过程中,QC其实就是测试构成员。
QC所关注的是产品,而非整个系统。
6.净现值:净现值=将来的回报总数-原来的投资总数7.项目利益人( Stakeholder ):项目利益人是指踊跃参加项目或其利益在项目履行中或成功后遇到踊跃或悲观影响的组织和个人8.转动计划:转动计划方法是一种动向编制计划的方法,依据“近细远粗”的原则拟订一准期间内的计划,而后依据计划的履行状况和环境变化,调整和订正将来的计划,并逐期向后挪动。
把短期计划和中期计划联合起来的一种计划方法。
9.网络计划方法:一种应用网络模型直观地表示软件开发众多工作(工序)之间的逻辑关系与时间关系,对达成软件工程项目所需时间、花费、资源进行求解和优化的计划方法,其基本种类是重点路线法 / 计划评审技术( CPM/ PERT计-划评审法 Program Evaluation and Review Techinque)。
项目的特征有哪些?有明确的目标项目之间的活动具有相关性限定的周期有独特性资源成本的约束性项目的不确定性项目与日常运作有什么不同?项目是一次性的,日常运作是重复进行的项目是以目标为导向的,日常运作是通过效率和有效性体现的项目是通过项目经理及其团队工作完成的,而日常运作是职能式的线性管理项目存在大量的变更管理,而日常运作则基本保持连贯性的。
软件项目有什么特殊性?为逻辑实体而非物理实体,具有抽象性没有明显的制造过程,也不存在重复生产软件项目的开发受到计算机硬件的制约不可能完全摆脱手工开发模式软件本身是相当复杂的,涉及因素众多,需求多变软件项目投入大、成本高软件项目管理有什么特征?软件是纯知识产品,其开发进度和质量很难估计和度量,生产率也难以预测和保证。
项目周期长,复杂度高,变数多。
软件项目提供的是一种服务,需要满足一群人的期望,即需要满足一群想法和利益各不相同的人的需求。
PMBOK包括哪9个知识领域?集成管理范围管理时间管理成本管理人力资源管理沟通管理风险管理质量管理采购管理常用的生存期模型有哪些?各适用于什么项目?瀑布模型:分析、设计、编码、测试和维护严格按步骤进行,适合于项目开始前有明确需求和明确的解决方案的项目,如公司的财务系统、库存管理系统、短期项目等。
V模型:是瀑布模型的变种,强调测试的重要性,将开发活动与测试活动紧密联系在一起。
适合于对系统的性能、安全有严格要求的项目。
原型模型:适合于在项目开始前对项目需求不明确,为了减少项目需求的不确定性而先开发项目的基本原型系统以验证可行性,然后逐步补充完善。
增量模型:由瀑布模型演变而来,假设需求可分阶段,分成一系列增量产品分别开发。
适合于项目开始明确了需求的大部分,但对市场和用户把握不是很准。
对于有庞大和复杂功能的系统也可考虑增量开发。
螺旋式模型:该模型在四个象限上分别表达了计划制定、风险分析、项目实施、客户评估四个方面的活动,通过一系列瀑布模型的不断循环来逐步规避风险。
软件项目管理复习题软件项目管理复习题软件项目管理是指对软件项目进行规划、组织、指导和控制,以实现项目目标的过程。
在软件开发领域,项目管理扮演着至关重要的角色。
为了加深对软件项目管理的理解,下面将提供一些复习题,帮助读者回顾相关知识点。
1. 什么是软件项目管理?它的目标是什么?软件项目管理是对软件项目进行规划、组织、指导和控制的过程。
其目标是确保项目按时、按预算和按要求完成,同时提高项目质量和客户满意度。
2. 请列举几种常见的软件项目管理方法。
常见的软件项目管理方法包括瀑布模型、敏捷开发、迭代开发和融合开发等。
3. 什么是WBS(工作分解结构)?它在软件项目管理中的作用是什么?WBS是将项目工作分解为可管理的任务和活动的过程。
它通过将项目分解为更小的工作单元,帮助项目经理和团队成员更好地理解项目范围、任务和工作量,从而更好地进行项目计划和控制。
4. 请解释一下PERT图和甘特图在项目管理中的作用。
PERT图是一种用于显示项目活动、顺序和持续时间的图形工具。
它可以帮助项目团队了解项目中各个活动的关系和时间要求,从而更好地进行项目计划和资源分配。
甘特图则是一种以时间为基准的条形图,用于显示项目中各个活动的开始时间、结束时间和持续时间,以及它们之间的依赖关系。
甘特图可以帮助项目团队直观地了解项目进度和任务分配情况。
5. 请解释一下风险管理在软件项目中的重要性,并列举几种常见的风险管理方法。
风险管理在软件项目中非常重要,因为它可以帮助项目团队识别、评估和应对可能影响项目成功的风险。
常见的风险管理方法包括风险识别、风险评估、风险规划、风险监控和风险应对等。
6. 请解释一下质量管理在软件项目中的作用,并列举几种常见的质量管理方法。
质量管理在软件项目中的作用是确保项目交付的产品或服务符合客户的要求和期望。
常见的质量管理方法包括质量计划、质量控制和质量改进等。
7. 请解释一下变更管理在软件项目中的重要性,并列举几种常见的变更管理工具。
软件项目管理复习资料1、软件商品特征:无形性、无耗损性、易复制性2、软件定义:软件是与系统,特别是一个计算机系统有关的程序、过程与有关文档的完整集合。
3、软件工程定义:软件工程是一类求解软件的工程。
它应用计算机科学、数学以及管理科学等原理,借鉴传统工程的原则、方法创建软件,以达到提高质量、降低成本的目的,使计算机设备的能力借鉴于软件成为对人类有用的东西。
4、5、项目的概念:在一定约束条件下具有特定目标的一项一次性任务。
6、项目管理要素:范围、时间、成本、质量、组织、客户满意度7、项目生命周期:(1)项目的启动:进行可行性分析,以便确定是否接受项目。
(2)项目的计划:建立解决需求或问题的方案,向客户提交各种计划书。
(3)项目的实施:执行计划阶段提出的解决方案,在各种因素的制约下,实现项目的目标。
(4)项目的结束:正式验收项目,使得项目圆满完成。
8、软件项目管理的过程:启动软件项目制定项目计划跟踪及控制项目计划评审项目计划编写管理文档9、软件项目管理的内容:软件项目需求管理、软件项目估算与进度管理、软件项目配置管理、软件项目风险管理、软件项目质量管理、软件项目资源管理10、PMBOK:项目管理知识体系PMI:美国项目管理协会IPMA:国际项目管理协会1112、需求开发和需求管理的界限:基准需求规格13、软件需求分为用户需求和系统需求,系统需求分为功能需求和非功能需求,功能需求描述系统所应提供的功能和服务,包括系统应提供的服务、对输入如何响应及特定条件下系统行为的描述;非功能需求是那些不直接与系统的具体功能相关的一类需求,它们与系统的总体特征相关,如可靠性、响应时间及需要的存储空间等。
14、变更管理过程:变更描述、变更分析、变更实现 15、变更管理中应重视的问题应该交给变更控制委员会审批。
16、为了评价成本的可确定程度,项目成本分为有形成本和无形成本;根据是否可直接用一种经济的方式识别和跟踪项目成本,项目成本分为直接项目成本和间接项目成本。
一.项目的特征:1.有明确的目标2.项目之间的活动具有相关性3.限定的周期4.有独特性5.资源成本的约束性 6.项目的不确定性7.结果的不可逆转性。
二.项目管理知识体系:1.项目集成管理2.项目范围管理3.项目时间管理4.项目成本管理5.项目质量管理6.项目人力资源管理7.项目沟通管理8.项目风险管理9.项目采购管理。
三.软件项目管理过程的核心:项目规划、项目跟踪控制。
四.CMM:是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。
CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。
CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。
五.合同:监督项目执行的各方履行其权利和义务、具有法律效力的文书。
生存期:合同准备→合同签署→合同管理→合同终止。
六.软件生存期模型特征:1.描述了开发的主要阶段 2.定义了每一个阶段要完成的主要过程和活动3.规范了每一个阶段的输入和输出4.提供了一个框架,可以将必要的活动映射到该框架中。
类型:1.瀑布2.V模型3.原型4.增量5.螺旋式6.快速应用开发7.渐近式阶段。
七.软件需求的定义:用户对软件的功能和性能的要求。
八.需求管理过程:九.UML;UML是一种编制软件蓝图的标准化语言,用于对复杂软件系统的各种成分的可视化,说明和构造系统模型,以及建立软件文档。
UML支持面向对象的技术和方法。
UML独立于软件的实现,适用于任何开发过程,是可视化的模型语言。
十.十一.编制进度计划的三部曲:1.项目分解2.项目规模估算3.资源进度安排。
十二.十二.成本估算方法:1.对象点,是基于对象的软件产品规模估算。
软件项目管理复习题202361. 项目开发过程中可以无限制地使用资源。
(X)2. 项目具有暂时的特征。
(√)3. 项目管理核心的三角形是范围、进度、风险。
(X)4. 过程管理与项目管理在软件组织中是两项很重要的管理,项目管理用于保证项目的成功,而过程管理用于管理最佳实践。
(√)5. 运作管理(Operation Management)是从宏观上帮助企业明确和把握企业发展方向的管理。
(√)1. 项目经理是一个综合的角色(√)2. 软件项目都是需要签署合同的(√)3. 增量式模型可以避免一次性投资太多带来的风险(√)4. 项目章程类似一个项目授权书(√)5. 在甲乙合同项目中,提出需求的一方是乙方(X)6. 如果是内部项目,在项目初始阶段可以不提交招标书(√)1. 需求分析过程是确定项目如何实现的过程,并确定项目的技术方案(√)2. 对于一个重来没有做过的项目,开发WBS时,可以采用用自底向上的方法(X)1. 间接成本是与一个具体的项目相关的成本(X)2. 软件项目的估算结果是比较准确的(X)3. 在进行软件项目估算的时候,可以参照其它企业的项目估算模型(√)4. COCOMO 81有3个等级的模型: 基本(basic)模型、中等(intermediate)模型、高级(详细(detailed))模型。
(√)1、质量计划中可以确定质量保证人员的特殊汇报渠道。
(V)2、质量计划可以在项目进行过程中编写,不一定在前期完成。
(X )1、组织分解结构(OBS Organizational Breakdown Structure)是一种特殊的WBS。
(V)2、责任分配矩阵是明确其角色与职责的有效工具(V )3、职能型组织结构中项目经理的权利最大(X )4、为了创建一个组织结构图,项目管理者首先明确项目需要的人员类型(V )1、在项目管理过程中,沟通是项目管理者的一部分工作,而且是很少的一部分工作(X )2、沟通计划是项目计划的一部分(V)3、沟通管理的基本原则是及时性,准确性,完整性,可理解性(V )4、在IT项目中,许多专家都认为:对于成功,威胁最大的就是沟通的失败。
1.项目质量管理的责任人是项目经理。
2.功能点输入是用来进行系统规模评估的一种手段。
3.当项目有多个人参与,比如2个项目成员使用不同版本的设计说明书,那么他们是用配置管理系统来进行协同工作。
理解配置管理的概念,比如软件配置管理的目的是建立和维护整个生存期中软件项目产品的完整性和可追朔性。
4.理解并记忆cv、sv、cpi、spi等几个指标,上课也重点解析过。
2. 三个关键指标(1)计划工作量预算费用(BCWS),指某阶段计划完成工作量所需的预算成本。
(2)已完成工作量实际费用(ACWP),指某阶段完成实际工作量所消耗的费用。
(3)已完成工作量预算成本(BCWP),即挣得值,指在某阶段实际完成工作的价值。
5.在客户接受项目的交付结果之前,项目经理检查交付结果的质量。
6.理解什么是项目基线,基线发生变更时必须通过基线变更控制流程处理,比如项目基线发生变更应该经过项目管理委员会授权执行。
项目基线是特指项目的规范、应用标准、进度指标、费用指标以及人员和其他资源使用指标等7.理解什么是网络图,这个一定要掌握。
(网络图:由工序和事件组成的具有一个发点和一个收点的有向赋权图。
)8.Pert计算公式,用来对一个任务进行历时估算。
PERT估算;pert =(悲观工期+乐观工期+4×最可能工期)/6标准差 =(悲观-乐观)/6PERT对各个项目活动的完成时间按三种不同情况估计:1、乐观时间(optimistic time)--任何事情都顺利的情况,完成某项工作的时间。
2、最可能时间(most likely time)--正常情况下,完成某项工作的时间。
3、悲观时间(pessimistic time)--最不利的情况,完成某项工作的时间ai表示第i项活动的乐观时间,mi--表示第i项活动的最可能时间,bi表示第i项活动的悲观时间。
pert =(ai+bi+4*mi)/69.一定要掌握wbs工作分解结构,比如工作分解结构作用有:防止遗漏工作、为项目估算提供依据、确定团队成员责任等功能。
软件工程第二部分(软件项目管理)复习试题及答案软件工程第二部分(软件项目管理)复习试题及答案(一)一单项选择1、软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。
A需求分析 B 结构设计 C程序编制 D软件维护2、软件是一种逻辑产品,它的开发主要是(A )。
A研制 B拷贝 C再生产 D复制3、以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。
A喷泉模型 B 增量模型 C瀑布模型 D螺旋模型4、在软件生存周期中,( B )阶段必须要回答的问题是“要解决的问题是做什么?”。
A详细设计 B 可行性分析和项目开发计划 C概要设计 D软件测试5、软件产品与物质产品有很大区别,软件产品是一种(C )产品A有形 B 消耗 C逻辑 D文档6、 ( C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。
A 原型模型B 螺旋模型C 基于知识的智能模型D 喷泉模型7、 ( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
A概要设计 B 详细设计 C 编码 D 测试8、下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是( A )。
A 原型模型B 瀑布模型C 基于知识的智能模型D 变换模型9、下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型10、下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型11、软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为( C )。
A可修改性 B可靠性 C可适应性 D 可重用性12、软件特性中,一个软件能再次用于其他相关应用的程度称为( B )。
第一章-引言1.软件项目管理的目的:为了使软件项目能按照预定的成本、进度、质量顺利完成,而进行分析、管理的活动。
2.项目:一系列独特的、复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间、预算、资源限定内,依据规范完成。
3.项目基本特征:①项目开发是为了实现一个(组)特定目标。
②项目受预算、时间、资源的限制。
③项目的复杂性、一次性。
④项目以客户为中心。
3.开发新系统的三个连续步骤:①可行性研究:评估预期项目是否值得开始,考察潜在的软件开发,收集待开发应用系统的需求。
②策划:为整个项目指定概要计划及第一阶段详细计划,后续阶段的详细计划需要在前一阶段结束后指定。
③项目实施:包括设计(确定待生产的产品形式)、实现(规定必须为生产产品执行的活动)两个子阶段。
4.项目生命中的时间概念:①检查点:定期检查项目,根据现状与计划的差异进行调整。
②里程碑:标志阶段性工作的完成,因项目而异。
③基线:配置项在项目生命周期的不同时间点通过正式评审进入正式受控的状态。
5.软件是一种团队运动:由个人完成,考虑团队成员关系,协调团队成员目标,齐心协力。
6.设定目标的SMART原则:①Specific:目标必须(非常详细具体的)被清晰定义,无法被混淆和误解;②Measurable:目标只有(是能够衡量的),才能清楚当前进度如何;③Aggressive:目标(要有足够的难度和挑战性),才能激起员工战斗激情;④Realistic:目标要是(现实的),不能过难以至无法完成;⑤Time-bound:目标(要有实现的期限),否则没有意义。
7.管理:指通过与他人共同努力,有效率有效果地把工作做好的过程。
8.管理的含义(管理就是制定、执行、检查和改进):①目标是对未来的追求;②工作的本质是协调;③管理工作存在于组织;④管理工作重点是对人的管理。
9.管理的过程:与他人协助或寻求他人帮助、权衡效力和效率的关系、充分利用有限资源、应用多变的环境、实现组织目标。
10.项目管理的特点:①对象:是项目,或被当作项目来处理的运作;②思想:是系统管理的系统方法论;③组织:具有临时性、柔性、扁平化特点;④机制:是项目经理负责制,它强调责任、权力、利益的对等;⑤方式:是目标管理,包括进度、费用、技术、质量;⑥要点:是创造、保持一种使项目顺利进行的环境;⑦方法、工具、手段:应具有先进性、开放性。
11.项目管理的核心方法体系:①项目管理知识体系(PMBOK):由美国项目管理协会(PMI)开发,构成PMP认证考试基础,1996推出,目前第5版,2012;②受控环境下的项目管理(PRINCE):由英国政府商务办公室(OGC)开发。
12.项目管理9大知识领域(项目经理需具有相当丰富管理知识及相应专业知识):①项目集成管理(全局);②项目范围、时间、成本、质量管理(核心);③项目人力资源、沟通、风险、采购管理(促进)。
④13.软件项目管理原则:计划原则、Brooks原则、验收标准原则、80-20原则、帕金森原则、时间分配原则、变化原则、作业标准原则、复用和组织变革原则。
软件创业公司的成长周期(4个阶段):概念阶段、萌芽阶段、产品开发阶段、市场推广阶段。
第二章-软件项目需求工程1.需求分析:介于系统分析和软件设计阶段间的桥梁,是软件需求中最核心的工作。
2.软件项目需求管理:使软件系统分析工程师能够结合软件项目实际,提出切实有效的项目需求管理策略,解决其在管理软件项目需求分析时面临的实际问题,从而降低软件开发成本,提升软件产品质量,提高软件企业竞争力。
3.需求工程:指应用已证实有效的技术、方法进行需求分析,确定客户需求,帮助分析人员理解问题并定义目标系统的所有外部特征的一门学科。
4.需求的定义:①用户解决问题或达到目标所需的条件或能力;②系统或系统部件要满足合同、标准、规范或其他正式规定文档所需具有的条件或能力;③一种反应上面两点所描述的条件或能力的文档说明。
5.软件需求的层次:①业务需求:组织或客户的高层次目标,用愿景或范围文档记录;②用户需求:描述用户的目标或要求系统必须能完成的任务,通过用例、场景描述和事件-响应表来表达;③功能(行为)需求:规定开发人员必须在产品中实现的软件功能;④非功能性需求:系统需求、业务规则、软件需求规格说明、质量属性、约束。
6.需求分析:对要解决问题详细的分析,弄清问题要求,包括需要输入的数据,想要得到的结果,应该输出的内容(在软件工程中,需求分析对象是计算机)。
7.需求验证:为确保需求说明准确、完整地表达必要的质量特点,客户的参与占重要位置。
(需求规格说明中需求虽正确,实现时可能出问题。
如:依据需求说明编写测试用例可能发现说明存在二义性。
需求说明是设计和最终系统验证的依据,必须改善上述问题。
)8.软件可测试性:反映了一个计算机程序能被测试的容易程度。
主要是指被测实体具有可控制性、可分解性、稳定性、易理解性、可观察性的特征,该特征的主要表现是设立观察点、控制点、观察装置。
9.头脑风暴:最早用于形容精神病患者的精神错乱状态,是精神病理学术语,现用来描述为了产生新观念或激发创新设想而进行的无限制的自由联想和讨论。
10.需求分析建模方法:①用例分析方法:用例是一种描述系统需求的方法,其过程是用例建模,用例建模可分为用例图和用例描述两部分。
②原型分析方法:原型法指在获取一组基本需求后快速构造出一个能够反映用户需求的初始系统原型,通过不断地运行系统原型来进行揭示、判断、修改和完善需求的分析方法。
第三章-软件项目成本估算估算:对于项目计划和管理非常有用,在其他方面同样至关重要。
成本和时间的估算值:决定了厂家与客户的合同;是客户对建议书进行评判的基础;包含于合同的条款中,一般是固定的。
规模估算-规模衡量单位:源代码行数LOC(可执行源码行,包括可交付的工作控制语言语句、数据定义、数据类型声明、等价声明、输入输出格式声明等)和功能点数FP。
规模估算-方法-类比(自顶向下)估算法:①适合评估在应用领域、环境和复杂度方面与历史项目相似的项目。
其估计结果精确度取决于历史项目数据完整性和准确度,用好类比法前提条件之一是组建起较好的项目后评价与分析机制,对历史项目的数据分析是可信赖的。
②需要解决可重用代码的估算,最好由程序员或系统分析员详细考察现有代码,估计新项目可重用代码中需要重新重新设计重新编码重新测试现有代码)设计、重新编码或修改、重新测试的代码的百分比。
(等价代码行新工作量估算:根据规模估算结果并定义了项目开发周期和裁剪项目过程后,需要项目过程中各阶段工作量和总工作量。
工作量估算-目前可参考的历史数据(也可参考业界公布的经验数据):①有历史项目的准确数据;②至少有一个历史项目与现有项目规模相似;③现有项目将和类似历史项目采用相似生命周期、开发过程、技术、工具以及类似技能和经验的项目成员。
开发工期估算:根据工作量指定项目计划,包括人员安排、工作量分解、开始和完成时间等。
(根据目前资源情况,确定在每阶段投入的资源,通过算法计算进度。
)成本估算:对完成项目各项活动所必须的各种资源的成本的估算,涉及估算完成每项计划活动所需资源(人力、设备、材料、服务、设施)和特殊条目(通货膨胀、应急准备金)。
第四章-软件项目进度计划软件项目管理“三要素”:成本、质量、进度。
(软件项目管理实质)Array软件项目估算-方法-专家判定:(多位)专家根据经验及对项目的理解估算项目成本,将不同估算值合成最终估算值的方法有:①求中值或平均值:简便,受极端估计值影响。
②召开小组会议:通过讨论统一估算值,受权威者和善辩者影响。
③德尔菲技术:1)协调员给专家提供软件规格说明及估算值记录表;2)专家进行估算后填表;3)协调员做小结后提供估算迭代表;4)专家进行下一轮估算后再填表;重复3)4),期间不得进行小组讨论,只能向协调员提问。
软件项目估算-方法-类比(同第三章):通过比较当前项目和以前类似项目获得工作量估算值。
步骤:①整理项目功能列表及实现各个功能的代码行;②标识出各个功能列表与历史项目的异同点;③注意历史项目的不足之处;④通过①②得出各个功能估算值;⑤产生规模估计。
软件项目估算-方法-功能点估计法:通过研究初始应用需求来确定各种输入、输出、计算和数据库需求的数量和特性。
步骤:①计算输入、输出、查询、主控文件和接口需求的数目;②对这写数据加权乘;③根据复杂度用±25%或0来调整总数。
工作分解结构WBS:描述工作的分级,可以将项目中的工作分解为更小、易于管理的组成部分,最后分解成具体工作的系统方法。
是项目规划的基础,项目管理的主要技术之一。
工作分解结构“三要素”:层次结构(等级状或树状,自底向上)、编码、报告。
技术方法-甘特图:用于对软件项目的阶段、活动和任务进度完成状态的跟踪。
是任务活动与日历表对照图。
第五章-软件项目风险管理项目风险管理:贯穿与开发过程的一系列管理步骤,包括对风险的识别、计划、分析、解决和监控。
PMP风险管理过程:风险管理计划、风险识别、风险定性分析、风险定量分析、风险应对计划、风险监控。
分析:在识别的基础上分析可能出现的事件及其后果,以确定事件发生概率及相关后果。
MSF风险管理模型:必须是主动的管理,融入学习活动。
原则如下:①持续评估;②培养开放沟通环境:所有组员参与风险识别与分析,领导者鼓励建立无责备文化;③从经验中学习:大大降低不确定性,强调从项目结果中学习的重要性;④责任分担:任何组员有义务进行风险管理。
风险管理计划内容:①方法论②责任与角色③预算④计时法⑤风险分类风险识别:企图采用系统化方法识别某特定项目已知的或可预测的风险。
特征:不确定性、损失(可能不发生风险,发生了就会产生损失)。
风险“三要素”:风险是事件,发生有概率,可造成影响。
风险识别步骤:①收集资料②风险形式估计③根据直接或间接症状识别潜在风险风险识别方法:德尔菲技术、头脑风暴法、SWOT分析法、检查表、图解技术。
风险应对的策略:①对于消极的风险:规避、转移、减轻;②应对风险无良策或代价大:接受,分主动(建立应急储备)与被动(待风险发生再处理);③对于积极的风险:开拓、分享、提高。
风险监控:跟踪风险,识别剩余风险和新出现的风险,修改风险管理计划,保证计划的实施,并评估削减风险的效果,从而保证风险管理达到预期目标。
第六章-软件项目配置管理软件配置管理:在软件开发过程中管理软件的配置,即管理对包括源程序、数据文件、设计文档、用户文档及其组织关系等构成软件产品的原始部件的产生、修改、提取与发布,以保证整个产品的正确性、完整性及产品部件的一致性。
是软件运作的支撑平台,协同项目干系人的工作,实现高效团队沟通,使工作成果及时共享。