从零到英雄:ImmobilienScout24 III上本地应用程序开发的故事

这是由Immobilienscout24的移动工程师Iyad Tamer Agha撰写的由三部分组成的本地应用程序开发@ immobilienscout24系列的最后一部分 。 随时阅读第1部分和第2部分,以获取对该主题的更多见解。

非技术措施

技术方法和工具对于确保移动应用程序的质量至关重要,尽管某些非技术性措施可能会导致检测软件错误的时间更早或根本没有发生。

结对编程:我们团队中已建立的一种实践称为结对编程,结对编程是指两个程序员共同工作以共同承担编程任务。 四眼原理导致对编写代码的更多控制和更少的错误。 通过成对工作,将对代码进行更详细的讨论,从而获得更可靠的软件。 协同工作还意味着可以在团队中更好地共享知识。 经验表明,结对编程的另一个副作用是,与单独工作的同事相比,串联工作的同事被打扰的可能性较小。

Mob编程:我们团队中也使用过的成对编程的扩展形式,即mob编程,其中不仅有两个开发人员来完成一项任务,而且整个团队也一起来处理代码。 当团队希望将新功能集成到应用程序中时,该方法被证明是成功的。 这将导致团队内部就该功能代码的共同确定原则达成共识。

代码审查:确保代码质量的另一种方法是代码审查。 实施一项新功能后,团队中的一个或多个开发人员将仔细检查代码。 目的是识别任何编程错误,并检查是否遵守了编写代码的内部准则。 这也鼓励团队内部的知识共享。

我们劳动的成果

首次发布仅一年后,我们的努力就获得了回报。 发布后的第一年,我们有849,000个应用程序下载,这个数字比上一年增加了15%。 我们的App Store评分从3星提高到4星,反映了用户满意度的提高。 这些年来,团队学到了很多东西。 关键课程是:

  • 质量不仅仅是一个技术问题 :结对编程和代码审查之类的实践与对软件质量进行持续改进的技术措施同样重要。
  • 用户永远是对的:如果用户决定应用程序应提供哪些功能,则提供错误内容的风险非常低。
  • 少即是多:一个好的应用不是包含所有可能功能的应用。 删除很少使用的功能并改进常用功能是值得的。
  • 四个星期的发布周期:尽管该应用适合每两周冲刺后发布新功能,但事实证明,最好是四个星期。 这为用户提供了足够的时间来评估新功能,并且团队有机会评估发布的成功并采取适当的措施。

我们的未来方向

大多数基于软件的公司开始与小型团队一起开发移动应用程序。 但是,随着时间的流逝,它们的使用变得如此广泛,以至于对于某些产品来说,大多数流量已经从移动应用程序中产生了,例如ImmobilienScout24就是这种情况。

由于移动应用程序的快速增长,负责移动开发的中央团队的模型已不再足够。 因此,我们的未来计划是在功能团队中扩展移动开发。 我们将iOS应用程序划分为单独的软件组件(模块),以便不同的团队可以彼此独立地开发自己的应用程序需求。 我们期望减少日益重要的移动应用程序的上市时间,因为速度是使自己在竞争中脱颖而出的关键因素。