Page 66 - 软件工程与项目管理
P. 66

软件工程与项目管理
             Software Engineering & Project Management



            通常的做法是使用 project 或者在 excel 中绘制甘特图跟进项目进展。在这种情况
            下,如何准确地评估出项目排期,并且如何有效地保证项目各阶段的进展是我们
            需要思考和解决的问题。根据项目管理知识体系的五个过程组:启动阶段、计划
            阶段、执行阶段、控制阶段、收尾阶段的工作内容,我们只有把每个阶段的任务
            都按时完成,才能保证后面的环节不会顺延。由于大量的工作任务落在计划、执

            行、控制阶段,所以这里主要针对这几个阶段的工作内容来分析哪些常见问题会
            影响项目进度。
                 (一)需求分析

                 1. 需求确认
                 洽谈需求时,不论是甲乙方公司合作的情况,还是自己公司内部主导做的
            项目,最好有项目经理和研发负责人一起在场聆听需求,这样可以从技术角度大
            致判别该项目的可行性,如果是非产研部门单独与需求方洽谈,很容易拍脑袋答
            应一个交付时间,给产研部门制造难题。由于软件项目的需求特点通常是模糊的,

            首先应当仔细领会需求方的真正意图,去伪存真,然后将这些需求进行整理加工,
            我们可以利用快速原型法做一版设计 demo 拿给需求方确认,哪里有不合适可以
            及时修正。这样才能保证项目整体的走向不偏离轨道。经用户初步确认的需求,

            一般需要与产研部门开需求评审会,同步具体要开发的功能模块,确定最终要做
            的功能模块。会后还有关键的一步是:要与需求方及主要干系人有正式的书面确
            认,可以是纸质版签字,如果是异地合作的部门或团队也可以邮件确认最终需求。
            好的开始是成功的一半,如果没有准确的理解用户的需求,以及具体要做什么不
            做什么,后续可能浪费了大量时间做的都是无用功。

                 2. 需求变更
                 由于软件项目的开发过程逐渐清晰,实施过程中需求方随时会提出需求变
            更,比如今天想把A功能增加A1子功能,刚做完A1功能又提出想把A变成B功能。

            如果不约束需求变更流程,任由需求方不断提出新的想法,团队成员不断地接受
            修改,不但会导致原工期延迟,还有可能做出来的结果跟需求评审确定的设计不
            一致。需求变更可以说是对项目进度影响最大的因素,ISO9000 认证和 CMM 认
            证也都十分强调对需求的变更控制,所以我们在开头就要确定好规则:需求一旦
            确定尽量不变,如果要变必须遵循需求变更流程。这个约定可以写在甲乙双方的

            合约里,自己公司内部做的项目就约定在项目立项的相关文件中。需求方每提出


              56
              56
   61   62   63   64   65   66   67   68   69   70   71