原型是在软件开发中被广泛使用的一种工具,在软件开发过程中的各个阶段,包括需求开发,都会使用不同类型的原型来达到不同的目的。今年的需求工程课后,王老师还特意布置了一个课后作业:画某个公司仓库管理系统的进货管理流程的纸上原型图,通过这次作业,让我对原型方法有了一个深刻的了解。
某公司仓库管理系统的进货管理流程如下: 接受供应部门提供的进货单,人工审查,有错退回。无错则加上实到货量栏,输入进货临时文件,按进单户名查客户关系,找到则把客户号填入进货临时文件,否则人机结合在临时文件中确定客户号,把新客户信息登录到客户关系。从进货临时文件打印出相应的进货单,核对所到货,货单不符合记录实到货量,打印有错进货表,交供应部门;相符的则入库并登记到进货单关系及所进货关系,若是新货则登记货物信息到货物关系,否则只修改货物关系中的现存量和库存价。
首先,我们要知道为什么要利用原型,我通过阅读本书的第八章—需求获取方法之原型,以及课堂的学习,总结了以下几点:
1.及时,有力的相应用户需求的变化;
2.减少返工;
3.可以将一个大的难以处理的开发过程细分成一些更小更容易处理的步骤;
4.减少开发成本,提高经济效益;
5.提高用户在软件开发中的参与程度。
因为原型方法的成本较高,所以应该只在必要的时候才使用原型方法,通常来说,如果用户需求出现了模糊,不清晰,不完整等具有一定不确定性的特征,就可以考虑使用原型方法。构建原型当然需要使用到构建技术,构建技术分为两种类型:1.水平原型方法,这种方法仅仅实现选定功能所有层次的某些特点层次,所以尽管它涵盖了很多功能,但没有真正地实现这些功能。在处理水平原型时,应该把注意力集中在概括性需求和工作流问题上;2.而垂直原型因为实现了选定功能的所有层次,所有它的运作方式应该和所期望的真实系统运作方式相似。在开发垂直原型时,需要保证真实实现它的各种功能,考虑其中涉及的所有技术细节。
有了技术,就必须要有介质承载技术,常见的代表性介质有纸面,幻灯动画,快速语言和工具和程序四种。当然了,对于我们刚涉及需求工程的初学者来说,纸面是最合适也是最好掌握的。
说了这么多,人们一定会说原型方法真是一个满是优点的方法,其实不然,任何方法都有其局限性,原型方法最大的风险就是涉众只看到了一个正在运行的原型,从而得出产品已经完成的结论,从而提出快速交付产品的不当要求,这在实际的项目中是经常发生的,此时想法一定要提醒用户原型就是原型,它的目的仅仅在于探索和验证某些想法,只是一次实验,不要对其有太高的期望。