The Next Generation Of In-House Software Development
Read in 17 min. How leading-edge companies are streamlining applications development.
A Business Trainer from
Albert is available for projects both virtually and in-person. Enquiries will go direct to Albert.
In spite of those advantages, custom-built applications are still very much a part of the IT landscape. Companies in many sectors spend well over half their applications budgets on custom software, used largely to enhance, support, and operate customized systems. For large companies in competitive, fast-moving industries such as telecommunications, financial services, high tech, pharmaceuticals, and media, those outlays can run into hundreds of millions of dollars. Banks, for instance, frequently build custom applications to support new financial products or to manage risk. Pharmaceutical companies regularly build custom applications to support R&D and marketing activities.
Even when a company uses off-the-shelf applications, it frequently customizes them, typically by adding modules that provide a distinctive capability. A high-tech company, for example, installed a suite of packaged enterprise-resource-planning applications but also built a customized cash-management application to supplement the ERP product's plain-vanilla finance functionality. Unfortunately, even a little customization here and there quickly adds up. Worse, when companies must revise systems to meet new business needs, changing interconnected, customized applications can be difficult and costly, and upgrades to customized applications usually cost more than those to packaged software.
Nevertheless, some pioneering companies have found a way to capture the benefits of packaged software in a customized-applications environment. They have adopted the approach of software vendors, which package and sell applications aimed at the common needs of many customers rather than of individuals, by writing an application once and then selling it many times. In this way, pioneering banks and media and pharmaceutical companies have reduced the complexity and cost of managing applications and speeded up the deployment of new or updated ones.
An approach some companies have used to turn elements of custom-applications support into packaged activities involves standardizing the maintenance, support, and software-management activities that groups of applications share. Applications that support field service work, for instance, may undertake similar functions (such as call planning) or incorporate similar types of tools (such as calculators, diagnostics, or checklists for customers). A company can define the management of common elements among applications as standardized "products" designed to provide for the needs of many applications rather than one. Similarly, it can assemble new, custom-built applications from common, internally built modules of functionality and then reuse services developed by its teams to undertake common tasks such as authenticating users or accessing attributes of customers or products. Like software vendors, such a company writes the code once but uses it frequently?a tactic made possible by creating application interfaces that incorporate broadly accepted standards such as those from the Web Services Interoperability Organization.
The upside of this approach is now quite clear. One company that adopted these support and maintenance principles reduced spending on applications maintenance by 30 percent?amounting to 60 percent of the entire applications budget?and speeded up the deployment of new applications, thereby completing in two to three weeks what once took two to three months.
Focusing in-house applications management on such products can be challenging and clearly isn't right for all companies. The payback will be greatest in fast-moving sectors. Companies prepared to try will be tempted to seek solutions for the problems of today's applications portfolios rather than those of tomorrow's?problems that are inevitably harder to pinpoint and understand. But treating support services as products is all about building for the future. Companies will need to change how they organize support resources, perhaps even overhauling IT governance structures to ensure the appropriate funding, oversight, and accountability of a very different applications environment.
Turning applications management into a product
To understand what the leading companies are doing, it's worth dividing the expenditures for custom-made applications into two parts, each requiring a different strategy. One part is identifying and codifying into software the business rules that give a company its competitive edge?rules like "If a physician is unaware of our product, give her the benefits message" or "If patient compliance is an issue, discuss tools for improving compliance." This is a development task.
The second part of spending on custom applications?accounting for 50 to 70 percent of their total costs?involves managing them over their lifetime. This task includes selecting the applications tools to use, determining the service levels users require, rolling out applications, operating them at target service levels, maintaining them, providing ongoing user support for them, and eventually retiring them.
In most companies today, the IT and business teams involved in developing a custom application decide independently on the type and version of the applications tools and deployment environment it will use?the server, the database, the portal, and so on. Decisions about service levels (such as availability) and policies on data storage also are made ad hoc. Such applications end up as complex beasts to manage, typically requiring a host of maintenance and support processes as customized as the applications themselves. There will be differences?sometimes major?in how they meet the demand for split-second response times or what must be done to change the reports that they produce.
More companies are setting standard levels for infrastructure services?including standards for server availability, storage capacity, and network performance. Yet the way teams manage end-user enhancements, maintenance, and support for applications still varies widely. These variations lead to spotty utilization, reduce productivity, delay the rollout of new applications, and impair the ability to meet user expectations consistently.
In response to such problems, companies have tried to reduce labor costs by, for instance, offshoring the maintenance of applications and consolidating them in shared service centers. Consolidation improves utilization (fewer machines and people are needed) but rarely raises the productivity of IT maintenance, because the diversity of maintenance and support activities doesn't go away. Similarly, offshoring can reduce per-hour labor costs, but companies (either in their captive offshore centers or their outsourcing vendors) typically do little to reduce the underlying diversity in the maintenance processes for applications. Indeed, without investment in a level of on-site support or strict adherence to processes, geographic separation may only exacerbate the problem.
But these processes can be standardized, as some leading companies are demonstrating. A company may have thousands of applications, but we've found that, for most organizations, they can be clustered into fewer than a dozen archetypes?our term for applications grouped by their key commonalities. Archetypes naturally vary by company, but broadly speaking they can include applications that support a large number of customers primarily on the Web, provide data-intensive analytical support, track performance and provide dashboard summaries for senior executives, or offer highly regulated transaction support.
The important point is that, within these archetypes, the requirements for applications management are strikingly similar, so maintenance and support can be standardized. All "road warrior" applications, for example, need tools that support offline work, the offline-online synchronization of data, PDA form factors, and early-morning and late-evening technical assistance. Companies essentially need to standardize these processes into products, designed once and then used over and over again for different applications, within a particular archetype. When a company needs a new customized application, the team that develops it chooses a product that determines how it will be deployed, maintained, operated, supported, and even priced for internal users. This approach draws on the model used by software vendors and application service providers such as SalesForce.com.
Considerable standardization may be involved. One company, for instance, defined five such products that address the management challenges of each application archetype and are designed to derive the maximum benefit from standardization (exhibit). Together, the five addressed 60 percent of the company's applications, accounting for 80 percent of its applications budget. This company didn't attempt to squeeze all existing applications into the new model. Instead, it has looked forward: IT managers estimate that over 90 percent of all its new applications-development projects will take advantage of one of the five models from the beginning.
Companies that took this path have found several benefits of standardizing applications-management activities as products:
Reduced work for application "owners" (such as business units) and developers in sorting through management issues
Reduced costs and enhanced cost transparency derived from per-seat, per-application prices
Standardized, fine-tuned processes for applications of the same archetype
Dramatically higher resource utilization
Increased manageability of service levels
Concentration of skills around fewer technologies, leading to better training and development
Full value for companies that consolidate applications in shared services1
Turning business functionality into products
Several leading companies are at the stage of defining archetypes to reduce spending on applications management. Some of these companies have begun to experiment with applying the lessons of packaged software?write once, sell to many?to the development of customized applications as well (see sidebar, "The development and delivery process").
In essence, such companies have taken the writing of reusable code, an idea as old as computing, into a new era. The task is to create software that performs a particular function?calculating an interest rate or targeting a customer, say?and then to reuse it in any new application that might need this functionality. In the past, locating such code and deciding how best to use it were difficult because this knowledge could be shared effectively only within a tightly knit team.
Today companies bring some order and standardization to the process by using Internet-based service-oriented-architecture (SOA) standards.2 These IT advances help companies to codify business functionality in ready-to-use software building blocks much more easily and quickly, to scale up the kinds of functionality suitable for reuse in applications, and to ensure that such building blocks are employed more effectively across project teams and organizations?and maintained in a more standard fashion after an application has been deployed.
Consider the problem these companies are solving: because the applications that support old ways of working are difficult to change, many companies have found it hard to adapt their business capabilities to keep up with market developments. One health insurance company, for example, has a different claims engine for each of its three lines of business. When the applications were developed, making each one unique was logical because these businesses had very different needs. But that uniqueness has become a drag on innovation. When the insurer began to introduce more consumer-directed health plans, it had to change all three systems?and alter them again when it later introduced a new marketing approach that involved different methods for tracking customers and promotions. Each change was difficult, expensive, and time consuming.
In a company with reusable components of business functionality, such changes are a lot easier. A major bank created a library of reusable modules?essentially off-the-shelf products?that codified business functions for analytic modeling. The bank uses these products repeatedly in applications that support the trading of a wide range of financial instruments, such as equities, bonds, derivatives, and foreign exchange.
Other companies are following suit. A leading media business defined ways to codify elements (including customer profiles, lifetime value analyses, promotions, and campaign management) so that the software for them could be built once and reused. Naturally, this approach saves time and therefore money. For early adopters, the benefit that really counts is a reduction in the time needed to develop an application: they are finding that they can roll one out 20 to 40 percent faster when they use common applications products. Furthermore, the reduced expense could eventually allow companies to leverage the advantages by using easy-to-assemble applications to test new business strategies. If the strategies work, the companies can scale up the applications; if they don't, little has been lost, because such applications are inexpensive to build and easy to discard.
It is still early to make definitive predictions. But internal, off-the-shelf components of business functionality might allow IT to deliver its true promise: promoting business innovations instead of being the boat anchor holding them back.
Lessons from early adopters
As we noted earlier, this approach isn't suitable for all companies. Those that must roll out new applications quickly and constantly?banks and media companies, for instance?will benefit from it. But those in slow-moving sectors may have little need. If applications don't have to change much, writing them once is good enough?it's not worth all the work required to standardize custom activities. For businesses that can benefit from product-oriented approaches, we offer the following lessons from early adopters:
Build the products "prospectively," mindful not just of the existing base of applications but also of future needs.
Organize groups to deliver products effectively against business needs and not just technology outcomes.
Pay attention to organizational factors that will ensure proper governance and realize the business benefits.
Build the right products prospectively
Defining the right products to manage applications begins with analyzing how they cluster according to common needs. It is then more fruitful to focus on applications in the pipeline rather than those already in place. In fast-moving sectors, the useful shelf life of most applications is typically less than five years. By focusing on the future, companies in these sectors avoid putting effort into applications near retirement; thus, within three years, as much as 90 percent of the portfolio of custom applications can be standardized.
Admittedly, it is possible to standardize the support and maintenance of existing applications so as to reduce costs. Further, it is easier for a company to see concrete ways of reengineering existing support processes (a remediation project) than to plan the organization of support and maintenance for new applications that haven't yet been clearly defined, because budgets, risks, and organizing principles are unclear. Nevertheless, our analyses suggest that it isn't worth recalibrating the management of most existing applications. Significant effort is necessary to reengineer processes and to help people accept and abide by new standards. Since the applications portfolio turns over quickly, the costs of reengineering are barely recovered, if at all. Reengineering applications with a longer life cycle can make sense, but only a few of them exist in the portfolios of companies in fast-moving businesses.
Similarly, the best way to identify the components of common business functionality is to look at requirements prospectively rather than retrospectively. In particular, companies should focus on specific areas (such as the way prospective customers are valued) where there is a strong business interest in standardizing operations or rules across groups. This approach not only helps a company get to the truly reusable business rules but also piques the business's interest in using these products, thereby making it easier to secure ongoing support for standardizing such processes.
Organize to deliver products effectively
To define and deliver applications-management products, early adopters are carving out a single, separate applications organization from the multiple existing ones. As this delivery organization proves itself, companies mandate adherence to the new, standardized approach. Typically, the organization is global, focused on standardizing activities of the applications that support products globally. After all, there are more common elements within product groupings than in applications that are grouped geographically.
The pioneers are also forming groups to manage business functionality products, organizing them in close relation to business domains?that is, end-to-end business processes (such as order to cash or R&D). The developers become steeped in the business groups' activities and can see more clearly how to capture functionality in code. Also, business leaders can act as sponsors of these product groups, an approach that can put them on an equal footing with traditional applications-development teams. In some cases, these groups can even provide leadership in driving business process standards?leaving traditional teams to assemble solutions from the reusable code.
Pay attention to organizational factors
Turning support and maintenance into standardized applications-management products is one thing; getting the organizational elements right to make the most of those products is another. Companies must pay attention to three immediate constituencies: vendors, internal "buyers," and those who finance the budget for applications development.
Vendors have to understand what the company is trying to accomplish by standardizing support and maintenance, development, or both. A vendor's specialized software offerings or hardware should be incorporated appropriately into a prospective customized application. These technologies must therefore comply with the standards chosen for the management product supporting the application or be compatible with the modules assembled to make a new application. To achieve this goal, one company uses an architecture review process?looking at an application's technical design before launching development?as a way of forcing vendors to comply with its standardization efforts. Another company encourages compliance by certifying vendors, providing awareness education, and offering price incentives and vendor performance reviews.
A company must also persuade those who own an application internally (and across the global business) to look for and use off-the-shelf business functionality, captured in code either inside or outside the company. One way to do so is to create markets for these products. Goldman Sachs, for example, built a Web portal that allows developers around the world to share software components and documentation, both internally and with certified systems integration vendors.
Finally, those financing new applications must favor standardized business functionality products (on the development side) and management products (on the support side). People should be held accountable for moving toward these new, common approaches. Costs for developing functionality and management products are ascribed to a single applications project, but subsequent applications can reuse them, and this possibility has implications for the way projects are measured and their performance is graded. Companies may find it necessary to finance standardization efforts separately from other development projects and to establish pricing mechanisms for recouping the investment from business users of the applications. Funding must take into account both efficiency and relevance, and pricing should balance recovering the investment with encouraging greater use.
Companies that live or die by how quickly they can roll out new, innovative business capabilities to their customers can benefit from making their customized applications more like products.
The development and delivery process
? The infrastructure staff and development vendor must design an infrastructure platform for every application.
? Dealing with exceptions to current processes (such as the needs of machines, remote access, and root privileges for the vendor) creates unnecessary overhead.
? Delays caused by procurement snags or infrastructure configuration issues typically run five to six weeks.
? Because the company has to pay vendors on a time-and-materials basis?and scale is limited?expenses mount.
? External resources are needed for routine operations such as database administration support.
? Time and attention are wasted on coordinating activities such as reboots and updates with other groups sharing infrastructure.
? Ad hoc systems upgrades and reboots often cause unplanned application downtime.
? Predefined product options greatly reduce the time spent designing the infrastructure for the most common applications.
? A standardized process that can also handle exceptions creates a single point of ownership and accountability.
? An inventory of infrastructure options that comply with the reference architecture eliminates procurement delays.
? Leveraging vendor contracts gives the company a pool of resources at attractive rates.
? Routine tasks that were formerly undertaken by the vendor are coordinated, eliminating redundancy in the process.
? Applications operations are managed, freeing time to focus on more critical business tasks.
? Accountability for service levels helps the company identify key areas to improve processes.
Return to reference
Your thoughts matter - more than you can imagine.
More Articles by Albert 54 Free | Ad-Free | Full-Text Business Papers
InternetIn 15 seconds, a visitor to your site determines whether or not they are interested in your product or service. Web usability experts can provide all sorts ...
Personal DevelopmentThe global talent war has seen organisational leaders scratching their heads to understand how they can attract and retain the very best talent that is ...
Trends, FutureGen X-ers want far more collaboration with companies - both as customers and as employees. CIOs are uniquely positioned to help their enterprises meet ...
Finance, Financial ToolsOperational risks are costly, but they can be conquered when high-ranking executives join the battle.
LeadershipFurther reform will be essential if one of the world?s fastest-growing regions is to seize a broader role in the global economy
Customer Care, ServiceOver the last two years of working with hundreds of clients from all walks of life, I have noticed trends of what my clients want and need. This top ten ...
ProductivityFor GCC states, liberalizing the labor market and developing the local workforce are the keys to moving beyond a reliance on foreign workers.
ProductivityOver the next two decades, the country's middle class will grow from about 5 percent of the population to more than 40 percent and create the world's fifth-largest consumer market.
Customer Care, ServiceEverything that we do for our clients is based on the idea that improved communications will improve an organisation's performance and contribute to the ...
Lean ManagementLean Thinking is a highly evolved method of managing an organization to improve the productivity, efficiency and quality of its products or services. The ...
Employee RetentionUS Recruiting, Retaining & Developing Talent Statistics & Best Practises
ManagementComplexity has been one of the most frequently used words for some years now. People talk about complex systems, complex interrelationships, complex problems ...
Finance, Financial ToolsOnce companies reach a certain size, setting realistic performance aspirations gets a bit trickier.
Workplace RelatedShould work be fun? Must it be fun? Today, the answer to these questions is mostly yes. What else should it be? Yet however plausible this answer might ...
Performance ManagementServices are more difficult to measure and monitor than manufacturing processes are but executives can rein in variance and boost productivity - if they implement rigorous metrics.
Corporate Social ResponsibilityThere appears to be plenty of room for much greater effort and involvement by companies and organizations around the world. Here a few thoughts and pointers.
InternetOrganic search engine optimization has some distinct advantages over pay-per-click advertising. However, there are undoubtedly certain situations and scenarios ...
StrategyAn organization is much more likely to improve its current performance and underlying health by using a combination of complementary practices rather than ...
Team BuildingTwo of today's buzzwords are Team and Teamwork. Those with a particular desire to conform to the spirit of the age portray them as the polar opposite of ...
EthicsRecently, I came across a code of ethics for hackers (yes, it really does exist) that I'd like to share with you, because I think it really hits home with ...
IT - Information TechnologyEight emerging trends are transforming many markets and businesses. Executives should learn to shape the outcome rather than just react to it.
FacilitationThe aim of this guide is to prepare you for discussions with a bureau, and to get you thinking about all the factors that affect your Facilitator choice.
Succession PlanningSurprisingly, many organizations lack a proper succession plan. One reason is that they do not have an effective succession planning process. This author ...
Strategic Planning"Size is no guarantee of future success." What is strategically important is strength not size. Speed is more important than physical mass and flexibility ...
Conventions, ConferencesPlenty are the professionals who are on the "front lines" of the industry, knowledgeable of the countless changes, and who are willing and able to speak ...
Project ManagementWhat is success, what is failure, and how can you improve your odds for success?
OutsourcingFew companies have the skills to effectively manage procurement across all spending categories. Smart enterprises should examine their procure-ment strategies ...
MediaNewspapers have tried a host of measures to halt the long-term decline in their readership, but they haven't stopped consumers from turning to TV and the ...
FacilitationHow do you know if the speaker fits? How do you avoid embarrassing mismatches?
Sales - GeneralTo get beyond survival and to grow both profits and margins, the successful companies of the future will be forced to become true customer experts.
Customer Experience ManagementForesee the future, that's what your customers expect, that's what you need to deliver.
GlobalisationCompanies based in the GCC states are using their petrodollars to expand into global markets. But in the long run, these companies will have to develop distinctive capabilities and skills.
TransformationThe art of leading deep corporate change can be learned. The trick is to help each member of the company discover a new reality...
InspirationalLooking for inspired leadership, passionate employees, unsurpassed productivity, and grateful customers? Forget the dispirited corridors of corporate ...
Risk ManagementAre you on board with enterprise risk management? You had better be. It's the future of how businesses will be run.
GovernanceThe days, weeks, or months between taking the job and assuming power are precious. Put them to good use.
RelationshipsSometimes we can all use a friendly reminder to keep us from backsliding into old ways of thinking about selling that lead us down the wrong path with potential clients.
Strategic PlanningBy building social issues into strategy, big companies can recast the debate about their role in society.
Marketing - GeneralThe proliferation of brands and channels is forcing companies to restructure their marketing efforts significantly.
Strategic PlanningGrowth is necessary, but size is no guarantee of a successful future! Nevertheless, growth is needed. Without growth there is no life. In a certain sense, ...
Negotiation Skills, TechniquesFive easy-to-use tools help negotiators in complex deals arrive at a negotiating position that is not only acceptable to them but also palatable to other ...
Knowledge ManagementEmployees' personal connections can be as valuable as their individual knowledge base. Social network analysis, or SNA, helps maximize a company's collective smarts.
Success BuildingWhat can Man achieve? What are the limits?
IT - Information TechnologyCompanies that rely on IT governance systems alone will come up short.
Finance, Financial ToolsOf all the findings on business strategy yielded by the study of the businesses in the PIMS? database, the following is one of the most controversial: ...
ManagementThe success of strategic investments depends largely on the subsequent moves of competitors. Uncertainty about competitive conduct can lead executives ...
Human ResourcesSomewhere in Corporate America, a human resources manager is tweaking her company's employee-incentive program. Maybe she's dumping last year's customized ...
Success BuildingReasons Why You Should Speak at and Attend Professional Seminars
FacilitationValuable insights on using your speaker to maximise the success of your event
Presentation SkillsTrying to perfect a flawless presentation can result in disaster...
Customer Experience ManagementImproving the customer-centricity of your organization isn't just good business, it's also good marketing.
TransformationThe CEO helps a transformation succeed by communicating its significance, modeling the desired changes, building a strong top team, and getting personally involved.
Knowledge ManagementValue created by knowledge is often not captured. Five accounts of knowledge strategies.
Organisational DevelopmentTalent can be bought, but the best companies develop their own.
More 'Trends, Future' Articles
1 more Article that may interest you, too...
Gen X-ers want far more collaboration with companies - both as customers and as employees. CIOs are uniquely positioned to help their enterprises meet the demands of this new technology-savvy generation.