Modernizing SCOBOL Programs Part 2: Re-engineering using Blu Age

In Part 1 of this blog series, we discussed the benefits of modernizing SCOBOL requesters, and the challenge of handling programs with extensive business logic..
In this Part 2 installment, we will talk about how to approach these business logic embedded programs via re-engineering and the benefits of using a tool like Blu Age.
Re-engineering using framework

Re-engineering is a better approach to application modernization. Instead of selectively rewriting certain portions of the business logic to fit into a random mix of components (e.g. HTML, Java and JavaScript, etc.), re-engineering advocates redesigning the application from the ground up. By re-engineering, we mean applying a combination of human insight and automation power to migrating business logic (e.g. calculations, business rules)
to a modern technology framework.

Re-engineering wheels

A properly re-engineered application carries many benefits, including:

  • Maintainability
    Creation of code based on the new design blueprint using modern development methodology ensures there are readily available resources and tools for it to be maintained easily.
  • High performance
    Test tools are readily available in Open Source or commercial market to measure and tune applications designed with modern framework.
  • Adaptability
    Once an application has been modernized, there is a good chance that its functions will continue to evolve. Adopting a proper design framework will ensure that the new application will continue to adapt to new requirements and can be enhanced easily.

But the challenge remains the same by taking the re engineering approach: You still need to migrate the business logic in the original programs to the new code. This is where a tool like Blu Age can facilitate the process.

Introducing Blu Age – A Powerful MDA Tool

Firstly, as the saying goes:“There is no free lunch.” If you are looking for a magical “EASY” button, Blu Age is not it. Blu Age is not an automatic translator. It does not make the end product magically for you by your clicking a button. But it is a tool that can help you get the job done more easily and more quickly.

Blu Age is a tool that:

  • Helps you analyze your program source with built-in visual tools and annotation features
  • Enables you to define reusable code patterns to automate intelligent code segment identifications and conversions
  • Extracts the business logic from your code
  • Assists you in transforming the business logic to new code in Java or .NET

Re-engineering

What is Blu Age?

Blu Age is a commercial software re-engineering and modernization tool suite that follows the Model-Driven Architecture (MDA) approach to generating program code from Unified Modeling Language (UML2) diagrams. MDA is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. It a standard that was launched by the Object Management Group (OMG) in 2001. Blu Age provides all of the re-engineering capabilities discussed earlier, and more. All of Blu Age’s power is based on generating and approving human-readable models that Blu Age then converts into modern code.

Re-engineering

In short, you use UML diagrams to design your application in Blu Age, and it generates the application for the targeted framework according to your specifications .

Blu Age Components
Blu Age is a tool suite built on Eclipse and contains modules that address different components of the modernization process.

Re-engineering

Blu Age Reverse Modeling (BRM)
  • It automates the process of reading your original code (e.g. SCOBOL source) and identifying the interesting and necessary business logic that it will then convert into the diagrams of your model.
  • As you interact with BRM, it identifies and extracts business rules, calculations, and business logic into Unified Modeling Language (UML2) models, ready for you to review and approve.
  • Once approved, your models feed Blu Age’s Forward Engineering (BFE) with accurate business logic functional specifications.
Blu Age Forward Engineering (BFE)
  • Blu Age then applies its code-generation capabilities to automatically transform your models into complete, modern, high-quality application code in Java or .Net.
Blue Age Delivery (BDE)
  • This ensures the quality of the code delivered by BFE. BDE operates in a modern continuous integration and testing environment that is consistent with the today’s best software engineering practices

Blu Age re-engineering approach is different from both rewriting and translating. Rewriting is a laborious set of tasks, the success of which depends of learning ad properly applying new computer languages and new software engineering techniques. Blu Age lets you focus on ensuring the right business logic is transferred from your SCOBOL program to the new target platform.

Blu Age also differs markedly form automated translators. Automated translator converts the SCOBOL program wholesale, leaving you to read through unfamiliar modern code to determine whether the translation appears successful.

Blu Age puts you in the driver’s seat to determine the steps in mapping over the business logic, while relieving you of the burden of coding in a new unfamiliar language, or trying to make sense of automatically translated code.

So, how does Blu Age methodology work? Read about it in our next blog:

Modernizing SCOBOL Programs Part 3: Blu Age Methodology

moreinfo_icon

Feedback please

Do you find this tutorial blog helpful? Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of the home page) to get automatic email notification when a new blog is available.

Phil LyPhil Ly is the president and founder of TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.

Make Application Modernization a 2015 Priority

Happy2015

Help Your Business (& yourself) with Application Modernization

It’s that time of year again – when our thoughts turn to the holidays and year-end business gets wrapped up. As we turn the page on the calendar and begin planning for the forthcoming year – many of us will make New Year’s resolutions – and the majority of us will fail to keep them. So, this year, let’s make one we can keep that will benefit both our business and ourselves by making our jobs a bit (and potentially a lot) easier – Application Modernization.

Continue reading

Stuart Selip’s Closer Look at: Minimizing Development Risks

Want to minimize development risks? Adopt the right methodology!

risk_dice mda_left_new2-resized-600

In this column, I would like to discuss how the right methodology can minimize risks and accelerate the development process.

Development Risks

book_iconSteve McConnell, author of the classic book on development “Rapid Development: Taming Wild Software Schedules” attributes insufficient risk management as one of “classic mistakes” in development projects. He wrote:
“…Failure to manage risks is one of the most common classic mistakes.” And “… if you don’t actively manage risks, only one thing has to go wrong to change your project from a rapid-development project to a slow-development one..”

A software development methodology that fits your project can reduce your risk of software delivery failure. So, which risks need reducing?

  1. Implementation Risks – You deliver late, over budget, missing features, with low quality
  2. Impact Risks – The many benefits of modernization you promised have failed to materialize
  3. Strategic Risks– It’s tomorrow in the marketplace but you’re modernizing yesterday’s solution

If you have been programming on a legacy system, then chances are you already know of or are using a classic methodology – the “Waterfall” methodology.

Waterfall

waterfall_icon

This methodology has been around for more than half a century and remains popular. Waterfall processes begin with gathering requirements, and continue with requirements analysis, solution design, software development, and finally solution testing, before delivery to stakeholders.

Waterfall can deliver good results in software delivery when four key conditions are met:

  1. All requirements must be known before software development begins
  2. All stakeholders must agree on all requirements
  3. All requirements must remain unchanged during the delivery and adoption cycle
  4. The underlying solution architecture must already exist, and be well understood

When familiar stakeholders request small projects that make incremental changes to an existing software solution, the requirements of Waterfall are met. In other words, Waterfall properly supports the familiar work of legacy solution maintenance, like adding to, or modifying existing screens, reports, or calculations.

Modernizing NonStop applications or building new solutions in a new technology mix will put all of these conditions into question. Say you want to follow HP’s advice to NonStop users modernizing NonStop applications by using modern tools, object-oriented programming models, and technologies. Such a modernization initiative should be based on a modern model.

Waterfall is not a modern programming model! A modern programming model focuses on delivering software quickly, so stakeholders can judge whether it is correct and useful. Getting rapid feedback means learning and improving early in the modernization effort, rather than discovering a huge compound failure at the project’s end. Testing happens at the end of the Waterfall process. By then it is too late to avoid catastrophe.

New technologies are different than your current underlying solution architecture. For Example, Java is an object-oriented language and COBOL is not. The entire approach to problem analysis and solution design is different. Data flow diagrams and functional decomposition are not going to help you uncover the right classes and assign attributes and operations to them. Concepts like classes and operations don’t even exist in COBOL, and Waterfall won’t help you with this dilemma.

Here is the Good news – TIC Software can help you! Now you can benefit from rapid application development with modern tools, programming models and technologies. We make this possible with Model-Driven Architecture (MDA) and a methodology that gives great results.

NonStop, MDA, and Methodology

mda_flowchart

TIC Software (http://www.ticsoftware.com), using the MDA tool suite from our business partner BluAge (www.bluage.com) , and a pragmatic development methodology tailored to MDA, is helping customers build NonStop Java applications quickly.

Here is our methodology, at a glance.

  • We take an iterative approach to software development, focusing on exposing and eliminating software delivery risk.
  • Working with you and your team, we identify critical core application functionality early in the development cycle.
  • We build standards-based UML models to reflect the core functionality, generate code, and deliver solutions that your stakeholders can review quickly
  • Changes can be incorporated into the model, which is then regenerated instantly
  • Instead of trying to document every single requirement, providing a complete requirements analysis, and committing to a full design specification before a single line of code has been written, we short-circuit the whole process.

This approach quickly converges on the right result. At the end of the iteration, we collectively review and learn from our recent experience. Each subsequent iteration benefits from that cumulative learning.

The code we generate leverages popular Java frameworks like “Hibernate” and “Spring”, which are some of the tools recommended by HP. This means we are free to focus on building business logic and solving business problems for you, rather than wrestling with technical “application burden” issues like middle-tier object management and data persistence. You gain access to popular but complex frameworks so they deliver results instead of creating delay and frustration. As the Java world evolves and new frameworks and techniques appear, the BluAge MDA tool will evolve in parallel, making the “new” accessible and available with no disruption.download-free-ebook

For a deeper discussion of our straightforward approach to building great software with MDA, click here

Take Away

takeaway_iconOur Iterative software development approach with MDA exposes software delivery risks early, avoiding project catastrophes. Building graphical models of software enables business stakeholders and technical staff to participate, together, in modeling. Modeling focuses on business rules, calculations, and process flows, while code generation handles “application burden” with frameworks. MDA immediately generates those business models into executable solutions so business stakeholders can validate them, or make changes. The bottom line is protected by delivering value on time, and avoiding disaster.

Whether you are interested in brand-new development, or want to re-engineer your existing COBOL applications into Java, TIC and MDA will make things happen more quickly, with higher quality, and lower solution lifecycle cost.

Are you ready to learn more about TIC, MDA and NonStop? Schedule a conversation by emailing us at TIC Sales.

We also recommend to read:Model Driven Architecture Blog

Feedback please

Do you find this tutorial blog helpful? Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of this page) to get automatic email notification when a new blog is available.

stu_selip-resized-600Stuart Selip owns and operates Principal Consulting, LLC, an IT Strategy consulting firm that is a business partner of TIC Software. Prior, as the Chief Executive Officer of Luxoft’s Consulting Strategies unit, he managed delivery of IT Strategy consulting to Fortune 500/Global 2000 firms in the Financial Services, Insurance, and Media industries.

 

Stuart Selip’s Closer Look at: Standards

Who cares about standards? YOU should!

standards_icon

mda_left_new2-resized-600

Why?

Standardized products and services are valuable because they:

  • Provide consistent quality
  • Minimize learning curve
  • Support compatibility
  • Promote Portability

Rather than asking why we need standards, we might usefully ask ourselves what the world would be like without standards. What would it be like
to have to relearn how to operate a new car, a new phone or a new computer every time? Not very productive, for sure!

Likewise, one can reap benefits from IT standards in software engineering technologies. Like the Model-Driven Architecture (MDA), for example.
MDA proposed by the Object Management Group (OMG) defines an approach to information systems specification that separates the specification
from the implementation.

In this article, I will describe a success story of how a standards-based Model Driven Architecture (MDA) approach to building software allows a
large, complex software system to be delivered in a tight time frame, with high quality
.

casestudy_iconIt is a project that took place in 2005 and 2006, in the state of Ohio. The Statewide Automated Child Welfare Information System (SACWIS) project had an aggressive delivery completion time line of 18 months. The selected System Integration (SI) vendor opted to use a MDA tool to facilitate the development process.

The system was delivered in Java, while many of the development team members had little or no previous experience with that language,
its supporting technologies, or the iterative software development lifecycle approach used to drive the project.

The results were:

  • The MDA tool multiplied the productivity of the developers making 10 day delivery iterations possible by generating all of the “drudge” code while developers focused on delivering “exciting” stuff like business rules and process flows
  • Users and stakeholders gained confidence in the 10 day process, and gave rapid feedback to developers, avoiding late-term “surprises”
  • Despite a project-long 56% delivery team turnover, the architectural rigor of the MDA tool, and the high-quality UML models meant the project delivered on time, and with “right” scope

read-case-study

NonStop and MDA

TIC Logo ba_logo

Good news! Now you can benefit from rapid application development for NonStop using MDA!

TIC Software (www.ticsoftware.com), using the MDA tool suite from our business partner BluAge (www.bluage.com) , is helping customers build NonStop Java applications quickly.

Our UML models are used to generate code that leverages popular Java frameworks like “Hibernate” and “Spring”. This means we are free to focus on building business logic and solving business problems for you, rather than wrestling with technical “application burden” issues like middle-tier object management and data persistence. You gain access to popular but complex frameworks so they deliver results instead of creating delay and frustration. As the Java world evolves and new frameworks and techniques appear, the BluAge MDA tool will evolve in parallel, making the “new” accessible and available with no disruption.
takeaway_iconWhat’s the take-away? MDA, Agile, and Iterative software development are all standards-based, and in the hands of a committed team, provided a synergism that delivered complex mission-critical software for the State of Ohio on time, and with high quality.
Whether you are interested in brand-new development, or want to re-engineer your existing COBOL applications into Java, TIC and MDA will make things happen more quickly, with higher quality, and lower solution lifecycle cost.

Are you ready to learn more about TIC, MDA and NonStop? Schedule a conversation by emailing us at TIC Sales.

Feedback please

Do you find this tutorial blog helpful? Let us know what you think, and how we can make it even better. Don’t forget, you can subscribe to our blogs (top right-hand corner of this page) to get automatic email notification when a new blog is available.

stu_selip-resized-600Stuart Selip owns and operates Principal Consulting, LLC, an IT Strategy consulting firm that is a business partner of TIC Software. Prior, as the Chief Executive Officer of Luxoft’s Consulting Strategies unit, he managed delivery of IT Strategy consulting to Fortune 500/Global 2000 firms in the Financial Services, Insurance, and Media industries.