phone_iphone

Features

  • Complexity isolated away
  • Communication - all done for you
  • Built-in error recovery and timeout handling
  • Session context management secured in the backend
  • Standard SSL security; HTTPS
  • Built-in Multi-language support for your screens (ie French & English)
tablet_mac

Simplified Application Migration

Eliminate the complexities of front-end development! Forget coding in HTML, JavaScript, and dealing with intricate browser frameworks.  We handle all of that for you, and provide even more value, making your migration to Java seamless and straightforward.

laptop_mac

Proven Reliability and Scalability

Drawing from over three decades of experience in developing software for mission-critical, nonstop systems, we've distilled the most essential features and principles into our Java-based solutions for Linux environments.  This unique approach combines the robustness and reliability of time-tested mainframe systems with the flexibility and power of modern Java technology.  The result is a highly dependable, easily expandable platform that brings the best of both worlds to your business applications. 

open source
Leveraging Leading Open Source Technologies

We build our solutions using widely adopted, cutting-edge open-source technologies that power much of the modern internet.  These robust and reliable tools benefit from the support and continuous improvement of a vast and active user community.  This ensures our systems are built on a solid foundation of proven, community-driven innovation.
selenium
Browser-Level Test Automation

We'll demonstrate how to automate your testing process directly at the browser level.  This is particularly valuable for regression testing and release cycles, ensuring that all modules function correctly and maintaining the overall stability of your application.  By automating these tests, you can identify and resolve issues quickly, leading to more confident and efficient deployments.

git
Streamlined Source Code Management

Our technology empowers you to write clean, modular source code using simple Plain Old Java Objects (POJOs).  This approach results in more precise and focused code components, significantly reducing the overall number of source elements you need to manage.  The simplified structure not only enhances code readability but also eases maintenance and updates, leading to a more efficient development process. 
Jtmcode + 'Hello World' Demo

Why COBOL has enjoyed so much longevity



done_outline

JtmCode: Accelerating Enterprise Application Development

Building an application is much like constructing an office building designed to grow over time.  Just as integrating essential systems like plumbing, electricity, heating, cooling, elevators, and security can be a complex undertaking, modern application development requires the seamless integration of numerous components.  While it’s often assumed that any developer can manage this complexity, the truth is that specialized expertise—such as that provided by full-stack developers—is crucial to ensure everything works harmoniously.
This is where JtmCode transforms the process.  We streamline application development by separating the foundational infrastructure from the business-specific elements.  Imagine receiving a fully operational building where your only task is to design and customize the offices to suit your unique business needs.  Each floor and room represents the screens of your application, and we’ve already established the connections and workflows so everything integrates seamlessly—just like the business flows of your application.

      Key Benefits:
      • Rapid Deployment: Focus solely on your core business logic, enabling faster time-to-market for your application.
      • Cost-Efficiency: Eliminate the need for significant upfront investments in infrastructure and low-level development.
      • Simplified Maintenance: Rely on a robust, pre-built foundation that minimizes ongoing maintenance challenges.
      JtmCode vs. Traditional Approach:
      • Traditional Method: Similar to building an office from scratch, requiring multiple specialists, extensive time, and significant expertise to get everything right.
      • JtmCode Method: Offers a ready-to-use framework where a Java programmer can quickly tailor functionalities to meet your specific business requirements.

By removing the burden of low-level development and infrastructure management, JtmCode allows you to focus on what truly matters—growing your business.  This approach not only accelerates development but also ensures your application is built on a stable, scalable foundation designed for long-term success.

JtmCode empowers businesses to move swiftly from concept to implementation, fostering innovation and agility in today’s competitive enterprise landscape.

Capabilities of Our Platform and Tools:

  • Effortlessly Build New Applications:  Design and deploy new web browser base applications with ease.
  • Migrate Legacy IBM CICS Applications:  Effortlessly transform your legacy IBM CICS applications, integrating them seamlessly into our contemporary platform.
  • Migrate Legacy Nonstop (Tandem) PATHWAY Applications:  Efficiently upgrade your Tandem PATHWAY applications through our streamlined migration process, bringing them into the modern era.

Our journey: how and why?


Building Business Applications in Today's Digital Environment

The modern digital landscape offers a multitude of approaches to developing business applications.  Two key categories are client-facing applications and back-office applications.  Client-facing applications, exemplified by platforms like Amazon and Shopify, rely heavily on visually appealing frontend interfaces to engage users, leveraging HTML and CSS to create interactive experiences.  In contrast, back-office applications prioritize simplicity and efficiency, focusing on supporting internal operations rather than customer interaction.  These applications often mirror the functionality of traditional mainframe systems, which have been optimized for handling complex, behind-the-scenes tasks.  Jtmcode has made significant contributions in this area by developing modern enterprise applications that are robust, scalable, and tailored to meet specific business needs.

What can we learn from COBOL

COBOL is a straightforward, business-centric programming language designed to process screen data sequentially.  Its primary value lies in efficiently retrieving database information to populate screen fields and updating databases with user-inputted data.  Renowned for its simplicity and alignment with business workflows, COBOL excels at these foundational tasks.

On mainframe systems, COBOL also provides granular control over screen elements—such as highlighting, protecting, or hiding specific fields—to enhance user interaction.

At JtmCode, we’ve modernized COBOL’s core principles by leveraging Java as the backbone of our framework.  We’ve built a foundational Java structure that allows developers to layer business-specific functionalities on top.  This strategy preserves COBOL’s simplicity and business-focused efficiency while harnessing Java’s flexibility and modern programming advantages, bridging legacy strengths with contemporary innovation.

What can we learn from CICS

CICS (Customer Information Control System) offers valuable lessons in designing efficient and robust mainframe system software.  Its ability to handle multiple concurrent user sessions, provide seamless navigation between screens, and efficiently manage data storage and retrieval demonstrates the importance of user-centric design in transaction processing systems.  CICS's ease of screen management, effective load balancing across multiple CPUs, and long-standing reliability highlight the benefits of a well-architected system.  The success of Jtmcode's similar system, which ran continuously for over three years without issues while handling hundreds of concurrent users, proves that these principles can be successfully applied to modern software development.  CICS's enduring relevance in the rapidly evolving world of technology underscores the value of creating stable, scalable, and user-friendly systems that can stand the test of time.

Screen Layout Specification

The structure and content of a screen are outlined in a straightforward text document, similar to a detailed index.  This document precisely defines each element on the screen, including its position, data type, size, and other pertinent attributes. This method provides a clear and organized approach to screen design, allowing for easy visualization and modification of the user interface components. 

Robust Error Management

Effective error management is essential for maintaining a smooth user experience. The system employs a strategic approach to error handling, prioritizing user stability.  When issues arise on secondary screens, error messages are intelligently redirected to the primary screen, minimizing disruption to the user's workflow.  This method distinguishes between system-level and application-specific errors, treating each category appropriately to ensure optimal system performance and user satisfaction.

Seamless Expandability

CICS offers exceptional expandability, allowing for the addition of new COBOL programs without any system downtime.  This enables users to access newly implemented features instantly and without interruption.  Jtmcode employs a similar approach, ensuring a seamless and dynamic user experience.

Session-Specific Data Management

In COBOL, the Working Storage Section serves as a dedicated area for storing data unique to each individual screen session.  This design facilitates efficient data comparison and context management, ensuring that each user's interaction remains distinct and properly tracked.  Jtmcode has implemented a comparable system, recognizing the importance of maintaining session-specific information for smooth and personalized user experiences.

Inter-Screen Communication Mechanism

In COBOL, the Linkage section facilitates communication between different screens.  This mechanism allows for seamless data transfer across the application.  For instance, when a user selects a client from a list, the system stores the client ID in the Linkage section and then passes it to the client detail screen, enabling efficient retrieval of specific client information.  Jtmcode has implemented a similar approach, recognizing the value of this efficient inter-screen data transfer method in creating a cohesive and responsive user experience.

Robust Authentication Framework

At Jtmcode, security is a top priority.  The company leverages industry-leading identity providers such as OKTA or Auth0 to implement OpenID Connect (OIDC) protocols for user authentication.  This strategy not only fortifies the system against Denial of Service (DOS) attacks but also manages critical security features including password recovery and multi-factor authentication.  By outsourcing these complex security mechanisms to specialized third-party services, Jtmcode ensures a high level of protection while focusing on its core business functionalities.

Streamlined Screen-CICS Interaction

The communication protocol between screens and CICS was engineered for maximum efficiency, taking into account the constraints of early hardware.  Jtmcode has adopted an innovative approach reminiscent of IKEA's flat-pack model.  In this system, only the crucial components are transmitted to the browser, which then constructs the complete screen interface.  This clever method significantly reduces server CPU usage, resulting in faster response times and enhanced concurrency.  By offloading some of the processing to the client-side, the system can handle more simultaneous user interactions, improving overall performance and user experience.

Mainframe Inspiration

Mainframes, bolstered by reliable systems like CICS and COBOL, have demonstrated remarkable longevity, remaining operational for over six decades.  By emulating the core principles and robust design of these mainframe technologies using modern tools, we can potentially create applications built to last for decades to come.  This approach combines the proven stability of mainframe concepts with the flexibility and scalability of contemporary technologies, offering a path towards building exceptionally durable and dependable software solutions. 

Enhanced User Experience Features

Intuitive features such as automatic tab navigation and enter key support streamline the user experience by intelligently advancing the cursor to the next appropriate field.  This ensures efficient data entry, minimizing manual effort and improving overall usability.  By automating these common interactions, the system provides a more fluid and responsive interface, enhancing user satisfaction and productivity. 



Please fill out this form
Please provide a Name.
Please provide a valid email.