You are on page 1of 5

SAP R/3 System Architecture

Published: 27 Feb 2007 http://aspalliance.com/1128_SAP_R3_System_Architecture

Abstract
This article examines the architecture behind the working of SAP R/3 System.

by Arindam Ghosh

Article Contents:

 Introduction
 Component Service – Kernel and Basis
 Component Service – ABAP Workbench
 Component Service – Presentation
 Application Server Architecture

 Summary
Introduction

The SAP system is software which is composed of different software and a server as a
whole and has the ability to perform standard business functions for corporations. The
system has become so popular because it can serve a wide range of functionality from
manufacturing to finishing products. There is one simple reason behind the popularity of
this system; it can be tuned to any level for any industry. It has the concepts of enterprise
resource planning (ERP) and business process reengineering (BPR) which is integrated in
the system.
“Sap stands for System, Andwendungen, and Produkte in Der Datanverarbeitung, which
when translated to English means System, Application, Products in Data Processing.” The
name of the parent Company is SAP AG. The company SAP is based on Walldorf in
Germany and is the world’s largest enterprise software company. Its foundation is built
upon the concept of integration.
Originally, dating back to the 1970s, it took the then controversial approach of combining
various business functions into one application and database. Dietmar Hopp, Hans-Werner
Hector, Hasso Planttner, Klaus Tschira, and Claus Wellenreuther, former IBM employees,
launched SAP in order to turn the real business processing vision into reality.
After a year, the first financial accounting software formed the basis for the continuous
development of other software components which later came to be known as the "R/1
system;" "R" stands for real time data processing.
By the end of the decade, intensive examination of SAP’s IBM database and dialog
control system led to the birth of SAP R/2, designed to handle different languages and
currencies. The SAP R/2 system attained high level of stability of the previous generation
of programs. With this and other innovations in SAP R/2, SAP saw a very rapid growth.
By the 1990's, when SAP R/3 was unleashed into the market, the client-server concept,
uniform appearance of graphical interfaces, consistent use of relational databases and the
ability to run on computers from different vendors met with an overwhelming approval.
The client-server architecture moved to a more flexible and scalable architecture. Going
by this technology, the processing of an application could be split between the server and
workstations – the server handling the centralized functionality, while the client
workstation maximized for users. The data management was separate from the server.
SAP ushered in a new generation of enterprise software – from mainframe computing to
the three-tier architecture consisting of the Database layer, Application (business logic)
layer, and user interface layer. Today is the day for client-server architecture, where one
can make changes or scale on layer without having to retool the whole system.
The term SAP R/3 stands for runtime system three and the client-server environment
provides a set of business application for the system. The R/3 architecture allows
distribution of the workload to multiple PC's connecting in a network. The SAP runtime
system is designed in such a way that it distributes the presentation, application logic and
the data management to different computers.

Component Service – Kernel and Basis

For all R/3 applications, kernel and basis are there to provide the runtime environment,
such as hardware, operating system and database-specific. The run time environment is
written principally in C and C++. However, some portions are also written in ABAP. The
tasks of the kernel and basis services component are as follows.
Running Application: All R/3 application run on software processors (virtual machine)
within this component.
User and Process Administrator: An R/3 system is a multi-user environment and each
user can run several independent applications. This component is responsible for the tasks
that usually belong to an operating system. Users simply log onto the R/3 System and run
the application within the system that is the only user of the host operating system.
Database Access: Each R/3 system is linked to a database system, consisting of a
database management system (DBMS) and the database itself. The application use basis
services to communicate with the database. They do not communicate directly.
Communication: R/3 system can communicate with other R/3 systems and with non-
SAP Systems. It is also possible to access R/3 applications from external system using a
BAPI interface. The service required for communication are all part of the kernel and
basis services component.
System Monitoring and Administration: The component contains programs that allow
you to monitor and control the R/3 system while it is running and change its runtime
parameters.

Component Service – ABAP Workbench

The Advance Business Application Programming (ABAP) Workbench component, a full-


fledged development environment for applications in the ABAP language, helps you to
create, edit, test, and organize application developments. It is fully integrated in the R/3
Basis system and, like other R/3 applications, is itself written in ABAP.
Component Service – Presentation

The presentation components are responsible for the interaction between the R/3 system
and the user as well as for desktop component integration (such as word processing and
spreadsheets).
SAP R/3 architecture is based on a three-tier client/server model:
• Presentation Server
• Application Server
• Database Server

Though it is a three-tier architecture model, it is not restricted only in three-tier; it can go


up to multi-tier client-server system. In SAP the software components are arranged in tiers
and function depending on their position. SAP R/3 must have at least one presentation
server, one application server and exactly one database server.

Presentation Server
Out of the three-tie, presentation server is the one which runs on user workstation. The
SAP graphical user interface (SAP GUI) is run on this layer. No application logic is
processed in this layer. SAP GUI does not adhere to the style guidelines of its host system.
The layer contains the software component that makes up the SAP GUI (graphical user
interface). This layer is the interface between the R/3 system and its users. The SAP R/3
uses the SAP GUI to provide intuitive graphical user interface for entering and displaying
data. The Presentation layer sends the user’s input to the application server and receives
data for display from it. While a SAP GUI component is running, it remains linked to
user’s terminal session in the R/3 system.
Application Server
Another tier in the SAP R/3 system is the application server where the actual business
logic is being executed. It sends the data to be presented to the user, to the Presentation
layer. It comprises the business administration "know-how" of the system and processes
pre–defined and user–defined application programs, such as OLTP and the
implementation of decision support queries. Application servers are usually connected via
a local area network with the database server.
The Application layer consists of one or more application servers and a message server.
Each application server contains a set of services used to run the R/3 system. Not
practical, you only need one application server to run an R/3 system. But in practice, the
services are distributed across more than one application server. This means that not all
application servers will provide the full range of services. The message server is
responsible for communication between the application servers. It passes requests from
one application server to another within the system. It also contains information about
application server groups and the current load balancing within them. It uses this
information to choose an appropriate server when a user logs onto the system.

Application Server Architecture


When a request from Presentation Server first comes to the Application Server, it directs
the request to the dispatcher. The dispatcher, which is the Central process of the SAP Web
Application Server, manages the resources for the applications written in ABAP in
coordination with the respective operating system. The main tasks of the ABAP dispatcher
include the distribution of the transaction load to work processes, the integration of the
presentation layer and the organization of communication transaction. The requests are
first saved in the queue by the dispatcher and then processed according to the principle of
“first-in, first-out.” The dispatcher distributed the request one after another to the available
work processes. A work process handles one request at a time. Data is actually processed
in the work process, although the user who created the request using the SAP GUI is not
always assigned the same work process.
There is no fixed assignment of work process to users. To process user request it might be
necessary to read data from the ABAP schema of the database or to write to it. For this,
every work process is connected directly to the ABAP schema of the database.
Once the process is complete, the processing result from the work process is sent via the
dispatcher back to SAP GUI. The SAP GUI interprets the received data and generates the
output screen for the user with the help of the operating system on the front end computer.
The buffer helps to speed up processing of user requests. Data that is often read but
seldom changed (for example, program or Customized data such as clients, currencies or
company codes) can be kept as a copy of the database content in the shared memory of the
application server. This means that data does not have to read from the database every
time it is needed, but can be called very quickly from the buffer.
Processing Web Requests
Web requests are accepted by an Internet Communication Manager (ICM). These
HTTP(S) request can either be processed in the ABAP work process (such as BSP
applications) or they can be requests for SAP Web Application Server Java. The ICM can
use the URL to decide to where it forwards the request.
Database Server
The next tier is the database server where the actual RDBMS lies. This layer holds the
system – wide database and the central booking process of the SAP R/3 architecture. The
Database layer is comprised of a central database system, which contains all the data in
the R/3 system. The database system has two components – the database management
system (DBMS) and the database itself. The R/3 support the database system from the
suppliers, such as ADABAS D, DB2/400 (on AS/400), DB2 Common Server, DB2/MVS,
INFORMIX, Microsoft SQL Server, ORACLE, and ORACLE Parallel Server; SAP does
not manufacture its own database.
The database not only contains the master data and transaction data from your business
applications, but also the data for the entire R/3 system is stored here.
Multi-tier Architecture
The distribution of the R/3 software over the three layers means that the system load is
also distributed. This leads to better system performance. Since the database system
contains all of the data for the entire R/3 system, it is subject to a very heavy load when
the system is running. It is a good idea not to run the application programs on the same
host. The architecture of the R/3 system (with Application layer and Database layer
separate) allows you to install them on separate hosts and let them communicate using the
network.
It also makes sense to separate program execution from the tasks of processing user input
and formatting data output. This is made possible by separating the presentation layer and
the Application layer. SAP GUI and the application servers are designed so that a
minimum amount of data is transported between the two layers. This means the
Presentation Layer components can even be used on hosts that have slow connections to
application servers.
The system is highly scalable – the software component of an R/3 system can be
distributed in almost any configuration across various hosts. This is particularly valuable
in the Application layer where you can easily adopt your R/3 system to meet the
increasing demand by installing further application servers.
Integrating Environments
Integration is the key element that separates SAP from other enterprise applications.
Integration helps in connecting a business environment from Financial and Human
Resources to Manufacturing and Sales and Distribution.
Integration in SAP means that all the business processes of any organization are related
and interspersed with each other so that a change in one field of the business will reflect
on another field of the business.

Summary
In this article we have examined the architecture of SAP R/3 system in detail.

You might also like