「译」从简单到复杂 —— 软件四象限

原文:From trivial to complex -- 4 software quadrants | Swizec Teller

原标题:An intro to TSConfig for JavaScript Developers

作者:Jo Franchetti

多年来我一直试图捕捉复杂软件和繁杂软件之间的区别,我想我终于明白了。我们可以将项目分为 4 个象限!

在一个轴上,你有难与易构造。在另一个轴上,是解决方案已知与未知。

琐碎(Trivial) 的项目易于构建,而且你知道你在构建什么。这些是完美的自由职业项目。想想餐厅的小册子网站,一个独立的数据可视化小部件。任何范围明确、有明确开始和结束的项目,没有未知数。

挑战性(Challenging) 的项目易于构建,但你不知道最终结果是什么样的。这些项目最适合内部团队。增长工程是一个很好的例子------你正在推动一个OKR(转化、保留)并尝试不同的事情来优化。每个单独的功能都很容易构建,但你无法提前知道哪些功能会起作用。

复杂(Complicated) 的项目很难构建,但你知道最终结果是什么样的。这些都是优秀的机构或内部精干专家团队的项目。默认情况下,他们属于某种平台团队。想想将一个老旧的代码库重构为现代标准,将一个古老的框架升级到新版本,或者在一个没有未知的领域构建一个范围严格的功能。

繁杂(Complex) 的项目很难构建,而且你不知道最终结果是什么样的。这些需要一个参与其中的内部团队。在我看来,这是好事。想想整个 SaaS 产品、未知环境中的新功能、使旧代码适应新需求......你需要迭代开发和衡量进度的方法。这些项目的一切都很困难。

计划可以帮助你将项目从Complicated转移到ComplexChallenging。你可以估计并理解足够小的一部分。这通常是一个"Story"。

尽量避免同时具有未知数和难以构建的Story。如果你正在深入研究代码库的新领域或集成新的提供者,你应该更倾向于易于构建的功能。如果你正在构建像新算法这样复杂的东西,则更倾向于提前澄清所有未知因素。

你不能通过前期计划使复杂项目变得琐碎。到了准备好的时候,你可能就已经完成了工作。

干杯, ~Swizec

发布于2024年4月16日在软件工程复杂性

继续阅读从琐碎到复杂 -- 4 个软件象限

由GPT-4挑选的相关的文章:

相关推荐
我学上瘾了2 小时前
Spring Cloud的前世今生
后端·spring·spring cloud
波波0073 小时前
ASP.NET Core 健康检查实战:不只是一个 /health 接口
后端·asp.net
小码哥_常3 小时前
Spring Boot 搭建邮件发送系统:开启你的邮件自动化之旅
后端
sg_knight4 小时前
设计模式实战:命令模式(Command)
python·设计模式·命令模式
石榴树下的七彩鱼4 小时前
图片修复 API 接入实战:网站如何自动去除图片水印(Python / PHP / C# 示例)
图像处理·后端·python·c#·php·api·图片去水印
我叫黑大帅4 小时前
为什么TCP是三次握手?
后端·网络协议·面试
我叫黑大帅4 小时前
如何排查 MySQL 慢查询
后端·sql·面试
techdashen4 小时前
Rust项目公开征测:Cargo 构建目录新布局方案
开发语言·后端·rust
2501_948114244 小时前
2026模型能力分化加剧:多模型聚合架构的技术解析与工程落地思考
人工智能·ai·chatgpt·架构
消失的旧时光-19434 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦