软件开发是设计还是生产?
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
老邓聊开发
扫码关注公众号
扫码阅读
手机扫码阅读
本文探讨了软件开发的本质,是生产过程还是设计过程,并从多个角度分析了这个问题。文中指出,正确理解这个问题对于软件开发行业的决策至关重要,错误的理解会导致基于错误假设的决策。
文章首先介绍了将软件开发视为生产过程的观点,认为代码是生产物,设计文档是生产指南,软件部署和维护属于运维范畴。这种观点导致软件团队按照职能划分,并推行瀑布模式,希望标准化流程以提高生产效率。
接着,文章提出了将软件开发看作设计过程的观点,将代码视为设计文档,通过编译和部署指导计算机工作。这种观点认为设计需要不断尝试,推崇跨职能团队合作,提出敏捷开发理念,以适应不断变化的需求。
文章从可重复性、创造性、成本和可预测性四个方面分析了软件开发的特点。指出软件开发与传统生产过程不同,程序员的工作不可重复,需要创造性;软件生产的成本接近零,因为计算机自动完成大部分任务;软件开发的可预测性差,因为很难在开始时就精确定义软件范围。这些分析表明软件开发更接近设计过程而非生产过程。
文章以引用物理学家波尔关于量子力学的名言结束,暗示软件开发的复杂性和深奥性,暗示读者应该深入理解软件开发的本质。
老邓聊开发
老邓聊开发
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
老邓聊开发的其他文章
检查项驱动开发CheckList Drive Development
我找一个木匠订做一个饭桌。几天后,木匠做好了找我验收,我一斧子劈上去,桌子开了个口。我说这测试没通过,你这不
为什么要单元测试?
今天又和人争论了下什么情况下要单元测试。他的意思是单元测试是锦上添花的,有时间了做一下,没时间了就舍弃,与其
需求在变,还要写自动化测试吗?
当问一个团队为什么不写自动化测试的时候,往往有两种答案。一是我们的系统已经没什么变化,写测试没意义;
电影魔戒中的需求问题
电影《魔戒2-The Two Towers》中,佛罗多的任务是要把魔戒丢入到末日火山。在他看来,如果要完成任
成本效率还是业务响应
在一次敏捷的活动中,有个小伙伴提了一个问题想让大家帮他参考:为什么他的团队里都不愿意听他的。经过详细
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线