Definition and advantages of the “Context Aware Frontend Architecture” principle
Reasons for Context Aware Frontend Architecture
User interfaces have to fulfill more and more requirements. Since digital infrastructures are constantly being developed and transformed, the cycles in which software has to be adapted are also becoming shorter. These changing adaptation cycles do not affect frontend and backend to the same extent. By decoupling the frontend and backend layers from the outset, separate release cycles can be realized by understanding and designing the frontend architecture and its components as independent modules.
Requirements for modern user interfaces
Whereas in the past there were only desktop applications, native interfaces and web-based interfaces that were operated using a keyboard, mouse or touchscreen, the range of options has now become much wider: speech, gestures, eye body movements are among the repertoire of operating and interaction options. In the coming years, human-machine interaction will continue to change steadily and fundamentally.
Pick-by-vision makes picking easier for employees. Image: DHL
Existing systems must be able to adapt to this development if they want to take advantage of the new possibilities in their business processes. Compared to other logical layers of the overall IT architecture, user interfaces have a much shorter life cycle, which on average is around two to three years, while other layers remain stable and unchanged three to six times as long. In this rhythm, the possibilities that user interfaces can offer change fundamentally.
To ensure flexible use of human-machine interactions that correspond to the state of the art, the user interface must therefore be clearly separated in its control and functionality from the business logic of the backend.
The background to Context Aware Frontend Architecture (CAFA)
If future user interfaces are to change more quickly and, above all, independently of the business logic of the backend, then the software layers of the frontend and backend must be decoupled accordingly. Overall, a reduction in complexity can now be observed in both backend and frontend systems.
Applications are becoming more and more specific at the user interface depending on the device, are optimized in a targeted manner and neglect unsuitable applications on the respective end device. Accordingly, the IT architecture is developing into a collection of micro-services that can be further developed separately.
This type of architecture replaces the traditional monolithic backend structure in order to achieve a significant increase in flexibility. By dividing it into independent modules, the overall system is not only kept more flexible, but dependencies are also reduced.
Nowadays, communication no longer takes place between a client and a single corresponding server backend. Instead, a client increasingly communicates with several independent (micro) services internally, with external providers via online interfaces, the cloud, or it also interacts with external partners and service providers and uses their services, as is the case with software as a service (SaaS). In this context, and particularly in intralogistics, the integration or implementation of IoT (Internet of Things) solutions in warehousing processes is an equally relevant application scenario.
In the course of digitalization, user behavior is changing, as is the way computers are used. Particularly in the work environment, there are fewer and fewer activities that do not require the use of appropriate devices. Whether smartphones, tablets, AR glasses or special wristbands – all devices in their entirety serve to support their users at work, independently of a fixed workplace.
A prime example of this is communicating with customers and business partners via different channels. This interaction has changed rapidly and fundamentally in recent years. This use and the permanent and flexible use of computers and their computing power is also referred to as ubiquitous computing. Another relevant aspect in the context of CAFA is the rapidly increasing networking of people, objects and sensors that interact in a network, which is also referred to as pervasive computing. In intralogistics, in particular, it is common practice for entire processes to run automatically, with computer-based systems using sensors to perceive their environment and sharing the information thus obtained with others; these can be machines or even people, as is the case, for example, with the widespread use of RFID.
The ever-increasing networking, combined with the ever-increasing use of electronic devices and tools, ultimately means that applications have to be designed to be context-sensitive in order to become an element in the entire network themselves.
The use and benefits of context-aware frontend architecture
With the advance of digitization, the value chains established by companies over many years are changing. To optimize processes, business partners are increasingly being integrated, external service providers are being included, and in-house services and access are also being made available to others. This enables companies to react quickly to changes in customer behavior or market conditions by implementing innovations simply and transparently.
Cloud computing with SaaS solutions is a driving force behind this development, as numerous special applications have to be connected quickly and easily to a company’s own IT infrastructure via interfaces. This is all the easier if the IT architecture is modular, with backend and frontend components. This ensures that the release cycles of the individual components do not have a negative impact on the IT structure as a whole.
Structure of a context-aware front-end architecture
A context-aware front-end architecture is initially based on a clean architecture, which forms the actual core of the application with clearly defined business rules. The individual levels are then as follows:
Service level: This is where the business processes are made available; it corresponds to the classic backend.
Delivery level: This is where the business processes are aggregated for presentation and processing in the frontend and the requirements for intermediate storage are met.
Client level: This contains all possible clients in which the application part is displayed.
The following diagram illustrates this structure more clearly:
Structure of the layers of the context-aware frontend model
With this type of architecture, particularly complex projects can be optimally designed over a longer period of time, especially in very dynamic markets. The most compelling advantage over suite solutions is the maximum flexibility, since all modules and processes are as flexible and independent as possible, with business rules being used as a central component and chains being avoided.
Summary of the “Context Aware Frontend Architecture” model
Classic IT architecture is monolithic. With increasing digitalization, such a structure proves to be disadvantageous, especially in terms of flexibility and the significantly shorter lifecycles of user interfaces. The fast, uncomplicated integration and incorporation of external services, such as SaaS, into a company’s IT processes requires an IT structure based on clean architecture and clear business rules. To ensure the flexibility and independence of individual applications, the backend and frontend with their respective components are decoupled and designed and developed as independent modules. This architectural approach is particularly suitable for intralogistics, since automation with the interaction between people, objects, sensors, electronic devices and tools is very common and is also increasing more and more in the sense of an optimized value chain.