软件开发行业中需求与设计的管理 – DevSpec

需求,简言之就是客户需要的软件所应当具备的功能。

设计,是经过一系列的思考,最终形成的脑力劳动的成果。

需求分析与产品设计到最终产品实现,是紧密结合在一起的。

在现实生活中,大家一定遇到过许多成品需要返工的事情,这就是典型的交付的产品不满足客户需求的体现。

软件,在没有形成成品之前,是看不到摸不着的,比实物更具有不可控性。客户只有看到的做好的软件,进行验收之后才能知道是否满足自己的需求。

如何保证我们做出来的产品就是满足客户的需求呢,我为你介绍一款好的管理软件– DevSpec。

 

需求

我们从客户提供需求的方式来看,一般有口头(包括电话以及面对面交流),Email信件,传真,合同等。最终我们拿到的需求,大多都是白话方式的功能描述,并不是直接可用的。

所以我们在DevSpec中给item(条目)分三大类:Specification (规范点),Epic(需求), Epic Document(需求文档)。把直接从客户那拿到的需求录入DevSpec 系统,也就是新建一个条目:

Devpress适配VS2022 devspec_活动

比如说外包公司接到的对日项目,日方给的一般都是比较规范的,很多项目都是日方事先将各种框架写好,将底层最基本的编码工作外包过来,甚至写代码的时候都有框架和模板。这类需求,我们新建的时候可以选Specification作为Type。程序员直接根据日方给的程序说明书,可以直接进行项目编写。

如果是一个需求文档,里面写了详细的软件项目需求功能说明。DevSpec有一个office addin 插件,可以跟office 集成。打开项目需求功能说明书,在word里直接选中项目功能说明书中的功能点,在Add-Ins的tool bar上选Add Spec,然后Save to Spec会新建生成Epic Document 条目,同时会把该文档作为附件,上传到我们的Document server上。

Devpress适配VS2022 devspec_活动_02

如果只是一个描述简单的需求,比如说客户打电话给我们说,现有的考勤系统,需要增加一个查询功能。我们就新建一个Epic如下图:

Devpress适配VS2022 devspec_Devpress适配VS2022_03

具体是怎样的一个查询功能,客户那时候可能没说。然后需要跟客户预约一个meeting进行进一步的沟通–在该条目的event页面| 新建一个event。

Devpress适配VS2022 devspec_活动_04

会议结束后,得到的具体的查询功能要求,把它添加到该条目的Note页面下 ---新建Note。

Devpress适配VS2022 devspec_workflow_05

设计人员设计出具体的程序界面后,可以添加附件到note中。

 

用户的需求是动态变化的

DevSpec 有Change Request View 来管理需求的变化。

提出一个需求的变化,然后在change request view里添加对应的需求条目相关联起来。

Devpress适配VS2022 devspec_Devpress适配VS2022_06

关联的时候,可以新建change flag event, 通知有关开发,测试人员。说明该需求有可能要变化,请暂停目前的工作等等作用。

需求变化需要走一个审核流程(在Admin设置我们的change request workflow),只有commit的需求变化(同时修改change flag event 的状态),对应的需求条目内容才会显示在requirement view 中,进入下一个阶段。

 

需求分析和产品设计

需求分析和产品设计是基于现有需求而开展的一系列行为。需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.

一、需求分析的步骤

  ⑴首先调查组织机构情况

  包括了解该组织的部门组成情况,各部门的职能等,为分析信息流程作准备。

  ⑵然后调查各部门的业务活动情况

  包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么。

  ⑶协助用户明确对新系统的各种要求

  包括信息要求、处理要求、完全性与完整性要求。

  ⑷确定新系统的边界

确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。

二、常用的调查方法

  ⑴跟班作业

  通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。

  ⑵开调查会

  通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。

  ⑶请专人介绍。

  ⑷询问

  对某些调查中的问题,可以找专人询问。

  ⑸设计调查表请用户填写

  如果调查表设计得合理,这种方法是很有效,也很易于为用户接受的。

  ⑹查阅记录

  即查阅与原系统有关的数据记录,包括原始单据、账簿、报表等。

通过调查了解了用户需求后,还需要进一步分析和表达用户的需求,以及设计产品实现。

具体到软件中,就涉及到设计数据库的表结构,程序界面的GUI等等细节。这些过程我们都可以录制到DevSpec对应条目的Note/Event中去。每次的修改,DevSpec可以自动生成版本,也可以添加基线(Baseline),必要的时候可以进行比对。

Devpress适配VS2022 devspec_产品设计_07


Devpress适配VS2022 devspec_产品设计_08

当然对于不同的项目,我们采用的调查方法和步骤都会有所不同,DevSpec产品可以自定义工作流:

Devpress适配VS2022 devspec_产品设计_09

在ready to implement之前,都是需求分析和产品设计阶段。接下来进入到coding,testing,以及最后的交付。

 

总之TechExcel DevSpec 是一款需求定义与需求管理工具,基于预定义的流程规则,团队可以使用DevSpec全程跟踪每一个产品功能和特性的开发过程,通过需求管理来驱动研发与测试流程,最终达到实现的产品就是客户想要的产品。