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

Designing and migrating Service-Based Applications:
   Techniques for design for adaptation

          Politecnico di Milano (POLIMI),
          Fondazione Bruno Kesler (FBK)


 Elisabetta Di Nitto and Cinzia Cappiello (POLIMI),
            Antonio Bucchiarone (FBK)

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

                         S-Cube



           Engineering Principles, Techniques
                   & Methodologies



                Designing and migrating
               Service-Based Applications



           Techniques for design for adaptation

                                            © Di Nitto, Cappiello, Bucchiarone
Learning Package Overview



§  Problem Description (changes in the world and self-
    adaptation)
§  Support to self-adaptation during the lifecycle of a SBA
§  Context changes and self-adaptation
§  Conclusions




                                                © Di Nitto, Cappiello, Bucchiarone
The machine and the world




                  Domain
                  properties
                  (assumptions)




 Goals             Specification
 Requirements
Software lifecycle changes



   §  Clear distinction between development and execution
       time


       Design
       Verification         Execution
       Deployment

   §  Every change in the world requires the execution be
       interrupted and a new software be developed and
       deployed
What are the changes we need to care
of?

                             Functional
                Goals/
             Requirements
                            Non-functional


                                                               e.g., moving from
                                                Location        open air to the
                                                                 meeting room
                                User
     World
                                                                e.g., today I do
                                               Preferences       not feel I can
                                                               take phone calls


                                                New SLA

                Domain        Business
              properties
               (context)                     New regulation


                                                               e.g., the service
                                                               I’m using is not
                                                                   working
                                             Changes in used
                                                resources
                                                               e.g., I’ve run out
                               System                          of computational
                                                                   resources
                                              SLA has been
                                                 broken
                                                                                    6
How can software systems
tackle these changes?



                    Reason
                     and
                                        Adapt
                    make
                   decision



                              Monitor




                                                7
IBM Model for autonomic computing




                                    8
Monitoring

§  Monitor all possible data
§  Activate/deactivate various levels of monitoring depending on
    the situation
§  Perform some filtering to limit the amount of monitoring data
    offered to the system
§  Correlate data




                                                                    9
Reasoning on monitoring results (1)

§  Reasoning can be hardcoded in the execution environment
   –  E.g.: always replace a failing service with the first one you find in a
      directory
   –  Advantage: No need to perform specific programming actions to
      achieve self-adaptation
   –  Drawback: Limited to a set of predefined options




                                                                                10
Reasoning on monitoring results (2)

§  Programming mechanisms are made available to define
    adaptation strategies
   –  Usually, rule-based languages. Strategies defined in terms of Event-
      conditions-actions rules
   –  Advantage: good level of flexibility in defining system-dependent
      strategies
   –  Drawback: rule-based programming approach is difficult to use.
      Validation of result is challenging
   –  Examples: SCENE (SeCSE), SOA4All




                                                                             11
Reasoning on monitoring results (3)

§  Modeling languages and approaches are offered to define
    adaptation strategies …
   –  Use of formal methods
   –  Possibility to check the effect of adaptation before enacting it

§  Examples: ASTRO, Service-tiles (see later)…




                                                                         12
Actuating adaptation

§  Many variations
   –  Can be specific of a single system instance or it can apply to all
      running instances
   –  Can impact only on future instances of system
   –  Can be permanent or transitory




                                                                           13
Learning Package Overview



§  Problem Description (changes in the world and self-
    adaptation)
§  Support to self-adaptation during the lifecycle of a SBA
§  Context changes and self-adaptation
§  Conclusions




                                               © Di Nitto, Cappiello, Bucchiarone
Problem we tackle here

§  Design for Adaptation
   –  Adaptation Triggers
   –  Adaptation Strategies
   –  Mechanisms to enable adaptation that associate strategies with
      triggers

§  Today
   –  Existing design methodologies do not take into account the problem of
      SBAs adaptation in a holistic way, but only in a fragmented way

§  Our Proposal
   –  Design phase
   –  We suggest a number of design principles and guidelines to enable
      adaptation
   –  We propose an extension of a basic iterative SBAs life-cycle
Motivating Scenarios

§  The life-cycles and frameworks available for SBAs do not
    support adaptation or tend to focus on specific adaptation
    strategies
§  We consider three scenarios from different domains with
    different adaptation aspects.
   –  Automotive
   –  Wine Production
   –  Mobile Users

§  SBAs have to face very different adaptation needs
Automotive Scenario

§  Scenario Description
   –  Supply-chain business processes in the automobile production domain
      -  Ordering and importing automobile body parts from supplier
      -  manufactoring activities
      -  customization of the products according to customers’ needs
   –  Long running processes involving a wide range of enterprise services
      -  Agile Service Network (ASN)

§  Scenario Adaptations
   –  Partner can be chosen at runtime from those belonging to the ASN
   –  SBA needs to recover from some problem and to accomodate some
      change in the business context
Wine Production Scenario

§  Scenario Description
   –  SBA realized on a top of a Wireless Sensor and Actuator Nework
   –  Activities of vineyard cultivation handling, the control of grapes
      maturation, their harvesting and fermentation

§  Scenario Adaptations
   –  Ability of autonomously detect problems
       -  Replace devices that may crash, run out of battery or provide
          incorrect information
       -  Change the topology of network to optimize the load and the
          distribution of the sensors
Mobile Users Scenario

§  Scenario Description
   –  A huge number of applications aims to give end user access to various
      services through mobile devices
      -  Navigation and route planning, services for accessing social
         networking and blogging

§  Scenario Adaptations
   –  Continuously changing context
      -  e.g. Network throughput, user location and time, etc.
   –  Continuously changing user goals and activities
Main Ingredients of an Adaptable SBA
Life-cycle for SBAs
Adaptation Strategies

§  To mantain aligned the application behaviour with the context
    and system requirements
   –  Service substitution
   –  Re-execution
   –  (Re-)negotiation
   –  (Re-)composition
   –  Compensation
   –  Log/Update adaptation Information
   –  Fail
Adaptation Triggers

§  The adaptation may be motivated by variety of triggers
§  Component Services
   –  Service functionality
   –  Service quality

§  SBAs context
   –  Business context
   –  Computational context
   –  User context
Adaptation Strategies & Triggers

§  To re-align the application within the system and/or context
    requirements
§  Each trigger can be associated with a set of adaptation
    strategies
Design Guidelines

§  Design adaptable SBAs implies relate adaptation triggers and
    adaptation strategies together
   –  Modeling adaptation triggers
   –  Realizing adaptation strategies
   –  Associating adaptation strategies to triggers

§  Design approaches
   –  Built-in adaptation
   –  Abstraction-based adaptation
   –  Dynamic adaptation
Discussion – Automotive Scenario

§  Properties
     –  Stable Context and partners
     –  Long-running SBA instances
     –  Diversity of Adaptation needs
     –  Decisions require human involvement
§  Adaptation Triggers
     –  Functional changes
     –  SLA violations
     –  Changes in business context
§  Design Approach
     –  Dynamic Adaptation (human-driven)
     –  Built-in Adaptation (for compensation or process customization)
§  Adaptation Strategy
     –  Service substitution
     –  SLA re-negotiation
     –  Re-composition by ad-hoc changes of process control/data
     –  Trigger evolution
Discussion – Wine Scenario

§  Properties
    –  Fully dynamic and unreliable services
    –  Fully autonomous SBA
§  Adaptation Triggers
    –  Degrade of service (sensor) QoS
§  Design Approach
    –  Abstraction-based adaptation
§  Adaptation Strategy
    –  Re-composition of services
    –  Domain-specific actions
        -  e.g. data transfer frequency changes
Discussion – Mobile User

§  Properties
    –  Strong dependency from context and goals of users
§  Adaptation Triggers
    –  Context changes
    –  Changes of user activities
§  Design Approach
    –  Abstraction-based adaptation (for context changes)
    –  Dynamic adaptation
§  Adaptation Strategy
    –  Service substitution (by dynamic discovery)
    –  Service re-composition
Learning Package Overview



§  Problem Description (changes in the world and self-
    adaptation)
§  Support to self-adaptation during the lifecycle of a SBA
§  Context changes and self-adaptation
§  Conclusions




                                                © Di Nitto, Cappiello, Bucchiarone
Problem we tackle here



§  Focus on the role of the context in Service Based Applications
   –  How and when the context should be defined
   –  How the context should be exploited
   –  How the context should be evolved
   –  What is the impact of the context on the various adaptation activities
Context and context model

§  Context: any information that can be used to characterize
    persons, places or objects that are considered relevant to the
    interaction between a user and the application
§  Context model: Captures dimensions that can trigger
    adaptation
   –  Six dimensions
      -  TimeContext
      -  AmbientContext: e.g., location of users
      -  UserContext: i.e., user preferences
      -  ServiceContext: i.e., services used by the application
      -  BusinessContext: e.g., conditions in which application runs
      -  ComputationalContext: e.g., device that runs the application
   –  We have an XML representation of the context
A Context-driven Adaptation Process
               Monitored                     Define adaptation and
                Events                       monitoring requirements
                                                                                Design
                                        Context                           Context Dimensions
 Adaptation                            Early Requirement
                                       Properties
                                                                          Design monitoring
Requirements                           Engineering                         And adaptation

                                                       Context
 Adaptation        Identify           Runtime         Requirement
 strategies                                           Properties
                   adaptation        Monitoring       Engineering
                                                       Watchers             Context Modeling
                   requirements                       and Design

                               Operation,                                Design context-driven
      Identify                 management and                                 Reasoners
      adaptation               quality assurance
      strategy                                                   Construction

                                                                        Contextual Monitors
  Strategy                      Deployment                                      And
  Instance     Enact
                                and provisioning                       Adaptation Mechanisms
               adaptation
                                             Deploy        Design monitoring
                        Adaptation    Contextual Monitors   And adaptation
                        Mechanism             And
                                     Adaptation Mechanisms
E-government Scenario
Design Context Dimensions

  §  Decide which context dimensions are relevant for the
      application
                     Application     Time   Ambient   User   Service   Computing   Business


     Design        Health-care        X        X       X       X          X           X
Context Dimensions
                    Administrative    X        X       X       X          X           X
                    Census & Reg               X       X       X          X           X
 Early              Information       X        X       X       X          X           X
 Requirement
 Engineering        Auxiliary                  X               X          X           X
               Requirement
               Engineering
               and Design
Context modeling

 §  Instantiate the domain for context dimensions
            SBA context


                          Ambient    Space                    Zip codes

                                      Citizen,
                           User      Authority…
                                                   Normal,
                          Business                Emergency
Context Modeling
                                                                 Morning,
                                                                afternoon,
                           Time
  Requirement                                                    evening
  Engineering
  and Design
                          Service       Used Services

                                                         Pda, PC, Phone
                      Computing
Design of context-driven adaptation
  reasoner
  §  Changes in dimensions can trigger the corresponding
      strategies
                   Application       Time   Ambient   User   Service   Computing   Business


                  Service             X       X        X       X          X           X
                  substitution
Design of           Re-execution                               X          X           X
context-driven
adaptation reasoner
                    Re-composition                             X          X           X
                  Fail (Abort)                         X       X          X           X
                  Concretization      X       X        X       X          X           X
  Requirement
  Engineering     Re-negotiation                       X                  X           X
  and Design
                  Compensation                                 X          X
                  Evolution                   X        X       X          X           X
Requirement Engineering Outcome
                    Monitored
                     Events                                       Design
                                                            Context Dimensions
 Adaptation                       Early Requirement
Requirements                      Engineering
                                                             Context Modeling
 Adaptation        Identify                 Requirement
 strategies                                 Engineering
                   adaptation
                   requirements             and Design  Design context-driven
                                                                Reasoners

                                                                 Context
      Identify
                                                                Properties
      adaptation
      strategy                                        Construction
Learning Package Overview



§  Problem Description (changes in the world and self-
    adaptation)
§  Support to self-adaptation during the lifecycle of a SBA
§  Context changes and self-adaptation
§  Conclusions




                                                © Di Nitto, Cappiello, Bucchiarone
Conclusions

§  We propose a framework to support the design of SBAs that
    targets the adaptation requirements raised by context
    changes
§  We propose a novel life-cycle that emphasizes the relevance
    of the context dimensions in the different facets of adaptation,
    both during the design phase and at run-time.
§  The proposed approach provides guidelines for
   –  The identification of the relevant context dimensions to monitor
   –  The definition of the adaptation triggers able to link context changes
      with suitable adaptation strategies

§  The effectiveness of the approach has been evaluated by
    considering some realistic scenarios
Open issues and challenges

§  How to test self-adaptable software
§  Support to unforeseen changes
§  Preventive adaptation
§  Dependable self-adaptable software
§  …




                                          40
Further S-Cube Reading

§  A. Bucchiarone, C. Cappiello, E. Di Nitto, R. Kazhamiakin, V. Mazza, M.
    Pistore, “Design for Adaptation of Service-Based Applications: Main Issues
    and Requirements”. ICSOC/ServiceWave Workshops 2009: 467-476
§  A. Bucchiarone, C. Cappiello, E. Di Nitto, R. Kazhamiakin, V. Mazza, "A
    Context-driven Adaptation Process for Service-based Applications".
    Proceedings of the PESOS workshop in conjunction with the ICSE
    conference, 2010
§  A. Metzger, E. Schmieders, C. Cappiello, E. Di Nitto, R. Kazhamiakin, B.
    Pernici, et al. (2010). Towards Proactive Adaptation: A Journey along the
    S-Cube Service Life-Cycle. In MESOA: 4th International Workshop on
    Maintenance and Evolution of Service-Oriented Systems.
§  A. Bucchiarone, C. Cappiello, E. Di Nitto, S. Gorlatch, D. Meiländer, A.
    Metzger, “Design for self-adaptation in Service-oriented systems in the
    Cloud”. In: European Research Activities in Cloud Computing, to appear.



                                                        © Di Nitto, Cappiello, Bucchiarone
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).




                                        © Di Nitto, Cappiello, Bucchiarone

Mais conteúdo relacionado

Destaque

Cxc pob sba template with mark scheme
Cxc pob sba template with mark schemeCxc pob sba template with mark scheme
Cxc pob sba template with mark schemesuperbmars
 
Principles of Business (POB) SBA
Principles of Business (POB) SBAPrinciples of Business (POB) SBA
Principles of Business (POB) SBAChristina Sookdeo
 
principle of accounts sba
principle of accounts sbaprinciple of accounts sba
principle of accounts sbaShanny Brown
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

Destaque (11)

POB SBA
POB SBA POB SBA
POB SBA
 
Cxc pob sba template with mark scheme
Cxc pob sba template with mark schemeCxc pob sba template with mark scheme
Cxc pob sba template with mark scheme
 
Principles of Business (POB) SBA
Principles of Business (POB) SBAPrinciples of Business (POB) SBA
Principles of Business (POB) SBA
 
POB SBA
POB SBA POB SBA
POB SBA
 
Principal of business
Principal of businessPrincipal of business
Principal of business
 
principle of accounts sba
principle of accounts sbaprinciple of accounts sba
principle of accounts sba
 
Shaneka pob sba
Shaneka pob sbaShaneka pob sba
Shaneka pob sba
 
Pob sba
Pob sbaPob sba
Pob sba
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Semelhante a S-CUBE LP: Techniques for design for 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 Adaptationvirtual-campus
 
Jee performance tuning existing applications
Jee performance tuning existing applicationsJee performance tuning existing applications
Jee performance tuning existing applicationsShivnarayan Varma
 
Oracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & TuningOracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & TuningChris Muir
 
Learning Software Performance Models for Dynamic and Uncertain Environments
Learning Software Performance Models for Dynamic and Uncertain EnvironmentsLearning Software Performance Models for Dynamic and Uncertain Environments
Learning Software Performance Models for Dynamic and Uncertain EnvironmentsPooyan Jamshidi
 
Windows azure scalability
Windows azure scalabilityWindows azure scalability
Windows azure scalabilityLee Stott
 
The Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenanceThe Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenanceStefan Bergstein
 
Kutulu: A Domain-specific Language for Feature-driven Product Derivation
Kutulu: A Domain-specific Language for Feature-driven Product DerivationKutulu: A Domain-specific Language for Feature-driven Product Derivation
Kutulu: A Domain-specific Language for Feature-driven Product DerivationOrçun Dayıbaş
 
Metadata Modeling Best Practices with IBM Cognos Framework Manager
Metadata Modeling Best Practices with IBM Cognos Framework ManagerMetadata Modeling Best Practices with IBM Cognos Framework Manager
Metadata Modeling Best Practices with IBM Cognos Framework ManagerSenturus
 
Dynamic Component Deployment and (Re) Configuration Using a Unified Framework
Dynamic Component Deployment and (Re) Configuration Using a Unified FrameworkDynamic Component Deployment and (Re) Configuration Using a Unified Framework
Dynamic Component Deployment and (Re) Configuration Using a Unified FrameworkMadjid KETFI
 
Enterprise performance engineering solutions
Enterprise performance engineering solutionsEnterprise performance engineering solutions
Enterprise performance engineering solutionsInfosys
 
Example business continuity plan
Example business continuity planExample business continuity plan
Example business continuity planMicheal Axelsen
 
IoT Evolution Expo- Machine Learning and the Cloud
IoT Evolution Expo- Machine Learning and the CloudIoT Evolution Expo- Machine Learning and the Cloud
IoT Evolution Expo- Machine Learning and the CloudValue Amplify Consulting
 
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)David Rosenblum
 
Performance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering ProcessPerformance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering ProcessAlexander Podelko
 
Agile and continuous delivery – How IBM Watson Workspace is built
Agile and continuous delivery – How IBM Watson Workspace is builtAgile and continuous delivery – How IBM Watson Workspace is built
Agile and continuous delivery – How IBM Watson Workspace is builtVincent Burckhardt
 
Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...Correlsense
 
IT Ops Mgmt in the New Virtualized, Software-defined World
IT Ops Mgmt in the New Virtualized, Software-defined WorldIT Ops Mgmt in the New Virtualized, Software-defined World
IT Ops Mgmt in the New Virtualized, Software-defined WorldEMC
 
Design principles & quality factors
Design principles & quality factorsDesign principles & quality factors
Design principles & quality factorsAalia Barbe
 
Software maintenance real world maintenance cost
Software maintenance real world maintenance costSoftware maintenance real world maintenance cost
Software maintenance real world maintenance costmalathieswaran29
 

Semelhante a S-CUBE LP: Techniques for design for adaptation (20)

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
 
Jee performance tuning existing applications
Jee performance tuning existing applicationsJee performance tuning existing applications
Jee performance tuning existing applications
 
Oracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & TuningOracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & Tuning
 
Learning Software Performance Models for Dynamic and Uncertain Environments
Learning Software Performance Models for Dynamic and Uncertain EnvironmentsLearning Software Performance Models for Dynamic and Uncertain Environments
Learning Software Performance Models for Dynamic and Uncertain Environments
 
Windows azure scalability
Windows azure scalabilityWindows azure scalability
Windows azure scalability
 
The Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenanceThe Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenance
 
Kutulu: A Domain-specific Language for Feature-driven Product Derivation
Kutulu: A Domain-specific Language for Feature-driven Product DerivationKutulu: A Domain-specific Language for Feature-driven Product Derivation
Kutulu: A Domain-specific Language for Feature-driven Product Derivation
 
Metadata Modeling Best Practices with IBM Cognos Framework Manager
Metadata Modeling Best Practices with IBM Cognos Framework ManagerMetadata Modeling Best Practices with IBM Cognos Framework Manager
Metadata Modeling Best Practices with IBM Cognos Framework Manager
 
Dynamic Component Deployment and (Re) Configuration Using a Unified Framework
Dynamic Component Deployment and (Re) Configuration Using a Unified FrameworkDynamic Component Deployment and (Re) Configuration Using a Unified Framework
Dynamic Component Deployment and (Re) Configuration Using a Unified Framework
 
Enterprise performance engineering solutions
Enterprise performance engineering solutionsEnterprise performance engineering solutions
Enterprise performance engineering solutions
 
Example business continuity plan
Example business continuity planExample business continuity plan
Example business continuity plan
 
IoT Evolution Expo- Machine Learning and the Cloud
IoT Evolution Expo- Machine Learning and the CloudIoT Evolution Expo- Machine Learning and the Cloud
IoT Evolution Expo- Machine Learning and the Cloud
 
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
 
Performance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering ProcessPerformance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering Process
 
Agile and continuous delivery – How IBM Watson Workspace is built
Agile and continuous delivery – How IBM Watson Workspace is builtAgile and continuous delivery – How IBM Watson Workspace is built
Agile and continuous delivery – How IBM Watson Workspace is built
 
Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...
 
IT Ops Mgmt in the New Virtualized, Software-defined World
IT Ops Mgmt in the New Virtualized, Software-defined WorldIT Ops Mgmt in the New Virtualized, Software-defined World
IT Ops Mgmt in the New Virtualized, Software-defined World
 
BestPractices_SoftwareChangeMgmt
BestPractices_SoftwareChangeMgmtBestPractices_SoftwareChangeMgmt
BestPractices_SoftwareChangeMgmt
 
Design principles & quality factors
Design principles & quality factorsDesign principles & quality factors
Design principles & quality factors
 
Software maintenance real world maintenance cost
Software maintenance real world maintenance costSoftware maintenance real world maintenance cost
Software maintenance real world maintenance cost
 

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 Metaphorvirtual-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 Programmingvirtual-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 Interpretervirtual-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: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task ModelsS-CUBE LP: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task Modelsvirtual-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 Developmentvirtual-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 Systemsvirtual-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 Analysisvirtual-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 Compositionsvirtual-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 Logsvirtual-campus
 
S-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA NegotiationS-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA Negotiationvirtual-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 Selectionvirtual-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 Orchestrationsvirtual-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 Adaptationvirtual-campus
 
S-CUBE LP: Using Data Properties in Quality Prediction
S-CUBE LP: Using Data Properties in Quality PredictionS-CUBE LP: Using Data Properties in Quality Prediction
S-CUBE LP: Using Data Properties in Quality Predictionvirtual-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: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task ModelsS-CUBE LP: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task Models
 
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: 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: Using Data Properties in Quality Prediction
S-CUBE LP: Using Data Properties in Quality PredictionS-CUBE LP: Using Data Properties in Quality Prediction
S-CUBE LP: Using Data Properties in Quality Prediction
 

Último

Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 

Último (20)

Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

S-CUBE LP: Techniques for design for adaptation

  • 1. S-Cube Learning Package Designing and migrating Service-Based Applications: Techniques for design for adaptation Politecnico di Milano (POLIMI), Fondazione Bruno Kesler (FBK) Elisabetta Di Nitto and Cinzia Cappiello (POLIMI), Antonio Bucchiarone (FBK) www.s-cube-network.eu
  • 2. Learning Package Categorization S-Cube Engineering Principles, Techniques & Methodologies Designing and migrating Service-Based Applications Techniques for design for adaptation © Di Nitto, Cappiello, Bucchiarone
  • 3. Learning Package Overview §  Problem Description (changes in the world and self- adaptation) §  Support to self-adaptation during the lifecycle of a SBA §  Context changes and self-adaptation §  Conclusions © Di Nitto, Cappiello, Bucchiarone
  • 4. The machine and the world Domain properties (assumptions) Goals Specification Requirements
  • 5. Software lifecycle changes §  Clear distinction between development and execution time Design Verification Execution Deployment §  Every change in the world requires the execution be interrupted and a new software be developed and deployed
  • 6. What are the changes we need to care of? Functional Goals/ Requirements Non-functional e.g., moving from Location open air to the meeting room User World e.g., today I do Preferences not feel I can take phone calls New SLA Domain Business properties (context) New regulation e.g., the service I’m using is not working Changes in used resources e.g., I’ve run out System of computational resources SLA has been broken 6
  • 7. How can software systems tackle these changes? Reason and Adapt make decision Monitor 7
  • 8. IBM Model for autonomic computing 8
  • 9. Monitoring §  Monitor all possible data §  Activate/deactivate various levels of monitoring depending on the situation §  Perform some filtering to limit the amount of monitoring data offered to the system §  Correlate data 9
  • 10. Reasoning on monitoring results (1) §  Reasoning can be hardcoded in the execution environment –  E.g.: always replace a failing service with the first one you find in a directory –  Advantage: No need to perform specific programming actions to achieve self-adaptation –  Drawback: Limited to a set of predefined options 10
  • 11. Reasoning on monitoring results (2) §  Programming mechanisms are made available to define adaptation strategies –  Usually, rule-based languages. Strategies defined in terms of Event- conditions-actions rules –  Advantage: good level of flexibility in defining system-dependent strategies –  Drawback: rule-based programming approach is difficult to use. Validation of result is challenging –  Examples: SCENE (SeCSE), SOA4All 11
  • 12. Reasoning on monitoring results (3) §  Modeling languages and approaches are offered to define adaptation strategies … –  Use of formal methods –  Possibility to check the effect of adaptation before enacting it §  Examples: ASTRO, Service-tiles (see later)… 12
  • 13. Actuating adaptation §  Many variations –  Can be specific of a single system instance or it can apply to all running instances –  Can impact only on future instances of system –  Can be permanent or transitory 13
  • 14. Learning Package Overview §  Problem Description (changes in the world and self- adaptation) §  Support to self-adaptation during the lifecycle of a SBA §  Context changes and self-adaptation §  Conclusions © Di Nitto, Cappiello, Bucchiarone
  • 15. Problem we tackle here §  Design for Adaptation –  Adaptation Triggers –  Adaptation Strategies –  Mechanisms to enable adaptation that associate strategies with triggers §  Today –  Existing design methodologies do not take into account the problem of SBAs adaptation in a holistic way, but only in a fragmented way §  Our Proposal –  Design phase –  We suggest a number of design principles and guidelines to enable adaptation –  We propose an extension of a basic iterative SBAs life-cycle
  • 16. Motivating Scenarios §  The life-cycles and frameworks available for SBAs do not support adaptation or tend to focus on specific adaptation strategies §  We consider three scenarios from different domains with different adaptation aspects. –  Automotive –  Wine Production –  Mobile Users §  SBAs have to face very different adaptation needs
  • 17. Automotive Scenario §  Scenario Description –  Supply-chain business processes in the automobile production domain -  Ordering and importing automobile body parts from supplier -  manufactoring activities -  customization of the products according to customers’ needs –  Long running processes involving a wide range of enterprise services -  Agile Service Network (ASN) §  Scenario Adaptations –  Partner can be chosen at runtime from those belonging to the ASN –  SBA needs to recover from some problem and to accomodate some change in the business context
  • 18. Wine Production Scenario §  Scenario Description –  SBA realized on a top of a Wireless Sensor and Actuator Nework –  Activities of vineyard cultivation handling, the control of grapes maturation, their harvesting and fermentation §  Scenario Adaptations –  Ability of autonomously detect problems -  Replace devices that may crash, run out of battery or provide incorrect information -  Change the topology of network to optimize the load and the distribution of the sensors
  • 19. Mobile Users Scenario §  Scenario Description –  A huge number of applications aims to give end user access to various services through mobile devices -  Navigation and route planning, services for accessing social networking and blogging §  Scenario Adaptations –  Continuously changing context -  e.g. Network throughput, user location and time, etc. –  Continuously changing user goals and activities
  • 20. Main Ingredients of an Adaptable SBA
  • 22. Adaptation Strategies §  To mantain aligned the application behaviour with the context and system requirements –  Service substitution –  Re-execution –  (Re-)negotiation –  (Re-)composition –  Compensation –  Log/Update adaptation Information –  Fail
  • 23. Adaptation Triggers §  The adaptation may be motivated by variety of triggers §  Component Services –  Service functionality –  Service quality §  SBAs context –  Business context –  Computational context –  User context
  • 24. Adaptation Strategies & Triggers §  To re-align the application within the system and/or context requirements §  Each trigger can be associated with a set of adaptation strategies
  • 25. Design Guidelines §  Design adaptable SBAs implies relate adaptation triggers and adaptation strategies together –  Modeling adaptation triggers –  Realizing adaptation strategies –  Associating adaptation strategies to triggers §  Design approaches –  Built-in adaptation –  Abstraction-based adaptation –  Dynamic adaptation
  • 26. Discussion – Automotive Scenario §  Properties –  Stable Context and partners –  Long-running SBA instances –  Diversity of Adaptation needs –  Decisions require human involvement §  Adaptation Triggers –  Functional changes –  SLA violations –  Changes in business context §  Design Approach –  Dynamic Adaptation (human-driven) –  Built-in Adaptation (for compensation or process customization) §  Adaptation Strategy –  Service substitution –  SLA re-negotiation –  Re-composition by ad-hoc changes of process control/data –  Trigger evolution
  • 27. Discussion – Wine Scenario §  Properties –  Fully dynamic and unreliable services –  Fully autonomous SBA §  Adaptation Triggers –  Degrade of service (sensor) QoS §  Design Approach –  Abstraction-based adaptation §  Adaptation Strategy –  Re-composition of services –  Domain-specific actions -  e.g. data transfer frequency changes
  • 28. Discussion – Mobile User §  Properties –  Strong dependency from context and goals of users §  Adaptation Triggers –  Context changes –  Changes of user activities §  Design Approach –  Abstraction-based adaptation (for context changes) –  Dynamic adaptation §  Adaptation Strategy –  Service substitution (by dynamic discovery) –  Service re-composition
  • 29. Learning Package Overview §  Problem Description (changes in the world and self- adaptation) §  Support to self-adaptation during the lifecycle of a SBA §  Context changes and self-adaptation §  Conclusions © Di Nitto, Cappiello, Bucchiarone
  • 30. Problem we tackle here §  Focus on the role of the context in Service Based Applications –  How and when the context should be defined –  How the context should be exploited –  How the context should be evolved –  What is the impact of the context on the various adaptation activities
  • 31. Context and context model §  Context: any information that can be used to characterize persons, places or objects that are considered relevant to the interaction between a user and the application §  Context model: Captures dimensions that can trigger adaptation –  Six dimensions -  TimeContext -  AmbientContext: e.g., location of users -  UserContext: i.e., user preferences -  ServiceContext: i.e., services used by the application -  BusinessContext: e.g., conditions in which application runs -  ComputationalContext: e.g., device that runs the application –  We have an XML representation of the context
  • 32. A Context-driven Adaptation Process Monitored Define adaptation and Events monitoring requirements Design Context Context Dimensions Adaptation Early Requirement Properties Design monitoring Requirements Engineering And adaptation Context Adaptation Identify Runtime Requirement strategies Properties adaptation Monitoring Engineering Watchers Context Modeling requirements and Design Operation, Design context-driven Identify management and Reasoners adaptation quality assurance strategy Construction Contextual Monitors Strategy Deployment And Instance Enact and provisioning Adaptation Mechanisms adaptation Deploy Design monitoring Adaptation Contextual Monitors And adaptation Mechanism And Adaptation Mechanisms
  • 34. Design Context Dimensions §  Decide which context dimensions are relevant for the application Application Time Ambient User Service Computing Business Design Health-care X X X X X X Context Dimensions Administrative X X X X X X Census & Reg X X X X X Early Information X X X X X X Requirement Engineering Auxiliary X X X X Requirement Engineering and Design
  • 35. Context modeling §  Instantiate the domain for context dimensions SBA context Ambient Space Zip codes Citizen, User Authority… Normal, Business Emergency Context Modeling Morning, afternoon, Time Requirement evening Engineering and Design Service Used Services Pda, PC, Phone Computing
  • 36. Design of context-driven adaptation reasoner §  Changes in dimensions can trigger the corresponding strategies Application Time Ambient User Service Computing Business Service X X X X X X substitution Design of Re-execution X X X context-driven adaptation reasoner Re-composition X X X Fail (Abort) X X X X Concretization X X X X X X Requirement Engineering Re-negotiation X X X and Design Compensation X X Evolution X X X X X
  • 37. Requirement Engineering Outcome Monitored Events Design Context Dimensions Adaptation Early Requirement Requirements Engineering Context Modeling Adaptation Identify Requirement strategies Engineering adaptation requirements and Design Design context-driven Reasoners Context Identify Properties adaptation strategy Construction
  • 38. Learning Package Overview §  Problem Description (changes in the world and self- adaptation) §  Support to self-adaptation during the lifecycle of a SBA §  Context changes and self-adaptation §  Conclusions © Di Nitto, Cappiello, Bucchiarone
  • 39. Conclusions §  We propose a framework to support the design of SBAs that targets the adaptation requirements raised by context changes §  We propose a novel life-cycle that emphasizes the relevance of the context dimensions in the different facets of adaptation, both during the design phase and at run-time. §  The proposed approach provides guidelines for –  The identification of the relevant context dimensions to monitor –  The definition of the adaptation triggers able to link context changes with suitable adaptation strategies §  The effectiveness of the approach has been evaluated by considering some realistic scenarios
  • 40. Open issues and challenges §  How to test self-adaptable software §  Support to unforeseen changes §  Preventive adaptation §  Dependable self-adaptable software §  … 40
  • 41. Further S-Cube Reading §  A. Bucchiarone, C. Cappiello, E. Di Nitto, R. Kazhamiakin, V. Mazza, M. Pistore, “Design for Adaptation of Service-Based Applications: Main Issues and Requirements”. ICSOC/ServiceWave Workshops 2009: 467-476 §  A. Bucchiarone, C. Cappiello, E. Di Nitto, R. Kazhamiakin, V. Mazza, "A Context-driven Adaptation Process for Service-based Applications". Proceedings of the PESOS workshop in conjunction with the ICSE conference, 2010 §  A. Metzger, E. Schmieders, C. Cappiello, E. Di Nitto, R. Kazhamiakin, B. Pernici, et al. (2010). Towards Proactive Adaptation: A Journey along the S-Cube Service Life-Cycle. In MESOA: 4th International Workshop on Maintenance and Evolution of Service-Oriented Systems. §  A. Bucchiarone, C. Cappiello, E. Di Nitto, S. Gorlatch, D. Meiländer, A. Metzger, “Design for self-adaptation in Service-oriented systems in the Cloud”. In: European Research Activities in Cloud Computing, to appear. © Di Nitto, Cappiello, Bucchiarone
  • 42. 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). © Di Nitto, Cappiello, Bucchiarone