SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
A linguistic approach for non-functional constraints
in a semantic SOA environment
Pierre Châtel
Thales Land & Joint Systems, Université Pierre et Marie Curie - Paris 6, LIP6

Isis Truck
LIASD, Université de Vincennes à Saint Denis - Paris 8

Jacques Malenfant
Université Pierre et Marie Curie - Paris 6, CNRS, UMR 7606 LIP6




                                                                                1
Research Topic

 Non-functional constraint handling in Semantic Service Oriented
 Architectures.

 The Service Oriented Architecture (SOA) is divided between:

  • Atomic feature producers, or (Web) services.

  • Atomic feature consumers, or (Web) processes.

 Semantic SOA:

  • Usually provides: service offers ⊕ high level business concepts, extracted
    from domain ontologies, published in registries.

  • We add: preferences between services non-functional properties, seen
    as “user semantics”.

 Application domains: any domain where a dynamic coordination of services
 under quality constraints and with some guarantees is needed.
                                                                                 2
Contents

1. Context


2. Preference Model


3. LCP-Net example


4. Related works


5. Conclusion




                      3
Context
SOA

 Functional properties of Web services:
  • Provided domain features.
  • Ex. for a car service: move, carry persons or goods, protect from weather,
    a specific type of car.
 Non-functional properties of Web services:
  • Service features execution modalities that affect the provided or perceived
    Quality of Service (QoS).
  • Ex. for a car service:
     - Maximal speed.
     - Tank capacity → traveling distance.
     - Number of gears.
     - Motor levels: temperature, oil, revolutions, ...

                                                                                  4
Context
Multi-Criteria Decision Making

 The decision being made, in this application context, is the dynamic linking of
 an abstract service invocation in a Web process to one of its physical
 implementation (i.e a specific Web service), presumably the best-suited
 one.


 Candidate services expose multiple non-functional properties, each one
 being a potentiel criterion for election of the best-suited service.


  • Static filtering of services on individual criterion constraints → partial order.


  • User preferences, between non-functional properties → total order.




                                                                                       5
Context
Impact on preference definition

 In our SOA-driven context:

  • Preferences must be easy to define since there are no preference modeling
    experts, nor many ressources to allocate for their elicitation.

   ➥ Some imprecision must be tolerated in preference models.

  • Variables are limited in preference models (at most ~ 10 variables).

  • Computation time for decision-making based on preferences is seen as
    relatively small compared to the subsequent networked service invocation.

 It leads to the following sought-after properties of the preference
 formalism:

  ✓It must be graphical to ease definition and computation.

  ✓It must be qualitative as a mean to deal with imprecision → linguistic
   values integration.
                                                                                6
Context
SemEUsE project

 SemEUsE = “Sémantique pour bus de services”

  • 3-year french ANR project, over €1M budget.

  • 6 partners: Thales, FT, EBM, LIP6, INSA, INRIA, INT.

 Implements “smart” web services orchestration...

  • by static service filtering on functional and non-functional properties.

  • by dynamic non-functional service selection.

 Dedicated late-binding components implements selection by binding
 each service call in a running process to a single candidate service extracted
 from a set of otherwise functionally-equivalent services, using:

  • Current QoS values of monitored services.

  • Statically defined preferences over QoS properties of services.
                                                                                  7
Context
SemEUsE framework




                    8
Context
SemEUsE framework

             S1        S3        S5

                  S2        S4




                                      8
Context
SemEUsE framework

             S1        S3        S5

                  S2        S4




                                      8
Context
SemEUsE framework
                                      Functional Service Filtering


             S1        S3        S5

                  S2        S4




                                                                     8
Context
SemEUsE framework
                                           Functional Service Filtering


             S1        S3        S5

                  S2        S4
                                      S1               S3             S5




                                                                           8
Context
SemEUsE framework
                                           Functional Service Filtering


             S1        S3        S5

                  S2        S4
                                      S1               S3             S5


                                      Non-Functional Service Filtering




                                                                           8
Context
SemEUsE framework
                                           Functional Service Filtering


             S1        S3        S5

                  S2        S4
                                      S1               S3             S5


                                      Non-Functional Service Filtering




                                               S1            S3




                                                                           8
Context
SemEUsE framework
                                                          Functional Service Filtering


             S1        S3        S5

                  S2        S4
                                                     S1               S3             S5


                                                     Non-Functional Service Filtering




                                                              S1            S3

                                                     Non-Functional Service Selection




                                      Current QoS
                                      of S1 and S3




                                                                                          8
Context
SemEUsE framework
                                                          Functional Service Filtering


             S1        S3        S5

                  S2        S4
                                                     S1               S3             S5


                                                     Non-Functional Service Filtering




                                                              S1            S3

                                                     Non-Functional Service Selection




                                      Current QoS
                                      of S1 and S3

                                                            Statically defined
                                                             Preferences


                                                                                          8
Context
SemEUsE framework
                                                          Functional Service Filtering


             S1        S3        S5

                  S2        S4
                                                     S1               S3             S5


                                                     Non-Functional Service Filtering




                                                              S1            S3

                                                     Non-Functional Service Selection


                                  S3




                                      Current QoS
                                      of S1 and S3

                                                            Statically defined
                                                             Preferences


                                                                                          8
Contents

1. Context


2. Preference model


3. LCP-Net example


4. Related works


5. Conclusion




                      9
Preference model
LCP-Nets

 “Linguistic Conditional Preference-Networks”, an extension of CP-Nets
 [Boutilier et al., 1999].

 Domain agnostic, but can be used for formal specification of preferences in
 our SOA context, in order to:

  • Reveal relative importance of non-functional properties.

  • Elicit preferred values for a specific QoS domain.

  • Indicate tradeoffs between non-functional properties.

 And is easy to understand, define, manipulate:

  • Qualitative model: linguistic terms for QoS values (e.g. none, full for
    Security) and preference degrees (e.g. very_low, ... , very_high) [Zadeh,
    1975; Herrera & Martínez, 2000].

  • Graphical model: nodes, edges and preference tables.
                                                                                10
Preference model
LCP-Net instance

 From static preferences...




     QoS for surveillance camera services :
     S = Security
     B = Bandwidth
     R = image Resolution




 ... to efficient decision-making system at runtime:

  • Utility tables mapped to fuzzy rule sets, as in fuzzy control.

  • Inputs as crisp or fuzzy measured values from monitored services.

  • Evaluation output as a crisp or linguistic (e.g. 2-tuple) utility value.
                                                                               11
Preference model
LCP-Net instance

 From static preferences...




     QoS for surveillance camera services :
                                                  &
     S = Security
     B = Bandwidth
     R = image Resolution




 ... to efficient decision-making system at runtime:

  • Utility tables mapped to fuzzy rule sets, as in fuzzy control.

  • Inputs as crisp or fuzzy measured values from monitored services.

  • Evaluation output as a crisp or linguistic (e.g. 2-tuple) utility value.
                                                                               11
Contents

1. Context


2. Preference Model


3. LCP-Net example


4. Related works


5. Conclusion




                      12
LCP-Net Example
In 5 steps

 An example of a Security Camera preference evaluation, broke down into 5
 key steps for selection of the best-suited service:

   Step 1 - QoS values injection

   Step 2 - Local utility values inference

   Step 3 - Nodes weights computation

   Step 4 - Global utility value computation

   Step 5 - Service comparison and selection




                                                                            13
LCP-Net Example
Step 1 - QoS values injection

 Multiple QoS Values retrieved from monitoring layer can be of two kinds:

  • Crisp QoS values → “Singleton” fuzzy subset.
                                                                                1   LOW         MEDIUM              HIGH




    Bandwidth                           Bandwidth
    = 30 kb/s                           = 0.30
                  Normalization                              Fuzzification



  • Fuzzy QoS value → “Adjusted” fuzzy subset.                                  0                 0.5                1
                                                                                                                         bandwidth



     1          Retrieved Fuzzy Value                                           1   LOW   quot;Adjustedquot; Fuzzy Subset    HIGH




                                                         Domain normalization


     0
                        512              1024                                   0
                                                                                                   0.5                   1
                                                                                                                             resolution
                                            resolution

                                                                                                                                      14
LCP-Net Example
Step 2 - Local utility values inference

 Use of Generalized Modus Ponens [Zadeh, 1975] for inference of each node
 utility (i.e local utility). In this example for bandwidth:

  • 3 fuzzy subsets = BL, BM, BH

  • B’ = 0.3 is measured.

  • local_utility(B’) = ?

                                                                         high
                                              very low   low    medium             very high
     1   LOW       MEDIUM    HIGH
                                               1




                                                                         0.75
     0              0.5       1                 0        0.25                          1
                                                                 0.5
                                  bandwidth
                                                                                preference level
                                                                                                   15
LCP-Net Example
Step 2 - Local utility values inference

 Use of Generalized Modus Ponens [Zadeh, 1975] for inference of each node
 utility (i.e local utility). In this example for bandwidth:

  • 3 fuzzy subsets = BL, BM, BH

  • B’ = 0.3 is measured.

  • local_utility(B’) = ?


                        1




                                                 0.75
                                    0.35
                        0    0.25                              1
                                           0.5
                                                        preference level
                                                                            15
LCP-Net Example
Step 2 - Local utility values inference

 Use of Generalized Modus Ponens [Zadeh, 1975] for inference of each node
 utility (i.e local utility). In this example for bandwidth:

  • 3 fuzzy subsets = BL, BM, BH

  • B’ = 0.3 is measured.

  • local_utility(B’) = ?




                      local_utility(B’) = 0.35 or (low, +0.10)




                                                                            15
LCP-Net Example
Step 3 - Nodes weights computation

 Arcs in preference model give the relative importance of QoS properties.

 Nodes weights computed to preserve implicit relative importance in global
 utility value computation:

   • Weights based on node depth in graph.

   • Lower depth in graph → Higher weight in preference model.

                                                                 weight    weight
                                                                 ≈ 0.235   ≈ 0.529
depth = 2   depth = 1   weight




                                 transform depths into
                                 normalized weights in
                                 [0,1], summing to 1



                                                                           weight
            depth = 2                                    depth             ≈ 0.235

                                                                                     16
LCP-Net Example
Step 4 - Global utility value computation

 Aggregation of local utilities to obtain global service utility.


 Weighted average operator ∆, using previously computed weights:


  • ∃ Web service S1 |
    local_utility(B’) = 0.35
    local_ utility(Sfull) = 1                                 S1
    local_ utility(B’, R’) = 0.20                QoS snapshot at t = (B’, Sfull, R’)




  • global_utility(S1)
      = ∆(0.529 x 0.35 , 0.235 x 1 , 0.235 x 0.20))
      ≈ 0.47

                  global_utility(S1) = 0.47 or (medium, -0.03)

                                                                                       17
LCP-Net Example
Step 5 - Service comparison and selection

 Automatic, using crisp global utility values.

 Human-based, using 2-tuple global utility values (as shown below).




   g_u(S1) = (medium, -0,03)         g_u(S3) = (medium, -0,15)




                     g_u(S2) = (low, -0,10)               g_u(S4) = (very-low, +0)
                                                                                     18
LCP-Net Example
Step 5 - Service comparison and selection

 Automatic, using crisp global utility values.

 Human-based, using 2-tuple global utility values (as shown below).




   g_u(S1) = (medium, -0,03)         g_u(S3) = (medium, -0,15)




                     g_u(S2) = (low, -0,10)               g_u(S4) = (very-low, +0)
                                                                                     18
Related works

 UCP-Nets [Boutilier et al., 2001] are a directed graphical representation of
 utility functions that combines aspects of two existing preference models:
 generalized additive models and CP-Nets. They decompose a utility function
 into a number of crisp additive factors, whereas LCP-Nets use fuzzy terms.

 TCP-Nets [Brafman et al., 2002] add variable importance tradeoffs into CP-
 Nets by introducing two new edge types: i-arcs and ci-arcs, incorporated in
 our LCP-Net formalism.

 GAI-Networks [Gonzales & Perny, 2005] follow an other approach for
 graphical preference elicitation and preference-based optimization in the
 context of multi-attribute utility theory.

 Recent works [Schröpfer et al., 2007] have proposed a system for specifying
 hard constraints, preferences and tradeos over NFPs as well as service level
 objectives (SLO), it relies on both TCP and UCP networks.

                                                                                  19
Conclusion

 LCP-Nets build on previously established works from the decision-making
 and fuzzy-logic communities.


 In the SOA context, they have a concrete application in the form of
 multicriteria decision making for Web service selection.


 A fully-working LCP-Net definition and evaluation framework is currently
 being implemented:


  • It is driven by the french SemEUsE project.


  • It should be available, as soon as possible, under a free licensing scheme.




                                                                                  20
Thank you for your attention...
Any questions ?


         Pierre Châtel
         Thales Land  Joint Systems
         @ Thales Research  Technologies (TRT)
         RD 128
         91767 Palaiseau Cedex - France

         pierre.chatel@thalesgroup.com

         +33 (0)1 69 41 55 65


                                                  21

Weitere ähnliche Inhalte

Ähnlich wie FLINS'08 - A linguistic approach for non-functional constraints in a semantic SOA environment

Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentationIcws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentationFreddy Lecue
 
Graph Pattern Identification
Graph Pattern IdentificationGraph Pattern Identification
Graph Pattern IdentificationAakash Ahmad
 
IEEE_CCNC_Presentation_Peyman
IEEE_CCNC_Presentation_PeymanIEEE_CCNC_Presentation_Peyman
IEEE_CCNC_Presentation_PeymanPeyman TalebiFard
 
Service Cloud OW2 Conference Nov10
Service Cloud OW2 Conference Nov10Service Cloud OW2 Conference Nov10
Service Cloud OW2 Conference Nov10OW2
 
Andre Tost Service Models Java
Andre  Tost    Service Models JavaAndre  Tost    Service Models Java
Andre Tost Service Models JavaSOA Symposium
 
Icws09 Lecue Presentation
Icws09 Lecue PresentationIcws09 Lecue Presentation
Icws09 Lecue PresentationFreddy Lecue
 
Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0lgradina
 
Anish Karmakar S C A
Anish  Karmakar    S C AAnish  Karmakar    S C A
Anish Karmakar S C ASOA Symposium
 
Open APIs in Telecom - Workshop Fokus Berlin 2009
Open APIs in Telecom - Workshop Fokus Berlin 2009Open APIs in Telecom - Workshop Fokus Berlin 2009
Open APIs in Telecom - Workshop Fokus Berlin 2009Marc Schaer
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYijwscjournal
 
20091021 At Crossroads: Internet of Services Research beyond Call 5
20091021 At Crossroads: Internet of Services Research beyond Call 520091021 At Crossroads: Internet of Services Research beyond Call 5
20091021 At Crossroads: Internet of Services Research beyond Call 5Arian Zwegers
 
Creating Web Applications with ArcGIS
Creating Web Applications with ArcGIS Creating Web Applications with ArcGIS
Creating Web Applications with ArcGIS Esri
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented ArchitectureBob Rhubart
 
5G Network Architecture and FMC
5G Network Architecture and FMC5G Network Architecture and FMC
5G Network Architecture and FMCITU
 
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
 
5G RAN Slicing for Dublin Release.pptx
5G RAN Slicing for Dublin Release.pptx5G RAN Slicing for Dublin Release.pptx
5G RAN Slicing for Dublin Release.pptxMohammadIrshad79
 

Ähnlich wie FLINS'08 - A linguistic approach for non-functional constraints in a semantic SOA environment (20)

Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentationIcws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
 
Exchange Server 2013 Architecture Deep Dive, Part 1
Exchange Server 2013 Architecture Deep Dive, Part 1Exchange Server 2013 Architecture Deep Dive, Part 1
Exchange Server 2013 Architecture Deep Dive, Part 1
 
Graph Pattern Identification
Graph Pattern IdentificationGraph Pattern Identification
Graph Pattern Identification
 
IEEE_CCNC_Presentation_Peyman
IEEE_CCNC_Presentation_PeymanIEEE_CCNC_Presentation_Peyman
IEEE_CCNC_Presentation_Peyman
 
Service Cloud OW2 Conference Nov10
Service Cloud OW2 Conference Nov10Service Cloud OW2 Conference Nov10
Service Cloud OW2 Conference Nov10
 
Andre Tost Service Models Java
Andre  Tost    Service Models JavaAndre  Tost    Service Models Java
Andre Tost Service Models Java
 
Icws09 Lecue Presentation
Icws09 Lecue PresentationIcws09 Lecue Presentation
Icws09 Lecue Presentation
 
Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0Sdf Panel Nice 2009 V1.0
Sdf Panel Nice 2009 V1.0
 
Sassy
SassySassy
Sassy
 
Anish Karmakar S C A
Anish  Karmakar    S C AAnish  Karmakar    S C A
Anish Karmakar S C A
 
Open APIs in Telecom - Workshop Fokus Berlin 2009
Open APIs in Telecom - Workshop Fokus Berlin 2009Open APIs in Telecom - Workshop Fokus Berlin 2009
Open APIs in Telecom - Workshop Fokus Berlin 2009
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
 
20091021 At Crossroads: Internet of Services Research beyond Call 5
20091021 At Crossroads: Internet of Services Research beyond Call 520091021 At Crossroads: Internet of Services Research beyond Call 5
20091021 At Crossroads: Internet of Services Research beyond Call 5
 
Creating Web Applications with ArcGIS
Creating Web Applications with ArcGIS Creating Web Applications with ArcGIS
Creating Web Applications with ArcGIS
 
Semantic Web Services Framework for Computational Interoperability
Semantic Web Services Framework for Computational InteroperabilitySemantic Web Services Framework for Computational Interoperability
Semantic Web Services Framework for Computational Interoperability
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented Architecture
 
5G Americas_Network Slicing
5G Americas_Network Slicing5G Americas_Network Slicing
5G Americas_Network Slicing
 
5G Network Architecture and FMC
5G Network Architecture and FMC5G Network Architecture and FMC
5G Network Architecture and FMC
 
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...
 
5G RAN Slicing for Dublin Release.pptx
5G RAN Slicing for Dublin Release.pptx5G RAN Slicing for Dublin Release.pptx
5G RAN Slicing for Dublin Release.pptx
 

Kürzlich hochgeladen

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Kürzlich hochgeladen (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

FLINS'08 - A linguistic approach for non-functional constraints in a semantic SOA environment

  • 1. A linguistic approach for non-functional constraints in a semantic SOA environment Pierre Châtel Thales Land & Joint Systems, Université Pierre et Marie Curie - Paris 6, LIP6 Isis Truck LIASD, Université de Vincennes à Saint Denis - Paris 8 Jacques Malenfant Université Pierre et Marie Curie - Paris 6, CNRS, UMR 7606 LIP6 1
  • 2. Research Topic Non-functional constraint handling in Semantic Service Oriented Architectures. The Service Oriented Architecture (SOA) is divided between: • Atomic feature producers, or (Web) services. • Atomic feature consumers, or (Web) processes. Semantic SOA: • Usually provides: service offers ⊕ high level business concepts, extracted from domain ontologies, published in registries. • We add: preferences between services non-functional properties, seen as “user semantics”. Application domains: any domain where a dynamic coordination of services under quality constraints and with some guarantees is needed. 2
  • 3. Contents 1. Context 2. Preference Model 3. LCP-Net example 4. Related works 5. Conclusion 3
  • 4. Context SOA Functional properties of Web services: • Provided domain features. • Ex. for a car service: move, carry persons or goods, protect from weather, a specific type of car. Non-functional properties of Web services: • Service features execution modalities that affect the provided or perceived Quality of Service (QoS). • Ex. for a car service: - Maximal speed. - Tank capacity → traveling distance. - Number of gears. - Motor levels: temperature, oil, revolutions, ... 4
  • 5. Context Multi-Criteria Decision Making The decision being made, in this application context, is the dynamic linking of an abstract service invocation in a Web process to one of its physical implementation (i.e a specific Web service), presumably the best-suited one. Candidate services expose multiple non-functional properties, each one being a potentiel criterion for election of the best-suited service. • Static filtering of services on individual criterion constraints → partial order. • User preferences, between non-functional properties → total order. 5
  • 6. Context Impact on preference definition In our SOA-driven context: • Preferences must be easy to define since there are no preference modeling experts, nor many ressources to allocate for their elicitation. ➥ Some imprecision must be tolerated in preference models. • Variables are limited in preference models (at most ~ 10 variables). • Computation time for decision-making based on preferences is seen as relatively small compared to the subsequent networked service invocation. It leads to the following sought-after properties of the preference formalism: ✓It must be graphical to ease definition and computation. ✓It must be qualitative as a mean to deal with imprecision → linguistic values integration. 6
  • 7. Context SemEUsE project SemEUsE = “Sémantique pour bus de services” • 3-year french ANR project, over €1M budget. • 6 partners: Thales, FT, EBM, LIP6, INSA, INRIA, INT. Implements “smart” web services orchestration... • by static service filtering on functional and non-functional properties. • by dynamic non-functional service selection. Dedicated late-binding components implements selection by binding each service call in a running process to a single candidate service extracted from a set of otherwise functionally-equivalent services, using: • Current QoS values of monitored services. • Statically defined preferences over QoS properties of services. 7
  • 9. Context SemEUsE framework S1 S3 S5 S2 S4 8
  • 10. Context SemEUsE framework S1 S3 S5 S2 S4 8
  • 11. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 8
  • 12. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 S1 S3 S5 8
  • 13. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 S1 S3 S5 Non-Functional Service Filtering 8
  • 14. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 S1 S3 S5 Non-Functional Service Filtering S1 S3 8
  • 15. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 S1 S3 S5 Non-Functional Service Filtering S1 S3 Non-Functional Service Selection Current QoS of S1 and S3 8
  • 16. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 S1 S3 S5 Non-Functional Service Filtering S1 S3 Non-Functional Service Selection Current QoS of S1 and S3 Statically defined Preferences 8
  • 17. Context SemEUsE framework Functional Service Filtering S1 S3 S5 S2 S4 S1 S3 S5 Non-Functional Service Filtering S1 S3 Non-Functional Service Selection S3 Current QoS of S1 and S3 Statically defined Preferences 8
  • 18. Contents 1. Context 2. Preference model 3. LCP-Net example 4. Related works 5. Conclusion 9
  • 19. Preference model LCP-Nets “Linguistic Conditional Preference-Networks”, an extension of CP-Nets [Boutilier et al., 1999]. Domain agnostic, but can be used for formal specification of preferences in our SOA context, in order to: • Reveal relative importance of non-functional properties. • Elicit preferred values for a specific QoS domain. • Indicate tradeoffs between non-functional properties. And is easy to understand, define, manipulate: • Qualitative model: linguistic terms for QoS values (e.g. none, full for Security) and preference degrees (e.g. very_low, ... , very_high) [Zadeh, 1975; Herrera & Martínez, 2000]. • Graphical model: nodes, edges and preference tables. 10
  • 20. Preference model LCP-Net instance From static preferences... QoS for surveillance camera services : S = Security B = Bandwidth R = image Resolution ... to efficient decision-making system at runtime: • Utility tables mapped to fuzzy rule sets, as in fuzzy control. • Inputs as crisp or fuzzy measured values from monitored services. • Evaluation output as a crisp or linguistic (e.g. 2-tuple) utility value. 11
  • 21. Preference model LCP-Net instance From static preferences... QoS for surveillance camera services : & S = Security B = Bandwidth R = image Resolution ... to efficient decision-making system at runtime: • Utility tables mapped to fuzzy rule sets, as in fuzzy control. • Inputs as crisp or fuzzy measured values from monitored services. • Evaluation output as a crisp or linguistic (e.g. 2-tuple) utility value. 11
  • 22. Contents 1. Context 2. Preference Model 3. LCP-Net example 4. Related works 5. Conclusion 12
  • 23. LCP-Net Example In 5 steps An example of a Security Camera preference evaluation, broke down into 5 key steps for selection of the best-suited service: Step 1 - QoS values injection Step 2 - Local utility values inference Step 3 - Nodes weights computation Step 4 - Global utility value computation Step 5 - Service comparison and selection 13
  • 24. LCP-Net Example Step 1 - QoS values injection Multiple QoS Values retrieved from monitoring layer can be of two kinds: • Crisp QoS values → “Singleton” fuzzy subset. 1 LOW MEDIUM HIGH Bandwidth Bandwidth = 30 kb/s = 0.30 Normalization Fuzzification • Fuzzy QoS value → “Adjusted” fuzzy subset. 0 0.5 1 bandwidth 1 Retrieved Fuzzy Value 1 LOW quot;Adjustedquot; Fuzzy Subset HIGH Domain normalization 0 512 1024 0 0.5 1 resolution resolution 14
  • 25. LCP-Net Example Step 2 - Local utility values inference Use of Generalized Modus Ponens [Zadeh, 1975] for inference of each node utility (i.e local utility). In this example for bandwidth: • 3 fuzzy subsets = BL, BM, BH • B’ = 0.3 is measured. • local_utility(B’) = ? high very low low medium very high 1 LOW MEDIUM HIGH 1 0.75 0 0.5 1 0 0.25 1 0.5 bandwidth preference level 15
  • 26. LCP-Net Example Step 2 - Local utility values inference Use of Generalized Modus Ponens [Zadeh, 1975] for inference of each node utility (i.e local utility). In this example for bandwidth: • 3 fuzzy subsets = BL, BM, BH • B’ = 0.3 is measured. • local_utility(B’) = ? 1 0.75 0.35 0 0.25 1 0.5 preference level 15
  • 27. LCP-Net Example Step 2 - Local utility values inference Use of Generalized Modus Ponens [Zadeh, 1975] for inference of each node utility (i.e local utility). In this example for bandwidth: • 3 fuzzy subsets = BL, BM, BH • B’ = 0.3 is measured. • local_utility(B’) = ? local_utility(B’) = 0.35 or (low, +0.10) 15
  • 28. LCP-Net Example Step 3 - Nodes weights computation Arcs in preference model give the relative importance of QoS properties. Nodes weights computed to preserve implicit relative importance in global utility value computation: • Weights based on node depth in graph. • Lower depth in graph → Higher weight in preference model. weight weight ≈ 0.235 ≈ 0.529 depth = 2 depth = 1 weight transform depths into normalized weights in [0,1], summing to 1 weight depth = 2 depth ≈ 0.235 16
  • 29. LCP-Net Example Step 4 - Global utility value computation Aggregation of local utilities to obtain global service utility. Weighted average operator ∆, using previously computed weights: • ∃ Web service S1 | local_utility(B’) = 0.35 local_ utility(Sfull) = 1 S1 local_ utility(B’, R’) = 0.20 QoS snapshot at t = (B’, Sfull, R’) • global_utility(S1) = ∆(0.529 x 0.35 , 0.235 x 1 , 0.235 x 0.20)) ≈ 0.47 global_utility(S1) = 0.47 or (medium, -0.03) 17
  • 30. LCP-Net Example Step 5 - Service comparison and selection Automatic, using crisp global utility values. Human-based, using 2-tuple global utility values (as shown below). g_u(S1) = (medium, -0,03) g_u(S3) = (medium, -0,15) g_u(S2) = (low, -0,10) g_u(S4) = (very-low, +0) 18
  • 31. LCP-Net Example Step 5 - Service comparison and selection Automatic, using crisp global utility values. Human-based, using 2-tuple global utility values (as shown below). g_u(S1) = (medium, -0,03) g_u(S3) = (medium, -0,15) g_u(S2) = (low, -0,10) g_u(S4) = (very-low, +0) 18
  • 32. Related works UCP-Nets [Boutilier et al., 2001] are a directed graphical representation of utility functions that combines aspects of two existing preference models: generalized additive models and CP-Nets. They decompose a utility function into a number of crisp additive factors, whereas LCP-Nets use fuzzy terms. TCP-Nets [Brafman et al., 2002] add variable importance tradeoffs into CP- Nets by introducing two new edge types: i-arcs and ci-arcs, incorporated in our LCP-Net formalism. GAI-Networks [Gonzales & Perny, 2005] follow an other approach for graphical preference elicitation and preference-based optimization in the context of multi-attribute utility theory. Recent works [Schröpfer et al., 2007] have proposed a system for specifying hard constraints, preferences and tradeos over NFPs as well as service level objectives (SLO), it relies on both TCP and UCP networks. 19
  • 33. Conclusion LCP-Nets build on previously established works from the decision-making and fuzzy-logic communities. In the SOA context, they have a concrete application in the form of multicriteria decision making for Web service selection. A fully-working LCP-Net definition and evaluation framework is currently being implemented: • It is driven by the french SemEUsE project. • It should be available, as soon as possible, under a free licensing scheme. 20
  • 34. Thank you for your attention... Any questions ? Pierre Châtel Thales Land Joint Systems @ Thales Research Technologies (TRT) RD 128 91767 Palaiseau Cedex - France pierre.chatel@thalesgroup.com +33 (0)1 69 41 55 65 21