Congratulations, you launched your app. It’s approved in the Apple and Google Play stores. With each passing hour the download count continues to ratchet upwards. Does that mean you’re done?
Think again. Apps require constant and proactive software release management to maintain peak functionality. Without it, they face user disengagement and can put your business at security and financial risk.
3 Reasons to Update Your App
Re-Engage Your Users
Releasing new functionality is a great way to keep your users engaged. As soon as you can provide more value to an existing app, send the new release for review and continue modifying it with subsequent releases. Bear in mind, release too often and users will consider your tool buggy. It’s a fine line between keeping your app in the public consciousness and conserving development resources elsewhere.
In a world where new app options are born each day, software release management is critical to preserve users’ limited attention.
Respond to Changing Business and User Needs
Software release management and feature additions should be continuous, but it’s also important to find a rhythm that balances the flexibility of your team and available budget. There is no reason to release changes more than once a week. A two-week update cycle fits the needs of most apps pop.
Continued releases will allow you to stay ahead of the competitive curve and support new platforms, make use of new operating system features and respond to business needs. With a software release management plan in place, your development team won’t need to onboard, build momentum and learn the dynamics of new co-workers if changes to solution monetization or discovery feature additions are requested right away.
Each release should be more stable than your last. Users may not always notice the little things you do fix, but they’re very aware when things don’t work.
Keep Pace with Major Platform Events
Much like a golfer’s swing, apps need continued attention (meaning software release management) to keep pace with software updates, avoid increased crash reports or functional loss after a major platform event. Maintaining your app shows users you’re informed and actively understand the expectations of the tech landscape.
When a new update or technology becomes available, users expect business as usual at a minimum. They need to continue using the apps they rely on to stay organized and productive. Ideally, apps should be updated to take advantage of new OS features as soon as possible.
When users upgrade their operating systems and cannot load their favorite apps, it sends a disturbing message: The developers of their app are not engaged – or worse – don’t care enough to keep current. In an era of repetitious apps differentiated by brand and slight nuance, attention to superior experience matters more than ever.
Functionality that doesn’t render properly or perform as expected will give your base one more reason to switch. It’s a good idea to use a framework like Crashlytics or HockeyApp to observe and measure bugs in your app. Then adopt a regular release cycle to ensure that they’re fixed in a timely manner.
iOS Beta Testing Services
In the past, beta testing apps on iOS has always been an involved process. The closed nature of the mobile operating system required developers and users to jump through several hoops in order to run and test apps before they were released on the App Store. Thankfully, several online services like TestFlight and Crashlytics sprung up to facilitate the software release management process for both developers and testers. We explore.
TestFlight eventually became the most popular of these platforms and practically synonymous with beta testing on iOS. Because of this, Apple bought the platform. They practically dismantled it and replaced it with their own offering — TestFlight, but in name only. While the new TestFlight offers many improvements over the old, it brings with it some limitations that prevent its use in certain situations.
In the meantime, the other old services are still in play. Crashlytics became Fabric, and it seems to have risen to fill the gap left by the shutdown of the old TestFlight. Both Fabric and the new TestFlight have their pros and cons. We use both depending on the solution under test.
1. Ease of use. Apple’s incarnation of TestFlight is an improvement in many ways, but it comes with a few disappointments. It is generally a much easier way to get beta apps in the hands of testers, facilitating distribution for developers and downloads for users.
2. Larger test pool. It also removes the 100 device limitation, allowing over 1,000 users on an unlimited number of devices.
3. Removes the need to create and manage provisioning profiles. Distributing is as simple as uploading to the app store and checking a few boxes. Subsequent distributions can be automatic upon uploading. End users receive betas through the official TestFlight app very easily with automatic update notification, to boot.
Limitations of TestFlight
1. Small allowable number of internal users. There are a couple of downsides to this service. While distribution to over 1,000 users is possible, TestFlight distinguishes two kinds of users: internal and external. The limit on internal users is 25, and these are generally accounts you would reserve for your own employees: think devs, PMs or the QA department.
2. Delays in distributing to external testers. Apple allows 1,000 external testers. And while distribution to internal testers is practically immediate, an app must first go through a brief review before it can be distributed to external testers. While it typically only takes a day or two, sometimes that is too great a delay in the beta testing process.
3. Only one version allowed in testing at a time. Finally, the most disappointing oversight in Apple’s version of TestFlight is the inability to have multiple versions of an app in testing at once. We frequently have two or three different versions in progress, and this limitation makes TestFlight unusable from time to time.
Why Development Teams Like It:
- Unlimited devices
- 1,025 users
- Easy distribution for developers
- No provisioning profiles
- Easy downloads and updates for users and testers
Fabric is a platform from Twitter featuring a variety of tools that assist with testing and measuring during app development. They counter Apple’s ad hoc distribution and provide automatic upload and aggregation of crash logs.
Advantages of Fabric
UI/UX/analytics. Fabric provides great crash log display and measurement, and it does a nice job of presenting metrics. Developers can track usage of particular features per version while also getting a great picture of the landscape of users that their apps service.
Disadvantages of Fabric
More manual work for developers required. Using Fabric for beta distribution means a bit more involvement from both developers and users, although the tools make this as painless as possible. Users will have to install a profile as well as apps, and there will be a bit of manual work for developers as they manage the up to 100 devices that are in the profile.
Why Development Teams Like It:
- Great crash logs
- Useful metrics
- Track custom events
- Maintain and distribute multiple versions at once
- No review required
Both Apple’s TestFlight and Twitter’s Crashlytics are great tools for distributing beta applications to testers. In typical fashion, Apple’s offering is the simplest, best integrated with their operating system and easiest for both developers and users while their competitors’ tools favor more potential and control at the cost of more work and configuration.