Technology White Paper
Abstract
HAP is designed to meet the needs of enterprises in digital construction. Focusing on the complexity of backend applications, it extracts the data structure of high granularity, user roles, permissions, workflow and other definition capabilities, providing both developers and users a flexible platform to implement various enterprise applications.
HAP is a modern enterprise software product based on container technology. The public cloud edition runs on nocoly.com, while the container edition can run on the customer's own computing facilities via Docker.
Core Values:
Build enterprise apps without coding, Releash the user power by providing utter flexibity;
Get rid of DevOps process, Enable business engineering;
Speed up application implementation dramatically;
Make dataset unified by integrated application platform;
Provide common open platform for all applications created;
Intuitive and fluid interactive design;
Fully implemented with cloud-native technology stack.
1. Customer Value
HAP product is aimed at addressing key pain points in the digital construction of enterprises. Each value corresponds to a problem that enterprise IT users have been trying to solve. The no code/low code application platform integrates mature technologies in the fields of cloud computing, big data and application development and deployment environments, and is the main solution for enterprises in their digital transformation efforts.
(1) Ultimate flexibility and implementation
For information system construction around business management processes, such requirements are usually difficult to be met by off-the-shelf software products, but have to rely on tedious custom development. Custom development inevitably involves complex requirements communication, prototype validation and costly development, testing, deployment and improvement processes. APaaS, with paradigmization and high-granularity configurability, enables the entire process to be achieved through a no-code or low-code approach, replacing costly custom development and dramatically reducing the cost. In this way, not only is the first implementation fast and flexible, but APaaS still provides convenience when the system adjusts as the business changes.
(2) Data interconnectivity
There are data silos of applications existing among medium and large-scale enterprises. Some are from custom systems developed with different technology stacks, and some are from application software products of different brands. In the process of digital management, there is a need to connect these data silos to enable cross-application access to data or to precipitate application data into a data middleware. Thereby, a more flexible digital collaboration can be achieved.
(3) Open design
Enterprise applications built through HAP are automatically established with standard open interfaces (REST), and complete interfaces for all data objects to add, delete, check and modify. Webhook triggers and action nodes in the workflow can also be docked with other application APIs with no code. The front-end interface of HAP can be embedded in other application pages, and the pages of HAP can also be embedded in other applications.
(4) Easy-to-learn application building
Most of the application scenarios can be built in a no-code way. Although the product capabilities are in-depth, the interaction interface is simple and intuition-driven. Non-developers who are familiar with business processes can also get started.
(5) Cloud-native technology stack and cross-cloud deployment capability
HAP adopts a microservice architecture and makes extensive use of cutting-edge cloud-native technology stacks and mainstream open source frameworks, including Java, Node.js, MongoDB, MySQL, Redis, gRPC, ElasticSearch and Kafka. Through container technology and automatic operation and maintenance orchestration, it provides users with a highly resilient and reliable application operating environment. HAP can both run on public clouds and on any customer-owned computing facility. The functional features of both are the same.
2. Application Scope
With HAP products, users can build various enterprise middle and back end applications with no code, which, in general, includes the following application types:
(1) Core business management applications based on relational data structure
For the business management systems built around the core business in different industries, such as the purchase-sales-inventory system in the distribution industry, production execution, material management and equipment management systems in the manufacturing industry, project management system in the modern service industry, etc., the alternative to these scenarios can be to purchase a specialized suite of software products or to resort to custom development. While an APaaS product like HAP can provide the both of personalization, high flexibility and high development efficiency.
(2) Applications that rely on mobile applications to collect data
Application scenarios in manufacturing, engineering, retail, and other industries that require specific functional staff to collect data from the front line.
(3) Applications that write data and build management board with API interface
Extract data from multiple heterogeneous systems, precipitate them into a unified data center, and build a management cockpit in combination with the custom dashboard of this product. This application scenario replaces the BI+ETL solution with another way.
(4) Department-level applications for specific business segments
Because of the ease-to-use and code-free characteristics of no-code system, user companies can have non-developers from business departments directly build or lead some simple applications. With the unified application management capability, it can also prevent shadow IT problems.
(5) Applications built for process automation
The automated workflow based on HAP can bridge the past interrupted processes that require manual coordination, such as the automatic connection of orders, deliveries and invoices; time-triggered checklist generation, equipment maintenance reminders, contract expiration reminders, etc.
(6) Applications built to enable data flow, filling and approval processes
Build manually controlled workflow applications based on form data, approval and filling nodes for complex data collaboration.
Below is a list of over 30 common categories of enterprise applications and an assessment of the replacement capabilities of APaaS product.
Name | Full Name | Description | APaaS Replacement Capability |
---|---|---|---|
ABM | Account Based Marketing | ABM is one of the more segmented of modern marketing strategies, and the related software products are a branch of MAS. It changes the traditional way of creating content and marketing campaigns, but generates highly personalized content based on each customer. It is more about the quality of customer communication than the quantity, so it is often used in B2B, luxury goods, airlines, high-end hotels, insurance and other industries. | 6 |
APS | Advanced Planning and Scheduling | APS refers to an application that helps to plan and schedule for manufacturing processes, focusing on optimal use of production materials and equipment resources, with the goal of maximizing capacity utilization. | 6 |
ATS | Application Tracking System | It is an application that manages the entire recruitment process of a company. Its main value is to integrate resume submission from external job websites and other resume pools, and to manage the entire process from resume submission to hiring of candidates. Most ATS systems come with the ability to help companies build their own talent pools. | 5 |
Accounting | Accounting Software | Financial software in a narrow sense refers to the recording of financial documents through double-entry bookkeeping, forming a financial general ledger and providing analysis of financial indicators. A complete financial suite also includes modules for purchasing and inventory tracking, invoice processing, the receivable and payable management, etc. An ERP suite in the complete sense should include a financial management component. | 8 |
BI | Business Intelligence | BI is an important classification of enterprise software that is responsible for extracting data from various business data sources and building analytical databases, providing business analysis to management decision makers through visualization capabilities. Full-stack BI suites include data warehouses, ETL (data extraction, transformation, and loading) modules, OLAP query, and visual representation layers. BI is often integrated with other enterprise applications through databases and APIs. | 5 |
BPM | Business Process Management | BPM is a collection of abstract tools for managing and driving various process activities in an enterprise, enabling the design, operation and analysis of various business processes across functions. In practice, BPM is a tool to meet the needs of approval control and business automation. Most BPM software is designed to follow the BPMN specification, allowing visual creation of workflows, monitoring of workflow running, and providing the user interaction interfaces necessary for workflow operation. Emerging low-code development platforms have features that are crossover with BPM. | 9 |
CAD | Computer Aided Design | This is an old software category that has continued from the PC era to the present. In the enterprise software category, it refers to design suites for the architectural and engineering, manufacturing, and entertainment media industries. Mature CAD suites provide not only design tools, but also components such as component libraries, material libraries, and design file management. The main users of CAD are engineers, interior designers, animators, architects and engineers. | 1 |
CAM | Computer Aided Manufacturing | It is a twin product of CAD. Usually input design files, optimized material and equipment parameters in CAD applications and give final execution instructions to digital machinery and equipment. It is typically used in machining industries that use CNC machine tools and equipment. Some CAD vendors also have joint CAM products, which are also known as CAE (Computer Aided Engineering). | 1 |
CEM | Customer Experience Management | CEM is an emerging category of enterprise software. It includes customer service systems in the general sense, but with a greater emphasis on touchpoints around the full customer lifecycle and omnichannel. Its product capabilities therefore include personalized delivery of customer portals, convenient and consistent customer service support systems, and digital experiences, with the goal of measuring and improving customer satisfaction at different stages. | 5 |
CMS | Content Management System | Content management systems mainly serve the management and deployment of enterprise website content. Conventional enterprise CMS includes management of news, web pages, blogs and e-commerce platforms, where business users can directly create and edit online content and publish without code writing. The domestic web environment attaches more importance to the management of mini programs and official accounts in the WeChat ecology, and related products also belong to the category of CMS in a broad sense. | 3 |
CRM | Customer Relationship Management | It is a very important category in enterprise software that is responsible for managing the business aspects of customer capture and sales. CRM in a broad sense includes sales automation, marketing automation and customer service automation, while in a narrow sense it refers to the sales funnel from lead acquisition to customer conversion. CRM products are numerous and are important players in the enterprise software market, so many CRM products are more or less extended to some business aspects other than sales. CRM in the standard sense requires the management of leads, opportunities, customers, contacts, products, orders, price lists, contracts and other basic business objects. | 8 |
CS | Customer Support | It is also known as a work order management system or HelpDesk Software, which serves the customer service departments, providing cross-channel customer service platform capabilities and managing the full lifecycle of customer service work orders. Because of the specialized nature of phone support, there is also platform software that specifically serves call centers, and they also belong to this category. A complete CRM suite usually contains a customer service module. CS also crosses over with CEM (Customer Experience Management). | 7 |
DMP | Data Management Platform | Although it is a seemingly generic software category, it primarily refers to audience data management for online advertising. DMPs can collect and manage data about customers, audiences and campaigns from advertisers, advertising agencies and distribution media, so as to provide advertisers with detailed analysis and planning tools for online campaigns. | 0 |
DMS | Document Management System | It is an application used to manage documents shared within an enterprise, but it goes beyond basic file storage to include a series of enhanced features such as image scanning of documents, text recognition, version control, meta data management, format conversion, collaborative editing, permission control, template management, search, and electronic signature. So it is suitable for customers in industries with special or intensive requirements for document archive management. | 4 |
ERP | Enterprise Resource Planning | It is the core application for manufacturing and distribution enterprises, covering almost all business processes of such enterprises, managing key business aspects such as customers, sales, purchasing, warehousing and finance. Due to its comprehensiveness, there are also many enterprises that use ERP to refer to all integrated business systems, even non-manufacturing and trading industries, so in market practice, the boundary between it and CRM products is often not that clear . | 9 |
HRM | Human Resource Management | It is a comprehensive suite for managing HR-related business, including personnel records, compensation, benefits, performance, evaluation, training, attendance and many other sub-sections. It is used to carry organization information and export master data of personnel and department structure for other applications. | 7 |
LCAP | Low Code Application Platform | LCAP, also known as LCDP (Low Code Application Development Platform), is a model-driven application implementation mode. It defines application elements including data model, views, rules and workflows through a deep visual configuration interface. It is suitable for implementing middle and backend applications of relationship database type. There are also some low-code products that provide the ability to customize front-end pages, so they can also be used for some front-end type applications. LCAP and the APaaS that emerged in the cloud computing era are gradually converging to become a unified category. | 10 |
LIMS | Laboratory Information Management System | It primarily serves laboratories in R&D, healthcare services and manufacturing organizations, providing them with the management of laboratory equipment, materials, samples, test results and workflows. Users rely on such software to provide compliant data recording and reporting, to analyze experimental results. | 9 |
LMS | Learning Management System | In an enterprise, the LMS is used for training and exams for employees, customers and partners. It should be able to create and manage lesson plans online, manage the learning process of learners, and organize learning communities in groups or classes. In the education industry, the LMS is the core business system that enables paperless teaching and supports the online learning. | 5 |
MAS | Marketing Automation Software | It is an application for companies with repetitive and scaled marketing activities, with a focus on three business objects, customers, leads and marketing campaigns. The marketing automation suite is capable of managing marketing campaigns across various channels, such as email, SMS, social media, landing pages, etc. MAS can be understood as part of a broad CRM and integrated with parts of SFA to bring leads and opportunities to the sales funnel. MAS for Internet companies can also be highly integrated with user products to capture user behavior in real time for dynamic user segmentation. Tools and software such as Email, SMS marketing also fall into this category. | 5 |
MES | Manufacturing Execution System | MES in the manufacturing industry is responsible for managing the process from the production of raw materials to the finished product manufacturing. Specifically, it creates and tracks manufacturing work orders, determines manufacturing procedures based on process routes, captures and records raw material usage and work hours during manufacturing, and analyzes production efficiency. MES generally requires integration with ERP or PLM applications. | 8 |
OA | Office Automation | It is a mainstream domestic enterprise software category of great inclusiveness and comprehensiveness. It generally refers to the supporting systems for internal communication, documents, tasks, processes and so on. There are also OA products of complexity to provide a more complete portfolio of features, covering the management of internal personnel files, orders, contracts, suppliers and other business data. Because of its relatively high degree of integration, OA is crossed with specialized applications such as knowledge management, collaborative applications, process management, personnel management, etc. | 9 |
PDM | Product Data Management | PDM, also known as PIM, integrates the management of technical and marketing information about products. Enterprises with a large number of products or product versions generally need to use PDM to organize product information, share it internally or among channel partners, to keep product information up-to-date and consistent. | 9 |
PLM | Product Lifecycle Management | PLM helps R&D-oriented organizations manage the product development process, including innovative ideas, prototypes, iterations, and retirements. PLM can manage various design and process changes, features and requirements, drawing documentation, quality metrics and testing, BOM (materials), compliance requirements, supply chain, etc. | 9 |
PMS | Property Management System | PMS is the core business software for industries such as rental properties and hotels. It manages property assets, tenants, leases and the business activities. The advanced PMS suite also has the ability to dynamically manage room prices to maximize revenue. In addition to the generic PMS, there are management applications around various specific commercial property forms. | 6 |
POS | Point of Sales | POS is a combination of hardware and software system used at the retail end of the industry to collect payments and record sales flow. In the new retail context, POS has been gradually replaced by more integrated solutions. Cash registers have also been replaced by mobile payment terminals. In a related area, there are also various self-service sales hardware that assume the common functions of POS and sales clerks in the past. | 1 |
PSA | Project Service Automation | PSA is also known as Professional Service Automation because most professional services are provided on a project basis. The PSA suite helps professional services teams stop using various tools to manage customers, time, costs, contracts, collections, materials, etc. in a fragmented manner, instead adopting a unified platform to create an automated interface between sales, service and financial processes. | 8 |
SCM | Supply Chain Management | SCM manages the raw material planning, procurement, logistics, warehousing, and integrated production process of a manufacturing company and then goes on to manage the distribution of finished goods to customers. Compared to ERP suites, SCM manages the supplier sourcing process in more detail, usually consisting of modules for supply chain planning, procurement, order management, logistics and transportation, warehouse management, and demand management. Because of industry differences, the product market for SCM is fragmented and there is rarely a single solution that can fit all industries. | 7 |
SCRM | Social CRM | SCRM is a typical category that has impacted the shape of enterprise software in the social media era. It can be understood as a business application that revolves around sales and marketing management, and integrates the ability to interact with customers through social media. In western countries, social media mainly refers to Facebook, Twitter, Instagram, etc. while in the Chinese market, it refers to WeChat. Therefore, sales and marketing applications built around WeChat and WeCom can be classified into SCRM. | 3 |
TMS | Transportation Management System | TMS provides a more sophisticated management capability in the logistics aspect of supply chain management, which includes the management of freight rates, transportation contracts, transportation scheduling, cargo tracking, route planning and optimization, etc. TMS is generally used in the freight industry and large manufacturing industry with high logistics density. | 6 |
WMS | Warehouse Management System | WMS is an advanced application of general inventory management that serves large warehousing, retail and logistics industries to meet their in-depth needs in reducing personnel errors and paperless operations. A complete WMS system has many advanced features, including integration with IoT devices for identification, picking, labeling, automatic replenishment, automatic task assignment, counting systems, returns management, and the ability to integrate with e-commerce platforms, ERP software, and more. | 6 |
Objectively speaking, there are also enterprise applications that do not work well with zero-code or low-code application platforms for implementation. They are:
(1) Front-end type applications for consumers.
(2) Professional tools such as CAD/CAM.
(3) Some areas that are already covered by cost-effective standardized products, such as purchase-sales-inventory system for micro-enterprises.
(4) Vertical applications for specialized scenarios with special views and algorithms, such as cashier management for the restaurant industry and dynamic room rate forecasting for the hotel industry.
3. Implementation Principle
The fundamentals for building enterprise middle and back end business applications with no and low code lies in the fact that most of these applications are built on the two core goals of data management (CRUD) and workflow. For a typical enterprise application building, there are similar parts in the design and development process. Application Platform as a Service (APaaS) extracts these similarities and replaces the front-end and back-end design and code development processes of a project with an application-based approach.
In order to deliver a friendly and efficient APaaS product, different vendors may adopt slightly different implementation mechanisms. The solution chosen by HAP can be broadly described as: build a data model through form visualization, create data views for different roles on the model, and implement custom data actions and automated processes through workflows with trigger nd action nodes, and built-in data visualization capabilities. It consists of the following as a whole:
(1) Data structure. Create a data model through form visualization, where the controls directly correspond to field types. And the necessary relationship data structure is implemented through associated worksheets, formulas, and fields in associated worksheets. Controls such as signature, positioning, member, department, and autonumber are designed to support specific business scenarios.
(2) View. Define the form of data presentation with different types of views, including grid, board, org, etc. Each view can be configured with flexible data filtering conditions, showing or hiding rules of fields, and sorting logic.
(3) Statistics. Create charts in worksheets, including bar charts, line charts, pie charts, etc. The created charts can be for personal use or published as shared charts in application.
(4) Custom page. In addition to worksheets and views, users can create a blank page where they can visually configure different types of components. It is quite common to implement a management dashboard by adding charts.
(5) Users, roles and permissions. Users can customize the roles in the application and configure permissions for each role to access, edit, delete and add data. The permission definition can be down to the field level, enabling flexible application distribution by adding users or departments to roles, and fully visualizing RBAC (Role-based access control).
(6) Workflow. Automated workflow consisting of triggers and action nodes can be understood as IFTTT (If this, then that) in enterprise applications. The workflow can be triggered by data changes, dynamic time and Webhook methods. Action nodes enable data query, locate, updating, adding, and deleting, as well as performing manual control processes such as approving and filling, sending personalized notifications, and pushing data to external APIs. Workflows can also be triggered by custom buttons attached to specific views.
With these six parts, users can build any enterprise application based on data management and workflow with no code.
Differences between visual IDEs and rapid development tools (RAD)
The HAP product and many visual IDE products, as well as traditional rapid development tools, are often referred to together as low-code platforms. All products share a common goal in terms of achieving efficiency in applications. However, in terms of technical path selection for implementation, HAP is fundamentally different from the low-code tools of IDE model.
(1) As an APaaS product, HAP fully adopts the cutting-edge technology stack in the field of cloud computing, no more source code generation for single application, and no more code compilation process. The application runs directly on the platform with a model approach. Development requirements such as version control and debugging are also done through the application configuration interface.
(2) Most of Mindao's capabilities are no-code based, involving low-code in code block nodes of workflows and docking and development work only. Therefore, HAP is able to target business developers without relying on the user's software programming skills.
(3) HAP features application exchange capability. Any application built by any tenant can export models. Models can be redistributed or imported to other tenants' environments.
(4) Compared with development tools, HAP is easy to learn and easy to use. Business developers can master some simple single-session applications through quick learning, while professional developers and information architects can realize complex applications with the high-granularity definition capability of this product.
4. Complex Application
Before delving into HAP products, users may have misconceptions about the application implementation capabilities of zero-code products, thinking that no-code APaaS is only suitable for building some simple applications but cannot be for core business problems.
However, this is not the fact.
The complexity of enterprise software may be attributed to the following characteristics of enterprise applications:
(1) A large number of data objects, complex data attributes, and multiple levels of data association.
(2) The application involves many roles, and each role requires a differentiated permission configuration, which is related to several elements such as data attributes and organizational structure.
(3) The data management itself cannot meet the needs of the process, involving data flow, approval, filling, etc.
(4) There are many dimensions for data analysis, provided in large quantities by application role in reports.
(5) Involves special and highly difficult algorithms.
(6) Involves integration with external applications.
The so-called complex projects, whether it is a file management system for military enterprises or a production execution system for SMEs, are essentially composed of such complexities.
How APaaS to respond
To break it down into relatively simple segments. This mindset is a fundamental tool for solving complex problems.
For the above complexity, find the corresponding capability modules in the APaaS product and then implement a high-granularity configuration based on the custom capabilities that these modules can provide.
Worksheet
(1) Data tables need to support various data types and be configured with various appropriate presentation controls.
(2) Data objects can be added freely.
(3) Data objects can be associated with each other in all modes (one-to-one; one-to-many; associate current worksheet).
View
(1) It can present different dimensions of the data table to different user roles.
(2) It supports flexible row filtering, column filtering, sorting, and configuration of showing or hiding fields on the form.
(3) It supports configuring different custom buttons for different views.
Roles and Permissions
(1) Assign custom roles to the application.
(2) Configure permissions of high granularity for different roles, including pemissions of adding, deleting, viewing and modifying view and worksheets, even down to the field level.
(3) Combine with the user's organizational reporting relationship to define the scope of data permissions.
(4) Distribute function pages and custom buttons for different roles.
Workflow
(1) Trigger a workflow with any data change, time condition or manually.
(2) The workflow should support query, locate, add, modify and delete data.
(3) The workflow should have the ability to operate with bulk data and arrays.
(4) The workflow should be able to couple the approval and filling work with manual participation.
(5) The workflow should support high-level scripting language to implement special algorithms.
(6) The workflow should be able to operate on any data type (text, numeric, multiple choice, file, etc.).
Reports
(1) Report visualization based on arbitrary data objects and associated data objects.
(2) Diverse report types.
(3) Combine different reports and distribute them to different user roles.
Open Interface
(1) Provide interfaces for any data object to add, delete, view and modify.
(2) When executing the workflow, to call other applications' interfaces.
(3) Provide data interfaces to external applications and be able to start workflows through these interfaces, and external data can be passed to the workflow.
The above elements and capabilities ensure the flexibility to solve each granular problem, and with such flexibility, systems can be assembled no matter how complex they are. Coupled with a rational application building process, it is possible to provide complex applications to customers while still maintaining order.
And, because of the ability to freely distribute roles, each individual is not plagued by complexity when complex applications are provided to specific roles. For example, we can distribute a single view to a worker role in a production execution system, perhaps with just a few buttons on their personal interface. This is something difficult to do with traditional enterprise software development.
Case of Complex System
(1) Production Execution System
Production execution system is an application system that can help manufacturing enterprises to manage production and manufacturing, improving management efficiency and accelerating digital transformation of manufacturing enterprises. The production management system has a high degree of flexibility in system configuration. Users can freely configure business data and processes based on the original framework of the system and according to their own business characteristics.
- Connect with ERP system to obtain information on goods purchase, arrival and inventory.
(2) ERP System
ERP system integrates purchasing management, sales management, inventory management and billing management of the enterprise. It is a whole process management business within the enterprise, involving multiple departments such as sales, procurement, finance, warehouse, etc. For such a system, traditional custom development may take 2-3 months, while HAP can complete the building and delivery in about 2 weeks, meeting users' individual needs.
- Purchase order consolidation, which allows generating one purchase order from the same supplier through process configuration;
- Sales, purchases, or returns, synchronized to inventory;
- Different categories of materials configured with different inbound and outbound rules;
- Realization of inventory transfer, FIFO;
- Special processing of accounts, such as red flush, etc;
- Real-time generation of multi-dimensional statistical reports;
ERP System Function Diagram
Dashboard | Procurement Management | Sales Management | Inventory Management | Billing Management |
---|---|---|---|---|
Data Overview | Supplier Database | Customer/Contacts | Warehouse | Sales Invoice |
Sales Board | Supplier Quotation | Quotation | Product Inventory | Purchase Invoice |
Purchase Board | Purchase Request | Sales Order | Purchase Inbound | Accounts Receivable |
Inventory Board | Purchase Order | Sales Invoice | Sales Outbound | Accounts Payable |
Finance Board | Purchase Return | Sales Return | Inventory Transfer | Payment Transactions |
Goods Receipt | Return In/Out |
(3) Configuration of roles and permissions involving multiple departments and levels
For enterprises with cumbersome business processes, there are often many departments and levels involved, and the roles and permissions are relatively complex. For complex permission requirements, we usually rely on the RBAC model (Role-Based Access Control) for analysis and design. In HAP's application, you can configure the permissions of a role within minutes. Through view distribution, you can flexibly configure the worksheets, records, and even fields that are visible to each role.
- Different roles can view or work with different forms, records, and fields;
- Different roles have different operation permissions for the same form, record, or field;
- The supervisor can view or work with the data of his subordinates;
(4) Multi-party integration of data
A single business system is difficult to meet the multi-faceted information needs of enterprises. There are often multiple sets of information technology software within the enterprise, so new business systems need to be integrated with the original system, or to establish an information center. The situations are as follows:
- Some features or requirements cannot be implemented on HAP (e.g. logistics status information, spatial modeling, etc.);
- The original system has a large amount of business data left behind, and data migration is not convenient;
- The data from the various systems used cannot be connected, and a data middleware is needed as a bridge;
- Various other reasons make it impossible for the company to give up using the original system.
Each application of HAP has standard API documents. Through the open API interface or Webhook users can interact with data from other business systems. Worksheets, records, and fields all have corresponding IDs and can be retrieved flexibly.
At present, there are typical docking including Amazon order docking, Kingdee K3 docking, Kingdee Starry Sky, IoT platform docking, visualization large screen docking, Fanruan T100 system docking, WeCom& DingTalk docking and so on. As long as there is a standardized open interface, all can be docked through HAP to facalitate data pipeline. At the same time, HAP can also be served as a data center to help enterprises unify data asset management, activate data value and release enterprise productivity.
Data Pipeline
As APaaS products with no/zero code begin to be adopted by more and more enterprises, there is an increasing need to utilize the natural openness of APaaS products to integrate with other existing business systems. The following provides a few basic models for integrating APaaS products with other applications for users in need.
In the introduction, the different integration methods are illustrated with a specific example:
Scenario: An e-commerce company uses three systems, Purchase-Sales-Inventory, APaaS (assumed to be HAP) and Financial Software. The goods-return process of the company is as follows: customer applying for return => customer service personnel to check => product returned to the warehouse => financial pesonnel to refund money => completed. For each complete return process, data needs to flow among the three systems.
1 Message integration mode (recommended)
It enables the transfer and synchronization of data among applications by calling APIs, and may be divided into the following three ways (or phases).
One-to-one synchronization (request/response): messages request another application by calling the API and waiting for the response
When a customer applies for a return, the e-commerce platform calls the API of the APaaS platform to notify the customer service personnel to start the approval process, and then call the API of the e-commerce platform to change the status of the return application after the approval, and retries every time the request fails. When the volume of requests is large and the business logic is complex, there will be long waiting time or overload of computing resources on the other side, then you need to take the following another way.
One-to-one asynchronous (queue/callback): API receives the request into the queue, after the execution call back to notify the results
After receiving the returned goods, customer service personnel check and pass the return application, calling the API of the inventory application to notify the inventory-in. Since the logic of inventory-in is relatively complex (change the original out-inventory order and process the inventory), you can put the operation into the message queue to gradually consume it, and when the return logic is completed, call back the API of another application to notify the result. Many times if a data change, you need to notify multiple applications and the notification address often changes, it is necessary to frequently adjust the code logic, in which case you can take the publish-subscribe approach.
One-to-many asynchronous (publish/subscribe): provide event subscription, send message notification to all subscribed addresses when data changes
After receiving the returned goods, the APaaS platform needs to notify the finance system for refund, to notify the warehouse system for inventory-in, and to notify the e-commerce platform for changing the status of the returned goods, which may be different for different customers' needs. At this time, APaaS can provide event subscription, when the data changes, according to the subscription list to notify other applications, and provide webhook callback address, and then callback after the execution of other applications logic.
The message integration approach can best achieve real-time data synchronization, but it requires a complete API on the application side, and also needs to pay attention to the retry mechanism for push failures and the sequence coverage caused by subsequent retries.
HAP (APaaS) implements integration through workflow:
2 Application Integration
Specialized development of integration tools:
Develop a separate application, obtain authorization from other applications, pull data at regular intervals (full/incremental) according to configuration, and push it to other applications based on conditions and mapping rules. Using the integration tools to synchronize data without calling applications, can reduce coupling and also allow flexible selection of technical solutions based on data volume and application form. However, since it is not actively pushed by the application, it is not that perfect in terms of real-time performance.
Robotic Process Automation (RPA)
It is a business process automation technology based on software robotics and artificial intelligence. It provides an alternative way to automate the end-user's manual process by mimicking the way the end-user operates on the computer.
3 OLAP Data Source Connection
Configure the data source connection address to drill down to the required data according to open permissions and filtering conditions, usually as a way of BI report analysis. The data drilled down to can be stored separately again after processing or aggregation as needed.
4 File Integration (Export & Import)
Manually export the data to be processed from the application system as needed, import it into another set of application system, and then import it back to this application system after processing. The HAP system provides a relatively sophisticated interaction for importing Excel files, enabling users to create field mappings when importing. It can also automatically de-duplicate and create data associations during import.