01 Mar 2017

Application Development Must Modernize

Major obstacles threaten to derail achievement of strategic business goals and revenue growth

Modernising Application Development

Increasingly, technology is the core differentiator and chief competitive asset for business, a fact that presents IT with an unprecedented opportunity. Yet rather than standing at the forefront of innovation and capitalising on its prospects, IT is struggling under the weight of application development inefficiencies that are undermining its strategic goals, hindering new growth opportunities, and jeopardising its overall standing as a valued and strategic business partner.
Through the years, a less than flattering portrait of IT has emerged as business needs shift to technology-driven innovation and away from IT’s traditional break-fix operational focus. In this new vision, IT is expected to lead with ground breaking technology business initiatives that drive efficiencies, open doors to new revenue streams, and foster more collaborative ways of working. However, the reality is that IT is stuck in a development cycle where it has little flexibility for change and is frequently late to the game with new systems. When released, applications are often not up to par, and in many instances, misaligned with business requirements that have since evolved during the slow development process.
This negative perception of IT is grounded in some eye-opening statistics. The Standish Group’s bellwether CHAOS report has shown only a small uptick in IT project success rates over the years: In 2012, 39 percent of projects were delivered on time, on budget and with the required features and functions, up from 32 percent in 2010.1 In addition to lackluster project success rates, IT’s efforts appear to be misdirected for the new age of innovation. According to Gartner, a whopping 80 to 85 percent of IT budgets remain directed toward so-called “Keeping the Lights On” (KTLO) activities—essentially maintenance projects—as opposed to the kinds of technology initiatives that place IT at the vanguard of innovation and efficiency.
The IT backlog remains a crippling problem, with IT organisations unable to handle the rapid-fire pace of changing business requirements.
IT is even having a hard time keeping up with its bread-and-butter maintenance activities. Thanks in part to smaller IT budgets and/or lack of resources and skill sets, the IT backlog remains a crippling problem, with IT organisations unable to handle the rapid-fire pace of changing business requirements.
Armed with traditional application development tools and practices, most IT organisations are not equipped to release new applications and updates any faster than every six to 12 months. While these milestones may have been acceptable in years past, they no longer meet the needs of modern business, which expects results in days or weeks, not in months or years.
Business users,  red of waiting for IT to get around to their projects, are now taking ma ers into their own hands and finding alternative ways to address the backlog. Many have turned to so ware-as-a-service (SaaS) solutions, which can easily be deployed without IT intervention, or are building their own applications using user-friendly tools. This phenomenon, known as “shadow IT,” if undertaken outside a centralised IT strategy, may add to the burden instead of easing backlog. That’s because IT typically inherits support and maintenance tasks for these applications even though it wasn’t involved in development and deployment.
This troubling application development scenario only serves to compound IT’s already tarnished image in the enterprise. With backlogs and technology-related costs on the rise and user frustration mounting, IT is in serious danger of getting left behind, pigeonholed as ineffective by business and losing ground in the eyes of executive management.
However, the failure doesn’t rest solely on IT’s shoulders, however. Rather, the problem lies with outdated application development platforms and processes that are hard to use, as well as the delivery of applications that are difficult and expensive to maintain.

These Outdated Platorms Fall Short in Five Critical Ways

1. Speed Market
It doesn’t matter if it’s the high-tech electronics market, the healthcare sector or almost any other vertical industry—the escalating pace of business process change is mounting pressure on IT organisations to be more responsive and push applications out the door faster.
Compounding the need for a more agile IT response is business users’ changing expectations for near-instantaneous delivery of application functionality. Primed by consumer technologies like mobile apps and SaaS applications, which can be spun up and activated in near real time, business users no longer have patience for the laborious and drawn-out requirements-gathering and development cycles that have characterised traditional IT rollouts.
Long-standing development methods of hand coding in procedural languages like Java, C# and COBOL, or using more modern languages and frameworks like Hack, Rails, Django, Angular or even HTML5, are just too slow and demand too many specialised resources to hold up under these new rapid delivery requirements. Compared with more modern practices like model-based development and automation, hand coding applications is too complex and presents far too many opportunities for error, especially when dealing with the inevitable slew of integrations that will be necessary for both new and legacy applications.
Business users no longer have patience for the laborious and drawn-out requirements-gathering and development cycles that have characterized traditional IT rollouts.
In addition, hand coding applications make IT teams too dependent on a limited number of individuals with specialised skills. If an e-commerce platform or HR system needs an update or a bug fix and there’s only a handful of .NET programmers up to the task, IT’s ability to respond is fully dependent on those individuals’ availability. In addition, there is no opportunity for recalibrating workloads if everyone on the team doesn’t have the exact same skill set or if specialised talent moves on and leaves the department with a void.
2. Deployment Inefficiencies
IT is trying to address these inefficiencies, but it’s doing so by modifying traditional processes using traditional methodologies and tool sets—a strategy that can’t possibly accommodate today’s demands for development agility and flexibility. For example, the waterfall development methodology employs a process that requires everything to be designed up front prior to testing an application. This practice is a root cause of IT’s months-long delivery cycles. Moreover, it is not sutainable as a primary development method given the rate of change when compared with more incremental and iterative methods that allow for agility and flexibility.
In the same vein, a heavy reliance on manual processes—whether hand coding the application in Java or some other procedural language, or writing scripts to automate pieces of the software build—also strains IT’s ability to reliably hit accelerated delivery targets. Because development and operations teams have historically operated in silos, they are using different point solutions that are not integrated or coordinated, leading to inefficiencies and errors when handing off applications between functions. This dysfunction also exists within each of those silos as the lifecycle of an application flows across build, deploy, stage, promote and manage stages, as well as across different environments.
IT’s inability to move beyond sequential development practices, manual coding and siloed groups for development and operations takes a toll on delivery schedules in another way. Because the application development process becomes so protracted, there’s a greater chance that requirements will change, making the application or enhancement obsolete before it’s ever released and dealing another blow to IT’s reputation.
3. Sourcing Technical Talent
Keeping an organisation current in all the relevant development technologies is another major obstacle hampering IT’s development capabilities, especially given the pace of advancements. Mobile and Web applications demand new skills, from HTML5 to responsive design (or even device-specific knowledge) to an alphabet soup of new languages and frameworks, and it’s next to impossible to find the talent, not to mention the budget, to employ specialists in all the various areas of required expertise.
Not only are IT organisations challenged with recruiting the next talent bench, but it is expensive and time-consuming to retrain existing developers in the new skills when there is work to be done and a shortage of able bodies. Those individuals in IT who are well-versed in the latest technologies are indeed critical assets, but there’s a risk of being too dependent on a small cadre of developers who could leave at any time or who simply don’t have the capacity to handle current work- loads.
IT organisations find themselves grappling with scale at a time when all hands on deck are needed to deal with the growing backlog and shortened application delivery time frames. With continuous iteration and application maintenance the two biggest requirements on IT’s docket, it’s incumbent on the organisation to find new ways to do more with less, while retaining internal IT knowledge.
4. Maintaining Legacy Systems
This brings us to the issue of maintaining legacy systems, which is perhaps the biggest challenge straining IT’s already strapped resources. When considering the total lifetime cost of building or buying a new application, experts say that nearly half of the overall expense is directed toward maintenance, including enhancements, break-fix tasks and other related operational expenses. The more complex and older a system is, the more time and money IT has to devote to change and enhance it.
The maintenance burden is multiplied with monolithic packaged applications like ERP. While most companies buy such a packaged application for its best-of-breed standard processes, they inevitably customise it for their own specific differentiating and innovation processes, which complicates support and maintenance.
The reason is that these monolithic platforms have not been built for change. Therefore, trying to bend them with customisations meant to address new business processes is very difficult and expensive. It also creates a maintenance nightmare that could possibly preclude future package upgrades. A case in point is the growing number of high-profile ERP implementations that have been abandoned due to complications resulting from customisations and ongoing maintenance.
The maintenance burden is multiplied with monolithic packaged applications like ERP.
5. Incurring Technical Debt
When IT doesn’t have the time to build a solid software architecture the first time around, it begets a trail of costs related to fixes and thrown-together enhancements that stack up over time and create a house of cards—a concept known as technical debt. With Gartner’s benchmark calling for system replacement every five to seven years, in addition to moderate changes in between, there’s ample opportunity to incur some serious technical debt—while creating unsecure, nonscalable and error-prone systems if IT doesn’t make the proper changes.
Let’s also not forget the fact that there are more interdependencies within systems, thus increasing the risk that making changes or enhancements to one part of the system will cause breakages or spark problems with other areas down the line. In fact, research shows that the costs related to making changes to applications can be as much as 10x to 50x more expensive than the original cost of developing the system.

Changing the Development Game

With so much at stake, IT can’t afford to press on with outdated application development practices that obstruct rather than facilitate its ability to address the high cost of software change and keep pace with continuous delivery of core business value.
The first order of business should be to replace manual software development, deployment and management with new ways of working that are more iterative and agile in nature. Leveraging practices like model-driven development as opposed to hand coding in a procedural language can go a long way toward reducing new application build-and-ongoing-change cycles, while simplifying complex integrations to existing systems. A model-based development approach also aids in the retention of IT and application development knowledge, reducing reliance on a handful of key developers or being held hostage by expensive and ine ective outsourcing arrangements.
Automating wherever possible will help ensure fast delivery of applications, while priming IT to accommodate continuous change. High-productivity application development platforms can deliver full visibility and control over application changes, facilitate release management, track global dependencies, and promote self-healing in an effort to dramatically compress development and corrective maintenance cycles. Moreover, such solutions and practices also facilitate “built to change” applications, ensuring that IT can easily modify and enhance applications—without breaking anything and delivering nonfunctional requirements such as security, scalability, reliability, performance and documentation that help to minimise technical debt.
Automating wherever possible will help ensure fast delivery of applications, while priming IT to accommodate continuous change.
IT organisations also need to rethink the siloed mentality between development and operations. Fostering a culture that connects both groups, coupled with the adoption of platforms that integrate capabilities that cross both functions, will go a long way in facilitating teamwork between groups, reducing errors and accelerating application delivery time frames.
Never before has IT stood at such a crossroad. While there is a tremendous opportunity to play its most strategic role yet, IT has no hope of moving past the unsustainable KTLO mentality to a new model that embraces change and continuous software delivery without transforming its long-standing application development practices. Only by embracing a modern-day approach can IT break through the barriers and take its place at the table as a serious—and strategic innovation partner to the business.
2017-03-10 at 7.34 PM

Free E-Book

Why IT Struggles With Mobility

Download our e-book and learn how to avoid 3 years of app development nightmare.

About Rainmaker Labs

Rainmaker Labs Private Limited (BRN: 201107298M) is a venture capital backed technology company that has been live in operations since March 2011. Headquartered in sunny Singapore, we are a fast growing technology company specializing enterprise mobility solutions. By providing state of the art enterprise solutions to our clients, Rainmaker Labs is leading the way businesses use mobile solutions to interact with people, customers and partners.
Rainmaker Labs understands enterprise mobile technology and we leverage on our domain knowledge for our clients to take advantage of tremendous opportuni es within this space, enabling them to extend and extract addi onal value from their IT investments.
We at Rainmaker Labs pride ourselves in Research & Development – to ensure we provide cutting edge competitive advantages for our clients. Our emphasis on partnership and collaboration with our clients makes us the best fit for driving digital transformation.
To learn more about Rainmaker Labs, please visit us @ http://www.rainmaker-labs.com