Architecture

Architecture
[ˈɑːkɪtɛktʃə]

  1. The art or practice of designing and constructing buildings
  2. The complex or carefully designed structure of something
  3. The style in which a building is designed and constructed, especially with regard to a specific period, place of culture.

The System Architecture of OPTANO

The term architecture comes from the Latin “architectura”. The systematic design and construction of buildings was originally the main element of architecture. However, system architecture is also essential in complex IT systems: relationships and interfaces between the system elements and to their environment are identified and structured, security and transaction concepts are defined. OPTANO is based upon both the “basic” client server architecture but also on a system architecture with an application server as an optional element.

The “basic” client-server architecture

In order to enable several users to access a database, the database server is the central location which manages the data in the client server model. The users use clients to gain access – either as a program or as a complete system. The functionality (application logic and user interface) is mainly implemented here in the client. The resources which the clients request from the database server deploy this directly so that no other applications are used.

OPTANO client-server-system

Diagram – OPTANO client-server architecture

The client-server model, as shown here, is comparatively easy to create, but it also has its drawbacks. The client, which performs most of the work, needs to be powerful. The installation and modification of the software must be loaded (automatically or manually) onto every client. Data-intensive operations with a high volume of data transfer can lead to a network overload. The direct data access of clients to the database server also poses a security threat – in particular in the case of enterprise applications.

Client-server architecture with application server

In order to overcome the disadvantages of the “basic” client server architecture, a further element can be added to the system – the application server.

What is an application server?

The application server is a server program in the client-server system which provides the execution environment for an application program. The client cannot access the database server directly but only retrieve and process the data via the application server. The result is that the client and database server are decoupled which yields a great many advantages.

Application [æplɪˈkeɪʃn̩]
an EDP program or piece of software designed to fulfill a particular purpose

Server [ˈsœːɐ̯vɐ]
a computer in a network that is used to provide services (such as access to files or shared peripherals) to other computers in the network

The application server in the OPTANO system architecture

We exploit these advantages in OPTANO’s system architecture with the optional deployment of an application server. The application server – installed on an IIS (Internet Information Services from Microsoft) – forms a security boundary between the client and the database. Database access is encapsulated by an open interface (JSON). As the client has no direct access to the database, this ensures that he is only permitted to view and process the data that is released to him. The communication of the client with the application server is encrypted via HTTPS protocol. The optionally deployed scheduler in the OPTANO system architecture also accesses the database server by means of the application server.

OPTANO applicationserver

Diagram – OPTANO system architecture with application server (optional) 

The OPTANO system architecture with its application server offers not only security but also the advantages of stability and functionality.

The application server provides security

Decoupling the client and database server is an important aspect for enterprise applications, above all. This is particularly so in large companies with many clients where controlling database access is imperative. The  client can perform transactions or authentications for directories and databases via the application server. In OPTANO, Windows authentication is standard but extensions are also possible. OPTANO is so flexible here that even other authentication methods can be deployed. The application server also checks the authorization of the accessing client. By defining roles and permissions you determine who is allowed to do what on the database.

The application server provides stability

Transactions and authentications with the application server are possible thanks to defined interfaces. These offer stability and scalability. A new interface enables client acess to a new version of the database. If the current version is not required, however, the old interface remains.

Furthermore, the application server is stateless. This means that the server stores neither the user nor the session so that the system continues to run reliably if the system crashes, reloads or if another server is deployed.

The application server means functionality

The higher development costs involved in a system with an application server are balanced out by easier and better scalability and maintenance. On the one hand, scalability is higher – particularly in the case of enterprise applications by means of Load Balancing: if many clients generate a high volume of requests which would overload an individual application server, the deployment of several parallel working application servers is effective. A load balancer- which is upstream to the application server – distributes the requests and thus makes applications scalable.

On the other hand, maintenance is easier for IT administrators. They can request information on the status of the server via “Health monitoring” – also automatically.

Finally, it should be mentioned that the entire OPTANO System Architecture can be executed in Cloud and thus offers utmost scalability. Cloud service models such as SaaS (Software as a Service) or IaaS (Infrastructure as a Service) are deployed here.

The application server as an optional element of the OPTANO system architecture offers a large number of advantages. If you would like to learn more, contact our experts.

Other topics you may find interesting…

CO₂ – Quick Wins with optimization

Mathematical optimization can do even more! Many things even simply "off the cuff" - like CO₂ optimization. Part 2 of our series on route planning.
16. November 2020/by Alisa Temme

OPTANO Database: Master data and scenario data

How is the "miniature world" of a database created? And why is it a good idea to distinguish between master data and scenario data?
18. February 2019/by Alisa Temme

One more thing about.. What-if Scenarios

"What would actually happen if...?" - For planning problems this question has a very special relevance and with What-If Scenarios we find the answer.
5. October 2021/by Sabrina Geismann

Book recommendation: Good to Great

Knowledge is there to be shared. That's why we want to share some of our favorite books in our OPTANO library. Today we're presenting: Good to Great by Jim Collins
2. April 2020/by Alisa Temme

Demand Forecasting with Predictive Analytics

Many factors influence consumer behavior. We show you how to improve your forecasts with Predictive Analytics.
25. November 2021/by Michael Osterkamp

OPTANO – Versioning on stage and backstage

Versioning is a powerful feature: on stage it plays the role of dataset revision, but it also acts backstage as code version management ...
29. May 2018/by Alisa Temme

The Complexity of Things

We often come across the term "complexity" when we talk about a problem. But what actually makes a problem "complex"?
16. January 2017/by Alisa Temme

Systems of Production Planning (Cos we dig ’em!)

When it comes to the topic of software systems for production planning, things can become confusing - one abbreviation after another. What does they all mean and how does they all connect?
28. September 2016/by Alisa Temme

Conditional Formatting to spice up your views

How can we highlight important data with colors and tags?
30. January 2016/by Alisa Temme

Production in times of change – efficiently upgrading your planning processes

Production planning can be performed far more efficiently with mathematical optimization instead of a spreadsheet. We demonstrate the advantages!
28. September 2021/by Alisa Temme

3 Thoughts on … Increasing complexity in logistics

3 Thoughts on...
»Logistics is becoming ever more complex. Which factors contribute towards increasing complexity?«
30. November 2020/by Alisa Temme

The Time Factor in Optimization: Time-space networks model the flow through time

Time often plays a major role in planning problems. We demonstrate how this factor can easily be integrated into planning. With time-space networks we model the flow through time.
9. March 2021/by Alisa Temme