Вы находитесь на странице: 1из 84

IoT integration with SAP Cloud Platform.

Development of uniform
user experience using SAP UI5 based on HANA XS Engine with
additional integration to SAP S4 HANA System.

Thesis

Submitted in partial fulfillment for the degree of

Master of Science

in Business Consulting

at the Faculty of Business Application of Computer Science

Hochschule Furtwangen University

By

Ali Asad

Supervisor 1: Prof. Dr. Monika Frey-Luxemburger


Supervisor 2: Mr. Michael Herold
Submitted on: (XX.Month.2017) == Submission Date will be written here

0|Page
Acknowledgment
First and foremost, I would like to express my sincere gratitude to Thomas Thederan Partner at
Aequitas AG for giving encouragement and motivation whenever the conclusion seemed difficult to
achieve. My sincere thanks to Mr. Michael Herold from Aequitas AG who was not a supervisor but
rather a mentor. He guided me throughout this journey and he very much deserves all the credit for
the successful completion of the project. Special thanks to Sarah Hland HR Referent for extending
this offer and trusting me as a competent candidate for this position.
I highly appreciate efforts of my colleagues at Aequitas AG. They have provided phenomenal support
by their knowledge and experience throughout. Specially, I would like to mention Dmitry Pavlov for
his ever-extending guidance related to technical architectures and system installation and to make
sure everything was available. Marco Bohmbach, who guided me throughout the process of writing
codes in JavaScript. My sincere thanks to my colleagues at Aequitas AG because without them, this
would not have been possible.
My first supervisor Prof. Dr. Monika Frey-Luxemburger is known for her accomplishments in BI and I
would like to take this opportunity to tell that she has been the source of inspiration, motivation and
encouragement. It is because of her teachings and guidance that I could achieve such results. I would
like to pay my sincere gratitude to her for being an amazing supervisor.
Krishna Parsad, has always been there to support me, I would like to thank him as well.
With such overwhelming support of my supervisors, colleagues and friends, I wanted to give my
hundred percent in this project, and I hope to believe that something worthy of writing has finally
been achieved.

1|Page
Abstract
Autor: Ali Asad
Supervisor I: Prof. Dr. Monika Frey-Luxemburger Supervisor II: Dipl. Michael Herold
Title: IoT integration with SAP Cloud Platform. Development of uniform user experience using SAP UI5
based on HANA XS Engine with additional integration to SAP S4 System.
Content: The following document is based on a practical project related to Internet of things (IoT) rapid
prototyping use case with SAP. With the prototyping, Temperature and Humidity were measured from a
sensor device.
Germany is the hub of manufacturing industry. Normally in manufacturing plants, above mentioned
variables are measured. Previously, these variables were recorded after every defined interval manually
from a sensor device. However, with the advent of technologies and breakthrough ideas in the field of
Internet of things, there is a possibility to record these variables from multiple sensors into a common
database and that too automatically! Therefore, aim of the project was to check if such automatic
recording and integration was feasible with current technological platforms provided by SAP. There were
quite a few research questions that needed to be answered to confirm the objective. These questions
were mainly concerned with the options of smart devices and integration approach that must be taken
for this whole framework to work. Protocols needed to send data from one systems to another were also
within the scope of the project. For details of all research questions, methodology and approach please
refer to chapters. After answering mentioned questions next step was to create a complete technical
architecture mentioning end to end solution that along with components also highlighted protocols for
data connectivity.
From the architecture, that is presented in subsequent sections it can be concluded that Tessel device
would post data to SAP Cloud Platform using WIFI/USB. But before data can be posed, IoT service must
be enabled and configured. Database must also be initiated and bounded to the service. After completing
these steps, data could the be posted. Next stage of the project was to visualize data in a UI5 app.
Therefore, a UI5 app was created having two views. One view had the data from the newly initiated
database using OData protocol created via XS Engine, whereas the other view had two data sources
attached to it. First data source was the same as before, but instead of the whole Entity set (as it contained
for the first view) only one entity selected by the user was used. Second data source was from SAP S4
backend system and was used to generate plant maintenance notification so that data could also be
recorded in the backend system. With integrating Tessel to SAP Cloud Platform and establishing a link
between Cloud Platform and backend system using HANA Cloud Connector and UI5 app, end to end
scenario was covered. Details of each step has been covered in different sections of the project. Before
and During the project, several challenges were encountered. Those were primarily related to lack of
documentation for integrated solutions covering all aspects. Challenges were also witnessed while
programming over various languages that required through understanding.
Before conclusion, document presents diverse applications of IoT not only limited to manufacturing but
also covers smart cities and smart homes. Conclusions and Recommendations are then presented keeping
general aspect in mind.

2|Page
Table of Contents
1. Research Introduction........................................................................................................................... 5
1.1 Outline of Thesis Document ......................................................................................................... 6
1.2 Research Background and Motivation .......................................................................................... 7
1.2.1 Introduction to IoT enhanced ............................................................................................... 8
1.2.2 SAPs IoT Roadmap ............................................................................................................... 9
1.3 Problem Statements ................................................................................................................... 10
1.4 Scope and Approach ................................................................................................................... 11
1.4.1 Research Methodology ....................................................................................................... 11
1.4.2 Working Schedule & Project Timeline remove ................................................................... 12
1.5 Objective ..................................................................................................................................... 14
2. Literature/ Conceptual Research ........................................................................................................ 15
2.1 Internet of things: Concepts ....................................................................................................... 16
2.1.1 IoT Communication Models ................................................................................................ 16
2.1.2 Comparison of Available Smart Devices ............................................................................. 18
2.1.3 Comparison of IoT Cloud Systems....................................................................................... 20
2.1.4 Decisions on hardware and Software Selection ................................................................. 23
2.2 SAP HANA as a Platform.............................................................................................................. 25
2.2.1 Product Capabilities and Services ....................................................................................... 25
2.2.2 Different Scenarios on SAP Cloud Platform ........................................................................ 27
2.2.3 SAP HANA DBServices ......................................................................................................... 28
2.2.4 SAP HANA App Services ...................................................................................................... 28
2.2.5 Neo VS Cloud Foundry ........................................................................................................ 29
2.3 Internet of things (IoT as a service in SAP HANA Cloud platform) .............................................. 30
2.4 SAP HANA as a Database ............................................................................................................ 31
2.5 UI5 and FIORI Development........................................................................................................ 33
2.5.1 What is SAPUI5? .................................................................................................................. 33
2.5.2 How does SAPUI5 work? ..................................................................................................... 33
2.5.3 Components of SAP UI5 Application ................................................................................... 34
2.5.4 SAP BUILD............................................................................................................................ 36

3|Page
2.6 Smart devices (Tessel Sensor devices) ........................................................................................ 37
2.6.1 Add Capabilities Faster Than Ever Before ........................................................................... 37
2.6.2 Node.js ................................................................................................................................ 38
2.7 HANA Cloud Connector ............................................................................................................... 39
3. Approach and Realization ................................................................................................................... 41
3.1 Configuring SAP Cloud Platform for IoT and SAP Web IDE ......................................................... 41
3.2 UI5 App Creation using XS Engine ............................................................................................... 48
3.3 ODATA Creation from SAP S4 ..................................................................................................... 59
3.4 Connecting Tessel Device............................................................................................................ 62
3.5 END to END Scenario .................................................................................................................. 65
4. Thesis Challenges & Applications........................................................................................................ 68
4.1 Smart Devices.............................................................................................................................. 68
4.2 Cloud Platforms........................................................................................................................... 69
4.3 SAP Cloud Integration Platform .................................................................................................. 70
4.4 IoT Applications........................................................................................................................... 71
4.4.1 SAP Leonardo ...................................................................................................................... 74
5. Conclusion & Recommendation ......................................................................................................... 76
Executive Summary..................................................................................................................................... 78
References .................................................................................................................................................. 80
List of Abbreviations Used .......................................................................................................................... 83

4|Page
1. Research Introduction
The Internet of Things (IoT) gadgets and sensors associated with figuring frameworks and systems
has gotten huge consideration over the most recent couple of years. The consideration is expected,
to a limited extent, to the expansion of associated gadgets, from around a million in the mid-1990s to
more than five billion today. Moreover, the innovation for interfacing the gadgets has turned out to
be more moderate and less demanding to incorporate.1
The Internet of Things (IoT) is the network of interconnected sensor-equipped electronic devices that
collect data, communicate with each other, and can be monitored or controlled remotely over the
Internet. 2
Internet of things surprisingly is not a breakthrough in Technology like processors would have been in
70-80s, but rather it is a technique that has emerged with advancement in technology in multiple
fields.
These multiple fields include;
1: High speed Internet broadband connection becoming widely popular and available for use.
2: Sensors and actuators that cannot only measure data but can also change parameters and are
available online over internet or Bluetooth connection.
3: In memory, huge database that allows fast processing of tera bytes of data, along with common
user experience irrespective of users platform (Desktop, Mobile, and Tablet).
4: Growing efficiency of Machine Learning Algorithm that allows nearly accurate predictions.
On a broader scale, the IoT can also be applied to things like transportation networks: "smart cities"
which can help us reduce waste and improve efficiency for things such as energy use; this helping us
understand and improve how we work and live3.
Just to mention the glimpse of what future holds in the field of IoT, Gartner has predicted following.
Through 2020, the Internet of Things (IoT) will increase data center storage demand by less than 3%.
By 2022, IoT will save consumers and businesses $1 trillion a year in maintenance, services and
consumables. 4

Vast breath of applications of IoT has been rightfully addressed in a research paper that states A
survey done by the IoT-I project in 2010 identified IoTs application scenarios which are grouped in 14
domains viz; Transportation, Smart Home, Smart City, Lifestyle, Retail, Agriculture, Smart Factory,
Supply chain, Emergency, Health care, User interaction, Culture and tourism, Environment and
Energy. This survey was based on 270 responses from 31 countries and the scenarios attracting the
most interest were: smart home, smart city, transportation and health care.5

1
Quoted from: (SAS The power to know, 2017)
2
Quoted from: (Ahrens, 2014)
3
Concepts from: (Magazine, IoT: Forbes, 2013)
4
Quoted from: (Gartners, 2016)
5
Quoted from: (Kumar, 2014)

5|Page
1.1 Outline of Thesis Document
In this section, scope of the document and its content has been displayed.

Chapter 1 covers the introduction Objectives and Problem statement along with-it chapter also covers
market opportunities of Web of Things and explains importance of this booming industry in the next
coming decade.

Chapter 2 covers the ground of conceptual layout of each component involved. It starts with general
explanation of various architectures within IoT space and explains different components related to
the project. After establishing foundations for the topic, it then explains why certain components
were preferred over others for Eg Tessel Device, SAP Cloud Platform, SAP Hana Cloud Connector and
others. It also explains in the form of a diagram technical architecture covering all important aspects.
After deciding onto the set of components (for example decision to choose Oracles Cloud Platform
or SAPs), detailed explanation of features and functionalities of these chosen components have been
explained in subsequent sections.

Chapter 3 covers actualization and implementation of the use case decided upon during definition of
problem statement and objective settings in Chapter 1.

Chapter 4 covers areas that were challenging during practical work in the project along with several
industrial applications including corporate sectors and manufacturing sectors.

Chapter 5 presents a briefly of the project along with recommendations related to rapid prototyping
of such Web of Things.

Theoretical
Research that
Introduction Actualization and
starts with general Challenges Faced
Realization of the Conclusions &
to IoT theme of IoT and
project, covering
& Applications of
Recomendations
Solutions later builds into the Use Case
all segments
the specific details
of the project

Figure 1: Outline of Thesis Document

6|Page
1.2 Research Background and Motivation
Its safe to say that we are at the start of another industrial revolution. The rise of the connected
objects known as the Internet of Things (IoT) will rival past technological marvels, such as the
printing press, the steam engine, and electricity. From the developed world to the developing world,
every corner of the planet will experience profound economic resurgence.6
There will be 34 Billion IoT Devices installed by 2020, making use of 6 Trillion Dollars investment.
Marking it as one of the highly anticipated future of the technological era.7
Primary impetus behind taking this as a research area is the challenges that will come along with it.
Challenges in sensor connectivity, database design and management, and to pick and choose from
the vast pool of uniform End User Experience.
According to industry analysts, there are between 10 to 20 billion things connected to the Internet
today. This ecosystem of connected objects forms the foundation of Internet of Things (IoT). Even
though the technology that comprises IoT has been around for years, were only in its very earliest
stages. The number of connected objects today pales in comparison to how many will be connected
in just five years. Estimates vary, but the range of connected objects by 2020 will be 40 to 50 billion,
and includes everything from cups and pens to homes, cars, and industrial equipment.8
Figure 2: IoT Statistics

6
Quoted from: (Dr. Shawn DuBravac, Internet of Things: Evolution or Revolution, 2015)
7
Quoted from: (Business Insider Intelligence, 2016)
8
Quoted from: (Dr. Shawn DuBravac, Internet of Things: Evolution or Revolution, 2015)

7|Page
As depicted from the figure, upcoming investment in IoT are huge. Interesting part is that web of
things is not only limited to stand alone app but its functionality is fully reached when its integrated
with other business process along with machine learning algorithms. Our future is about to change,
and Aequitas AG and myself wants to be a part of the revolution that such disruptive technologies will
bring.

1.2.1 Introduction to IoT


In 1982, a student at Carnegie-Mellon University put a sensor in Coca-Cola vending machine, and
connected it a network (that can be termed as early version of the internet) that sent data about the
number of bottles available in the machine, so that a person doesnt have to walk all the way to learn
that the vending machine is empty. That was the earliest dated example of connected things, and
then in 1999 Kevin Ashton, co-founder of MIT center coined the term Internet of things. 9
There are various school of thoughts that have had a lifelong debate regarding IoT and its impact on
our eco system. Some say, that human life is aided with such connected device, whereas others are
more critical about the new phenomena. But before discussing its pros and cons, lets discuss
explanation of internet of things. GSM Association explains Internet of things as;
The Internet of Things (IoT) refers to the use of intelligently connected devices and systems to
leverage data gathered by embedded sensors and actuators in machines and other physical objects.10
Thus far, in simple words Internet of things is communication between multiple type of sensors with
a common storing area, a database. Now that definition of IoT is clear, and before moving ahead with
all the latest developments within the area, lets compare its pros and cons.
Security is one of the factor in favor of those who are against revolutionizing the world by IoT. Security
and data privacy are amongst the key issues that are highlighted by those who are against the idea of
connected world.
Symantec has performed a detailed case study regarding security aspect of IoT. In their research
paper, it has been explained The Internet of Things (IoT) market has begun to take off. Consumers
can buy connected versions of nearly every household appliance available. However, despite its
increasing acceptance by consumers, recent studies of IoT devices seem to agree that security is not
a word that gets associated with this category of devices, leaving consumers potentially exposed
Symantec has analyzed 50 smart home devices that are available today, and none of these devices
enforced strong passwords, used mutual authentication, or protected account against brute-force
attacks. 2 of the 10 apps did not use Secure Sockets Layer (SSL) leaving it vulnerable to attack. It is
therefore, without a doubt that security is a major concern in the market of connected world.
Similarly, privacy is also a major concern but apart from these two, its benefit outweighs when a
person is aware of its impending benefits.11
Privacy is another concern in the field of web of things. Users that are accepting this area, will not
really be impressed if there is a breach of privacy. As per the paper by Mohamed Abomhara and Geir
M. Kien, following are the forms of privacy issues.

9
Concept from: (Olga Kharif, 2016)
10
Quoted from: (GSMA , 2014)
11
Concepts and Quotes from: (Symantec , 2015)

8|Page
1. Eavesdropping and passive monitoring: This is most common and easiest form of attack on data
privacy. If messages are not protected by cryptographic mechanisms, an adversary could easily
understand the content
2. Traffic analysis: To effectively attack privacy, eavesdropping should be combined with traffic
analysis. Through effective traffic analysis, an adversary can identify certain information with
special roles and activities in IoT devices and data.
3. Data mining: This enables attackers to discover information that is not anticipated in certain
databases. This could be a security and privacy issue in IoT, and if information is made available,
we are perhaps giving out more than we bargained for?12
Biggest growth areas for IoT seems to be in manufacturing and logistics. Being able to pinpoint the
location, condition and characteristics of any product, machine and means of transport at any given
point of time will radically change business processes making it a lot simpler. There will be a Digital
Twin to every physical product which replicates life cycle of the actual product in digital form and
constantly updates product status.13

Prescient upkeep has just turned out to be common to the point that it is viewed as the standard in
the present assembling administrations. Later, frameworks will have the capacity to learn without
human info through machine learning. Amassed data is exchanged to resource administration
frameworks that gathers lifecycle information of machines and gadgets in a system. Today, clients as
of now pay as per what number of flight hours a motor runs ("control by the hour") and organizations
create tweaked items ("producing as an administration") they offer administrations rather than
machines. In coordinations, monitoring the items ("track and follow") is quickly picking up
significance, while RFID chips are utilized increasingly underway, industrial facility, and transportation.

1.2.2 SAPs IoT Roadmap


SAPs philosophy is that the value of the Internet of Things lies in the "integration of things" into
business models. Thats why they believe that their customers are most interested in solutions for
business problems and prefer standard solutions wherever possible. SAP most likely has the broadest
IoT application portfolio in the entire market for this. These solutions are created on their IoT platform
and developed through the IoT Application Services (reusable microservices) on the SAP HANA Cloud
Platform that has now been renamed to Cloud Platform. The platform also allows customers and
partners to develop their own applications and enhance existing ones. SAP Predictive Maintenance &
Service is probably number one among the most well-established IoT standard products.

SAP has also observed an increased interest in the SAP Asset Intelligence Network, which is the
"Facebook of Things". It is a business network that helps companies that produce, use, or maintain
equipment and its parts cooperate by sharing data and forming an asset. There is an immense
advantage in optimizing the use and maintenance of equipments and their parts through a network
economy of sorts, where people can share insights into such assets. Another important area is Track
& Trace in transport management. Product movement must become more transparent, to a point

12
Quoted from: (Kien, 2014)
13
Context from (Dr. Ovidiu Vermsen & Dr. Peter Friess, 2014)

9|Page
where the company always knows exactly where their transportation vehicles and containers are at
any given moment. 14

1.3 Problem Statements


In simple words, Aequitas AG wanted to explore all options that can be used in actual deployment of
IoT. After finding out all possibilities, research objectives/questions were as follows:
1. What are the options of smart devices readily available in market?
2. Which one is most suitable in terms of cost and rapid prototyping?
3. How can data be sent to centralized Systems?
4. What are the options of Centralized Systems?
5. How can that data be visualized?
6. How can IoT data be sent to any ERP System from Centralized System?
7. What are the protocols that are needed for excellent communication?
In this document, answers to above mentioned questions have been covered and those theoretical
answers have been further proven by creating a prototype. But before all such details, care needs to
be taken to determine practicality of the project. Therefore, next paragraph defines its use cases.
We are all familiar with Germany being the powerhouse of manufactured goods. IoT has vast
applications in such a country where processes need to be monitored to ensure quality the country is
famous for. With IoT sending data to a common database chances of error or uncertainty are reduced.
Basically, possibility of human error comes to all time low with such fully integrated solutions.
Normally in any plants, Temperature, humidity and pressure are monitored quite precisely and are
amongst the deciding factors to measure quality of manufactured goods. A plant supervisor maintains
these readings in a register after noting them at each sensor (there are more than 500 sensors in a
plant) and therefore this process is prone to errors.
With the prototype that we will be making, we attempt to reduce these human errors of noting
readings and not only that we also make sure that end users can monitor them in the same form
irrespective of them using a desktop or mobile version of the app. Plus attempt has also been made
to integrate sensor data not only in a common database but also integrate it with backend SAP S4
application System (that has all transactional data). In the next chapter, holistic architecture will be
explained along with answers to these question in an attempt to explain the full business process. All
research questions mentioned above are realized by implementing an actual prototype details of
which would be presented in subsequent chapters.

14
Source of content: Interview with Head of IoT at SAP (Hans Jrg Stotz, 2017)

10 | P a g e
1.4 Scope and Approach
In this section, we attempt to provide Research Methodology that has been followed throughout the
course of Masters thesis. It also provides step by step approach and the contents of each section with
respect to the scope of research methodology. Next section within the chapter gives an overview of
project timelines. Section also covers progress reports that were periodically sent to the professor for
her further instructions and suggestions.

1.4.1 Research Methodology


The spectrum of research required to achieve IoT at the scale envisioned above requires significant
research along many directions. In this section problems and required research are highlighted in 8
topic areas: massive scaling, architecture and dependencies, creating knowledge and big data,
robustness, openness, security, privacy, and human-in the-loop. Each of the topic discussions primarily
focuses on new problems that arise for future IoT systems.15 Generally, research methodology for all
IoT related projects encompasses the above-mentioned area.
Diagram below shows flow chart that has been followed throughout the course of the project. It
represents Research Methodology that has been followed for the specific use case, along with all
phases of the project.

Figure 3: Research Methodology Steps

15
Quoted from: (John A. Stankovic, 2014)

11 | P a g e
As can be seen on figure 2 first part is the awareness, in which problem was identified that in a nutshell
can be stated as realization of Industry 4.0 concepts. After which suggestions from all stake holders
were considered. In the above stated project, stakeholders included both supervisors and
management teams of Aequitas AG. The phase 3 Development included, in addition to design and
development, also testing and demonstration of the approach in a suitable context of a business case.
Of four possible entry points, shown at the top of the figure, the first three are relevant for this
research work. Problem centered entry point is into the 1st phase, where the problem of automating
business processes in industries using sensors needs to be solved; this also becomes objective of the
2nd phase, and realized as a designed and developed solution on the 3rd phase. The forth entry point
(of an entries array at the top of the figure) would have been possible if clients had initiated to
research on stated topic, but this possibility is not explored further in this work, thus it shown in gray
color on the figure. With reference to figure 2 following describes the five phases in more details:
Phase 1. Problem awareness an awareness of an interesting problem may originate during practical
work experience in an industry or after accumulation of sufficient level of knowledge in a reference
discipline, and following a realization of what else is needed and feasible. Usually there can be
multiple sources that facilitate this process, including new developments that can become
instrumental parts for innovation. A transfer of advanced knowledge or practice from allied field may
also provide opportunity for advancement in this field. The output of this phase is description of
Business and research contexts and prerequisites for a new research effort: Environment problems
& opportunities of the application domain Scientific theories & methods foundations, experience,
evidence, and expertise.

1.4.2 Working Schedule & Project Timeline remove


Supervisors were informed periodically before, during and at the end of project, as under the following
schedule.
Figure 4:Progress Report as presented to Supervisor

12 | P a g e
Following timelines were followed for project implementation. There was a separate time allotment
for each activity and all completed milestones can be seen below.
Figure 5: Project Timeline

Separate Excel sheet has also been maintained highlighting these steps and submitted along with the
thesis document.

13 | P a g e
1.5 Objective
Thesis objectives must be SMART in nature. Therefore, attempt has been made to write concisely
what the objectives are for the research at hand.
Specific: Integration of IoT Sensor Device with SAP HANA Cloud Platform and an attempt to make a
simple and easy to use End User Experience with SAP UI5 Toolkit along with integration to backend
S4 HANA Database.
Measurable: Successful completion will be measured by testing an end to end prototype of the above
mentioned topic.
Attainable: Several references along with literature have been used to make sure that the end result
of smart devices are attainable.
Realistic: Idea is relatively new, but realistic because stakeholders like SAP and Tessel have provided
a platform for integration, app development and database management to work properly and in
optimized way.
Time bound: Thesis will be covered in a period of six months starting from May till the end of October.
There might be a case of 2 extra months, provided some new contents are added to the research
aspect.
In a nutshell, objective of the thesis project keeping research methodology in mind was to bring
awareness amongst employees of Aequitas AG about the potential of IoT and confirming that it is not
a futuristic idea that is not fully matured, but rather an idea that is fully realizable and that will be
confirmed by building a prototype to demonstrate ideas. Successful completion would be marked by
making sure that scaling up in terms of devices involved is possible along with full fledge integration
covering ERP aspects as well. Time to realize the solution was also measured so that realization during
actual implementation is not overlooked. Cost associated with the project was also kept in mind so
that clients later can be given a concrete outlook regarding budgeting, time to realization and last but
not the least IoT solution that can help them achieve competitive advantage by optimizing business
processes.

14 | P a g e
2. Literature/ Conceptual Research
This section starts with an explanation of the technologies related to IoT in general way, and after
fundamentals have been laid on the choice of technological platforms decided upon, section will build
up extensively on each and every specific component used for the realization and rapid prototyping
of the project.
1. Internet of Things: Concepts
2. SAP HANA as a platform.
3. Internet of things (IoT as a service in SAP HANA Cloud platform).
4. SAP HANA as a database.
5. UI5 and Fiori Development.
6. Smart devices (Tessel Sensor devices).
7. HANA Cloud Connector and S4 Deployment options.

Aim of the section is to start from general IoT foundations and then translate those foundations to
hardwares and softwares that has been used in proof of concept and actual realization of the thesis
topic.

15 | P a g e
2.1 Internet of things: Concepts
Within the discussion of Internet of things (IoT) there are two school of thoughts. One school of taught
are more in favor of IoT as they fully believe in its potential whereas the other group are more
concerned with its security and privacy policies. Irrespective of the opinion, consensus has been
reached in its widespread applications. Therefore, there are lot of companies that are currently
investing in IoT so that they can reap benefits when technology is fully matured.
This section covers all the fundamentals related to IoT by covering different domains including
communication protocols (Architecture), smart devices and Cloud Platforms. At the end of the
section, readers would be sure of the decisions related to technology platforms that have been
utilized for proof of concepts and rapid prototyping.
As mentioned earlier there are few options related to communication models. Explanation of each of
them are as follows;

2.1.1 IoT Communication Models


Various configurations are usable within the context of IoT, and thus various architectures are
possible and decision to choose one instead of other depends on a specific use case. Details of each
communication protocols are covered.

Device-to-Device Communication
Device to Device Communication represent communication between two devices that directly
communicate with each other and no application server is installed as an intermediary that provides
added functionality including analytical, control or statistical capability. Such architecture is suited for
non-complex situations and are primarily used in home environments, as shown below.

Figure 6: Device to Device Communication Model

Devices that share common messages and communication protocols can be integrated in such
settings. They are ideally suited for situations with low data exchange rates and small data packets.

16 | P a g e
Device to Cloud Communication
Device to Cloud communication takes advantage of internet connectivity either in form of WIFI or
Ethernet connection to send messages to an application server. In this way, more than one sensor
could send data to the server and server can provide control logics at consolidated or at individual
level to both sensors. Application server accepts message types from sensor and store them along
with timestamp and unique ID for a specific sensor.

Figure 7: Device to Cloud Communication Model

Device to Gateway Communication


In device to Gateway communication, there is an intermediate application software operating on a
local gateway device, which has functions related to data governance and security. The Gateway is
also responsible for transforming message type when the source and destination data types are not
identical and some cleaning is required before control or other functionalities could be applied to data
collected, as shown on the picture in the next page.16

Figure 8: Device to Gateway Communication Model

16
Concepts from: (Karen Rose, 2015)

17 | P a g e
Back-End Data Sharing Model
Backend Data Sharing Model makes use of Internet of Things as not only a stand-alone application.
With backend data sharing model, data from sensor along with data stored in the backend servers
can be visualized together. Its functionality is not only limited to visualizing data from both sources,
but also covers complete end to end integration. There might be a use case, that when a defined
threshold limit of a variable that is measured by the sensor is reached, that record is also send to the
backend data so that it could be recorded and stored properly. Even in the use case that is
presented in the thesis, Such backend integration has been utilized.17

Figure 9: Device to Back-End Communication Model

2.1.2 Comparison of Available Smart Devices

There are lot of smart devices available in market, each with its own unique functionality. Among the
three most frequently used smart devices are;

1. Tessel Device
2. Raspberry PI
3. Arduino PC

For the specific use case we had a choice to make between Raspberry PI and Tessel device. After
detailed comparison and thought process, choice was narrowed down between Tessel and Rasberry
PI.

So lets look at the comparison of Tessel with Raspberry Pi


This was a very interesting part of the project, as gaps needed to be analyzed amongst both these
products. Decision between a well-known device and a relatively new device required through
understanding, and after examining catalogs of both of them. Effective comparison could be based on
the following 8 point model.
Decision to choose Tessel instead of Raspberry Pi has been based on the following reasoning.

17
Concepts from: (Karen Rose, 2015)

18 | P a g e
1. Tessel provides a higher level of abstraction in terms of connecting various sensors in form of
Modules. There are various factory build modules connected via 40 pin I/O. plus the list is ever
expanding as it is an open source platform, and third parties can also contribute by making newer
modules based on certain guidelines published. Various other USB modules (along with 40 Pin I/O as
explained above) are also provided for different use cases.

2. Tessel provides build in WIFI and Ethernet connection that are very useful without the need of
flashing Operating System to the device, which adds value by limiting time constraint.

3. Tessel device are Plug n Play, you have to connect your platform (using WIFI or Ethernet
Connection) to a network and push code to receive sensor data. Sensors that are connected to the
Tessel platform are also plug n play in the form of connecting it to the platform and then just relevant
installing libraries that are already on the board.

4. Raspberry Pi provided a platform that can also be connected to various sensors but without any
modular abstraction. We would need to connect various sensors in Raspberry Pi using wires and brad
board that not only required more hardware knowledge but also greater time for realization and
therefore couldn't be considered for rapid prototyping.

5. With Raspberry Pi, since its a microprocessor one needs to push Operating System to it before
booting it. Currently, it supports Linux and Win 10. We need to push code using Micro SD Card that
needs to be flashed with OS. Requiring at least 8 GB but recommended 16 GB of Micro SD Card
memory.

6. Cost associated with Tessel platform and Raspberry Pi platform is almost similar, we can get Tessel
at 45$ (plus added cost of modules that we are interested in) and Raspberry Pi at 35$. But the cost of
maintenance and operation is significantly higher in Raspberry Pi because of the knowledge required
in the hardware aspect. Even during the actual project, IT team would need to have electronics
knowledge and that will not only increase the price of the project but also require buy in from more
stake holders, and in turn higher chances of projects failing.

7. Tessel device are programmed using Node.js and personally I have to expand my skill set in java
script as it lies in the core of front end development along with HTML and CSS.

8. Therefore, for prototyping as well as for realization of multiple sensors, Tessel seems to be a
better fit mainly because of the overall cost associated and higher degree of abstraction along with
Plug n Play functionality.

19 | P a g e
2.1.3 Comparison of IoT Cloud Systems
As highlighted in the last section, IoT cloud Systems are necessary to consolidate sensor data in a
unified database. There are quite a lot of IoT Cloud Systems that are available in market. This section
compares some of the well-known platforms that can be used with our specific use case.

Oracle IoT Cloud


Oracle has been amongst the market leader when it comes to integrated resource planning software.
They have made an IoT cloud System which has an architecture as shown below.

Figure 10: IoT Solution Architecture by Oracle18

Oracle IoT is a combination of four crucial parameters such as, Open- that connects any type of
device from sensors to gateways; insight- that harvests business value of IoT data; secure that
provides normalized end-to-end scenario for all types of devices, data and heterogenous connectivity

and accelerate that moves that idea very quickly to execution with minimal risks. 19

SAP Cloud Platform (CP)


SAP Cloud Platform is a solution takes IoT to the next level, with its umbrella of service including
predictive analysis and machine learning it takes from connecting devices to analyzing devices. Along
with options to integrate with backend systems, either on premise or in cloud it provides more flexible
deployment options.

18
Image copied from Website: (Oracle, 2015)

19
Text copied from Article: (Ray, A Survey of IoT Cloud Platforms, 2017)

20 | P a g e
In comparison of the two known clouds in market, it can be concluded that architecture of Oracles
solution is a lot simpler. In terms of functionality of standalone IoT solutions, both are comparable. In
terms of ease of use Oracle is better as it provides built in APIs not just to store data but also to
integrate with on premise solution. However, SAP being renowned for producing best possible
integration in the market has not left its IoT solution behind. With uniform end user experience in
terms of UI5 along with access to OData services from SAP or Non-SAP Systems, SAP seems to provide
more flexibility. With many deployment options of fully integrated solution including on cloud to on-
premise with HANA Cloud Connector and various other possibilities of deployment, SAPs Solutions
seems to be more flexible. SAP CP Services and Components are mentioned in the below diagram.

Figure 11: SAP CP Components & Services 20

Other Cloud Platforms


Quite a few different products are chosen apart from SAP CP to provide information to regarding their
technology, specifically, appropriateness, and convergence with existing knowledge of
communication platforms. Moreover, these IoT Cloud platforms are surveyed according to their
appropriate deployment services including Application Development, Device Management, System
Management, Heterogeneity Management, Data Management, tools for Analysis, Deployment,
Monitoring, Visualization and Research. Following table indicates these factors against different IoT
clouds.21

20
Diagram copied from official Website: (SAP, 2017)

21
Details from Article: (Ray, A Survey of IoT Cloud Platforms, 2017)

21 | P a g e
Figure 12: Comparison of Several IoT Cloud Platforms22

If these are compared with SAP CP, differences are quite evident. SAP CP would turn out to be an ideal
solution for various IoT Use Cases. Most of the parameters mentioned above are covered with the
solution especially Application Development, System Management, Heterogeneity Management,
Analytics and Visualization. All these aspects related to SAP Cloud Solution will also be covered in
subsequent chapters.

22
Table copied from Paper: (Ray, A Survey of IoT Cloud Platforms, 2017)

22 | P a g e
2.1.4 Decisions on hardware and Software Selection
By the end of the last chapter, readers are now familiar with all the major components that can be
used for IoT rapid prototyping. But, question still remains, what hardware and software components
have has been used specifically? In section 1.2, research questions were mentioned. This section
attempts to answer briefly those research questions and concludes with an End-to-End Architectural
diagram.

Tessel Device
Based on the reasoning in section 2.1.2 we are now in a position to build a rapid prototype using
Tessel Device. Decision to choose Tessel has been mentioned in the above stated section. Therefore
first two thesis questions related to Smart devices have been answered.

SAP Cloud Platform (as IoT Cloud Solution)


Next question is how to send data to consolidated system. IoT has created waives in IT industry and
SAP being a market leader in ERP has come up with a solution for not only IoT but also Big Data,
machine learning and all such latest technologies. These technologies are available within the
framework of SAP Cloud platform.
In SAP Cloud platform, we have a service for IoT, which when configured and customized for our case
makes APIs that can be used to push or receive data from sensors. So, SAP Cloud platform has the
functionality that has answered the question of how to send data to a consolidated System. Details of
which will also be covered in later sections but for definition of methodology it is now known that
there will be component in technical architecture known as SAP Cloud Platform.

SAP UI5 (Front-End for Monitoring & Execution)


Next question is how to visualize data, fortunately SAP CP is a fully mature solution that also provides
a service which can be used to make SAP UI5 Apps. When this service is enabled and connected to
SAP CP by means of XS engine, data can be send in the form of OData to our front end that is designed
on HTML5 and JavaScript along with XML. The whole app is known as UI5 App (term frequently used
throughout the course of this document).

SAP HANA Cloud Connector (for Back-End Integration)


As of now, brief understanding of half of our architecture has been completed. Next step is to
integrate this sensor data with backend systems so that it can be used for reporting against various
transactions. After discussing with technical architects, It was discovered that at Aequitas AG S4 HANA
is the backend System that is on premise edition and located at Amazon Cloud Services. Research was
then conducted on how to achieve integration between SAP CP and SAP S4 System. Answer turned
out to be HANA Cloud connector, which is nothing but SAP PI in cloud. It uses HTTP and Odata
protocols to send or receive data from any system whether it be SAP or non-SAP.

23 | P a g e
Architecture
It can now be concluded that from the front end UI5 app there would be two communication points.
One communication point between SAP UI5 app and SAP Cloud platform using OData protocols, and
the other communication point between SAP S4 HANA backend System and UI5 app using Hana cloud
platform again via OData protocols.
For all this huge architecture to function, custom codes in java scripts, XML and ABAP along with few
alterations to HTML codes had to be written. End architectural diagram looks something like this.
Following diagram explains the architecture for end-to-end scenario

Figure 13: End-to-End Architecture

Apart from these two-communication point, most important is receiving data from Tessel device and
as per its documentation it is possible over USB or WIFI connection. Please note that all screenshots
presented below are based on USB connection and not WIFI that is primarily due to the fact that at
Aequitas AG WIFI connection is purely restricted via some proxies, therefore connection was not
possible. When different networks were used at home or using Mobile hotspot, WIFI connection was
possible and some data was also sent over it. Therefore, functionality mentioned in the diagram works
well.
End to End Architecture as mentioned in the above screenshot clearly defines our objectives. But
before realizing our approach as stated in previous sections, further details and explanations are
required before realization of the prototype. Therefore subsequent sections within this chapter aims
to provide clear explanations of components that have been used.

24 | P a g e
2.2 SAP HANA as a Platform
The SAP Cloud Platform (CP), in the past known as SAP HANA Cloud Platform, is an in-memory
Platform as a Service (PaaS) item. Free programming sellers (ISVs), new businesses and engineers can
utilize SAP CP to make and test HANA-based cloud applications. It can likewise be utilized to broaden
cloud and on-premises programming. Installment depends on a membership display.
SAP Cloud Platform is the venture stage as-a-benefit with extensive application improvement
administrations and abilities. It empowers clients to accomplish business deftness, make a really
coordinated and advanced undertaking, and quicken computerized change over the business all
without the necessity of keeping up or putting resources into on-premises foundation.
SAP Cloud Platform, endeavor stage as-a-benefit (PaaS), gives thorough application advancement
capacities to help broaden, coordinate and assemble imaginative applications in less time without
the exertion of keeping up the foundation. It gives administrations to versatile, Big Data, Machine
Learning, Internet of Things, and more to convey secure business applications that incorporate and
improve IT scene, drive readiness and quicken advanced change in weeks rather than years.23

Figure 14: features of SAP Cloud Platform

2.2.1 Product Capabilities and Services


2.2.1 Product Capabilities and Services

Enterprise Mobility
It exploits a thorough application improvement condition to make portable applications that supports
business on the go.

23
Concepts from: (SAP Cloud Platform, 2017)

25 | P a g e
User Experience

By making use of the state of the art technologies, new user interface from SAP has visually appealing
screens created using Java Script, HTML5 and XML, along with data exchange possible in various
formats.
Collaboration Services

Encourage coordinated effort and cooperation over your association, regardless of its size. With
administrations that engage representatives to sort out and share data in each other's workspaces, it
can enhance work quality while contracting the time it takes to finish ventures and achieve business
objectives.

Integration

Flawlessly coordinate local cloud applications into business scene. It can be utilized to interface basic
undertaking information to make client particular applications crosswise over half and half, on-
premises, and cloud situations. And afterward use APIs to draw in with clients, interface with new
accomplices, and venture into new markets.

Security

Cloud application advancement stage offers firmly incorporated venture security administrations to
help ensure the applications you create and your business against dangers.

Analytics

Convey the noteworthy data your business needs to flourish. Use an extensive arrangement of
investigation arrangements worked for the cloud including business knowledge (BI), Big Data
examination, and installed programming as-a-benefit (SaaS) examination.

Internet of Things (IoT)

Rapidly create, send, and oversee ongoing IoT, machine to-machine (M2M), and remote information
match up applications with SAP Cloud Platform Internet of Things benefit. Locally available and
oversee associated remote gadgets. Furthermore, utilize constant prescient examination to enhance
insight and basic leadership at the center of your business and at the edge.

Data Management and Storage

Use basic and adaptable approaches to store, get to, oversee, and share information. These
administrations give best-in-class information security, accessibility, administration, and examination
for your business applications to quicken spry advancement.

Development and IT Operations (DevOps)

Utilize DevOps administrations to rearrange application advancement and lifecycle administration.

26 | P a g e
Business Services

SAP business administrations control an open commercial center for new SAP Hybris, ISV, and other
outsider applications. Offer your applications to different organizations or pick pre-bundled
applications for client benefit, internet business, or smaller scale business benefits that use in-
memory innovation24.

The SAP Cloud Platform, is a full featured, open standards based, in-memory cloud platform designed
for todays increasingly networked, mobile, social and data-driven world. Developers can quickly build
impactful, highly scalable applications leveraging the massive speed and scale of SAP HANA.

In simple words - SAP Cloud Platform is a Platform as a Service offering (PaaS) that provides both a
development and runtime environment for cloud applications. It allows you to focus on developing
your software and use an enterprise-ready pre-installed environment in the SAP cloud to deploy and
run your applications in a secure and reliable way.

2.2.2 Different Scenarios on SAP Cloud Platform


SAP and its customers use SAP Cloud Platform for 3 main scenarios:25
Figure 15: Deployment options of SAP Cloud Platform

On-Demand Extension:
Broadening existing SAP arrangements running in the cloud with custom expansions likewise running
in the cloud (e.g. SuccessFactors).

On-Premise Extension:
Broadening existing SAP arrangements running in your server farm with custom augmentations
running in the cloud (e.g. SAP Business Suite). This is additionally called Hybrid Solution.
New Solution: Building new custom arrangements running in the cloud

24
SAP Cloud Platform Features: (SAP Cloud Platform, 2017)
25
Explanation from: (SAP HANA Tutorial, 2015)

27 | P a g e
Figure 16: SAP Cloud Platform Architecture

2.2.3 SAP HANA DBServices


Starting bottom up, the foundation of the SAP Cloud Platform is SAP HANA, which is not only an in-
memory database, but a full-fledged application platform in its own. Besides the possibility to persist
data in both row and column stores, SAP HANA also provides numerous libraries to query or
manipulate data such as predictive analysis, fuzzy search and text mining, geospatial and graph
functionality and so on. Many of these capabilities have been added to the SAP Cloud Platform. For
example developers can now build XS applications directly on the platform and without any additional
costs.

2.2.4 SAP HANA App Services


On top of these DB Services the platform provides additional capabilities (App Services) referred to as
Enablement Services and Application Services respectively. On top of these DB Services the platform
provides additional capabilities (App Services) referred to as Enablement Services and Application
Services respectively. To facilitate the rapid development of cloud applications the platform provides
a vast set of enablement services for the most common pattern in software engineering such as
persistence, connectivity, identity and document management and so forth. Addressing the needs it
requires to develop first-class business applications these application management services are

28 | P a g e
2.2.5 Neo VS Cloud Foundry
Within SAP Cloud Platform, there are two different environments that user can choose to work with.
Neo and Cloud Foundry, while NEO is SAPs inbuild environment, cloud foundry is an open source
platform that is suitable for single app small solutions related to Internet of things and Big Data.
Differences amongst these environments can be depicted from the table below.

Features Cloud Foundry Neo


Best used for 12-Factor and /or microservice HTML5-based, SAP HANA XS
based application and for and complex JAVA
applications using non-JAVA Applications
runtimes, IoT and machine
learning scenarios, XSA
Applications and multiple other
runtimes
Runtimes/ build packs with SAP-JAVA, and Node.js JAVA, HTML5 and SAP HANA
enterprise support XS

Additional Build packs JAVA, Python, staticfile, Ruby, Not Available


Go, PHP, Binary, Bring your own
build pack, and more.

Maximum memory 2 GB 16 GB
consumption of a single
application instance

SAP HANA Programming SAP HANA Extended Application SAP HANA extended
Model services, advanced Model application services, Classic
Model

Virtual Machines Not Available Available in selected regions


Container Support Docker with Diego, for more Not Available
information see the cloud
foundry documentation.

Certifications Not available ISO 27001, SOC1 type 2 and


SOC2 type 1.

On-Premise Connectivity Partially Available Available

Extension Development Only selected scenarios Available for SAP Success-


factors and SAP S4 HANA

Figure 17: Comparison of Neo and Cloud Foundry 26

26
Table quoted from: (SAP AG, 2016)

29 | P a g e
2.3 Internet of things (IoT as a service in

SAP HANA Cloud platform)


Web of Things benefit gives interfaces to enlisting gadgets and their particular information sorts,
sending information to a database running on the SAP Cloud Platform in a safe and proficient way,
and putting away and giving access to the information put away. The particular administrations are
disseminated crosswise over two primary segments: Remote Device Management Service (RDMS)
and Message Management Service (MMS). Additionally, there is a graphical UI called Internet of
Things benefit cockpit, which gives access to the different administrations. The accompanying figure
gives an outline of the design.
Figure 18: Architecture of IoT Service in SAP CP

The MMS gives different APIs that can be utilized by gadgets to send information to Internet of Things
benefit. It forms the information and holds on the information in the databases associated. There
might be other utilize cases, however, which require sending the information to a message
intermediary, occasion stream processor or even a report vault.

The Internet of Things benefit cockpit is the fundamental interface for clients to associate with the
Remote Device Management Service (RDMS). You can utilize it to enlist new gadgets, to characterize
the construction of messages (gadget sorts and message sorts) they can send and get, and in addition
to build up the trust relationship required by gadgets to interface with the Message Management
Service (MMS).27

27
Architecture explanation from: (SAP AG (IoT Documentation), 2017)

30 | P a g e
2.4 SAP HANA as a Database
The SAP HANA database is developed in C++ and runs on SUSE Linux Enterprise Server. SAP HANA
database consists of multiple servers and the most important component is the Index Server. SAP
HANA database consists of Index Server, Name Server, Statistics Server, Preprocessor Server and XS
Engine.
Figure 19: Architecture of SAP HANA Database

Index Server:
Index server is the primary SAP HANA database part, it contains the real information stores and the
motors for preparing the information. The file server forms approaching SQL or MDX explanations
with regards to verified sessions and exchanges.
Persistence Layer:
The database persistence layer is in charge of toughness and atomicity of exchanges. It guarantees
that the database can be reestablished to the latest submitted state after a restart and that exchanges
are either totally executed or totally fixed.
Preprocessor Server:
The index server utilizes the preprocessor server for dissecting content information and removing
the data on which the content pursuit capacities are based.
Name Server:
The name server possesses the data about the topology of SAP HANA framework. In a conveyed
framework, the name server knows where the segments are running and which information is
situated on which server.

31 | P a g e
Statistic Server:
The statistics server gathers data about status, execution and asset utilization from alternate servers
in the framework. The insights server additionally gives a past filled with estimation information for
promote investigation.
Session and Transaction Manager:
The Transaction manager coordinates database exchanges, and monitors track of running and closed
transactions. When a transaction is committed or rolled back, the transaction manager advices the
involved storage engines about this event so they can execute necessary actions.
XS Engine:
XS Engine is a discretionary part. Utilizing XS Engine customers can interface with SAP HANA database
to bring information by means of HTTP.
SQL Script:
The SAP HANA database has its own scripting dialect named SQL Script that is intended to empower
enhancements and parallelization. SQL Script is an accumulation of augmentations to SQL. SQL Script
depends on reaction free capacities that work on tables utilizing SQL questions for set handling. The
inspiration for SQL Script is to offload information concentrated application rationale into the
database.
Multidimensional Expressions (MDX):
MDX is a dialect for questioning and controlling the multidimensional information put away in OLAP
3D shapes. Approaching MDX asks for are prepared by the MDX motor and furthermore sent to the
Calc Engine.
Planning Engine:
Planning Engine allows financial planning applications to execute basic planning operations in the
database layer. One such basic operation is to create a new version of a data set as a copy of an
existing one while applying filters and transformations. For example: planning data for a new year is
created as a copy of the data from the previous year.
Another example for a planning operation is the disaggregation operation that distributes target
values from higher to lower aggregation levels based on a distribution function.
Calculation engine:
The SAP HANA database highlights, for example, SQLScript and Planning operations are executed
utilizing a typical framework called the Calculation motor.
The SQL Script, MDX, Planning Model and Domain-Specific models are changed over into Calculation
Models. The Calculation Engine makes Logical Execution Plan for Calculation Models. The Calculation
Engine will separate a model, for instance some SQL Script, into operations that can be handled in
parallel.
Metadata Manager:
Metadata can be gotten to through the Metadata Manager part. In the SAP HANA database, metadata
includes an assortment of items, for example, meanings of social tables, sections, sees, lists and
techniques.
Metadata of every one of these sorts is put away in one basic database inventory for all stores. The
database inventory is put away in tables in the Row Store. The highlights of the SAP HANA database,
for example, exchange bolster and multi-variant simultaneousness control, are additionally utilized
for metadata administration.
The Row Store:
Row store is the SAP HANA database row-based in-memory relational data engine.

32 | P a g e
The Column Store:
The Column Store stores tables column-wise. It originates from the TREX (SAP NetWeaver Search and
Classification) product. 28

As you will see later, we have used some of the components from database aspects of SAP HANA.
Namely, we have made procedures using SQL Script, we have used Row store table for sensor data,
we have used persistence layer to store data using IoT APIs, XS engine has been used to generate
OData and use it in UI5 App development.

2.5 UI5 and FIORI Development


Have you at any point utilized an application on your cell phone that was amazingly easy to utilize?
Have you utilized an application that was straightforward and outwardly engaging? The client
encounter (UX) of an application is more than what it would appear that, yet it's the manner by
which it works.
SAP has understood the (UI) is more vulnerable to change today than any other time in recent
memory. Client's advancing needs and requests can without much of a stretch reshape an
application's sythesis and plan. In light of this, the backend ought to be produced and kept up
independently from the frontend, and there ought to be a reasonable separation of concerns. Aside
from this gap, the individual UI components of an application can and ought to be produced
independently as well.

2.5.1 What is SAPUI5?


In view of the hypothesis above, SAP presented a HTML5-based improvement toolbox, SAPUI5,
which energizes one predictable client encounter. By using the hypothesis above, applications
assembled utilizing SAPUI5 are responsive crosswise over programs and gadgets they keep running
on cell phones, tablets, and desktops. The UI controls consequently adjust to the capacities of every
gadget. To do this, SAPUI5 gives powerful advancement ideas to make applications with purchaser
review, program based business applications. More or less, UI5 is a customer UI innovation in light
of JavaScript, CSS and HTML5. Servers become an integral factor for conveying your applications,
putting away the SAPUI5 libraries, and interfacing with a database. Contingent upon nature in which
you are utilizing SAPUI5, the libraries and your applications are put away for example on SAP HANA
Cloud Platform or another application server. The favored intends to get to business information for
your application is by utilizing the OData display.

2.5.2 How does SAPUI5 work?


To begin, one must understand SAPUI5s primary, underlying develop concept. SAPUI5 supports the
Model View Controller (MVC) concept, a software architectural pattern for implementing user
interfaces. As a developer, you are encouraged to use the MVC to keep the data model handling, the
UI design and the application logic separate. This helps in facilitating UI development in addition to
modifying the different parts.

28
Concepts from Book: (SAP AG, 2015)

33 | P a g e
Figure 20: Architecture of UI5 Apps

Model: This is the part that is accountable for the management, retrieval, and updating of the data
that is being viewed in your application.
View: This part is accountable for interpreting and rendering the initial UI. The view in the context of
SAPUI5, generates the presentation to the user based on changes in the model.
What does a view look like? Well, in its directory, views are in stored in the view folder and names
of XML views always end with *.view.xml (as youll see below).
Controller: This is one of the most important parts. This is the part that is accountable for separating
the view logic from the data logic. The Controller responds to user interaction and view events by
adjusting the view and the model. The controller is essentially sending commands to the model to
update its state, like editing a document in a word processing application. Similar to views, Controllers
carry the same name as the related view (if there is a 1:1 relationship). Controller names always end
with *controller.js (as youll see below).

Figure 21: Ui5 Apps look and feel

2.5.3 Components of SAP UI5 Application


1. he initial phase in stacking a SAPUI5 application is the point at which the program stacks the web
application's index.html (which incorporates close to negligible code). In case you're not
acquainted with web advancement, each site is conveyed inside registries inside a web server.
Notwithstanding that, each page is an individual document on that web server. When you visit a
website page, the server searches for the default document (index.html) and shows that naturally.

2. Subsequent to, it at that point stacks the SAPUI5 toolbox center utilizing the standard variation
bootstrap. Bootstrap contains HTML and CSS-based outlines/designs for SAPUI5's typography,

34 | P a g e
frames, catches, route, and other interface segments. At that point there is a solitary capacity call
to embody a sap.ui.core.ComponentContainer and spots it in the body of the HTML archive. What
does the sap.ui.core.ComponentContainer do?

The sap.ui.core.ComponentContainer loads a sap.ui.core.UIComponent which is the independent


epitome of the entire application.

3. The Component (which is named sap.ui.core.UIComponent) is characterized in the Component.js


record in an indistinguishable envelope from index.html; it is found through the particular of asset
areas in the bootstrap tag. The Component has metadata characterized, which incorporates
application-level design and steering data. Steering is the key best practice route system and for
non-paltry applications supersedes sap.ui.core.EventBus-based route, and even shared-
controller-based access to the best level route control, (for example, a sap.m.NavContainer).

All in all, what do I mean by application-level design? Our Component comprises of two sections:
metadata, and a capacity that calls our information source when the segment is instated after the
list. In past variants of SAPUI5, extra design settings for the application, similar to the
administration setup, the root see, and the directing config, were added to our Component. As of
SAPUI5 variant 1.30, SAP prescribes you to characterize these settings in a document known as
the Manifest (which we will discuss in Part 2).

4. Following the instatement of our Component, there are a couple of models that are made and
controlled on our Component. The first is the fundamental model; this interface with our Data
Source utilizing oData. Alongside the fundamental model, the disguise (i18) is instated. The
disguise document is the place writings are stacked from a nearby asset (record), and gadget
location in light of UI controls.
5. Additionally, the instatement of the Router (sap.ui.core.routing.Router) is completed in the
primary area of our Component the root see ('App') is instantiated. Like the various perspectives
in our nonexistent application, the root see is a XML see.
6. The premise, establishment see (characterized in App.view.xml) is extremely basic and contains a
solitary sap.m.SplitApp control. Affirm back off what is sap.m.SplitApp? SplitApp is an extra
center segment of a SAPUI5 portable application, other than App control. SplitApp maintains two
NavContainers (route between Pages or other full screen controls) if SAPUI5 keeps running on a
tablet and one NavContainer on a cell phone. The show of Master Nav Container relies upon the
picture/scene of the gadget and the method of Split App.
7. Okay now the feathery stuff! Presently we'll find out about the piece of the application that our
clients will find in their program. The unmistakable piece of our nonexistent application is given
by three primary XML sees and a section. At the point when our application is introduced on a
gadget (other than a cell phone), there are two perspectives demonstrated the ace and the
detail. At in the first place, this is the Master.view.xml and the Detail.view.xml . Each of these
perspectives contain a sap.m.Page. There's additionally NotFound.view.xml, to be utilized when
no view can be coordinated to the asset asked. Like that exemplary "404-Not Found" page you
may have gone over on different sites. What is a sap.m.page? All things considered, a sap.m.Page
is an essential compartment for a versatile application screen.
8. In the Detail see there is a couple of SAPUI5 frame controls to show the subtle elements inside
our application. For this particular illustration, this can incorporate the sender and collector
messages. These controls are characterized independently in XML pieces.

35 | P a g e
9. Lastly, there is a Formatter.js record. The Formatter contains designing esteems that are utilized
as a part of different controls inside the Master and Detail sees. The css organizer contains
style.css which has a little measure of custom CSS, particularly to position the "not discovered"
message additionally down that it would ordinarily sit. Once more, in case you're not comfortable
with web improvement, CSS remains for Cascading Style Sheets. CSS can contain one or numerous
static records utilized as a template dialect for depicting the introduction of a page (or report).29

2.5.4 SAP BUILD


UI5 app development, or instead any user experience development present itself with a lot of
problems. 80% of the unforeseen fixes (after development and deployment) are due to UI changes.
Diagram below depicts that of those 80% fixes that are related to UI, it gets cheaper if we realize those
UI requirements before the start of the realization or during realization after realization it is expensive
to undo any changes.30

Figure 22: Cost Associated with front end development in various stages

SAP BUILD is an interactive tool that helps during the requirement gathering phase. It allows
functional consultant to choose from existing app (there already is a large collection from which
functional consultants can choose from), make changes in it and share with end users for their
feedback (without any actual development) it is in a way app blue print, which is like blueprints used
in various fields of engineering. After acceptance by user, those can further be share with developers,
who can extract source code of views in form of XML and import into SAP WEB IDE for actual UI5 app
development, by merely changing requested features and connecting backend sources as models and
implementing logics in controller. SAP BUILD helps in gathering requirements for front end UI5 apps
and also during development.31

29
Concepts from: (Colucci, 2015)
30
Concepts from: (SAP AG, 2017)
31
From Official Website of (SAP AG, 2017)

36 | P a g e
2.6 Smart devices (Tessel Sensor devices)
A smart device is an electronic device, generally connected to other devices or networks via different
wireless protocols such as Bluetooth, NFC, Wi-Fi, 3G, etc., that can operate to some extent
interactively and autonomously
Tessel is an open-source microcontroller that is programmable in JavaScript and compatible with
Node.js. Node.js is an open source platform that will be discussed later in the section.
Tessel is optimized for the creation of new experiences and internet-connected devices. Thats why
Tessel features built in WiFi support and plug and play modules that can be installed with one line
to the Node package manager (npm). By enabling rapid prototyping and iteration, Tessel gives
hardware development the speed and flexibility of web development.
Developing for Tessel is just like web development: write your JavaScript code and deploy it with a
simple push command just like pushing to a server.
Innovation doesnt come from managing drivers and configuration, but from how fast you can develop
new experiences. We built Tessel around Node.jss huge and growing community of modules, so
support for web APIs and services; real time communication; and robotics comes right out of the box.
Tessels custom runtime is optimized for low level chips. It only takes up 256k of flash and RAM, so
youre free to push the limits of Tessels 32MB for whatever project you dream up.

2.6.1 Add Capabilities Faster Than Ever Before


Tessels module system makes it easy to add capabilities to any project without soldering. Just like
Nodes module system, each Tessel module encapsulates a specific functionality that can be added to
the board, such as RFID, microSD, or a servo.
Simply plug one of our modules into any of the four module ports on the board, then use the node
package manager to install the matching librarywhich is printed right on the module.
There are two tiers of modules for this crowd funding campaign, Class A and Class B.
Class A modules:
Transfer turn gadgets on and off (up to 5 amps)
Temperature/Humidity sensor get data about the atmosphere
Servo Driver make up to 16 little engines move. Incorporates one servo. (Extra power supply
included for US supporters)
Accelerometer get constant development information
MicroSD Storage add additional capacity to your Tessel (incorporates a 1GB microSD card)
Surrounding - light and sound sensor
nRF24 - remote correspondence without WiFi

37 | P a g e
Class B modules:
RFID (13.56MHz) read RFID labels
Bluetooth Low Energy send information to different gadgets, i.e. cell phones
GPS get area data
Sound Output disentangle and yield sound records/crude sound
GPRS/SIM - add a SIM card to associate Tessel to the cell organize. Low-transfer speed
SMS/Voice/Internet for worldwide availability without WiFi)

The times of dismantling undertakings to reconstruct them are finished: with Tessel, you can push
code totally remotely, with only a solitary summon.
Tessel highlights Texas Instruments' CC3000 WiFi chip which presents SmartConfig innovation: an
approach to interface your nearby Tessel gadget to a WiFi arrange in seconds essentially by entering
your system qualifications into your cell phone.32

2.6.2 Node.js
Node.js is on the ascent for programming equipment. The full Google V8 rendition helps run Intel's
Edison chip. The IoT people group has just grasped Node.js for installed gadgets and mechanical
technology, with striking illustrations including Nodebots and Cylon. Also, now, significantly littler
gadgets like Tessel 2 an improvement stage for prototyping equipment are utilizing JavaScript.

Why would that be a major ordeal? It makes programming equipment significantly less complex. Intel
chief designer Michael

The motivations to utilize Node.js for equipment are basic: it's institutionalized, occasion driven, and
has a high efficiency. Most importantly it is progressively written, which makes it quicker to compose
flawlessly suited for getting an equipment model out the entryway. With JavaScript, you can
manufacture a model quickly, get it before clients to get input, and repeat. It's additionally sufficiently
vigorous that you can take it the distance to item.

One of alternate qualities of Node.js is its colossal library of bundles, more than 132,000 and
developing. All things considered, working in Node.js requires information about how to interface
with the Web and other IoT gadgets. Yet, there are some straightforward instruments that can offer
assistance.

32
Information about Tessel: (Tessel, 2015)

38 | P a g e
While a few specialists bring up that Java is not yet a practical choice for IoT programming, JavaScript
makes programming way less complex. The reasons need to do with both legislative issues and
conveyability. Apple disheartens utilization of standard Java usage in iOS for different reasons, so
moderately complex pre-arrangement approaches are expected to utilize it. Be that as it may, the
truth of the matter is, you don't generally require Java. The arrangement of accessible libraries in
JavaScript is similarly rich. JavaScript programs keep running on inserted gadgets, servers, cell phones,
and desktops. Furthermore, they are under Windows, Linux, Android, and iOS.
In short: to build a total end-to-end IoT framework, JavaScript is the most versatile programming
framework accessible.33

2.7 HANA Cloud Connector


Since in this case S4 system was on premise edition in Amazon cloud, direct connection between S4
System and SAP CP wasnt possible. To have a proper connection, we need HANA Cloud Connector,
which is nothing but SAP PI in Cloud. Basis team installed HANA Cloud Connector that was later
configured to needs. Usually SAP Systems are hidden behind firewall and proxy settings to protect
against unauthorized use. SAP Cloud Connector uses reverse proxy tunnel and opens firewall under
strict access control policy. During configuration only those resources are guaranteed access which
have been mentioned under access control with their full path. Landscape picture from integration
point of view between S4 and HCP System looks something like this.

Figure 23: Architectural diagram of SAP Hana Cloud Connector and Backend System

33
Node.js use explained from: (Hunter, 2017)

39 | P a g e
S4 HANA has various options for deployment. Three most common
1) S4 on the cloud, where its sold as infrastructure as a service. Business pays for services that are
used.
2) S4 on-premise is most common choice for huge data volumes where customization is also
required and not standard solution is not enough.
3) S4 HANA on-premise in Amazon Cloud is another choice that are used for test environment and
for development without having huge data bottlenecks.
Our S4 HANA deployment is the third one. Nevertheless, since customers can have various other
possibilities we had to search for all the best solutions possible.
1) For S4 HANA Cloud edition, replicating data is easier, as we dont need to install middleware.
Cloud connectivity from both ends take care of all security aspects and tunnel is not needed to be
set up.
2) In case of S4 HANA on premise edition, we need to have HANA Cloud connector (which is nothing
but Process Integration, PI in cloud) that is installed on S4 HANA server and then SAP HCP is
connected via ODATA and HTTPS protocol using reverse proxy tunnel. With HANA cloud connector
RFC is also supported to connect backend ABAP Systems.

40 | P a g e
3. Approach and Realization
Lets start with the realization process where all components that have been theoretically covered in
previous chapters will be put to action. Lets start with the implementation process. This section will
have screenshots along with explanations of each important step. Aim of this section is to provide
explanation and resources for any new implementations covering thesis stated end to end scenario. This
section has been divided into 6 parts as follows;

1. Configuring SAP Cloud Platform


2. UI5 App creation
3. OData Creation from SAP S4 System
4. Connecting Tessel Device
5. End to End Scenario

3.1 Configuring SAP Cloud Platform


for IoT and SAP Web IDE
To realize our idea of connected device with results stored in HANA Database via use of IOT Inbuild
service and visualizing data in UI5 App along with integration with backend S4 System. Trial account
would be created using the following link. https://account.hanatrial.ondemand.com/

After registering and logging in, we will be redirected to the following page.

41 | P a g e
Database instance would be created, and will be binded to inbuilt IoT service, that basically means
data pushed using IoT service APIs will be stored in this database.

While creating a database, SAP CP will prompt to have a password for SYSTEM user, this is a default
user that is created with necessary privileges while instantiating a database. Using Web access that
was switched on while instantiating a database, roles assignment would be completed to make sure
that HANA Database artifacts could be displayed and edited along with creation of scripts for OData
in XS Engine.

To monitor the performance of database instantiation, events tab can be utilized that will list all steps
for database creation. Upon returning to overview screen after completion, it will show started.

42 | P a g e
Open SAP HANA Cockpit and assign roles to users that will allow us to open SAP HANA Web Based
development workbench under Manager Roles and users tile.

Assign roles to view catalog and editor in development workbench. Catalog contains the list of all
database tables, along with schema details, procedures and table types. While editor is used to create
OData application will using XS Engine as explained in Section 2.3.

After assigning roles open workbench development cockpit under HANA instance that was just
created and started. Four tabs namely editor, catalog, security & traces would be seen. Editor is for
creating OData request using XS engine. OData files are created using scripts provided in the
documentation of SAP. That will be covered in the later section while we are focusing on OData

43 | P a g e
request. Catalog on the other hand has database tables, views, database procedures, and all other
objects related to in memory databases, that have been covered in the previous section.

In order to use catalog in tools such as WEB IDE (that is another service provided in SAP Cloud platform
for UI5 app creation we need to provide link to our database to the WEB IDE Service). In order to
ensure that for each service within cloud platform URLs are not given separately, there is a central
maintenance of these URLs in the tab known as destinations. Its working principle is the same as that
of tcode SM59 in SAP R/3 Systems. Assign URL along with username and password. In this case, System
user that was created at the time of database instantiation would be provided.
parameters for enabling WEBIDE namely Usage, System and Enabled will also be added in additional
properties. That makes sure that system user can access WEBIDE web service to consume data.

44 | P a g e
SAP HANA Database is now ready. Next step is to configure IoT service from available services within
SAP CP. In the services tab, we will click on internet of things, and following screen will appear.

This is the RDMS service, that was described in the last section and it is responsible for having
metadata of data that will be sent or received. First step is to create Message type that is metadata
of the fields that will be transferred from smart device. We will add our two parameters along with
time stamp, apart from timestamp both data types are in Double format that guarantees that these
values could be stored with precision of decimal points. This is how the architecture of RDMS service
looks like.

Figure 24: Architecture of RDMS Service for IoT in SAP Cloud Platform

Device types are then created that will have previously created message type assigned, along with an
ID of device type, and OAuth of these device types. These OAuth are like token for authorizations and

45 | P a g e
are used for security purpose while configuring settings for connection for the first time. One can
check by navigating from device type to message type. Message types fields that we had created,
would appear.

After creating device type, all devices could now be added individually. All devices added can have the
same device type assigned to it, that guarantees authorization for device type and fields that are
within message type (assigned to device type) And then device can be created, with a cardinality of
many to 1. That is multiple device can have one device type. In turn many device type can have one
message type. OAuth is again created, this time for the device that has been created.

Metadata for service is now ready. We will then need to deploy our solution. After deployment is
complete we need to assign iot-mms-user to user in order to open message management cockpit.
That will have APIs to send message using various protocols along with tables that are created
automatically at the time of deployment.

46 | P a g e
Message Management cockpit looks like the one presented below. Here testing of sending and
receiving message could be performed based on various protocols and several customization related
to the service can be accomplished here.

As explained earlier, Deployment generates database table on message type along with APIs to push
data. We can test using HTTP API. By giving device ID along with message type and values for fields
within message type.

47 | P a g e
Status 200 means that everything has been committed successfully. As shown in screenshot below.

We can further check table for this specific data using Message Management cockpit and also using
catalog from Web Based development workbench.
Checking the table reveals that our dummy data has been stored correctly.

Now that testing of dummy data that had been pushed was successful, lets move to the next step of
creating an UI5 app consuming IoT data.

3.2 UI5 App Creation using XS Engine


SAP Cloud platform is a complete product, data that has just been witnessed in tables can be used in
front end. There are variety of ways in which we can present this data using XS Engine. XS Engine is
responsible for registering OData Services. As already explained, SAP HANA as a database has all sorts
of structures including Row/Column Database table, Database procedures, Row/Column views and
table types to name of a few. All these were developed to be used in the project. Row based table
having Meta data of sensor was automatically created when IoT services was deployed on the
database using database binding. Lets analyze metadata of IoT table that exist in the system schema.

48 | P a g e
Database table has G_CREATED field having the timestamp of the exact moment when record was
published on the database. This field is of great importance, as this has the potential to be used as a
key field while pushing data in SAP S4 system. But for now, lets concentrate on fetching data using
OData service from XS Engine. To have more control in terms of displaying selected amount of data
instead of all records we need to create some sort of function that has SQL statements for restricting
data selection.
Therefore, as a first step database procedure were created, which simply put is a set of SQL
Statements written on SQL Script and having necessary where condition as per business requirement.
For database procedure to work, Table type had to be created first. That have the same structure as
our database table.
Table type has been created using SQL Script as shown on the next page.

After creating Table Type, database procedures can now be created.

49 | P a g e
Here any form of where clause can be used to restrict the selected data. However for simplicity sake,
we have omitted where condition. Second point to note is that that results from this procedure are
stored in a column view known as VIEW_CLIMATE_IOT_NO, with its metadata shown below

After completing these pre-requisite, We are now ready to use our Column view in IoT Service and
expose required data in OData protocol that will be used in a UI5 app. OData service is created in
Editor of our HANA Database as shown below.

50 | P a g e
As can be seen, G_CREATED field has been mentioned as a key field. Key field are used in SAP UI5
app for identifying a unique record during navigation and routing process that will be explained a bit
later. With all this completed, lets complete steps to develop SAP UI5 Apps. 34
Steps that will be followed are as under,
1. Create a UI5 app using standard template, mention project name and default path along with
name of the root view. All this is stored in Manifest.json and index.html file and can be changed if
required.
2. Modify index.html file to include complex binding as it is required to display data in front end
controls. We write with the header script sap-ui-binding-syntax = "complex"
3. In manifest.json in data source tab mention the address of our ODATA Service.
4. Create front end table control in our main view.
5. App view is configured as a default view which has nothing inside, but its used for routing to a
different page. Till now, app looks like as below.

34
Concepts from book: (SAP AG, 2015)

51 | P a g e
6. When app is executed, after performing binding in Climatedata.view.xml (our main view) and
configuring routing in manifest.json file following results are displayed.

7. This is not enough for end to end scenario, as objective was to have two data source within an
app that can be used to integrate data to the backend system.
8. Therefore, second view named S4readwrite.view.xml has been created. This view will have data
from both sources. In order to consume the new data source (from backend System). Manifest.json
will be changed to include it.

9. Mention both view as targets and mentioned route path to them. For the first view, Pattern is not
needed (pattern is the additional link that is concatenated when we are on that view, second view
however has a defined pattern along with G_Created which was the key field of our OData service)

52 | P a g e
10. Now, climatedata.controller.js controller will be changed. To ensure routing proper routing.

11. On press is the event that will be triggered when a user clicks on a particular record.
oEvent.getParameters(listitems).getBindingContext().spath has additional URL for that particular
OData service record that will be used to navigate to that particular record.
12. This is not enough, we also need to catch this binding context in the controller of our second view
as shown below.

13. Now that we have our particular record, time to integrate our second OData source from SAP S4
System. This OData source was also custom created but we will cover its creation in the next section.
At the moment, its worth having a look at modified manifest.json file with the new data source that
has been added.

53 | P a g e
14. Screenshot above of readwrite controller also covers code to instantiate S4 OData source using
method Omodel.read.

15. Lets look at how our views look like with all these modifications.

54 | P a g e
Notice curly brackets with field names, this is how we confirm binding to our OData or any other data
source.
As already discussed before, UI5 models can be of type JSON, OData and XML. JSON and XML are
client-side models, that means that these are useful when model data is fixed and not huge in amount.
They are better suited for fixed model where sorting and filtering is required, because in those cases
request is not sent to server. Examples of these models include models for dropdown or combo box
or popup. Anything that is static is usually via such models. Binding in these models by default is two
way, that means that whatever has been changed in the UI will be automatically changed in the model
and reverse changes are also possible. OData models on the other hand are server-side models, and
therefore sorting and filtering request are sent to the server. These models usually include
transactional data that is frequently changed. In the application that is being created, JSON and OData
models have bee used, JSON Models are for status changes whereas OData models have already been
discussed. For all model types, binding has the same syntax with curly bracket and path of the
attribute in the model is mentioned within those curly brackets.

16. Lets look at the actual execution of these view.

55 | P a g e
17. In the second view (namely S4 view), records from both data sources can be seen. Where both
data sources are linked by the field timestamp. timestamp from when data record has been pushed
into SAP CP has been stored in both systems. As this has been used as the referential key field or
selection field for matching two data sources. When notification is not created in the system, data
from sources will not be visible and at the same time notification not created status will be shown
with red color. There are two buttons at the top of our S4 view. These two buttons contain
functionality to create notification in backend S4 HANA System. Next screenshot will confirm this
functionality.

56 | P a g e
18. There is no notification numberunder the tab Details from SAP System. When we press the
button the left of screen, notification number is created in backend system and number is reflected
on the screen, along with status change to notification created.

35

19. Notification is created in the backend and its number is reflected under the tab. Result can also
be verified from the backend systems.

35
Concepts Learnt from book: (SAP AG, 2015)

57 | P a g e
20. Also in tcode iw22 (plant maintenance notification Display/Change) notification number that
was created can also be verified.

For an end to end scenario, there are two other developments that needs to be completed. One is
related to the sensor device itself (in our case Tessel) and the other is OData creation in SAP S4
NetWeaver System both these objectives will be covered in the following sections.

58 | P a g e
3.3 ODATA Creation from SAP S4
Previously, OData service had been created using XS Engine. In SAP CP, XS engine is used to make
OData service, similarly SAP has provided ABAP Stack with relevant functionalities as well. Tcode segw
is used to create project. Within our project standard OData service for notification creation of plant
maintenance was utilized and enhanced by creating a new entity based on a Z table containing
notification with climate data. Other enhancement was based on the requirement to store sensor
data along with notification in notification description.

After adding standard OData service for Plant notification. notification header entity is present (that
wil be enhanced). New entity based on ztable has als been created. And these two entites are linked
using navigation property with cardinality 1 to 1 (as per business requirement) When ODATA services
are generated, four classes are created. Two are related to DATA Provider class with DPC at the end,
and one of them is the extension class containing our custom entity with DPC_EXT at the end. Similarly
there are two more MPC classes (Model Provider class) where one is the extension to MPC class with
MPC_EXT at the end.
Code for Create and get entity will be enhanced in our DPC_EXT class along with redefinitions of
get_entity, create_entity and create_Deep entity standard methods. After registering service to
NetWeaver Gateway.
NetWeaver gateway is a system where OData service is registered and monitored. This is the system
that makes services to be consumed by outside world. For our simplicity, we have configured
NetWeaver gateway to be on the same system as our S4 System.

59 | P a g e
Coming back to DPC_EXT class, below screenshot shows methods that were redefined and new
methods that were created for new entity set of sensor data.

These methods were redefined to capture new entity. create notification method was also redefined
as we wanted to add notification and temperature text to description field previously shown. After
redefining these methods and completing enhacnements, SAP Gateway can only be used to test these
services. As shown in screenshots below.

60 | P a g e
Status code 200 means that everything is working correctly.
Now, with the help of HANA Cloud Connector, this OData Service would be consumed in UI5 App.
For details regarding the process flow, please refer to the architectural diagram mentioned in
section 2.1.4.

61 | P a g e
3.4 Connecting Tessel Device
Initially,Tessel device can be connected to a laptop terminal to configure it. In order to work with
tessel there are a few pre-requisites that needs to be fulfilled. We need to install node.js and a
JavaScript editor according to our own requirements.
We also need to install npm libraries that are needed by the tessel device. These libraries are
automatically installed tessel project is initialized.
Next comes the step of plugging in Tessel Device. Using Command prompt a folder named climate-
tessel-device had been created and after installing npm files tessel project was initialized using t2 init
command. What it does is that it creates npm libraries in our folder along with index.js and node
module files and folder respectively as shown below.

There are other files here, but they have been manually created for testing purpose. Now scanning of
connected Tessel device could be performed.

62 | P a g e
Our USB Connected device now appeared. We will now push our JavaScript code to the device and
run the code. Code to fetch sensor data looks like this.

This code snippet shows authentication parameters to send data to CP. Message Type, Device Type
and Device configured using IoT service in SAP CP are used for authentication. Host contains the detail
of the IoT service link where data will be posted. Before these lines, libraries have been used that are
present in Tessel and are required to use all available function in the module and the platform itself.
We have therefore instantiated two variables that hold objects of these libraries namely tessel and
climate.
Next step in the code is to read Temperature and humidity data every minute and send it to via HTTP
post, as shown In below screenshot

63 | P a g e
Now that understanding has been developed about the code, lets run it to see its actual impact.

These readings will be sent every minute, as we have set loop timeout to 60000 miliseconds. These
new readings can be viewed in front end

64 | P a g e
3.5 END to END Scenario
First step is to fetch readings from sensor and send It to SAP CP using the code explained in the last
section.

Figure 25: Tessel sending reading

These readings are transferred to SAP Cloud Platform and can be viewed as shown in screenshot
below.

Figure 26: SAP UI5 app table view

Notification against these records can also be created, lets create notification and check it in S4
System.

65 | P a g e
Figure 27: SAP UI5 App Details View with two before creating notification

Initially notification doesnt exist against this record. Create Notification button is then used to
create a new notification, after notification has been created, view looks like as below;

Figure 28: SAP UI5 app details view after creating notification

Lets check notification in backend system.

66 | P a g e
Figure 29: view of Ztable with Notification and Sensor Data

And in tcode iw22

Figure 30: Tcode IW21 with notification created from SAP UI5 App

Our End to End scenario has now been covered.

67 | P a g e
4. Thesis Challenges & Applications
Thesis topic was really challenging and every milestone bought unique set of challenges. Research
questions that have been mentioned required through understanding of each aspect of the Thesis.

4.1 Smart Devices


First milestone was to choose the right sensor, one that was suitable keeping all aspects in mind.
There were quite a lot of options to choose from and betting on one of them was a difficult task. After
thorough analysis and keeping the use case in mind, Decision was narrowed down amongst two
options. Tessel and Raspberry PI.

Deciding on with Tessel was more appropriate based on the reasoning mentioned in section 2.1.2.
But to summarize it was based on the following factors;

1. Level of Abstraction provided for programming as per business needs.


2. Features including built in Internet connectivity.
3. Plug & Play Interface features.
4. Decision between Micro controller and Micro Processor.
5. Operating System.
6. Development Programming Language required to work with the device.
7. Time required to fully achieve objectives.
8. Cost associated with installation & Maintenance.
9. Electrical and Electronics knowledge required to work with the use case.

Amongst all these factors, most important in terms of rapid prototyping where only one sensor is used
are factors related to integration with IoT Cloud System including built in WIFI Capability, Abstraction
layers, Time required to fully achieve objectives.

Cost & Electrical knowledge were the two factors that have minimal impact in rapid prototyping. As
cost for both these products were comparable and no significant difference could be analyzed if only
one sensor must be purchased. Similarly, Electrical and Electronics knowledge wasnt much of a factor
as documentation is readily available in market.

Nevertheless, objective for the thesis was also to check feasibility of such situations and a difference
of 10$ multiplied by high number of sensors required in an industry lets say 500 could lead to
significant differences in cost associated with both. However, in actual deployment with Tessel this
additional amount can be cancelled out when bare minimum maintenance of Tessel devices is
considered.

Similarly, factor such as Knowledge of Electronics is not significant in prototyping. But in actual
implementation one dedicated resource would be at least required to complete the full end to end
scenario that leads to more chances of failures as more domains would be covered within a single
project. This has also been explained in section 2.1.3.

68 | P a g e
There were a lot of challenges faced. Quite a few questions that needed to be answered before and
during project implementation. In this section, lets focus on those questions and present some
meaningful insights to the research work.

4.2 Cloud Platforms


There were quite a lot of Cloud Platforms available in market. Two of the ERP giants had their own
platforms and choosing from one of them is a tedious task. Detailed analysis has already been
completed in section 2.1.3, and decision to go ahead with SAP CP was completed based on following
factors.

1. SAP Cloud Platform was a completely mature solution with predictive analysis and machine
learning as part of its core solution along with IoT service.
2. SAP Cloud Platform could be registered using trial account requiring no subscription and is ideal
for use with rapid prototyping.
3. SAP Cloud platform provides WEB IDE access that can be used to create front end UI5 apps based
on Java Script, XML and HTML.
4. SAP Cloud platform also provides options to connect to any data source if the protocol is based
on OData, and therefore integrating with SAP and non-SAP system through widely acceptable
protocol provided an advantage.
5. Solution on SAP Cloud Platform can be deployed to either cloud or to backend system, and
thereby providing flexible solutions which can work as Stand Alone and as fully integrated
solutions.

IoT solution provided by SAP is ideal for rapid prototyping, with relatively easier customization and
greater flexibility that it offers, it was the ideal choice for us to work with.

To integrate sensor data with standard SAP Solution, SAP has provided an umbrella of solutions within
their cloud platform. These solutions are easily accessible in trial account and for the above-
mentioned scenario, there is a service known as Internet of Things that in turn is a combination of
RDMS and MMS service. These are used to receive data and store in SAP CP Database. Architecture
of SAP CP like has been discussed in previous sections, and our thesis question has been answered
that SAP CP will interact with data in form of HTTPs request, there are other protocols also to facilitate
pushing data request, but HTTPs request suits the use case well, as these are secure with inbuilt SSL
Technologies to secure connections.

Now that data has arrived in our CP, next task is to visualize it. That has been made easy via use of
SAP WEB IDE and mapping of CP database destination. After making sure that OData written in XS
Engine is available, next important thing to cover is making UI5 Apps. For that JavaScript, XML, and
SQL scripts were understood to make sure that end users feel at ease while using these apps.

69 | P a g e
4.3 SAP Cloud Integration Platform
Another major Challenge encountered during the course of thesis was integration with backend ERP
system. Before working on cloud integration option, solution was to view data in UI5 front end app
by making an app. This was a stand-alone solution that adds limited value, but in order to realize full
potential of Internet of Things, Integration with backend ERP System was highly desired.
Therefore, project also covered ways to send data to the backend ERP System to implement full end
to end implementation. HANA Cloud Connector was used to connect SAP HANA Cloud Platform
(Having IOT Table) to S4 HANA (Latest ECC Business suite, used for various Business Transaction). Use
case could be to trigger a Business Application Programming Interface (BAPI) and perform certain
transaction like creating purchase order or creating service incident.
Tessel platform with climate modules tells about one of the application of IoT, application that can be
used for operations maintenance within a plant. Using the knowledge of Business processes in Plant,
Plant maintenance notification seems to be the ideal transaction to trigger based on climate sensor
data. In order to create such transactions in backend system, connection was first needed to be
established between backend S4 and SAP CP System.
S4 HANA has various options for deployment. Three most common
1) S4 on the cloud, where its sold as infrastructure as a service. Business pays for services that are
used.
2) S4 on premise is most common choice for huge data volumes where customization is also
required and not standard solution is not enough.
3) S4 HANA on-premise in Amazon Cloud is another choice that are used for test environment and
for development without having huge data bottlenecks.
Our S4 HANA deployment is the third one. Nevertheless, since customers can have various other
possibilities we had to search for all best solutions possible.
a) For S4 HANA Cloud edition, replicating data is easier, as we dont need to install middleware.
Cloud connectivity from both ends take care of all security aspects and tunnel is not needed to
be set up.
b) In case of S4 HANA on premise edition, we need to have HANA Cloud connector (which is
nothing but Process Integration, PI in cloud) that is installed on S4 HANA server and then SAP
HCP is connected via ODATA and HTTPS protocol using reverse proxy tunnel. With HANA cloud
connector RFC is also supported to connect backend ABAP Systems. This can be easily illustrated
in a diagram.

70 | P a g e
Figure 31 Layout of SAP HANA Cloud Connector

4.4 IoT Applications


Germany is the backbone of manufacturing industries within Europe, therefore there is a huge
demand for smart sensors that not only capture data but also have capabilities to send data over WIFI
interface. Usually manufacturing industries are concerned with variables such as Temperature,
Humidity and Pressure. These factors are monitored every hour by an operator and before IoT, most
sophisticated solution was to put a laser beam on sensors that are installed on pipes at height and
take reading based on an instrument. After taking readings, those are stored in a database manually.
Because of this current practice, there is a huge potential for IoT especially in Germany. Imagine a
power plant where all these readings are collected in a unified dashboard automatically every hour
or second. Operators will then be concentrating less on data gathering and more on changing these
constraints for optimum plant production.
The solution presented is more related to achieve operational success, and is rather an ad-hoc
solution to the problems or factors that can be encountered in real life manufacturing plant situation.
This however, is not the only application even if we are considering manufacturing sites only.
With accurate collection of data at predefined intervals or even event based intervals, and with SAP
CP providing machine learning and predictive analysis as its other services, bright future for predictive
maintenance using IoT along with the help of machine learning seems very near.
Our industries are not the only thing that can yield positive outcomes, instead all corporate sectors
can witness its extra ordinary application, and lets discuss another use case within corporate sectors.
Corporate Sectors usually have a person who overseeing re ordering office supplies like stationary,
coffee, milk and all these products. Imagine a sensor sending value in SAP Cloud platform when a
certain safety stock has been reached. And it doesnt only send value to SAP Cloud Platform but also
using streaming events send data to backend system via HANA Cloud connector and make a Purchase
order for vendor that is automatically delivered via email to the vendor. This will reduce effort by not
only optimizing business processes but will also create paper less environment, limiting waste usage.

71 | P a g e
Lets discuss other use case in warehouse management. IoT also has the potential to change
Warehouse management, provided we configure sensor to count specific items and send data if safety
stock level is reached, after receiving the data we can perform all sorts of activities that have been
discussed before.
IoT can also help in the last mile delivery concept for courier services, again by measuring different
parameters we can be sure to find most optimum route and have more control from the time package
has been processed till the time it reaches customers hand.
IoT and SAP has the potential to change the world we live in. With each passing day, its application
seems to increase.
There are variety of sensors in the market, and most of them are smart sensors. Its easy to imagine
these sensors helping measuring variables and making communication with them easier after
consolidating their data in a common database.
Applications are enormous, combination of IoT along with machine learning and predictive analysis
can open new horizons. IoT seems to be the future transactional data (that is monitored consistently
and is automated) whereas machine learning seems to be the future analytical solution that analyses
with minimal human aid. Future therefore is near as compared to what had been expected and its
applications are only limited to enterprise, but can also impact our daily life.

Figure 32: IoT Full Scale Application

IoT applications can be categorized under distinct categories including Machine to Machine
communication (M2M). Business to Business Communication (B2B), Business to Consumer
communication (B2C) and even Consumer to Consumer Communication (C2C). Possibilities are
endless, and its just a matter of implementation to bring the next revolution.

72 | P a g e
Applications are not only limited to services sector, manufacturing industries and/or corporate offices,
but also covers smart homes and smart cities. Image below depicts use cases with smart homes where
all electrical/electronic appliances are controlled and operated using a smartphone that sends and
receive control messages from these devices.

Smart cities is another huge concept that has IoT as the fundamental technology.

By 2020, 30% of smart cities ambient care applications related to, for example,
medical/healthcare/nursing care. Including proactive care will have introduced smart machines and
robotics in nursing care and medical facilities.36

Cities have a way to go before they can be considered geniuses. But theyre getting smart pretty
fast.37 CIOs are concentrating more and more on smart cities, and their focus is full automation.
Government agencies also wish to have such control which could allow them easy and efficient
governance. Citizen will be sharing information like their medical record, transport route, activities
and all such details via sensors that can aid governance. This is a full fledge topic on its own, and with
successful completion of prototype, Aequitas AG has decided to have one more thesis topic related
to smart cities that utilize efforts conducted in this thesis.

36
Quoted from: (Gartner, 2017)
37
Quoted from: (Totty, 2017)

73 | P a g e
4.4.1 SAP Leonardo
At SAP's Sapphire Now conference in Orlando, CEO Bill McDermott unveiled a newer Leonardo that
integrates machine learning, IoT, analytics, and blockchain.38

SAP is in the midst of a step-by-step platform revamp for a new generation of enterprise
businesses. At Mobile World Congress in February, the company rebranded its Platform-as-a-Service
(PaaS) offering as "SAP Cloud Platform" with a host of new tools and services Opens a New
Window.. Today, at the company's Sapphire Now conference in Orlando, SAP rolled out new
applications and services around blockchain, the Internet of Things (IoT), and machine
learning Opens a New Window.(ML).39

In the broader context of digital innovation, it quickly becomes clear that topics like the Internet of
Things, machine learning, blockchain, analytics, artificial intelligence, and Big Data often need to be
viewed in combination: This is the key to creating a framework for harnessing the latest digital
breakthroughs. As well as technologies, services, and applications, the SAP Leonardo portfolio
includes design thinking methodologies, data intelligence tools, benchmarking, and more. And to
speed up time to value for customers, SAP offers SAP Leonardo accelerator packages that are
tailored to specific industries and core functions, such as IoT.

There is a distinction here between ready-made applications powered by SAP Leonardo (like SAP
Service Ticketing), and the micro services and APIs (like the SAP Streaming Analytics micro service)
that run on SAP Cloud Platform to help customers and partners integrate SAP Leonardo capabilities
into their own applications. The SAP Streaming Analytics micro service analyses incoming data
streams and responds individually to them. SAP Service Ticketing powered by SAP Leonardo, uses
machine learning capabilities to analyze incoming service tickets by content and to forward them to
the correct processing agent automatically.

The SAP Leonardo Centers form a global network of interconnected locations designed to serve as
points of contact for established companies and startups seeking inspiration for digitalization projects
and collaborative innovation. Initial prototypes and pilots can be created here as part of the SAP
Leonardo accelerators. SAP Leonardo Centers are already operating in New York and Paris; further
centers in So Leopoldo, Brazil, and Bangalore, India are at the planning stage.

SAP has stepped ahead of the long battle between best ERP giants with its Leonardo offering.
Leonardo is an umbrella of solution consisting of software and micro services that enable customers
to leverage future-facing technologies like the Internet of Things, machine learning, block chain,
analytics, and Big Data. This is just like SAP S4 HANA, as S4 HANA provides optimized integrated
business processes in one suite, Leonardo provides future facing technologies under one umbrella
and has an objective of minimizing app development time frame to six to eight weeks. As shown in
screenshot below.

38
Quoted from: (Tech Republic, 2017)

39
Quoted from: (Fox Business, 2017)

74 | P a g e
Figure 33 SAP Leonardo40

40
Image copied from: https://blogs.sap.com/2017/08/12/sap-leonardo-concept/

75 | P a g e
5. Conclusion & Recommendation
Requirement Analysis is a crucial part of any project, and IoT is no different. Before the start of the
project most important milestone is to make sure what has to be monitored and acted upon. What
are the variables that can impact process? Based on these models a device has to be selected. Then
again that is a huge topic of discussion because of the vast variety of products available. Some of the
factors that can help us in deciding which one to go with are:
1. Cost: Sensors are generally cheap, even smart sensors. But in any real-life project amount of
sensors required are huge. Industrial plants on average have around 1000 sensors, and therefore
the investment cannot be ignored.
2. Ease of use and development: Some devices available in market are comparatively easier to use
and develop. For e.g. Tessel is built on JavaScript which is widely used with HTML in web
development. Finding resources who can program in JavaScript would be easy task, and
therefore such platforms will always be preferred in comparison to others that uses not a well-
known language.

3. Support provided: With any product, support provided by the company selling it matters. It
matters even more when clients are buying at such mass level, so a company that goes an extra
step to ensure its customer satisfaction can also have an upper hand in selling its sensors.

4. Precision of data: IoT is heavily dependent on the precision of data, normally devices present in
market tell about its precision with a certain degree of uncertainty. This value could be used as
a rough value to make sure that measured quantity can have limited amount of uncertainty
without changing outcomes drastically.

5. Protocols used to transfer data: Protocols to transfer data is also a factor, since SAP accepts few
formats, care should be taken to trigger APIs from amongst those fixed formats.

6. Electronics/electrical knowledge dependencies: there are devices in market that comes as


complete solution for eg. Tessel where as there are other devices that needs to be set up that
required Electronics Knowledge. Normally IT Specialist has limited knowledge in such areas, and
therefore external resources are involved which increases stake of the project and has higher
risk of project failing.
For the specific use case as in Thesis topic, Tessel device is highly recommended because of its
simplicity, ever growing module list and open source platform that means an electronic engineer can
independently also develop a sensor which can be used with Tessel Platform.
Now that device has been selected, OData creation is another challenge. While Creating Odata service
from XS Engine within SAP CP, care should be taken on the field that has to set as the key field. Since
metadata of IoT table is automatically generated, and since sensor data can be constant in two
records, timestamp usually would be a better option to set as a key. But while using timestamp as
key, care should be taken when designing UI5 app and timestamp string should be converted to
proper UTC string that gives correct output. Because key fields are usually utilized in navigating from

76 | P a g e
one view to another, fields therefore have to be converted appropriately, for navigation to other view
to work.
Usually creating OData service over a column view which is the result of stored procedure is a better
option as it gives more control related to data selection that is displayed on the UI5 app, we can always
filter out data using where and group by clause in SQL statements and our front end is not over
burdened with huge record set.
Similarly, when creating OData service from SAP backend system, care needs to be taken while
choosing navigation property and key fields. It is possible in OData to have referential constraint on a
field other than the key field and this flexibility should be decided wisely.
In our Case Sensor dataset entity had timestamp as the key field but referential constraint in
navigation property was based on notification number.
UI5 app are based on JavaScript and XML code. Therefore, before starting, one should not only know
the syntax of these languages but also its practical use and all concepts associated with them.
At the end, our end architecture looks what is depicted in the picture. From Devices, we have data in
Cloud platform, on which UI5 app is made, that consumes IoT data and backend transaction creation
using multiple OData service. By such consumption, backend is synced with OData creation.
Figure 34: Layout of IoT service

41

41
Image copied from https://blogs.sap.com/2017/07/31/iot-4.0-on-leonardo-for-next-gen-business/

77 | P a g e
Executive Summary
Potential of Internet of Things has been predicted by several renowned magazines including Gartners,
Forbes and Business Insider. IoT has the potential to change business processes in all industries, and
therefore objective of the thesis was to bring theory to practical use and check feasibility of such IoT
solutions for industries. Objective also covered, budgeting and time to realization factor so that future
clients can be given a comprehensive overview even before the start of the project. After illustrating
the objective, problem statements and research methodology were stated to clearly identify
challenges and approaches to solve them.

Having a clear aim in mind, chapter 2 discussed theoretical concept. At the start, fundamentals related
to IoT were covered spanning over three important topics including;

1. IoT Communication Models


2. Smart Devices
3. IoT Cloud Platform

Keeping use case in mind, different hardwares and software components were selected after
presenting reasoning of each selection. It was then concluded that Tessel device along with climate
module would be used as a smart device and SAP Cloud Platform along with HANA Cloud Connector
and SAP S4 on premise edition will be used to achieve full end to end integration.

Process flow would be as follows;

1. Climate module installed on Tessel device would send data to cloud platform using program
written in node.js and pushed on the device.
2. Selected data from SAP Cloud platform will be presented in a UI5 app using OData source created
in XS Engine.
3. UI5 app would have two views, first view would have two controls.
4. One control for displaying daily averages in form of graph, whereas the control below it will show
individual records. User would have an option to click on these records.
5. When a user clicks on these record, display would be re-routed to the second view that in turn will
have data from two OData sources.
6. First OData source would be like that consumed in first view, instead it would be focusing on the
individual clicked record, and second OData source would be from SAP S4 backend system.
7. OData source from backend system is responsible registering new notifications along with
individual and specific sensor data records, and responsible for getting these records.
8. If notification for a record is not generated, user would have an option on the second view to
create a new notification using the button given.

Process flow can best be illustrated in a technical architecture diagram that also provides
communication protocol used during various stages of integrated end to end architecture. For further
details, regarding end to end process please refer to section 3.5.

78 | P a g e
As illustrated in the figure, Sensor data from Tessel device is fetched using IoT inbuilt service APIs.
Data is exchanged over WIFI or USB Connection, and it is stored in HANA database (Which has been
binded to the service). HANA Database procedures and SQL scripts are then used to fetch selected
data, and database procedure is then called using OData service created with the help of XS Engine.

Purpose of this rapid prototyping was to bring IoT related skills in house, and to explore vast options
of use cases that were possible. Several research questions related to smart sensors, IoT cloud
Platforms, backend integration options were answered during the project.

Benefit of the project was focused on developing skill-set in such new areas of technology and to make
sure that rapid prototyping is possible and that it can be furnished upon client request. Furthermore,
demonstration with one sensor can be easily scaled up too many sensors as SAP Cloud Platform, SAP
HCC and backend HANA Systems are fully capable of it. This in turn is the added advantage for the
concept of smart cities that Aequitas AG will start to work on soon.

79 | P a g e
References
Ahrens, D. (2014, 10 July). Making Sense of The Internet of Things. STARS.

Business Insider Intelligence. (2016). Internet of things Ecosystem Research Report.

Colucci, P. (2015, September 29). SAP Official Blogs. Retrieved from How does SAP UI5 work:
https://blogs.sap.com/2015/09/29/sapui5-for-dummies-what-is-it-and-how-does-it-work/

Dr. Ovidiu Vermsen & Dr. Peter Friess. (2014). Internet of Things - From Research and Innovation to
Market Development. River Publishers, 18-19.

Dr. Shawn DuBravac, F. b. (2015). Internet of Things: Evolution or Revolution. AIT White paper, p. 3.

Dr. Shawn DuBravac, F. b. (2015). Internet of Things: Evolution or Revolution. AIT White Paper, p. 6.

Fox Business. (2017, May 16). SAP Debuts Blockchain, IoT, Machine Learning Tech at Sapphire Now.
Retrieved from Fox business features: http://www.foxbusiness.com/features/2017/05/16/sap-
debuts-blockchain-iot-machine-learning-tech-at-sapphire-now.html

Gartner. (2017, March 27). Smart Cities Look to the Future. Retrieved from Smarter with Gartner:
http://www.gartner.com/smarterwithgartner/smart-cities-look-to-the-future/

Gartners. (2016). Top Strategic Prediction for 2017 and Beyond. In Surviving the storm of winds of Digital
Disruption (p. 2).

GSMA . (2014, July). Executive Summary. In GSMA, Understanding the Internet of Things (p. 1). GSMA
Associated.

Hans Jrg Stotz, h. o. (2017, January 13). SAP's IoT Roadmap.

Hunter, L. (2017, June 17). Orielly.com. Retrieved from The smartest way to program smart things:
Node.js: https://www.oreilly.com/ideas/the-smartest-way-to-program-smart-things-node-js

John A. Stankovic, L. F. (2014). Research Directions for the Internet of Things. IEEE, 2.

Karen Rose, S. E. (2015). The Internet of things an Overview. 18-22.

Kien, M. A. (2014, May 11-14). Security and Privacy in the Internet of Things: Current Status and Open
Issues. IEEE, p. 4.

Kumar, J. S. (2014, March). A Survey on Internet of Things: Security and Privacy Issues. Department of
Computer Engineering, SVNIT, p. 21.

Magazine, IoT: Forbes. (2013, May 13). Forbes Magazine. Retrieved from Forbes :
https://www.forbes.com/sites/jacobmorgan/2014/05/13/simple-explanation-internet-things-
that-anyone-can-understand/#9ebf8411d091

Olga Kharif. (2016, October 24). The Internet of things. Retrieved from Bloomberg Quick Take:
https://www.bloomberg.com/quicktake/internet-things

80 | P a g e
Oracle. (2015). Oracle Internet of things Cloud Service. Retrieved from Oracle Help Center:
https://docs.oracle.com/en/cloud/paas/iot-cloud/iotgs/oracle-iot-cloud-service-main-features-
overview.html

Ray, P. P. (2017). A Survey of IoT Cloud Platforms. Future Computing and Informatics Journal, 6-7.

Ray, P. P. (2017). A Survey of IoT Cloud Platforms. Future Computing and Informatics Journal, 4.

SAP. (2017). Cloud Platform. Retrieved from Interactive Architecture:


https://cloudplatform.sap.com/developers/interactive-architecture.html

SAP AG (IoT Documentation). (2017). SAP Help Portal. Retrieved from SAP Cloud Platform Internet of
Things for the NEO Enviornement:
https://help.hana.ondemand.com/iot/frameset.htm?4ab3521d055f41e9bce8837d4abbc09d.ht
ml

SAP AG. (2015). SAP HANA Implementation & Modeling. In S. AG, HA300 (pp. 236-285).

SAP AG. (2015). SAP HANA Introduction. In S. AG, HA100 (pp. 71-91).

SAP AG. (2015). SAP UI5 Developer Guide. In S. AG, SAP UI5 Developer Guide for SAP HANA (pp. 1-244).

SAP AG. (2016). Features of Cloud Foundry and Neo. In SAP Cloud Platform CP100 (p. 56). SAP.

SAP AG. (2017). SAP Cloud platform Build. Retrieved from Create enterprise apps your users love with
SAP Cloud Platform Build: https://cloudplatform.sap.com/capabilities/ux/build.html

SAP AG. (2017). SAP Cloud Platform Training Manual. In o. SAP, SAP CP Training Week 2 Unit 2:
Applications (p. 3). SAP.

SAP Cloud Platform. (2017). SAP Cloud Platform Overview and Details. Retrieved from Overview:
https://www.sap.com/products/cloud-platform.html

SAP HANA Tutorial. (2015). SAP HANA Tutorial. Retrieved from SAP HANA Tutorial:
http://saphanatutorial.com/sap-hana-cloud-platform-overview/

SAS The power to know. (2017). The Internet of Things: Marketing Opportunities & Challenges. White
Papers (Technology Research for Business Professional), 1.

Symantec . (2015). Overview. In M. B. Wuesst, Insecurity in Internet of Things (p. 3). Symatec.

Tech Republic. (2017, May 16). SAP Leonardo embraces machine learning and IoT to prepare for the
future of digital enterprise. Retrieved from Tech Republic Innovation:
http://www.techrepublic.com/article/sap-leonardo-embraces-machine-learning-and-iot-to-
prepare-for-the-future-of-digital-enterprise/

Tessel. (2015). Dragon Innovation. Retrieved from Tessel:


https://www.dragoninnovation.com/projects/22-tessel

Totty, M. (2017). The Rise of the Smart City. The Wall Street Journal, 1.

81 | P a g e
Table of Figures
Figure 1: Outline of Thesis Document .......................................................................................................... 6
Figure 2: IoT Statistics ................................................................................................................................... 7
Figure 3: Research Methodology Steps ...................................................................................................... 11
Figure 4:Progress Report as presented to Supervisor ................................................................................ 12
Figure 5: Project Timeline ........................................................................................................................... 13
Figure 6: Device to Device Communication Model..................................................................................... 16
Figure 7: Device to Cloud Communication Model ...................................................................................... 17
Figure 8: Device to Gateway Communication Model ................................................................................. 17
Figure 9: Device to Back-End Communication Model ................................................................................ 18
Figure 10: IoT Solution Architecture by Oracle ........................................................................................... 20
Figure 11: SAP CP Components & Services ................................................................................................ 21
Figure 12: Comparison of Several IoT Cloud Platforms .............................................................................. 22
Figure 13: End-to-End Architecture ............................................................................................................ 24
Figure 14: features of SAP Cloud Platform ................................................................................................. 25
Figure 15: Deployment options of SAP Cloud Platform .............................................................................. 27
Figure 16: SAP Cloud Platform Architecture ............................................................................................... 28
Figure 17: Comparison of Neo and Cloud Foundry .................................................................................... 29
Figure 18: Architecture of IoT Service in SAP CP......................................................................................... 30
Figure 19: Architecture of SAP HANA Database ......................................................................................... 31
Figure 20: Architecture of UI5 Apps............................................................................................................ 34
Figure 21: Ui5 Apps look and feel ............................................................................................................... 34
Figure 22: Cost Associated with front end development in various stages................................................ 36
Figure 23: Architectural diagram of SAP Hana Cloud Connector and Backend System ............................. 39
Figure 24: Architecture of RDMS Service for IoT in SAP Cloud Platform .................................................... 45
Figure 25: Tessel sending reading ............................................................................................................... 65
Figure 26: SAP UI5 app table view .............................................................................................................. 65
Figure 27: SAP UI5 App Details View with two before creating notification .............................................. 66
Figure 28: SAP UI5 app details view after creating notification ................................................................. 66
Figure 29: view of Ztable with Notification and Sensor Data ..................................................................... 67
Figure 30: Tcode IW21 with notification created from SAP UI5 App ......................................................... 67
Figure 31 Layout of SAP HANA Cloud Connector ........................................................................................ 71
Figure 32: IoT Full Scale Application .......................................................................................................... 72
Figure 33 SAP Leonardo .............................................................................................................................. 75
Figure 34: Layout of IoT service .................................................................................................................. 77

82 | P a g e
List of Abbreviations Used
SAP Systems Applications and Products.

SAP HANA High Performance Analytical Appliance.

UI5 Client UI based on HTML5, CSS and Java Script.

HTML Hyper Text Markup Language.

XML Extensible Markup Language.

PI Process Integration.

SAP HCC SAP HANA Cloud Connector.

SAP HCP HANA Cloud Platform (Previous name of SAP Cloud Platform).

SAP CP SAP Cloud Platform.

IoT Internet of Things.

OData Open Data Protocol.

XS Engine Extended Application Service Engine.

SQL Scipt Collection of extensions of SQL statements that are used specifically with HANA.

DB Database

Tx Code Transaction code (Commonly known as Tcode within SAP System)

IW21 Transaction Code in SAP ECC System for creating Plant maintenance Notification

Ztable Customized table created that is not part of the standard SAP Solution

JSON Java Script Object Notation

ERP Enterprise Resource Planning System

ECC Enterprise Central Component

API Application Programming Interface

REST Representational State Transfer

SSL Secure Sockets Layer

83 | P a g e

Вам также может понравиться