ModelCVS - Semantic Transformation Shell

Tuesday, June 15, 2021

My Best Programmer Is My Computer ..

Back in early 2017 I set up this blog. 

Due to the intensive work and the still changing project scope, we have suspended the contributions for a period.

Now that our work is taking shape and the first commercial version is getting closer, we are starting to present our work in parallel. We are getting back to Normality. 


The blog entries will mainly be in the area of "Software Engineering" and will use our developed technology as a guide. 

It's going over the practical applications and scenarios using STS functionality and reports and give users ideas and inspirations, like how a high quality software can be created and maintained, especially when it must be adjusted repeatedly as a response to ongoing technological changes.

The focus is on modelling and intelligent transformation and code generation with the lowest possible proportion of handwritten code under the Motto "My Best Programmer is my Computer". The Software Modernisation through Transformation and Code Generation as a basis will be discussed in some detail.

Five Pillars of the ModelCVS technology stand out. These are, 

  • The Analysis and Evaluation of the current software status for assessment.

  • Systems Redesign and the automatic Code Restructuring. 

  • Eventual adjustments, Replacement of the Persistence Layer of the programs. 

  • The Model to Code Regeneration into its original or into other programming languages. 

  • The fifth Pillar in the first version is the domain-specific functions available for COBOL, Relational Data Base Schema and Ecore.

The analysis and Creation of Software Metrics for an assessment includes methods such as the "Cyclomatic Complexity" or "Function Point Analysis" and it forms the beginning of the Development Cycle. 

In a further episode a Redesign may be applied with Code Restructuring and various replacement of Code parts with more modern software practices. 

An example is the transformation of the persistence layer (technology) into more modern, suitable ones

This Blog deals with this topic giving practical examples throughout our long career to date.

A model-based program restructuring language (JLM, Java Language Mapper) will be  presented, with which the user himself will define and implement Restructuring Rules (Rule Sets).

The reverse engineering of an existing program code, its transformation and its improvement back into the source language or into other programming languages or frameworks will be discussed and practical examples will be presented.

Transformation domains for relational Databases,  COBOL and EMF Ecore for various purposes and functions will be presented. 

STS itself is a complete model-based system under Eclipse Modeling Framework developed by its own technology, a so called Tool Tool

A complementary Cloud Solution (SaaS) in AWS (Amazon Web Services) will round up the functional range.

Monday, June 5, 2017

ModelCVS and the Easy Way of Transformation

 Since I started a Software Engineering career back in 1980, I always tried to automatise software development and testing. My motto has always been to generate the software wherever possible. Doing so the Computer works for the programmer as a kind of sub-programmer and produces code. Isn't it a nice thing?

Actually this is the main reason why mankind invented computers. To overtake the burden of some organisational and repetitive work from human beings.

Modeling a system is here a crucial step. For the ones who ask the meaning of a model, we define a model as "A schematic description or representation of something, especially a system or phenomenon, that accounts for its properties and is used to study its characteristics". 

Modeling something is a way of understanding the behaviour of the source system. An independent model lets us understand the complicated systems in an easier way.

In Telecommunication, the world had an outstanding speed of technical improvements in the recent years.
From mainframes up to the hand held devices many "terminals" make us the practical life easier.

Booking a flight or hotel or arranging some bank business or any giving an order at a grocery shop can be accomplished just using one of the user interfaces of the available telecommunications infrastructure.

Having this in mind the companies try to use the state-of-the-art technologies and offer most recent consumer interfaces. 

Banks, retail industry, transportation and logistics companies all need the most modern technical opportunities in order not to lose the their competitive advantages.

Can they easily adopt their software assets at the speed of the technical development? 

Yes they may, but need some help. The adoption of millions of lines of software code from one technology to another one is very time consuming and manually error prone.

At this point I have to emphasize our technology ModelCVS. ModelCVS is a model transformation technology. It is based on eclipse and is capable of converting various technologies to each other. For example we can convert COBOL programs to CAGen Models or to JAVA programs. 

This rapid and safe method helps customers save large amounts of money. In a short period, systems can be made available to use in a more advanced technology.

This Blog is about ModelCVS and the emerging product STS. STS is the abbreviation of Semantic Transformation Shell. 

We will try to inform You about the details, success stories and some other technical progress from the transformation market space and technology.

My Best Programmer Is My Computer ..

Back in early 2017 I set up this blog.  Due to the intensive work and the still changing project scope, we have suspended the contributions ...