Information processing system, information processing apparatus, information processing method, and program

文档序号:1926643 发布日期:2021-12-03 浏览:34次 中文

阅读说明:本技术 信息处理系统、信息处理装置、信息处理方法及程序 (Information processing system, information processing apparatus, information processing method, and program ) 是由 川上嘉章 雄谷淳 于 2020-04-23 设计创作,主要内容包括:课题是更迅速且灵活地构建信息处理系统中的功能。解决手段是提供一种与云系统协作提供服务的信息处理系统,其具备:元素积累单元,其积累构成用于在云系统上提供服务的页面的元素;页面数据生成单元,其利用在元素积累单元中积累的元素来生成用于新的服务的页面;以及元素程序执行单元,其执行与页面中包含的元素相关联的程序。(The object is to construct functions in an information processing system more quickly and flexibly. The solution is to provide an information processing system for providing a service in cooperation with a cloud system, the information processing system including: an element accumulation unit that accumulates elements constituting a page for providing a service on the cloud system; a page data generation unit that generates a page for a new service using the elements accumulated in the element accumulation unit; and an element program execution unit that executes a program associated with an element contained in the page.)

1. An information processing system that provides a service in cooperation with a cloud system, comprising:

an element accumulation unit that accumulates elements constituting a page for providing a service on the cloud system;

a page data generation unit that generates a page for a new service using the elements accumulated in the element accumulation unit; and

an element program execution unit that executes a program associated with the element included in the page.

2. The information processing system according to claim 1, comprising:

a service flow design unit that provides a user interface capable of designing a flow of the service by configuring a plurality of blocks representing functions constituting the service;

a program code generation unit that generates a program code indicating a flow of the service with reference to a program corresponding to the block constituting the flow of the designed service; and

a service providing unit that executes a flow of the service based on an operation on a page for utilizing the flow of the service designed by the service flow designing unit and the program code generated by the program code generating unit.

3. The information processing system according to claim 1 or 2,

an element generation unit for generating a new element is provided,

the element generated by the element generation unit is also accumulated in the element accumulation unit.

4. The information processing system according to any one of claims 1 to 3,

the disclosed device is provided with:

a program accumulation unit that accumulates the program for the service corresponding to the element; and

a program generating unit that generates the new program for the service corresponding to the element using the program accumulated in the program accumulating unit,

the program accumulation unit also accumulates the program generated by the program generation unit.

5. The information processing system according to any one of claims 1 to 4,

the element may set parameters for implementing the service and define actions when browsing the page.

6. The information processing system according to any one of claims 1 to 5,

the program is a cloud-native program executed via an application programming interface in the cloud system.

7. The information processing system according to any one of claims 1 to 6, comprising:

a history data acquisition unit that acquires history data related to browsing of the page; and

a service suggesting unit that analyzes the history data acquired by the history data acquiring unit and proposes a suggestion related to a new service.

8. An information processing apparatus constituting an information processing system that provides a service in cooperation with a cloud system,

provided with a page data generation unit that generates a page for a new service using elements accumulated in an element accumulation unit that accumulates the elements constituting a page for providing a service on a cloud system,

a program associated with the element contained in the page is executed in the cloud system.

9. An information processing apparatus constituting an information processing system that provides a service in cooperation with a cloud system,

provided with an element accumulation unit that accumulates elements constituting a page for providing a service on a cloud system,

the elements accumulated in the element accumulation unit are used to generate a page for a new service,

a program associated with the element contained in the page is executed in the cloud system.

10. An information processing apparatus constituting an information processing system that provides a service in cooperation with a cloud system,

an element program execution unit is provided that executes a program associated with an element included in a page for a new service, the page being generated with the element accumulated in an element accumulation unit that accumulates the elements constituting a page for providing a service on a cloud system.

11. An information processing method executed in an information processing system that provides a service in cooperation with a cloud system, characterized by comprising:

an element accumulation step of accumulating elements constituting a page for providing a service on the cloud system;

a page data generation step of generating a page for a new service using the elements accumulated in the element accumulation step; and

an element program executing step of executing a program associated with the element contained in the page.

12. A program, characterized in that,

in a computer constituting an information processing system that provides a service in cooperation with a cloud system,

implementing a page data generation function of generating a page for a new service using elements accumulated in an element accumulation unit that accumulates the elements constituting a page for providing a service on a cloud system,

a program associated with the element contained in the page is executed in the cloud system.

13. A program, characterized in that,

in a computer constituting an information processing system that provides a service in cooperation with a cloud system,

an element accumulation function of accumulating elements constituting a page for providing a service on a cloud system is realized,

the elements accumulated by the element accumulation function are used to generate a page for a new service,

a program associated with the element contained in the page is executed in the cloud system.

14. An information processing apparatus characterized in that,

in a program constituting an information processing system that provides a service in cooperation with a cloud system,

an element program execution function of executing a program associated with an element contained in a page for a new service is realized, the page being generated with the element accumulated in an element accumulation unit that accumulates the elements constituting a page for providing a service on a cloud system.

Technical Field

The invention relates to an information processing system, an information processing apparatus, an information processing method, and a program.

Background

In recent years, progress in it (information technology) technology and speed of environmental change have been dramatically increased centering on cloud technology, and this trend is expected to be accelerated in the future.

Under such circumstances, IT is required to grasp and utilize the latest IT technology as soon as possible, to cope with business changes as soon as possible, and to contribute to various departments such as business departments.

Here, patent document 1 discloses a technique for supporting design change of an IT service system.

The technique described in patent document 1 seeks to automatically determine a design site that needs to be reconsidered within a framework for a change in quality requirements from a stakeholder (bookholder) that causes a cross-architecture effect.

Documents of the prior art

Patent document

Patent document 1: japanese patent laid-open publication No. 2019-015995

Disclosure of Invention

Problems to be solved by the invention

However, under the above circumstances, there is a demand for more rapid and flexible construction of functions in an information processing system, but the conventional technology has not reached this demand.

The invention aims to build functions in an information processing system more quickly and flexibly.

Means for solving the problems

In order to solve the above problem, an information processing system according to an embodiment of the present invention is characterized in that,

an information processing system that provides a service in cooperation with a cloud system, comprising: an element accumulation unit that accumulates elements constituting a page for providing a service on the cloud system; a page data generation unit that generates a page for a new service using the elements accumulated in the element accumulation unit; and an element program execution unit that executes a program associated with the element contained in the page.

Effects of the invention

According to the present invention, it is possible to construct functions in an information processing system more quickly and flexibly.

Drawings

Fig. 1 is a schematic diagram showing the overall system configuration of an information processing system 1 according to the present invention.

Fig. 2 is a schematic diagram showing a schematic functional configuration of the information processing system 1.

Fig. 3 is a diagram showing a hardware configuration of an information processing apparatus 800 constituting each apparatus.

Fig. 4 is a block diagram showing a functional configuration of the service development terminal 10.

Fig. 5 is a schematic diagram showing an example of a UI screen for displaying a list of programs for providing services stored in the service repository 522.

Fig. 6 is a block diagram showing a functional configuration of the widget development terminal 20.

Fig. 7 is a schematic diagram showing an example of a UI screen for displaying a list of widgets stored in the widget repository 621.

Fig. 8 is a diagram showing a relationship between widgets and contents of services corresponding to the widgets.

Fig. 9 is a diagram showing data defining the contents of a widget.

Fig. 10 is a block diagram showing a functional configuration of the user/manager terminal 30.

Fig. 11 is a schematic diagram showing an example of a UI screen showing a process of creating a page.

Fig. 12 is a block diagram showing a functional configuration of the end-user terminal 40.

Fig. 13 is a block diagram showing a functional configuration of the service providing server 50.

Fig. 14 is a block diagram showing a functional configuration of the component providing server 60.

Fig. 15 is a flowchart showing a flow of service development processing executed by the service development terminal 10.

Fig. 16 is a flowchart showing a flow of widget development processing executed by the widget development terminal 20.

Fig. 17 is a flowchart showing a flow of the page editing process executed by the user/manager terminal 30.

Fig. 18 is a flowchart showing the flow of the service utilization process executed by the end-user terminal 40.

Fig. 19 is a flowchart showing a flow of the component creation reception process executed by the component providing server 60.

Fig. 20 is a flowchart showing the flow of the page creation reception process executed by the component providing server 60.

Fig. 21 is a flowchart showing the flow of the page providing process executed by the service providing server 50.

Fig. 22 is a flowchart showing a flow of the service creation reception process executed by the service providing server 50.

Fig. 23 is a flowchart showing a flow of service reception processing executed by the service providing server 50.

Fig. 24 is a flowchart showing a flow of data analysis processing executed by the service providing server 50.

Fig. 25 is a schematic diagram showing an example of a user interface for composing a component to design a service flow.

Fig. 26 is a flowchart illustrating the flow of the page data drawing process performed by the end-user terminal 40.

Fig. 27 is a flowchart illustrating the flow of the service providing process performed by the service providing server 50.

Detailed Description

Hereinafter, embodiments of the present invention will be described with reference to the drawings.

[ Structure ]

[ System Structure ]

Fig. 1 is a schematic diagram showing the overall system configuration of an information processing system 1 according to the present invention.

The information processing system 1 is a system for providing services in cooperation with various cloud systems, and is constructed on the basis of a DevOps environment (system environment in which close cooperation is developed and utilized). In the information processing system 1, widgets as elements embedded in pages for providing services, service programs for realizing the actions of widgets, and the like are accumulated. Further, in the information processing system 1, the accumulated widgets or service programs can be reused to construct a page for providing a new service.

Therefore, when constructing a page for providing a new service, by selecting elements required for the service and embedding them in the page, the page for the required service can be simply and flexibly constructed.

That is, according to the information processing system 1 of the present embodiment, it is possible to construct functions in the information processing system more quickly and flexibly.

As shown in fig. 1, the information processing system 1 includes a service development terminal 10, a widget development terminal 20, an operator/manager terminal 30, an end user terminal 40, a service providing server 50, and a component providing server 60, and the information processing system 1 is configured to be capable of cooperating with cloud systems 70-1 to 70-n (n is a natural number). The service development terminal 10, the widget development terminal 20, the user/manager terminal 30, the end user terminal 40, the service providing server 50, the component providing server 60, and the cloud systems 70-1 to 70-n are configured to be communicable via the network 80.

In addition, in the information processing system 1 according to the present embodiment, a dynamic component and a static component are prepared as elements embedded in a page for providing a service. The dynamic component is an element of a page whose display content is changed by cooperating with the service providing server 50, and is, for example, a small program typified by a widget. The static component is various elements that do not correspond to the dynamic component, and is, for example, content (content) with fixed content or data of a medium. As an example of the data of the fixed content, an html (hypertext Markup language) file whose description content is fixed may be used. As an example of the data of the medium, still image, moving image, music, or title data can be used. Further, since the dynamic component and the static component are components arranged on the screen, they are collectively referred to as "screen components" as appropriate.

The service development terminal 10 is used by a developer who develops a program for providing a service corresponding to a widget. The service development terminal 10 develops a program for providing a corresponding service for a widget developed by the widget development terminal 20. In the present embodiment, the developed service program is accumulated in the service providing server 50, and when the service providing program is developed, the developed service program can be reused.

The widget development terminal 20 is used by a developer developing a widget, which becomes an element of a page for providing a service. The widget development terminal 20 develops a widget embedded in a page created by the user/manager terminal 30. In the present embodiment, developed widgets are accumulated in the component providing server 60, and the developed widgets can be reused when they are developed.

The user/manager terminal 30 is used by a creator (a user or a manager of a service) who creates a page for providing a service. In the present embodiment, elements (widgets, contents, media, and the like) constituting a service are accumulated in the component providing server 60, and the operator/manager terminal 30 selects the elements constituting the service and embeds the elements in a page to create a page for providing the service.

The end user terminal 40 is used by an end user, and when the end user selects a target page, data of the page is downloaded from the service providing server 50 and elements included in the page are displayed. At this time, when a widget is included in the page, the end-user terminal 40 accesses the service providing server 50 by executing the widget, acquires an execution result of the service corresponding to the widget, and displays the page.

The service providing server 50 includes a repository (a service development repository 521 described later) storing a program for providing a service developed by the service development terminal 10, a repository (a service repository 522 described later) storing a released program for providing a service, and a database (a history database 523 described later) storing history data acquired by providing a service. The service providing server 50 acquires a program for a service developed by the service development terminal 10 at predetermined time intervals (for example, every 1 minute), and stores the acquired program in a repository (service development repository 521). In addition, the service providing server 50 acquires the program for the service completed at the service development terminal 10, and stores the acquired program in the repository (service repository 522). The completed program for service becomes a released state by being stored in the repository (service repository 522). Further, the service repository 522 stores data (released data) of pages for providing services created by the operator/manager terminal 30. The data on the page stored in the service repository 522 may be acquired from, for example, the page repository 625 of the component providing server 60 or the data on the page completed at the operator/manager terminal 30. Data corresponding to the page is requested, and the service-providing server 50 transmits the data of the page to the request source. The data of the page for providing the service may be stored in another server (another server in the information processing system 1, another server in the cloud systems 70-1 to 70-n, or the like) provided for providing the data of the page to the end user. In response to a request for use of a service as an api (application Programming interface), the service providing server 50 executes a program for the service and transmits data of the execution result to the request source. Further, the service providing server 50 acquires various kinds of history data when providing a service, and stores the acquired various kinds of history data in the database (history database 523). Then, the service providing server 50 analyzes the trend or the feature of the history data stored in the database, and generates an application example of a new service using the analyzed trend or feature. Further, the service providing server 50 suggests an application example of the generated new service to the developer using the service development terminal 10 or the developer using the widget development terminal 20.

The component providing server 60 includes a widget storage (a widget storage 621, a content storage 622, and a media storage 623, which will be described later) for storing widgets, contents, and media, which are components (screen components) constituting a page. The component providing server 60 includes a repository (component development repository 624 described later) for storing components (widgets) developed by the widget development terminal 20, and a repository (page repository 625 described later) for storing released pages for providing services. The component providing server 60 acquires widgets developed by the widget development terminal 20 at regular intervals (for example, every 1 minute), and stores the acquired widgets in a repository (component development repository 624). In addition, the component providing server 60 acquires data of pages completed at the operator/manager terminal 30, and stores the acquired data of pages in a repository (page repository 625). The data of the completed page is stored in the bank (page bank 625), thereby becoming a released state. The data of the released page can be reused as a component. Data corresponding to the page is requested, and the component providing server 60 transmits the data of the page to the request source.

The cloud systems 70-1 to 70-n are cloud systems composed of a plurality of server groups, and in the present embodiment, cloud systems that are operated by a different agent from the agent in which the information processing system 1 is operated are used as the cloud systems 70-1 to 70-n. That is, in the present embodiment, the information processing system 1 can cooperate with a plurality of Cloud systems, absorb the difference in the kind of Cloud system, and provide a service based on a Cloud Native application in a DevOps environment.

The service providing server 50 and the component providing server 60 may be configured as any one of the cloud systems 70-1 to 70-n and as a server provided separately from the cloud systems 70-1 to 70-n.

Fig. 2 is a schematic diagram showing a schematic functional configuration of the information processing system 1.

As shown in fig. 2, the information processing system 1 is constructed in a cloud environment, and in cooperation with cloud systems 70-1 to 70-n constituting the cloud environment, functions of a cloud native layer, a reuse layer, and a database utility layer are installed in a DevOps-based development environment.

In the cloud native layer, a program of components (e.g., widgets) working on the cloud environment is executed by browsing pages for various services at the end-user terminal 40.

In the reuse layer, a development environment is provided in which widgets that become elements of a page for providing various services or programs for providing services corresponding to the widgets are reused.

In the data utilization layer, analysis of trends or characteristics of history data acquired by providing various services is performed, and new services are generated using the analyzed trends or characteristics.

[ hardware configuration ]

Next, a hardware configuration of each device in the information processing system 1 will be described.

In the information processing system 1, each apparatus is constituted by an information processing apparatus such as a PC, a server computer, or a tablet terminal, and the basic configuration thereof is the same.

Fig. 3 is a diagram showing a hardware configuration of an information processing apparatus 800 constituting each apparatus.

As shown in fig. 3, the information Processing apparatus 800 constituting each apparatus includes a cpu (central Processing unit)811, a rom (read Only memory)812, a ram (random Access memory)813, a bus 814, an input unit 815, an output unit 816, a storage unit 817, a communication unit 818, a driver 819, and an imaging unit 820.

The CPU811 executes various processes in accordance with a program recorded in the ROM812 or a program loaded from the storage unit 817 to the RAM 813.

The RAM813 also appropriately stores data and the like necessary for the CPU811 to execute various processes.

The CPU811, ROM812 and RAM813 are connected to each other via a bus 814. An input unit 815, an output unit 816, a storage unit 817, a communication unit 818, a driver 819, and an image capture unit 820 are connected to the bus 814.

The input unit 815 is configured by various buttons and the like, and inputs various information in response to an instruction operation by a user.

The output unit 816 is configured by a display unit, a speaker, and the like, and outputs an image and sound.

The storage unit 817 is constituted by a hard disk, dram (dynamic Random Access memory), or the like, and stores various data managed by each server.

The communication unit 818 controls communication with other devices via a network.

A removable medium 831 constituted by a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately mounted in the drive 819. Programs read from the removable medium 831 by the drive 819 are installed in the storage unit 817 as needed.

The imaging unit 820 is composed of an imaging device including a lens, an imaging element, and the like, and captures a digital image of a subject.

When the information processing device 800 is configured as the service providing server 50 or the component providing server 60, the imaging unit 820 may be omitted. In addition, when the information processing apparatus 800 is configured as a tablet terminal, the input unit 815 may be configured by a touch sensor, and may be configured to include a touch panel by being superimposed on a display of the output unit 816.

[ functional Structure ]

Next, a functional configuration of each device in the information processing system 1 will be described.

[ Structure of service development terminal 10 ]

Fig. 4 is a block diagram showing a functional configuration of the service development terminal 10.

As shown in fig. 4, in the CPU811 of the service development terminal 10, the UI control section 111 and the data management section 112 function.

The UI control unit 111 controls display of various input/output screens (hereinafter, referred to as "UI screens") when a developer developing a program for providing a service corresponding to a widget develops the program. For example, the UI control unit 111 displays a list of programs for providing services stored in the service repository 522 of the service providing server 50 on the UI screen.

The data management unit 112 acquires a list of programs for providing services stored in the service repository 522 of the service providing server 50, and outputs the list to the UI control unit 111.

The data management unit 112 transmits a program (program for providing a service corresponding to a widget) that the developer is developing to the service providing server 50 via the UI screen at predetermined time intervals (for example, every 1 minute). The program under production transmitted to the service providing server 50 is stored in the service development repository 521. Further, when the development of the program for providing the service corresponding to the widget is completed, the data management unit 112 transmits the developed program to the service providing server 50 as a program for release (a program for providing the service corresponding to the widget). The program for release transmitted to the service providing server 50 is stored in the service repository 522.

Fig. 5 is a schematic diagram showing an example of a UI screen for displaying a list of programs for providing services stored in the service repository 522.

As shown in fig. 5, programs for providing services stored in the service repository 522 are displayed in a list on the UI screen of the service development terminal 10, and the developer can select and reuse a program for providing a desired service from the list.

Therefore, when a program that can be reused in the present development exists among the developed programs of the services, the developer that has developed the programs for providing the services can quickly acquire a desired program without newly developing the programs for providing the services.

[ Structure of widget development terminal 20 ]

Fig. 6 is a block diagram showing a functional configuration of the widget development terminal 20.

As shown in fig. 6, in the CPU811 of the widget development terminal 20, the UI control section 211 and the data management section 212 function.

The UI control unit 211 controls display of various input/output screens (UI screens) when a developer of development widgets develops. For example, the UI control unit 211 displays a list of widgets stored in the widget repository 621 of the component providing server 60 on the UI screen.

The data management unit 212 acquires a list of widgets stored in the widget repository 621 of the component providing server 60, and outputs the list to the UI control unit 211.

The data management unit 212 transmits the widget that the developer is developing to the component providing server 60 via the UI screen at predetermined time intervals (for example, every 1 minute). The in-production widget sent to the component providing server 60 is stored in the component development repository 624. When the development of the widget is completed, the data management unit 212 transmits the developed widget to the component providing server 60 as a widget for release. The widget for release transmitted to the component providing server 60 is stored in the widget repository 621.

Fig. 7 is a schematic diagram showing an example of a UI screen for displaying a list of widgets stored in the widget repository 621.

As shown in fig. 7, widgets (widget names and attributes) stored in the widget repository 621 are listed on the UI screen of the widget development terminal 20, and the developer can select a desired widget from the list and reuse the selected widget.

Therefore, when there is a widget that can be reused in the current development among the already developed widgets, the developer of the development widget can quickly acquire a desired widget without newly developing the widget.

Fig. 8 is a diagram showing a relationship between widgets and contents of services corresponding to the widgets.

Fig. 9 is a schematic diagram showing data defining the contents of a widget.

As shown in fig. 8, in the information processing system 1, services are prepared in association with each widget, and parameters set to the widget (such as a variable name storing an input numerical value and a store name linking the widget) can be changed and used as appropriate.

As shown in fig. 9, the contents of widgets are defined in a predetermined format such as a structured document, and when a widget is developed, the definition can be newly created in the predetermined format or the definition contents of existing widgets can be changed.

[ Structure of operator/manager terminal 30 ]

Fig. 10 is a block diagram showing a functional configuration of the user/manager terminal 30.

As shown in fig. 10, the CPU811 of the operator/manager terminal 30 functions as a UI control unit 311 and a data management unit 312.

The UI control unit 311 controls display of various input/output screens (UI screens) when a user or manager who creates a page for providing a service creates a page. For example, the UI control unit 311 displays a list of widgets, contents, and media stored in the widget repository 621, the content repository 622, and the media repository 623 of the component providing server 60 on the UI screen.

The data management unit 312 acquires a list of widgets, contents, and media stored in the widget repository 621, content repository 622, and media repository 623 of the component providing server 60, and outputs the list to the UI control unit 311.

In response to an instruction from the user or the administrator, the data management unit 312 transmits data of a page created by the user or the administrator to the component providing server 60 via the UI screen. The data of the page under production transmitted to the component providing server 60 is temporarily stored in the page memory 625. The data management unit 312 may transmit data of a page created by a user or a manager to the service providing server 50 via the UI screen at predetermined time intervals (for example, every 1 minute). Further, when the creation of the page is completed, the data management unit 312 transmits the data of the created page to the component providing server 60 as data of the page to be released. The data for the released page sent to the component providing server 60 is stored in the page store 625. When the creation of the page is completed, the data management unit 312 may also transmit the data of the created page to the service providing server 50 as data of the page to be released. The data for the released page sent to the service providing server 50 is stored in the service repository 522.

Fig. 11 is a schematic diagram showing an example of a UI screen showing a process of creating a page.

As shown in fig. 11, in the case of creating a page, a component placement area for placing components (screen components) is set in an area of the page. Then, for each component position region, a desired element is selected from a list of elements (shown here as widgets) displayed on the UI screen and arranged. The result of this processing is that the page for the user or administrator to provide the target service is complete.

[ Structure of end user terminal 40 ]

Fig. 12 is a block diagram showing a functional configuration of the end-user terminal 40.

As shown in fig. 12, in the CPU811 of the end-user terminal 40, the UI control section 411 and the data management section 412 function. In the present embodiment, the functions of the UI control section 411 and the data management section 412 of the end-user terminal 40 are installed in a Web browser.

The UI control unit 411 controls display of various input/output screens (UI screens) when an end user of a service (e.g., a business service such as communication sales) provided by the information processing system 1 utilizes the service. For example, the UI control unit 411 displays a list of pages stored in the service repository 522 of the service providing server 50 on the UI screen.

The data management unit 412 acquires a page list stored in the service repository 522 of the service providing server 50, and outputs the page list to the UI control unit 411.

In addition, when the target page is selected by the end user, the data management part 412 receives data of the selected page from the service providing server 50 by requesting the data of the page. Then, the data management unit 412 outputs the data of the received page to the UI control unit 411 for display, executes a widget included in the data of the received page in accordance with an operation by the end user, and requests the service providing server 50 to execute a service corresponding to the widget as an API. Then, the data management unit 412 acquires the execution result of the service corresponding to the widget transmitted from the service providing server 50, and outputs the result to the UI control unit 411, thereby displaying the execution result at a predetermined position (position defined by the widget) on the page.

[ Structure of the service providing Server 50 ]

Fig. 13 is a block diagram showing a functional configuration of the service providing server 50.

As shown in fig. 13, in the CPU811 of the service providing server 50, the service management unit 511, the data analysis unit 512, and the service recommendation unit 513 function. Further, the storage unit 817 of the service providing server 50 is provided with a service development repository 521, a service repository 522, and a history database (history DB) 523.

In the service development repository 521, a program for providing a service developed by the service development terminal 10 is sequentially stored.

In the service repository 522, a released program for providing a service is stored. Further, the service repository 522 stores data (released data) of pages for providing services created by the operator/manager terminal 30. In the present embodiment, various programs (existing programs and newly developed programs) for realizing the services provided by the information processing system 1 are collected in the service repository 522. Also, when developing new business logic and the like, the flow of services can be designed by appropriately combining the services stored in the service repository 522.

The history DB523 stores therein history data acquired by providing a service.

The service management unit 511 transmits a list of programs for providing services stored in the service repository 522 to the service development terminal 10 that develops the programs for providing services.

The service management unit 511 acquires a program for a service developed by the service development terminal 10 at predetermined time intervals (for example, every 1 minute), and stores the acquired program in the service development repository 521.

In addition, the service management section 511 acquires a program for a service completed in the service development terminal 10, and stores the acquired program in the service repository 522. The service management section 511 stores the completed program for service in the service repository 522 to set it in a released state. The service manager 511 stores the data of the page for providing the service (released data) completed by the operator/manager terminal 30 in the service repository 522. The service management unit 511 also transmits a data list of pages stored in the service repository 522 to the end-user terminal 40 that uses the service provided by the information processing system 1. In response to data of a page requested from the end user terminal 40, the service management section 511 transmits the data of the page to the end user terminal 40 of the request source.

In response to a request for use of a service as an API, the service management unit 511 executes a program for the service and transmits data of the execution result to the request source. Further, the service management unit 511 acquires various kinds of history data when providing a service, and stores the acquired various kinds of history data in the history DB 523.

The data analysis section 512 analyzes the trend or the feature of the history data stored in the history DB 523. For example, the data analysis unit 512 analyzes a tendency that the number of accesses to a page in which a specific service is embedded is significantly increased, or analyzes a case where there is a significant bias in the attribute of a user who accesses a page in which a specific service is embedded.

The service suggesting unit 513 generates an application example of a new service using the trend or the feature analyzed by the data analyzing unit 512. For example, when it is determined that a service used in a specific field can be extended to another field, the data analysis unit 512 sets, as a new application example, a service in which the service field is extended, or sets, as a new application example, a service obtained by combining services used in a specific field and services used in another field when it is determined that a synergistic effect is produced by combining these services.

The service recommendation section 513 recommends an application example of the generated new service to the developer using the service development terminal 10 or the developer using the widget development terminal 20.

[ Structure of component providing Server 60 ]

Fig. 14 is a block diagram showing a functional configuration of the component providing server 60.

As shown in fig. 14, in the CPU811 of the component providing server 60, a component data management section 611 and a page data management section 612 function. In addition, the storage unit 817 of the component providing server 60 is formed with a widget repository 621, a content repository 622, a media repository 623, a component development repository 624, and a page repository 625.

The widget repository 621 stores therein various released widgets.

Data of various contents (here, an HTML file having a fixed description content) that can be embedded in a page for providing a service is stored in the content repository 622.

The media store 623 stores data (here, data of still images, moving images, music, or titles) of various media that can be embedded in pages for providing services.

The component development repository 624 stores data (files defining widgets, etc.) of components (widgets) developed by the widget development terminal 20.

Data for released pages that provide services is stored in page store 625.

The component data management unit 611 transmits a widget list stored in the widget repository 621 to the widget development terminal 20 that develops a widget.

The component data management unit 611 acquires widgets being developed by the widget development terminal 20 at predetermined time intervals (for example, every 1 minute), and stores the acquired widgets in the component development repository 624. The component data management unit 611 stores the widget completed in the widget development terminal 20 in the widget repository 621 to set the widget to a released state.

The page data management unit 612 transmits a list of widgets, contents, and media stored in the widget repository 621, content repository 622, and media repository 623 to the user/administrator terminal 30 that created the page.

The page data management unit 612 acquires data of a page completed by the operator/manager terminal 30, and stores the acquired data of the page in the page memory 625. The page data management section 612 sets the data of the completed page to a released state by storing it in the page memory bank 625. The page data management unit 612 acquires data of a page being created based on the fact that data of a page created in the operator/manager terminal 30 is transmitted in response to an instruction from the user or the manager, and temporarily stores the acquired data of the page in the page repository 625 as data of the page being created. However, the page data management unit 612 may acquire data of a page being created by the user/manager terminal 30 at predetermined time intervals (for example, every 1 minute) and temporarily store the acquired data of the page in the page memory 625 as data of the page being created. The data of the page being created that is temporarily stored is not included in the reusable parts list transmitted to the operator/manager terminal 30.

Further, the page data management unit 612 transmits the data of the page stored in the page memory bank 625 (data of the released page) to the service providing server 50. The page data management unit 612 may transmit a page list stored in the page repository 625 to the end-user terminal 40 that uses the service provided by the information processing system 1. In this case, in response to data of a page requested from the end-user terminal 40, the page data management section 612 transmits the data of the page to the end-user terminal 40 of the request source.

[ actions ]

Next, the operation of the information processing system 1 will be described.

[ service development processing ]

Fig. 15 is a flowchart showing a flow of service development processing executed by the service development terminal 10.

The service development process is started in response to an instruction to execute the service development process via the input unit 815 of the service development terminal 10.

When the service development process is started, in step S101, the UI control section 111 displays a UI screen when a developer developing a program for providing a service corresponding to a widget develops the service.

In step S102, the data management unit 112 acquires a program list (service list) for providing services, which is stored in the service repository 522 of the service providing server 50. The UI control unit 111 displays a list of acquired programs for providing services on the UI screen.

In step S103, the UI control unit 111 determines whether or not there is a program of a service required by the developer in the existing program list displayed (that is, whether or not the existing program is selected by the developer).

If there is NO program of the service required by the developer in the displayed existing program list (the existing program is not selected by the developer), the determination is made as NO in step S103, and the process proceeds to step S104.

On the other hand, if there is a program of a service required by the developer in the existing program list displayed (the existing program is selected by the developer), the determination is YES in step S103, and the process proceeds to step S105.

In step S104, the UI control unit 111 displays a UI screen for creating a program for manually performing a service.

After step S104, the process shifts to step S106.

In step S105, the UI control unit 111 reuses the selected existing program and embeds it in the service program under development.

In step S106, the UI control section 111 determines whether or not an operation indicating completion of the program of the service (operation of the "completion" button, etc.) has been performed by the developer.

If the developer has not performed an operation indicating that the program of the service is completed, the process proceeds to step S102 if it is determined to be NO in step S106.

On the other hand, when the developer performs an operation indicating the completion of the program of the service, the determination in step S106 is YES, and the process proceeds to step S107.

In step S107, the data management section 112 transmits (uploads) the program of the completed service to the service providing server 50 for release.

After step S107, the service development process ends.

[ Widget development treatment ]

Fig. 16 is a flowchart showing a flow of widget development processing executed by the widget development terminal 20.

The widget development process starts in response to an instruction to execute the widget development process via the input unit 815 of the widget development terminal 20.

When the widget development process is started, in step S201, the UI control section 211 displays a UI screen when the developer developing the widget develops.

In step S202, the data management unit 212 acquires a list of widgets stored in the widget repository 621 of the component providing server 60. The acquired widget list is displayed on the UI screen by the UI control section 211.

In step S203, the UI control unit 211 determines whether or not there is a widget required by the developer in the existing widget list displayed (that is, whether or not the existing widget is selected by the developer).

If there is NO widget required by the developer in the displayed existing widget list (NO existing widget is selected by the developer), the determination is made as NO in step S203, and the process proceeds to step S204.

On the other hand, if there is a widget required by the developer in the displayed existing widget list (the existing widget is selected by the developer), the determination is YES in step S203, and the process proceeds to step S205.

In step S204, the UI control unit 211 displays a UI screen for manually creating a widget.

After step S204, the process shifts to step S206.

In step S205, the UI control part 211 reuses the selected existing widget and embeds it in the widget under development.

In step S206, the UI control section 211 determines whether or not an operation indicating completion of the widget (such as an operation of a "completion" button) is performed by the developer.

If the developer has not performed an operation indicating the completion of the widget, the determination is made as NO in step S206, and the process proceeds to step S202.

On the other hand, when the developer has performed an operation indicating the completion of the widget, the determination is YES in step S206, and the process proceeds to step S207.

In step S207, the data management section 212 sends (uploads) the completed widget to the component providing server 60 for release.

After step S207, the widget development processing ends.

[ Page editing processing ]

Fig. 17 is a flowchart showing a flow of the page editing process executed by the user/manager terminal 30.

The page editing process is started in response to an instruction to execute the page editing process via the input unit 815 of the user/manager terminal 30.

When the page editing process is started, in step S301, the UI control unit 311 displays a UI screen when a page is created by a user or a manager who creates a page for providing a service.

In step S302, the data management unit 312 acquires a list of widgets, contents, and media stored in the widget repository 621, content repository 622, and media repository 623 of the component providing server 60. The UI control unit 311 displays the acquired widget, content, and media list on the UI screen. The data management unit 312 may acquire a data list of released pages stored in the page memory 625 of the component providing server 60, and may display the data list on the UI screen by the UI control unit 311 together with widgets, contents, and media.

In step S303, the UI control section 311 accepts selection of a widget, content, and a medium (screen component) by a creator of the page, and embeds the selected widget, content, and medium in the page.

In step S304, the UI control section 311 determines whether or not an operation indicating completion of the page (operation of the "completion" button, or the like) has been performed by the creator of the page.

If the operation indicating the completion of the page is not performed by the creator of the page, the determination is made as NO in step S304, and the process proceeds to step S302.

On the other hand, when the creator of the page performs an operation indicating completion of the page, the determination in step S304 is YES, and the process proceeds to step S305.

In step S305, the data management section 312 transmits (uploads) the completed page to the parts providing server 60 for release.

After step S305, the page editing process ends.

[ service utilization processing ]

Fig. 18 is a flowchart showing the flow of the service utilization process executed by the end-user terminal 40.

The service utilization process starts in response to an instruction to execute the service utilization process via the input unit 815 of the end-user terminal 40.

When the service utilization process is started, in step S401, the UI control section 411 displays a UI screen when the end user of the service provided by the information processing system 1 utilizes the service.

In step S402, the data management unit 412 acquires a page list stored in the service repository 522 of the service providing server 50. The acquired page list is displayed on the UI screen by the UI control section 411.

In step S403, the UI control section 411 accepts selection of a page by the end user. The selected page is drawn by the UI control section 411.

In step S404, the data management unit 412 determines whether or not there is a widget to be executed (whether or not execution of the widget is instructed).

If there is NO widget to be executed, it is determined as NO in step S404, and the process proceeds to step S406.

On the other hand, if there is a widget to be executed, the determination in step S404 is YES, and the process proceeds to step S405.

In step S405, the data management unit 412 executes the widget and requests the service providing server 50 to execute a service corresponding to the widget as an API.

In step S406, the UI control section 411 determines whether or not an operation to end the service usage process (such as an operation of an "end" button) is performed.

If the operation to end the service usage process is not performed, it is determined as NO in step S406, and the process proceeds to step S404.

On the other hand, when the operation to end the service usage process is performed, the determination in step S406 is YES, and the service usage process ends.

[ parts preparation receiving treatment ]

Fig. 19 is a flowchart showing a flow of the component creation reception process executed by the component providing server 60.

The component creation reception process is started together with the startup of the component providing server 60, and is repeatedly executed.

When the component creation reception process is started, in step S501, the component data management unit 611 determines whether or not a widget is newly developed by the widget development terminal 20.

If NO new widget is developed by the widget development terminal 20, the determination is made as NO in step S501, and the process of step S501 is repeated.

On the other hand, when a widget is newly developed by the widget development terminal 20, the determination in step S501 is YES, and the process proceeds to step S502.

In step S502, the parts data management unit 611 transmits a widget list stored in the widget repository 621 to the widget development terminal 20 that newly develops a widget.

In step S503, the component data management unit 611 determines whether or not the newly developed widget is completed.

If the newly developed widget is not completed, it is determined as NO in step S503, and the process of step S503 is repeated. In addition, in the case where the newly developed widget is not completed, the widget being developed by the widget development terminal 20 is acquired at predetermined time intervals (for example, every 1 minute) by the component data management part 611, and the acquired widget is stored in the component development repository 624.

On the other hand, when the newly developed widget is completed, the determination in step S503 is YES, and the process proceeds to step S504.

In step S504, the component data management unit 611 stores the widget completed in the widget development terminal 20 in the widget repository 621. Thereby, the completed widget becomes a released state.

After step S504, the component creation reception process is repeated.

[ Page preparation acceptance processing ]

Fig. 20 is a flowchart showing the flow of the page creation reception process executed by the component providing server 60.

The page creation reception process is started together with the activation of the component providing server 60, and is repeatedly executed.

When the page creation reception process is started, in step S601, the page data management unit 612 determines whether or not a page is newly created by the operator/manager terminal 30.

If the page is not newly created by the operator/manager terminal 30, the determination is made as NO in step S601, and the process of step S601 is repeated.

On the other hand, when a page is newly created by the operator/manager terminal 30, the determination is YES in step S601, and the process proceeds to step S602.

In step S602, the page data management unit 612 transmits a list of widgets, contents, and media stored in the widget repository 621, content repository 622, and media repository 623 to the user/administrator terminal 30 that newly creates a page. In this case, the page data management unit 612 may transmit a data list of released pages stored in the page memory 625.

In step S603, the page data management unit 612 determines whether or not the newly created page is completed.

If the newly created page is not completed, it is determined as NO in step S603, and the process of step S603 is repeated. When a newly created page is not completed, the page data management unit 612 acquires data of the created page from the fact that data of the page created in the operator/manager terminal 30 is transmitted in response to an instruction from the user or the manager, and the acquired data of the page is temporarily stored in the page memory 625 as data of the page being created. However, the page data management unit 612 may acquire data of pages developed by the operator/manager terminal 30 at predetermined time intervals (for example, every 1 minute) and temporarily store the acquired data of pages in the page bank 625 as data of pages being created. The data of the page being created that is temporarily stored is not included in the reusable parts list transmitted to the operator/manager terminal 30.

On the other hand, when the newly created page is completed, the determination is YES in step S603, and the process proceeds to step S604.

In step S604, the page data management unit 612 stores the data of the page completed by the operator/manager terminal 30 in the page memory bank 625. Thereby, the completed page becomes a released state.

After step S604, the page creation reception process is repeated.

[ Page providing Process ]

Fig. 21 is a flowchart showing the flow of the page providing process executed by the service providing server 50.

The page providing process starts with the start of the service providing server 50 and is repeatedly executed.

When the page providing process is started, in step S701, the service management unit 511 transmits a page list stored in the service repository 522 to the end-user terminal 40 that uses the service provided by the information processing system 1.

In step S702, the service manager 511 determines whether or not the end-user terminal 40 requests page data.

If the end-user terminal 40 does not request page data, the determination in step S702 is NO, and the process in step S702 is repeated.

On the other hand, when the end-user terminal 40 requests page data, the determination in step S702 is YES, and the process proceeds to step S703.

In step S703, the service manager 511 transmits the data of the requested page to the end-user terminal 40 of the request source.

After step S703, the page providing process is repeated.

[ service creation acceptance processing ]

Fig. 22 is a flowchart showing a flow of the service creation reception process executed by the service providing server 50.

The service creation reception process is started together with the start of the service providing server 50, and is repeatedly executed.

When the service creation reception process is started, the service management unit 511 determines whether or not a program for a service is newly developed by the service development terminal 10 in step S801.

If the program for the service is not newly developed by the service development terminal 10, it is determined as NO in step S801, and the process of step S801 is repeated.

On the other hand, when a program for a service is newly developed by the service development terminal 10, the determination is YES in step S801, and the process proceeds to step S802.

In step S802, the service management unit 511 transmits a program list (service list) for providing services, which is stored in the service repository 522, to the service development terminal 10 that newly develops a program for a service.

In step S803, the service manager 511 determines whether or not the newly developed service is completed.

If the newly developed service is not completed, it is determined as NO in step S803, and the process of step S803 is repeated. When a newly developed service is not completed, the service management unit 511 acquires a program for the service being developed by the service development terminal 10 at predetermined time intervals (for example, every 1 minute), and stores the acquired program for the service in the service development repository 521.

On the other hand, when the newly developed service is completed, the determination at step S803 is YES, and the process proceeds to step S804.

In step S804, the service management unit 511 stores the program for the service completed in the service development terminal 10 in the service repository 522. Thereby, the completed procedure for service becomes a release state.

After step S804, the page creation reception process is repeated.

[ service acceptance processing ]

Fig. 23 is a flowchart showing a flow of service reception processing executed by the service providing server 50.

The service reception process is started together with the activation of the service providing server 50, and is repeatedly executed.

When the service reception process is started, the service management unit 511 determines whether or not the use of the service has been requested as an API in step S901.

If the use of the service is not requested as the API, the determination in step S901 is NO, and the process in step S901 is repeated.

On the other hand, if the use of the service has been requested as the API, the determination in step S901 is YES, and the process proceeds to step S902.

In step S902, the service manager 511 refers to the service repository 522. At this time, the service management unit 511 acquires information on the requested service (for example, information on accessing a server on the cloud system that provides the service).

In step S903, the service manager 511 executes the request based on the information about the requested service. For example, the service manager 511 accesses a server on a cloud system that provides the requested service, and acquires the execution result of the request.

In step S904, the service manager 511 transmits the execution result of the request to the request source.

After step S904, the service acceptance process is repeated.

[ data analysis processing ]

Fig. 24 is a flowchart showing a flow of data analysis processing executed by the service providing server 50.

The data analysis process is started in response to an instruction to input the execution data analysis process via the input unit 815 of the service providing server 50 or a request from a terminal device (the operator/manager terminal 30 or the like) to execute the data analysis process.

When the data analysis process is started, in step S1001, the data analysis section 512 acquires history data stored in the history DB 523.

In step S1002, the data analysis section 512 analyzes the trend or the feature of the history data. For example, the data analysis unit 512 analyzes a tendency that the number of accesses to a page in which a specific service is embedded is significantly increased, or analyzes a case where there is a significant bias in the attribute of a user who accesses a page in which a specific service is embedded.

In step S1003, the service suggesting unit 513 generates an application example of a new service using the trend or the feature analyzed by the data analyzing unit 512. For example, when it is determined that a service used in a specific field can be extended to another field, the data analysis unit 512 sets, as a new application example, a service in which the service field is extended, or sets, as a new application example, a service obtained by combining services used in a specific field and services used in another field when it is determined that a synergistic effect is generated by combining these services.

In step S1004, the service recommendation unit 513 recommends an application example of the generated new service to the developer using the service development terminal 10 or the developer using the widget development terminal 20.

After step S1004, the data analysis processing ends.

As described above, the information processing system 1 according to the present embodiment provides a service in a DevOps environment in cooperation with various cloud systems. In addition, in the information processing system 1, widgets, which are elements embedded in a page for providing a service, programs of the service for realizing the operation of the widgets, and the like can be accumulated, and a page for providing a new service can be constructed by reusing the accumulated programs of the widgets or the service.

Therefore, when constructing a page for providing a new service, by selecting elements required for the service and embedding them in the page, the page for the required service can be simply and flexibly constructed.

Therefore, the functions in the information processing system can be constructed more quickly and flexibly.

[ specific application example ]

The information processing system 1 according to the above-described embodiment can easily systematize and execute business logic, etc., that provides a series of services.

A specific example of designing a service flow by combining a plurality of components and executing the designed flow will be described below.

Fig. 25 is a schematic diagram showing an example of a user interface for composing a component to design a service flow.

The user interface shown in fig. 25 may be provided, for example, as a way of making a user interface of a page for providing a service at the operator/manager terminal 30.

As shown in fig. 25, in the case of designing a "new service flow X" (Web API) that implements new business logic, the logic can be constructed by combining and arranging blocks representing components corresponding to the service provided by the service providing server 50. Note that, since the components corresponding to the service provided by the service providing server 50 are components representing functions constituting a service flow, they are hereinafter referred to as "functional components" as appropriate.

For example, the flow of services shown in fig. 25 is constructed by arranging functional elements representing services E1 to E10 provided by the service providing server 50 as consecutive pieces.

These services E1 to E10 are services that are integral elements such as an "authentication setting acquisition" service that displays a user interface for accepting login, an "authentication check" service that checks whether or not input authentication information is correct, and a "request shaping" service that arranges requests for a system into a predetermined format, for example.

By arranging blocks of functional components in the user interface shown in fig. 25, program codes indicating the flow of a series of services are sequentially described with reference to programs of services (programs stored in the service providing server 50) corresponding to the arranged functional components, respectively. As a result, program codes representing a series of services designed by arranging blocks of functional components are automatically generated.

The flow of the service designed in the user interface shown in fig. 25 is stored as data of a page for providing the service, for example, in the service repository 522 of the service providing server 50.

Also, when the end user selects the data of the page of the "new service flow X", the actual page data (e.g., page data in HTML format) for providing the service of the "new service flow X" is rendered at the end user terminal 40.

[ Page data drawing processing ]

Fig. 26 is a flowchart illustrating the flow of the page data drawing process performed by the end-user terminal 40.

The page data drawing process is a process of drawing page data for providing a service, and is started in the end-user terminal 40 in response to selection of a page for providing a service.

When the page data drawing process is started, in step S1011, the data management section 412 acquires the field described in the selected page data.

In step S1012, the data management unit 412 acquires the url (uniform Resource location) described in the selected page data.

In step S1013, the data management part 412 acquires the device information of the end-user terminal 40.

In step S1014, the data management unit 412 determines whether or not the end user terminal 40 is a mobile terminal.

If the end user terminal 40 is not a mobile terminal, the process proceeds to step S1015 if it is determined to be NO in step S1014.

On the other hand, if the end-user terminal 40 is a mobile terminal, the determination in step S1014 is YES, and the process proceeds to step S1016.

In step S1015, the data management unit 412 acquires the layout data for the PC described in the page data.

After step S1015, the process proceeds to step S1017.

In step S1016, the data management unit 412 acquires layout data for the mobile terminal described in the page data.

In step S1017, the data management part 412 analyzes the acquired layout data.

In step S1018, the data management unit 412 determines whether or not the HTML header is set in the acquired layout data.

If the HTML header is set in the acquired layout data, the determination at step S1018 is YES, and the process proceeds to step S1019.

On the other hand, if the HTML header is not set in the acquired layout data, the determination is YES in step S1018, and the process proceeds to step S1020.

In step S1019, the data management unit 412 generates an HTML header according to the setting.

In step S1020, the data management unit 412 determines whether css (screening styles sheets) is set in the acquired layout data.

If the CSS is set in the acquired layout data, the determination at step S1020 is YES, and the process proceeds to step S1021.

On the other hand, if the CSS is not set in the acquired layout data, it is determined in step S1020 as NO, and the process proceeds to step S1023.

In step S1021, the data management unit 412 downloads the set CSS from the server that is the source of the CSS.

In step S1022, the data management part 412 generates a "style" tag and adds it to the layout data.

In step S1023, the data management unit 412 determines whether or not a screen component (JavaScript) is placed in the page data.

If a screen component is placed in the page data, the determination is YES at step S1023, and the process proceeds to step S1024.

On the other hand, if NO screen component is placed in the page data, the determination is made at step S1024 as NO, and the process proceeds to step S1026.

In step S1024, the data management unit 412 downloads the screen component to be placed from the server that becomes the supply source of the screen component.

In step S1025, the data management section 412 generates a "script" tag, and adds it to the layout data.

In step S1026, the data management section 412 generates an HTML body based on the page data. The HTML body generated at this time describes data for displaying blocks representing the components of the services E1 to E10, respectively, in accordance with the progress of the service (see fig. 25).

In step S1027, the UI control section 411 draws the HTML document generated in the processing up to step S1026.

As a result, the end-user terminal 40 displays a Web page for realizing the "new service flow X", and executes the steps of the "new service flow X" in accordance with the user operation.

[ service providing Process ]

Next, a process (service providing process) of the service providing server 50 for realizing the flow of the designed service will be described.

Fig. 27 is a flowchart illustrating the flow of the service providing process performed by the service providing server 50.

The service providing process starts in correspondence with rendering data of a page for providing a service and selecting execution of the service at the end-user terminal 40.

When the service providing process is started, in step S1101, the service management section 511 acquires data of a start block of a service selected to be executed at the end-user terminal 40.

In step S1102, the service manager 511 receives the start block of the service as an argument, and starts executing the function for providing the service.

In step S1103, the service manager 511 determines the type of received block. In the present embodiment, "start block", "service block", "branch block", "source code block", and "end block" are defined as the types of blocks.

In step S1103, when the accepted block is the start block, the process proceeds to step S1104.

In step S1103, when the accepted block is a service block, the process proceeds to step S1108.

In step S1103, when the accepted block is a branch block, the process proceeds to step S1113.

In step S1103, when the accepted block is a source code block, the process proceeds to step S1118.

In step S1103, when the accepted block is an end block, the process proceeds to step S1119.

In step S1104, the service management section 511 defines variables of request attributes relating to the current request (service provision request from the end-user terminal 40).

In step S1105, the service management section 511 performs authentication (verification) of the request attribute.

In step S1106, the service manager 511 determines whether or not there is a problem.

If it is verified that there is a problem, the determination in step S1106 is YES, and the process proceeds to step S1107.

On the other hand, if there is NO problem in the verification, it is determined as NO in step S1106, and the process proceeds to step S1116.

In step S1107, the service management unit 511 performs error processing. As the error process, for example, an error message such as a message indicating that the unexecutable service is requested may be transmitted to the end user terminal 40.

After step S1107, the service providing process ends.

In step S1108, the service management unit 511 specifies the service to be executed based on the received block data.

In step S1109, the service manager 511 generates request data for a server that provides a service.

In step S1110, the service manager 511 transmits the generated request data to the server providing the service.

In step S1111, the service management section 511 defines a result (request result) returned in response to the request as a variable.

In step S1112, the service manager 511 determines a block to be executed next based on the request result.

After step S1112, the service manager 511 proceeds to step S1116.

In step S1113, the service manager 511 acquires the branching conditions from the branching block.

In step S1114, the service manager 511 determines whether or not the current state matches the acquired branching condition.

If the current state does not satisfy the acquired branching condition, the determination at step S1114 is NO, and the process proceeds to step S113.

On the other hand, when the current state matches the acquired branching condition, the determination at step S1114 is YES, and the process proceeds to step S1115.

In step S1115, the service management unit 511 determines a block to be executed next according to the matching condition.

In step S1116, the service management section 511 specifies a block to be executed next.

In step S1117, the service management section 511 passes the specified block as an argument to the executing function.

After step S1117, the process proceeds to step S1102.

In step S1118, the service manager 511 executes the source code defined in the block.

After step S1118, the process proceeds to step S1116.

In step S1119, the service management section 511 defines variables of response attributes relating to the current request.

In step S1120, the service manager 511 defines a response status code (HTTP response status code).

In step S1121, the service management section 511 transmits a response as a result of execution of the service providing process to the end-user terminal 40.

After step S1121, the service providing process ends.

As described above, in the information processing system 1 according to the above-described embodiment, the flow of the service can be designed by arranging the blocks of the components constituting the service in the operator/manager terminal 30.

Also, a page representing the flow of the designed service may be selected from the end user terminal 40, and when the page is selected in the end user terminal 40, the page corresponding to the service is rendered.

Further, the components constituting the service are sequentially executed using the drawn page as a user interface, thereby realizing a business logic based on a series of designed service flows.

Therefore, according to the information processing system 1, a series of target services can be constructed without generating program codes for realizing the services.

As described above, the information processing system 1 according to the present embodiment provides services in cooperation with the cloud systems 70-1 to 70-n. The information processing system 1 includes a component providing server 60, an operator/manager terminal 30, and a service providing server 50.

The parts providing server 60 accumulates elements constituting a page for providing a service on the cloud systems 70-1 to 70-n.

The user/manager terminal 30 generates a page for a new service using the elements accumulated in the parts providing server 60.

The service providing server 50 executes a program associated with an element contained in a page.

Thus, when constructing a page for providing a new service, a page for the desired service can be simply and flexibly constructed by selecting elements necessary for the service and embedding the elements in the page.

Therefore, the functions in the information processing system can be more quickly and flexibly constructed.

The user/manager terminal 30 provides a user interface capable of designing the flow of a service by arranging a plurality of blocks representing functions constituting the service.

The service providing server 50 generates a program code indicating the flow of the service by referring to the program corresponding to the block constituting the flow of the designed service.

The service providing server 50 executes a flow of a service designed by the user/manager terminal 30 based on an operation on a page for utilizing a flow of the service and the generated program code.

Thus, the programs corresponding to the blocks are combined to generate program codes for realizing the services, and a series of intended services can be constructed.

The information processing system 1 further includes a widget development terminal 20.

The widget development terminal 20 generates a new element.

Elements generated by the widget development terminal 20 are also accumulated in the component providing server 60.

This enables selection and use of a newly generated element when the element is generated later.

The information processing system 1 further includes a service development terminal 10.

The service providing server 50 accumulates programs for the services corresponding to the elements.

The service development terminal 10 generates a new program for the service corresponding to the element using the program accumulated in the service providing server 50.

The service providing server 50 also accumulates programs generated by the service development terminal 10.

This makes it possible to generate a program for a service corresponding to an element in the service providing server 50 in which no program is accumulated, and add a new element to the selection target.

An element may set parameters for implementing a service and define actions when browsing a page.

Thus, it is possible to set a necessary parameter, or to appropriately change an operation when browsing a page, and to embed an element in the page.

The program is a cloud-native program executed via an application program interface in the cloud systems 70-1 to 70-n.

Thus, the elements embedded in the page can be implemented as cloud-native applications.

The service providing server 50 acquires history data related to page browsing.

The service providing server 50 analyzes the acquired history data and makes a proposal related to a new service.

Thus, a new service predicted to be highly necessary can be suggested based on the data obtained by providing the service.

The present invention is not limited to the above-described embodiments, and modifications, improvements, and the like within a range that can achieve the object of the present invention are also included in the present invention.

For example, the system configuration of the information processing system 1 in the above embodiment is an example, and if the functions of the information processing system 1 are realized as a whole, the service providing server 50 and the component providing server 60 may be realized as one server, or the functions may be distributed and installed in more servers.

In addition, as the service in the above embodiment, a service in a cloud native system or a micro service is mainly assumed, and a service similar to these may be included.

The above-described processing sequence may be executed by hardware or may be executed by software.

In other words, the functional configurations in the above embodiments are merely examples, and are not particularly limited. That is, any computer constituting the information processing system 1 may have a function that can execute the series of processes as a whole, and what functional blocks are used to realize the function is not limited to the specifically illustrated examples.

Further, one functional block may be configured by a single hardware, a single software, or a combination thereof.

The recording medium containing the program for executing the series of processes is not only a removable medium distributed separately from the apparatus main body for providing the program to the user, but also a recording medium provided to the user in a state of being embedded in the apparatus main body in advance.

The embodiments of the present invention have been described above, but the present invention is not limited to the above embodiments. The effects described in the present embodiment are merely the most preferable effects produced by the present invention, and the effects of the present invention are not limited to the effects described in the present embodiment.

Description of the symbols

1 information processing system, 10 service development terminal, 20 widget development terminal, 30 user/manager terminal, 40 end user terminal, 50 service providing server, 60 component providing server, 70-1 to 70-n cloud system, 80 network, 800 information processing apparatus, 811CPU, 812ROM, 813RAM, 814 bus, 815 input, 816 output, 817 storage, 818 communication, 819 driver, 820 camera, 831 removable medium, 111,211,311,411UI control, 112,212,312,412 data management, 511 service management, 512 data analysis, 513 service suggestion, 521 service development repository, 522 service repository, 523 history database, 611 component data management, 612 page data management, 621 widget repository, 622 content repository, 623 media repository, 624 component development repository, 625 page repository.

43页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于基于组件的用户接口的声明性和反应性数据层

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!