"Model-driven" is not enough! Enterprise-level low-code development platform system architecture decryption

Enterprise-level applications are a category of enterprise software applications, known as the "Pearl" in the field of software development. Typical enterprise-level applications can usually be divided into three categories, namely, application systems that support the core business of the enterprise (such as MES in the manufacturing industry, TMS in the transportation industry), large-scale integrated systems covering the entire enterprise process, and industry-based Personalized modules developed by software customization. These enterprise-level applications support the development of the core business of the enterprise and lay a solid foundation for the advancement of enterprise digitalization.

Internet applications vs enterprise applications

With the advancement of informatization, enterprises' demand for customized applications is also increasing. For technical leaders, this is both an opportunity and a challenge: how can we quickly develop enterprise-level applications that fit the business needs of the enterprise with a limited budget? With the advent of low-code technologies, model-driven development methods, and revolutionary productivity advantages, more and more development teams have introduced low-code technologies to accelerate the implementation of enterprise-level applications.

Enterprise-level applications put forward higher technical requirements for development tools

However, compared with common Internet application projects, the enterprise-level applications that support the core business of the enterprise have the characteristics of high value, high complexity, and high technical standards. These characteristics determine the tools that can develop enterprise-level applications, which will inevitably meet the development of Internet applications, but not vice versa. This means that in choosing an enterprise-level application low-code development platform, in addition to productivity, you also need to focus on key indicators such as the technical architecture, openness, and security controllability of the tool itself.

Software development tools speed up enterprise digitalization

This article will start with the system architecture, taking the movable type enterprise-level low-code development platform as an example, from the development process to the programming extension, and comprehensively introduce the low-code development tools that can support enterprise-level application development, and the system architecture of such tools.

Movable type enterprise-level low-code development platform

Development process and collaboration methods to support agile team management

The modern software development process and collaboration model have condensed the wisdom of several generations of software people, and formed a complete ecosystem, widely serving various software projects including enterprise-level software. The movable type enterprise-level low-code development platform comes from the world's leading development technology provider Grape City. It stands on the shoulders of giants and can adapt to the mainstream agile development process in the industry, covering the entire life cycle of application development.

From the perspective of the top-level architecture, the movable type grid consists of a movable type grid designer and a server, which can be connected to a third-party collaboration server, covering the entire life cycle of enterprise-level application development.

Under normal circumstances, the process for developers to develop enterprise applications using movable type is as follows:

  1. The developer uses the movable type grid designer installed on his computer to start the development work
  2. If you need to form a team with other developers to jointly promote project development, or need to carry out version management, developers can use collaboration servers (such as the Internet such as Code Cloud, GitHub, or Git servers installed in the LAN) to collaborate with other developers
  3. Developers use the movable type grid designer to build data tables, server logic, pages and other elements on their computers. After completing application development and debugging, they can use the one-click publishing function to package the application into a publishable file and deploy it to installation On the server with movable type server program
  4. The complete movable type grid server is composed of movable type grid server program and management console website. Among them, the system administrator can visually manage system users and permissions through the management console, and complete network security, automatic backup and other configuration tasks
  5. After the configuration is complete, the end user can use the enterprise-level application built by the developer through multiple terminals including browsers, APP, WeChat, DingTalk, etc.

The development process of movable type

As shown in the figure above, there is no significant difference between the process of using movable type to develop applications and professional pure code development, which means that developers can fully learn from the accumulated project management experience in the software development industry, and implement agile project management and upgrades. The compact product iteration cycle meets the large-scale, high-complexity enterprise-level development needs.

The developed application architecture reaches the level of professional architects

In order to allow the long-term reliable operation of enterprise software systems and avoid the inconvenience caused by "data islands", enterprise-level applications have far higher requirements for maintainability and system integration capabilities than Internet applications. This puts forward higher requirements for low-code development tools, not only to be easy to use and deliver, but also easy to maintain. And all of this starts with the application itself built using low-code development tools.

The application built by the developer using the movable type grid is a pure HTML5 Web application, and the end user can use it through a PC browser, mobile phone APP, WeChat or DingTalk. The various engines and class libraries that support this application have condensed the 40-year technical accumulation of Grape City in the field of professional controls, which can fully meet the needs of enterprise-level application development. In addition, the Web application is also very open, supporting a variety of mainstream databases, various system integration plug-ins, and open API programming interfaces.

System architecture of movable type

At the runtime level, the runtime architecture of movable type grid fully considers the developer's needs for centralized management of development content and flexible distribution and reuse of development results. The application built with movable type grid consists of publishable files and movable type grid servers, and the releasable files must be loaded and run on movable type grid servers. The publishable file is generated by the movable type grid designer and supports saving to the local or one-click publishing to the server. Its content includes all the content constructed by the developer, mainly including:

  • Support PC browser and mobile page. These pages are built based on standard HTML5 and CSS3, with good compatibility.
  • A script used to describe business logic and user interaction. Scripts are described in a custom format with movable type to support workflow, automation tasks, ODATA services, etc. Compared with traditional scripting languages, movable type blocks the differences of platforms, and users don't need to care about whether these scripts are running on a Windows or Linux server, or a PC or a browser on a mobile phone.
  • Assemblies or scripts and style files developed by third-party tools. These files are constructed based on the programming interface and best practices provided by the movable type grid, and can be fully integrated with the pages, business logic and user interaction scripts constructed using movable type grids to achieve synergy.

Applications developed using movable type

These contents are packaged in a file, and developers can use the movable type grid designer to open and modify these contents at any time. In order to further improve development efficiency, the movable type grid designer also provides dependency checking and automatic update functions. If a developer modifies a column name in a data table, the movable type grid designer will automatically check the page and server logic that uses the column, and automatically update it to ensure the normal operation of the system. The unified development tool and the automatic update function make the post-maintenance cost of movable type grid much lower than the "automatically generated source code" mode.

The movable type grid will be regularly upgraded to enhance the function and performance of the system, and the basic class library and service program are separated from the publishable files constructed by the developer, allowing developers to enjoy the latest version in time by upgrading the latest version of the movable type grid Software development technology allows enterprise-level applications developed by ourselves to keep up with the wave of technological progress with minimal investment in development costs.

"Model-driven" mode, not afraid of complex business scenarios

Low-code development platforms can be divided into "form-driven" and "model-driven" in terms of design concepts. The former combines the page form and data storage structure into one, while the latter is similar to pure code development, achieving a complete separation of data and performance. In the prevailing view in the industry, "form-driven" has a lower threshold of use and technology, but the application scenarios are more restrictive. It is usually only used for the development of simple data reporting systems, and it is difficult to use in the development of enterprise-level applications. In the process.

In order to meet the high requirements of enterprise-level applications on the complexity of business scenarios and the consistency of data, the movable type grid is designed with a "model-driven" concept. Developers can design data tables for defining data models, pages for users to operate, and server commands that run on the server and carry complex business logic in the movable type grid designer.

Even civilian developers who have not received professional programming training can easily build professional-level applications to meet the technical requirements widely recommended by the software development industry such as database design paradigm, table and page separation design, and front-end separation architecture. The application development and maintenance lay a solid foundation.

The movable type grid adopts a model-driven development method

Programming expansion capability, open unlimited possibilities

As we all know, enterprise-level application scenarios are complex and changeable, and no low-code development platform can cover all enterprise-level application development needs through built-in functions. However, considering the cost of training and usage, domestic business owners are usually more willing to pay for a system that covers all business links. Therefore, programming scalability has become the top priority of enterprise-level application development. With the support of programming interfaces, developers can use drag-and-drop methods to achieve most business requirements without coding; use coding to successfully implement other business requirements. Only in this way can the project get stuck in the "last mile" and relieve developers of worries.

The constantly evolving movable type format has allowed developers to use drag and drop to build most enterprise-level application functions. More and more enterprise-level application developers have not written any code during the entire project. But the movable type grid does not stop there. In order to meet the high scalability requirements of enterprise-level application development, the movable type grid also provides programming expansion capabilities for each layer of the system. If necessary, the developer can accurately modify the processing logic of each layer through the programming interface to provide a solid technical foundation for system integration. Typical application scenarios of the programming interface are as follows:

  • CSS style sheet: accurately set the appearance style for the table or input box to meet the unified UI design style requirements of the enterprise
  • Front-end programming interface: call ActiveX / OCX interface of third-party hardware devices, integrate image capture, card reader and other hardware devices
  • Back-end programming interface: integrate third-party Web API interface in the back-end, integrate Internet services or industry software
  • Database programming function: Improve the data processing capability of the system through stored procedures or query views

    Programmability of movable type

In short, leading technical architecture is a necessary condition for low-code development technology to support enterprise-level application development. As the leader of the domestic low-code technology trend, Movable Type has condensed 40 years of technical accumulation in the field of professional development control in Grape City, and can provide developers with professional-level workflows and collaboration methods, model-driven development models, and various layers of The programming interface helps developers to quickly deliver enterprise-level applications with separated front and back ends.

If you want to learn about the movable type grid enterprise-level low-code development platform and its application cases, please search for "movable type grid" in Baidu, visit the official website, view more content, and download and try it for free.

Guess you like

Origin blog.51cto.com/powertoolsteam/2561688