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

原文: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挑选的相关的文章:

相关推荐
海宇AI1 小时前
微服务架构实战:基于海宇对外投资历史查询服务构建自动化合规审计网关
人工智能·微服务·架构·自动化
苏三说技术2 小时前
为什么越来越多人用OpenWiki?
后端
IT_陈寒2 小时前
Java里用Stream.parallel()翻车实录,这性能还不如单线程
前端·人工智能·后端
Bs_MoneyMagnet2 小时前
基于springboot+vue的生态果园采摘预约系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·毕业设计·计算机毕业设计
这个DBA有点耶3 小时前
银行核心系统数据库迁移怎么选?6 步法+5 个避坑指南
数据库·安全·架构
码事漫谈3 小时前
FDE 的起源、形态与真实边界
后端
ServBay3 小时前
Grok Bot 还是 OpenClaw?聊聊真正能替人打杂的 AI 智能体
后端·aigc·grok
掘金挖土3 小时前
前端手摸手跑路之 AI 应用开发(五)
前端·后端
弈栈录3 小时前
LangGraph 入门:用状态机设计可靠的 Agent 工作流
后端·程序员
caoerzhong4 小时前
JeeWMS 开源仓库管理系统多租户架构解析:一套 Java WMS 如何同时服务多个货主与多个仓库
java·架构·开源·vue