SlideShare uma empresa Scribd logo
1 de 37
Baixar para ler offline
S-Cube Learning Package

         Service Discovery and Identification:
      Service Discovery and Task Models


             City University London (CITY)


Konstantinos Zachos, Angela Kounkou, Neil Maiden, CITY


                    www.s-cube-network.eu
Learning Package Categorization


                          S-Cube



    Engineering Principles, Techniques and Methodologies
             for Hybrid, Service-based Applications



            Service Discovery and Identification




            Service Discovery and Task Models
Learning Package Overview

 Problem description
 Task modeling
 Task-based service discovery
 Discussion
 Conclusions
Problem description

 Established context factors such as time and location have
  been applied to the design of Service-based applications
  (SBAs). User tasks however are an often overlooked factor in
  the engineering of SBAs
 Task Modeling is an established research topic in the field of
  Human-Computer Interaction (HCI). The models yielded can
  help run-time service environments to:
   – Select, compose and invoke services that explicitly fit with the goals
     and constraints of the user task
   – Overcome mismatches between user requests and descriptions of the
     software services to meet these requests

 We develop, codify and apply user task models to a service
  discovery environment for the discovery of best-fit services for
  a user task.
Learning Package Overview

 Problem description
 Task Modeling
 Task-based service discovery
 Discussion
 Conclusions
Task modeling Concepts

 Task modeling is the processing of known or inferred data
  about a user task into graphical, structured representations of
  user task knowledge: user task models. The aim is to
  understand what the users want to achieve and the activities
  performed in order to bring about the desired state.
 A user goal is a system user’s end result to be achieved
 Tasks are the activities that must be performed to achieve a
  user goal
 Actions are simple tasks that cannot be decomposed into
  sub-tasks
Task Modeling Notations

 Several task modeling notations exist including Hierarchical task
  Analysis (HTA); Goals, Operators, Methods, Selection rules
  (GOMS); and ConcurTaskTrees (CTT).
 We represent the user task models in our approach using the CTT
  task modeling formalism as it adopts an engineering approach to
  user task models, and its more complete and precise semantics
  can support automated service discovery more effectively than
  other user task modeling formalisms.
 CTT resources:
F. Paterno, C. Mancini, S. Meniconi, ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models, Proceedings of
    the IFIP TC13 International Conference on Human-Computer Interaction, pp. 362-369, 1997


D. Sinnig, M. Wurdel, P. Forbrig, P. Chalin, and F. Khendek, Practical Extensions for Task Models, Proceedings of the Sixth
    International Workshop on TAsk MOdels and DIAgrams (TAMODIA'07), Lecture Notes in Computer Science Vol. 4849,
    Springer, Toulouse, France, 2007
Task-based service discovery

   Two-stage approach to task-based service discovery:
    – User task model specification
    – Discovery process
1 - User Task Model Specification

• The user task model defines a
  reusable task structure that
  encapsulates well-defined
  functionality for a recurrent design
  problem

• Key elements of our user task
  models’ schema include:
   • User task and goal description
   • CTT task model
   • Service class description
User Task and Goal Description

 Each user task is specified with natural language descriptions
  of the task in context and the associated user goal.
 Example: task and associated user goal for the user task
  Calculate a distance

             Name        Calculate distance
             Task        Compute and output the
                         distance between two specified
                         geographical locations “A” and
                         “B”
             Resources   Coordinates for the
                         geographical locations
CTT model (1)

 The user task is then modeled using the CTT formalism.
Background: CTT notation.
This task modeling notation possesses:
 A Hierarchical tree structure that decomposes higher level
  tasks into lower level subtask(s) that execute it.
 Types graphically depicting a task’s performance allocation:
  user task, application task, interaction task (performed by both
  a human actor and a system interacting) and abstract task
  (complex tasks that do not fall into either of the other
  categories).
 Temporal operators describing the temporal relationships
  between tasks at a same hierarchical level
CTT model (2)

Background: CTT Task Types
 Application task: entirely executed by the system (e.g.
  display text)


 User task: performed entirely by the user (e.g. read text)


 Interaction task: performed by user interactions with the
  system (e.g. edit text)


 Abstract task: require complex actions and do not
  completely fall into one of the previous categories
CTT model (3)

Background: CTT temporal operators
 Enabling                            T1 >> T2
 Enabling with information passing   T1 [ ]>> T2
 Disabling                           T1 [> T2
 Interruption                        T1 |> T2
 Choice                              T1 [ ] T2
 Concurrency                         T1 ||| T2
 Optionality                         [T]
 Iteration                           T1* or T1{n}
CTT model (4)

Background: developing a CTT
 Decompose tasks into subtasks
 Identify the temporal relationships between tasks at the same
  level of the hierarchy
 Identify objects (entities manipulated to perform tasks) and
  the related associated actions
CTT model – Calculate Distance example (1)




Note: diagram drawn in the ConcurTaskTree Environment (CTTE)
CTT model – Calculate Distance example (2)


Notes – CTT notation as applied in the example:
 Task hierarchy: the higher level task Calculate distance is decomposed
  into lower level subtasks that execute it: Input start, Enter destination,
  Submit data, Validate data, Compute distance, Display distance and View
  distance. The subtasks themselves can be decomposed further (e.g. Input
  start and Validate data)
 Types: graphical syntax elements indicate each of the tree nodes’ types;
  for instance interaction tasks (  )comprise Enter destination, Submit
  data, View distance, Accept current location and Enter start.
 Temporal operators: the relationships between tasks at a same
  hierarchical level and their occurrence in time are described. For example,
  Enter destination enables and passes on information (here, the destination
  elicited) to Submit data, which in turn enables and inform the subtask
  Validate data as described by the operator []>>
Association to service classes

 Each user task model associates each application subtask described in a
  CTT model to one or more classes of software service.
 We associate service classes to user task models based on systematic
  analysis by people with domain expertise using the following steps:
    – systematically explore each pair-wise association between a user task and
      service class
    – make a design decision as to whether an application sub-task could be wholly
      or partially implemented using a software service of that class
    – Create an association between the sub-task and service class if enhancement
      was agreed to take place.
 Returning to our example Calculate Distance with the application sub-task
  Validate data, we can associate it to services of the class DataValidation
  because one or more such services could be reasonably invoked by a
  service-based application.
Service class description

 Each service class associated with a user task model is
  described using neutral terms sourced from online
  encyclopedias to avoid unintended bias during service
  discovery.
 Continuing the
  DataValidation example,
  the present table reports
  the DataValidation class’ s
  functional description taken
  from the source concept
  definition, and a list of
  operations derived from
  action terms or verbs in the
  concept description.
2 – End user task-based service discovery
Task-based service discovery process

Background: original service discovery approach
 SeCSE service discovery environment as the platform upon
  which we design and implement the S-Cube approach
 Expansion and Disambiguation Discovery Engine (EDDiE)
  formulates service queries from use case and requirements
  specifications expressed in structured natural language
 EDDiE can be configured to formulate the queries using:
      – information retrieval techniques (full – EDDiE)
      – keyword matching techniques (EDDiE-lite).

 More information on EDDiE:
K. Zachos, N.A.M. Maiden, S. Jones, X. Zhu, Discovering Web Services To Specify More Complete System Requirements,Proc.
    19th Conference on Advanced Information System Engineering (CAiSE'07), pp.142-157, 2007.
Task-based service discovery process

Background: full-EDDiE
 Full-EDDiE algorithm components:
   – Natural Language Processing: the service query is divided into sentences,
     tokenized, and part-of-speech tagged and modified to include each term’s
     morphological root (e.g. driving to drive; drivers to driver).
   – Word Sense Disambiguation: disambiguate each term by defining its
     correct sense and tagging it with that sense (e.g. defining a driver to be a
     vehicle rather than a type of golf club).
   – Query Expansion: expand each term with other terms that have similar
     meaning to increase the likelihood of a match with a service description
     (e.g. driver is synonymous with motorist which is also then included in the
     query).
   – Service Matching: match all expanded and sense-tagged query terms to a
     similar set of terms that describe each candidate service, expressed using
     a service description.
Task-based service discovery process

Background: EDDiE-lite
 The EDDiE-lite algorithm only implement 2 of the 4 EDDiE
  components: Natural Language Processing and Service
  Matching
 Full-EDDiE undertakes service discovery with term expansion
  and EDDiE-Lite undertakes it with no term expansion.
        Discovery Activities       EDDiE-Lite   Full-EDDiE

     Natural Language Processing       ✔            ✔

      Word Sense Disambigation                      ✔


          Query Expansion                           ✔

           Service Matcher             ✔            ✔
Task based service discovery

 Task-Based algorithm TEDDiE extends the original EDDiE
  algorithm with two additional steps to discover services by
  matching terms describing the user problem to user task
  models that, in turn, are used to reformulate the service
  queries.
 Both versions of EDDiE are extended with a catalogue of
  class-level user task models that link application sub-tasks to
  classes of service solution.
 As with EDDiE, there exist two configurations of TEDDiE:
   – Full TEDDiE use information retrieval techniques to add domain
     knowledge to service queries
   – TEDDiE-lite use simple keyword-matching
Task based service discovery




Service discovery algorithm enhanced with user task knowledge
Task based service discovery

 TEDDiE algorithm components:
  – Natural Language Processing
  – Word Sense Disambiguation (full-EDDiE only)
  – Query Expansion (full-EDDiE only)
  – Query Matching to User Task Models: matches a service query to
    the natural language description of each user task model in the
    catalogue, resulting in an ordered set of retrieved user task models
  – Query Reformulation: extracts terms from the descriptions of service
    classes associated with each application sub-task for retrieved user
    task model to generate new service queries. The reformulation
    implements two activities: (i) extend the original service query with the
    new terms extracted from the user task model; (ii) replace the service
    query with the new terms extracted from the user task model.
  – Service Matching
Task based service discovery

Recap: activities associated with each discovery strategy
TEDDiE                    Discovery activities                                      Strategies
 step                                                                 No term Expansion   Term Expansion
                                                                      TEDDiE-Lite         Full-TEDDiE
                                                                      Replace   Extend    Replace   Extend
  1      Natural language processing of original service query          ✔           ✔     ✔         ✔
  1      Word sense disambiguation of original service query                              ✔         ✔
  1      Query expansion of original service query                                        ✔         ✔
  1      Match query to user task models                              ✔         ✔         ✔         ✔
  2      Natural language processing of each service class            ✔         ✔         ✔         ✔
         description
  2      Word sense disambiguation of terms of each service class                         ✔         ✔
         description
  2      Query expansion of terms of each service class description                       ✔         ✔
  2      Reformulating service queries by replacing terms             ✔                   ✔
  2      Reformulating service queries by extending terms                       ✔                   ✔
  2      Service matching with reformulated service queries           ✔         ✔         ✔         ✔
Task based service discovery example (1)

  Consider the following initial service query:
        The user sends a journey planning request with details about
         the start, end point and travel preferences for his journey.


  Full-TEDDiE extracts query terms from the original service
   query, i.e.

       Q’ = [journey, travel, preference, user, start, end point, plan, send],


  The algorithm generates new query terms after the application
   of term expansion, e.g.:

            Q’’ = [termination, commence, direction, move, place, go].
Task based service discovery example (2)



  The algorithm then matches the query consisting of both Q’
   and Q’’ to the user task models catalogue. Assume that one
   retrieved models is Calculate a distance, with an associated
   service class Route planning software:

         Route planning software is a computer software programme,
         designed to plan a (optimal) route between two geographical
      locations using a journey planning engine, typically specialised for
     road networks as a road route planner. It can typically provide a list
     of places one will pass by, with crossroads and directions that must
      be followed, road numbers, distances, etc. It also usually provides
            an interactive map with a suggested route marked on it.
Task based service discovery example (3)

  Full-TEDDiE implements extend query reformulation that then
   generates the following original and expanded service class
   terms:
         S’ = [direction, crossroads, location, distance, road, map,
         suggest]
         S’’ = [way, itinerary, calculation, travel by, path, motor, travel]
  Finally, with this service class information TEDDiE generates
   and fires a reformulated service query Q based on the extend
   query reformulation such that Q = {Q’, Q’’, S’, S’’}

      Q = {[journey, travel, preference, user, start, end point, plan, send],
      [termination, commence, direction, move, place, go], [direction,
      crossroads, location, distance, road, map, suggest], [way, itinerary,
      calculation, travel by, path, motor, travel]}.
Learning Package Overview

 Problem description
 Task modeling
 Task-based service discovery
 Discussion
 Conclusions
Evaluation

Empirical evaluations were performed to assess TEDDiE’s most effective
 strategies and the effect of adding user task knowledge to service queries:
 a set of user task models were developed and extended with knowledge
  about classes of software service in the e-government domain
 human expert classified services in a target service registry that a series
  of pre-defined service queries should retrieve as relevant
 service queries were fired at the target service registry
 results were collected and analysed to investigate the algorithms’
  performance
    – statistical measures used included the computed arithmetic means of the totals of
      relevant and irrelevant retrieved services and the precision, recall and balanced F-score
      measures of generated service queries
Evaluation results

 Current evaluation results suggest that effective strategies
  expand service queries with either user task or domain
  knowledge:
   – extending rather than replacing service queries with additional
     knowledge about user tasks improve the overall effectiveness of task-
     based service discovery
   – query reformulation with user tasks knowledge increase the number of
     relevant services retrieved by a service discovery only when
     comparing the lite versions of both algorithms (EDDiE and TEDDiE),
     but not the full ones
   – query reformulation with user tasks knowledge improve the overall
     correctness of retrieved services only when comparing the lite
     versions of both algorithms, but not the full ones
   – query reformulation with user tasks knowledge does not decrease the
     number of irrelevant services retrieved by a service discovery engine
Service classes

 service classes descriptions are pivotal to effective service
  query reformulation and retrieval
 using unaltered text from publicly-available encyclopedias is
  an arguably weak approach to describing service classes
  associated to application sub-tasks
 TEDDiE’s precision, recall and balanced F-score measures
  may be increased through an improved description of service
  classes in user task models, possibly through:
   – more thorough specification of service classes description terms
   – use of more formal languages and ontologies with which to describe
     service classes.
User task models

 No independent validation of the user task models was
  undertaken for the empirical evaluation
 user task models specification may be extended by exploiting
  other user task model semantics, such as resource
  descriptions, in order to enrich service queries and temporal
  associations between sub-tasks.
 User task models’ development effort:
   – Generating and codifying user task knowledge in models has an
     associated cost not incurred with available on-line thesauri
   – service queries are not restricted to tasks that instantiate the class-
     level user task models in a catalogue.
   – User task models need to offer more explicit support in order to offset
     their development cost.
Learning Package Overview

 Problem description
 Task modeling
 Task-based service discovery
 Discussion
 Conclusions
Summary

 User task models can be used to improve the discovery of services
  that explicitly fit with the goals and constraints of a user task
 Our approach to task-based service discovery involves the
  population of an online catalogue with extended user task models
  to support a discovery process comprising:
   – Natural Language Processing
   – Word Sense Disambiguation
   – Query Expansion
   – Query Matching to User Task Models
   – Query Reformulation
   – Service Matching

 Current results indicate research directions to refine the TEDDiE
  algorithm for improved performance over non-task-based discovery
Acknowledgements




      The research leading to these results has
      received funding from the European
      Community’s Seventh Framework
      Programme [FP7/2007-2013] under grant
      agreement 215483 (S-Cube).

Mais conteúdo relacionado

Mais procurados

11.similarity of inference face matching on angle oriented
11.similarity of inference face matching on angle oriented11.similarity of inference face matching on angle oriented
11.similarity of inference face matching on angle oriented
Alexander Decker
 
Similarity of inference face matching on angle oriented
Similarity of inference face matching on angle orientedSimilarity of inference face matching on angle oriented
Similarity of inference face matching on angle oriented
Alexander Decker
 
Image Segmentation Using Two Weighted Variable Fuzzy K Means
Image Segmentation Using Two Weighted Variable Fuzzy K MeansImage Segmentation Using Two Weighted Variable Fuzzy K Means
Image Segmentation Using Two Weighted Variable Fuzzy K Means
Editor IJCATR
 
A&D - Object Oriented Design using UML
A&D - Object Oriented Design using UMLA&D - Object Oriented Design using UML
A&D - Object Oriented Design using UML
vinay arora
 

Mais procurados (20)

Functional coverages (paper)
Functional coverages (paper)Functional coverages (paper)
Functional coverages (paper)
 
Ceis 4
Ceis 4Ceis 4
Ceis 4
 
Review and comparison of tasks scheduling in cloud computing
Review and comparison of tasks scheduling in cloud computingReview and comparison of tasks scheduling in cloud computing
Review and comparison of tasks scheduling in cloud computing
 
Kandemir Inferring Object Relevance From Gaze In Dynamic Scenes
Kandemir Inferring Object Relevance From Gaze In Dynamic ScenesKandemir Inferring Object Relevance From Gaze In Dynamic Scenes
Kandemir Inferring Object Relevance From Gaze In Dynamic Scenes
 
11.similarity of inference face matching on angle oriented
11.similarity of inference face matching on angle oriented11.similarity of inference face matching on angle oriented
11.similarity of inference face matching on angle oriented
 
Similarity of inference face matching on angle oriented
Similarity of inference face matching on angle orientedSimilarity of inference face matching on angle oriented
Similarity of inference face matching on angle oriented
 
Image Segmentation Using Two Weighted Variable Fuzzy K Means
Image Segmentation Using Two Weighted Variable Fuzzy K MeansImage Segmentation Using Two Weighted Variable Fuzzy K Means
Image Segmentation Using Two Weighted Variable Fuzzy K Means
 
F018113743
F018113743F018113743
F018113743
 
Mean Object Size Considering Average Waiting Latency in M/BP/1 System
Mean Object Size Considering Average Waiting Latency in M/BP/1 SystemMean Object Size Considering Average Waiting Latency in M/BP/1 System
Mean Object Size Considering Average Waiting Latency in M/BP/1 System
 
Sort joinpvldb12
Sort joinpvldb12Sort joinpvldb12
Sort joinpvldb12
 
An Efficient Frame Embedding Using Haar Wavelet Coefficients And Orthogonal C...
An Efficient Frame Embedding Using Haar Wavelet Coefficients And Orthogonal C...An Efficient Frame Embedding Using Haar Wavelet Coefficients And Orthogonal C...
An Efficient Frame Embedding Using Haar Wavelet Coefficients And Orthogonal C...
 
A280108
A280108A280108
A280108
 
Symbolic-Connectionist Representational Model for Optimizing Decision Making ...
Symbolic-Connectionist Representational Model for Optimizing Decision Making ...Symbolic-Connectionist Representational Model for Optimizing Decision Making ...
Symbolic-Connectionist Representational Model for Optimizing Decision Making ...
 
Further Analysis Of A Framework To Analyze Network Performance Based On Infor...
Further Analysis Of A Framework To Analyze Network Performance Based On Infor...Further Analysis Of A Framework To Analyze Network Performance Based On Infor...
Further Analysis Of A Framework To Analyze Network Performance Based On Infor...
 
3ways to improve semantic segmentation
3ways to improve semantic segmentation3ways to improve semantic segmentation
3ways to improve semantic segmentation
 
PB ITC
PB ITCPB ITC
PB ITC
 
A&D - Object Oriented Design using UML
A&D - Object Oriented Design using UMLA&D - Object Oriented Design using UML
A&D - Object Oriented Design using UML
 
OO Development 3 - Models And UML
OO Development 3 - Models And UMLOO Development 3 - Models And UML
OO Development 3 - Models And UML
 
ME/R model: A New approach of Data Warehouse Schema Design
ME/R model: A New approach of Data Warehouse Schema DesignME/R model: A New approach of Data Warehouse Schema Design
ME/R model: A New approach of Data Warehouse Schema Design
 
Semantic Annotation Framework For Intelligent Information Retrieval Using KIM...
Semantic Annotation Framework For Intelligent Information Retrieval Using KIM...Semantic Annotation Framework For Intelligent Information Retrieval Using KIM...
Semantic Annotation Framework For Intelligent Information Retrieval Using KIM...
 

Semelhante a S-CUBE LP: Service Discovery and Task Models

Modeling Search Computing Applications
Modeling Search Computing ApplicationsModeling Search Computing Applications
Modeling Search Computing Applications
Marco Brambilla
 
Software architectural patterns for
Software architectural patterns forSoftware architectural patterns for
Software architectural patterns for
ijcsit
 
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
cscpconf
 
Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...
csandit
 

Semelhante a S-CUBE LP: Service Discovery and Task Models (20)

Modeling Search Computing Applications
Modeling Search Computing ApplicationsModeling Search Computing Applications
Modeling Search Computing Applications
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
CAUCE - Model-driven development of ubiquitous computing environments
CAUCE - Model-driven development of ubiquitous computing environmentsCAUCE - Model-driven development of ubiquitous computing environments
CAUCE - Model-driven development of ubiquitous computing environments
 
Visualizing Software Architecture Effectively in Service Description
Visualizing Software Architecture Effectively in Service DescriptionVisualizing Software Architecture Effectively in Service Description
Visualizing Software Architecture Effectively in Service Description
 
RSDC (Reliable Scheduling Distributed in Cloud Computing)
RSDC (Reliable Scheduling Distributed in Cloud Computing)RSDC (Reliable Scheduling Distributed in Cloud Computing)
RSDC (Reliable Scheduling Distributed in Cloud Computing)
 
Software architectural patterns for
Software architectural patterns forSoftware architectural patterns for
Software architectural patterns for
 
Micro services Architecture with Vortex -- Part I
Micro services Architecture with Vortex -- Part IMicro services Architecture with Vortex -- Part I
Micro services Architecture with Vortex -- Part I
 
A Library Of Optimization Algorithms For Organizational Design
A Library Of Optimization Algorithms For Organizational DesignA Library Of Optimization Algorithms For Organizational Design
A Library Of Optimization Algorithms For Organizational Design
 
A Uniform Specification Of Mixed Reality Interface Components
A Uniform Specification Of Mixed Reality Interface ComponentsA Uniform Specification Of Mixed Reality Interface Components
A Uniform Specification Of Mixed Reality Interface Components
 
CS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT ICS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT I
 
D04573033
D04573033D04573033
D04573033
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture
 
A Comparative Analysis of Task Modeling Notations
A Comparative Analysis of Task Modeling NotationsA Comparative Analysis of Task Modeling Notations
A Comparative Analysis of Task Modeling Notations
 
Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014
 
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
 
Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...
 
Local Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMSLocal Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMS
 
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
 

Mais de virtual-campus

S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
virtual-campus
 
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical MetaphorS-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
virtual-campus
 
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
virtual-campus
 
S-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL ProgrammingS-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL Programming
virtual-campus
 
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical InterpreterS-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
virtual-campus
 
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
virtual-campus
 
S-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software DevelopmentS-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software Development
virtual-campus
 
S-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptationS-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptation
virtual-campus
 
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented SystemsS-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
virtual-campus
 
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
virtual-campus
 
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
virtual-campus
 
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency AnalysisS-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
virtual-campus
 
S-CUBE LP: Process Performance Monitoring in Service Compositions
S-CUBE LP: Process Performance Monitoring in Service CompositionsS-CUBE LP: Process Performance Monitoring in Service Compositions
S-CUBE LP: Process Performance Monitoring in Service Compositions
virtual-campus
 
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
virtual-campus
 
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event LogsS-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
virtual-campus
 
S-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA NegotiationS-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA Negotiation
virtual-campus
 
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service SelectionS-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
virtual-campus
 
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services OrchestrationsS-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
virtual-campus
 
S-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive AdaptationS-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive Adaptation
virtual-campus
 
S-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive AdaptationS-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive Adaptation
virtual-campus
 

Mais de virtual-campus (20)

S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
 
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical MetaphorS-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
 
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
 
S-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL ProgrammingS-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL Programming
 
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical InterpreterS-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
 
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
 
S-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software DevelopmentS-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software Development
 
S-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptationS-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptation
 
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented SystemsS-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
 
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
 
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
 
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency AnalysisS-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
 
S-CUBE LP: Process Performance Monitoring in Service Compositions
S-CUBE LP: Process Performance Monitoring in Service CompositionsS-CUBE LP: Process Performance Monitoring in Service Compositions
S-CUBE LP: Process Performance Monitoring in Service Compositions
 
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
 
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event LogsS-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
 
S-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA NegotiationS-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA Negotiation
 
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service SelectionS-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
 
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services OrchestrationsS-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
 
S-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive AdaptationS-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive Adaptation
 
S-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive AdaptationS-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive Adaptation
 

Último

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 

Último (20)

Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 

S-CUBE LP: Service Discovery and Task Models

  • 1. S-Cube Learning Package Service Discovery and Identification: Service Discovery and Task Models City University London (CITY) Konstantinos Zachos, Angela Kounkou, Neil Maiden, CITY www.s-cube-network.eu
  • 2. Learning Package Categorization S-Cube Engineering Principles, Techniques and Methodologies for Hybrid, Service-based Applications Service Discovery and Identification Service Discovery and Task Models
  • 3. Learning Package Overview  Problem description  Task modeling  Task-based service discovery  Discussion  Conclusions
  • 4. Problem description  Established context factors such as time and location have been applied to the design of Service-based applications (SBAs). User tasks however are an often overlooked factor in the engineering of SBAs  Task Modeling is an established research topic in the field of Human-Computer Interaction (HCI). The models yielded can help run-time service environments to: – Select, compose and invoke services that explicitly fit with the goals and constraints of the user task – Overcome mismatches between user requests and descriptions of the software services to meet these requests  We develop, codify and apply user task models to a service discovery environment for the discovery of best-fit services for a user task.
  • 5. Learning Package Overview  Problem description  Task Modeling  Task-based service discovery  Discussion  Conclusions
  • 6. Task modeling Concepts  Task modeling is the processing of known or inferred data about a user task into graphical, structured representations of user task knowledge: user task models. The aim is to understand what the users want to achieve and the activities performed in order to bring about the desired state.  A user goal is a system user’s end result to be achieved  Tasks are the activities that must be performed to achieve a user goal  Actions are simple tasks that cannot be decomposed into sub-tasks
  • 7. Task Modeling Notations  Several task modeling notations exist including Hierarchical task Analysis (HTA); Goals, Operators, Methods, Selection rules (GOMS); and ConcurTaskTrees (CTT).  We represent the user task models in our approach using the CTT task modeling formalism as it adopts an engineering approach to user task models, and its more complete and precise semantics can support automated service discovery more effectively than other user task modeling formalisms.  CTT resources: F. Paterno, C. Mancini, S. Meniconi, ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models, Proceedings of the IFIP TC13 International Conference on Human-Computer Interaction, pp. 362-369, 1997 D. Sinnig, M. Wurdel, P. Forbrig, P. Chalin, and F. Khendek, Practical Extensions for Task Models, Proceedings of the Sixth International Workshop on TAsk MOdels and DIAgrams (TAMODIA'07), Lecture Notes in Computer Science Vol. 4849, Springer, Toulouse, France, 2007
  • 8. Task-based service discovery  Two-stage approach to task-based service discovery: – User task model specification – Discovery process
  • 9. 1 - User Task Model Specification • The user task model defines a reusable task structure that encapsulates well-defined functionality for a recurrent design problem • Key elements of our user task models’ schema include: • User task and goal description • CTT task model • Service class description
  • 10. User Task and Goal Description  Each user task is specified with natural language descriptions of the task in context and the associated user goal.  Example: task and associated user goal for the user task Calculate a distance Name Calculate distance Task Compute and output the distance between two specified geographical locations “A” and “B” Resources Coordinates for the geographical locations
  • 11. CTT model (1)  The user task is then modeled using the CTT formalism. Background: CTT notation. This task modeling notation possesses:  A Hierarchical tree structure that decomposes higher level tasks into lower level subtask(s) that execute it.  Types graphically depicting a task’s performance allocation: user task, application task, interaction task (performed by both a human actor and a system interacting) and abstract task (complex tasks that do not fall into either of the other categories).  Temporal operators describing the temporal relationships between tasks at a same hierarchical level
  • 12. CTT model (2) Background: CTT Task Types  Application task: entirely executed by the system (e.g. display text)  User task: performed entirely by the user (e.g. read text)  Interaction task: performed by user interactions with the system (e.g. edit text)  Abstract task: require complex actions and do not completely fall into one of the previous categories
  • 13. CTT model (3) Background: CTT temporal operators  Enabling T1 >> T2  Enabling with information passing T1 [ ]>> T2  Disabling T1 [> T2  Interruption T1 |> T2  Choice T1 [ ] T2  Concurrency T1 ||| T2  Optionality [T]  Iteration T1* or T1{n}
  • 14. CTT model (4) Background: developing a CTT  Decompose tasks into subtasks  Identify the temporal relationships between tasks at the same level of the hierarchy  Identify objects (entities manipulated to perform tasks) and the related associated actions
  • 15. CTT model – Calculate Distance example (1) Note: diagram drawn in the ConcurTaskTree Environment (CTTE)
  • 16. CTT model – Calculate Distance example (2) Notes – CTT notation as applied in the example:  Task hierarchy: the higher level task Calculate distance is decomposed into lower level subtasks that execute it: Input start, Enter destination, Submit data, Validate data, Compute distance, Display distance and View distance. The subtasks themselves can be decomposed further (e.g. Input start and Validate data)  Types: graphical syntax elements indicate each of the tree nodes’ types; for instance interaction tasks ( )comprise Enter destination, Submit data, View distance, Accept current location and Enter start.  Temporal operators: the relationships between tasks at a same hierarchical level and their occurrence in time are described. For example, Enter destination enables and passes on information (here, the destination elicited) to Submit data, which in turn enables and inform the subtask Validate data as described by the operator []>>
  • 17. Association to service classes  Each user task model associates each application subtask described in a CTT model to one or more classes of software service.  We associate service classes to user task models based on systematic analysis by people with domain expertise using the following steps: – systematically explore each pair-wise association between a user task and service class – make a design decision as to whether an application sub-task could be wholly or partially implemented using a software service of that class – Create an association between the sub-task and service class if enhancement was agreed to take place.  Returning to our example Calculate Distance with the application sub-task Validate data, we can associate it to services of the class DataValidation because one or more such services could be reasonably invoked by a service-based application.
  • 18. Service class description  Each service class associated with a user task model is described using neutral terms sourced from online encyclopedias to avoid unintended bias during service discovery.  Continuing the DataValidation example, the present table reports the DataValidation class’ s functional description taken from the source concept definition, and a list of operations derived from action terms or verbs in the concept description.
  • 19. 2 – End user task-based service discovery
  • 20. Task-based service discovery process Background: original service discovery approach  SeCSE service discovery environment as the platform upon which we design and implement the S-Cube approach  Expansion and Disambiguation Discovery Engine (EDDiE) formulates service queries from use case and requirements specifications expressed in structured natural language  EDDiE can be configured to formulate the queries using: – information retrieval techniques (full – EDDiE) – keyword matching techniques (EDDiE-lite).  More information on EDDiE: K. Zachos, N.A.M. Maiden, S. Jones, X. Zhu, Discovering Web Services To Specify More Complete System Requirements,Proc. 19th Conference on Advanced Information System Engineering (CAiSE'07), pp.142-157, 2007.
  • 21. Task-based service discovery process Background: full-EDDiE  Full-EDDiE algorithm components: – Natural Language Processing: the service query is divided into sentences, tokenized, and part-of-speech tagged and modified to include each term’s morphological root (e.g. driving to drive; drivers to driver). – Word Sense Disambiguation: disambiguate each term by defining its correct sense and tagging it with that sense (e.g. defining a driver to be a vehicle rather than a type of golf club). – Query Expansion: expand each term with other terms that have similar meaning to increase the likelihood of a match with a service description (e.g. driver is synonymous with motorist which is also then included in the query). – Service Matching: match all expanded and sense-tagged query terms to a similar set of terms that describe each candidate service, expressed using a service description.
  • 22. Task-based service discovery process Background: EDDiE-lite  The EDDiE-lite algorithm only implement 2 of the 4 EDDiE components: Natural Language Processing and Service Matching  Full-EDDiE undertakes service discovery with term expansion and EDDiE-Lite undertakes it with no term expansion. Discovery Activities EDDiE-Lite Full-EDDiE Natural Language Processing ✔ ✔ Word Sense Disambigation ✔ Query Expansion ✔ Service Matcher ✔ ✔
  • 23. Task based service discovery  Task-Based algorithm TEDDiE extends the original EDDiE algorithm with two additional steps to discover services by matching terms describing the user problem to user task models that, in turn, are used to reformulate the service queries.  Both versions of EDDiE are extended with a catalogue of class-level user task models that link application sub-tasks to classes of service solution.  As with EDDiE, there exist two configurations of TEDDiE: – Full TEDDiE use information retrieval techniques to add domain knowledge to service queries – TEDDiE-lite use simple keyword-matching
  • 24. Task based service discovery Service discovery algorithm enhanced with user task knowledge
  • 25. Task based service discovery  TEDDiE algorithm components: – Natural Language Processing – Word Sense Disambiguation (full-EDDiE only) – Query Expansion (full-EDDiE only) – Query Matching to User Task Models: matches a service query to the natural language description of each user task model in the catalogue, resulting in an ordered set of retrieved user task models – Query Reformulation: extracts terms from the descriptions of service classes associated with each application sub-task for retrieved user task model to generate new service queries. The reformulation implements two activities: (i) extend the original service query with the new terms extracted from the user task model; (ii) replace the service query with the new terms extracted from the user task model. – Service Matching
  • 26. Task based service discovery Recap: activities associated with each discovery strategy TEDDiE Discovery activities Strategies step No term Expansion Term Expansion TEDDiE-Lite Full-TEDDiE Replace Extend Replace Extend 1 Natural language processing of original service query ✔ ✔ ✔ ✔ 1 Word sense disambiguation of original service query ✔ ✔ 1 Query expansion of original service query ✔ ✔ 1 Match query to user task models ✔ ✔ ✔ ✔ 2 Natural language processing of each service class ✔ ✔ ✔ ✔ description 2 Word sense disambiguation of terms of each service class ✔ ✔ description 2 Query expansion of terms of each service class description ✔ ✔ 2 Reformulating service queries by replacing terms ✔ ✔ 2 Reformulating service queries by extending terms ✔ ✔ 2 Service matching with reformulated service queries ✔ ✔ ✔ ✔
  • 27. Task based service discovery example (1)  Consider the following initial service query: The user sends a journey planning request with details about the start, end point and travel preferences for his journey.  Full-TEDDiE extracts query terms from the original service query, i.e. Q’ = [journey, travel, preference, user, start, end point, plan, send],  The algorithm generates new query terms after the application of term expansion, e.g.: Q’’ = [termination, commence, direction, move, place, go].
  • 28. Task based service discovery example (2)  The algorithm then matches the query consisting of both Q’ and Q’’ to the user task models catalogue. Assume that one retrieved models is Calculate a distance, with an associated service class Route planning software: Route planning software is a computer software programme, designed to plan a (optimal) route between two geographical locations using a journey planning engine, typically specialised for road networks as a road route planner. It can typically provide a list of places one will pass by, with crossroads and directions that must be followed, road numbers, distances, etc. It also usually provides an interactive map with a suggested route marked on it.
  • 29. Task based service discovery example (3)  Full-TEDDiE implements extend query reformulation that then generates the following original and expanded service class terms: S’ = [direction, crossroads, location, distance, road, map, suggest] S’’ = [way, itinerary, calculation, travel by, path, motor, travel]  Finally, with this service class information TEDDiE generates and fires a reformulated service query Q based on the extend query reformulation such that Q = {Q’, Q’’, S’, S’’} Q = {[journey, travel, preference, user, start, end point, plan, send], [termination, commence, direction, move, place, go], [direction, crossroads, location, distance, road, map, suggest], [way, itinerary, calculation, travel by, path, motor, travel]}.
  • 30. Learning Package Overview  Problem description  Task modeling  Task-based service discovery  Discussion  Conclusions
  • 31. Evaluation Empirical evaluations were performed to assess TEDDiE’s most effective strategies and the effect of adding user task knowledge to service queries:  a set of user task models were developed and extended with knowledge about classes of software service in the e-government domain  human expert classified services in a target service registry that a series of pre-defined service queries should retrieve as relevant  service queries were fired at the target service registry  results were collected and analysed to investigate the algorithms’ performance – statistical measures used included the computed arithmetic means of the totals of relevant and irrelevant retrieved services and the precision, recall and balanced F-score measures of generated service queries
  • 32. Evaluation results  Current evaluation results suggest that effective strategies expand service queries with either user task or domain knowledge: – extending rather than replacing service queries with additional knowledge about user tasks improve the overall effectiveness of task- based service discovery – query reformulation with user tasks knowledge increase the number of relevant services retrieved by a service discovery only when comparing the lite versions of both algorithms (EDDiE and TEDDiE), but not the full ones – query reformulation with user tasks knowledge improve the overall correctness of retrieved services only when comparing the lite versions of both algorithms, but not the full ones – query reformulation with user tasks knowledge does not decrease the number of irrelevant services retrieved by a service discovery engine
  • 33. Service classes  service classes descriptions are pivotal to effective service query reformulation and retrieval  using unaltered text from publicly-available encyclopedias is an arguably weak approach to describing service classes associated to application sub-tasks  TEDDiE’s precision, recall and balanced F-score measures may be increased through an improved description of service classes in user task models, possibly through: – more thorough specification of service classes description terms – use of more formal languages and ontologies with which to describe service classes.
  • 34. User task models  No independent validation of the user task models was undertaken for the empirical evaluation  user task models specification may be extended by exploiting other user task model semantics, such as resource descriptions, in order to enrich service queries and temporal associations between sub-tasks.  User task models’ development effort: – Generating and codifying user task knowledge in models has an associated cost not incurred with available on-line thesauri – service queries are not restricted to tasks that instantiate the class- level user task models in a catalogue. – User task models need to offer more explicit support in order to offset their development cost.
  • 35. Learning Package Overview  Problem description  Task modeling  Task-based service discovery  Discussion  Conclusions
  • 36. Summary  User task models can be used to improve the discovery of services that explicitly fit with the goals and constraints of a user task  Our approach to task-based service discovery involves the population of an online catalogue with extended user task models to support a discovery process comprising: – Natural Language Processing – Word Sense Disambiguation – Query Expansion – Query Matching to User Task Models – Query Reformulation – Service Matching  Current results indicate research directions to refine the TEDDiE algorithm for improved performance over non-task-based discovery
  • 37. Acknowledgements The research leading to these results has received funding from the European Community’s Seventh Framework Programme [FP7/2007-2013] under grant agreement 215483 (S-Cube).