需求说明书》和《问卷调查表》进行分析,如仍然有问题,则重复步骤二,否则执行步骤四;
步骤四、开发方整理出《用户需求说明书》,提交给用户方确认签字。
由于这种方法比较简单、侧重点明确,因此能大大缩短需求获取的时间、减少需求获取的成本、提交工作效率。
三、界面原型法
所谓“界面原型法”,是指开发方根据自己所了解的用户需求,描画出应用系统的功能界面后与用户进行交流和沟通,通过“界面原型”这一载体,达到双方逐步明确项目需求的一种需求获取的方法。
这种方法比较适合于开发方和用户方都不清楚项目需求的情况。因为开发方和用户方都不清楚项目需求,因此此时就更需要借助于一定的“载体”来加快对需求的挖掘和双方对需求理解。这种情况下,采用“可视化”的界面原型法比较可取。
这种方法的一般操作步骤是:
步骤一、开发方根据其所了解到的需求(如通过合同或与用户交流),采用界面制作工作描画出应用系统的功能界面;
步骤二、将应用系统的功能界面提交给用户并与用户沟通,挖掘出新需求或就需求达成理解上的一致;
步骤三、开发方就不断获取的需求进行增量式整理,根据新的需求丰富和细化界面原型;
步骤四、双方经过多次界面原型的交互,开发方最终整理出《用户需求说明书》,提交给用户方确认签字。
由于开发方和用户方都不清楚项目需求,因此此时需求获取工作将会比较困难,可能导致的风险也比较大。采用这种“界面原型”的方式,能加速项目需求的“浮现”和双方对需求的一致理解,从而减小由于需求问题可能给项目带来的风险。
针对这种类型的项目,我们也可以采用下面将要介绍的“可运行原型系统法”,但由于开发方对需求不了解(证明以前缺乏类似项目的开发经验和产品积累),如果开发一个可运行的原型系统,则几乎需要从零开始编写代码,前期投入会很大。
四、可运行原型系统法
所谓“可运行原型系统法”,是指开发方根据合同中规定的基本需求,在以往类似项目应用系统的基础上进行少量修改得出一可运行系统,通过“可运行原型系统”这一载体,达到彻底挖掘项目需求的一种需求获取的方法。这种方法比较适合于开发方清楚项目需求但用户方不清楚项目需求的情况。
这种类型的项目,开发方一般都有类似项目的建设经验,因此可以在以往项目的基础上,快速“构建”出一可运行系统,然后借助于这一“载体”来加快对需求的挖掘和双方(特别是用户方)对需求的理解。这种情况下,采用“所见即所得”的可运行原型系统法比较可取。
这种方法的一般操作步骤是:
步骤一、开发方根据其所了解到的需求(如通过合同或与用户交流),在以往类似项目的基础上,快速“构建”出一可运行系统;
步骤二、通过向用户演示“可运行原型系统”,逐步挖掘并让用户确认项目需求;
步骤三、开发方就不断获取的需求进行增量式整理,根据新的需求丰富可运行原型系统;
步骤四、双方经过多次可运行原型系统的交互,开发方最终整理出《用户需求说明书》,提交给用户方确认签字。
由于开发方清楚用户的需求(证明以前有类似项目的开发经验和产品积累),但用户方自己不清楚,因此此时开发一个“可运行原型系统”,开发方的投入不会很大,但对于用户理解和确认项目需求非常有利,因此针对这种类型的项目这是一种比较理想的需求获取方式。
这种方法的另一个好处是:正式系统一般可以在该“可运行原型系统”的基础上演化而成,为后续开发工作节省不少的工作量和成本。值得注意的是,以上总结出的这四种需求获取方法不是互斥的,我们可以根据项目的实际特点独立应用或组合应用。
总的来说,“忙碌,不代表有效率;方法,远胜于苦干”。所以我们从事软件项目开发的朋友们,都能掌握好恰当的方法,以图能获得“事半功倍”的效果。