[toc]
系统分析师笔记08_项目管理
该笔记内容来自《系统分析师教程》第2版。
在现代项目实践中,项目管理是保证项目成功的核心手段,成熟的项目管理体系是项目经理的得力工具。因此,作为信息系统项目中的骨干成员,系统分析师必须熟悉项目管理知识,掌握项目管理的主要过程、方法、技术和工具。
项目管理概述
项目是在特定条件下,具有特定目标的一次性任务,是在一定时间内,满足一系列特定目标的多项相关工作的总称。从项目的基本定义出发,人们日常进行的所有活动都可定义或分解为项目。
项目管理是对些成功达成一系列目标相关活动(譬如任务)的整体监测和管控,包括策划、进度计划和维护组成项目的活动的进展。
软件项目管理的对象是软件工程项目。它所涉及的范围覆盖了整个软件工程过程。为使软件项目开发获得成功,关键问题是必须对软件项目的工作范围、可能风险、需要资源(人、硬件/软件)、要实现的任务、经历的里程碑、花费工作量(成本)、进度安排等做到心中有数。
范围管理
在信息系统项目实践中,需求无序扩张是项目失败最常见的原因之一,往往在项目启动、计划、执行,甚至收尾时还在不断地加入新的功能。无论是客户的要求,还是项目团队成员对新技术的试验,都可能导致项目范围的失控,从而使项目在时间、资源和质量上都受到严重影响。
范围管理就是要确定项目的边界,也就是说,要确定哪些工作是本次项目应该做的,哪些工作不应该包括在本次项目中。这个过程用于确保项目干系人对作为项目结果的产品(或服务),以及开发这些产品所确定的过程有一个共同的理解。
进度管理
根据项目的定义,项目是在一定的时间内完成其目标的一次性任务。因此,能否在给定的时间内交付产品(或服务)是衡量项目是否成功的重要标志。
进度管理就是采用科学的方法,确定进度目标,编制进度计划和资源供应计划,进行进度控制,在与质量、成本目标协调的基础上,实现工期目标。
具体来说,进度管理包括以下过程:
- (1)活动定义。确定完成项目各项可交付成果而需要开展的具体活动。
- (2)活动排序。识别和记录各项活动之间的先后关系和逻辑关系。
- (3)活动资源估算。估算完成各项活动所需要的资源类型和数量。
- (4)活动历时估算。估算完成各项活动所需要的具体时间。
- (5)进度计划编制。分析活动顺序、活动持续时间、资源要求和进度制约因素,制订项目进度计划。
- (6)进度控制。根据进度计划开展项目活动,如果发现偏差,则分析原因或进行调整。
预算和成本管理
项目成本管理是在整个项目的实施过程中,为确保项目在批准的预算条件下尽可能保质按期完成,而对所需的各个过程进行管理与控制。
项目成本管理包括成本估算、成本预算和成本控制三个过程。
- 成本估算是对完成项目所需成本的估计和计划,是项目计划中的一个重要的、关键的、敏感的部分;
- 成本预算是把估算的总成本分配到项目的各个工作包,建立成本基准计划以衡量项目绩效;
- 成本控制保证各项工作在各自的预算范围内进行。
成本估算
成本估算是对项目投入的各种资源的成本进行估算,并编制费用估算书。要进行项目成本的估算,需要大量的数据资料,这些资料包括资源的类型和数量、每种资源的单价、每项资源占有的时间。
成本估算主要靠分解和类推的手段进行,基本估算方法分为三类:自顶向下的估算、自底向上的估算和差别估算法。
- 自顶向下估算的主要思想是从项目的整体出发,进行类推。即估算人员根据以前已完成项目所消耗的总成本(或总工作量),来推算将要开发的软件的总成本(或总工作量),然后按比例将它分配到各开发任务单元中去。
- 自底向上估算的主要思想是把系统进行细分,直到每一个子任务都已经明确所需要的开发工作量,然后把它们加起来,得到系统开发的总工作量。这是一种常见的估算方法。
- 差别估算法综合了自顶向下估算和自底向上估算的优点,其主要思想是把项目与过去已完成的项目进行类比,从其开发的各个子任务中区分出类似的部分和不同的部分。类似的部分按实际量进行计算,不同的部分则采用相应的方法(例如,德尔菲法等)进行估算。这种方法的优点是可以提高估算的准确程度,缺点是不容易明确“类似”的界限。
成本预算
成本预算是进行项目成本控制的基础,是将估算的成本分配到项目的各项具体工作上,以确定项目各项工作和活动的成本定额,制订项目成本的控制标准,规定项目意外成本的划分与使用规则。
成本预算的基本步骤如下:
- (1)分摊项目总成本到WBS的各个工作包中,为每个工作包建立总预算成本。在将所有工作包的预算成本相加时,结果不能超过项目的总预算成本。
- (2)将每个工作包分配得到的成本再二次分配到工作包所包含的各项活动上。
- (3)确定各项成本预算支出的时间计划,以及每个时间点对应的累积预算成本,编制项目成本预算计划。
成本控制
项目成本控制是按照事先确定的成本基准计划,通过运用多种恰当的方法,对项目实施过程中所消耗费用的使用情况进行管理和控制,以确保项目的实际成本限制在项目成本预算范围内。
在项目成本控制中,主要采用挣值分析方法。挣值分析是一种进度和成本测量技术,可用来估计和确定变更的程度和范围,因此,也称为偏差分析法。挣值分析通过测量和计算已完成工作的预算费用、已完成工作的实际费用和计划工作的预算费用,得到有关计划实施的进度和费用偏差,达到判断项目预算和进度计划执行情况的目的。
配置管理
软件配置管理(Software Configuration Management,SCM)是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理工具,来保证所有配置项的完整性和可跟踪性。
配置管理是对工作成果的一种有效保护。
配置管理概述
配置管理包括以下内容:
- (1)对配置项的功能特性和物理特性进行标识和文件编制工作。
- (2)控制这些特性的变动情况。
- (3)记录并报告这些变动进行的处理和实现的状态。
配置管理的目的在于运用配置标识、配置控制、配置状态和配置审计,建立和维护工作产品的完整性。
CMMI把配置管理分为九大部分,分别是制订配置管理计划、识别配置项、建立配置管理系统、创建或发行基线、跟踪变更、控制变更、建立配置管理记录、执行配置审核、版本控制。
配置标识
软件开发中的文档和软件在其开发、运行、维护的过程中会得到许多阶段性的成果,在开发和运行过程中还需要用到多种工具软件或配置。所有这些信息项都需要得到妥善的管理,决不能出现混乱,以便在提出某些特定的要求时,将它们进行约定的组合来满足使用的目的。这些信息项是配置管理的对象,称为配置项。
每个配置项的主要属性有名称、标识符、状态、版本、作者、日期等。配置项是一个独立存在的信息项,可以把它看成一个元素,单独的一个元素发挥不了什么作用,但随着工作的进展,出于不同的要求,需要将这些元素进行不同的组合,这个组合称为配置。
质量管理
根据《质量管理体系基础和术语》(GB/T1 9000一2016)的定义,质量管理是指确立质量方针及实施质量方针的全部职能及工作内容,并对其工作效果进行评价和改进的一系列工作。
IS0 9000系列标准是现代质量管理的结晶,它实际上是由计划、控制和文档工作三个部分组成循环的体系。
ISO 9000标准是以质量管理中的8项原则为基础的,分别是以顾客为关注焦点、领导作用、全员参与、过程方法、管理的系统方法、持续改进、以事实为基础进行决策、与供方互利的关系。
软件质量模型
软件或系统的质量是指该软件或系统满足其不同利益相关方所明确的或隐含的要求的程度,并由此提供相应的价值。
在IS0/IEC 25000系列标准中,把产品质量分为一些特性,并在某些情况下进一步分解为子特性(某些子特性又被分解为子子特性),通过这种层次化的分解提供了便利的产品质量分级。
而一个系统可测量的、与质量相关的属性被称为质量测度相关的质量属性,从而形成了质量特性、质量子特性和质量属性的层级关系。质量模型是定义的特征集以及它们之间的关系集,为规约质量需求以及评价质量提供了一个框架。
产品质量模型
产品质量模型,它将系统/软件产品质量属性划分为8个特性:功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性和可移植性。每个特性由一组相关子特性组成。这些特性关系到软件的静态性质和计算机系统的动态性质。这一模型既可以应用于计算机系统,也可以应用于软件产品。
如图所示 
McCall质量模型
McCall质量模型从软件运行、软件修改和软件转移三个方面来考查软件的质量,其体系如图所示。

质量管理计划
现代质量管理的一项基本准则是“质量是计划出来的,而不是检查出来的”,这是在项目质量管理工作中必须牢牢把握的。
编制一份清晰的质量管理计划是实施项目质量管理的第一步,而一个清晰的质量管理计划首先需要明确以下两点:一是明确将采用的质量标准;二是明确质量目标。
质量保证与质量控制
质量保证
软件质量保证(Software Quality Assurance,SQA)是指为保证软件系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的活动,这些活动贯穿软件生产的各个阶段,即整个生命周期。
SQA由各项任务构成,这些任务的参与者有两种人:软件开发人员和质量保证人员。前者负责技术工作,后者负责质量保证的计划、监督、记录、分析及报告工作。
- 软件开发人员通过采用可靠的技术、方法和措施,进行正式的技术评审,执行软件测试来保证软件产品的质量。
- 质量保证人员则辅助软件开发人员得到高质量的最终产品。
质量控制
质量控制是为使产品或服务达到质量要求而采取的技术措施和管理措施方面的活动,也包括判断如何能够去除造成不合格结果的根源。质量控制应贯穿项目始终。
人力资源管理
项目人力资源管理是指通过不断地获得人力资源,把得到的人力资源整合到项目中并融为一体,保持和激励团队成员对项目的忠诚和积极性,控制团队成员的工作绩效并做出相应的调整,尽量发挥团队成员的潜能,以支持项目目标实现的活动、职能、责任和过程。
项目人力资源管理的主要过程包括编制人力资源计划、组建项目团队、项目团队建设、管理项目团队和沟通管理。
风险管理
风险管理就是要对项目风险进行认真的分析和科学的管理,这样能够避开不利条件、少受损失、取得预期的结果并实现项目目标,能够争取避免风险发生或尽量减小风险发生后的影响。
但是,完全避开或消除风险,或者只享受权益而不承担风险是不可能的。
风险管理的概念
项目风险管理就是项目管理人员通过风险识别、风险估计和评价,并以此为基础合理地使用多种管理方法、技术和手段,对项目活动涉及的风险实行有效的控制,采取主动行动、创造条件、可靠地实现项目的总体目标。
风险表达了一种概率,具有偶发性。对于项目中的风险可以简单地理解为项目中的不确定因素。
风险具有两个基本属性:随机性和相对性。随机性是指风险事件的发生及其后果都具有偶然性;相对性是指风险总是相对项目活动主体而言的,同样的风险对于不同的主体有不同的影响。
风险管理的过程
风险管理的目的就是最小化风险对项目目标的负面影响,抓住风险带来的机会,增加项目干系人的收益。
风险成本是指风险事件造成的损失或减少的收益,以及为防止发生风险事件采取预防措施而支付的费用。风险成本可以分为有形成本、无形成本,以及预防与控制风险的费用。
- 有形成本包括直接损失和间接损失,直接损失是指财产损毁和人员伤亡的价值,间接损失是指直接损失以外的其他损失。
- 无形成本是指由于风险所具有的不确定性而使项目主体在风险事件发生之前或发生之后付出的代价,主要表现在风险损失或减少了机会、风险阻碍了生产率的提高、风险造成资源分配不当。
项目风险管理的基本过程包括风险管理计划编制、风险识别、风险定性分析、风险定量分析、风险应对计划编制和风险监控。
信息(文档)管理
软件文档是软件产品的重要组成部分,对于开发人员、管理人员以及用户都是十分重要的辅助工件。定义清晰、维护及时的文档能够帮助开发人员理解需求、顺畅沟通;帮助管理人员了解进度、加强管理:帮助用户更好地使用和维护软件。
因此,对于系统分析师而言,必须掌握软件文档编制的技能。
软件文档标准
在软件文档方面,国家制定了一些标准,主要有《计算机软件文档编制规范》(GB/T 8567-2006)。
GB/T 8567一2006主要对软件的开发过程和管理过程应编制的主要文档及其编制的内容、格式规定了基本要求。该标准原则上适用于所有类型的软件产品的开发过程和管理过程。
GB/T8567一2006还规定面向对象的软件应编制以下文档:总体说明文档、用例图文档、类图文档、顺序图文档、协作图(通信图)文档、状态图文档、活动图文档、构件图文档、部署图文档、包图文档。
数据需求说明
根据GB/T8567一2006的规定,数据需求说明应该包括以下几部分内容:
- (1)引言。包括数据需求说明的标识(包括标识号、标题、缩略词语、版本号、发行号)、系统概述、文档概述等方面的内容。
- (2)引用文件。列出数据需求说明引用的所有文档的编号、标题、修改版本和日期。
- (3)数据的逻辑描述。数据根据其逻辑属性的不同,可以分为动态数据和静态数据。
- (4)数据的采集。这一部分具体展开说明数据如何获取,主要包括要求和范围、数据输入的承担者、预处理、影响等。
- (5)注解。包含有助于理解数据需求说明的一般信息。
- (6)附录。提供那些为便于维护数据需求说明而单独编排的信息。
技术报告
暂无
项目开发总结报告
暂无
