关闭

需求、开发和测试的“三足鼎立”

2444人阅读 评论(2) 收藏 举报
分类:

在很多电影或电视剧中,大家经常会看到一种代表权利与威望的东西—鼎。古语曰“问鼎中原”,可见鼎在当时人们心中地位之高。下面是一张来源于互联网的鼎的图片。
这里写图片描述
不知大家注意到没有,鼎有三只“脚”。大家在几何课上学过,在所有的平面图形中三角形最稳定。看来古人也深知这个道理,做出了有三只“脚”的摆放稳定的鼎。当鼎的任意一只“脚”被去掉时,整个鼎必然会轰然倒下的。也就是说,“三足鼎立”是最稳定的。

在软件开发活动中,可以把鼎比作是一个软件产品,要保持产品的稳定,就需要有三只牢固的“脚”来支撑它。那么,这三只“脚”是什么呢?作为一个软件开发人员,我认为需求、开发和测试就是支撑产品的三只“脚”。
这里写图片描述
需求是需求工程师(有的地方也叫系统工程师)写出来的,它就是一个软件产品的文字实现,以文档的形式描述了产品所要实现的功能。当需求写出来并经过评审之后,就要由开发人员用程序来实现。

开发是由被称之为程序员(也有的地方称之为“码农”)的人所组成的群体,他们的主要任务就是参照需求来编写程序以做出软件产品。他们每天的大多时间都以电脑为伴,办公室和机房就是他们的休息场所。

测试是由测试工程师所组成的群体,他们不直接开发产品,但是,他们要对开发出的产品进行各种验证来确保其没有大的问题。在产品提供给用户使用之前,都要首先经过测试这一关。从另一方面来说,测试工程师就是软件产品的第一批用户。

大家都知道,三国时期的魏蜀吴之间战火不断、勾心斗角的故事已成历史经典,而需求、开发和测试之间的“恩怨情仇”如果要写成故事,估计比《三国演义》还精彩。

需求可以比作“魏国”。在三国中,魏国占了“天时”。曹操“挟天子以令诸侯”让天下有识之士纷纷投靠。对应到软件开发上来,需求工程师与用户靠得很近,他们写的需求代表了用户的意见(虽然有时候并不准确),他们挟用户这个“天子”来给开发和测试“发号施令”。同时,需求工程师一般都是在一个公司里面工作年限较长的人,他们对行业、对产品的认识比新入行的人要深一些,这就像是曹操身边的那些谋士,几乎个个都是一流的。

测试可以比作“吴国”。在三国中,吴国占了“地利”。长江天险阻挡了侵犯者的步伐,江东富饶的物产是吴国后勤的有力保障。对应到软件开发上来,测试部门拥有众多的测试机器和测试环境,任何其他部门的人想要用这些机器和环境,都要经过测试工程师的批准。这些资源就像是吴国那些富庶的土地,让别人垂涎三尺。测试工程师几乎不会主动对开发产品提意见,他们就等着开发人员主动找上门来要测试的环境,这就像是吴国几乎很少主动出击而采用的是以守为主的战略。

开发可以比作“蜀国”。在三国中,蜀国最为“苦逼”,在经过重重磨难之后,终于在偏远的四川占得了一席之地。蜀国能够成功,靠的就是“人和”。刘关张三兄弟靠三个人三匹马起家,在最困难的时候都是一条心,这才走到了最后。对应到软件开发上来,开发工程师就像是苦命的兄弟,谁有了问题,都可以向身边的人请教,大家努力来将事情做好,这和刘关张三兄弟的经历是何等的相似。同时,除了自己办公用的电脑之外,开发部门很少拥有多余的资源,需要测试环境的时候就要向测试部门申请,这就像刘备为了生存向孙权借荆州一样,区别就是开发部借了的资源是要归还的。

需求、开发和测试虽然各自做着不同的事情,所关注的点不一样,有时还有可能会出现意见不统一,但大家都有一个共同的目标:将产品做好。也正是这个共同的目标让需求、开发和测试之间的合作大于对抗、理解大于分歧,也正是这个共同的目标让软件产品这个“鼎”的三只“脚”永远平稳和牢固。


本文同步发布在本人的微信公众号里面,欢迎扫描关注:
这里写图片描述

3
0
查看评论

需求开发与管理过程(个人笔记)

软件需求工程包括了需求开发和需求管理两个部分,需求开发的目的是通过调查与分析,获取用户需求并定义软件需求。需求开发的主要活动包括:需求获取,需求分析和需求定义。 需求管理的目的是在客户与项目组之间建立对需求的共同理解,维护需求与其它工作成果的一致性,并控制需求的变更。 需求管理的主要活动包括:需求确...
  • juliefish
  • juliefish
  • 2013-10-18 17:41
  • 15460

2015.09-2016.08年终总结 需求、设计、开发、测试、部署、运维……统统将矛头指向了管理,目前认为会管理才是王道

15年9月和10月,是我们在学校的最后两个月,那两个月,迎来了小小徒弟,13期一波儿活蹦乱跳的孩子们,甚是喜欢。                   11月我们搬到万达学习,新环境虽说不如...
  • u012407484
  • u012407484
  • 2016-08-28 18:46
  • 1025

软件项目开发中需求分析与设计时间和开发时间的比例分配的问题

从毕业到现在做开发已经有近7年了,大大小小的项目也经历了几十个了。在项目开发的过程中很少有项目在设计阶段投入很多时间的, 有很多情况下,甚至都没有怎么做设计就直接开始编码了,处于一种边开发边设计到状态,还有些时候,设计就是完成一些文档来应付下,很 少有认认真真做设计,然后就直接开始编码,如果遇到...
  • weizhiai12
  • weizhiai12
  • 2014-12-27 19:07
  • 7893

开发和测试之间的关系

简单来说。开发人员既生产代码,也生产Bug。因为开发人员不可避免地会生产Bug,所以测试人员必须存在,以便在软件交付之前尽可能多地检出Bug,保证交付给客户的软件质量更好一些。一个产Bug,一个挑Bug,看起来似乎是对立的。 表面上看起来是对立的,其实是相辅相成的,开发和测试之间的有效沟通和协作是项...
  • imgsq
  • imgsq
  • 2016-05-19 11:28
  • 892

为什么开发与测试老掐架呢

让我们思考几个常见的问题:软件测试的目的是什么?开发人员能否构建出没有Bug的完美软件?测人人员和开发人员:……
  • foruok
  • foruok
  • 2016-04-11 07:22
  • 11924

需求、开发和测试的“三足鼎立”

需求、开发和测试虽然各自做着不同的事情,所关注的点不一样,有时还有可能会出现意见不统一,但大家都有一个共同的目标:将产品做好。也正是这个共同的目标让需求、开发和测试之间的合作大于对抗、理解大于分歧,也正是这个共同的目标让软件产品这个“鼎”的三只“脚”永远平稳和牢固。
  • zhouzxi
  • zhouzxi
  • 2016-08-26 21:08
  • 2444

前端测试系列---如何核对需求

测试前的首要任务就是确认前端的UI/UE的展示符合需求文档。避免做大量无用功。 遇到下面的情况,要特别注意: 产品不是第一需求人 前端项目,如果跟进产品不是第一需求人,测试前的首要工作是,和产品一起找第一需求人(如市场部人员)确认。 经验: 务必确认UI/UE的展示,连接的跳...
  • wodeyijia911
  • wodeyijia911
  • 2015-05-09 15:44
  • 407

再谈开发人员和测试人员的比例

软件企业中开发人员和测试人员的比例往往是管理者关注的一个问题,也可能是下面测试经理头疼的问题,似乎没有人知道什么样的比例是合适的。幸好,倒是有个学者做个这方面的调查得到一些数据,可以供那些对此感兴趣的人参考。
  • KerryZhu
  • KerryZhu
  • 2010-11-10 23:05
  • 36794

测试驱动需求分析--需求文档评审实例

 相关文章链接如下:微软过桥问题与测试人员素养 等价类分法 新解 测试用例设计中的NP难题 C/C++代码检视实例 90%程序员写不出无BUG的二分查找程序?            ...
  • drzhouweiming
  • drzhouweiming
  • 2007-04-19 22:33
  • 10644

作为一个程序员的角色看开发测试与需求的交互

 作为一个程序员的角色看开发测试与需求的交互 需求人员的痛苦:1.         针对开发人员:a)         ...
  • ThinkInChaos
  • ThinkInChaos
  • 2006-09-26 21:09
  • 1382
    QQ群
    读者交流群:189490960
    我的微信
      与本人单独交流~~
    个人资料
    • 访问:1441484次
    • 积分:23294
    • 等级:
    • 排名:第354名
    • 原创:467篇
    • 转载:7篇
    • 译文:9篇
    • 评论:1891条
    《C程序员从校园到职场》
    《信息通信技术百科全书》
    博客专栏
    博客已搬至微信公众号
    最新评论