60

谈谈开发人员不太关心的需求管理

 5 years ago
source link: https://mp.weixin.qq.com/s/rMy_Eg6sP2VTUQG0HuIJUg?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

需求工程分为需求开发和需求管理两个部分。

需求开发的工作包括需求获取,需求分析,编写需求规格,需求验证。不管做的如何,这些工作对于开发人员还是非常熟悉的。毕竟不进行需求获取和需求分析,就无法进行后续的设计与实现。而需求管理的工作相对来说就没有那么熟悉了。需求管理,听起来是一项管理工作,那就是项目管理人员的事儿,作为软件开发人员,为什么要关心它呢?

实则不然。在国军标5000A中,需求管理已经被归于“工程类”的过程域,这就意味着需求管理不再是项目管理人员关心的管理活动,而是开发人员应当重视的工程活动。

需求管理,首先要求软件开发人员要与用户对需求达成一致理解。如果开发人员没有理解用户的真实意图,那么最终实现的产品,就可能根本不是用户想要的产品。

其次,软件开发人员在已经确认自己对需求的理解与用户是一致的之后,就要承诺可以实现用户想要的产品。

余下的需求管理内容,我们可以将之归结为需求跟踪。

需求跟踪主要完成两个任务,一是获取需求的实现状态,二是跟踪不符合项的改正情况。

需求的实现状态,可分为“已获取”、“已定义”、“已设计”、“已实现”、“已测试”。

“已获取”是指已经从用户那里获取到需求,且通过评审,与用户达成一致的理解。

“已定义”是指已经对用户需求完成了需求分析,形成了需求规格,且通过评审。

“已设计”是指对软件需求已经完成部件设计和详细设计,且通过评审。

“已实现”是指对应的软件需求已经完成了编码和单元测试。

“已测试”是指对应的软件需求已经完成了功能测试和系统测试等验证和确认活动。

获取需求的实现状态要确保软件需求已经达到了该状态所要求的标准条件,实际上就是确保软件需求,在整个开发过程中,都是受控的,而不是偏离的。

当发生需求变更时,应对变更的需求项,以及受其影响的需求项,跟踪其需求状态,确保其实现状态正确。

同时在整个软件开发的过程当中,我们会采取评审、测试等手段,不断地对我们的工作产品进行验证,这其中就可能会发现需求存在的问题。对此,我们要通过需求跟踪,确保这些需求问题得到解决,并且通过需求跟踪矩阵使后续的设计、实现、测试也都能进行相应的处理。

总之,需求管理是开发人员控制需求的一个有效的手段。开发人员只有把需求牢牢的控制在手上,才能够开发出符合用户需要的软件产品。

微信赞赏专用通道

eINVRnQ.jpg!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK