项目的发现阶段,以及它如何帮助增强您的 IT 计划

已发表: 2022-11-25

见解,总结:

  • 在全球实施的所有创新 IT 项目中,只有10% 到 30% 最终取得成功
  • 可以通过引入发现阶段来防止导致软件开发项目出错的大部分问题。
  • 项目的发现阶段是软件开发管道的第一阶段,其目的是帮助您将您的商业理念转变为具有竞争优势的全功能解决方案
  • 项目发现阶段通常包括四个阶段:需求获取、解决方案设计、构建解决方案和项目规划。 每个阶段都会产生一组可交付成果,您可以用来向投资者和利益相关者推销,并在此基础上构建您的开发流程。
  • 业务分析师和工程团队的代表通常负责执行发现。 外包发现阶段也是一个有价值的选择,尤其是当您缺乏经验丰富的内部 IT 人才时。
  • 无论您选择瀑布还是其中一种敏捷项目管理方法,都会影响您发现的长度和范围。
  • Waterfall中,通常会提前计划整个范围,这可能需要四到八周甚至更长时间——具体取决于项目的规模和复杂性。
  • 敏捷中,设置所谓的sprint 0 或初始阶段很常见,通常需要几周或更短的时间。 通常紧随其后的是在开发轨道之前运行一到两次迭代的发现轨道。
  • 标准发现阶段的成本从20,000 美元起。

你有一个创新的想法。 我们自己是技术爱好者,很想马上把它变成一个功能性的应用程序。 但是,在没有所谓的发现阶段的情况下一头扎进开发可能是致命的,尤其是在实施复杂或创新的解决方案时。

各种研究表明,在全球实施的所有软件开发项目中,只有 10% 到 30% 成功。

令人难过的是——想法越创新,项目失败的可能性就越大。

失败的原因各不相同,但通常与糟糕的项目计划有关:

DevTeam 共享的调查调查了软件项目失败的常见原因。 被调查的公司被要求选择最多三个他们认为他们的软件开发计划失败的原因。 失败的前三大原因是组织优先级的变化、不准确的需求和项目目标的变化。

我们提供软件工程服务的经验证明:导致软件开发项目出错的大部分问题是可以避免的——这就是发现阶段发挥作用的地方。

如果您即将开始一项 IT 计划并且不希望它失控,请继续阅读。 下面,我们分享发现阶段如何帮助企业和初创公司成功推出软件解决方案,解释哪些类型的项目从发现活动中受益,并根据 ITRex 产品组合中的示例分享发现阶段的大致成本。

项目的发现阶段到底是什么?

项目发现阶段是软件开发管道中的第一个阶段。 在此阶段,您将根据业务环境测试想法、消除疑虑并证明对未来应用程序的假设。

如果处理得当,发现阶段可以帮助您了解如何将您的商业理念转化为功能齐全的解决方案,同时为准确的时间和成本估算提供基础。

最终,在您的项目中引入发现阶段可以帮助您实施符合用户期望并具有竞争优势的产品。

根据工作范围,敏捷项目的发现阶段可能需要两到四个星期,而瀑布项目的发现阶段可能需要四到八周甚至更长时间。 它通常根据时间和材料 (T&M) 定价模型计费。

项目发现阶段包括哪些阶段?

项目的发现阶段通常包括四个阶段:

  1. 需求获取
  2. 方案设计
  3. 解决方案架构
  4. 项目计划

需求获取

在此阶段,您将建立清晰的产品愿景。 您还需要考虑将这一愿景变为现实的战略方面。 为此,您执行以下步骤:

确定关键利益相关者和业务环境

通过访谈、问卷调查、讨论、焦点小组和观察开始项目的发现阶段,以深入了解未来解决方案将使用的环境并记录主要利益相关者的需求和期望。 后者应包括产品所有者、管理员、最终用户、开发人员、投资者以及参与制定和使用未来解决方案的其他人员。

另外,不要忘记回顾现有文档。 如果您已经有市场调查、用户访谈或任何其他有用的文档,您可以通过节省一些时间进行额外研究来缩短项目发现阶段。

定义产品愿景

根据利益相关者的反馈,定义产品愿景。 Think——一份高级文档,概述了开发产品的目的并向用户传达了它的关键价值。

确定成功指标

作为项目发现阶段的下一步,考虑衡量产品性能的标准。 这些可能包括每月收入、每日活跃用户、客户生命周期价值和其他因素。 产品经理将依靠这些标准来监控产品是否满足设定的业务目标。

确定目标用户

继续研究您的目标受众并创建用户角色。 确定他们的需求、期望和痛点,并思考在应用程序的用户旅程中解决这些问题的方法。

明确技术要求

将项目发现阶段之前阶段聚合的所有数据转化为软件需求规范 (SRS),记录未来解决方案的功能和非功能(性能、可用​​性、安全性等)需求。 有关如何制作引人注目的文档的更多详细信息,请参阅我们的 SRS 编写指南。

制定风险管理策略

制定风险预防和缓解策略。 这些将帮助您在潜在风险、不确定性和障碍成为问题之前识别和应对它们。

定义项目范围和时间表

在项目发现阶段的此时,您可以提供完成项目所需的资源、成本和时间的详细估算。 通过制定包含定义的里程碑、可交付成果和截止日期的完整项目时间表来完成该阶段。

完成需求获取阶段后,您将手头有以下可交付成果:

  • 产品愿景声明
  • 项目范围文件和可选的范围图
  • 用例、用户故事和用户旅程地图
  • 产品需求文档 (PRD)、功能需求文档 (FRD) 或软件需求规范 (SRS)
  • 风险管理策略
  • 项目时间表

方案设计

解决方案设计阶段的目标,不言而喻,就是设计产品的用户体验并提出其外观和感觉。 在设计阶段,您通常会执行以下活动:

制作用户旅程地图

在目标受众研究和用户角色的基础上,制作用户对产品体验的高级视觉表示。 通常,您需要为每个用户细分提供单独的用户旅程图。

通过思考用户和未来产品之间的交互点来继续项目发现阶段。 使用您在研究期间收集的数据来填充旅程地图。

在设计方面,您的地图可以像时间线一样简单,也可以像故事板一样复杂,描述每个阶段究竟发生了什么。

创建线框和模型

通过创建传达解决方案结构和设计的蓝图来可视化您的概念。

建立原型

通过构建解决方案原型来完成该阶段。 Think——反映其基本功能和设计的未来解决方案的早期版本。 原型是让利益相关者体验未来解决方案的行为、外观和感觉的好方法。

为了验证用户流程以及用户体验和用户界面决策,您可能会经历几轮测试。 这完全没问题。 在每次迭代中收集利益相关者的反馈,并依靠它来完善您的设计。

解决方案设计阶段完成后,您将获得以下可交付成果:

  • 用户旅程地图
  • UI 线框和 UI 设计模型
  • 低保真解决方案原型

构建解决方案

在项目发现阶段的这个阶段,您会考虑如何在技术方面实现设计的愿景。 要完成这一切,请执行以下操作:

制定技术愿景

以技术最佳实践、业务背景和开发团队的反馈为基础,设计一个技术解决方案来实现产品愿景。 确保您的技术愿景是灵活的、面向未来的,并且与整体业务战略保持一致。

进行技术可行性分析

作为项目发现阶段的下一步,评估您将如何交付解决方案的细节。 考虑技术前景、可用的基础设施、资源和预算。 最终目标是确定所提议的技术解决方案的可行性,并确保该项目在法律和技术上是可行的,并且在经济上是合理的。

设计解决方案架构

依托行业最佳实践,以技术需求为基础,设计未来解决方案的架构。 内置的可扩展性、灵活性和安全性是需要寻找的特性——这些有助于确保您以后可以进一步改进您的解决方案。

选择最佳技术堆栈

下一步是选择最佳的编程语言、框架和库。 这样做时,请记住您所做的技术选择将影响未来解决方案的性能和可扩展性、上市时间、软件的可维护性和支持成本。 请务必根据这些因素仔细权衡您的技术选择。

将项目范围分解为可交付成果并创建积压结构

明确项目范围并做出技术选择后,您可以将工作量分解为特定的可交付成果并设计项目积压工作。 有不同的方法来构建您的积压工作; 我们发现一个依赖于用户故事的灯塔应该交付什么是最方便的。

设计 QA 和测试策略

为确保您的解决方案无故障运行,请尽早投入精力设计全面的 QA 策略。 请记住,全面的质量保证不仅限于测试——尽管它是质量保证的重要组成部分。 因此,请确保在规划阶段尽早纳入 QA 活动,并遵循所需的功能和非功能测试活动。

完成解决方案设计阶段后,您将获得以下可交付成果:

  • 技术愿景
  • 方案可行性记录
  • 解决方案架构图
  • 技术栈
  • 范围基准
  • 积压结构
  • 质量保证和测试策略

项目计划

项目发现阶段的项目规划阶段的目标是定义您将如何在设定的时间范围内完成项目,利用可用资源并考虑约束。 为此,请执行以下活动:

绘制资源、上市时间和预算估算

通过起草资源计划开始阶段,您可以在其中识别、组织和列出完成项目所需的所有资源。 稍后,您将使用该计划作为蓝图,以确保项目工作在预算范围内按时完成。

概述项目路线图

制定项目主要要素的战略概述,包括目标、里程碑、可交付成果、资源和计划的时间表。 在开发的后期阶段,您将依赖路线图作为参考指南,让项目团队走上正轨。

成立项目团队

根据产品的类型和复杂性、上市时间、分配的预算和其他项目限制,组建一个项目团队来实现您的愿景。 为确保您拥有最佳的团队组成,请随时研究我们深入的项目团队结构指南。

定义项目 KPI

设置要跟踪的指标以衡量您的项目是否成功。 这些可以涵盖预算、质量、有效性和时间线 KPI。 确保您引入的每个指标都是SMART (具体的、可衡量的、可实现的、相关的和有时限的。)

设置进度跟踪工具

您不必手动管理项目数据。 相反,选择一个项目管理工具,让您可以方便地浏览来自各种来源的数据。 市场上最流行的进度跟踪工具包括:Trello、JIRA、Hive、Asana、Nifty 等。

建立项目基础设施

一旦核心发现活动完成,就可以通过引入运营和/或 DevOps 团队来完成项目的发现阶段。 他们将为开发和测试活动的发生设置环境,并为自动部署创建管道。

项目规划阶段结束后,您将手头有以下可交付成果:

  • 项目路线图
  • 概算
  • 团队组成
  • 项目关键绩效指标
  • 项目基建计划
  • 可选地,初创公司向投资者展示的推销平台。

谁负责进行和协调发现?

有了以上信息,您就可以自己冒险进入项目的发现阶段了。 另一种方法是求助于经验丰富的项目发现服务提供商,他们将为您提供合适的技术人才支持。 通常,项目发现团队包括一名业务分析师和一名工程团队代表,可以是解决方案架构师、ML 顾问或与项目相关的任何其他角色。 扩展发现团队可能包含以下角色:

产品拥有者

产品负责人是拥有最初产品创意并负责制定产品愿景的人。 作为产品负责人,你会参与产品开发,但你的任务会更具战略性,而分析、设计和开发的主要部分通常会交给其他团队成员。

专案经理

项目经理负责利益相关者之间的顺畅沟通、规划工作范围和跟踪项目进度。

业务分析师

业务分析师提出了一个具体计划,说明如何将最初的愿景变成一个真正的、实用的解决方案。 作为业务分析师,您会采访利益相关者,深入了解他们的需求,并根据业务环境权衡这些需求以制定详细的 SRS。

解决方案架构师

解决方案架构师分析需求并设计解决方案逻辑和架构。 他们还提出工具、技术和方法,以确保您获得具有竞争力、面向未来的软件。

用户体验/用户界面设计师

UX/UI 设计师是设计不间断且流畅的用户体验的人。 他们研究用户的需求和偏好,以使未来的产品尽可能方便和吸引人。

此外,您的发现团队可能包括 DevOps 工程师、QA 工程师和安全工程师。

DevOps 工程师将负责为项目活动设置基础设施,并为自动构建设计管道(如果您选择实施的话)。

如果您的产品有严格的质量要求,请让QA 工程师参与发现活动。 让他们评估需求的可行性,并将必要的 QA 活动纳入开发的所有阶段。

反过来,安全工程师将确保您的产品符合必要的安全标准并拥有内置的保护机制。

发现在敏捷和瀑布项目中有何不同?

无论您选择线性项目管理方法(例如瀑布)还是敏捷家族中的一种管理方法,都会影响发现阶段的处理方式。

在 Waterfall 中,所有发现活动都在开发开始之前预先完成。 发现阶段通常需要长达八周的时间和项目预算的 10% 到 15%。 完成后,团队将获得所有必要的可交付成果。

另一方面,在敏捷中,发现阶段通常在开发轨道之前运行一到两次迭代。 通常需要几周或更短的时间。

如果您想更深入地了解差异,请阅读我们关于瀑布项目与敏捷项目的发现阶段的文章。

什么类型的项目可以从发现阶段中受益?

我们与 ITRex 的首席文学士 Vladimir Sechko 坐下来,询问他可以从引入发现阶段中受益的项目类型。 剧透:任何。 我们稍后会解释做出这种反应的原因。 现在,我们将利用 ITRex 产品组合中的三个示例来说明发现活动何时派上用场。

项目一、市场研究与预测软件平台

一家希望为零售商创建市场研究和预测平台的初创公司找到 ITRex,以测试其想法的可行性并进一步开发解决方案概念。

基于 ML 的平台针对时尚零售市场,将帮助制造商和零售商根据特定销售地点的需求调整生产和销售商品的数量。 该预测将基于开源数据,包括社交媒体信息。

交付范围包括研究预测模型的数据源、思考预测模型背后的逻辑、描述未来解决方案的功能,以及制定与数据收集和数据存储相关的合规要求。

一名业务分析师和一名 ML 工程师参与了发现活动。

在发现阶段结束时,客户验证了他们的想法的可行性,得到了一个低级功能解决方案,其中所有功能块都得到了全面描述和可视化,并了解了未来解决方案的合规性要求。

该解决方案的概念现在正在向投资者推销,很有可能吸引到进一步开发所需的资源。

因此,如果出现以下情况,我们建议执行项目发现阶段:

  • 您的解决方案与 AI、ML 和其他创新技术有任何关系
  • 你的解决方案依赖于公共数据,你不熟悉细分市场的数据收集要求
  • 你还没有磨练出最初的愿景,也不知道在第一次开发迭代中应该专注于哪些核心特性

项目 2. 用于协调 B2B 流程的后台办公室

拥有四个业务线(包括音乐流媒体服务、在线印刷和刺绣服务以及允许乐队设计和销售商品的在线商店)的所有者希望开发一个方便的后台办公室来协调所有业务线。 后台将允许改进过去部分离线的 B2B 管理流程。

在发现过程中,ITRex 的业务分析师研究了客户的需求并设计了未来解决方案的功能图。 提议的解决方案将帮助客户的合作伙伴和员工在合作伙伴模块内无缝沟通。

因此,在开展发现活动后,客户获得了未来解决方案的详尽功能图,该解决方案将使用 PHP Symfony 框架实现。

因此,如果所讨论的解决方案很复杂并且具有许多集成功能,请进行发现活动。 发现阶段将帮助您挑选出核心功能,以便在第一次开发迭代期间集中精力,以便开始提前获得价值。

项目 3. 一个非常规的移动广告平台

一家初创公司求助于 ITRex,以验证并进一步开发他们希望快速推向市场的产品愿景。 他们想出了一种带有赌博元素的新颖广告方式。 该移动平台将允许广告商上传视频广告,供用户以类似 TikTok 的方式观看。 广告商还需要设定他们愿意为该活动花费的金额。 在观看视频内容时,随机用户会看到一个领取奖励按钮,该按钮只会出现很短的时间,其中奖励等于广告商设定的金额。

在项目的发现阶段,我们磨练客户的商业理念,记录合规要求,选择要开发的解决方案的平台,设计用户体验,思考奖励算法的特殊性,并整合反欺诈机制.

客户继续与 ITRex 的团队一起开发解决方案。

因此,如果出现以下情况,请选择发现阶段:

  • 您正在开发的解决方案位于广告和赌博等领域的交叉点
  • 该解决方案必须迅速推出。 在这种情况下,发现期间获得的可交付成果将指导开发过程并帮助避免开发错误
  • 您不确定合适的技术和平台
  • 您不确定合规性和安全要求

划清界线,发现阶段对于任何旨在成功交付的项目都是有价值的。 将发现活动视为对您的经营理念的另一种健全性检查。

项目发现阶段也有助于在不断变化或不稳定的环境中导航开发。 有了磨练的愿景、详尽的需求和手头经过深思熟虑的时间表,在不忽视最终目标的情况下更容易调整开发过程。

发现可交付成果也有助于降低对产品所有者/产品经理的依赖。 在敏捷中,产品经理的错误可能是致命的。 在发现阶段之前的项目中,战略决策是集体考虑和验证的,战略失败的可能性要低得多。

进行项目的发现阶段需要多少费用?

发现阶段的总成本取决于项目的复杂性和要执行的活动范围。

例如,对于一个具有深思熟虑的愿景的项目,发现阶段的核心将围绕提出实现它的最佳方法并绘制所有需要的估计。 总计大约10,000-15,000 美元

远景不明的项目的发现活动通常根据时间和材料定价模型计费。 此类项目的发现成本从20,000 美元起,甚至更多,具体取决于所需的可交付成果。

总结一下

因此,如果您是一家致力于下一个突破性应用程序的初创公司,那么从发现阶段开始开发过程可以帮助您:

  • 确定价值主张、用户需求和业务目标
  • 定义工作范围并获得详细的时间和预算估算
  • 获得工作原型以向投资者推销
  • 获取详细的架构解决方案并开始寻找合适的合作伙伴和供应商
  • 获得深思熟虑的产品愿景,避免在后期开发阶段进行代价高昂的修改
  • 从而获得更高的投资回报

对于非 IT 领域的企业来说,引入项目发现阶段可以带来以下好处:

  • 有据可查的项目愿景和范围
  • 真正的利益相关者反馈以做出决策
  • 内部人才的最大影响
  • 对时间和金钱投资的透彻理解
  • 人性化的体验
  • 更高的投资回报

如果您对项目的发现阶段仍有未解决的问题,或者正在寻找可信赖的合作伙伴来启动您的计划,请联系 ITRex 我们经验丰富的 BA 将为您的项目的成功奠定基础!


最初于2022 年 11 月 21 日发布在https://itrexgroup.com