|
What is MANASYS Jazz? |
Jazz and the
Maintenance of Existing Systems
What can you use
MANASYS Jazz for?
MANASYS-Jazz
is a modern programming system for z/OS (real or emulated) batch, CICS, and Web
Service development. It
·
Makes
basic programming tasks very simple.
·
Makes
the basic parts of complex tasks very simple, without making the complex parts
more difficult.
MANASYS
Jazz (“Version 3”) is a total redevelopment of MANASYS AIM (Version 2), a
COBOL-generating programming system that was very popular in the Fujitsu
mainframe environment but was never ported to the MVS (now z/OS) environment.
MANASYS Jazz takes full advantage of technology advances since the 1980’s,
operating in the Windows environment but generating code for z/OS or Micro Focus Enterprise
Developer (MFED).
Like
earlier versions of MANASYS, Jazz is based on two key principles: -
A COPY
statement is the single place where you describe everything about this record.
It is not just a copy book of the fields in the record, but a description of the
record type: its relationships, where to find it, its indexes, and for each field:
validation rules, display formats, and so on.
You can even create your own data types with LIKE ensuring
consistent storage format, conversion and display rules, and validation rules.
This and
other innovations make MANASYS Jazz enormously productive. Examples have shown Jazz/COBOL ratios from
1:20 to 1:60, even over 1:100. User
feedback told us that "In
using JAZZ, programs that take hours or days can be done in minutes, data
mapping that takes a day or more to complete can be done in minutes”.
We expect
that Business Analysts (BA’s) will be able to write some programs themselves
with less effort than currently needed to write a specification. For more complex tasks technical specialists
will be involved, but the technical specialists can still use Jazz for most of
the problem, using 3GL-level (COBOL etc) knowledge to extend Jazz into areas
that it doesn’t yet support. With huge
reductions in development effort the need for COBOL programming is all but
eliminated, and turnaround from change request to delivery will be hours, not
months.
Here’s an
extreme illustration of the productivity available: we developed a web
service and related client starting with 21 lines of DB2 Table definition. Simple dialogs generate the web service (2500
lines of COBOL), JSON message description (320 lines), and an interface program
(1027 lines of C#). We’re left with the
simple task of providing the client display – a web page, Windows Form, or
mobile app – which we write in any DOT.NET compatible language (C#, Java, VB,
etc). In this example there’s 338 lines
of C#. 100% of the web service, and 75%
of the client was generated from dialogs.
MANASYS Jazz takes
to extreme lengths the re-use of information through a layered development
system. Rich data definitions and simple
dialogs produce brief Jazz programs, from which COBOL, JCL, CICS screens, and
JSON and C# objects for web services, are produced, offering unrivalled
productivity without risk.
No other software provides such a bridge between modern and legacy technologies, with the feel of modern technology yet generating both legacy objects (COBOL, JCL, BMS) and new-technology objects (JSON, C#).
Do you have a legacy of Mainframe systems developed in COBOL, and one or more of these requirements?
· Add function to legacy systems.
· Get faster, more agile development.
· Introduce modern programmers to the world of COBOL, CICS, and web services.
· Do more with existing development resources.
· Reduce the cost of outsourced development, even eliminating it in some cases.
· Improve the quality of new programming, and reduce future maintenance costs.
· Modernize their applications without the high risk of reprogramming.
· Make mainframe data available to new client apps through web services.
If yes, and you want something better than what you’ve always done, you should look at MANASYS Jazz.
We know that
you don’t always create new systems from scratch – sometimes you’re just adding
a few new functions to an existing system.
Jazz programs are vastly shorter and simpler than the corresponding
COBOL program, and so are closer to the original business problem, making
ongoing maintenance easier. That’s great once the problem is expressed in Jazz,
but how do you get there? Where do we
start?
Existing IT
systems are large and complex but most of this complexity is caused by the
solution, not the actual business problem. As we redevelop our old mainframe
systems into new environments, we usually replace an old mess of legacy
z/OS-COBOL code with a new mess of even more complex UNIX or Windows code. But there’s an alternative.
First,
import the relevant COBOL (or SQL or Easytrieve) record layouts into Jazz. Then add properties to these definitions that
aren’t in the COBOL: field headings, validation rules, identify record keys,
and so on. Where we can recognize data
types with particular rules use LIKE to define them as a data type.
Next start
developing a new function. With rich record definitions there will be much less
to write. As this process continues much
of the COBOL logic will be replaced by far simpler Jazz logic, still generating
COBOL programs, but reducing the need to acquire new skilled COBOL programmers.
Start by
adding a few Jazz-generated programs to your system, perhaps a new report, a
new screen dialog, a new web service. You don’t have to undertake a “big bang”
redevelopment of the whole system that would put your business at risk. You
can, if you wish, progressively replace your system section by section. Jazz is completely compatible with previous
programming technology, so you can add a few Jazz-generated programs to your
existing system. You don’t have to
redevelop the whole system in Jazz before you can make progress.
·
Batch
programming.
a.
Reading
files, and reformatting and writing out records.
b.
Producing
a Report, with control breaks, totals and subtotals. Simple reports are produced with
Easytrieve-like programs using PRINT statements. Alternatively, a visual editor provides
precise layout control, and the ability to specify control break processing
when needed.
c.
Easytrieve
Conversion. Easytrieve programs are
converted to Jazz through a 3-step process.
Very simple programs can be converted in a few minutes. Complex programs can take a day or two. Once converted to Jazz, a single click
produces COBOL that will compile and perform the same function as the original
EZT program.
d.
VSAM
and SQL records can be read by key for reporting and updating.
e.
Sequential,
VSAM and SQL test data can be produced
f.
Data
mapping and conversions. Jazz creates an
Excel spreadsheet from the input and output definitions (either Jazz or COBOL).
After this is edited to check alignment and mapping, Jazz generates a
conversion program.
·
Classical
CICS Programming
a.
Enquiry
programs that look up and display records from VSAM or SQL.
b.
Update
programs to display, update, add, and delete records.
c.
Automatic
handling of Alternate indexes
d.
Automatic
handling of generic keys and PF10/PF11 for Previous/Next record
e.
Handling
record hierarchies and displaying record lists, with automatic handling of
PF7/8 for Up/Down.
·
Web
Services Programming
a.
Web
Service Providers. A quick dialog
defines a web service provider and its input and output messages. Then the
actual logic is added, and [Process] creates the program, JSON [or WSDL], and
WSBIND objects. As with Classical CICS
programming, you can create enquiry or update programs for single records and
for record hierarchies.
b.
With
a JSON web service displayed in the Jazz workbench, click [Client]. A C# interface program is created that
encapsulates the rules of the service, providing methods (Enquiry, Update, Add,
Delete, etc) and properties for each field.
The interface is typically 75% or more of the client logic. It provides easy access to the web service –
just use the appropriate method). It ensures that rules like Update must follow
Enquiry are obeyed, and implements CICS-style pseudo locking. Assignments to a property (field) are checked
within the interface, following the same rules as in the web service,
preventing most data input errors within the client.
Currently
Jazz supports physical-sequential files (F, FB, V, VB, U), VSAM(=KSDS), ESDS,
and SQL (DB2 LUW and DB2 ZOS). DL/1 is
supported for Easytrieve conversion, but not yet for general use. Support for other database types (ADABAS,
IDMS) could be added if required. The original MANASYS product (Version 1) supported
IBM’s DL/I and MANASYS AIM (Version 2) supported both relational databases and
Fujitsu’s AIM/DB, a CODASYL-style database (like IDMS), so the requirements are
well understood, but development of these extensions awaits a customer
requirement and partnership.
·
Z/OS
Working with a z/OS mainframe Jazz submits jobs and handles job output
by submitting jobs and receiving job output through JES, just like any other
z/OS COBOL developer. The earlier
overview videos show MANASYS Jazz being used in this way.
·
Micro
Focus
When configured to work with Micro Focus Enterprise Developer, Jazz
writes its generated COBOL and JCL into shared folders and then passes control
to MFED where the program is compiled, JSON and binding files produced when
necessary, and the programs can be tested interactively.
·
UNIX
and LINUX
MANASYS Jazz supports general versions of COBOL, and it should be
possible to use it in UNIX and LINUX environments with the addition of suitable
“JCL Templates” that will generate appropriate scripts instead of mainframe
JCL. We have an enquiry from a potential
customer interested in this, it may be available later this year (2025).
Will be
driven by customer requirements. We have
a long list of potential improvements, we need customer feedback to tell us
which of our ideas are worth pursuing, or to suggest other enhancements that we
haven’t thought of.
See Frequently Asked Questions
http://www.jazzsoftware.co.nz has a range of brief videos showing
what Jazz can do, and links from the Help and Training Page provide complete documentation,
allowing you to drill down to the detail of the Jazz Language Reference, and the Jazz Users’
Guide.