什么是软件研发的工程化?研发团队真的理解吗?
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
DevOps在路上
扫码关注公众号
扫码阅读
手机扫码阅读
软件工程化的理解与实践摘要
在软件开发领域,存在对“软件工程化”的误解,有人质疑现代工具如Jenkins的用处,而在讨论团队协作的实际问题如分支策略、依赖管理时,这种误解导致了沟通上的无力感。
什么是软件的工程化
软件工程化指的是将代码编译、打包以及部署等过程进行标准化和自动化。这包括准备代码、下载依赖、编译打包以及准备环境和启动程序。尽管个人程序员可能认为本地脚本足以处理这些任务,团队规模放大和复杂性增加时则会面临更多挑战,如多人开发、业务集成、流程延长、多语言技术栈、灵活配置和快速回滚等。
个人解决方案,如编写shell脚本,仅适用于个人问题,并不能解决团队的协作问题。软件工程化的目标是协助团队合作,而不是个人问题的解决,未能实现团队协作的解决方案可能导致技术债务的累积。
软件工程的平台化
软件工程的平台化是为了实现企业软件研发活动的可持续化。可持续化是指不依赖单一个人的专业知识,而是通过标准化流程来保证业务连续性。个性化的持续交付流程会给团队和企业带来不确定性和风险。
平台化可以作为帮助企业实现研发活动可持续化的重要基础,但常被忽视。要实现软件工程的平台化,必须坚持标准化原则,识别优先级,逐步发展标准,培养团队的工程化意识,寻找具有广泛知识面的人才,且避免盲目的自动化。
实现软件工程化的建议
- 坚持标准化原则,消除违反标准化的行为。
- 逐步实现标准化,考虑优先级和性价比。
- 培养团队的工程化意识,尤其是基础平台团队。
- 寻找具备多种语言和工具知识的人才。
- 避免无脑自动化,以免阻碍标准化进程。
参考文献:《你以为搞个流水线每天跑,团队就在使用CI/CD实践了?》
DevOps在路上
DevOps在路上
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
DevOps在路上的其他文章
平台工程:降低认知负担,改善开发人员体验提升企业的数字生产力
为了逐步提升数字竞争力,中国的企业机构正在向组装式架构转型,推动了云原生平台、DevOps平台的采用。
你以为搞个流水线每天跑,团队就在使用CI/CD实践了?
在实践中,很多团队对于DevOps 流水线没有很透彻的理解,要不就创建一大堆流水线,要不就一个流水线通吃。实
配置管理:从ITIL,CMMI到DevOps的实践与思考
作为DevOps的实践者,这么多年经历了很多持续交付有关的工作,似乎在我的印象中“软件配置管理(SCM)”这个
从“DevOps + Sec”到“Building Sec Into DevOps”,构建安全内生的DevOps文化
“在数字化转型的浪潮中,DevOps作为推动软件开发与运维高效协同的重要实践模式,正逐步成为企业的标配。
DevSecOps之应用安全测试工具及选型
快速了解DevSecOps:构建安全软件开发的基石!上篇文章,有同学私信想了解有哪些DevSecOps工具,
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线