Does your organization have an overall mobile app strategy? It should, if you want to produce workable apps that cost less to develop, get released on time, and achieve business objectives.
In more than one-half of the enterprises we talk with, different teams are building apps independently of each other. One team may be building the same features as another, but since they aren’t sharing information, development costs are higher.
It reminds me of the adage, “Don’t reinvent the wheel.” By sharing resources, using common tools, and reusing frameworks, companies can rein in costs and bring out mobile apps quicker.
Contact us, and we’d be happy to help put the proper structure in place at your organization. But you basically need to develop three things.
1. Enterprise focus. This team drives the mobile vision and strategy across the enterprise. It should include key stakeholders from major business lines, developers, product managers and C-level executives. They will set the overall strategy, which should be as device-neutral as possible and recognize that a dominant platform today might be marginalized tomorrow.
2. Blueprint for mobile strategy. Your enterprise team will develop the blueprint, or roadmap, that outlines your organization’s mobile strategy. It should be socialized and agreed upon. It also should flow from the top down, not the bottom up.
3. Reusable mobile framework. Now that you have an overarching mobile strategy and a workable roadmap, it’s time to start developing the frameworks you will need before you start creating apps. A reusable mobile framework should include:
Each of these will help to bring consistency and structure to your app development efforts and allow you to share coding components across apps.
So now you’re ready to build apps, right? Well, not quite. The same measured approach your organization takes to developing an app strategy should also be applied to the actual creation process.
The first step is to define, prioritize, and articulate the user stories you want for your upcoming apps. Many companies rush to engineering without considering what the apps will do and why. Even the best designed apps will fail if they don’t help the user or help a company meet its objectives. You should be thinking 3, 6 and 12 months ahead. What are you trying to accomplish, and how will new mobile apps help achieve those goals?
Once you have a list of apps, prioritize them and get buy-in from key stakeholders. Then break each proposed app down into its components and articulate how each feature will work across various apps. How many of those components overlap? Those overlaps are where you will save money and time on the actual creation through reusing common components.
Next, you should create conceptual models of the major components of an app and map how they will interact with one another. Examples include touch points, interactions, and the role each component plays.
The final step before app creation is a detailed design of the app’s attributes, behaviors and functions that should also include a mobile-focused user experience. This will help drive a logical, documented creation process that will make reusing components easier.
First, congratulations for following a step-by-step framework that will allow you to reuse components. But there are two more steps that many organizations, unfortunately, don’t take the time to complete.
You should create a reference application that shows how an app works in real-life applications: how it’s used, how it works, and how it operates. This visual manifestation helps technologists understand the app and business stakeholders recognize its value. Companies that follow best practices create a list of configurable components.
Finally, put a governance process in place so you can iterate and repeat the process. We recommend a mobile Center of Excellence or mobile teams that meet regularly to keep the organization on track to standardize app creation and reuse components where possible.
If you need help getting started, Pyramid has the expertise to help. We also have software frameworks that enable fast, efficient, and robust application development.