The Different Phases Of App Development Lifecycle: An Overview

By | April 27, 2017
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

This year, the total number of app downloads has been projected to hover around the 197 billion mark. If you feel that is a remarkable figure, sample this: in 2021, nearly 353 billion smartphone applications will be downloaded (a jump of almost 80%). The worldwide revenues generated by the mobile app industry is also expected to witness big increases – from an already impressive $45 billion in 2016 to a staggering $80.6 billion by the end of this decade (App Annie puts the 2020 figure at $101 billion). Given the serious competition and the enormous scopes of growth in front of mobile app developers/companies, the onus is on them to come up with software that would indeed be able to capture the attention of 2.3 billion+ smartphone owners. For that, a thorough understanding of the various stages of the app development lifecycle (a variant of the Software Development Lifecycle, or SDLC) is essential. In today’s discussion, we will focus on that:

First Phase: Idea Generation/Research/App Inception

Good apps come from great ideas – and in the initial stage of the app development lifecycle, the emphasis is squarely on the latter. The target audience for a particular app has to be identified (targeting every smartphone-user would be too challenging). An idea-owner also needs to be aware of the competitive advantage of his/her proposed application, the value it would generate and deliver to its prospective users, which platform(s) the app will be made, and whether the app will be free/paid. To be successful, a new mobile application has to be a problem-solver – addressing user-requirements in a better manner than other, similar apps.

Once an app idea is finalized (and yes, it should always be ‘one idea at a time’), owners have to do a thorough research of the app stores (App Store/Play Store, depending on their choice of platform). This would enable them to have a clear idea about the existing applications in the same category, and how an improvement over them can be made. With Apple App Store having 2.2 million apps and Google Play Store offering 2.8 million apps (as of March 2017), this research is likely to take some time. In case there are fundings required, sites like Kickstarter and Indiegogo can be checked out. Idea-owners, in all probability, will also have to hire a mobile app company to work on their projects. Click here to check out the things that have to be considered while selecting an app agency.

The importance of knowing about the ‘App Triangle’ is also paramount, in this ideation phase. Think of it as an equilateral triangle – with ‘Quality’, ‘Time’ and ‘Cost’ at the three vertices. A proper balance across the three have to be maintained (i.e., the ‘App Triangle’ should be pareto-optimal). Changes in any one parameter will have repercussions on the others.

Second Phase: Wireframing/Feasibility Analysis/Prototyping

A seemingly good app idea might face many glitches during the implementation stage. To avoid such problems, a proper visual representation of the idea (basic sketches – showing the main screens of the app and how it would work) is required. Generally, such basic wireframing can be done with pen and paper, with more professional-level wireframing being required in the next phase. The technical feasibility of transforming an idea into an app also has to be closely analysed. In case it is found that working on a particular idea would be too complicated, it would be advisable to move on and start researching for another app idea.

Next up, the app-developers working on the idea would build a very basic prototype of the application. This prototyping is primarily done to get a first-hand experience of the ‘flow’ and the ‘touch experience’ of the app on actual devices (Android/iOS). For web-connectivity and backend functionality, APIs would be required (public APIs and custom APIs) – and these are examined in this stage as well.

Feedback is a powerful tool for judging the potential of a brand-new app idea. Owners should be proactive while sharing their ideas with other, reliable people (reliability is important here, since the ownership and the intellectual property rights of the app are at stake). Getting an idea checked from multiple perspectives would make it easy to form an objective opinion about it.

Third Phase: UI Design/Mockups/UX Design/Exhaustive Wireframing

Although ‘UI’ and ‘UX’ are often used as interchangeable terms, the two are not synonymous. The first refers to the actual layout of the app interface, including the graphics, animations, text, colors, and all other visual elements. ‘UX’, or user-end experience, on the other hand, is all about the overall journey of people while using the app. In essence, ‘UI’ can be considered to be a subset of ‘UX’. Before the start of the third phase of the mobile app development cycle, the distinctions between ‘UI’ and ‘UX’ have to be made clear. This article will be a handy read.

The first thing to come under the spotlight in this stage is the UX design. Prior to designing the interfaces with graphic elements, an idea of how an app would work and what type of experience it would deliver to end-users has to be formed. Building on from the sketches created in the previous phase, high-fidelity mockups (along with more detailed wireframes) are prepared now. For iOS applications in particular, storyboarding is also done during this phase. Storyboards provide in-depth insights about the overall app architecture and the likely behaviour of the target users.

The platform(s) selected for a new app as well as the ‘form factor’ of the hardware devices on which the app would work influence the UX plans. For instance, while working on an iOS application – designers have to keep in mind that iDevices do not have any ‘back button’. Similarly, the differences in the form factors of mobiles, tablets, phablets and wearables have to be taken into consideration (i.e., the differences in screen real estates).

After the UX and the app infrastructure have been chalked out, the focus shifts to UI designing. In here, the actual colours and graphics for the app are finalized, and the general in-app navigation is planned. App designers often refer to resources like Behance to get references on how to design a new software. As opposed to the plain B&W mockups required for UX design, colorful, graphics-loaded and professionally-styled interfaces are formed during UI designing. Once again, the choice of platform(s) for the app has a role to play.

Note: As a rule of thumb, app designing and coding (development stage, to be covered next) have to be done by different, specialized teams. Most leading app companies have separate teams of developers and graphic artists.

While deciding the UI and UX designs of an app, the platform-specific rules and guidelines have to be factored in. Apple developers have to follow the ‘Human Interface Guidelines’, while Android app-makers have to abide by the specified ‘Design Guidelines’.

Fourth Phase: Development/Agile Methodology/App Testing

To put things in perspective, ‘app development’ starts right from the point when a mobile company takes up a project. However, the actual coding starts from this phase. Broadly speaking, an app goes through 4 stages over here. The first is the ‘Prototype’ stage, where the software only has its main functionality and exists as a ‘Proof-of-Concept’ (PoC). Then, it moves into the ‘Alpha’ stage, when the app is built (the testing is not done), and most features & functionalities are incorporated. The third stage is known as the ‘Beta’ stage, and over here, some preliminary testing and bug-fixing is done (nearly all functionalities are now present in the app). Finally, the app goes to the ‘Release Candidate’ phase – where all testing has been done, and the app is set to be submitted at the store(s).

As an app goes through the four stages of development, its stability and functionality increases – while the number of bugs go down. In fact, testing generally starts from the design phase itself (for prototype testing). Apart from testing applications on simulators and emulators (both Xcode and Android Studio has built-in testing support), the software is also tested on actual devices, over the cloud, and through the various online app testing service tools – like Testflight (iOS) and Hockeyapp (iOS, Android, Windows). Click here for a more focused explanation of mobile app testing.

The initial deployment of an app (for testing) is generally done from the development engine/IDE (integrated development environment) itself. This, however, no longer remains an option as the number of testers/early prototype users increase. Of course, by this stage, the app-makers working on the project should have valid developer accounts.

In the domain of mobile app development, the focus has shifted to following an ‘agile methodology’ (as opposed to the traditional ‘waterfall methodology). In an agile environment, most development stages are iterative, testing happens at multiple points, and considerable importance is placed on preparing a ‘Minimum Viable Product’ (MVP) as quickly as possible – to get an early advantage. Things like the memory/bandwidth requirements of an app and whether it causes battery drain or any other form of device-related problems also have to examined carefully. For Android developers, the excessive fragmentation of the platform poses a unique, and rather tricky, challenge.

Fifth Phase: Final Testing/Launch/App Store Optimization

Provided that testing had been carried out during the previous, successive phases – the final round of app testing won’t take much time. Once again, developers themselves should not double up as testers – and a separate team of software testing experts have to handle the task. Also, a well-planned testing structure can reduce the overall time and cost associated with making a new mobile app.

After the testing stage is complete (good developers will never try to cut corners while doing this), the app is ready for takeoff…or, in more prosaic terms, ready for submission in the app stores. On average, it takes 4-6 days for a new app to be approved in the Apple App Store. For Android apps, the process is much quicker – with new apps getting approved within 3 hours. Apple introduced human reviews way back in 2008, while Google rolled this out in March 2015.

At the time of launch, due importance have to be given to app store optimization (ASO) strategies. Close to 80% of all download behaviour is triggered through organic searches in stores – and if an app does not come up in these searches, that would be a problem (relegating it to the category of ‘zombie apps’). The keywords, the app name, icon, screenshot(s), store descriptions and promo videos (for Android) form critical elements of the overall ASO plan. Find out more about ASO over here.

Final Word

Making a mobile app is not a ‘one-and-done’ process, by any stretch of the imagination. The initial reviews and ratings at the store have to be closely monitored – and if there are problems reported, the underlying bugs have to be fixed as quickly as possible. In addition, a mobile app has to be updated at regular intervals…and every time a new version is planned, the app development lifecycle (except, obviously, the first phase) has to be revisited.

Complete familiarity with the app development lifecycle is an absolute must for developers, before they take up new projects. It’s all about working in a systematic, streamlined, agile manner – and following the lifecycle allows development teams to do just that.

 

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me
 

Leave a Reply

Your email address will not be published. Required fields are marked *