Architecture modernization for new business processes
DOCUFY GmbH
Initial situation
DOCUFY’s oldest and most important product is COSIMA, an editorial system for technical documentation. It is a highly customizable component content management system for documentation processes. Professional editors can use it to capture their technical communication to the highest quality and publish it in all languages, target formats and systems.
COSIMA plans to offer new workflows for two roles in these documentation processes. In contrast to editors, the idea is to provide these occasional users – reviewers and contributors – with a simple and very intuitive web front end. In addition, a Kanban board will be used to represent the process and include task management.
COSIMA’s core content management system is implemented in Java and has been in use for many years. Its business logic was added with a great deal of effort. However, this central component, tailored to the requirements of professional editors, is not an ideal starting point for implementing the new requirements. For new workflow development, an architecture should consequently be used that uses functions from the COSIMA core but does not change it.
Furthermore, the goal was to achieve a special look-and-feel within the user interface that goes beyond possibilities offered by standard component libraries. Later results should also be used in other DOCUFY applications.
Approach
DOCUFY commissioned Novatec to design and implement a viable overall architecture based on this initial situation.
On the server side, we chose “Encapsulate” from architecture modernization options: we retain the business logic core and encapsulate it behind modern REST interfaces. This creates a foundation for step-by-step modernization that is completely transparent for interface consumers.
A “backend for frontend” approach was specifically selected and parts of the previous COSIMA client, which was also implemented in Java, were extracted and made runnable on the server side. Newly developed components access these extracted parts via RPC interfaces and make results available to the web frontend via REST interfaces. We developed our own component library for the front end as well as a micro front end for embedding other content. Additional implemented requirements included authentication integration using an identity provider and a special text editor.
Results
The result is impressive! Collaborating with the client, we have created a solution that also serves as a blueprint for other workflows and roles. And with the Component Library, we have laid the foundation for an entire family of applications that are equipped with outstanding usability and have a uniform appearance.
This outstanding result is also due to close and trusting cooperation between those companies involved and an early focus on UX/UI: Every part of its development was conceived from the front end and subsequent users’ requirements were the main development driver. This approach – focusing on customer benefit and optimal usability – shaped the project and gave the application a look and feel that is unique.
When it comes to application architecture, we decoupled the existing core from the new application by using an architecture modernization process. Both parts can be further developed independently, and complexity is significantly reduced thanks to this approach.
What is also particularly worth mentioning is the joint work on this project: the assignment was designed as an enabler assignment, so that the customer could build up expertise in all techniques and procedures in parallel. This ranged from modern web technologies such as Angular to Kotlin as a new programming language and architecture patterns such as “backend for frontend”, all the way to optimally “living” the Scrum process.
Architecture modernization
Architecture modernization can be used to update existing applications and make them future-proof. There are various strategic options and different migration paths depending on what goals are to be achieved. The focus of architecture modernization is accordingly as individual as an application and the existing framework conditions. With our technological expertise, we can help you select and apply the right strategy for you.
The client – DOCUFY GmbH
DOCUFY develops premium software solutions for technical documentation, design and service. From technology start-ups to global industrial groups – our more than 900 clients come from the automotive industry, mechanical and plant engineering, medical technology and the software sector. More than 130 employees have been contributing to DOCUFY’s sustainable success with their expertise for over 25 years.