Model & Architecture-Driven Transformation Technology
Our founder literally wrote the book on software modernization best practices! It features detailed case studies on some of the most interesting software modernization projects around the world — the book is even used at Georgetown University, Carnegie Mellon, and other institutions.
Modeling Makes the Difference
Instead of a line-by-line conversion, TSRI's modeling approach allows us to ingest a software application and truly transform it into a modern, native, object-oriented target language such as C++, C#, Java, or J2EE, running on Linux, Unix, Windows and/or any realtime target architecture. Our proprietary Intermediate Object Model (IOM) is a language-neutral modeling system that transforms all legacy source languages into modernized target languages. Through the use of the IOM, TSRI simplifies the O (n-squared) language transformation problem to an O (n+1) language transformation problem. The IOM provides a set of generic language constructs that serve as a reusable language-neutral formalism for assessment, documentation, transformation, refactoring, and web-enablement.
Also, since every application and every language is modernized and transformed at the meta-model stage, every prior project, regardless of language or industry, further develps the toolset and TSRI libraries, resulting in greater value for each future project. At the kernel of this framework are three high-level specification languages; JPGEN™ for defining grammar system and language models, JTGEN™ for defining transformations between these models, and JRGEN™, a 5th generation artificial intelligence language, for model manipulation and analysis that supports first order logic and predicate calculus as well as 3GL and 4GL language constructs.
TSRI's Rules and Grammar Engines
JPGEN™
Used for defining grammar system and language models
JTGEN™
Used for defining transformations between these models
JRGEN™ (a fifth-generation artificial intelligence language)
Used for model manipulation and analysis that supports first order logic and predicate calculus as well as 3GL and 4GL language constructs