0% found this document useful (0 votes)
76 views2 pages

Compare Program Paradigm

This document proposes an approach to compare two programming paradigms, ABAP and BOPF, used in SAP systems, on theoretical, technical, and practical levels. It presents initial results comparing the two approaches. A literature review identified differences between ABAP and BOPF. A performance analysis found ABAP outperformed BOPF for CRUD operations. A user study with a post-experiment survey explored practical differences, finding ABAP programming inefficient compared to BOPF. Future work is proposed to develop a single comparison metric and expand analyses.

Uploaded by

prabhu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
76 views2 pages

Compare Program Paradigm

This document proposes an approach to compare two programming paradigms, ABAP and BOPF, used in SAP systems, on theoretical, technical, and practical levels. It presents initial results comparing the two approaches. A literature review identified differences between ABAP and BOPF. A performance analysis found ABAP outperformed BOPF for CRUD operations. A user study with a post-experiment survey explored practical differences, finding ABAP programming inefficient compared to BOPF. Future work is proposed to develop a single comparison metric and expand analyses.

Uploaded by

prabhu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Towards Comparing Programming Paradigms

Igor Ivkic, Markus G. Tauber Alexander Wöhrer


University of Applied Sciences Burgenland University of Vienna
Eisenstadt, Austria Vienna, Austria
e-mail: {igor.ivkic,markus.tauber}@fh-burgenland.at e-mail: [email protected]

Abstract—Rapid technological progress in computer sciences features - programmed with ABAP. Third, due to a lack of
finds solutions and at the same time creates ever more complex documentation and nonexistent literature there were many
requirements. Due to an evolving complexity today’s questions regarding the differences of these two programming
programming languages provide powerful frameworks which approaches within the SAP programming community.
offer standard solutions for recurring tasks to assist the
programmer and to avoid the re-invention of the wheel with so- In this short paper, we present an approach for a full-
called “out-of-the-box-features”. In this paper, we propose a way comparison of two programming approaches (ABAP/BOPF) in
of comparing different programming paradigms on a theoretical, a closed system (SAP) to identify theoretical, technical and
technical and practical level. Furthermore, the paper presents the practical differences. First, a literature research provides
results of an initial comparison of two representative process- and program-theoretical differences of ABAP/BOPF.
programming approaches, both in the closed SAP environment. Next, for the technical comparison, a performance analysis
measures the execution time of CREAT, READ, UPDATE,
Keywords—programming; paradigms; comparison DELETE (CRUD) operations in an ABAP report compared to
a BOPF report. Finally, a use case driven experimental study
I. INTRODUCTION including a post-experiment User Experience Questionnaire
Programming may be considered by some as an art form (UEQ) [2] provides practical differences of ABAP and BOPF.
and/or by others as a craftsmanship, but it leaves little room for
The rest of the paper is organized as follows: Section II
discussion about its incredibly fast development. Whereas in
summarizes related work in the field, followed by a technical
the past developers implemented classic desktop programs,
performance analysis in Section III. Section IV deals with an
today’s applications require world-wide connectivity, web
empirical user experience study and a Post-Experiment Survey.
presence and mobile assistance. In many cases a technological
leap is followed by a change in the method (or the way the II. RELATED WORK
technology is used). While in the past most problems were
solved with a structured programming paradigm and a data- The comparison of products, services, programming
driven approach, the new frameworks require an object languages, etc. was the subject of many papers. Most of these
oriented (OO), generic and model-driven approach [1]. papers i.e.: compare a specific aspect of a product and present
which product was better, but none compares them on a
Although frameworks promise to standardize program theoretical, technical and practical level. In example, in [3] the
code, save development time and costs they are often caught in BOPF was firstly introduced to the public and compared to
the crossfire of criticism due to the obscure relationship ABAP just on a technical level in a “How-To”-manner.
between their pains and gains. The aim of this short paper is to Another comparison in [4] used the UEQ to measure UX in
present an approach of how to create a full-comparison of two interactive products. Related work in [5] comes the closest, but
programming paradigms, namely ABAP - (Advanced Business the research field was restricted to mobile development.
Application Programming) a 4th Generation Programming
Language and BOPF – (Business Object Processing
Framework) a modular framework which provides custom III. PERFORMANCE ANALYSIS BETWEEN APPROACHES
services and components, both in the closed SAP environment. Even though BOPF was programmed with ABAP the
In this regard, a comparison is defined as full, when theoretical, approaches could not be more different. While developing with
technical and practical differences of two programming ABAP goes hand in hand with classic models (i.e.: waterfall
approaches were identified. So, the idea behind splitting up the model, V-model) the BOPF welcomes agile development.
approach in these three areas was to look at two software Following the agile principles, the BOPF provides out-of-the-
development paradigms from many different angles to create a box tools for modelling, developing, testing and finalizing the
full-comparison and to, ultimately, paint the big picture. logic of an application while involving the customer in the
development process from the outset. Technically speaking,
There are three reasons for choosing two SAP approaches using ABAP for programming means starting from the
for an initial demonstration of the presented approach. First, greenfield and building an application from scratch. This
SAP is a closed system which makes a technical and practical greenfield-approach is a gift and a curse at the same time. For
comparison easier. Second, in 2012 SAP released the Business this reason, the BOPF requires first the creation of a model of
Object Processing Framework (BOPF) which is an extension the Business Object (BO) and then uses an OO Application
of the existing Advance Business Application Programming Programming Interface (API) to control it programmatically.
(ABAP) language. This means, that SAP built and released a To be able to understand how the API works it is necessary to
new model-driven framework with powerful out-of-the-box compare the CRUD operations.
Figure 1. Performance (execution time in ms) comparrison of CRUD Figure 2. Time-Distribution of the Development Process
operations (ABAP vs. BOPF) with increasing data block sizes

The main difference is that each CRUD operation has its programming with ABAP was inefficient and complicated in
own command in ABAP while the BOPF uses two different comparison to the BOPF.
methods for the same purpose. The MODIFY method is used
to CREATE, UPDATE and DELETE records, while the V. CONCLUSION AND FUTURE WORK
QUERY method reads the records from a database. In The main goal of this short paper was to present an
conjunction with applications where performance plays a big approach which enables a systematic comparison of two
role the question arises if building it with the new generic software development approaches covering two aspects. In
framework is the right decision. To make a direct the first aspect, the comparison is done on a technical level
comparison of CRUD operations and their performance on a where the performance of the program code of the two
HANA system (HS) a performance analysis was conducted. approaches was measured. The second aspect dealt with
The idea was to implement eight applications (4x ABAP, 4x analyzing the differences of two approaches by applying
BOPF) where each executed one of the CRUD operations. them in a close to reality, use case driven experimental study.
These applications were executed one after another with five
different data amounts (n = 10K, 25K, 50K, 75K, 100K). So, For future work, we will develop a single metric to
by choosing this approach it was guaranteed that neither the reflect and combine the results of all three comparisons. We
two approaches (ABAP/BOPF) nor their CRUD operations will further investigate whether the results of the
were mixed during a performance analytical run. Fig. 1 performance analysis and the experimental study would
compares the results of the CRUD operations and shows the change when larger data amounts (n > 100K) and more than
performance advantages of ABAP vs. BOPF on the HS. eight TP are used. Another idea for future work would be to
execute the performance analysis using applications with
more complex program logic (more than CRUD operations).
IV. DEVELOPER EXPERIENCE EXPERIMENT AND SURVEY As for the experimental study, it would also be great to find
An experimental study was designed in two different out, if the outcome of the experiment would be the same,
phases which were decomposed into individual results. In the when a more complex application is given for the
first phase eight test persons (TP) were randomly divided implementation. Finally, it would be great to apply this
into two groups and confronted with a simple clear-cut approach on many different programming languages and
programming task. The sole limitation in this scenario was frameworks to point out significant differences in the results.
that one group uses ABAP while the other one must only use
the BOPF for the implementation. Building on that a survey REFERENCES
was conducted to evaluate the user experience (UX) during [1] France, R., & Rumpe, B., “Model-driven development of complex
the experiment. The TP answered a three-parted UEQ software: A research roadmap”, 2007, Future of Software
questioning the UX in general and how well the development Engineering, pp. 37-54.
environment of ABAP/BOPF supported them in solving [2] Schrepp, M., Hinderks, A., & Thomaschewski, J., “Applying the user
experience questionnaire (UEQ) in different evaluation scenarios”,
their task. Fig. 2 shows how much time it took the TP for 2014, International Conference of Design, User Experience, and
data modelling, programming, testing, and UI-design. Usability, pp. 383-392.
The experiment revealed that it took the BOPF group 40 [3] Hardy, P., “ABAP to the future”, 2015, SAP PRESS.
minutes on average to complete 100% of the required tasks, [4] Rauschenberger, M., Schrepp, M., Cota, M. P., Olschner, S., &
Thomaschewski, J., “Efficient measurement of the user experience of
while the ABAP group failed to implement all requirements interactive products. How to use the user experience questionnaire
(the TOP 2 TP finished approx. 50% of requirements after (ueq). example: spanish language version”, 2013, IJIMAI, 2(1), pp.
one hour; the experiment was terminated after one hour due 39-45.
to the superior results of the BOPF group). Finally, the post- [5] Nitze, A., & Schmietendorf, A., “Qualitative und quantitative
experiment survey showed that the BOPF was rated better Bewertungsaspekte bei der agilen Softwareentwicklung
than ABAP by the TP. They criticized among others that plattformübergreifender mobiler Applikationen“, 2014, Logos Verlag
Berlin GmbH.

You might also like