What is ZIM?

ZIM is an Enterprise grade 4GL (4th Generational Language) software suite. It’s the original Full Stack Application Framework create to over 30 years ago in Canada to help large organizations make the most out of their data. Unlike other full stack systems, ZIM has a uniform natural style programming language that spans across all levels of the software development process.

Seamless interface between language and database: The Zim programming language includes all commands necessary for data definition and data manipulation. No external interface or API is needed;

The Entity-Relationship (ER) Model: Zim’s unique database format is completely adherent to the ER Model, an extension of the relational model. The ER model allows for a transparent implementation of the semantic relationships among data sets. As such, relationships are defined only once and become an integral part of the data. This results in more compact and efficient code, since repetitive and redundant “relationship” code (e.g., the exact same sequence of JOIN statements (SQL) in several transactions) can be avoided.

Since the architecture of the Zim DBMS is inherently flexible, it allows for a diverse combination of components. Each component provides its functionality to the systems:as summarized below:

ZimQTC Client

GUI Deployment: A multiplatform client that provides a graphical user interface (GUI) to Zim database applications according to the platform on which it is running. While ZimServer executes all data operations in a Zim database application, ZimQTC Client executes local operations, displays form field values and collects events from end-user interaction;

Zim Client – TUI Deployment: A text-based client for Unix/Linux environments. Its operation is analogous to ZimQTC Client, except that the end-user interaction occurs via text terminal;

ZimIDE

Development: An integrated design studio, in which all Zim database objects (entity sets, relationships, roles, etc) and graphical objects (windows, forms, displays, form fields, etc) can be created and edited;

ZimExplore

Management: An integrated management console for configuring and managing ZimServer, creating and configuring Zim databases, viewing logs and running several other utilities;

The combination of the powerful and flexible Zim language with the clarity and conciseness of the ER model means that Zim database applications are easier to develop and maintain.

The Zim DBMS provides a complete system for database applications, whereas other solutions require a programming language, a database interface and a database management system.

Using our proven Entity-Relationship (ER) Architecture and the “English-like” Zim fourth generation language (4GL), Zim 9.00 includes new technology offering improved performance and functionality that will take your comlex database applications to a new level.

New features include: Multiplatform Thin Client (ZimQTC Client), Advanced Dedicated Lock Manager, and higher scalability, supporting more concurrent users while maintaining the same level of processing. With new data, transaction and locking mechanisms built to handle even the most complex data processing needs, we are sure you’ll be amazed at what Zim 9.00 can do for you.

With all data residing on a centralized server, administration and management of Zim applications and data is made easier saving time and money. Deploying applications is easier since all licensing is managed on the server and there are no product activations required on the client.

The Zim Database Management System (Zim DBMS) is built on a true client/server architecture.

ZimServer, the core of the system, is where all critical data resides, all data operations are executed and all user connections to databases are managed.

ZimServer communicates with different application clients to send requested data (e.g., queries and form field values), to receive modified data, and to receive input from end-users.

In addition to the application clients, other system components are also clients operating in conjunction with ZimServer to provide a specific functionality to the system.

The following table presents all Zim DBMS components, their function, their role in the client/server architecture and the platforms on which they are supported:

Zim ComponentFunctionRolePlatforms Supported
ZimServerData ServerServerWindows
ZimQTC ClientGUI Deployment / RuntimeClientWindows
ZimIDEDevelopment EnvironmentClientWindows
ZimExploreManagement ConsoleClientWindows

Zim:X ZimServer on Windows

Server: ZimServer runs on a dedicated Windows machine;

Management: ZimExplore runs on a Windows machine. It is usually on the same Windows machine as ZimServer, but it can connect to different instances of ZimServer on different platforms;

GUI developmentZimIDE runs on a Windows machine. It is usually on the same Windows machine as ZimServer, but it can connect to different instances of ZimServer  on different machines;

GUI deploymentZimQtc runs on Windows to deploy Zim database applications). It is can be installed on the same Windows machine as ZimServer to test applications or an alternate machine to use as an end user running the application.

The Zim DMBS Advantage

The Zim DBMS is an efficient, light-weight, powerful, and flexible database management system. There are three main features that distinguish Zim from other systems:

The Zim 4th generation programming language (4GL): The Zim DBMS has its own fully-featured English-like programming language, also called Zim;

Seamless interface between language and database: The Zim programming language includes all commands necessary for data definition and data manipulation. No external interface or API is needed;

The Entity-Relationship (ER) Model: Zim‘s unique database format is completely adherent to the ER Model, an extension of the relational model. The ER model allows for a transparent implementation of the semantic relationships among data sets. As such, relationships are defined only once and become an integral part of the data. This results in more compact and efficient code, since repetitive and redundant “relationship” code (e.g., the exact same sequence of JOIN statements (SQL) in several transactions) can be avoided.

The combination of the powerful and flexible Zim language with the clarity and conciseness of the ER model means that Zim database applications are easier to develop and maintain.

The Zim DBMS provides a complete system for database applications, whereas other solutions require a programming language, a database interface and a database management system.

From Zim 7 to Zim 9

The following table shows the components available in Zim 9 and their equivalent in Zim 7.

Comments

ZimIDE in Zim 9 has the combined functionality of DC and Painter Zim 7;

All previous runtimes (ZimMU, ZimRT, ZimPRT and Zim) have been replaced by ZimQTC in Zim 9

Leave a comment