Abstract
“Internet plus” application service recommendation is challenged by two issues: One is the increase in service volume and the disorderliness of the service organizations. A second is the diversification of user requirements. The research focus of this study was to investigate how to achieve more ordered aggregation and recommend services that meet the individualized requirements of users. This paper addresses the disorderliness of conventional service aggregation and considers the aggregation requirements of QoS weights with non-functional targets. Based on semantic relevance using the role (R), goal (G), process (P), service (S) demand metamodel, an RGPS association is proposed that is a weighted network for ordered QoS service aggregation. An individualized service recommendation method then is provided, based on an LSTM neural network with role and target backstepping using RGPS association network, that can achieve a high-quality precision service. Finally, a simulation experiment was carried out on service recommendations in the tourism domain, which verified the precision, effectiveness and application value of the service recommendation method.
Keywords
Introduction
User requirements are greatly diversified, due to the emergence of the “Internet plus concept” and of related customized services. In this context, precision matching between services and user requirements becomes extremely important. However, few software engineering technologies address this issue, and there is an urgent need to develop a service aggregation and recommendation method that adapts to the individualized requirements of users. This investigation was focused on the requirement-oriented service relationship and service recommendation method.
There are two major problems that challenge the service aggregation and recommendation mechanism: One is the disorderliness of service organizations. Web service is an emerging software identity, which publishes and accesses information via the Internet and provides a set of isolated functions to meet the diversified requirements of users. Researchers have been seeking a highly efficient method to use in combination with other Web services in order to address these demands and that is how the concept of service aggregation has come into being. However, before mining for service combinations, research into service infrastructure is necessary. In recent years, user requirement-driven service aggregation methods have been divided into aggregation based on the similarity of service functions, and dynamic selection and aggregation based on service workflow. Aggregation based on the similarity of service functions is described in the following studies. In the literature [1], similar functions were encapsulated into a single virtual service. Then based on Quality of Service (QoS) value, optimal services or service complications were selected. In literature [2, 3], a method of service aggregation based on service requirement semantics with swarm intelligence was described. There are also aggregation methods based on business generation graphing, i.e., global optimal dynamic Web services selection (GODSS) [4] and APDR4AWS [5]. These methods analyze mainly from the perspectives of behavior and execution flow of services. They only focus on the interactions and collaboration between services, but they cannot be applied directly to collaboration and interactions between non-specific users.
The other approach is based on the diversification of user requirements. Users’ individualized requirements are manifested primarily in the following three aspects: First, users may be interested in different domains, and it is important to build models on shared requirements for each domain. Second, for the same goal, users may choose different execution flows, which leads to differentiation and disorderliness of the service process. Third, users usually input descriptive words or sentences using natural language to retrieve services (e.g., the name of the services, input and output). In that case, semantic analysis is needed to support on-demand service aggregation and recommendation. To recommend services that satisfy precisely the user requirements, a novel type of service aggregation model must be introduced. Here, a service aggregation method is proposed, based on the RGPS metamodel. This metamodel can perform an ordered organization of services, based on the association network between elements. By doing so, the RGPS models can solve the problem of disordered service organization and can provide an optimal solution to the problem.
In order to meet diversified user requirements, three steps of service recommendation are proposed: (1) For specific domain issues (SDI), services are modeled from four perspectives, namely, the role (R), goal (G), process (P) and service (S). The association network between RGPS elements is defined, based on existing literature. Different operations incorporated in the models are modeled according to the sequential logic of behaviors, so as to obtain complex element aggregation according to reasonable logical order; (2) The association between R, G and S in terms of the constraint from P is studied. Then the on-demand service aggregation method, oriented towards specific domain and RGPS, is developed; (3) The proposed service aggregation and recommendation method is compared with other similar methods in terms of retrieval time, precision, recall and F-measure using a simulation experiment for a specially-designed example of service recommendation.
Related work
Within the existing literature on service organization, some research [13] took service nodes as the basic logical units of the service aggregation and organization model. The meaning of service nodes was similar to that of RGPS elements in this study. By utilizing specific business logic and the service nodes, a universal service aggregation process model was built. In the literature [14, 15, 16], service workflow methods centered on users and based on business generation diagrams were described. Firstly, services with the same or similar functions were clustered into one set. Then organization was performed on the basis of service sets using a spanning tree. In the literature [17, 18], a combination of business-level services was conducted with business process as the center. It was proposed that service aggregation could be done by an “encountering in the middle” method, which used user editing for service aggregation. That is, the users’ business requirements were mapped directly into virtualized service resources. Service examples were retrieved, based on two considerations, namely, business function input and non-functional constraint. Howard and Kerschberg [19] proposed a knowledge-based dynamic semantic Web services (KDSWS) framework. For virtual organization, a proxy was used, and semantic Web service interaction, organization, execution and management were implemented in a workflow manner. In the literature [20] a user-driven service aggregation technology has been described that encapsulates the service pool into a single virtual service. Next, automatic coordination was initiated based on the users’ QoS demand, and the optimal services or service combinations were selected. In the literature [21], a service resources integration method based on dynamic pruning was also had been described. In this case, large-grained virtual resources were obtained by dynamic integration of bulk resources so as to satisfy the demand for individualized applications. In the literature [22], autonomous Web services (AWS) with an active demand search ability was introduced. Moreover, an environmental ontology-based intention-behavior-realization mechanism has been proposed along with a requirement-driven AWS aggregation model.
The description of the existing RGPS metamodel takes advantage of the requirement specification of ontology in all four levels. Therefore, there is no way to describe the RGPS metamodel using the i* framework and the procedural execution language [23]. Only an approach in RGPS [24] uses the guidelines of requirements engineering methodology Tropos for the specification and requirements analysis in Role and Goals layers. In this approach, the advantages of a methodology goal-oriented are brought to the RGPS metamodels. However, the description of Process and Service layers also used ontologies.
Overview
Each user fulfills multiple roles on the Internet, and each role is associated with greatly diversified and mutable (changing, unpredictable, variable) goals. This leads to high complexity in the target business process. To select the services that satisfy user requirements, the users’ true intentions are modeled, based on RGPS, and ordered association relationships are obtained for aggregation.
Research framework
As shown in Fig. 1, wan RGPS-based service aggregation framework is proposed that is oriented towards the domain and the requirements. This framework consists of domain modeling, on-demand service aggregation, service semantic analysis and service recommendation.
Requirement-guided service aggregation and recommendation framework based on RGPS.
The service metamodel is built by using a service registry. Domain ontologies are generated by domain experts using RDF/OWL rules. To be specific, domain experts carry out modeling on the shared user requirements for the domain, to obtain R, G, P and S models. Elements of these models can be revised by addition, configuration and deletion.
Service aggregation
The service aggregator establishes association relationships between the R, G, P and S elements. That is, using an S model, services with similar functions with different QoS values are aggregated together to form a service cluster. There are likewise G, R and P clusters. Then the requirement-driven RGPS association network is built. The roles fulfilled by the users are analyzed first. Depending on R-G association relationship, functional and non-functional goals are undertaken by a role. Then, depending on the G-P association relationship, the goals are subdivided into a process. Services associated with the process are identified according to the P-S association relationship. Sides representing the R-S and G-S association relationships are weighted paths and their corresponding values are the QoS values of the services. Finally, the combination services are returned to the users to satisfy the user requirements.
Service recommendation
Step 3 lays the foundation for the formation of the association network. Here, an association network oriented towards R and G backstepping is established. Weights are assigned to the R-S and G-S sides to form a weighted network. User requirements are analyzed using the pathways of the R and G backstepping services and combining these with the LSTM neural network, and suitable services are recommended. Service retrieval and matching are realized using different service recommendation algorithms for G, R, and descriptive information of services proposed from different perspectives. In this way, the efficiency and accuracy of service retrieval can be improved.
RGPS relationship
Under the RGPS metamodel framework, the four metamodels (R, G, P and S metamodels) were proposed and standardized and seven types of semantic association between them were obtained from the perspectives of grammar, semantics, social nature, scenario and QoS. These metamodels are used to guide interactions between the RGPS models. In another study based on the four basic elements of meta-description requirements (namely, R, G, P and S), the RGPS metamodel framework is described along with the association relationships between the four elements, as is shown in Table 1. There are seven basic association relationships:
R-G: (Takes charge, or TC). Regarding the requirement issues described therein, a role needs to fulfill the goals related to its responsibility, i.e., the shared goal of a role. R-P: (Involves, or IN). Different roles must be involved in the development and execution of the process. P-G (functional): (Achieves, or AH). A process has the ability to organize a group of activities and resources in an ordered way so that a specific functional goal can be achieved. P-G (non-functional): (Contributes, or CO). While achieving functional goals, a process also can promote the realization of non-functional goals and satisfy non-functional requirements of the users. P-S: (Realized by, or RB). The process can be also executed by service invocation. S-G: (Accomplishes, or AC). Service invocation should accomplish specific user goals. S-R: (Satisfies, or SA). Service invocation satisfies specific requirements of roles in the requirement issue space. The overall framework is shown in Fig. 1.
Considering the social nature of networked software, the R element is incorporated into the model to more reasonably recognize and classify the goals. As to the available resources, a service description is added so as to connect service requirements with service resources. The research below is conducted on this basis.
Association relationships between RGPS elements
It was considered appropriate to establish the requirement model for networked software based on four perspectives, namely, R, G, P and S. These four elements, that are used for requirement re-description and their association relationships, were studied. The R-G association relationship deals with the social nature and universality of user-oriented requirements. The P-S association relationship is concerned with requirement realization with service as the target. R, G and P attributes then are added, related to the service. Once the services are assigned with descriptive attributes, it becomes easier to realize attribute aggregation.
indicates to which role the services are targeted. Here,
For example,
means that the association relationships between the roles in the R model are mutable.
where
indicates the set of goals in
indicates the type of goal, i.e., functional (FG) or nonfunctional (NFG). NG refers to goals that can be realized and NFG refers to goal information such as QoS. For example,
represents the TC relationship between the goal and role.
where:
indicates the set of goals in
means that the process is divided into original subprocess and combination process. For example,
indicates the accomplishing and constraint relationship between processes.
Association relationships between elements in the relationship diagram
where
indicates the set of services in
The above formulars describe the association relationships between the four elements. Definition 1 describes the R model and the relationship of R to G and P. Definition 2 describes the G model and the relationship of G to P and S. Definition 3 describes the P model and the relationship of P to G and S.
RGPS elements are represented in a weighted network using sequential logic. That is, R is successively connected to G, P and S to form the R-G, G-P and P-S sides, thus finally forming a weighted network. This method of representation achieves an ordered organization of service relationships, which makes it convenient for users to retrieve different types of service based on the RGPS elements. The association network for the requirement metamodel further can be used to screen for service recommendations under special contexts based on basic RGPS constraints. Two special relationships are added between the goals on the basis of their existing relationships. The first is mutable goals, defined as two interchangeable goals (e.g., train or bus ticket booking and ticket query); the second is immutable goals, defined as two non-interchangeable goals (e.g., hotel reservation and train or bus ticket booking). The association relationships between the four elements are shown in Table 1.
In Algorithm 1, steps 1–4 judge whether any two roles
(a) R-RGPS association network; (b) G-RGPS association network.
Here, user requirements are analyzed using an RGPS association network with R and G backstepping and the combined LSTM neural network. Thus, the latest service combinations can be recommended on demand to the users. A defect with the service recommendation algorithm in the literature [12], that being that the recommended service set is unable to perform a prioritized sequencing of the services, has been overcome.
1) R-RGPS service set recommendation algorithm based on R backstepping
After finishing the above procedures, recommended services can be obtained by R backstepping from the user input of requirements.
The R-RGPS service recommendation algorithm:
User input service
The predicted output service
2) The related service recommendation based on R-S semantics is to retrieve related services
This means there is
3) The G-RGPS service set recommendation algorithm based on G backstepping After the above procedures, recommended services can be obtained by G backstepping based on user input of requirements: Recommendation based on G semantics is to retrieve related services
This means there is
We first exploit the LSTM to get the similar services from D, R-RGPS service set recommendation algorithm based on R backstepping (lines 2–4), The G-RGPS service set recommendation algorithm based on G backstepping (lines 5–6), Eliminate non-similar service and recommend the relevant services for user (lines 7–10) .
Depending on the users’ different styles of requirement description, the above two methods can be applied to retrieve the desired single service, or set of related services, in the RGPS association network for on-demand service aggregation.
Algorithms 3 can be learned that, firstly, according to the relationship between elements in RGPS model, an association graph is generated, and the elements of
One of the
LSTM implicit service recommendation model.
From Algorithm 4, We know that the relevant services can be found through any node in R and G of RGPS requirement metamodel, so as long as the next change of target G can be predicted, more accurate personalized services can be recommended for users. In this chapter, we use Long-Short Term Memory (LSTM) to predict the change of target G for users. Then the new target is searched in the RGPS metamodel, and the corresponding service is recommended to the user. Each layer model of LSTM neural network [20] predicts data through the following steps. LSTM memory cell consists of four parts: input gate, output gate, forgetting gate and memory cell. The principle of memory cell is shown in the formula.
The first step is through the input gate:
The second step is to forget the door:
The third step is through memory cells. Cell state determines the stored information. First, the updated value is determined by the Sigmoid layer, and the candidate vector c_t is created by the tanh layer, which will be added to the cell state:
The fourth step is through the output gate:
Service-oriented RGPS meta model framework.
Because Algorithm 2 can divide the user’s needs in specific areas into four basic elements, that is, to query services through roles, goals and processes, then aggregate the related service clusters, and then quickly find a series of services to meet the user’s needs.
The following results are shown in Fig. 4:
Role-level meta-model: Participants can be human or service software, whose attributes are described by attribute profile and dynamic knowledge, in which the profile is participants’personal information, such as gender, identity ID, etc. Dynamic knowledge describes service knowledge information acquired by participants, including reference. The quality of service and knowledge of service obtained from knowledge evolution network. Target level meta model: Target is divided into functional and non functional targets according to the completion criteria. Functional objectives are the functional attributes of the system. Non-functional objectives include timeliness, security, cost-effectiveness and so on. The attributes of non-functional objectives mainly come from knowledge evolution network. In addition, there are changeable and invariable goals. Variable goals mean that they can be executed selectively, while invariable goals must be executed. Process Layer Meta-model: It mainly defines four parts of the process, namely, input, output, pre-condition and post-condition. They can also be subdivided into knowledge precondition and knowledge effect, which are determined by the knowledge dependence between the objectives. Service layer meta-model: It refers to the description information of services, in which services can be selected. For example, users can evaluate service quality and cost-effectiveness through knowledge of evolutionary network feedback, and select personalized services.
To verify the effectiveness and excellence of the proposed service recommendation algorithm, a B/S mode-based software service registration and administration platform was developed. Experiments were conducted on five sets on the Pweb home page:
Indicators
To evaluate the service recommendation algorithm with R and G backstepping, four quantitative indicators were compared, namely, precision, recall, F-measure and retrieval time.
(1) Precision (
where
(2) Recall (R): Recall is the ratio of correctly retrieved services to all services:
where
(3) F-measure: F-measure is a composite of precision and recall that measures the comprehensive ability of the service recommendation:
The above three indicators, plus retrieval time, are used to compare the developed service recommendation algorithm with other five algorithms. The efficiency of each algorithm was quantified using a line chart.
Candidate services were retrieved and IDs of services that met the requirement were returned. The other five algorithms tested were as follows:
Random method (RD): This method does not use a service organization algorithm, so it is called a random method.
Workflow method (WF): Services are organized in a workflow manner. Services are retrieved based on the workflow-defined relationships between services.
Goal-Service method (GS): Services are organized based on RGPS and retrieved using the G and S relationship.
Role-Service method (RS): Services are organized based on RGPS and retrieved using the R and S information.
Service-Service method (SS): Services are organized based on RGPS and retrieved based on the association relationship between service information and services.
S-RGPS method: This is a method that takes the average of the measure with the RGPS association network algorithm with R backstepping, and that with RGPS association network with G backstepping.
Some examples of RGPS associated network in the field of travel.
We can know from Fig. 5, the service recommendation process begins by the role layer, the “train passenger” is the purpose of “order tickets”, the process is “ticket price” and “purchase ticket”, and the “purchase ticket” subprocess can be decomposed into “ticket information” and “online payment”. Through roles, goals, and processes, we can categorically classify services through the sequential logic diagram of the RGPS association network. In order to recommend better services for users, such as the “tourist” role, we can select the recommended subgroups from the “payment system”, “navigation software”, “travel service” three service clusters. Service, this method can effectively improve the rationality of service recommendation.
This chapter RGPS demand meta-model for the “travel” area, the services involved include: ticket booking, Hotel booking, online payment, weather services and navigation map services. The corresponding RGPS demand meta-model is described as follows: This chapter RGPS demand meta-model for the “travel” area, involving services including: ticket booking, Hotel booking, online payment, weather services and navigation map services. The RGPS requirement metamodel corresponding to the specific problem is described as follows:
Role model: Goal model:
Role layer instance of travel demand. Process model: Service model:

Figure 6 shows an example of the role level of travel hotel booking requirements. Hotel booking is generally provided by a special hotel booking website. For example, the hotel information center has formulated corresponding hotel star standards. Among them, the knowledge evolution network provides hot knowledge of user services, which can help users choose personalized services. The operator is responsible for statistics of hotel booking information and feedback to the hotel front desk. Travellers are played by travelers, and their personalized demand is to book the Hotels with the highest cost performance.
Target layer of travel demand.
Figure 7 is a travel hotel booking goal based on the role layer of Fig. 6. Its function is to customize the corresponding planning for the hotel booking service requests put forward by users. Among them, “Providing Hotel Booking assistance” generates three required functional objectives: generating preferences, preparing booking and supporting booking, while “expending”. “Reservation” includes two variable objectives: “hotel related information” and “notify traveler”. “Execution Payment” and “Execution Reservation” depend on each other. When the hotel reservation is successful, the payment function can be implemented. According to the above meta-model layer example, we construct a real RGPS association network for experiment, and search and recommend services on the network, then count the search time, accuracy, recall rate and F value.
In this test, 10, 50, 100, 1100, 200, 250 and 300 requests for single service retrieval were generated randomly. The retrieval time was compared, and the test results are summarized in Fig. 4.
Comparison of retrieval times.
Recall of service recommendation algorithms.
Figure 8 shows the service retrieval times that were obtained using the different methods for a given number of retrieval requests. It can be observed that the retrieval times varied between the different methods and the number of retrieval requests. RD, WF and SS methods varied little in retrieval time for the same number of retrieval requests. Moreover, these three methods had the longest retrieval times; the retrieval time of S-RGPS came next, and that of GS was the shortest. That is because, for a single service request, the RD, WF and SS methods do not use the attribute information of the services and have to perform matching computations for each service. As the number of comparisons increases, the retrieval times also increase. In contrast, with the GS and RS methods, the G and R information of the services are utilized, which narrows the scope of service retrieval. There is a requirement that the number of services corresponding to a specific goal should be smaller than that corresponding to a specific role. Therefore, the retrieval time is shorter with GS than RS.
Different numbers of related services (k) ranging from 1 to 10 were considered. For a given number of service retrieval requests, different service organization and retrieval methods were used, and their precision compared.
The precision of different methods
Comparison of F-measure.
Figure 10 shows the comparison of recall between the methods. Recall is defined as the ratio of the correctly-recommended services in the different categories (train and bus ticket bookings, hotel reservations, weather forecasts, payment systems, navigation software, and travel services) to the total number of services. For a single service request, the S-RGPS and WF methods performed matching computations for each service according to attribute information of the services in each category. This makes the scope of retrieval more precise, thereby increasing the efficiency of the search. The GS, SS and RS methods use the G and R information of the services, which narrows the scope of retrieval and reduces the retrieval times. However, this also lowers the precision of the search. Compared with the workflow-based service organization method, WF, S-RGPS reduces the retrieval time by about 11% and increases precision by 10.2%. As indicated by the above comparison, the proposed service recommendation algorithm can solve precisely the service recommendation problems and has an intact logical structure in terms of service organization. Figure 6 shows the a statistical test for the comparison of the examined methods. Precision and Recall indicators sometimes appear contradictory, so we need to consider them comprehensively. The most common way is F-Measure. It is known that F combines the results of Precision and Recall. When F value is higher, the test method is more effective. Our method S-RGPS is obviously superior than WF, GS, SS and RS.
Display and analysis of association network among elements based on RGPS metamodel.
The Fig. 11 tools for process selection of the target, double-click the process such as the specific role of association network diagram shown in Fig. 7, the target, process and service, including “
From the perspective of software engineering technology, a user interaction-driver RGPS association network for on-demand service aggregation is proposed. Association relationships and linkage between four elements (RGPS) and the virtual-actual interaction model process are analyzed. The user requirement-driven RGPS association network then is formed. The Qos value is introduced to implement the association graph in order to provide the service for users’ needs. Finally, service semantic mining and a service recommendation algorithm based on an RGPS association network are proposed. In particular, potential service mining based on an LSTM neural network was developed and verified using simulation tests.
Future work will be focused on an RGPS language for networked interaction and semantic interoperability administration to achieve a heterogeneous service model.
Conclusion
In this paper, we proposed a method of user requirement modeling based on RGPS meta-model. This method is suitable for the early stage of requirement engineering in software life cycle. This paper focuses on the analysis and discussion of four elements of user needs, through the relationship of four elements of RGPS, we constructed an association network , which suits the rising trend of complex user requirements on the internet. And compares the performance of six methods of RD, WF, GS, RS, SS and S-RGPS in different service areas through real service data sets. The experimental results show that the average service search time can be reduced by 11% and the precision can be improved by 10.2%.
Footnotes
Acknowledgments
This work was supported by the National Natural Science Foundation of China (Nos. 61672387 and 61702378), and the Natural Science Foundation of Hubei Province of China (Nos. 2018CFB511 and 2017CKB894).
