What’s so difficult about enterprise software development?
It is surprising that many companies don’t focus more on how they can better produce software. In this blog post, we review alternative approaches to application development and how they are becoming relevant to enterprise development teams.
Why is developing software solutions within the enterprise so difficult and fraught with failure? There are many commonly cited reasons :
The complexity and fragmentation of IT landscapes
Ever-changing business processes and requirements
The need to learn and integrate new technologies, such as big data, cloud, etc.
The difficulties of adopting new agile development methodologies
Alternative application development approaches
Most enterprises rely on (and will continue to rely on) programming languages like Java, C#, Python and SQL for the majority of in-house builds. These programming languages will continue to be prominent, but enterprises are addressing an increasing number of application requirements using packaged products and services. This includes SaaS products, packaged software from ERP vendors, PaaS and a new category of low-code application platforms.
In this blog post, we reflect on the choices that enterprise application development teams have when building new software.
ERP Software Packages for Enterprise Applications
Many of the large enterprise software vendors have sought to provide alternatives in the form of packaged software or ERP add-ons. Most ERP vendors have strong relationships with enterprises, and it is often an easy (read: politically correct) choice to partner with these large vendors to address new requirements.
Unfortunately, these offerings are often biased by each vendors’ unique approach. Oracle, for example, thinks databases first. SAP thinks business processes and Salesforce thinks user experience. Most enterprise software projects, however, require bringing all three elements together.
Further, it often doesn’t make economic or strategic sense to rely on an ERP vendor to deliver software for things other than core systems. Differentiating your business is difficult when you’re using the same software as your competitor! And we’ve all seen how hard, expensive and difficult it is to customize ERP systems.
Platform as a Service (PaaS)
Growth in the PaaS market is disproportional to other sectors, according to GigaOM, with some analysts estimating the market to be growing by 50% year-on-year. The growth in PaaS market follows from the success of Infrastructure as a Service (IaaS) offerings like Amazon EC2. If you can rely on cloud-based services to manage your physical infrastructure, it is natural to use a service-based platform to develop software.
There are a range of PaaS platforms on the market, including those from leading vendors such as Microsoft and Google. PaaS services provide a platform and environment to allow developers to build applications and services without the usual burdens of configuring an environment, procuring hardware or sourcing tools.
Many enterprises are skeptical of PaaS. For one, there are worries about lock-in as most platforms are limited to supporting only a limited range of technologies, and development managers are worried about how hard it will be to move from one cloud to the next.
A bigger concern is that many enterprises simply need more control and flexibility than they can get from PaaS platforms. In large enterprises, application performance and reliability are big concerns. Application development teams want control over ‘close-to-the-metal’ code in order to achieve processing performance goals. It doesn’t make sense to rely on third-party platforms for mission-critical or customer-facing systems.
High-Productivity Application Platforms
In response to these issues, a new class of ‘application platforms’ has emerged designed to help enterprise rapidly deliver business applications. Application platforms offer a comprehensive technology stack incorporating database integration, application logic and web app development to help teams develop applications without the usual complexity of integrating disparate tool sets. Many of these products present no- or low-code approaches to software development.
Application platforms are designed to address the common challenges faced by enterprise application teams.
Integrate with enterprise infrastructure and legacy systems
Reduce complexity with a graphical, data driven approach to development
Deliver better ROI by empowering small multi-functional teams (including front-end and back-end developers) to work together fluidly
Aptitude Software as a leader in the application platform market
At Aptitude Software, we have enjoyed seeing this new class of application platforms emerge. We decided years ago to market our own Aptitude platform as an Enterprise Application Platform at a time when there were few people that recognized ‘application platforms’ as its own product category.
Unfortunately, many application platforms (ours being an exception) are designed for smaller developments. They might be used to improve employee productivity or automate a basic business processes. And other offerings are really business process management suites (BPMS) that are inadequate for many software development efforts.
The Aptitude platform is an application platform designed for true enterprise requirements
The platform combines a high productivity development environment with a high-performance runtime engine. There are extensive application and data integration features, including the ability to generate code that can run in popular DBMSs. Other features include business activity monitoring (BAM), a powerful business rules engine and HTML5 Web forms support.
Conclusion: Alternative development approaches will continue to be prominent in the enterprise
At Aptitude Software, we’re thrilled to see the application platform market evolve and for vendors to provide an alternative to traditional code-based software development or relying on ERP ‘packages’. Today’s enterprises need to build dynamic software more quickly than ever, while handling massive data volumes – and certainly many new options are available when considering new requirements.
If there’s a place in your firm for new ways to design, develop and deploy data-driven enterprise software systems, we’d enjoy to introduce you to the Aptitude platform. Please get in touch.
You can adjust all of your cookie settings by navigating the tabs on the left-hand side.
Our website uses strictly necessary, functional and targeting cookies to enhance your overall experience, to analyze your use and assist in our promotion and marketing efforts. If you click the ‘Accept all cookies’ button, you are agreeing to have these cookies on your device. You can also adjust your preferences for each cookie category by clicking the adjust cookie settings using the menu at left. See our privacy statement.
Strictly Necessary Cookies
Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.
If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.
Functional Cookies
This website uses Google Analytics, Marketo, CrazyEgg and Google Conversion to collect anonymous information such as the number of visitors to the site, and the most popular pages.
Keeping this cookie enabled helps us to improve our website.
Please enable Strictly Necessary Cookies first so that we can save your preferences!
Targeting Cookies
This website uses the following additional cookies:
Google Tag Manager, Pardot, LinkedIn
Please enable Strictly Necessary Cookies first so that we can save your preferences!