Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Deployment and Mobility. Introduction Deployment is the placing of software on the hardware where it is supposed to run. Redeployment / migration.

Similar presentations


Presentation on theme: "Software Deployment and Mobility. Introduction Deployment is the placing of software on the hardware where it is supposed to run. Redeployment / migration."— Presentation transcript:

1 Software Deployment and Mobility

2 Introduction Deployment is the placing of software on the hardware where it is supposed to run. Redeployment / migration of software components while the system is in operation is mobility.

3 A Wireless Sensor Network System

4 Deployment and Mobility Challenges Geographically Distributed hardware Heterogeneity of hardware Different configuration Differing life span Versioning Partial mobility Locating the hardware/software/service

5 Deployment Basic Concepts Software system is deployed on one or more hardware devices called hosts or sites. Each site provides some resources. E.g. – – Hardware (Memory, CPU) – Network (Protocols and IP port numbers) – Peripheral Devices (hard disks and keyboard) – System Software (OS, drivers) – Other application level software (GUI builders, DB) – Data Resources (data files, GUIDs)

6 Deployment Basic Concepts contd. Software system consists of set of components and connectors. Multiple versions of these components and connectors may exist. Version is time-ordered revision, platform- specific revision or functional revision.

7 Deployment Activities Planning Modeling Analysis Implementation

8 Deployment Planning In planning stage we consider the behavior of the system and statistics related to that behavior. System should ensure certain desired system properties. ( QoS ) – Dependability – Availability – Security – Fault-Tolerance – Durability, etc.

9 Planning Challenges Large no. of system parameters Conflicting service qualities (e.g. Security vs. Efficiency) Services & their QoS influence user’s satisfaction Space of possible deployment architectures is exponentially large. – c components, h hosts -> h C possible deployments.

10 Space of possible deployment architectures Dig : 1 Dig : 2

11 Example of Multiple Deployment Choices over 2-QoS attributes Latency Durability 1 5 4 3 2 1 5 4 3 2 6 Deployment 1 Deployment 2 Deployment 3 Deployment 4 Latency 1 5 4 3 2 6

12 Pareto Optimal Solution Better-Cheaper-Faster----Pick any two ! Automated support for deployment modeling and analysis.

13 Deployment Modeling Modeling Considerations – Software system elements (components and connectors) Configuration of these elements Parameters – Hardware system elements (host machines, network, devices, controllers, etc.) Configuration Parameters – Set of constraints placed on these elements and/or parameters – Formal definition of QoS dimensions of interest

14 Deployment Model

15 Deployment Analysis Putting efforts for Planning and Modeling is worthwhile if the model is used efficiently for deployment. Detailed analysis has to be done to ensure that. – Are the shortlisted deployments valid ? – Which one of them is the best ? – Does it exhibit acceptable properties ? Or must an even better deployment be found ? – What is the best deployment possible for the given system (Ranking of QoS)

16 Deployment Implementation

17 Software Deployment Issues Change Management Dependencies among Components Coordination Large-scale Content Delivery Managing Heterogeneous Platforms Deployment Process Changeability Integration with the Internet Security: Privacy, Authentication, and Integrity

18 Tool Support Functions of deployment tools – Model – Analyze – Implement – Monitor – Update

19 DeSi

20 XTEAM Provides ADL extension for mobile systems Implements a set of dynamic analysis on top of the model interpreter framework Model Interpreter framework allows the architect to implement custom analysis techniques without knowing details of semantic mapping

21 XTEAM

22 XTEAM Deployment Model and Analysis

23 Software Mobility Physical Mobility Code Mobility / Logical Mobility – Stateful Mobility (Strong Mobility) – Stateless Mobility (Weak Mobility) Code Paradigms – Fixed Code Paradigm Client-Server – Mobile Code Paradigm

24 Mobile Code Paradigms Remote Evaluation Source HostDestination Host Know- how Resources Destination Host Source Host Result Know- how Resources

25 Code-on-Demand Destination HostSource Host Know- how Resources Source Host Destination Host Result Know- how Resources

26 Mobile Agent Host 1 Host 2 Destination Host Know- how Resources 1 Resources 2 State Know- how Resources 1

27 Architecture-based Dynamic Adaptation Model

28 Key Aspects Planning (Top Part) Analysis (Top Part) implementation should never be modified without understanding the architectural implications of that modification (Bottom Part)

29 Code Migration Challenges

30 Challenges Availability State Management Scheduling of migration Performance Locating code and resources Security threat Energy Consumption

31 MobilityDeployment Maintains StateNo State DowntimeNot running Choosing time of migration to maintain performance Does not affect performance Time constrainedAllows more planning and analysis

32 Summary What is Deployment and Mobility ? Challenges Deployment Activities – Planning, Modeling, Analysis & Implementation Tools Support Mobility Mobile Code Paradigm – Remote evaluation, C-O-D, Mobile Agent

33 References A Characterization Framework for Software Deployment Technologies – Antonio Carzaniga, Alfonso Fuggetta, Richard S. Hall, Dennis Heimbigner, Andre van der Hoek and Alexander L. Wolf Software architecture and mobility A roadmap – Nenad Medvidovic, George Edwards An architecture-driven software mobility framework – Sam Malek, George Edwards, Yuriy Brun, Hossein Tajalli, Joshua Garcia, Ivo Krka, Nenad Medvidovic, Marija Mikic- Rakic, Gaurav S. Sukhatme


Download ppt "Software Deployment and Mobility. Introduction Deployment is the placing of software on the hardware where it is supposed to run. Redeployment / migration."

Similar presentations


Ads by Google