Development of the Cloud Service Modification Method for Integration with Enterprise Information Systems

The article reviewed the main types ofenterprise information systems, which integration can be performed with. It also has been concluded that the type of system does notplay a significant role inintegration, but what is more important is the ability to work with the system through a web browser, or a built-in web browser, which will allow the embedding of a user’s perception of an Internet communication cloud service. Following this, there is an aggregation of the experience of the integration ofserviceSkorozvon and information system, Zendesk, in terms of the functional integration and the data integration, whereby the method for modification of the Internet communication cloud service is determining for its further ability to integrate with enterprise information systems.

Biotechnology and communication technologies are leading areas of research in recent decades.For example, in the article 1 it is said that until 2025, information and communication technologies (ICT), along with biotechnology and nanotechnology will be the leading technology, up to 2025.Similarly, in the article 2 it is said that VoIP (one of the components of ICT) and biotechnology are among the three of the most promising technologies until2019.It is noted that since ICT has appeared it penetrated all spheres of human activity, and had a tremendous influence on the development of these areas.In this article we discuss the integration of a cloud communication service with enterprise information systems.Cloud-based Internet communications are a model of advanced VoIP technologies and the integration of the service into enterprise information systems can solve the problem of communication with consumers, which as shown in 3 , is one of the major problems of the biotechnology sector enterprises.

Problems
There is a large list of various types ofenterprise information systems, which may require the integration of communication capabilities.At the same time there is a cloud communication service-Skorozvon 4 , which has communications capabilities, and the service was integrated into the Service Desk system Zendesk 5 .In this case it is possible to synthesize best practice for integration with information systems of other types.
To solve this problem it is necessary to cope with the following problems: 1)  Determine the types of enterprise information systems, which may require integration.This task is necessary to determine the types of information systems which are used in companies of the biotechnology industry, which may require integration.

2)
Determine the use cases of users' and cloud communication service interaction in the context of integration with the information system.These use cases will allow determining the functionality of cloud-based Internet communications, which mustbe implemented in carrying out the integration.

3)
Consider the experience of service integrationSkorozvon intoZendesk, and in terms of generalization of experience to develop a method that will allow integration of cloud services into enterprise information systems.

Types of enterprise information systems
The main classes of information systems which are used in enterprise environments: ERP (Enterprise Resource Planning) -a strategy for the integrated enterprise management 6 , oriented on the concept of resources (labor, financial assets and liabilities), is based on the specialized software that provides a common data model and processes for all areas of activity.Communications in this case are important becauseallows to optimize the company's performance in terms of employee engagement, both among themselves and with external partners.
CRM (Customer Relations Management) -software for organizations 7 , is intended to ensure consistent management of the relationship between the organization and customers.The main objectives are: improving and optimizing sales, improve customer service by storing information about customers and the history of relations with them, the establishment of business processes and subsequent analysis of the results, in particular the sales funnel.For this class of information systems communications are one of the priorities that determine the quality of relationships with customers.
ServiceDesk -systems 8 to ensure the processing of customer service requests.For this class of information systems communications are one of the priorities that determine the quality of relationships with customers.
HRM (Human Rkesource Management)a class of software 9 focused on the automation of work with the staff of a company, in particular the optimization of the work processes of the personnel, as well as various administrative tasks.Human resource management is an integral part of the quality management systems of the organization.Communications in this case are also important because will ensure quality interaction with the staff of the company.WMS (Warehouse Management System) -software to optimize warehouse management as well as providing the daily performance of all warehouse operations 10 .EAM (Enterprise Asset Management)software to optimize asset management companies 11 .A purpose of use -is reducing the cost of maintenance, repair and logistics or improving the operating parameters of the equipment.
As we can see, all of these types of information systems affect aspects which are present in the enterprises of the biotechnology industry.Basically, all of these types of information are similar to each other because offer similar functionality for handling data assembly.At the same time, an important criterion is the model of software distribution.Currently, there are two basic models of software distribution: a model lease (SaaS), the traditional model with the installation of the facilities of the companies.An access to the first model is carried out mainly through the thinclients and a web browser, while the second model is through the thick-clients.The originalcloud communication service available on the rental model, so it is being accessed by a thin-client and web browser.It is worth noting that, for example, CRM and Service Desk are mainly spread by the rental model and ERP often under the traditional scheme.Although,the access is often performedwith a thin-client in a web-browser.
Definition of use cases for users'and cloud communication service interaction in the context of integration with the information system Consider the performing ofuse cases in the relation to the integration of the service Skorozvon into theService Desk System «Zendesk».«Zendesk» is a typical representative of information systems, which can be integrated, so the interworking scenario can be extrapolated to other information systems.Registration a.
When you register a user account is automatically created in the service.b.
In the service, automatically setup tariff plan, the initial amount for testing, and some default number (which will be replaced as a call back when making calls).c.
The user who registered first is the creator in the service account.d.
The registration oflater users within Zendesk account is carried out on a previously created account in the service.e.
All users, except the creator, are established the role in the service, which corresponds to the role in the system of «Zendesk»: administrator (Zendesk) -Administrator (cloud communication service); agent (Zendesk) -Manager (cloud communication service).f.
If you attempt to register when there is a limit of users according to tariff, the user gets a refusal to register, as well as an error message.g.
At each successful registration via the API the creator receives an informational e-mail.

Authorization
a.
When you authorize to the system «Zendesk» seamlessly authorization in the system occurs.b.
Simultaneous authorization is possible in the system «Zendesk», the serviceSkorozvon, the mobile application, etc. c.
Outgoing calls are available from any system and service.d.
An incoming call will be directed to where the last registration was made.

Making outgoing calls
a.
Making outgoing calls is done from ticket representation by pressing the «Call»button, in case that the initiator of the ticket provided a phone number.b.
When making outgoing calls standard checks are carried out and the relevant notifications are brought up: the access permission to the microphone is not set; insufficient balance; not confirmed phone number; exceeding the limit of users; exceeding the limit of contacts; exceeding the limit of scripts.If at least one check is not passed, it is impossible to make outgoing call.

Receiving incoming calls are similar to the script of makinga call Record the information in the cloud communication service
a.
All information about the calls made through the cloud communication service widget(including script and the result of the conversation) is recorded in the service.Conversation audio recordsare also available.b.
If you call from a third-party service (in this case it is Zendesk) and information about a contact will be obtained, the new contact is created with the obtained data.c.
If you have contact with the same name, the information about the call is inscribed in it.d.
If names are different, the call information is recorded into contact with the found telephone number and name of the contact is replaced with what was received from the external service.

Record the information in third-party services
a.
Saving parameters of a call.b.
Providing an access to a conversation audio record.c.
Creating tickets during an incoming call.
The developed use cases allow to makeconclusions that the findingsmade in respect to theSkorozvon, can be used for any Internet communication services.At the same time, they are specific to this category of service and cannot be used forother types of cloud services.In this case, it is necessaryto perform a development stage of use cases separately for other kinds of services.
The study of functional integration and data integration of cloud communication service with enterprise information systems of various types The development of the method involves synthesis of the obtained results and the decisions made, in the form of a description of the sequence of actions or the decisions made that will ensure a repeat of earlier achievements.Developing of the method shouldtake into account the following requirements 12 : A goal of the method is that the cloud service, which was designed in accordance with this method,will be prepared for integration with other information systems.For producingmethod will be used integration experience of a service«Skorozvon»with enterprise information system «Zendesk».This experience of integration is rather general, but there are features that will be generalized within the article.
To ensure the integration the following cloud service modificationswere required:

•
To define user'suse cases of service in the context of integration, i.e. define the functions of service that will be used after integration with enterprise information systems; • To define the data in the context of the previously selected use cases to identify representationsthat need to be developed for the cloud service and then integrated into the enterprise information system; • To develop a representationthat would represent thecloud communication service functions and data access in the enterprise information system; • To extend the functionality of the cloud communication service to support authorization by OAuth 13 , which is the traditional protocol for accessing data of one system from the other one; • To uniform the transmitted data into the common format; • To determine the relations of users' roles of the information systemand the cloud communication service, for correct display of the user rights of one system to users rights of another system; • Registerthe cloud communication service in the information system.
The above points are not tied to integration with Service Desk class of information system.The only limitation is that access to the system is done via a Web browser.
Consider next functional integration and data integration, which as a result will allow generalization of the experience for different types of information systems.

The study of functional integration
According to thecloud communication servicethe basic functionality, which the serviceincurs, is making and receiving calls.This feature is meant by the two main steps: • direct transmission and reception of audio (streaming data) by the web browser of the user; • data session management.
To perform this integration, access to the enterprise information system should be carried out with facilities that support the work of the streaming data equipment(for example headset).Nowadays web browser is the only softwarethat every user of information systems hasaccess.It agrees with the general trend, that the web browser becomes a single entry point for many enterprise information systems.Thus, the first criterion, which is presented for the functional integration of cloudcommunicationservice with enterprise information systems is to use a web browser to work with the enterprise information system.
In terms ofdata session management, Web browser also has a number of key features that allows you to perform all the necessary tasks for the call setup, call termination, call holding: • usage of the protocol WebSocket (RFC 6455 standard) -the protocol was designed for robust bi-directional communication between the Web browser and the server.To manage the protocol it is required the useweb browser JavaScript API; • usage of the Push technology, which allows you to transfer data from a server in a web browser (as opposed to the traditional model of HTTP, which involves work in the request-response scheme), the use of JavaScript API is also required to manage the technology, integrated into a web browser.
Both methods can be successfully applied, in this case there is a need to conceal the use of one or another approach, for loose coupling for further modification of the widget without serious consequences.For interaction between the information systemand the widget JavaScript API is used, this approach can hide the implementation of widget functionality.Thus, functional integration diagram is shown in Figure 1.Consider the possibility of replacing the cloud communication service widget with arbitrary cloud service widget.Only the part, which is related to the functionality of Web browser used by widget, is the subject to a change: the usage of sound transmission will disappear from the web browser, but as for the rest, a picture will not be changed.The same widget and information system interaction will be carried out through JavaScript API, which will use some functionality of a web browser to perform the functions provided by the cloud service.
Consider the special features that are associated with the enterprise information system used while integrating.Except for the fact that the system provides access via a web browser, no additional features are present.
It is also worth noting the trend of recent times, which is concerned to the fact that in traditional desktop applications functionality of the Web browser is added.To implement this interaction there are two products: • incorporation of Internet Explorer using the COM object 14 ; • usage of Chrome Embedded Framework 15 .
Using suchmethod modifies the general scheme shown in Figure 3.1, but still allows you to perform functional integration, see Fig. 2.
The requirement for the necessary work of anenterprise information system in a web browser can be expanded and presented in the form: it is required to the enterprise information system, which integrates the cloud service, to support access from a web browser, or have a builtin Web browser.
There are no other characteristics that should be considered in the development of integration solutions, Service Desk-systems, CRMsystem, accounting systems.

The Study of the data integration
Based on the use cases, apart from the functional integration, thedata integrationis also important, in particular: • save the results of a call from the Internet communication service in the enterprise information system; • the delivery of the phone number when making a call from the enterprise information system in the cloud communication service.
To implement the data integration is necessary to solve the following questions: • the solution of data transformation; • the definition of data exchange format.
The transformation of data is one of the key tasks in data integration.This problem occurs because of the heterogeneity of systems.This heterogeneity is a consequence of the difference in the consumed and transmitted data.In this case, data transformation can be performed in several ways 16   The normalization of transmitted data.This method consists of the data which is transmitted from different systems are converted to some general format.This method is intended for use in cases of integration of a large number of diverse applications that use different data transmission formats.Unlike the method ofContent Conversion it is that in this case means that the application data is arrived from a plurality of systems.For example, there is the integration with the mail system, the letters which come in a variety of formats.

•
The usage of the canonical data model.This method is similar to the normalization of the data, but the difference is that the normalization is used for transformation formats; the canonical data model is designed to transform the model itself.This method is designed to reduce the dependencies between applications and allows performing the integration with pre-unknown applications.When using this method in highperformance systems the question arises, as for the purpose of this method is necessary to perform a double conversion: application data model of the sender is converted into a canonical data model, and the canonical data model -a model in the application data of the recipient.
To address the issue of performance enhancing mechanisms for load-balancing transformations are used, involved in the parallel converter messages.
In current case of integration, there is a need for content conversion and content filtering, as well as the normalization of transmitted data.This is because integration is performed between a pair of applications (cloud communication service and enterprise information system), thus, the need for other types of data transformations not any longer exists.Data conversion is performed at the stage of working with the cloud communication service JavaScript API.
Taken into account that the reaction is carried out using of JavaScript, the best format for data exchange are JavaScript objects, which will be transferred between a cloud service widget and enterprise information systems.
Data exchange is based on standard technologies.According to data integration of Service Desk-systems, CRM-system and accounting systems do not have any features that need to be taken into account in the development of integration solutions.
Development of the method of functional integration and data integration of cloud communication services and enterprise information systems Based on consideration of the features of functional integration and data integration of cloud communication service and enterprise information systems we come to the possibility to formulate a generalized method of integration which allows you to integrate cloud services into some information system.Requirements • in the enterprise information system must be installed Web browser, or access to this system should be carried out from a web browser; • OAuth technology must be supported in the cloud service.With direct integration there are the following tasks: • Definition of a user 's and a service's interactionuse cases in the context of integration.• Definition of data in the context of the previously selected use cases.• Development of cloud service representations for widget,which would provide service functions and data access in enterprise information system.• Determining the relationsbetween user's roles in the cloud service and theenterprise information system, for correct mapping of the users' rights in theone system to the users' rights in the other system.

•
Incorporating a widget into enterprise information systems.
The presented method is quite compact and can be used for other services, and also for the integration of cloud communication service with other information systems.