上次讲完了项目初始部分,包括立项、招投标、授权
在进入第二部分,项目计划
前我们要先了解软件的需求以及任务的分解
软件需求管理
软件需求定义:用户对软件功能和性能的要求
软件需求管理过程:需求获取、需求分析、需求规格编写、需求验证、需求变更
变更管理:确定需求变更控制过程、确立变更控制委员会(SCCB)、进行需求变更影响分析、跟踪所有受需求变更影响的工作产品、建立需求基准版本和需求控制版本文档、维护需求变更的历史记录、跟踪每项需求的状态、衡量需求稳定性
软件建模的基本方法:
原型方法:需求分析、原型开发、原型评价
结构化分析法 :面向数据流的方法、自顶向下的分析方法、根据软件内部数据传递、交换的关系进行分析的,包括的技术有数据流图、数据字典、系统流程图
面向对象的用例分析:基于面向对象的情景分析方法、从用户角度出发考虑的功能需求、用例是系统向用户提供一个有价值的结果的某项功能
uml需求视图:用例视图、顺序图、状态图、活动图
功能列表法:将需求各功能以列表的形式列出,可以配合用例分析方法,对用例进行展开描述。
敏捷方法:对需求采用渐进明晰的方法进行描述
在敏捷方法中,用户需求被描述成一个个story card,有以下基本格式:as a ,i want ,so that
判断一个user story 是否是一个好的story的标准
软件项目任务分解
任务分解是项目管理的基础
任务分解过程定义:将一个项目分解为更多的工作细目或子项目,使项目变得更小、更易管理、更易操作
WBS任务分解结构:wbs是对项目由粗到细的分解过程,面向交付成果的,wbs组织并定义了整个项目范围
工作包是wbs最低层次的可交付成果
工作包应当由唯一主体负责
任务分解方法:
类比:有相同或相似的周期的项目,可采用类比的方法
模板参照:进行项目分解的时候,有些项目可以参照模板
自上而下:对项目整体有比较详细的了解
自下而上:任务没有非常详细的逻辑关系,想到什么写什么,然后按一定逻辑生成
任务分解步骤:
确认并分解项目的组成要素(WBS编号)
确定分解标准
确定分解是否详细
确定项目交付成果(可以编制WBS字典)
验证分解的正确性
检验分解结果的标准:
最底层的要素是否是实现目标的充分必要条件
最底层要素是否有重复的
每个要素是否清晰完整定义
最底层要素是否有定义清晰的责任人
是否可以进行成本估算和进度安排