Critical Review of Existing Configuration Management Methods (original) (raw)
Related papers
Distributed configuration management using composite objects and constraints
Proceedings of 2nd International Workshop on Configurable Distributed Systems
Distributed programming techniques have transformed applications into federations of cooperating semi-autonomous components. Complex interactions between these components create complex interdependencies which are quickly outstripping the capacity of human systems managers. Adding con guration management features to an application's components reduces the exibility and portability of those components. The Raven Con guration Management System (RCMS) provides an environment in which con guration management is handled orthogonally to the task of programming individual components. The RCMS is a mechanism for abstractly grouping related components together and providing rules which govern their interactions. The RCMS combines object-oriented structuring with declarative programming to produce a system which provides improved reliability and performance in the presence of an evolving environment. An initial version of the RCMS has been completed, including a compiler and run-time support routines. Work is continuing on improving the e ciency of the system and exploring extensions to the language.
An object-oriented model of software configuration management
Proceedings of the 3rd international workshop on Software configuration management -, 1991
Software configuration management (SCM) seeks to control the evolution of software systems. In this paper, we introduce a new object-oriented model of SCM that is based on the earlier research results of the SAGA project. The model is, we believe, more general and comprehensive than previous models and uses clasaes to define different kinds of SCM entities, methods to define the operations applicable to the entities, and inheritance to denote generalization relationships between the classes. The paper presents the principal classes in the model, describes their structure and functionality, and explains their roles in the representation of SCM systems.
Reifying configuration management for object-oriented software
1998
Using a solid Software Configuration Management (SCM) is mandatory to establish and maintain the integrity of the products of a software project throughout the project's software life cycle. Even with the help of sophisticated tools, handling the various dimensions of SCM can be a daunting (and costly) task for many projects. The contribution of this paper is to propose a method (based on the use Creational Design Patterns) to simplify SCM by reifying the variants of an object-oriented software system into language-level objects; and to show that newly available compilation technology makes this proposal attractive with respect to performance (memory footprint and execution time) by inferring which classes are needed for a specific configuration and optimizing the generated code accordingly. We demonstrate this idea on an artificial case study intended to be representative of a properly designed OO software. All the performance figures we get are obtained with freely available software, and, since the source code of our case study is also freely available, they are easily reproducible and checkable.
An infrastructure for development of object-oriented, multi-level configuration management services
2005
In an integrated development environment, the ability to manage the evolution of a software system in terms of logical abstractions, compositions, and their interrelations is crucial to successful software development. This paper presents a novel framework and infrastructure, Molhado, upon which to build object-oriented software configuration management (SCM) services in a SCM-centered integrated development environment. Key contributions of this paper include a product versioning model, an extensible, logical, and object-oriented system model, and a reusable product versioning SCM infrastructure, that allow new types of objects to be implemented as extensions of the system model's basic entities. Versions and configurations of objects are managed at different levels of abstraction and granularity. A new SCM-centered editing environment or development environment for a specific development paradigm can be rapidly realized by re-using Molhado's infrastructure and implementing new object types and their associated tools. This paper also demonstrates our approach in creating prototypes of SCM-centered development environments for different paradigms.
Configuration management with logical structures
Proceedings of IEEE 18th International Conference on Software Engineering, 1996
When designing software, programmers usually think in terms of modules that are represented as functions and classes. But using existing configuration management systems, programmers have to deal with versions and configurations that are organized by files and directories. This is inconvenient and error-prone, since there is a gap between handling source code and managing configurations.
Software Configuration Management in an Object Oriented Database
1995
The task of configuration management for software development environments is not well supported by con- ventional files, directories, and ad hoc persistence mech- anisms. Typed, immutable objects combined with ubiquitous versioning provide a much more sound basis. A prototype configuration management system cur- rently under development relies upon persistent objects provided by a commercial object-oriented database sys- tem. Mechanisms and
New Challenges for Configuration Management
1999
More and more systems are developed using components. There is a move from monolithic to open and flexible systems. In such systems, components are upgraded and introduced at run-time, which affects the configuration of the complete system. Keeping up-to-date information about which components are installed is a problem. Updating a component also affects the compatibility of the system. It is therefore important to keep track of changes introduced in the system. In the product life cycle, CM is traditionally focused on the development phase, in particular on managing source code. Now when changes are introduced in systems at run-time and systems are component-based, a new discipline, component configuration management is required. This paper analyses component management and highlights the problems related to component configuration. Requirements on component configuration management are outlined, and some directions to possible solutions of the problems are given.
Configuration support for system description, construction and evolution
ACM SIGSOFT Software Engineering Notes, 1989
Software systems can be conveniently described, constructed and managed in terms of their configuration, where configuration is the system structure defined as the set of constituent software components together with their interconnections. A specification of the system confiig;uration can be used both to describe the required system structure and to generate the actual system itself. Evolution of the system is achieved by monitoring the status of the components and making extensions or changes to the system configuration by the addition of software components or the replacement of existing ones. The performance of these tasks at the configuration level is termed configuration programming, and is best supported by the use of a declarative configuration language and associated support tools. This paper discusses the main princilples of this approach and illustrates its practice by describing the support which has been provided in the Conic environment for distributed systems.
Modularisation of Software Configuration Management
Lecture Notes in Computer Science, 2000
The principle of modularisation is one of the main techniques that software designers use to tame the complexity of programming. A software project, however, is complex in many other areas than just programming. In this paper, we focus on one of these complex areas, namely software configuration management, and outline how modularisation is natural and powerful also in this context. The analysis is partly based on experiences from case studies where small-to medium-sized development projects are using a prototype tool that supports modular software configuration management. 1 Note that a Ragnarok component does not form a unit of separate deployment and should not be confused with 'component' as defined in e.g. COM or CORBA.
No . 02-07 A Tool for Subsystem Configuration Management
2004
This paper describes a tool that manages a hierarchical, “is a subsystem of”-structure on a set of software development artefacts and that provides configuration management (CM) for subsystems by interacting with an existing CM tool. The tool is based on a recently proposed framework for subsystem-based configuration management. The tool demonstrates the feasibility of the framework and develops it further. The design of the framework and the tool was developed in collaboration with Invensys SCADA Development and it is discussed in relation to their current software development process.