It’s go time. You’ve won approval from your CTO, your development teams are on board, and it’s time to get started. You’re about to begin building your organization’s first mobile app.
Now comes your real challenge: If you’re only just now beginning your mobile journey, you’re already way behind the curve.
Software development has changed dramatically in recent years. The giant, monolithic enterprise applications of yesteryear are steadily losing ground to a new style of IT. In this new world, business workflows are increasingly being conducted as chains of lightweight interactions, carried out via one or more apps running on mobile devices.
Large enterprises recognized this some time ago, which is why many of them already have dozens or even hundreds of bespoke apps in deployment. It’s how they’ve adapted to the accelerating pace of the modern business world.
That early start has given these businesses a huge advantage. But believe it or not, their success is good for the little guys, too – because it means the big players have done the hard work and taken the big risks. Today, by applying the lessons enterprises learned along the way, even smaller organizations can sprint forward and go from mobile laggards to mobile leaders.
Don’t Bring Track Shoes to a Car Race
The first thing to realize as you embark on your first mobile project is that in the mobile world, “slow and steady” can be harder than it sounds. Your first app most certainly will not be your last. And as you start to deliver, expect demands from the business to balloon, with multiple divisions requesting new features or entirely new apps.
Because of this, even if your ambitions are modest now, it’s important to choose tools and processes that will continue to enable your success into the future, beyond the limited scope of the projects you may envision today.
Don’t Think Limestone, Think Lego
It’s also important to recognize early that mobile apps often comprise much more than just code running on handsets and tablets. In many cases, the mobile app itself is really only the face of a much larger application, where the real heavy lifting is handled by code running in the data center – or with increasing frequency, the cloud.
Because of the wide variety of specialized features that mobile apps demand – from authentication and security, to data storage and connectors for ERP systems and other applications, to push notifications and more – this backend code is seldom built in the monolithic style. Instead, modern applications are increasingly built as collections of microservices: small, purpose-built services that are then composed – essentially, fitted together like Lego bricks – to create apps.
This is where a high-quality, open standards-based mobile backend as a service (MbaaS) solution can really come in handy, for two reasons. First, small organizations often simply lack the resources to develop and maintain DIY mobile backend service platforms on their own. Second, choosing a prepackaged platform makes it easier to standardize those same services for apps across the entire organization, which both reduces the amount of redundant effort and makes the entire code base easier to manage.
Try This Year’s Model
One method of composing microservices-based applications that’s gaining popularity is known as model-driven application development (MDAD). It’s a technique that should be familiar to engineers from the world of large-scale enterprise software development, but it’s now gaining traction among mobile developers too, thanks to the relatively recent introduction of MDAD tools that support the unique requirements of mobile apps.
MDAD helps accelerate development of mobile apps by allowing developers to build them based on software architectural models that support a microservices approach. The MDAD tool uses connectors and business adapters to draw from a variety of backend data sources and then generates code objects that provide the desired app data model. These objects then allow apps to be assembled rapidly, while at the same time increasing code consistency, maintainability, and reuse.
Apps, Fresh Off the Factory Floor
By taking advantage of these techniques – along with modern development best practices including agile methods, continuous integration, and the cloud – organizations can accelerate their mobile journeys, both by creating efficiencies and by reducing pain points unique to mobile development. The overarching goal should be to move to what’s known as an “app factory” methodology, where apps can be delivered on a steady cadence with streamlined, predictable lifecycles.
And while all this may sound daunting, the important thing to realize is that you needn’t be a giant enterprise to take this approach. Tools and platforms to help get you on your way are available today, and the investment they require is nominal.
That’s particularly significant when you consider the alternative. Too often, mobile initiatives that aim to “start small” become stalled when the team realizes the full scope of their first project. But by starting smart and laying the groundwork for an efficient software delivery process before you begin, it’s possible even for modest-sized organizations to become frontrunners in the mobile economy in much less time than may seem possible.
Edited by Alicia Young