APPLICATION MODERNIZATION Transforming legacy systems to create business advantage In a digital marketplace that demands faster time to market, exceptional user experience, and lower cost of operation, the pressure to modernize aging application portfolios keeps growing. Given the age, size, and complexity of existing business-critical applications, modernization can be a daunting prospect. As the examples in this paper show, however, there are multiple and incremental ways to extend the life of valuable business logic, deploy new functionality, and transform user experience—while reducing cost, risk, and complexity going forward. WHITE PAPER BARCLAYCARD INVENTS A NEW BUSINESS MODEL Barclaycard, the global financial institution, had a vision for the launch of its new U.S. credit card. They would build customer awareness and loyalty by changing the cardholder-card provider relationship. Barclaycard had worked with EMC financial services industry consultants, user experience designers, and application developers on UK and U.S. banking websites and on iPad, iPhone, and Android service applications. They again selected EMC to help with their launch strategy—to use social media and create a community of cardholders engaged in co-developing the card offering they wanted. EMC researched target segments, interviewing people about their interactions with financial institutions, experience with social media, and reactions to initial launch concepts. In addition to face-to-face focus groups, EMC set up an online innovation lab for 2,000 participants to provide feedback. After design prototypes were created, refined, and validated through iterative user testing, EMC designed the digital experience, leveraging advanced social and game-ification techniques, in a representation layer on the Lithium social platform. The launch garnered significant news coverage in the blogosphere, as well as in business, financial services, and technology publications. Customers collaborated on setting policies and rates and opted for member profitsharing, based on a transparent monthly reporting of card P&L, over a traditional rewards or cash-back program. Forrester Research awarded the site its Voice of the Customer Award. The new card outperforms peers and the cardholder community continues to actively participate in how the card evolves. DIGITAL BUSINESS DRIVERS Today’s digital marketplace rewards innovation and superior customer experience. To compete, enterprises need to be able to focus more on creating business value—and less on underlying technology. Just as virtualization and infrastructure-as-a-service (IaaS) capabilities enable dramatic business agility and cost advantages, Cloud Application Platform technologies and moves toward a Platform-as-a-Service (PaaS) model are transforming the way applications are developed and deployed. New application architectures make it much easier for companies to: • Accelerate time to market • Reduce the cost, effort, and risk of developing, deploying, changing, and maintaining applications • Improve user experience • Deploy on Web and Mobile platforms • Enable predictive analytics and real-time insight • Embed security and trust • Shift IT spend and skilled resources from maintenance to innovation • Improve asset utilization Few organizations, however, are in a position to take a greenfield approach to capitalize on this opportunity. Most must look at incremental, ROI-driven paths to modernization across the landscape of applications, platforms, skillsets, and processes in use today. Figure 1. Focus on business value New platform-as-a-service models enable greater automation and efficiency by putting more IT operational workloads into the platform itself, enabling application developers to focus more on creating and delivering business value—and less on underlying application infrastructure. TECHNICAL DEBT It’s not unusual for enterprises today to rely on hundreds or even thousands of applications, whether on decades-old mainframes or running on heterogeneous server architectures in multiple data centers. While these applications enable the business, they also represent a kind of “technical debt” that can hold an organization back from achieving new objectives. For example: • Traditional software development lifecycles are slow and delay time to market • Legacy software licenses, infrastructure, and maintenance consume time, money, and resources that could be invested more strategically • Critical business logic and data locked in proprietary platforms are difficult to access and use in new ways, to meet new needs • Data models established years ago often constrain new business directions and do not easily support web, mobile, or Big Data scenarios • Large, complex, and monolithic applications are difficult, and even risky, to modify—requiring IT involvement for even minor changes and multiple test and QA cycles • Technical skillsets for aging platforms become increasingly difficult to find as programmers and database administrators retire • As the market share for older application platforms shrinks, so do investments in new product development and the availability of commercial off-the-shelf (COTS) software and third-party tools and services • End users, developers, and business units, frustrated by corporate IT solutions and turnaround times, are turning to consumer technologies and public cloud services, creating a “shadow IT” that adds another layer of cost, risk, and complexity MOVING FORWARD Like any large debt that’s accrued over many years, getting out from under the burden of legacy applications can seem overwhelming. While many recognize that existing application architectures are unsustainable, making any changes to critical applications can seem fraught with risk for both application owners and IT. A sense of paralysis and a tendency toward procrastination are understandable, but as with any debt, the longer action is delayed—the larger the problem becomes. The good news is there are many ways to move forward in rationalizing and modernizing the applications that the business depends on today, to speed innovation, and significantly reduce the burden of technical debt going forward. What’s more, proven application modernization strategies, methodologies, and tools can greatly reduce the uncertainty, risk, and effort associated with transforming applications. WHERE TO START: PORTFOLIO RATIONALIZATION While specific application modernization efforts are often driven by immediate business requirements, organizations that undertake a holistic and objective analysis of their entire portfolio can better prioritize and optimize modernization efforts. Portfolio rationalization helps identify: • Legacy applications with the greatest risks/costs • Transformation opportunities with the highest payback potential • Changes that can be made relatively quickly and easily to reduce overall cost and complexity Because applications are typically widely used across an organization and deeply ingrained into business processes, gaining a clear and accurate understanding of what exists can be difficult. Proven application portfolio rationalization methodologies that leverage automated tools can reduce the time and effort it takes to identify and categorize hundreds of applications and identify those that are vital to future success. Application assessments must go beyond technical description. Only by evaluating applications within the context of enterprise objectives and business, technical, and user requirements, can useful consolidation models be built and recommendations made for the disposition for each application. Armed with this information, organizations can make informed decisions about whether an application should be: • Retired (archived or decommissioned) • Consolidated with other overlapping/redundant applications • Replaced by off-the-shelf software • Re-platformed, to cut infrastructure costs, minimize technological diversity, or enable virtualization potential • Re-architected, to support new data models, separate front-end functions from back-end processing, improve processing performance, etc. • Re-written, to add new functionality or take advantage of new cloud development and deployment platforms REDUCE UNCERTAINTY WITH APPLICATION INSIGHT As part of the modernization planning process, a data-driven analysis of existing application code can provide helpful insight that reduces uncertainty and improves project planning and predictability. Large, decades-old mainframe applications, especially, can be particularly daunting and opaque in terms of determining the time, cost, and risk of modernization. In many instances, although originally built for a specific business purpose, they have been expanded to meet changing needs in the interim and may have grown to be tens of millions of lines of code. Analysis of application source code, using specialized tools, algorithms, and statistical analysis, can provide valuable insight by decomposing how code is clustered, what functional tasks are performed, and how much is duplicated or cloned. In context of a rewrite initiative, findings frequently show that what actually needs to be rewritten is significantly less than first thought. For example, it’s not unusual for cloned or duplicate code to account for 30 percent of a mainframe program. Analysis can also show how older, monolithic applications can be functionally decomposed, replacing additional large portions of code that perform specific tasks with modern architecture frameworks or tools, such as report writers. Figure 2. All code has a story to tell An EMC Insight Assessment can tackle even the largest legacy application within a few weeks. The assessment combines analysis of existing code and interviews with application experts to enable more informed decision-making, accurate scoping, and realistic planning for modernization. Application visualizations help identify opportunities for improvement and foster meaningful communication among business and IT stakeholders. REWRITE—OR CONVERT? Organizations that want to extend the life of valuable business logic and data locked in proprietary mainframe languages and non-relational databases should consider the option of converting, rather than re-writing, applications. Automated application conversion tools, combined with experienced code analysis, conversion planning, and technical architecture and database expertise, can convert code written in obsolete languages into industry-standard COBOL and move data from old, flat files into fully relational SQL databases, running on either a mainframe or x86 platform. Conversion tools and methodologies that produce COBOL code—as opposed to BENEFITS FIRM ‘black box’ conversion solutions—enable development teams to continue to “own the code” and to work with and enhance the application, using the language they PRESCRIBES VIRTUAL already understand. DATA FABRIC TO SAVE Conversion has the advantage of avoiding ‘scope creep’ and other risks associated MILLIONS OF DOLLARS with complete application rewrites. Testing, for example, remains straightforward— A large prescription benefits management firm needed to be able to respond quickly to new market conditions, regulations, and patient needs. But making changes to its decades-old, 25million-line COBOL application was slow—and costly. What’s more, with the mainframe struggling to meet peak load requirements, purchasing more MIPS seemed to be the only remedy. with the old application providing the baseline for new code performance and Instead, a team of EMC and VMware consultants worked with the firm to develop a solution using VMware vFabric GemFire to migrate data processing from the mainframe to a low-cost x86based data fabric. Batch and transaction processing continue to run on the mainframe. When the COBOL program calls for data, the call is intercepted and diverted to the GemFire Data Fabric and the data is returned transparently to the application. The solution improves mainframe processing performance, eliminating the need to purchase more MIPS. It also provides a path for future modernization. By separating the data from the mainframe application and serving it from a nextgeneration, in-memory data fabric, the application gains very high throughput and no single point of failure, and the company reduces its dependence on the mainframe platform moving forward. The firm expects to save millions of dollars from the solution over the next five years through cost-avoidance and faster, simpler application change processes. functionality. End-user screens and processes can be migrated without change, leaving business users unaffected by the platform modernization. In addition to dramatically reducing hardware maintenance and software licensing costs, conversion extends the life of critical applications. Converted applications gain access to new platform functionality, a larger pool of skilled developer resources, and more third-party solutions than aging platforms with rapidly shrinking market share can offer. LEAP AHEAD WITH MODERN FRAMEWORKS AND FABRICS Whether updating an existing application or building a new one, enterprises can use modern application development frameworks to break free from legacy constraints and cut the cost, time, and effort of delivering innovative digital business solutions. The open source Spring™ Framework, for example, has proven so productive that it is used by more than half of today’s Java developers. VMware vFabric™ application middleware provides an established runtime platform for Springdeveloped applications on virtual infrastructure, enabling developers to focus on creating business logic. Instead of “recreating the wheel” of runtime functions, such as data management or asynchronous messaging for each application, developers can rely on the vFabric middleware to abstract and deliver these functions as services in a distributed fabric running in the data center or in the cloud. In addition to improved availability, security, and manageability, virtual resources can be automatically and dynamically provisioned to match changing application workloads—for example, to handle spikes in transactions or traffic or support unpredictable social media activity. In addition to developing new applications, frameworks and fabrics can be used to offload, speed up and improve the function of existing applications. For example, new data models to support Big Data analytics or to incorporate other data types can be delivered using vFabric GemFire or SQLFire data fabric running on a virtual x86 platform, while keeping much of the transaction processing logic on the mainframe or other legacy platform. Alternatively, front-end end-user functions can be separated from back-end systems and delivered from the cloud application platform layer for faster, easier updates and simplified deployment on web and mobility channels. PRIORITIZE USER EXPERIENCE BROKER GAINS NEXT- Traditional software development starts with functional and technical GENERATION TRADE requirements gathering. But software is no longer just a means to better product PROCESSING APPLICATION A global agency broker and clearing firm had developed its trading system on multiple core systems over time. The system could not handle spikes in trade volume. The frequency of trade breaks and time-to resolve were high. The complexity of the solution required IT intervention for any change. Provisioning new clients or adding new products or exchanges took longer than the business could afford. And because trades weren’t being replicated across systems, there was no timely visibility into volume or workflow. EMC consultants worked with stakeholders to design a streamlined trade flow business process and build a distributed staged event-driven architecture (SEDA) for highly concurrent events on virtualized x86 infrastructure. EMC application developers used Agile development techniques and the Spring Framework to develop a solution that leveraged VMware vFabric middleware, including: tc Server for application server services, GemFire for data services, RabbitMQ for asynchronous messaging, and Hyperic for enterprise monitoring. EMC managed all aspects of the program—from initial data analysis and trade flow modeling to requirements definition, process reengineering, sprint development cycles, integration, testing, and global production rollout. EMC also prepared and trained in-house staff to take over rapid application development and management of the virtual platform. The new solution reduces dependence on IT. It scales dynamically by a factor of 10+. Trade breaks occur less and are resolved faster. Onboarding new customers, products, or exchanges takes weeks, not months. Role-based dashboards provide real-time, end-toend visibility into all trades. and business efficiencies. Today, software is the product—it’s where business gets done. Digital business models change the way people work and customers buy. That’s why organizations and developers should preface application development and modernization projects with serious consideration about how an application is going to be used. By whom? On what platforms and devices? Where, when, and why? User experience is more than an attractive graphical interface. It’s a personal, powerful, first-hand interaction that forms an impression and relationship with a business. It can demonstrate a unique understanding of a customer’s needs, distinguish a product in a crowded marketplace, deliver new kinds of services, boost productivity and customer satisfaction, and establish a competitive lead. Developing and delivering a superior experience starts with data-driven research. It requires iterative feedback and testing with real users, and technical execution, as well as vision, inspiration, and creativity. It’s also an ongoing process. Good user experience solutions are designed to evolve, to capture usage data and feedback, and incorporate innovation and improvement over time. Thoughtful service-oriented application development and deployment architectures can help organizations to meet the challenge of user experience design that evolves over time. By separating the user experience presentation and reference layers from underlying infrastructure and back-end systems, changes to the platform, branding, or the products themselves can be made quickly and easily without altering underlying business systems. MODERNIZE THE SOFTWARE LIFECYCLE, TOO It’s not only legacy applications that hold organizations back. Inefficient and outdated software development lifecycle (SDLC) processes add unnecessary risk, time, and cost—from initial design and development to testing and release and to production, ongoing maintenance, and change management. It’s not unusual for different teams in different organizations to be responsible for different aspects of the software lifecycle, be measured differently, and be working in relative isolation with different tools and processes. Divisions can persist even as organizations move from traditional infrastructure to a virtualized IaaS model. But the time-to-market and cost advantages enabled by PaaS service-oriented cloud application platforms lead to developers, operations, and application owners collaborating in new ways. By taking a more integrated “DevOps” approach to the software lifecycle, organizations can make the people, process, and technology changes required to be able to: • Break down silos to create an integrated team • Rationalize, integrate, and automate manual processes • continuous deployment across the SDLC SHOPPING GETS BETTER, FASTER, ACROSS ALL • EMC retail consultants and solution architects worked with the company to develop a multi-channel optimization strategy, design a service-oriented solution, and develop it using the open source Spring Framework. EMC rearchitected the company’s eCommerce application to decouple the front-end presentation from back-end business logic and the underlying eCommerce engine. They developed the new channel presentation service layer and defined best practices to enable internal staff to take over ongoing development, maintenance, and support. The solution expands the retailer’s channel presence, brings new features to shoppers faster, helps maintain brand consistency across channels, and provides partners with an open API that lets them build on the same baseline set of services that the in-house channels use, without having to worry about complex eCommerce technology. The solution makes it easier to implement new functions, such as an intelligent 360degree view of customer purchases and spending patterns. It enables changes in channel presentation without affecting back-end systems, and changes to back-end functions and platforms without affecting channel presentation. Simplify quality assurance by testing sooner and more frequently and automating testing for integration and function CHANNELS A national department store wanted to build on its in-store success and drive up channel revenues with a better, more consistent shopping experience across the web, mobile devices, in-store kiosks, and thirdparty applications and sites. Apply Agile principles such as sprints, continuous integration, and • Accelerate dev/test and release management by creating standard virtual runtime templates and automating provisioning • Enable collaborative agile team dev/test environments to be available in hours, not weeks, and tools to be configured in minutes, not days START NOW Just as cloud has revolutionized data center operations to deliver low-cost virtual infrastructure on demand, cloud is changing the way applications are built, deployed, and managed in production. Service-oriented cloud application platforms and powerful frameworks and middleware are freeing organizations to focus on the business logic that brings their unique value to market, and deliver it faster than ever before. Rationalizing application portfolios and modernizing critical applications to be able to benefit from new data models and cloud application paradigms can sometimes seem daunting. But the best way to start is to begin. EMC application modernization consultants can help with an objective assessment of where you stand today, what’s possible, and how you can move forward to achieve your objectives. ACCELERATING TEST AND EMC GLOBAL SERVICES DELIVERS RESULTS EMC Global Services provides the strategic guidance and technology expertise RELEASE organizations need to address their business and information infrastructure The Internet Services division of a global banking and financial services institution employs thousands of programmers to develop and maintain web applications for its private, commercial, and retail banking customers. The bank’s software development life cycle (SDLC) standards require that each application pass through seven different testing environments on its journey from initial development to release to production. The process required the manual creation and submission of an image for each application version as it progressed from one testing phase to the next. The slow and complex process added months to the release process and hindered both developer productivity and business agility. challenges and derive the maximum value from their information assets and EMC DevOps consultants worked with stakeholders to simplify and automate the process by leveraging cloud-based virtualization and collaboration. They developed an automated private cloud application development environment with virtual templates of all of the SDLC testing environments, using VMware vCloud Director to orchestrate the process. Now, developers can select any template from a single portal with a single click, and vCloud Director automatically provisions the virtual system resources needed to run that series of tests in the cloud. Test environments are provisioned in minutes instead of weeks. Developers maintain better control of their applications and are more productive. Tested, quality-assured applications are released to production months faster, improving time to market and business agility. investments. We are committed to exceptional total customer experience through service excellence. Our 15,000+ professional and support service experts worldwide, plus a global network of alliances and partners, leverage proven methodologies, industry best practices, and experience and knowledge derived from EMC’s information-centric heritage to address the full spectrum of customer needs across the information lifecycle: strategize, advise, architect, implement, manage, and support. CONTACT US To learn more about how EMC products, services, and solutions can help solve your business and IT challenges, contact your local representative or authorized reseller—or visit us at www.EMC.com. EMC2, EMC, and the EMC logo are registered trademarks or trademarks of EMC Corporation in the United States and other countries. All other trademarks used herein are the property of their respective owners. © Copyright 2013 EMC Corporation. All rights reserved. Published in the USA. 3/13 White Paper H11608 www.EMC.com EMC believes the information in this document is accurate as of its publication date. The information is subject to change without notice.