Skip to main content

A Plan of Action for Application Development

Joseph Gulla examines how application strategies are changing and growing.

"IT Trendz" in white against a purple banner, white chat bubble in righthand corner, with dots connected by white lines against a blue background.

Last week, I continued this series on the development and rapid change in systems, networks and applications. I completed my focus on networking with a detailed discussion of storage networks with technology including FICON, Fibre Channel Protocol Channels and zHyperLink technology. I also wrote about coupling connectivity as it relates to how up to 32 IBM z/OS images, connected to one or more coupling facilities use high-speed specialized links for communication and time keeping. This week, I’ll move from networking to applications by discussing application strategies and how they’re changing and growing.

Refreshing Development Strategies

The study of application development, specifically changes and growth often called modernization, requires a systematic and organized approach because of the size and complexity of the challenges of developing and maintaining applications. In one way or another, organizations have been modernizing since right after the first application ever written went into production. What systematic approach fits best to understand this long pursuit? It all starts with a strategy.

Organizations Are Responsible for Developing a Strategy

A strategy is a policy that describes the plan to move forward. In this case, the strategy describes the way that the handling of an application’s modernization is going to play out. Think of the general strategy as a blue print or game plan. As you can imagine, there are a number of different ways that organizations express their strategy, which are usually tailored to the needs of a company so there is a cultural fit. 
 
It’s an organization’s responsibility to develop its strategy about application modernization. Often, this is just the kind of challenge that requires assistance to get started, so organizations get help to figure it out. Who can help? Companies like Accenture, Deloitte and IBM are often consulted for their industry and technology expertise. Just reading their information on the web is a big help.

Thought Leaders Have Abundant Materials to Help

Technology companies like IBM have authoritative materials focused on application transformation. A strong example is a module from the IBM Cloud Learning Hub called Application Modernization because it discusses critical topics including:
  • What is application modernization?
  • Why modernize legacy applications?
  • Start application modernization with an application assessment
  • Patterns of application modernization
  • Key technologies for application modernization
  • Application modernization and IBM
Some consultants make a living by being strong in technology and another area like financial services. This analysis, “Modernizing Transaction Banking,” is a good example of how the intersection of banking and technology plays out in leadership briefs from Deloitte.
 
In addition to the industry-focused consultants, there are research firms with a technology focus like Gartner, Forrester and IDC. They develop thought leadership in many areas, including application modernization. Even the simplest materials on the web from Gartner are stimulating and useful in helping to shape a strategy. Smarter with Gartner short-form articles are a good example.

Simple and Useful

In the Smarter with Gartner article, “7 Options to Modernize Legacy Systems,” contributor Susan Moore writes, “If you need to modernize legacy applications, the best approach depends on the problem you’re trying to solve” and “Replacement isn’t the only option.”
 
If your job is to help formulate a modernization strategy, then an immediate response to reading this is to ask yourself, “What problem are we trying to solve?” You’re likely to discover that there are several different challenges and likely different solution approaches depending on the problem. Moore lists seven different modernization approaches and explains them in a sentence or two. The list includes: encapsulate, rehost, replatform, refactor, rearchitect, rebuild and replace.
 
There are so many factors in formulating a modernization strategy that require careful thought and analysis. Even when care is given to the issues of business drivers, corporate culture, existing skills, use of strategic or technical consultants, and time and money, events can undercut the best-developed strategy. Changes within an organization, which are frequent at the leadership level in many IT organizations, can cause starts and stops in carrying out strategic initiatives. These disruptions typically undercut the ability of IT to have a sustained strategic effect on the operations of the organization.

Many Others Can Contribute to Strategy Development

It isn’t just industry consultants and technology researchers that drive application modernization strategy. Many organizations have trust relationships with technology companies and service providers, and they leverage these relationships to develop strategies that are focused on technology and service solutions.
 
It’s easy to imagine a two-column table where Column 1 has a list of problems and Column 2 contains the suggestion of a tactic, product or service that will address that problem. This is a tempting way to approach an application modernization strategy. You might call this the “nonstrategy strategy.” For IT departments that have trouble just keeping up with fixes and basic changes, the notion of developing a detailed application modernization strategy may not be a good fit. What might a sample two-column table look like? Here are seven example challenges, as well as a suggested tactic, product or service.
 
Modernization Challenge Approach to Use With Product or Service Solution
  1. Users want to have flexibility to query data collected by applications.
Migrate key indexed files to a database and provide prebuilt data queries.
 
This could take the form of a database migration service from a services provider.
  1. Users want to use applications from the web and from mobile devices.
Provide web interfaces that can be used on desktop computers and mobile devices.
 
This could be done using a mobility-support product combined with vendor implementation services.
  1. Programmers want more advanced capabilities in the program languages they use.
Update existing languages and make available advanced functions that weren’t previously implemented.
 
A consulting engagement could start this effort to “make more of what you already have.”
  1. Users want the flexibility to manage business rules in a way that supports changes needed to better compete in the competitive marketplace.
Implement software that places business rules in a repository that can be managed by the business community.
 
This could be done using a business-rule management product combined with vendor implementation services.
  1. Users want changes to the application to be made available in real-time, not on a daily or weekly basis.
Implement tools and methodology that support continuous development and integration.
 
A consulting engagement could be used to plan the changes, including any necessary product implementations.
  1. Programmers want support for a broader selection of programming languages for databases used with their applications.
Install and enable the latest level of middleware, for example, Db2 with support for languages like REXX, PL/I, COBOL, RPG, Fortran, C++, C, Delphi, .NET CLI, Java, Python, Perl, PHP, Ruby and others.
 
A technical services contract with a trusted firm could be used to temporarily add the necessary power to this project.
  1. Application designers want the latest capabilities of their transaction server to build cloud-enabled applications.
Install and enable the latest releases of transaction server software. For example, CICS provides cloud support, performance optimizations, enhanced metrics, additional security, and DevOps engagement to automate CICS deployments.
 
A technical services contract could be used to temporarily add the necessary power to this project. A consultant could be used to help with the planning and other upfront work for the project.
 

Next Post

Next post, I’ll continue with this series and continue my focus on applications with a focus on application modernization methods.
IBM Systems Webinar Icon

View upcoming and on-demand (IBM Z, IBM i, AIX, Power Systems) webinars.
Register now →