梦见自己杀人不见血软件项目管理是软件生命周期一切活动的管理。具体内容包括对开发人员(包括项目负责人、系统分析员、高级程序员、初级程序员、资料员和其他辅助人员)、组织机构、用户、文档资料等方面的管理。
软件项目计划是软件开发的第一步,是由系统分析员、用户共同经过可行性研究和计划阶段后制定的,但一般在需求分析阶段后才定稿。主要有研究(软件项目的主要功能性能和系统界面)和估算(项目开发所需经费和所要用的资源以及开发进度)两个任务。内容包括:范围、资源、进度安排、成本估算、培训计划。
产品管理包括版本管理和配置管理。软件配置管理(SCM)用于整个软件工程过程,是一组管理整个软件期各阶段中变更的活动,能协调软件开发,使混乱减少到最小。主要目标是:标识变更、控制变更、确保变更正确地实现、报告有关变更。内容包括:
基线:是软件期中各开发阶段的一个特点,作用是把开发各阶段工作的划分更加明确化,使本来连续的工作在这些点上断开,以便于检查与肯定阶段,作为项目的一个检查点。
版本控制和变更控制:版本用来定义软件配置项的演化阶段,版本控制要考虑系统具体版本进行描述和生成。
变更控制是指软件工程过程中某一阶段的变更,均要引起软件配置的变更,必须严格加以控制和管理,通过变更管理,保持修改信息,并把精确、清晰的信息传递到软件工程过程的下一步骤。包括建立控制点、报告与审查制度,它的“检出”和“登入”处理实现了存取控制(管理各用户存取和修改一个特定软件配置对象的权限)和同步控制(确保由不同用户所执行的并发变更)。
行业标准:由行业机构、学术团体或国防机构制定的适合某个行业的标准。主要有IEEE、GIB、MIL_S、DOD_STD等。
重要性体现在:在开发项目各个部分以及开发阶段间存在许多联系和衔接问题,如何把这些错综复杂关系协调好,需要一系列的统一的约束和。
自顶向下估算方法:参照以前完成的项目所耗费的总成本来推算将要开发的软件总成本,然后把它们按阶段、步骤和工作单元进行分配。优点是估算工作量小、速度快;缺点是不清楚低级别上技术性困难,使成本增加。
自底向上估算方法:将待开发的软件细化,分别估算每个子任务所需开发工作量,再将它们加起来,得到软件的总开发工作量。优点是对每部分的估算工作交给负责该部分工作的人员做,估算较为准确;缺点是其估算往往缺少与软件开发有关的系统级工作量,估算往往偏低。
差别估算方法:将开发项目和一个或多个已完成的类似项目比较,找出若干不同之处,并估算每个不同处对成本的影响,导出开发项目总成本。缺点是不易明确“差别”的界限;优点是提高估算的准确度。
成本估算模型分为COCOMO估算模型和Putnam成本估算经验模型。前者是一种结构性成本模型,最精确、最易于使用的成本估算方法之一,分为基本(是一个静态单变量模型)、中级(是一个静态多变量模型)、详细COCOMO模型。后者是一种动态多变量模型,是假设在软件开发的整个期中工作量的分布。
风险分析实际上是贯穿在软件工程中的一系列风险管理步骤,包括风险的识别、估计、管理策略、解决、监督。
本文由 恒宇国际(www.neivn.cn)整理发布