Craig Terblanche, regional director of OutSystems SA, discusses exactly what developers and business owners need to know before dipping their toes into the choppy waters of the app development world.
In response to a business pain, you’ve dreamed up a great new app idea and have embarked on a litany of Google searches that probably involved the words “how to build my awesome new app”.
You are thinking: I have the app that business needs. Well, you’ve come to the right place. App development is only treacherous without a sound strategy backed by technology – such as a best-of-breed development platform. Terblanche warns: “Some brilliant developers or business owners, with amazing app ideas have tanked because they didn’t consider their strategy well enough beforehand.”
So in an effort to help you build a great app, let’s do a little homework.

Start lean
“Taking a lean start-up approach to the development of the app is ideal. Before trying to take an app to market, first identify key market segment/s and then make some assumptions about the problem being solved for each of them,” says Terblanche.
Assume that the target market is spending time or money trying to solve a problem – but are they really? Those assumptions should be validated through testing. Craig explains that the best strategy to adopt is a minimal viable product (MVP) approach.
An MVP is a trimmed down version of an app (a prototype) – containing only those features that will make it deployable. Then the prototype can be deployed to a subset of the target market – the ones that will grasp the product vision and provide critical feedback; enabling you to test whether the product is worth the effort. An MVP further allows you to test one feature at a time with each target market, truly validating the app concept before it’s launched.

Natives get pretty restless
What app are you developing?
An app developed for a specific device to take advantage of its unique features is a native application. A quick-and-dirty native app might seem like a hot ticket, but remember that as the app rolls out your code won’t play with the operating system of other devices. Craig explains: “When developing an app for business, remember that there is a Bring Your Own Device (BYOD) culture out there, and developing native apps slices the target market into bite-size sections and appeals to the biggest slice to try it despite its one-dimensional functionality. It also limits your ability to integrate seamlessly to backend or public services.”
The opposite of native is to develop the app on a web-based platform such as HTML, CSS3 and JavaScript. Craig adds that, “Web-based gives you the edge, in that it’s faster and cheaper and enables scripting once across multiple devices.” The only dark cloud is that web-based apps don’t take advantage of specific features. However, eliminating the need to develop the same app across various devices is a compelling silver lining.
And then, there was hybrid – which splices the best native app capacities with the best web-based capacities. Unfortunately, no mobile browser comprehensively supports HTML5.

What’s in your toolbox?
If you are a business owner and you aren’t coding it yourself- you’ll need developers. If an IT team is on hand, make sure they have the skills required to realise your dream app. If they don’t, they’ll have to either acquire the skills or outsourcing may be required.
Keep in mind that during development, screaming technicalities could pop up that haven’t even been considered and that might slow down the process. The alternative is to choose an app development platform, like OutSystems Platform, that allows for the development of multi-channel apps quickly by eliminating the need for time-consuming hand-coding and utilising the resources on hand -crushing the cost of outsourced expertise and reducing the dependency on scarce skills.

There will be bugs
By utilising an MVP model you have already received user feedback, and know what to tweak or add to the app that will ultimately make it better and more competitive.
However, successful apps have to keep up with ever-changing operating system updates and you’ll need to be able to roll with these punches.
Says Terblanche: “Apps have to be flexible; constantly changing and evolving at a moment’s notice.” This is why app development platforms need to make rapid iteration as simple and seamless as possible.

There’s a more civilised solution
The old adage of working smart not hard is increasingly applicable to the app development world. The truth is, as the demand for apps grows app development platforms also grow. Terblanche explains: “This is exactly why OutSystems Platform exists and why we are pushing the message that partnering with us allows you to evolve alongside technological developments. We truly believe our product enables developers and businesses to evolve and innovate.”
Using this platform to develop apps means developing user interfaces without having to learn new skills or outsource, that harnesses the power of HTML, CSS3 and JavaScript. OutSystems Platform also enables developers to design apps that are multi-channel ready from day one using open, industry standard code and supporting your “full stack”. In one development environment a developer can design mobile user interfaces as well as the backend that integrates with legacy systems and cloud services. And, they are doing it visually, many times faster. And with cloud computing gaining traction, developers will have to ensure that they are able to create, deploy and manage their apps in the cloud or on-premises.