The 5 Most Important Questions to Ask When Evaluating Enterprise App Platforms

on December 10, 2013

Investing in an enterprise app platform is an important decision for CIOs.  After decades of plodding along with traditional programming languages and development environments, many IT teams are desperately seeking alternatives to make application delivery much less painful, expensive, and cumbersome.  Promising to speed up the process from years or months to weeks or days, enterprise app platforms are finally offering much-needed light at the end of the tunnel.

Here’s the thing, though: not all enterprise app platforms are created equal.  Because it’s a nascent market with a glut of specialist tools, it can be difficult to navigate the vendor landscape and choose the best platform for your needs—now and in the future.  To help guide CIOs in their vendor research and selection process, we put together the following list of the 5 most important questions to ask when evaluating enterprise app platforms.

1. How easy is it to build applications?  Can non-developers actively participate in the process?

Facing growing demands from the business for new applications and functionality, CIOs need an app platform that eliminates traditional development bottlenecks, dramatically increasing speed, efficiency, and output.  With that in mind, you’ll want to pay careful attention to the platform’s development environment.  Be wary of proprietary programming languages requiring highly-specialized developers, as they tend to result in added complexity and cost without delivering much-needed productivity gains.

If you’re really keen on accelerating delivery, look for an app platform built around a new paradigm like visual, model-driven development (MDD).  In contrast to traditional code-based methods, MDD is simple, intuitive and extremely fast.  The entire project team (including non-developers or business analysts) can quickly create and collaborate on executable application models, intuitively understand and review the functionality, and easily identify and make changes.  Illustrating the efficiency gains, a Capgemini study found that MDD took only 2.5 hours per function point compared to 10.6 hours for Java and 15.5 hours for C#.  This productivity improvement alone can take a 6 month project down to 6 weeks. Imagine what this compression in time could do for your business.

2. Can the platform be used to build new apps and extend existing systems? Can it seamlessly integrate with any system?

Businesses typically leverage an enterprise app platform in two main scenarios: developing new custom applications and extending existing systems with new business-driven functionality.  Thus, it’s important to solve for both.  While certain platforms may be geared specifically towards extending specific systems (i.e. CRM), they may fall short in addressing your full range of application delivery needs.

Whether you’re building new apps or extending existing systems, ease of integration is a crucial factor that must be carefully vetted.  The reality is that for most businesses, integration needs extend far beyond a single application.  The key then is to identify a flexible platform that not only helps you build applications, but also allows you to quickly and seamlessly integrate the application with any existing process and system.  Look for capabilities like workflow integration, open APIs, prepackaged connectors and how easy or cumbersome it is to build the integration points you need. Also, in addition to the application level, don’t forget integrated development within your IT organization and existing development tools.

3. Are there capabilities to facilitate IT/business collaboration?

IT – Business collaboration can make or break the success of a custom application.  Unfortunately, far too many app platforms focus narrowly on the development environment, overlooking key collaboration capabilities that can increase communication, productivity, and successful IT outcomes.

To keep all stakeholders aligned and engaged throughout the development process, look for an app platform with social collaboration and project management capabilities.  Examples include Facebook-like activity streams for all users and projects; built-in chat for instant communication with the team; agile project management capabilities for creating user stories/requirements, assigning tasks and priorities, and tracking progress with scrum boards and burn-down charts; and fully-integrated, closed-loop feedback from end users that’s sent directly to the development team.

An easy-to-use and social collaboration environment, combined with a model-driven development approach that allows all project team members to speak the same language, will dramatically increase project outcomes.

4. Can the platform deliver truly multi-device applications?

Enterprise mobile applications are hot right now.  In the rush to meet surging business demands for mobile apps, it can be easy to forget that mobile is not—and should never be—an island.  For starters, mobile apps typically require integration with one or more back-end systems.  And because of different user needs and profiles, they almost always need to be accessed from multiple devices (web, tablet, smartphone).

Thus, CIOs must look for app platforms that are capable of delivering true multi-device applications that are integrated seamlessly with back-end systems.  In other words, your team should be able to build an application once and then make it accessible to the necessary users via the necessary devices (and with simple, intuitive UIs).  In the end, your business users all need the same app; they just consume it and interact with it in different ways.  Having to reprogram or rebuild apps for different devices or operating systems simply isn’t effective or scalable.

5. How fast and flexible is the process of deploying applications?

Deployment issues should not slow a project down or even really concern your development team.  When evaluating app platforms, make sure that application deployment is as fast and easy as plugging an appliance into a power outlet.  For instance, with platforms that use executable models (see question #1), you can deploy the application to the cloud literally with a single click.

In addition to speed and simplicity, flexibility is another important factor when it comes to application deployment.  While the cloud is often sufficient, there are many business and technical needs that necessitate alternate deployment options, whether private cloud, on-premise, or hybrid.  Thus, it’s important to evaluate whether the app platform can effectively support multiple deployment models.  Even if this is not an immediate need, requirements often change so having this flexibility can save you major headaches and hassle down the road.

We hope these questions help frame your evaluation process and select the right enterprise app platform.  If there are any important questions that we missed or other information that would be helpful in your search, please leave a comment below and we will try to address it.

Download eBook: 7 Keys To Better Business and IT Collaboration – Through Effective IT/Business Collaboration

  • Chris Hall

    The most basic question is “should we be investing in an App Platform at all?” Why? Because there are also some major disadvantages which should be weighed up with the many advantages. (1). Smaller pool of developers compared to, say, javascript+css+jquery+java/.net (2). Much smaller choice of cloud platforms when comparing, again for the sake of example, html+javascript+css+java/.net (can run on Azure, AWS and many other platforms) vs Mendix (which runs on.. Mendix). 3. Price transparency; Azure and AWS are completely open here, Mendix is extremely unforthcoming (“contact our sales team”) 4. Continuity. The ‘classical’ solutions, based on non-proprietary standards, are probably here to stay, at least for the next decade. Mendix is a very successful start up, but there are no guarantees that the Mendix platform will be around in a few years.

  • Hi Chris,

    These are valid points for companies that are still
    considering whether or not to adopt an app platform into their application
    delivery strategy. However, in most cases, (1) companies choose to use app
    platforms because they themselves have a small pool of developers at their disposal. In fact, there is actually an enormous pool of ‘app platform capable
    developers’ when you consider the relatively limited technical knowledge
    necessary to develop on one. (2) While our customers like being able to choose
    between private, hybrid or the Mendix (public) Cloud, we don’t see them
    concerned with which infrastructure provider they’re using as long as it’s
    consistent, secure, and provides the level of performance they expect. The
    Mendix Cloud is composed of top-notch infrastructure providers, and we’re happy
    to see that our customers and partners trust our Cloud Team to give them the
    best experience possible. (3) Azure and AWS are infrastructure providers, which
    are a commodity to most companies. In the future, you’ll see more pricing details
    on our website. Finally, (4) while we sure hope to still be around for many
    years, no matter what, the technology will live on, and we have to thank
    customers like TNT, Liberty Mutual, LV= Insurance, and Dun & Bradstreet
    (some of the most risk-averse companies out there) and our amazing partner
    network, who see the gained value in using an innovative way to rapidly build
    applications worth the risk in using a technology that began as a vision of
    three Dutch university students in 2005 and has grown to be a community of
    thousands of developers and backed by experienced investors. Without those
    early adopters, we wouldn’t have this blog to comment on in the first place.

  • Chris Hall

    Hi Eric,

    (1) Yes, I agree that the technical knowledge required is less. Much less! My own company’s approach, which is ‘traditional’ software development of a single commercial product, means html + javascript + css + jquery + xml + json + c# + sql server + Microsoft server + ASP.NET, and that is a lot of technical knowledge! Mendix offers many advantages here. In our own case we are a small company and swim in a sea inhabited by fierce competitors, so we prefer to master all these technologies so that we know that we can keep up with and, hopefully, stay ahead of the competition. But I can see how for large companies developing their own in-house applications/extensions to legacy applications, Mendix could be an attractive choice.

    (2) I disagree on this one. Our own product runs on Microsoft Azure. We use Azure because this is a name that everyone trusts. But we ensure we can move within minutes to AWS or another provider if we choose to do so (we keep test accounts with these providers for precisely this purpose). We do not want to be locked in to a single provider, no matter how reputable. We may want to switch, for example, because a new cloud provider is just as reliable, and much cheaper.

    (3) Transparent pricing would be very nice and I look forward to it.

    (4) Yes, congratulations on your clients (indeed TNT, a fellow client, is where I ran across Mendix, and I know they are very satisfied). Maybe these clients are not really taking such as great risk, however, because they limit themselves to non-mission critical applications? Having said that, however, I attended Mendix 2013 and was astonished to listen to a presentation by one of your clients, Kwik FIt. They really had bet the farm on a 2 year Mendix project. I came away thinking ‘wow, those guys took a risk!’ But it seems to have worked out well for them.

    Kind regards,