结对编程

  • 结对编程(Pair Programming)是一种软件开发技术,是极限编程(Extreme Programming, XP)的一部分。它涉及两名程序员在同一个工作站上共同工作。一个人负责编写代码(称为司机或驾驶员),另一人负责审查代码并实时提供反馈(称为导航员)。

什么是Scrum中的3355

  • Scrum 是一种敏捷软件开发框架,用于开发、交付和维护复杂产品。它强调团队合作、自我组织和持续改进。Scrum 中有许多实践和规则,其中 3355 是一个常用的术语,代表以下五个重要概念:

3 角色(Roles)

  1. 产品负责人(Product Owner):
  • 负责定义产品的特性和功能。
  • 管理产品待办事项列表(Product Backlog)。
  • 确保团队理解用户需求和业务目标。
  1. Scrum Master:
  • 负责确保Scrum过程得到正确的实施和遵循。
  • 移除团队在工作过程中遇到的障碍。
  • 教练和辅导团队成员,提高团队效率和效能。
  1. 开发团队(Development Team):
  • 负责实际开发和交付产品增量。
  • 自组织和跨职能团队,通常由3-9人组成。
  • 在每个Sprint结束时交付一个“完成”的可交付增量。

3 工件(Artifacts)

  1. 产品待办事项列表(Product Backlog):
  • 由产品负责人维护的所有待开发功能和特性的优先级列表。
  • 包含所有产品的需求、功能、修复和改进。
  1. Sprint 待办事项列表(Sprint Backlog):
  • 开发团队在一个Sprint期间计划完成的任务列表。
  • 由开发团队从产品待办事项列表中选取的条目组成。
  1. 增量(Increment):
  • 每个Sprint结束时完成的可交付产品部分。
  • 应该是“完成”的,可以发布的产品版本。

5 事件(Events)

  1. Sprint:
  • 一个固定长度(通常为2-4周)的开发周期。
  • 在Sprint结束时交付一个可工作的产品增量。
  1. Sprint 规划会议(Sprint Planning):
  • Sprint开始时的会议,团队决定将在接下来的Sprint中完成哪些工作。
  • 由整个Scrum团队参与,确定Sprint目标和Sprint待办事项列表。
  1. 每日站会(Daily Scrum):
  • 每天一次的短会(通常15分钟),团队成员分享工作进展、计划和遇到的障碍。
  • 帮助团队保持同步,调整计划以确保Sprint目标的实现。
  1. Sprint 评审(Sprint Review):
  • 在Sprint结束时进行的会议,团队展示完成的工作,并收集反馈。
  • 由整个Scrum团队和利益相关者参与,讨论产品增量和未来的工作方向。
  1. Sprint 回顾(Sprint Retrospective):
  • Sprint结束后的会议,团队回顾工作过程,讨论改进方法。
  • 目标是持续改进团队的工作流程和效率。

5 价值观(Values)

  1. 承诺(Commitment):
    团队成员承诺完成目标,并对自己的工作负责。

  2. 专注(Focus):

  • 团队专注于当前的Sprint目标,尽量减少干扰和分心。
  1. 开放(Openness):
  • 团队成员对工作进展、挑战和障碍保持开放和透明。
  1. 尊重(Respect):
  • 团队成员相互尊重,尊重每个人的贡献和意见。
  1. 勇气(Courage):
  • 团队成员有勇气面对挑战,提出问题,并进行必要的改进。

什么是DevOps

  • DevOps 是一种结合文化理念、实践和工具的方法,旨在提高组织交付应用和服务的速度和质量​ (Atlassian)​​ (IBM - United States)​​ (Microsoft Azure)​。它的目标是打破开发(Development)和运营(Operations)之间的壁垒,通过自动化和协作实现持续交付和持续改进​ (CNBlogs)​。