Jira是一种反模式
Atlassian 的 JIRA 最初是一款错误跟踪工具。如今,它已成为一个敏捷计划套件,"用于计划、跟踪和发布优秀的软件"。在许多组织中,它已成为软件项目的主要地图、所有开发工作的枢纽、臭名昭著的 "真相之源"。
编写优雅的软件与艺术有一个共同点:软件的创作者在处理最小的微观细节的同时,还应该对项目的整体宏观愿景保持清醒的认识。遗憾的是,JIRA 含蓄地教导每个人在专注于细节的同时忽略更宏大的愿景。没有整体。充其量只有一个 "史诗"--但 "史诗 "的全部意义就在于被分解成更小的片段来独立完成。JIRA 鼓励分解宏观愿景。
"想象一下,有一个城市规划工具,可以轻松设计出包含高楼、住宅区、公园、商场和道路的城市地图......但它却不能轻松支持自来水厂、下水道、地铁隧道、电网等东西,这些东西只能通过笨拙的黑客手段(如果有的话)楔入其中。"
"现在想象一下,这个工具被用作建设蓝图,其中隐含的假设是:a) 社区是城市建设的基本单位;b) 城市是一个社区一个社区地建设起来的,而社区是一个街区一个街区地建设起来的。更重要的是,只有当上一个街区完全完工后,人们才会有动力继续进行下一个街区的建设,甚至连中间隔离带上的花朵都要种上"
现在想象一下,城市的开发商、工程师和建筑工人被要求纯粹按照有多少社区和街区已经全部完工,以及每个社区和街区的进度来估算和报告进度。你觉得这是一个特别有效的城市规划模式吗?你觉得你愿意生活在这样的结果中吗?或者,在实践中,你是否认为城市发展的最佳方式可能更有机一些?
"要编写出优雅的软件,您必须在工作时同时考虑宏观和微观两个方面。JIRA 擅长管理微观部分。但你需要其他东西来管理宏观。"
请允许我提出一些令人震惊的革命性建议:散文。是的,没错,就是连篇累牍的文字,是经过深思熟虑的段落。我说的不是庞大的需求文档。我说的可能是一份 10 页的概述,详细描述整个项目的愿景,以及一份 6 页的架构文件,解释软件基础设施--城市的供水、排污、供电、地铁和机场位于何处,以及它们是如何工作的。当亚马逊为了召集会议而要求提供长达六页的备忘录时,这个要求似乎并不过分。