Introduction
This chapter introduces EMB and describes its major functions.
1. Overview
Enterprise Module Bus (EMB) is TmaxSoft’s proprietary technology that implements the Microflows concept presented by Gartner as Intra-SOA.
Enterprise Service Bus (ESB) removes interdependency between systems or services and increases agility, productivity, and reusability by quickly completing service orchestration through visual tools. Like ESB, EMB allows to create micro individual services quickly and flexibly through orchestration between subcomponents without interdependency.
ProFrame processes applications by using technologies such as EMB. It also creates and combines service modules to create a new service. That is, it reuses existing service modules to develop a new service without coding and implements service-based architecture.
EMB minimizes interdependency of micro individual services between applications in a system (or domain) and uses GUI tools to visualize workflow for development productivity, flexibility, and reusability.
The following describes EMB roles in each step.
-
Design and Development
-
Service Module Designer (EMB Designer)
EMB Designer is a module design tool provided by Studio. It is used to develop an application by using EMB in ProFrame.
EMB Designer supports the following.
-
Defines service specifications and flow.
-
Implements application module logic.
-
Sets service integration.
-
Simulates implemented services.
-
-
EMB Engine
EMB Engine provides the following functions.
Function Description Source Generation
Converts EMB Designer’s flow diagram into executable C source code.
Hot Deploy
Updates service modules without server downtime.
Meta Management
Manages metadata of each resource.
-
-
Operation
Each module provides the following function depending on the module created in EMB.
Module Description Service Module
Controls service flows.
Business Module
Implements function-oriented application logic.
2. Major Functions
EMB provides the following functions to implement service-based architecture.
-
Business logic as assets
In EMB-based systems, you can check service flows through a GUI tool without checking existing source code. Therefore, they can make service-related data as knowledge and assets.
-
Makes application service flows as assets.
-
Reuses application logic through Module Pool and Property Pool functions.
-
Standardizes meta repository based applications, data, and interfaces.
-
-
Flexible composite service development
In EMB-based systems, you can easily implement complex integrated services in Studio. For example, you can implement an integrated service that combines multiple services by disassembling and assembling the service modules in EMB Designer. In addition, you can select a RI/WS area for each module called by EMB Designer. This allows to develop flexible modules that minimize the impact of module modification on other developers' modules.
-
Supports architecture where it is easy to assemble and disassemble application services.
-
Creates service integration by using Studio.
-
Makes application logic functions based on Module Pool as a block.
-
-
Architecture with high performance
EMB-based systems guarantee not only easy design and development but also high performance of executing created services.
-
Minimizes performance load of ProFrame because service is created by using Source Generation.
-
Uses Dynamic Call to provide architecture that minimizes 2PC. Dynamic Call is ProFrame’s interface module that dynamically replaces libraries during system operation.
-
Uses CommBuff to minimize disk I/O by sharing data between application modules. CommBuff is ProFrame’s interface module that shares data between application modules and manages memory.
-