01.05.2013 Views

Modernizing your applications with Visual COBOL ... - Micro Focus

Modernizing your applications with Visual COBOL ... - Micro Focus

Modernizing your applications with Visual COBOL ... - Micro Focus

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Modernizing</strong> <strong>your</strong> <strong>applications</strong> <strong>with</strong><br />

<strong>Visual</strong> <strong>COBOL</strong><br />

Michael Bleistein & Scot Nielsen


Key Concepts<br />

User Interface Modernization for Net Express & Server Express<br />

<strong>applications</strong><br />

• User Interface modernization using .NET or Java/JVM<br />

• Thick Client/desktop <strong>applications</strong><br />

• Thin Client/browser <strong>applications</strong><br />

• <strong>Modernizing</strong> using web services<br />

• BYOD<br />

• Best Practices and considerations for <strong>COBOL</strong> UI<br />

modernization


Universal Deployment <strong>with</strong> <strong>COBOL</strong> Server<br />

rapid, cost-effective, flexible service delivery <strong>with</strong> <strong>Visual</strong> <strong>COBOL</strong><br />

Cloud .NET Unix Linux Windows<br />

JVM<br />

INNOVATE CHOOSE DEPLOY<br />

Application Virtualisation: Mobile, SaaS and cloud-based solutions


<strong>Visual</strong> <strong>COBOL</strong> Deployment Agility<br />

<strong>COBOL</strong><br />

source<br />

<strong>Micro</strong> <strong>Focus</strong><br />

compiler<br />

<strong>COBOL</strong> is the unique solution<br />

The fastest & lowest risk route to Java or<br />

.NET<br />

INT<br />

code<br />

MSIL<br />

code<br />

Byte<br />

code<br />

Native Code<br />

Generator<br />

Native<br />

code


Desktop UI modernization <strong>with</strong><br />

Managed Code<br />

• .NET based UI<br />

– Window Forms (WinForms)<br />

– Windows Presentation Foundation (WPF)<br />

Take advantage of <strong>Visual</strong> Studio’s built-in UI design<br />

tools…but generate <strong>COBOL</strong><br />

• Java based UI<br />

– AWT, SWT<br />

– Swing<br />

Take advantage of Java UI design tools…and call <strong>COBOL</strong><br />

compiled as a Java Class<br />

5


Design Tools <strong>with</strong> <strong>Visual</strong> <strong>COBOL</strong> and .NET<br />

6


Design Tools <strong>with</strong> <strong>Visual</strong> <strong>COBOL</strong> and Java<br />

7


<strong>Modernizing</strong> Dialog System apps<br />

• Replace a screen <strong>with</strong> a<br />

Windows Form<br />

• Wrap a .NET user<br />

control as an ActiveX<br />

and use that in Dialog<br />

System


Service based modernization <strong>with</strong><br />

<strong>Visual</strong> <strong>COBOL</strong><br />

• .NET Web Service<br />

– WCF - Windows Communication Foundation<br />

• <strong>COBOL</strong> JVM and Java App Servers<br />

– Deploy Java and <strong>COBOL</strong> together under Tomcat<br />

– Use Java to provide web service and call <strong>COBOL</strong> on the<br />

back end<br />

• Web Services – Enterprise Server<br />

– Native code support for web services and J2EE app<br />

server deployment<br />

9


Best Practices<br />

10


Keep Existing <strong>COBOL</strong> portable where possible<br />

• Existing <strong>Micro</strong> <strong>Focus</strong> <strong>COBOL</strong> in many cases can be compiled as-is<br />

or <strong>with</strong> very little changes.<br />

• One set of existing <strong>COBOL</strong> source can be reused on multiple<br />

platforms (Native, .NET, or even JVM)<br />

• Provides for a clean and easier to maintain architecture<br />

• <strong>COBOL</strong>.NET class interfaces <strong>with</strong> “other” .NET languages in an<br />

object oriented way – Class Definition, Methods, Properties<br />

• Methods in <strong>COBOL</strong>.NET class can call legacy <strong>COBOL</strong> <strong>with</strong> standard<br />

<strong>COBOL</strong> syntax:<br />

– CALL “program” USING… or CALL WS-PROGRAM USING…


Begin separating layers of the application<br />

• Gives you more options as new technologies come along<br />

• I/O Layer, UI Layer, Services, Layer, Business Rules layer<br />

• Gives flexibility <strong>with</strong>in the application as well makes it<br />

more open to other <strong>applications</strong> and re-use


Procedural <strong>COBOL</strong> re-use in Multi-User<br />

<strong>applications</strong><br />

• Without changing one line of <strong>COBOL</strong>, allows existing procedural <strong>COBOL</strong> to run in<br />

multi-user <strong>applications</strong><br />

• Classes provided a runtime service classes that can be used by any .NET language<br />

that needs to use legacy <strong>COBOL</strong> in multi-user <strong>applications</strong><br />

• Only needed at the top level class that is calling the procedural <strong>COBOL</strong>. Any<br />

called modules below are also protected.<br />

• Absolutely necessary in server or multi-user .NET <strong>applications</strong> – Code at<br />

executed ON the server by many users<br />

• Allows you to bring valuable existing business logic forward into .NET server<br />

<strong>applications</strong><br />

• Provided in <strong>Micro</strong><strong>Focus</strong>.<strong>COBOL</strong>.RuntimeServices assembly<br />

• RunUnit class


Demonstration


Demo Architecture<br />

Client<br />

15<br />

Server<br />

<strong>COBOL</strong> JVM<br />

Server<br />

WCF <strong>COBOL</strong> .NET


Things to remember…<br />

• Where and how you want to deploy <strong>your</strong> <strong>applications</strong> will<br />

help determine <strong>your</strong> modernization strategy<br />

• <strong>Visual</strong> <strong>COBOL</strong> provide a number of choices for modernizing<br />

<strong>your</strong> existing <strong>COBOL</strong><br />

• Choices are enabled by support for and integration into<br />

modern development IDEs and associated technologies<br />

• Test Drive a <strong>Visual</strong> <strong>COBOL</strong> app in the cloud:<br />

http://vcdemo.microfocus.com/airportdemo<br />

You don’t have to take the B out of <strong>COBOL</strong> for it to be COOL!<br />

16


Demonstration


@microfocus or hashtag #devcon2013<br />

Follow us on LinkedIn or join the group<br />

Connect <strong>with</strong> <strong>your</strong> peers on the Community

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!