软件开发是设计还是生产?
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
老邓聊开发
扫码关注公众号
扫码阅读
手机扫码阅读
本文探讨了软件开发的本质,是生产过程还是设计过程,并从多个角度分析了这个问题。文中指出,正确理解这个问题对于软件开发行业的决策至关重要,错误的理解会导致基于错误假设的决策。
文章首先介绍了将软件开发视为生产过程的观点,认为代码是生产物,设计文档是生产指南,软件部署和维护属于运维范畴。这种观点导致软件团队按照职能划分,并推行瀑布模式,希望标准化流程以提高生产效率。
接着,文章提出了将软件开发看作设计过程的观点,将代码视为设计文档,通过编译和部署指导计算机工作。这种观点认为设计需要不断尝试,推崇跨职能团队合作,提出敏捷开发理念,以适应不断变化的需求。
文章从可重复性、创造性、成本和可预测性四个方面分析了软件开发的特点。指出软件开发与传统生产过程不同,程序员的工作不可重复,需要创造性;软件生产的成本接近零,因为计算机自动完成大部分任务;软件开发的可预测性差,因为很难在开始时就精确定义软件范围。这些分析表明软件开发更接近设计过程而非生产过程。
文章以引用物理学家波尔关于量子力学的名言结束,暗示软件开发的复杂性和深奥性,暗示读者应该深入理解软件开发的本质。
老邓聊开发
老邓聊开发
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
老邓聊开发的其他文章
如何提升代码质量
好的代码都有一些共同的特征,如可读性、较少的方法行数、高内聚低耦合、职责单一。但这只是一个结果,作为一个工程
电影魔戒中的需求问题
电影《魔戒2-The Two Towers》中,佛罗多的任务是要把魔戒丢入到末日火山。在他看来,如果要完成任
工作量评估之小马过河
在软件开发过程中,工作量评估是必不可少的一步。大多数的工作量评估,采用是绝对时间,如人天、人时。这时候就会陷
如何进行测试驱动开发(TDD)
从我的面试经历来看,或许是我见过的优秀公司还不够多,几乎没有公司能正确使用TDD的。
降低软件质量能让你更快吗?
我们经常听到一个说法,说团队软件质量低是因为面临工期压力,为了快速交付不得不做出来的让步。通
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线