写下这个标题,等待的也许是被猛烈的拍砖,加上鸡蛋和西红柿。但是我想大家敞开了谈谈这个问题也许不是件坏事情。
刚刚接触质量管理和过程管理的时候,尤其是听了很多的培训和看了很多书后,对过程这把利剑满怀崇敬和信心。后来随着实践,过程确实可以解决很多的问题,比如规范性、统一性等。对软件开发的质量和效率的提高找到了一丝希望,尤其是在象欠缺管理理论和经验的中国的软件企业来说,更是如此。但是一直没有出现如期望般的那样灵效,尤其是发现决定质量这四个字真的不是过程这两个字可以顶的起来的,理论是一回事,实际确实不同。
过程对于软件质量来说,从实践的角度来说,难以起到决定性作用,我想这其中有以下方面的原因:
1.没有一套软件过程能够完美极致
从理论上也许存在一套完美极致的过程,能确保出来的质量是可靠的,但是从实际来讲,这基本是不可能的事情。过程决定质量的命题在理论上也许是说的通的。
2.软件质量的影响因素与制造业不同
我在以前的文章中也写到,软件质量的影响因素主要是技术、人的因素,包括人的经验、甚至人的态度、心情,客户因素、开发人员的创造能力、以及开发过程等,而制造行业的产品质量在很大程度上是依赖于设计、制造工艺等,由于硬件是不可修补和返工的(软件的设计错了,完全可以返工重做,随时都可以变更)。因此硬件设计到投产会经过漫长的样机、模型的测试和试验,从设计室到车间不像软件把设计说明书交给编码人员那么容易。到最后批量生产的时候,对工艺和生产过程的依赖性非常大,这时过程对于控制整个的生产质量是非常重要的。但这也正是软件不能仿效或者目前还难以做到的一点,比如对定制开发和半产品化的项目来说就更难了。
工程行业有软件科学研究和工程项目之分,区分的目的就是这两个东西不是一类的,在管理上和操作上不可同日而语。而软件则刚好,结合了“软”,有加上了“件”,而且这两者有难以分得清楚。这样软件的管理就更是不知所措了。举个极端的例子,让于丹和另外一位讲师用同样的过程控制在百家讲坛来讲述《论语》,得到的质量会是一样的吗?软件只所以是软,就是因为它与硬的不同,如果我们还是一味地宣扬过程的决定性,岂不是走进了死胡同?
我不否认过程对于软件开发的重要性,但是我不认同决定质量一说。
分享到:
相关推荐
黑兹利特认为,谬论之所以能够吸引人们的注意力,是因为它们通常提供简单的解决方案来应对复杂的问题。然而,这些解决方案往往无法解决根本问题,反而可能导致更多的经济混乱。 #### 三、分析方法 本书采用了一种...
关于Java性能的9个谬论?Java的性能有某种黑魔法之称。部分原因在于Java平台非常复杂,很多情况下问题难以定位。然而在历史上还有一种趋势,人们靠智慧和经验来研究Java性能,而不是靠应用统计和实证推理。在这篇文章...
逻辑谬论是指在推理过程中出现的错误,它们可能导致无效或误导性的结论。理解这些谬论对于批判性思维和有效辩论至关重要。以下是一些常见的逻辑谬论: 1. **诉诸情感(Ad Hominem)**:攻击对手的人格而非其观点,...
对于一个刚接触Wordpress的新手来说,...根据Mike Little(wordpress创始人之一)的说法,插件能不能拖垮你的网站,这要取决于插件本身。优秀的插件会加快网站访问速度,差劲的插件自然对网站不利。显然我们安装插件是为
在软件开发过程中,测试用例的编写至关重要,它能够确保软件的质量与稳定性。不同类型的测试用例适用于不同的场景,但选择哪种类型的测试用例往往受到机构文化的影响,而非完全基于软件特性与测试需求本身。本文将...
Six Sigma是一种旨在提高生产质量、减少过程变异和缺陷的管理策略,其核心方法论为DMAIC,即定义(Define)、测量(Measure)、分析(Analyze)、改进(Improve)、控制(Control)。 在“因果关系矩阵”(Cause&...
4. 历史进程:第四题中,"趋势"一词最为合适,它强调了中华文明各支流的历史发展过程是一个动态的、不断融合的过程,最终汇聚成中华文化的大海。 5. 语言表达:第五题考查句子的准确性,最佳选项为A,它表达了微弱...
对于一个刚接触Wordpress的新手来说,或多或少都会受到网络上关于Wordpress的一些评论影响。
此外,分布式系统的设计中存在“分布式8大谬论”,这些谬论包括网络是可靠的、网络延时为零、带宽是无限的、网络是安全的等。在设计分布式系统时,必须意识到这些假设往往不成立,需要通过合理的设计和管理来应对。 ...
只要用户在使用过程中遵循正确的使用和维护方法,长时间充电并不会成为电池安全问题。 综上所述,锂聚合物电池的结构特点和现代电池技术的保护机制,使得长时间充电导致爆炸的可能性极低。用户无需对长时间充电带来...
2. **银弹谬论**:Brooks通过对软件开发过程的深入分析,指出不存在一种通用的技术或方法能够在不改变其他条件的情况下显著提升开发效率或质量。 - **关键点**:Brooks认为软件开发是一项高度复杂的活动,涉及到多...
该书是网上唯一本我亲自制作的高清版,这本书非常珍贵,一般人找不到他,他是软件工程方面的经典名著,是我们软件开发专业必读的一本好书!
书中包含大量软件工程方面的实例!
这篇论文解释了一个错误的论点如何通过看起来比实际更好的论点来具有欺骗性。 该解释结合了启发式和论证方案。 启发式是解决问题的快速而节俭的捷径。 它们使用起来很合理,但有时会得出不合理的结论。...
【电子工程师之路】 成为一名电子工程师,需要扎实的理论基础和实践经验。在大学阶段,学习电子工程专业至关重要。这里,我们探讨一下如何有效地规划学习路径,以及哪些知识点是初学者必须掌握的。 首先,纠正三个...