我们如何为波兰市场打造乘车称呼应用程序 “产品人员-产品经理,产品设计师,UX设计人员,UX研究人员,业务分析师,开发人员,制造商和企业家 November 11 2019 真正 敏捷产品开发,移动应用,产品开发,产品开发流程,用户体验, 注意产品 介意产品有限公司 1660 产品管理 6.64

我们如何为波兰市场打造乘车称呼应用程序

通过 ON

面对不断修复错误以及必须使用过时的代码的需求,波兰出租车服务应用程序iTaxi的团队意识到有必要回归基础并选择完全重建我们的应用程序。这就是我们做到的方式。

iTaxi总部位于波兰,是一个乘车平台,可将乘客与持牌出租车司机联系起来–而不是Lyft,Uber或Bolt。该公司成立于2013年,我们的移动应用程序使出租车司机可以接送乘客并为乘车收费。我们致力于为波兰最大的城市的商业客户提供优质的服务,而今年,我们被欧洲评为发展最快的高科技公司之一 The Next Web的Tech5 competition.

到2018年,我们’d发现我们应用程序的旧版本变得比其应有的麻烦更多。它没有’自iTaxi于2013年成立以来就已进行了更改,并且是使用旧技术编写的。 IT部门专注于修复错误,而不是创建新功能,而仅修改一部分代码会导致另一部分出现问题。很明显,该应用程序需要完全重建。

iTaxi大约有100人工作,我们的IT团队有12人–没有像Uber或Bolt那样庞大的开发人员和设计师团队。我们以能够为驾驶室驾驶员和乘客提供高质量的产品,出色的用户体验,出色的设计和出色的代码质量而感到自豪。

用户体验

通过从业务经理和出租车司机(我们的最终用户)收集需求,我们开始为出租车司机创建新应用的过程。显然,我们需要以双方都能理解的方式提出所有这些要求。作为产品负责人和UX设计师,我决定准备线框和交互式原型。

这些线框和原型对于我们的成功至关重要。向经理和最终用户展示线框,消除了他们对功能如何工作的怀疑。它使我们能够在编写任何代码之前进行更改,这意味着我们都知道进入设计阶段时每个元素的工作方式。在设计过程中,我们只需要决定应用程序的外观和感觉,而不是如何工作。

作为为出租车司机设计的UX设计师,我发现您必须考虑以下因素:

  • 驾驶员在驾驶时使用的各种设备(包括电话架和挡风玻璃支架)
  • 左手和右手驾驶室驾驶员都易于使用和方便,同时保持道路安全
  • 全天(白天,黑夜,太阳或雨天)在屏幕上显示的内容的可见性

我们还必须检查安全问题,并在道路安全与驾驶时间和公司利润之间取得平衡。我们把安全放在首位。在其他此类应用中,鼓励驾驶员保持登录状态,以便他们找到工作并赚取更多收入,尽管当然不能保证。对于应用程序提供商来说,尽可能多地登录驾驶员也很有用,因为它可以为潜在乘客提供更多匹配项。我们决定优先考虑安全性,因此我们鼓励驾驶员休息,而不要始终保持登录状态。

左上方:线框的第一个版本,设计的第一个版本以及应用程序主屏幕的最终版本。出租车司机确实很喜欢该设计的第一个版本,但经过测试,他们发现背景太暗,因此我们决定尝试更亮的版本。
新旧版本的iTaxi应用程序屏幕
旧应用程序(左)和新移动应用程序(右)的主屏幕之间的比较。

发展历程

像iTaxi这样的出租车司机应用程序具有一些其他应用程序未发现的特定挑战。该应用程序始终处于活动状态–它是连续不断的订单和通知流。它必须不断意识到它的“state”,它结合了iTaxi系统中的GPS位置和状态(每个出租车司机都可用于新订单或忙碌且不接受任何其他订单)。如果这些元素中的任何一个失败(例如,应用程序记录了过时的GPS位置),则可能会引起问题。同样重要的是要记住,出租车司机一直在行驶,信号干扰和GPS或互联网丢失的原因有很多(他们进入隧道,地下停车场,他们在高层建筑之间行驶)。

我们决定暂时将新应用程序与旧应用程序并行运行。这是因为某些驱动程序对新应用程序保持警惕–我们发现驾驶员越老,他们越担心–我们希望对他们来说尽可能轻松地过渡到新应用。我们还想测试新应用,并在出租车司机正常工作期间对其进行观察。并行管理后端系统是一个挑战。我们发现有时新应用程序预期使用不同的数据类型甚至服务流,因此我们必须非常小心,为适应新应用程序所做的任何修改都不会在旧应用程序中引起问题。这也意味着测试部门必须对所有内容进行两次检查– on both versions.

由于其复杂性,我们根据 毒蛇建筑模型。这通常与iOS相关联,但在Android上也可以正常使用。它使项目更易于开发和测试,并减少了出错的机会。即使许多程序员在使用Viper,随着时间的推移,Viper也会帮助保持其代码质量。我们还使用了基于敏捷最佳实践的框架来促进开发,引入一些代码透明性并最大程度地减少错误风险。这意味着任何新的程序员现在都可以快速入职,并且产品本身更易于维护和开发。

质量保证

我们的质量检查测试最初侧重于两个领域:错误可能性最高的领域和业务优先级最高的领域。然后,我们测试了用户体验和该应用程序的美观性。回归测试也非常重要。我们确保开发人员添加新功能时没有错误。

我们将测试分为几个阶段:

  1. 首先,两名测试人员检查了该应用程序在办公室是否正常运行,如果不能正常运行,则报告了异常情况。
  2. 其次,测试人员在大街上走。该应用程序在现实和动态条件下的行为可能会有所不同,并且该应用程序的其他方面(例如视图或功能)可能会产生更大的影响。测试人员骑着我们的出租车司机,手里拿着电话,看着应用程序中发生了什么;
  3. 第三,我们组织了一个由60名出租车司机组成的小组,以检查该应用程序在道路上,白天和晚上以及各种设备上的所有可能天气情况下的性能。驾驶员可以通过亲自与我们联系,拨打专用热线或发送电子邮件与我们联系。事实证明,该测试很困难,因为它需要分析各种类型的评论,问题和主观意见。汇总请求并选择哪些请求需要程序员的关注,哪些应该进一步观察,这需要整个团队的大量关注和参与。

我们的出租车司机测试人员还提出了改进应用程序的想法。例如,他们要求使用夜间模式,以便更改屏幕颜色并使屏幕视图变暗,以便在夜间更轻松地使用该应用程序。我们已经在开发的后期计划了这个选项,但是事实证明,它对于出租车司机非常重要,因此我们加快了过程:我们为夜间模式准备了新的UX,并尽快开始开发。

对我们而言,重要的是,iTaxi团队已成功解决并实施了驾驶员报告的问题和想法。这意味着该应用是协作的成果。

最终用户在办公室外进行测试时得到的照片和屏幕。

加起来

我们使用新应用程序工作了许多个月。我们了解到,我们需要在整个过程中对业务观点和用户观点保持兴趣。当您构建产品时’整个团队很容易专注于流程和产品本身。但是你也要付出一定要注意市场–否则您将冒着新产品一旦落后于竞争对手的风险’s launched.

例如,当我准备我们的第一个原型时,潜在的用户对自动消息传递和精美的应用程序内邮件有巨大的需求。从他们的角度来看这是必须具备的。但是,经过数周的工作和讨论,我们意识到这只是一个不错的功能。我们推迟了其开发工作,而是开发了用户所需的其他功能。再举一个例子,在用户测试期间,我意识到一个功能并不是特别有效。我们准备了更多版本,然后要求用户对哪个版本最好进行投票,然后实施他们选择的版本。

您需要不断关注市场的变化。团队应该能够根据数据做出决策,并专注于提供最重要的功能,而不仅仅是他们认为最好的功能。不断与最终用户检查产品是一种很好的做法。我们发现,通过使用敏捷方法,不断地与用户测试想法和发展变得自然。这意味着您可以快速行动,并且更轻松地为产品添加一些小的改进。

感谢iTaxi的高级Android开发人员Anna Orlowska和iTaxi的高级测试人员Sylwia Okraska对本文的贡献.