访问:
苹果在线商店(中国)
新方法要求苹果开发团队确保未来软件更新的测试版, 也就是所谓的 "每日构建(Daily build)", 在默认情况下禁用未完成或有缺陷的所有功能. 然后, 测试人员可以通过一个称为 Flags 的全新内部流程和设置菜单有选择地启用这些特性或功能, 从而能够将每个单独添加特性会对系统产生何种影响相互隔离开来.
图: 苹果软件主管克雷格. 费德里吉 (Craig Federighi) 正在对 iOS 14 的开发和测试进行全面改革, 以便及早发现问题.
今年 9 月, 当苹果公司的 iOS 13 操作系统与 iPhone 11 系列智能 手机 同时发布时, iPhone 用户和应用程序开发者发现了一连串的软件故障: 应用程序崩溃或启动缓慢; 手机信号参差不齐; 应用程序出现了用户界面错误, 比如消息, 系统搜索都出现问题, 电子邮件也存在加载问题. 而通过 iCloud 共享文件夹以及将音乐流媒体传输到多组 AirPods 上等新功能要么被推迟, 要么仍未实现. 毫不客气的说, 这次操作系统升级是是苹果历史上最麻烦, 最粗糙的.
"iOS 13 在继续摧毁我的士气," 知名开发者马尔科. 阿蒙德 (Marco Arment) 在 Twitter 上写道."我也是," 购物清单应用 AnyList 联合创始人杰森. 马尔 (Jason Marr) 说,"在 iOS 13 上, 苹果的表现的确是对开发者和用户的不尊重."
这些问题表明, iPhone 已经变得有多复杂, 而且用户很容易对一家以软硬件顺畅整合而著称的公司感到失望. 对苹果公司来说, 每年跟随最新款 iPhone 定时发布软件更新, 是增加系统新功能, 防止用户转向主要竞争对手 Android 的关键途径. 更新后的操作系统还为开发者提供了更多的应用程序开发工具, 从而为苹果的应用商店带来了更多收入.
苹果发言人特鲁迪. 穆勒 (Trudy Muller) 拒绝置评.
新的开发过程将有助于提高早期内部 iOS 操作系统版本的可用性, 或者用苹果的话说,(不同功能)更加 "易于相处". 在 iOS 14 开发之前, 有些团队每天都会添加一些还没有经过充分测试的功能, 而其他团队则每周都会对现有功能进行修改."每天的开发过程就像一整份食谱, 但很多厨师都在添加配料," 一位了解开发过程的人士表示.
测试软件在开发不同阶段的变化是如此之多, 以至于这些设备常常变得难以运行. 由于这个原因, 一些 "测试人员会在一团糟的情况下将系统跑上几天, 所以他们根本不会真正清楚哪些功能会对系统产生何种作用." 该人士说. 在这种情况下, 由于苹果工程师很难测试出操作系统对许多新添加功能的反应, 从而导致 iOS 13 频频出现某些问题, 因此也无法达到测试目标.
苹果公司内部测试是所谓的 "白手套" 测试, 用 1 到 100 的等级来衡量和排名其软件整体质量. 有问题的软件版本得分可能在 60 分左右, 而更稳定的软件可能在 80 分以上. iOS 13 的得分低于之前更完善的 iOS 12 操作系统. 在开发过程中, 苹果团队还为软件产品的功能特性分别设置了绿色, 黄色和红色的代码, 以显示这种功能特性在开发过程中的质量. 相应的优先级从 0 到 5, 其中 0 是关键问题, 5 是次要问题, 用于确定单个软件错误的严重性.
新策略已经被应用到代号为 "Azul" 的 iOS 14 系统开发中, 该系统将于明年发布. 苹果还考虑将 iOS 14 的一些功能推迟到 2021 年发布, 在公司内部这一更新被称为 "Azul +1", 也可能会以 iOS 15 公开发布, 这也让公司有更多时间关注操作系统性能. 不过, 熟悉苹果计划的人士表示, 预计 iOS 14 在新功能的广度上将与 iOS 13 不相上下.
测试策略的转移将适用于所有苹果的操作系统, 包括 iPad OS,watchOS,macOS 和 tvOS. 最新的 Mac 电脑操作系统 macOS Catalina 也出现了一些问题, 比如与许多应用程序不兼容, 邮件中缺少信息. 一些运行基于 iOS 操作系统的 HomePod 音箱在最近一次 iOS 13 更新后无法工作, 导致苹果暂时停止升级. 另一方面, 最新的苹果 电视 和苹果手表系统更新则相对顺利.
苹果公司的高管们希望, 从长远来看, 全面改革后的测试方法将提高公司软件质量. 但这并不是苹果工程师第一次听到管理层这么说.
去年, 苹果曾推迟了 iOS 12 的几项功能发布, 其中包括对 CarPlay 和 iPad 主屏幕的重新设计, 专注于提高可靠性和整体性能. 在 2018 年 1 月的一次全体会议上, 费德里吉表示, 公司对新功能的重视程度过高, 应该优先向消费者提供他们想要的质量和稳定性.
随后, 苹果成立了所谓的 "老虎团队" 来解决 iOS 特定部分的性能问题. 该公司从整个软件部门调派工程师, 专注于加快应用程序启动时间, 改善网络连接和延长电池寿命等任务. 当 iOS 12 操作系统于 2018 年秋季发布时, 运行相当稳定, 在头两个月内只进行了两次更新.
这种成功没有延续到今年的操作系统升级. iOS 13 的最初版本漏洞百出, 以至于苹果不得不匆忙发布了几个补丁. 在 iOS 13 发布的头两个月里, 已经进行了 8 次更新, 是自 2012 年费德里吉接管苹果 iOS 软件工程部门以来最多的一次. 该公司目前正在测试另一个新版本 iOS 13.3, 这本是要在明年春天进行的后续工作.
今年 6 月份苹果召开了 2019 年度全球开发者大会. 大约在此一个月前, 该公司的软件工程师就开始意识到, 当时在公司内部被称为 Yukon 的 iOS 13 表现不如之前的版本. 一些参与这个项目的人说系统开发是一个 "烂摊子".
今年 8 月, 苹果工程师们意识到, 几周后与新 iPhone 一起发布的 iOS 13.0 根本无法达到质量标准, 于是决定放弃对其进行修补, 专注于改进后续的第一次更新版本 iOS 13.1. 苹果私下里认为 iOS 13.1 是 "真正的公开发布版本", 其质量水平与 iOS 12 相当. 公司预计只有铁杆苹果粉丝才会在手机上安装 iOS 13.0 操作系统.
9 月 24 日苹果发布了更新的 iOS 13.1, 这比既定时间提前了一周, 也压缩了 iOS 13.0 作为苹果旗舰操作系统发布的时间. 新 iPhone 与苹果软件紧密集成, 因此从技术角度讲, 不可能推出搭载 iOS 12 操作系统的 iPhone 11 系列智能手机. 由于新款手机发布时 iOS 13.1 还没能及时准备好, 苹果唯一的选择就是发布 iOS 13.0, 并尽快让所有人更新到 iOS 13.1.
虽然 iOS 13 出现的问题确实让 iPhone 用户感到不安, 但更新速度还是相当快. 据苹果称, 截至 10 月中旬, 半数苹果设备用户都在运行 iOS 13. 这一升级速度仍远远领先于谷歌的 Android.
iOS 13.1 发布后, 苹果的软件工程部门迅速转向 iOS 13.2, 其质量目标是优于 iOS 12. 这次更新后的抱怨比 iOS 13 操作系统的前几次更新都要少, 但却仍有一个错误, 系统会在不应该关闭的情况下关闭后台的应用程序.
苹果应用程序资深开发者史蒂夫. 特劳顿 - 史密斯 (Steve Troughton-Smith) 在 Twitter 上写道:"iOS 13 给人的感觉就像是一个超级混乱的版本, 自 iOS 8 以来我们从未见过如此糟糕的情况."
来源: http://www.tuicool.com/articles/VVNjYrY