semantics enriched service environments
DESCRIPTION
PDF with slide notes to accompany my presentation.TRANSCRIPT
Wednesday, August 12, 2009
Wednesday, August 12, 2009
Wednesday, August 12, 2009
Homer wants to drive from Athens, GA to NYC.
Wednesday, August 12, 2009
and would like to have his favorite burger all through the way.
Wednesday, August 12, 2009
and would like to have his favorite burger all through the way.
Wednesday, August 12, 2009
and would like to have his favorite burger all through the way.
Wednesday, August 12, 2009
He drives to the apple store, gets his iPhone and excitedly downloads the aroundme application that allows him to find restaurants near him.
Wednesday, August 12, 2009
and then realizes that he has to do too much before he can find a mcdonalds!!
Wednesday, August 12, 2009
he sits to create his own application coz he has heard that even 9 year olds can create apps.
Wednesday, August 12, 2009
but its not that easy for an average user!
How do we help Homer find his Big Mac?
Wednesday, August 12, 2009
Four
Wednesday, August 12, 2009
we break down this task into four steps
Wednesday, August 12, 2009
first is to find the right services that give Homer all the information?
Wednesday, August 12, 2009
When one service responds, we need to send it to the next service. however, its not easy. so let us resolve the dispute here and make them talk
Wednesday, August 12, 2009
once we have made them talk, we will make sure that they are all integrated.
Wednesday, August 12, 2009
all is good, but when Homer is using the app, things can go wrong! how can we identify something when it happens?
SEMANTICS ENRICHED SERVICES ENVIRONMENT
Karthik Gomadam,Services Research Lab,
kno.e.sis center.http://gomadam.org
http://slideshare.net/namelessnerdhttp://twitter.com/namelessnerd
Wednesday, August 12, 2009
In this talk, I will discuss my research in addressing these four questions. We have attempted to address significant parts of each problem and have used semantic Web techniques for the same. First, I will very briefly talk about Service Oriented Architecture. SOA is at the heart of my work.
Wednesday, August 12, 2009
One can have many kinds of services: Data services that expose and share data; Software as a service: Where a software functionality can be remotely utilized; platform as a service: Where one can provide a suite of tools and expose an integration platform as a service. SOA allows us to create software that is easy to configure, flexible and agile.
Wednesday, August 12, 2009
Along with SOA, my work also employs semantic Web techniques. The Semantic Web is an evolving development of the World Wide Web in which the semantics of information and services on the web is defined, making it possible for the web to understand and satisfy the requests of people and machines to use the web content. In this work, we largely employ RDF as the framework for modeling metadata.
Wednesday, August 12, 2009
RDF expresses resources in the form of subject predicate object expressions, called triples. In the above example, the resource me is the subject, fullName is the predicate and Eric Miller is the object. Similar for other nodes and edges. RDF represents a labeled, directed multigraphs. For those of you unfamiliar, this example is from the wikipedia page of RDF and will be familiar when you look it up.
Semantic Web Services
= Semantic Web + Web Services
Wednesday, August 12, 2009
The other area of research that this work borrows from and has contributed towards is Semantic Web Services. Simply, put SWS as it is called is adding semantics to Web services. There are many approaches to do this.
Semantic Web / Semantic Models
Wednesday, August 12, 2009
This bringing together of SW and WS can be done in two ways. The first one is where, Services are added into semantic Web.
Semantic Web / Semantic Models
Services
Wednesday, August 12, 2009
This bringing together of SW and WS can be done in two ways. The first one is where, Services are added into semantic Web.
Service aspects represented in semantic models
Wednesday, August 12, 2009
In doing so, we represent aspects of a service such as its inputs, outputs, operations using semantic models.
OWL -S
Wednesday, August 12, 2009
Significant in this is OWL-S. In OWL-S, there is a semantic model to capture the profile of a service read from picture. relies on description logic.
WSMO
Goals, Ontologies, Mediators, Web Services
Wednesday, August 12, 2009
• Goals - The client's objectives when consulting a Web Service.• Ontologies - A formal Semantic description of the information used by all other components.• Mediators - Connectors between componentes with mediation facilities. Provides interoperability between different ontologies.• WebServices - Semantic description of Web Services. May include functional (Capability) and usage (Interface) descriptions. Relies
on F-Logic.
Semantic Web / Semantic Models
Services
Wednesday, August 12, 2009
The second approach is one where we ground service descriptions in semantic metadata. This is a bottom up approach and does not require a significant change in perception of a service.
METEOR-S
Wednesday, August 12, 2009
The METEOR-S project adopts this approach.
DataNot just model,
Express your data
FunctionalNon-
Functional
Execution
What does theservice offer?
Response time, Cost, QoS Metrics
Event Identification, Adaptation
Wednesday, August 12, 2009
We classify the semantics for services into four types.
Wednesday, August 12, 2009
And capture these within a service using modelrefernce, an extensibility attribute. WSDL schema allows extensibility attributes to represent additional properties beyond WSDL description. We define an extensibility attribute, called model reference that allows the addition to semantic metadata to WSDL elements.
Resourceful Web
Wednesday, August 12, 2009
These services exposed various resources on the Web such as feeds, APIS
described in X/HTML
Wednesday, August 12, 2009
easy for humans to read and understand but hard for machines. The problems related to description and interop still remain.
SA-REST*:
semantic microformat for resource markup.
*- Not an acronym
Wednesday, August 12, 2009
During standardization process of SAWSDL in 2005, we realized that there was an emerging paradigm of services, one that did not necessarily have a WSDL for description.
inline semantic annotations that refer
to a rich semantic model
Wednesday, August 12, 2009
SA-REST is an approach to add rich semantic markup to web resource descriptions. It builds on top of microformats, which have become an easy way to add semantic markups for calendar entries, contact information etc. I am currently editing the W3C submission of SA-REST, as a part of W3C incubation group for SWS. From these markups, one can extract RDF representation of the resource that can be used in search, data integration (when resources are used in a mashup). (Yahoo already has provision for using RDFa for extracting additional semantic meta information while crawling).Feedbooks allows you to browse using many facets such as theme, author, Let us look at an example markup of a simple Web page.
site level
Wednesday, August 12, 2009
Everything in this site is related to basketball. capture this information at this high level.
block level
iPhone app, unit conversion
iTunes store, song pricing
Wednesday, August 12, 2009
element level
Wednesday, August 12, 2009
really deep markups.. i want to markup for each thumnail link info about that episode
<a href=”*” class= “sem-rel” title=”metadata
about the episode”>
Wednesday, August 12, 2009
site-domain-rel
markup the domain of an entire site
markup to the entry page of the site
applies to /*
Wednesday, August 12, 2009
http://dooduh.com
<body class= ‘dooduh-main site-domain-rel’ title= ‘dbpedia:web2.0’>
Wednesday, August 12, 2009
We look at the body element of the entry to page ESPN’s basketball site and markup that says that the site content belongs to the domain described in this semantic model (in this case dbpedia’s basketball)
domain-rel
Wednesday, August 12, 2009
when used without site, domain-rel simply denotes the domain of a block of content. it is a block markup. in a site, when domain-rel is used in an inner resource, the domain of the resource is what is mentioned by this domain-rel
<p class=”domain-rel” title=”dbpedia:iphone”>
Wednesday, August 12, 2009
multiple domains
Wednesday, August 12, 2009
in our example, the article talks not just about iphone apps but also about unit conversion(which is what the app does)
<p class=”domain-rel” title=”dbpedia:iphone
dbpedia:unit_conversion”>
Wednesday, August 12, 2009
in this case, we enumerate the domains (no specific order)
sem-rel
Wednesday, August 12, 2009
not all links are created by us.. say we are blogrolling. there is no guarantee that the target resource of a link is marked up too.but being socially responsible, we want to throw some hints at what to expect off a link. also allows enumeration
<a href=”*” class= “sem-rel”
title=”metadata about the episode”>
Wednesday, August 12, 2009
In summary
Wednesday, August 12, 2009
Technology Centric Data and Control flow Service types Real world applications and services
OWL-S - DLWSMO - FLogic
IOPE Either or scenarios
SOAP / WSDLHaibo Zhao’s work on RESTful composition
Very few evaluations available
Technology independent - use any upper level modeling
language
Data flow: MediatabilityControl flow: Declarative composition
SOAP / WSDL and RESTful
APIHut, FoxyREST, Dooduh, AIR
Wednesday, August 12, 2009
We present a quick comparison of prior research and thesis. In the dissertation I have discussed this in detail. I have compared thesis of Dr. Paolucci, Dr. Mocan from WSMO, Dr. zhao from UGA (who worked on RESTful composition with only control flow considerations).
Wednesday, August 12, 2009
two months ago in my prospectus,
Wednesday, August 12, 2009
first is to find the right services that give Homer all the information?
Faceted API Search, Discovery and Mediatability
Wednesday, August 12, 2009
I presented our approach to Faceted API search, SWS discovery and data mediation. I will briefly discuss these contributions today.
Key word based paradigms
Interface based techniques
Wednesday, August 12, 2009
the keyword based search paradigm is extremely successful in the context of Web search, keywords are not sufficient to describe the desired functional and non-functional aspects of services.
The other paradigm supported by UDDI is interface-based discovery. In this approach, certain popular interfaces can be published in a registry and services conforming to them can be classified as such. This approach has the limitation that the interface itself is treated as a black box and there is no mechanism to compute relationships between the interfaces.
Our observation is that a number of services with similar functionality may have syntactically different interfaces, but similar or even equivalent semantic signatures.
Wednesday, August 12, 2009
The SA-REST annotations of the APIs used apiHUT taxonomy, illustrated here as the semantic model; the semantic model available in RDFS.
OUr search engine uses a hybrid of bayesian statistics, TF-IDF for text analysis and classification along with available semantic markups.
Serviut Rank
Wednesday, August 12, 2009
Serviut rank is our approach to ranking. It is very similar to the popular Page rank. Page rank is computed using inlinks nad outlinks. Serviut rank employs a similar strategy using the number of mashups that use a service as a positive referral, the total number of services that do a given task and total number of mashups. In addition to this, we also use the popularity of teh application itself. This is given by Alexa.
Query Precision RecallQuery1 0.89 0.75Query2 0.83 0.69Query3 0.54 0.71Query4 0.82 0.21
Table 1: Precision and Recall of ApiHutQuery pWeb ApiHut GoogleQuery1 0.48 0.89 0.20Query2 0.61 0.83 0.13Query3 0.25 0.54 0.23Query4 0.70 0.82 0.37
Table 1: Precision : Apihut, PWeb and Google
Wednesday, August 12, 2009
SEMRE: SEMantic services REGistry
Wednesday, August 12, 2009
Service Provider 1
private registry
Service Provider 2
private registry
Manufacturer 1 Manufacturer 2
Create and publish service
interface contract 1 in WSDL
Create and publish service
interface contract 2 in WSDL
Publish service 1 that
adhere to the service
interface contracts of
manufacturer 1
Publish service 2 that
adhere to the service
interface contracts of
manufacturer 2
Syntactic
interface
agreement
required!
Service Provider
Service Provider 1
private registry
Service Provider 2
private registry
Service Provider
Manufacturer 1 Manufacturer 1
Create and publish semantic
interface contract 1 in SAWSDL
annotated with concepts
from the ontology
Create and publish semantic
interface contract 2 in SAWSDL
annotated with concepts
from the ontology
Publish service 1 that
adhere to the ontologyPublish service 1 that
adhere to the ontology
Wednesday, August 12, 2009
Builds upon what is called as contract first. WSDL is the contract that binds a provider and a requestor. Rather than having a keyword driven contract, SEMRE adopts SAWSDL and enables a semantic contract. allows us to reason at the meta level while computing matches.
1. semantic interface signature (Semantic Template)
2. identify fulfillment set:
3. all fulfilling interfaces:
4. Interface relation in the set defined above
RSE , R!
E and RDE
Wednesday, August 12, 2009
parallel, each attribute fulfillment is computed independently. Map function computes this. reduce aggregates.
Matching comparison
153
87
42
0
20
40
60
80
100
120
140
160
180
Data Only Match Data and Operation Data and Operation and
Domain
Nu
mb
er
of
Matc
hes
Wednesday, August 12, 2009
Published 200 services of which 42 were relevant for a request. Our approach worked well. Data only did worst and data and operation didslightly better. We do note here that we tested on services that are completely annotated. More annotation meant more processing and this test set served well for timing tests. Also we note that all three approaches had the same benefit of high quality annotation
Wednesday, August 12, 2009
first is to find the right services that give Homer all the information?
Think Meta!!! “Anything you can do, I can do Meta”Charles Simonyi, Intention Software
Wednesday, August 12, 2009
This is our approach to data mediation. Charles Simonyi is the creator of M$ office, the computer scientist who went to space.
Wednesday, August 12, 2009
Rather than mediate between individual schemas, one can write reusable mediation scripts between concepts in the metamodel. Once individual schemas are annotated, one can create Lifting schema mapping and lowering schema mapping.
Many services for the same task
Wednesday, August 12, 2009
Ease of mediation
Wednesday, August 12, 2009
Our approach is to calculate the ease of mediation
Mediatability
Wednesday, August 12, 2009
Given two data models (schemas) how easy can a user mediate between the two?
Top down - Mediation Similarity
Wednesday, August 12, 2009
Compute the similarity of the two schemas. This is structural, and semantic.
Bottom up - Mediatability
Wednesday, August 12, 2009
Wednesday, August 12, 2009
User evals; asked to mediate between Yahoo Web, Image search, live search, google search and Flickr; System is conservative. Normal user: average user with some Web dev experience, expert user : apache XML Schema committers , hardcore mashup developers.
Wednesday, August 12, 2009
first is to find the right services that give Homer all the information?
Wednesday, August 12, 2009
In the next part of my talk, I will discuss our work on declarative based approach for integration
Declarative
Wednesday, August 12, 2009
Our approach to composition is declarative. By this we mean, the input to the composition can be richly described with additional parameters such as semantic annotations, semantic templates and a smashmaker DSL.
Semantic Templates
Wednesday, August 12, 2009
Collection of template terms
Wednesday, August 12, 2009
Wednesday, August 12, 2009
Snapshot ofRosettanetOntology
Semantic Template
RequestPurchaseOrder
PIP3A4
Input_Message
has_notification
PurchaseOrder_Input
has_input
PIP
ISA
PurchaseOrder_Output
Output_Message
notifies_event
has_output
Action_PIP Notification_PIP
Event
ISA
ISA
ISA
ServiceLevelMetaData (SLM)Category= NAICS:ElectronicsProductCategory= DUNS:RAMLocation= Athens,GA
SemanticOperation Template (SOPT1)Action= Rosetta:RequestPurchaseOrderInput= Rosetta:PurchaseOrder_InputOutput= Rosetta:PurchaseOrder_OutputOLP= {Encryption = RSA, ResponseTime< 5 Sec}
SemanticOperation Template (SOPT2)Action= Rosetta:CancelOrderInput= Rosetta:CancelOrder_InputOutput= Rosetta:CancelOrder_OutputOLP= {Encryption = RSA, ResponseTime< 5 Sec}
Legend
Operation Modelreference
Input Modelreference
OutputModelReference
CancelOrder
PIP3A4
CancelOrder_Input
CancelOrder_Output
ISA
ISA
ISAISA
has_outputhas_input
has_output
has_output
Template metadata
Requirement foroperation
Wednesday, August 12, 2009
Semantic templates are often more formal and have many enterprise quality features such as support for policy. So we will deviate a bitfrom Homer Simpson and look at a game manufacturer. In this example, talk about the template.
So what happens to Homer and his burger?
Wednesday, August 12, 2009
{
"smashup": {
"device": "iPhone",
"code": {
"title": "Address Finder",
"sketch": {
"service": {
"type": "component",
"resource":
"http://smashmaker.dooduh.com/operation/reversegeocode"
},
service": {
"type": "service-api",
"resource":
"http://smashmaker.dooduh.com/operation/returnAddress",
"endpoint": "http://dooduh.com/returnMickyDee.php",
"method": "GET",
"input-resource":"http://smashmaker.dooduh.com/datatype/address",
"input-param":"address"
},
"service": {
"type": "i-smashlet",
"resource":
"http://smashmaker.dooduh.com/operation/ismashlet",
"source":"http://smashmaker.dooduh.com/datatype/address"
},
"service": {
"type": "o-smashlet",
"resource":
"http://smashmaker.dooduh.com/operation/osmashlet",
"target":"http://smashmaker.dooduh.com/datatype/location-info"
},
"service":{
"type": "component",
"resource": "http://smashmaker.dooduh.com/operation/map"
}
}
}
}
Get current location
Find McD’s near location
Add to map
Wednesday, August 12, 2009
this is a declarative specification of a smart mashup in JSON. We chose JSON because, it is easier to generate this from a Web interface. The current platform does not have an UI as creating a UI like Yahoo Pipes would require a considerable amount of effort, that we hope to pursue once the middleware is stable. Going back to the example , explain the example.
Modeling an abstract Web service
Wednesday, August 12, 2009
Our approach to composition is generic and does not fundamentally differentiate between SOAP and RESTful services. We ground services to a common model, something we call an abstract Web service.
A collection of operationsEach operation is a collection of
1. Input2. Output
3. Preconditions4. Effects5. Faults
Wednesday, August 12, 2009
Composition: Check and Add
Wednesday, August 12, 2009
Check
Wednesday, August 12, 2009
Precondition of current operation holds, along with the semantics of the available data entails a valid input to the operation
Does the output of Restaurant service return location?
Wednesday, August 12, 2009
Add
Wednesday, August 12, 2009
Apply the transition function or the operation to the input and to the status flags of the state and transition to the next state.
Extract location (transition function) add to composition
Wednesday, August 12, 2009
plan is a DAG (Directed Acyclic Graph) of operations
Wednesday, August 12, 2009
ie it is a set of operations that given a goal and an initial state, applies the check and add operators until the goal is reached.
Graph plan
Wednesday, August 12, 2009
Many apporaches can be adopted. We adopt graph plan, since its sound and complete. That means, if there is a valid plan, we will find it.
What about DATA?
Wednesday, August 12, 2009
Conventional AI planning looks at Preconditions and effects. services have data
Semantic approach to check
Wednesday, August 12, 2009
AI planning does not mandate anything beyond regular string matching. we go one step further and employ logic based semantic matching / graph based.
Loops
Wednesday, August 12, 2009
Unique to our approach is data based loop generation. If the data is an enumeration, our planner generates a loop. For example in the iPhone app, each address location is mapped.
Data Mediation as a service
Wednesday, August 12, 2009
smashlets
Wednesday, August 12, 2009
Smashlets are a unique category of service that do data mediation. Going by our user driven approach, we allow users to share their mediation scripts using either SAWSDL or SA-REST annotation in APIHut. The task of data mediation is then similar to that of service discovery and check and add. user can specify a smashlet as an iSmashlet (input smashlet) or (oSmashlet) output smashlet. The notion of smashlets is something we verified very recently and is not in the dissertation. However, mediation as a service is discussed.
7.3. AUTOMATIC WEB SERVICE COMPOSITION August 11, 2009
is used this conversion would require a total of twelve conversion specifications. The advantage
of the intermediate model can be seen when there is another message added along with A. This
will double the number of conversion specifications if direct conversion is used. However if the
intermediate model is used it results only in the addition of two new conversion specifications. It
can be clearly seen that the intermediate model approach is the scalable mediation strategy.
Figure 7.3 we describe the different heterogeneities that can exist between two XML schemas
and how such heterogeneities can effect the mediations as discussed in Nagarajan et al. (48)
Figure 7.3: Different Heterogeneities
106
Wednesday, August 12, 2009
A big thanks to Meena for laying this out so clearly. We intend to publish this as a guide for people wanting to write smashlets. This will give them a clue about what kind of mediation can they do, how easy it is to mediate.
Wednesday, August 12, 2009
events
Wednesday, August 12, 2009
In a distributed environment like SOA, with many components events are common place.
Event of direct consequence
Wednesday, August 12, 2009
We classify events into two types: events of direct consquence. resulting from an action by the provider or the requester. such as event raised when location information is made available in our application. The location info is obtained asynchronously using a delegate protocol and when the info is available, the delegate raises an event.
Event of indirect consequence
Wednesday, August 12, 2009
something that we did not intend or cause. such as a network outage.
what matters and what doesn’t?
Wednesday, August 12, 2009
the last part of my talk deals with how we can identify what events matters to our objectives and what dont?
built over our declarative models
semantic template smashmaker DSL
Wednesday, August 12, 2009
extends semantic association computation
Wednesday, August 12, 2009
8.2. DEFINING THE !BPATH QUERY OPERATOR August 11, 2009
Figure 8.1: Identifying Events from semantic Template
discover semantic associations between different entities. The semantic association returned is
represented as a path between the entities in the ontology. There can be more than one association
between two entities. In such cases, the !path operator would return a set of paths. !path is de-
fined as !(ei, ej) = {pei!ej}. For example in the snapshot of the functional ontology in Figure ??,
!path(RequestPurchaseOrder, ShipmentConfirmation) would return the following two associations:
• RequestPurchaseOrder! is_followed_by ! QueryOrderStatus! has_notification !
Notify_Shipment! notifies_event ! ShipmentConfirmation (Ex.1)
• RequestPurchaseOrder ! has_notification ! Notify_Shipment ! notifies_event !
ShipmentConfirmation (Ex.2)
In the context of our work, we seek to identify all events that have semantic associations with the
functional requirements in the functional ontology and non-functional requirements in the non-
functional ontology. Hence we modified the !path operator to query between an entity and a class.
113
Wednesday, August 12, 2009
The enterprise space offers us a rich example. so we bid adieu to Homer’s burger here. however we will bring him back when we walk through the algorithm. Here we have 2 models, one a functional ontology that captures the different operations, and their protocols; the second is a non-functional ontology that captures various QoS metrics. We reusethe popular OWL-QoS coalition ontology for non-functional and RosettaNet for functional. The approach is to find out what the goal is and find the events modeled in the functional ontology related to that goal. Grab the event and look at the non-functional ontology. That will tell us what non-func properties are affected by this event. Check if any of those are in our requirements.
Path is a collection of vertices and edges in a graph
Wednesday, August 12, 2009
to calculate this association, we extend the rho operator, proposed by Kemafor in 2003.
!pathQueries an ontology and returns
a set of vertices and edges between two nodes AKA semantic association
Wednesday, August 12, 2009
bounds and constraints
Wednesday, August 12, 2009
however we need to get some bounds and constraints on rho
Large graphs - endless search - timeouts
Wednesday, August 12, 2009
bounds because in large graphs we can get into an endless search and that will leave running instances with timeouts
really not all paths lead to Rome!!!
Wednesday, August 12, 2009
we are not interested in all paths that are within a bound. For example, we want the path to contain atleast one edge that has a labelnotifies_event. otherwise that path tells us nothing about an event, and is not useful for our purpose. similarly there can be many other constraints.
Extend rho to find all paths between an entity and a class
Wednesday, August 12, 2009
as a first step, we extend rho operator to find paths between an entity and all entities belonging to a class.
We define a set of classes and relationships of interest
Wednesday, August 12, 2009
For example, we can define a set that has classes of operations, their inputs and the events raised. Such as
{maptask, coordinate, location, location obtained}{has input, has output, raises delegate}
Wednesday, August 12, 2009
Path satisfiability: If every node returned is in the set of classes and every relationship is
in the set of relationships.
Wednesday, August 12, 2009
{fetch location, gpsCoord, address, CLLocationDelegate}{has input, has output, raises delegate}
Wednesday, August 12, 2009
In the context of iPhone, we have a fetch location operation which is of type maptask, CLLocationDelegate the delegate that is raised when the async response is obtained.
Bounded constrained rho is one where all relationships statisfy the constraint and are bounded
Wednesday, August 12, 2009
{fetch location, gpsCoord, address, CLLocationDelegate}{has input, has output, raises delegate}
if we add a bound of 4 to this satisfying constraintthen this is a bounded constrained path of bounds 4
Wednesday, August 12, 2009
Identifying events
Wednesday, August 12, 2009
get the semantic annotation on the operation
EDC’s
Wednesday, August 12, 2009
the semantic annotation on the operation must be in any of the paths. so that is added to the constraint. Next is to add events that are related to this association. we can fix the bounds and get the events. the events are related to an operation concept by a set of relationships that can be known apriori. we add the relationships. events that belong to the bounded constrained path are events of interest.
get the concepts from the policy
EIC’s
Wednesday, August 12, 2009
EIC’s are obtained in a similar manner, but by using the non-functional requirements.
how relevant is an event?
Wednesday, August 12, 2009
not all events have the same relevance. relevance is defined as a function of the path length.
shortest path over an event path
Wednesday, August 12, 2009
we calculate the relevance by factoring the shortest path we got and the path of an event. This gives the relative importance of the event over the most important event.
events can affect many metrics
Wednesday, August 12, 2009
an event can affect many metrics. hence we compute the cumulative relevance of an event.
filtering
Wednesday, August 12, 2009
once this is done, we use normalization to identify events of relevance.
adjusting importance
Wednesday, August 12, 2009
once this is done, we use normalization to identify events of relevance.
fixed relevance adjustment
Wednesday, August 12, 2009
where we observe the reaction of the underlying system to an event and evaluate it against it calculated importance. if an event deemed non relevant causes a reaction every time, we add a fixed delta to its over all relevance. similarly we deduct delta for the other case.
variable/hybrid relevance adjustment
Wednesday, August 12, 2009
after the adjustment see how many events change status from relevant to non-relevant. if many events change, we are way off base. so adjust delta. keep checking this entropy and stop this adjustment if entropy is zero for a certain time interval.
8.4. EVALUATION August 11, 2009
Figure 8.2: Variation in the percentage of events identified with change in hop count before and
after feedback-based adjustment.
length of 6.
In the next experiment, we study the performance of our system by varying vary the total
number of events that are identified. We varied the total number of events identified from 100 to
900. The performance of our framework is illustrated in Figure 8.3 . It can be seen from Figure
8.3, that the number of iterations taken to reach the stability is more for the fixed approach than the
hybrid scheme for adjustment. In the hybrid approach, the value of the cut-off relevance is reduced
after each feedback iteration, increasing the number of events in the set of relevant events. The
number of iterations taken by each adjustment scheme is almost constant with change in the total
number of events. This is because both relevant set computation and feedback-based adjustment
are independent of the number of events.
Figure 8.3: Studying the performance of hybrid and fixed Adjustment schemes with variation in
the total number of events.
126
8.4. EVALUATION August 11, 2009
Our next experiment studies the performance of the system. In this experiment the percentage
of relevant events to the total number of events is changed and the impact of varying this on the
number iterations is studied. As illustrated in Figure 8.4, the time to reach stability increases with
the increase in the percentage of relevant events. This can be attributed to two reasons: - 1) the
higher percentage of relevant events can significantly reduce the number of events with a feedback
value of 0 in the set of relevant events and 2) as the percentage of relevant events increases, the
chances of more events which are classified as non-relevant by the framework, being actually
relevant goes up. When the number of events with a feedback value of 0 reduces, thei
nfactor in
the adjustment scheme described in Eq. 17, also reduces and this in effect lessens the change in
the cumulative relevance of the events in the non-relevant set after each feedback iteration. The
reduced change in the value of the cumulative relevance coupled with the increased number of
events classified as non-relevant by the framework, being actually relevant, increases the iterations
needed to stabilize the system.
Figure 8.4: Performance of hybrid and fixed adjustment schemes with variation in the percentage
of relevant events
The hybrid approach gives a better performance. However the variation to the cut-off rele-
vance can have an impact on the accuracy of the system. Our next set of experiments study the
accuracy of the system with respect to variations in the number of events and the percentage of
127
Wednesday, August 12, 2009
we compare how many iterations it takes for the system to stabilize in both the approaches. as we can see the hybrid approach since it constantly adjusts almost maintains a constant convergence time and always converges faster. the second experiment measures hte same metrics, this time varying the percentage of relevant events.
8.4. EVALUATION August 11, 2009
relevant events. The fourth experiment measures the variation in accuracy of both the feedback
Figure 8.5: Variation in the accuracy of feedback schemes with increase in the number of events.
schemes when the total number of events is changed. This is illustrated in Figure 8.5. The drop
in the precision of the hybrid approach with the increase in the total number of events is more
pronounced than that of the fixed approach. The adjustment made to the cutoff relevance in the
hybrid approach is responsible for this. This adjustment makes it possible for an event identified
as non-relevant by the feedback to manager, to be identified again as relevant by the framework.
The following example illustrates an anomaly in the hybrid approach to feedback-based ad-
justment. For the sake of this example, consider an event ei with cumulative relevance of 0.53. Let
the cut-off relevance to be 0.5. Let! be 0.05. The framework chooses ei as a relevant event. After
the first feedback iteration, ei is identified as non-relevant and its relevance is reduced to 0.48, by
Eq. 17. The set of relevant events is computed again. After the computation, let us assume for the
sake of this example, the new cut-off relevance to be 0.52. The adjusted relevance value of ei is
less than the cut-off relevance, making ei a non-relevant event. However, in the hybrid approach
we adjust the value of the cutoff relevance by !, reducing its value to 0.47. Now when the set of
relevant events is computed using this adjusted cutoff value, ei would be identified as relevant by
the framework, though the feedback indicated otherwise. This anomaly affects the accuracy of the
hybrid approach.
128
Wednesday, August 12, 2009
this experiment measures how any irrelavant events we find with both approaches for every relevant event. the flip side to the hybrid apporach is that on an average it finds more irrelvant events intially, as it tries to first find the optimal adjustment value.
conclusions
Wednesday, August 12, 2009
Environment
Wednesday, August 12, 2009
Rather than a specific problem, this dissertation outlines what is possible with what is out there today. we have created an environment that facilitates various tasks involved in creating a service oriented ecosystem. we have addressed the problems of discovery mediation composition and execution in a service type agnostic manner.
Contributions to standards community
Wednesday, August 12, 2009
We have been actively involved in standardization and have contributed in terms of standards (SAWSDL , SA-REST) as well as refernece implentations. By grounding our research in these standards, we have also demonstrated the usefulness and the values of these standards. Our prototypes have always demonstrated comparable performance in terms of scalability and better performance in terms of doing the job at hand.
marrying old school services with the cool restless RESTful crowd
Wednesday, August 12, 2009
We are one of the first to publish and implement a unifying search engine framework to search both Web APIs as well as conventional services.
social approach
Wednesday, August 12, 2009
By having user annotated services, sharing nad discovery in the context of mashups we have demonstrated the value of incorporatin gsocial computing in services computing.
tooling
Wednesday, August 12, 2009
beyond reference implementations, we have released open source tooling that is used in the community along with a bunch of Web based easy to use systems; we will soon release RESTful APIs (need to migrate to cloud) that will make it easier to use.
Dr. Amit Sheth, for letting me do what I wantfor the most part of my research. This is a priceless
feature of this work environment.
Dr. Lakshmish Ramaswamy for guiding me through my research including my first paper at ICWS 07.
Dr. Kunal Verma for mentoring me and for continued collaboration and friendship
Kaarthik Sivashanmugam for getting me started on Web services
Wednesday, August 12, 2009
there was a technological freedom and allowed me to play with all sorts of areas.
Wednesday, August 12, 2009
I wish to really thank Topher, Meena, Cartic and Ajith for making sure I stand here today. Ajith was and I hope will con
Badri Viswanathan Prof. Randy Pausch
Wednesday, August 12, 2009
Also thank two people who were instrumental in this progress who are not here with me. My very good friend Badri who convinced me to start this journey in 2002 and Dr. Randy Paush, from whom I learnt two valuable lessons. Brick walls are there to keep those who dont want it badly out and you beat the reaper not by living long and by living well and by inspiring people to live well.
Wednesday, August 12, 2009
and one more thing...
Wednesday, August 12, 2009
Wednesday, August 12, 2009
Wednesday, August 12, 2009
Wednesday, August 12, 2009
resourceful
many to many model eg: annotation
social contributions
APIHut and RESTful aspects goes towards incorporataion of social web as part of the service Web framework
Used this for lightweight services, same thing can be extended to WSDL / SAWSDL
Wiki based approaches.
and such .. last slide(s)
Wednesday, August 12, 2009
Here is Homer Simpson