908 IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 11, NO. 3, JULY 201 4
and API; some services b ecome more popular w hile others
become obsolete; even for services that used to be popular
historically, they may become perished. Our empirical study
shows that 18% services in the whole PW services set, such as
“Google Buzz,” “Yahoo M aps,” and “AOL Video” a re no long er
available as of September 2013 [25]. “ Technorati” with 13th
popularity historically is unavailable now, and no compo sitions
invoke it since February 2010. Similarly, “Digg” ranked 14th
in all time popularity but is nev e r invoked since February 2012.
This observation inspires us to consider the evolution pattern
to filter out the obsolete services such as “Tech norati”and
“Digg,” for a more up-to-date recommendation.
Also, services will collaborative with each other over time
and some will form the compo sition patterns. For example, ser-
vices “Twilio”and“Twilio SMS,” services “Amazon S3”and
“Amazon EC2,” are usually composed together, respectively.
Furthermore, most of the developers only have a fuzzy, but
not a clear goal about the composition to be m ade. F or exam ple,
a developer may want to make a map-related composition but
having decided little about the detail functionality. The ev olu-
tion pattern can help the developers to understand the usage pat-
terns in the ecosystem and help them to select the right services
at a particular moment to construct valuable compositions.
Motivating by the dynamics in a service ecosy stem, incorpo -
rating its evolution mechanism is necessary to filter out obsolete
services, recommend up-to-date com po sition patterns and guide
developers to fo rm valuable compositi ons. With thi s insight, we
propose a novel network prediction -b ased approach to take the
evolution mechanism into account for service recommendation.
In the following sections, we first introduce the network model
for ecosystem evolution and three netw ork-based recomm enda-
tion methods.
B. Network Model for Ecosystem Evolution
To describe the network models more clearly, we s um marize
the networ k denotations in Table I.
1) Service Network Model: For each com position, we build a
link between it and the services invoked within it. Thu s , we can
get a composition-service network as a bipartite graph. For each
service pair occurred in a composition, we build a link between
them and derive a concurrence service–service network. Fig. 2
shows an example of these two networks. Here, we formally
define them as follows.
Definition 1 (Composition-Service Network, CSN):
The composition-service network is a bipartite graph
,where refers to t he c ompositions,
refers to the services and refers
to th e invoking relations between compositions and services.
Definition 2 (Service-Service Network, SSN): The service-
service network is a homogeneous network
,
where
is the list of services, refers to
the invo ked frequency of service
.
represents the service concurrence relations and
means that service and service are invoked together in
compositions.
2) Service Network Series Model: Given a series of consec-
utive time inter vals
, we get the compositions pub-
lished in each interval
as well as the s ervices invoked in these
TABLE I
D
ENOTATIONS FOR NETWORK MODELS
Fig. 2. CSN a nd the SSN in a service ecosyste m. Each square represents a
composition and eac h circle represents a service.
compositions, to construct a Snap CSN ; then for each
snap CSN, we generate a Snap SSN
. Thus, w e can
consider the service ecosystem as the snap SSN series and its
evolution can be defined as the evolution of the snap SSN along
the time. The prediction task for the ecosystem evolution can be
transformed into a temporal network prediction task as:
Definition 3 (Temporal Network Prediction f or Service
Ecosystem Evolution): Given a series of consecutive time
intervals
and the snap SSN series ,predict
the services and their concurrence relations in the snap SSN in
the future.
In order to solve the network prediction task, we calculate
as the sum of the Corresponding adjacency ma-
trixes for all the snap S SNs in the past net wor k series (PNS)
(1)