Design Goals

The Pegasus design team set some basic design goals early in the development of Pegasus as follows:
  • C++ as the core development language. We selected C++ because it represented a compromise between the ability to work with objects and a language that would be acceptable for high avaailablity platforms.
  • Modular Architecture - We wanted to be able to create the architecture based on well understand standardized modules that have clean well defined interfaces between the modules.
  • Open to a wide range of specialization and customization.
  • Minimize the functionality of the basic core CIMOM. We wanted to create an environment where the majority of customization could be created by working with attached modules that would both extend and modify the functionality of the broker.
  • Use only open source components in the pegasus environment
  • Design for maximum portability. The initial targets would be Linux, Unix, and NT but the product should be usable in a wide variety of platforms and platform sizes.
  • The APIs and interfaces should be clear, given that they are in C++

Alphabetic index Hierarchy of classes