读《质量·软件·管理》有感

       以前这本书是读过的,现在再来读又是别有一番滋味。特别是读到什么是质量,质量的重要性的时候,真的为作者的精辟见解而拍案惊奇。

       质量是什么?质量不是一个空洞的概念,质量是符合需求的能力。具体的说,就是符合某个用户的需求的能力。因为需求并不是从天上直接掉下来的,是我们进行了需求获取,需求分析得到的。软件的需求不是所有的需求涉众都有同样的权重。很早以前听到Berry Boem将的Value-Based需求工程的时候,他的主要观点也是说每个涉众有不同的值。换句话说:老板的意见才是主要的,新来的小兵提的东西根本就不会怎么考虑。

       因此,根据我们需求获取、需求分析的结果,我们讨论的质量就是对需求主导客户的价值,因为只有满足他们的要求,你才能够挣到钱。

       因此,对于软件项目而言,能够顺利的抓住主要涉众的需求,并和他们搞好关系,后续的软件开发得到的质量才能是有保证的;对于软件产品而言,因为涉众很分散,因此,需要对客户进行分类,规划产品主要满足那一类客户的需求,对这一类客户的调研和了解程度,决定了日后开发出来的软件质量究竟会是什么样的?

       具体衡量一个软件质量,可能会有很多种衡量方法,比如说:缺陷率小,功能多,代码是否可重用,性能高,成本低,开发速度快,用户友好等等。由于需求是偏向于特定的用户或者用户群的,因此,一个软件对某类用户是高质量的,可能会对其他用户来说是低质量的。因此,本质上来说,软件开发本身的决策就不是民主的,而是决策的过程。因此,有策略的对软件各个部分提供适合的质量,是合理的。
      
       如果看不到这一点,只能说明你太幼稚了。

       好,现在到了一个比较关键的点。如果想提高软件的质量(当然,也就是提高该产品对某类客户的价值),需要如何做呢?这就要
       1. 了解实现质量的动机(为什么要这么做?钱、权、名、长久之际等等。人总有万千欲望,要真的去探究人家为什么要这么做,就是去洞察别人的欲望在什么地方,满足它。)
       2. 了解质量的价值(我这么做,对我有什么好处?把收益给搞清楚,只有知道收益和负债,才能明白是否需要这么做呀)
       3. 懂得如何实现质量。(这个就牵涉到具体的执行层面了。在不同的软件亚文化里面,也就是通常所说的各种级别的公司里头,怎么做呢?因为每种文化或者说习惯也好,都是有种拒绝接收改变的趋势。这个只要是人的组织都是这样。并且官越大,越不想改变。而改变软件开发文化,很多时候不是一个人或者一个小组能够决定的事情。因此,更需要有高超的领导能力,以及洞察能力。)
      
       要说的是:每种模式都可以取得成功。本质上,软件开发质量取决于三个方面:用户的需求难度、解决的问题难度、原有的开发模式。因地制宜的选择策略本来不是一件难事,难的就在于该进行改变的时候,因为一味考虑短期利益,而忽略了长期的目标,导致最后的竞争力缺乏。
   
        平衡之术,决策之术,真是在何时何地都会遇到呀!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值