Kristin Cowhey explains how z/OS development has evolved throughout the years and what that means for developers and tech personnel. With legacy developers leaving the workforce, there’s a dire need to replace the knowledge in order to maintain the mainframe systems and applications that are still in use today.
You might be surprised to hear that the mainframe is still a vital piece of hardware at the core of enterprise systems. Those who say the mainframe is dead couldn’t be more wrong. Mainframe computing is thriving as it approaches its fiftieth anniversary; however, the essential skills that are necessary to process enterprise applications are scarce. Graduates today are empowered by their newfound java skills, mobile expertise, and knowledge of distributed platforms. COBOL and enterprise systems just aren’t flashy enough for young programmers to take notice. Little do they know that those skills are not only practical but in high demand.
Coding today isn’t like it was twenty years ago. So when a Forrester Forrsights software survey found that organizations deem updating and modernizing their legacy applications as a critical priority, our first question should be, “How do we bridge the gap between tenured developers and the new generation of software coders?”
z/OS Development Then
Our predecessors were very process driven. They relied on proven technology rather than risking stability by challenging the status quo. While stable and relatively bug free, systems were complex, requiring substantial investment. Development was done sequentially and only after a substantial amount of time had been spent planning and developing system requirements that were documented and agreed on by the entire team.
Back then, virtual collaboration wasn’t available, which meant programmers needed to work in the same location in order to communicate with their team. Visibility was limited since developers weren’t able to access a real-time view of the project. For this reason, project health reports were created manually and were quickly outdated as programmers resumed their daily tasks.
z/OS Development Now
Today’s preferred development style is agile. Young coders want better access, with the ability to shift priorities at a moment’s notice based on evolving requirements gathered through team collaboration. Dynamic interfaces are a necessity as green screens have been replaced by highly intuitive IDE’s and interactive editors. Lean development practices and continuous testing lead to fewer defects and faster release schedules. Face-to-face communication is a thing of the past. Geographically dispersed teams are the norm with Software Configuration Management Systems (SCM’s) keeping cross-functional groups connected. These days, developers are highly adaptable with a keen sense for coding practically and efficiently.
Organizations are looking for better traceability. They want improved efficiency while taking advantage of all the latest technology. But, while businesses are looking to modernize, they’re also looking to get the most out of their investments. Why would a company choose to shift directions and finance new IT expenditures, when they can update legacy systems that have been successfully running for decades? The answer, of course, is that they wouldn’t. Enterprise modernization allows businesses to transform what they already have rather than re-implementing an entire system architecture.
Overcoming the Challenges
When an organization makes the decision to modernize its legacy systems, there are challenges that need to be addressed up front in order to mitigate problems later.
First, there are application challenges. When modernizing a business’s entire IT infrastructure, we must first decide which applications to keep and which to get rid of. In doing this, we should evaluate the initial and ongoing investment. This includes both the monetary investment and the investment in skills to maintain the legacy applications. Once we’ve determined the contribution to the enterprise and evaluated the risks, we can judge whether the effort to modernize the individual applications is necessary or if it’s avoidable.
The next challenge has to do with the people inside the organization. The issue here is the plethora of tools, technologies, and standards that vary from project to project and organization to organization. Before engaging in a modernization effort, we must determine which skills need to be maintained and which are obsolete.