Dynamic upgrade of distributed software components

نویسنده

  • Marcin Solarski
چکیده

prop = false compound_prop = false name = JavaMediaFramework serviceProvider = providerAAA description = "" version = 1.1 TranscoderEngine : Component abstract_prop = false compound_prop = false name = TranscoderEngine serviceProvider = providerAAA description version = 2.0 Duplicator : Componentprop = false compound_prop = false name = TranscoderEngine serviceProvider = providerAAA description version = 2.0 Duplicator : Component abstract_prop = false compound_prop = false name = Duplicator serviceProvider = providerBBB description = "" version = 1.1 Transcoder : Componentprop = false compound_prop = false name = Duplicator serviceProvider = providerBBB description = "" version = 1.1 Transcoder : Component abstract_prop = true compound_prop = true name = Transcoder serviceProvider = providerAAA description = "" version = 1.2 TranscoderService : Serviceprop = true compound_prop = true name = Transcoder serviceProvider = providerAAA description = "" version = 1.2 TranscoderService : Service name = TranscoderService version = 2.1 Figure 22. An example component-based service compliant to the component model. Figure 22 depicts an example service. The service is called TranscoderService and consists of two top components: Transcoder and Duplicator. Whereas the latter is a simple service component, component Transcoder contains further subcomponents: JavaMediaFramework and TranscoderEngine. One key characteristics of the software component as described in section 2.3, is its composibility. A component may be composed of a number components. In terms of deployment, it means that a component may need to access some other components. This idea is expressed by component dependencies. In the model, class Component has access zero of more dependent Component objects. There are three classes of service components that differ in the terms of whether they consist of some service subcomponents and whether they directly refer to a code module. • Simple Component is a service component without any dependencies. It contains just a reference to a code module. • Compound Component is a service component consisting of subcomponents and having a reference to a code module. • Abstract Component is a service component consisting of subcomponents and having no reference to a code module. The relations between the classes modeling the concepts defined above are depicted in a class diagram in Figure 23.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Dynamic Classes: Modular Asynchronous Evolution of Distributed Concurrent Objects

Many long-lived and distributed systems must remain available yet evolve over time, due to, e.g., bugfixes, feature extensions, or changing user requirements. To facilitate such changes, formal methods can help in modeling and analyzing runtime software evolution. This paper presents an executable object-oriented modeling language which supports runtime software evolution. The language, based o...

متن کامل

2K : A Dynamic, Component-Based Operating System for Rapidly Changing Environments

Modern, distributed computing systems need to cope continuously with changes. We identify two kinds of changes: low frequency infrastructural changes, such as software upgrade; and frequent changes in the execution environment, such as network bandwidth, memory availability. This paper proposes 2K , a component-based operating system architecture for rapidly changing environments. In 2K , adapt...

متن کامل

Why Do Upgrades Fail And What Can We Do About It? Toward Dependable, Online Upgrades in Enterprise System

Enterprise-system upgrades are unreliable and often produce downtime or data-loss. Errors in the upgrade procedure, such as broken dependencies, constitute the leading cause of upgrade failures. We propose a novel upgrade-centric fault model, based on data from three independent sources, which focuses on the impact of procedural errors rather than software defects. We show that current approach...

متن کامل

Why Do Upgrades Fail and What Can We Do about It? Toward Dependable, Online Upgrades in Enterprise Systems

Enterprise-system upgrades are unreliable and often produce downtime or data-loss. Errors in the upgrade procedure, such as broken dependencies, constitute the leading cause of upgrade failures. We propose a novel upgradecentric fault model, based on data from three independent sources, which focuses on the impact of procedural errors rather than software defects. We show that current approache...

متن کامل

A Case Study of Dependable Software Upgrade with Distributed Components

Technology presented in the paper [1] allows validation of software architecture before component upgrades. This paper presents a case study of applying this method to the upgrade of a wireless monitoring system. The converged network of voice and data introduces reliability-critical applications to conventional IP networks. Examples of such applications include voice-over-IP (VoIP), messaging,...

متن کامل

Automatic software upgrades for distributed systems

Upgrading the software of long-lived distributed systems is difficult. It is not possible to upgrade all the nodes in a system at once, since some nodes may be down and halting the system for an upgrade is unacceptable. This means that different nodes may be running different software versions and yet need to communicate, even though those versions may not be fully compatible. We present a meth...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2004