The mobile solutions world should ideally be an antenna that absorbs innovation before it matures and delivers it to business and help them establish benchmarks. Successfully adopting innovative tech into their strategy is the key driver for any business to thrive. Many players including individuals and corporations are eyeing the enterprise space as the playground for innovative solutions and practices tried and tested in the consumer space. The competition is fierce because of the incentives and because of the pre-mature nature of the stage not every idea is guaranteed to work.
This brings us to the topic of our webinar: Nurturing Your Product For The Mobile Ready World – A Glimpse Of Product To Concept Engineering Services.
- Mobility in Numbers
- History of Product Development
- Concept to Product Expectations
- Why Agile is a Preferred Product Development Strategy
- What are the Product Lifecycle Phases?
- Best Practices
Mobility In Numbers:
Industry analysts like Gartner, HBR, Geneva Study & IDC predict the following ‘Demand vs Supply’ trends for the coming years:
- On average, businesses estimate spending 11% of their 2014 IT budgets on custom mobile apps and related technologies
- By the end of 2017, Mobile App Development demand will be 5 times more
- 70% of enterprises will have citizen development policies by 2020
- One in six projects have a cost overrun of 200%, on average, and a schedule overrun of almost 70%
- 75% of business and IT executives anticipate their software projects will fail
- Survey on New Application Development indicates that there is a 4% chance that the project will come in on time, on budget, and not lacking critical features
There are over 500, 000, 000 iPhones and Over 900, 000, 000 Android devices have been activated and consequently, There are thousands of apps out there that nobody asked for. So, we come to the question: How can we make sure we build something people actually need?
The Burning Question: Why Apps Fail?
Common reasons/factors that lead to the failure of an app are as follows:
- Lack of funding
- Bad timing
- Lack of competence
- Premature Deployment
- Bad Idea
- Lack of user validation
They also fail because they do not meet end-user, developer, and enterprise expectations. Given the context set so far, let’s look at the right way to go about developing a successful mobile application.
History of Product Development
From the traditional mainframe, client server, internet, and 3-tier web applications the focus has shifted towards creating modern apps which are responsive, hybrid apps that work on multiple mobile OS and native applications. It is safe to say that, the number of applications created for the latter category is considerably high than the former. The IT infrastructure has changed from a self-hosting model to a service based model where apps are run on the Cloud.
Therefore, the way the apps are developed must also change in order to fit in with the changing IT landscape and meet customer expectations.
In the Android and iOS, we are currently looking at a new release every year and considerable number of number of devices still running old software, especially in Android. OEM’s tend to differ put in unique capabilities for their own devices and thus increasing fragmentation and complexity. When this is compared to the traditional web platform, there is a possibility that the browser is upgraded once in a year.
How To Nurture a Product:
The trend that we observed in our foray in the app development world could be summarized by the following infographic:
The problem is with above approach, even though it looks perfectly logical, there is no system that would factor in what the customer would want. This is the desired situation that every enterprise needs to begin with:
Ideally, data, over multiple cycles, should drive should our decisions when it comes to the mobile app development. The next stage, product-engineering lifecycle for an enterprise are as follows:
- Building new functionality while keeping costs low
- Providing flexible resource models and coordinating multiple product releases
- Improving process, workflow and productivity
- Managing quality and keeping customer satisfaction high
Why Agile is a Preferred Product Development Strategy:
The agile methodology is the best suited for developing the enterprise app because of iterative build->deploy->test nature. Other advantages that agility offers are:
- Avoid Risks allowing you to adapt to requirement changes
- Iterative development helps with turnover on OS and Hardware changes
- Good process lets you focus on what you want to do
- The importance of getting it right the first time
What are the Product Lifecycle Phases?
For a predictable and successful delivery of a mobile app, it is recommended that the following 4 steps are observed:
Ideation and storyboarding:
The individual aspects of the ideation and storyboarding phase are:
- Product owner drives this
- Interviews, Competitor Analysis
- Use Interactive Wireframes to define/refine the problem validation
- Explore the need for a MVP
- Get customer/stakeholder feedback
- Validate the problem/Refine
- Create product backlog
- Prioritize the backlog based on feedback
Design and development:
This is executed in sprint cycles and at the end of each sprint there is a working model delivered which can be practically tested with a control group. Based on the feedback and the sprint backlog the project moves to the next iteration. It should be mentioned here that the development, scrum, and testing teams get involved before the product reaches the controlled users in each cycle.
Typically, testing is done only at the end, after the product has been developed to meet all its requirements, but in agile, the product is tested at the end of every sprint cycle. Agile brings in the concept of continuous integration that uses tools like Jenkins. Nightly builds are created which helps us maintain the quality of the product. The main aspects the quality test is designed to check are, compatibility to numerous OS versions, data and penetration security, performance related to memory, load and synchronization, and consistency.
Optimization and monitoring
Monitoring the app at the hands of end users help us determine the most used features and give us the direction to focus on for subsequent releases. Organizations must make use of the right keywords and tags for their product on app stores so their products are discoverable. They must also look at the reviews left behind to get feedback from users and implement good suggestions left behind.
- Have a real product owner that interacts with the customer, keeps an eye on the big picture and strategy.
- Have a proxy-product owner that takes care of the day to day operations and works with the real product owner to define and prioritize the backlogs etc.
- Focus on creating a MVP that will act as a learning vehicle for a minimum marketable product (MMP).
- Use of tools like JIRA, Jenkins, UI Automator, etc. to keep track of the velocity of product and quality respectively.
Ritwik Bose is the Director of Enterprise Mobility at Impiger Technologies. He is an IT professional with over 12 years of experience. Ritwik has a streak of converting raw business opportunities into successful multi-million dollar deals in the mobile space.
Lokesh Natarajan is the Director of Mobile application development at Impiger Technologies. A veteran of 13 years in the industry, Lokesh has been instrumental in deploying numerous high impact solutions that have transformed many Fortune 100 companies
Pradeep Gwalani is the VP of software development at Impiger Technologies. He has over 17 years of experience in the industry and has covered an eclectic range of technologies and business domains. A multitude of the projects he essayed now powers multiple Fortune 50 companies.Tweet