Fujitsu Develops Technology to Partition, Visualize Complex Business Application Structures by Function
Fujitsu Laboratories Ltd. today announced that it has developed technology that by analyzing a program can partition internal structures so as to simplify modification of complex business applications.
Conventionally, business applications that repeat revisions due to maintenance or the addition of new features often have internal structures that become complex, and any modifications can have wide-ranging ramifications. As a result, modifying applications in response to business changes is an enormous burden.
In order to partition a business application into each of its functional components, Fujitsu Laboratories has now developed technology that analyzes the dependencies between programs and data, and then identifies boundary candidates that would partition the program in a way that decreases the mutual dependency. Using access logs to the database when the application is actually run, Fujitsu Laboratories also developed technology that, from among the boundary candidates, finds an area of the program that should be executed as a series of operations, and then finds those areas where the business relationship is highest. By enabling the visualization of the program’s boundaries that partition by function, it is possible to partition applications in cases that this had previously been difficult to achieve.
As a result, by adding revisions or upgrades that localize the changes based on the boundaries, it makes it possible for customers to quickly respond to changes in their operations or business.
Development Background
In the digital transformation of business using ICT, there is now a need for technology that facilitates rapid modification of existing business applications. In the manufacturing or retailing and distribution industries, for example, it is frequently the case that new locations are added or that there are changes in business partners, and when these changes occur, there is also a need to change the business applications themselves. Up until now, however, it was often the case that the structure of business applications was complex and changes had far-ranging impact, which required significant man hours of time consuming revisions. To resolve this problem, as a method of designing applications in which business processes can be quickly changed, in recent years there has been considerable interest in microservices(1), which are structured as multiple services, each of which runs independently. When parts of a program that frequently change are structured to be independent, as is the case with microservices, it makes it easy to deal with changes simply by replacing the services affected.
Issues
For applications that have undergone repeated rounds of maintenance and feature additions, the program dependencies and the data dependencies become quite complex, and it is frequently the case that parts of the program can be affected that were not even envisioned in the original design, making it difficult to partition existing applications into a structure in which there are few dependencies. As a result, when trying to partition a program to localize the affected areas, it was necessary to make revisions while investigating many dependencies.
The Newly Developed Technology
Fujitsu Laboratories has now developed technology to automatically identify boundaries that can partition the internal structure of business applications by function, using the program source code and database access logs as inputs.