A Cooperative Approach to Support Software Deployment Using the Software Dock - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

A Cooperative Approach to Support Software Deployment Using the Software Dock

Description:

Deactivate. Update. Reconfigure. Adapt. Remove. Producer-Side Processes. Release ... Deactivate. Inverse of Activate process. Consumer-Side Processes (2/2) Update ... – PowerPoint PPT presentation

Number of Views:67
Avg rating:3.0/5.0
Slides: 30
Provided by: chiyou
Category:

less

Transcript and Presenter's Notes

Title: A Cooperative Approach to Support Software Deployment Using the Software Dock


1
A Cooperative Approach to Support Software
Deployment Using the Software Dock
  • Presenter Chiyoung Seo

2
Contents
  • Software Deployment Life Cycle
  • Requirements of New Deployment Technologies
  • Software Dock Architecture
  • Deployable Software Description Format
  • Software Dock Processes
  • Discussion

3
Software Deployment Life Cycle (1/2)
  • In the past, just defined as the installation of
    a software system (e.g. CD-ROM)
  • The connectivity of large networks is affecting
    the way of software deployment
  • Requires much co-operation and negotiation among
    software producers and consumers
  • Allows software producers to offer their
    consumers high-level deployment services

4
Software Deployment Life Cycle (2/2)
Update
Reconfigure
Adapt
Software Producers
Software Consumers
Release
Retire
Install
Activate
Deactivate
Remove
5
Producer-Side Processes
  • Release
  • Consists of all activities needed to package,
    prepare, provide, and advertise a software system
  • Contains both software components and a
    description of a software system
  • Retire
  • Withdraws support for a software system
  • Distinct from the consumer-side remove process

6
Consumer-Side Processes (1/2)
  • Install
  • Initial deployment activity performed by a
    consumer
  • Interprets the description of a software system
    and the information about the target consumer
    site
  • Activate
  • Responsible for making a deployed software system
    executable
  • Deactivate
  • Inverse of Activate process

7
Consumer-Side Processes (2/2)
  • Update
  • Deploys a new, previously unavailable
    configuration of a deployed software system
  • Reconfigure
  • Selects a different configuration of a deployed
    software system from its existing description
  • Adapt
  • Maintains the consistency of the current
    configuration of a deployed software system
  • Remove
  • Undo all of the changes to the consumer site,
    caused by a given software system

8
Contents
  • Software Deployment Life Cycle
  • Requirements of New Deployment Technologies
  • Software Dock Architecture
  • Deployable Software Description Format
  • Software Dock Processes
  • Discussion

9
Requirements of New Deployment technologies
  • Operate on a variety of platforms and network
    environments
  • Provide a semantic model for describing a wide
    range of software systems
  • Provide a semantic model of target sites for
    deployment
  • Provide decentralized control for both software
    producers and consumers

10
Contents
  • Software Deployment Life Cycle
  • Requirements of New Deployment Technologies
  • Software Dock Architecture
  • Deployable Software Description Format
  • Software Dock Processes
  • Discussion

11
Software Dock Architecture (1/4)
12
Software Dock Architecture (2/4)
  • Release dock
  • Serves as a release repository for software
    systems
  • Each software release is described using a
    standard deployment schema
  • Each software release is accompanied with generic
    agents that perform deployment processes
  • Provides an interface for agents to access its
    services and content
  • Generates events as changes are made to the
    software releases

13
JDK 1.1Release
Install Agent
Publish events
Requests the precise set of artifacts
JDK 1.1Release
Subscribes for the events
Install Agent
Update Agent
Informationabout the site
14
Software Dock Architecture (3/4)
  • Field dock
  • Serves as an interface to the consumer site
  • Provides information about the state of the
    consumer sites resources and configuration
  • Agents from release docks dock themselves at the
    field dock of the target consumer site
  • The interface provided is the only interface
    available to an agent

15
Software Dock Architecture (4/4)
  • Similarities between release and field docks
  • Server where agents can dock and perform
    activities
  • Manages a standardized, hierarchical registry of
    information
  • Nested collections of attribute-value pairs
  • Any change to a registry generates an event

16
Contents
  • Software Deployment Life Cycle
  • Requirements of New Deployment Technologies
  • Software Dock Architecture
  • Deployable Software Description Format
  • Software Dock Processes
  • Discussion

17
DSD Format (1/2)
  • Required for automating software deployment
    processes
  • Standardized hierarchical schema for describing
    a software system
  • Models software systems as collections of
    properties
  • Five classes of semantic information
  • Configuration
  • Describes revisions and variants of a software
    system and resources provided by the software
    system

18
DSD Format (2/2)
  • Five classes of semantic information
  • Assertions
  • Describe constraints on consumer-side properties
    that must be true
  • Dependencies
  • Describe constraints on consumer-side properties
    where a resolution is possible if not satisfied
  • Artifacts
  • Describe the actual physical artifacts comprising
    the software system
  • Activities
  • Describe any specialized activities beyond the
    range of deployment processes

19
Property Name Version Type String
Description Version information of a software
system Property Name Online Help
Type Boolean Description Include online
help (More definitions of software system
properties) Configuration Title Java
Development Kit Version 1.2 Online Help
true Assertion Condition (OS
Solaris) (OS WinXP) Description
Test for supported operating systems
Artifacts Guard (Online Help true)
Artifact Guard (OS Solaris)
SourceName help.html Source
/proj/doc DestinationName help.html
Destination doc Mutable false
Artifact Guard (OS WinXP)
SourceName help.hlp Source
/proj/doc DestinationName help.hlp
Destination doc Mutable false

An Example of DSD Formats
20
Contents
  • Software Deployment Life Cycle
  • Requirements of New Deployment Technologies
  • Software Dock Architecture
  • Deployable Software Description Format
  • Software Dock Processes
  • Discussion

21
Software Dock Processes (1/4)
  • Generic deployment process definition
  • Install, update, reconfigure, adapt, remove
    processes
  • Characterized as the transformation of one
    configuration into another valid configuration
  • Given a new set of valid property values,
  • Transform its current configuration into the new
    configuration by performing differential
    processing
  • E.g. version change from 1.0 to 1.1

22
Software Dock Processes (2/4)
  • Specific deployment process definition
  • Install agent
  • First, retrieve the current DSD specification for
    a software
  • Then, query the field dock and the user to
    determine the configuration of the software
    release
  • Finally, perform the actions of testing
    assertions, resolving dependencies, retrieving
    artifacts

Configuration editor for users
23
Software Dock Processes (3/4)
  • Update agent
  • Deploy a new, previously unavailable
    configuration of a deployed software
  • The new configuration is provided in an updated
    DSD specification
  • Retrieve the new DSD specification from its
    release dock

24
Software Dock Processes (4/4)
  • Reconfigure agent
  • Not retrieving a new DSD specification
  • Manipulates the existing DSD specification of the
    deployed software
  • Adapt agent
  • Maintains the consistency of a deployed software
    release
  • Remove agent
  • Responsible for removing a deployed software
    release

25
Contents
  • Software Deployment Life Cycle
  • Requirements of New Deployment Technologies
  • Software Dock Architecture
  • Deployable Software Description Format
  • Software Dock Processes
  • Discussion

26
Discussion (1/2)
  • Pros.
  • Suggested and explained the life cycle of
    software deployment that hasnt been considered
    before
  • The first work to consider the large network
    connectivity in deploying software systems
  • Cons.
  • Not dealing with security issues enough
  • Not considering the overhead of the deployment
    framework
  • How to deploy distributed, coordinated software
    systems

27
Discussion (2/2)
  • Relevance to embedded systems
  • How to update the configuration of a deployed
    software system in highly distributed
    environments
  • Need more lightweight deployment framework in
    resource constrained portable devices
  • How to redeploy software components interacting
    each other over resource constrained portable
    devices during runtime
  • Based on network reliability, battery power
  • In real time systems, is the event-based system
    for update process appropriate?

28
A particular access point
Publish events
Subscribes for the events
Install Agent
Update Agent
29
Battery 20
Battery 80
Battery 70
A sample deployment architecture with 5 hosts and
40 components (from Sam Maleks paper)
Write a Comment
User Comments (0)
About PowerShow.com