Martin Fowler 提出“合理默认”概念,指在无特殊约束时应采用的已知良好做法,如版本控制、分离界面与领域逻辑、自动化部署。它不同于“最佳实践”,强调可依情境调整和推翻。Thoughtworks 推广此概念并发布默认做法手册,鼓励团队熟悉其适用与局限,定期反思调整。
双披萨团队是一个小型团队,提供全面软件支持。团队规模小,保持凝聚力。团队具备交付有价值软件的能力,减少与其他团队的依赖。团队以结果为导向,承担所有责任。团队专注于客户需求,是以业务能力为中心的团队。团队需要结构良好的软件平台支持。团队拓扑结构提供不同类型的团队和互动。团队需要向同行提供能力,通过应用程序接口交互。康威定律影响团队组织和软件结构。微服务和单体运行时间内结构良好的组件是发展方向。
大型软件工作需要有效的团队,团队拓扑是描述软件开发团队组织的模型。它定义了四种团队形式和三种团队互动模式。流对齐团队是以业务能力为中心的团队,负责为单一业务能力提供软件。赋能团队培养相关技能,复杂子系统团队减轻流对齐团队的认知负担。团队拓扑结构是一种工具,通过减轻认知负荷让团队流动起来。
生成式人工智能,如LLM,解决辅助任务和交互方式的问题。辅助任务包括信息查找、代码生成和转换,交互方式包括聊天界面和命令行界面。模型属性包括训练方式、大小、上下文窗口和过滤器。工具示例有GitHub Copilot、ChatGPT等。聊天互动和代码编辑器中的在线辅助是目前最常用的。未来改进包括模型大小、训练方式和微调。开源模型领域也在发展。
产品交付团队为公司客户构建产品,平台交付团队为公司内部其他团队构建产品。平台团队作为支持团队帮助其他团队成功。平台团队构建的产品是公司内其他团队使用的内部产品。平台团队和产品交付团队需要在平台迁移、平台消费和平台演进等阶段进行协作。最佳方法是最初以专注、协作性很强的模式一起工作,但平台团队应努力定义自己的接口,转向即服务模式。减少认知负荷是平台团队的目标。
本文介绍了Xapo银行在构建软件系统时所面临的挑战,以及采用的领域驱动设计和团队拓扑的方法。通过建立架构建议流程和ADR,促进团队自治和决策的快速实施。实施这些方法后,Xapo银行提高了决策和实施的速度,增强了团队对业务需求的理解和参与度。文章强调了这些方法的持续整理和内部营销的重要性,以及与其他组织文化和工作方式的结合。
无论你是大公司、政党、国际新闻机构、非政府组织还是政府机构,你都应该认真考虑在Fediverse上运行你自己的Mastodon服务器,或者其他适合你业务的东西。 ...
领域驱动设计在康威定律中发挥作用,帮助定义组织结构: 因为 DDD 的一个关键部分是识别BC:BoundedContexts。 BC一个关键特征是它有自己的UL:UbiquitousLanguage,由在该上下文中工作的人定义和理解。 这样就可以围绕一个主题对人员进行分组的方式,与价值流保持一致。 几乎所有好的软件 架构 ...
完成下面两步后,将自动完成登录并继续当前操作。