2019年11月27日星期三13:17

A Business Analyst'敏捷体验

Written by

我最近写了一本关于Scrum框架的可自定义扩展名的书。

下图提供了本书中描述的过程的概述。

Batimes Nov27 1

图1: 扩展到Scrum框架

本文概述了该过程以及我创建它的原因。如果您发现此信息有用并希望了解更多信息,我将在最后对我的书提供参考。

1.       介绍

作为敏捷项目的商业分析师6年,我了解到SCRUM过程框架没有描述完整的故事。

我强调了敏捷这个词,表明所有这些项目都有共同之处的一件事是短时间盒开发周期(或冲刺)。

Scrum识别三个角色。开发团队,产品所有者和Scrum大师。 Scrum不识别业务分析师,解决方案架构师,质量保证团队,测试仪,UI设计器,部署管理器或作家的角色。 (这些是我用来与敏捷项目交互的角色。)而是通过Scrum,开发团队负责这些角色正常执行的工作。 Scrum假设开发团队包括具有通常与这些角色相关的所有技能的人。

引用Scrum.org:开发团队是跨职能的,所有技能都是创建产品增量所必需的团队。 Scrum承认开发团队成员的任何标题,无论该人所做的工作如何。 Scrum在开发团队中识别出在开发团队中的小组,无论需要解决的域,如测试,架构,运营或业务分析。个人开发团队成员可能有专门的技能和焦点领域,但问责制属于整个开发团队。

这个Scrum组织的问题是开发团队执行的所有工作都发生在Sprint周期内。但是,由产品所有者,业务分析师,解决方案架构师,质量保证,作家和部署管理器生产的工件不是基于Sprint的。此外,UI设计器和测试仪活动有时是独立于冲刺的。

本文介绍了在Sprint循环之外执行的活动,并识别它们为实现可交付产品的实现。

我对敏捷项目的经验

在我的经验中,一些敏捷项目包括一个scrum master和其他时代项目团队成员执行scrum master活动。所有这些项目都有共同的角色是产品所有者(有时称为产品经理),开发团队,以及业务分析师。

大多数开发团队由单独的用户界面设计团队和独立质量保证(QA)或测试团队提供支持。在开发之外的其他角色包括部署和操作,解决方案架构师和文档编写者。即使在采用敏捷过程时,可能会分配支持软件开发的特定职责。

本文包含与敏捷系统开发相关的这些角色的活动,可交付成果和最佳实践概述。每个角色都对一个或多个活动负责。这些活动是从商业分析师的观点来了描述的。

Scrum框架过程的简要概述

Scrum识别五项活动(仪式),保持Scrum Sckentup,Plan Sprint,开发Sprint,审查Sprint并从Sprint中学习课程(Sprint回顾前)。 Scrum标识的工件是用户故事,软件组件和增量构建。用户故事使用产品积压和Sprint Backlog管理。所有这项工作都在两次盒装周期内进行(每日和冲刺)进行。

Batimes Nov27 2

图2: Scrum框架

用户故事已输入产品积压。产品积压由产品所有者管理。在Sprint计划会议期间,用户故事将进入下一个Sprint循环。在Sprint循环期间,开发团队开发了增量构建的组件。当Sprint Backlog中的所有用户故事都完成后,将使用项目利益相关者进行增量构建。 Sprint完成后,进行Sprint回顾性会议以识别从先前的冲刺中汲取的经验教训。每天都举行了一个立场会议,为开发团队计划下一天的工作并查看Sprint Backlog中的用户故事的状态。

可以作为Sprint Review或Sprint回顾的结果生成用户故事,并输入产品积压。

Sprint Backlog用户故事的开发包括构建用户和系统接口,更新系统架构,编写用户文档,测试软件组件,测试增量构建和部署软件。

Scrum框架不显示产品所有者的责任,例如Eliciting业务需求作为用户故事和梳理积压,以便优先考虑即将到来的冲刺工作。这些活动发生在开发冲刺周期之外。

EPIC是用户故事,对于单个Sprint来说太大了。任务是用户故事中的崩溃进入可管理的工作作品。

2.       我作为企业分析师的敏捷体验

下面描述的过程包括我在“敏捷​​”项目中作为业务分析师工作时所涉及的文物,角色和活动。

作为业务分析师,我一般支持产品所有者:

  • 引出业务需求
  • 在产品积压中维护用户故事
  • 写作和维护项目文件
  • 建模业务流程和系统要求,架构和数据

此外,商业分析师可能预计支持发展:

  • 通过写作验收标准和确认测试案例结果来协助进行测试
  • 参加Scrum仪式,包括每日起点
  • 按要求支持发展

如您所见,BA可能会有望为敏捷开发过程中的所有活动提供支持。 (我甚至被要求在交付给客户之前签下增量版本。)

团队物流

影响SCRUM过程的主要因素是项目团队及其利益攸关方的物流(或组织)。我在具有以下后勤化妆的环境中工作:

  • 客户是远程 - 当开发团队没有直接访问客户时,产品所有者(或类似的角色)充当客户的代理。产品所有者可能是与客户直接联系的团队中唯一的人。在这种情况下,他们完全责任识别客户需求和优先事项,并确认产品细节的准确性。客户只能在释放时看到产品。
  • 开发团队是偏远的 - 许多项目无法访问连接IT部门。软件开发可能会在远程位置的开发团队转包。如果开发团队位于另一个国家,则直接沟通可能仅限于一周几小时。

我与一个开发团队合作,其工作时间每周从客户抵消36小时。当我在周一早上到达工作时,开发商一直在工作一天。

  • 质量保证是一个单独的部门 - 该项目没有专用的测试人员。测试人员是QA部门的一部分,是所有部门的共同资源。开发团队将测试每个增量构建,但在QA已验证产品符合客户需求之前,无法向客户发布软件。产品验收测试发生在Sprint完成后以及产品释放之前。
  • UX专家团队设计用户界面 - 以确保客户在企业中遇到常见的外观,并且所有用户界面设计工作都由独立的UX部门执行。产品UI规范(或样机)包含在Sprint规划中的用户故事中包含。 UI规范可能在开发过程中更改,均可批准UI设计人员。
  • 产品部署在单独的释放周期上 - 客户不希望由于部署的缺陷或问题而对其业务进行任何干扰。因此,部署发生在客户方便,只有在用户验收测试之后。
  • 产品文档是产品释放的一部分 - 用户手册和发行说明仅根据释放编写。文档不是增量构建所必需的,因此它不需要作为Sprint的一部分发生。

假设所有这些特征都会影响您的开发过程的最坏情况,我记录了对Scrum进程的以下扩展,以显示它们如何影响我的敏捷体验。

3.       过程概述

过程图假设所有上述物流项目都会影响开发过程。该过程根据您的开发环境进行定制。例如,如果在Sprint期间执行UI设计作为用户故事的开发的一部分,则可以从过程中删除定义用户体验活动。


广告

活动

在以下段落中,我介绍了如何读取图1所示的过程图。

该过程中显示了3个时间盒循环;每日周期,冲刺循环,释放周期和4 TH. 活动是连续执行的活动。这些区域中所示的活动通过流动的流连接,表示在它们之间传递的工件。信息流是连续的,它以增量传递。 (图表并不将一个角色或部门从一个角色指示到另一个。)显示了四个信息存储库。可以随时添加信息,从这些存储库中添加,更新和提取。

持续活动:

  • 引出业务需求 - 从客户中引出业务需求,并将产品积压作为EPIC。分析EPIC以导出使用情况和用户故事。用户故事在产品积压中管理。使用案例在项目模型中维护。
  • Growloom Backlog - 产品积压定期审核,并优先考虑用户故事。 Backlog项目可能被批准用于开发,或从积压中删除。
  • 维护要求 - 要求在模型中不断维护。分析了使用案例,派生在产品积压和验收标准中更新的用户故事。
  • 设计架构 - 系统架构被维持,因为介绍了新技术并且改变了接口。模型架构视图捕获系统架构。用户故事在产品积压中维护以捕获架构更改。模型架构图可以在Sprint用户故事的开发期间使用。
  • 定义用户体验 - 系统用户界面从产品积压用户故事更新。用户界面设计的样机占用进入Sprint,并且可以在用户故事上工作时更新。
  • 测试构建 - 测试用例从用户故事验收标准持续开发,从而可以在可用的情况下立即进行增量构建。测试结果是由于测试增量构建而捕获的。

Sprint Cycle活动:

  • 根据产品积压的优先级,计划Sprint - 用户故事将在Sprint规划期间进入下一个Sprint Backlog。
  • 开发Sprint - 每个用户故事会影响产品构建的一个或多个组件。在Sprint循环期间,开发了弹簧积压中的所有故事,并产生增量构建。
  • 审查Sprint - 制定了增量构建时,它会与项目利益相关者进行审核。由于演示来自Sprint的结果,用户故事可以在产品积压中更新。
  • 从Sprint学习课程 - Sprint中的最终活动是与项目团队的所有成员一起举办经验教训。 Sprint的结果被输入到会议,并且可以在产品积压中作为用户故事创建操作项。

发布周期活动:

  • 文档版本 - 每个版本包括用户和发行说明的说明。这些文件,通知客户自上次版本以来发生了更改的内容。发行说明和对用户手册的更新是从构成释放和曝光到软件用户界面的开发用户故事的组合。
  • 部署构建 - 产品在商定的时间表上向客户发送,以便部署不会干扰其业务活动。部署可能涉及,停止运行软件,安装到客户环境,与现有系统连接,验证安装成功并重新启动系统。

每日周期活动:

  • 保持scrum stakeup - 项目团队成员以来,自上次立场以来他们的工作,他们的即将到来的一天的工作和进步的障碍。用户故事状态在Sprint Backlog中更新。

伪影

文物是在过程中产生的东西。可以在项目存储库中维护工件,例如模型,产品积压或Sprint Backlog。其他工件可能是临时的并且用于在团队成员之间分发信息。文物有助于生产产品释放。

在图中未显示,是文档,代码和测试用例的存储库,其中包括其他文档。

 过程图显示了以下工件作为从一个或多个活动的输入或输出的内容:

  • 需要 - 从客户引发,商业需求分析到用户积压的用户故事中。
  • EPIC - 业务需求在产品积压中捕获为EPIC类型用户故事。史诗被闯入了用户故事。他们没有被拉进一步冲刺。
  • 用户故事 - Sprint中执行的所有工作是用户故事的结果。用户故事来自;在测试期间发现的史诗,缺陷或可能由项目团队创建的分析,以捕获需要完成的工作。
  • 用例 - 捕获源自业务需求的业务流程。它们保持在项目模型中。分析使用案例以产生产品要求,数据和用户故事。
  • 要求 - 这是系统必须展示的行为的通用术语。要求用用例,验收标准,用户故事和任何其他方式记录,这意味着团队用来捕获要求。
  • 体系结构 - 软件,硬件及其接口的组合将托管增量构建。系统架构在项目模型中捕获并由开发人员在Sprint期间使用,以便了解影响软件更改。解决方案架构师与开发团队合作,识别对Sprint用户故事的影响。
  • UI设计 - 通常以用户界面模型的形式,用户界面设计将附加到产品积压中的用户故事。 UI设计师在Sprint期间与开发团队合作。
  • 验收标准 - 源自用例,它们详细说明产品展出的行为,以满足其要求。验收标准用于创建和维护产品测试用例。
  • 组件 - 从用户故事创建或更新的软件。在Sprint期间将组件添加到增量构建。
  • 构建 - 每个Sprint更新的软件应用程序的实例。
  • 构建测试结果 - 在产品测试用例中捕获作为将测试用例应用于产品构建的结果。针对在Sprint期间开发的用户故事进行测试每个增量构建。
  • 产品 - 验证的软件构建,可以部署到客户。
  • 用法 - 指客户释放的客户体验。
  • 用户指令 - 文档是为需要访问已部署产品的人编写的。

人民

角色封装了一个或多个人执行的一系列职责。一个人可以执行几个角色。先前已识别的角色是业务分析师,产品所有者,解决方案架构师,UI设计器,开发团队,测试仪,作家和部署管理器。每个角色都对过程中的一个或多个活动负责。

Scrum Master被认为是不符。 Scrum Master的职责与过程相关,分布在项目团队的其他角色上。

业务分析师负责各种业务需求并维护需求活动。它们确保用户故事已准备好进行下一个Sprint。它们从系统架构和UI设计中更新用户故事,并为使用要求提供开发,测试和任何人的支持。业务分析师与产品所有者密切合作,以确保项目的成功。业务分析师创建并维护了一个要求和模型架构视图的模型。他们创建用户故事,验收标准。

部署管理器负责部署构建活动。它们支持客户位置的客户和产品部署。 Deployment Manager会创建产品版本。

开发团队确保每个Sprint的成功。他们负责开发冲刺,计划冲刺,审查冲刺,学习Sprint的课程,并保持Scrum Standup活动。开发团队创建增量构建的组件,可以以用户故障日期为单词创建工作项。

产品所有者负责新郎积压活动。他们优先考虑并确保业务需求的准确性,并成为客户和主题专家的代理,并消除发展障碍。产品所有者创建史诗。

解决方案架构师负责设计架构活动。它们维护完整解决方案的硬件和软件架构。解决方案架构师创建产品架构,该架构在模型架构视图中捕获。

质量保证是组织内的单独部门,包括测试人员。它们负责测试构建活动。 QA确保在过程中产生的每个工件的质量,包括验证所有软件构建。 QA从验收标准和用户故事中创建测试用例。在验证增量构建过程中,它们填充了构建测试结果的测试用例。

UI设计器是独立用户体验(UX)设计团队的成员。它们负责设计用户界面活动。 UI Designer产生用户界面样机(UI设计),为产品用户界面提供一致而有效的外观和感觉。

Writer文档清除,可理解和准确的用户文档,支持产品版本。作者负责文档发布活动。它们为产品版本创建了用户说明。

4.       概括

本文提供了通过引入负责业务分析,解决方案体系结构,UI设计,质量保证,文档和部署的角色来扩展Scrum的过程的摘要。它定义了这些角色职责的工件以及用于生成这些工件的活动。

只有当项目团队中的角色存在时,才需要这些活动。如果角色不适用于您的情况,那么该角色的工作可能由开发团队执行。

即使您的项目未明确识别此过程中描述的工件,也可能执行生成工件的活动所描述的工作。

可以使用Kanban,安全或精益项目来定制该过程。详细信息在我的书中记录在我的书中,在质量驱动的环境中使用Agile(使用Scrum的业务分析师体验)。

有关更多信息,您可以从Lulu.com下载我的书 PDF. file.

Leslie Munday

IT专业人士拥有超过16年的业务和系统经验,敏捷,结构化和面向对象的方法,瀑布软件开发生命周期,业务流程改进,项目管理和技术文件。我一直在与我的大多数职业生涯的软件和计算机系统合作。我的经验包括航空航天,电信,政府,执法,零售,娱乐,健康保险,软件服务,移动和网络设计项目。最近,我已经参与了通过敏捷最佳实践进入传统的业务分析师角色。

©ba time.com 2021

MacGregor Logo White Web