SoftProc makes even highly individualized software understandable, because it analyzes and visualizes implemented applications from the program code to the productive process from within the running application. This seamless, digital documentation makes their modernization easier, faster and more cost-effective.



Why and how to modernize legacy applications efficiently

Read more

Sponsorship project

PITSS is awarded a BMBF funding project for digital software documentation

Read more


Hrc is focusing on speed and security when maintaining its banking software with the PITSS Application Data Cube

Read more

Software modernization is indispensable to remain secure and functional. Especially when individual software can assure a company a unique selling proposition. But it is also necessary in order to be able to meet the requirements of increasing digitization, which include a change in user behavior. Financial and insurance advisors are a classic example of this. For decades, they have been using desktop-oriented software simply because of regulatory requirements. In order to be able to use this on mobile devices when visiting customers, the software had to be modernized. But the company processes themselves are also subject to permanent change. For example, the increasing interconnection of business partners often justifies the need to modernize. In this case, applications have to be modularized, split and converted. Another reason to renew individual software is that the older the software, the higher the maintenance effort. The reason: The knowledge of the code has long since been retired along with the programmer.

Process Mining Looks at Business Processes through Data Glasses

Most of the time, modernization is not about switching to a different software. Especially not when a company’s core competence is supported by custom software. The intention behind it is to optimize business processes and make them more flexible for any future requirements, to be able to adapt them to changing market situations and to expand them to incorporate new technologies. However, to ensure that all previous functions are still available completely and without errors after modernization, and to take into account any dependencies on other systems and the influence of special cases, the processes supported by the system must be fully known and documented. In many companies, this knowledge was lost due to fluctuation in IT or was never really available due to missing or poorly maintained documentation. Process mining tools solve exactly this shortcoming: they visualize business processes through a data-driven view and provide complete transparency about their lived reality. Within process mining there are several sub-disciplines. Compliance compares the originally defined process model with the actual process flow by the user. Prerequisite: The definition is recorded somewhere. Process discovery uses log data to draw conclusions about what the process implemented in the software actually looks like.
wants to merge its locations and harmonize the business processes in the course of a software modernization. During the compliance check, it turns out that clicking on the command ‘Execute order’ sometimes triggers different changes in the data model for the employees from the different locations. So there must be a deviation from the originally defined process. But why is this the case? Which one is the right one and therefore needs to be migrated? The answer can be found with Process Discovery. In contrast to the employee at location A, his colleague at location B also looks after customers from abroad, for whom other conditions apply with regard to delivery time, customs, etc. The same command therefore has two different processes. So behind the same command there are two different data models, which must be available again in exactly the same way after the modernization.

On the Track of the Data Model

In order for process mining tools to be able to perform comprehensive process analyses and visualizations, they must, on the one hand, ‘understand’ the data model underlying the software and, on the other hand, obtain the most accurate possible event stream of the process data in the standard XES format from the software systems to be analyzed. For large standard systems with constant data models such as SAP, Microsoft Dynamics or the Oracle E-Business Suite, there are separate process mining programs that are familiar with the data structure of the standard applications. However, as soon as companies have adapted these standard systems to their requirements, the event stream information required for process mining can no longer be extracted automatically from the application. And thus they face the same problem as users of pure custom software or legacy systems: To get the raw data for process mining, they have to bridge the gap between process and data model themselves.
Currently, there are two ways to do this. The first: Key users and process owners describe the ideal flow of the business processes in extensive interviews. In parallel, the data model is parsed to identify the effects of an input process within the data model. The subsequent analysis of the data model allows an interpretation of the underlying processes, i.e. actions that are caused by changes in the data model and not by direct input. This method is not only very time-consuming. Misunderstandings, misinterpretations or simply unconsciously incomplete information lead to the result being just an assumption and not a fact, which can lead to devastating misinterpretations.
The second – and currently the only software-supported method – was developed by the SoftProc project. Funded by the BMBF, PITSS GmbH and the University of Ulm have developed a software-supported method for retrograde process analysis from a running application. What is special about it is that it recognizes user behavior and, based on knowledge of the table structure, establishes the context between the underlying data models. The context identified in this way now makes it possible to assign an input process to a change in the data model using classic process mining methods – even in custom software.

Illustration: All information automatically collected by SoftProc for a process.
Explanation All information is output in the common data stream format xes.
Meaning: The totality of all information about all processes can be imported and used in a process mining or process discovery tool

SoftProc Looks at the User, Not Just the Data

But how exactly does this data stream come about in SoftProc? How are user behavior on the one hand and its effects in the data model on the other hand captured? And how can this data stream be used as a transformation link between a custom software and any process mining tool? In order to identify the software processes, SoftProc observes the user as he executes a business process, for example ‘execute order’, via his user interface. There are two different recording variants. In the case of dedicated recording, the user determines the start and end of the business process to be recorded and thus precisely delimits the functionality that constitutes it. In the end, it’s like an interview – only faster and without forgetting a step that is already being executed automatically, so to speak, without having to think about it.
Silent recording, on the other hand, logs the entire use of the application – from the first time the user logs on to the time the application is closed. Machine learning methods can recognize patterns in this recording. To be more precise: they recognize, for example, whether the user has also executed an order. Even if he did so differently than his colleague due to a ‘special case’. Since here patterns are not searched for in the data models, but in the actions of the user, these in turn are linked in SoftProc without any doubt to the application process and the associated data tables. Therefore, in SoftProc, it is possible to understand why a business process was executed differently, even without interviews.
The ability to link to the data is also one of the reasons why SoftProc is so interesting, especially for custom software. SoftProc is based on an Oracle development platform. Therefore, the nomenclature from the user interface of a software also based on Oracle can be taken over directly to get context information from the program and finally merge it with the data. SoftProc speaks the language of the user, so to speak, and therefore every piece of code that was not captured during recording and thus not yet assigned to a business process can be traced back to the dependency in the user interface. And thus valuable functions, which were once programmed elaborately, but for various reasons were never used and therefore did not cause any change in the associated data tables, can be identified and preserved.

Illustration: Example Forms Flow – User behavior in dedicated recording
Explanation: There are many changes between individual forms.
Meaning: User jumps back and forth a lot between the forms – optimization potential for the process becomes apparent in order to simplify or shorten the process flow.

Illustration: Process flow – what and how were the elements used.
Explanation: Shape, color, size, values provide information about type, interrelationships and weaknesses.
Meaning: Optimization potentials are shown

Industry-Independent Solution from the Cloud

For whom is the solution now available from the funding project, which can read in, analyze, understand and map applications, suitable? For the time being, for everyone whose application was programmed in Oracle. It is completely irrelevant to which industry the application was tailored. Then, of course, for those who want or need complete documentation of their custom software. SoftProc should be considered by companies who anticipate that modernizations will be imminent, which will be very time-consuming and extensive, but want the application to be available again to the business and/or production processes as soon as possible.
The tool, which PITSS also offers as a cloud solution, is not only helpful for modernizing individual or legacy applications when the former programmers are no longer available. SoftProc also supports those who have already displaced how much time, effort and perhaps nerves they have invested to overcome hurdles in programming. Even if it is perhaps less rocky and one can go thereby now and then a step faster – the way of a renewed programming is the same as the first time. With SoftProc, however, it can be reliably shortened.

Your contact

Uta Daniels
Assistant of Sales Management
+49 711/914-012-27