第一二章
《软件需求最佳实践》第一章讲述了“需求现状分析”,作者在文章开始部分就通过列举standish group机构总结的一些数据非常清晰和有说服力的表述了软件需求对软件的成功起着十分重要的作用,具体数据如下图:
其中软件成功因素中有15.9%用户参与,13.0%的清晰的需求描述,8.2%现实的客户期望这些权重加起来竟高达将近50%,很显然,需求分析在软件工程行业是十分重要的更是必须要做而且要做好的。
文章中作者举了好多现实中的例子(也许只有到了职场才能深有体会吧),这些例子都是真真实实发生过的或者是正在发生的,作者一一指出了其中的弊端;比如说写一份软件规格需求说明书,我们的需求说明书是要给谁看的,谁又会看那一部分呢?这两个问题是实实在在的,的确如此,苦逼的程序员紧赶慢赶起早贪黑的写了厚厚一摞的文档,恭恭敬敬的交到经理面前,但是经理会认真看吗?对,他肯定不会!首先,经理有他自己的主要职责不会在这一方面浪费太多的时间;其次,一本规格需求说明书少说几万字,包含内容繁多,经理也不知道要看哪一部分;再次,程序员的需求规格说明书里面专业术语太多,而经理又不一定是懂技术的人,这就在理解上带来了很多不必要的麻烦。所以,在撰写文档方面,作者提出了这样的方法:需求规格说明书应采用业务向导的树形结构来组织。
除了这一方面的问题作者还列举出了“用户参与度低”“用户需求过于不现实”“软件需求变更频繁”“内部人员交流失真”等重大问题。在没有了解软件需求之前作为一名新手当然是不会想这末多的,以为做软件的重头戏就是在编写(看来真是可笑),现在真正体会到了需求和目标的重要性。其实在做需求和交流这条路上关键是与人打交道,需求分析师和客户之间高效率的交流,代码编写者与项目经理之间默契的配合,以及公司内各个部门之间无间的合作才是成功的关键。至于说技术嘛,这些都是可以用money买得到的。