Revision as of 11:40, 7 February 2007

Overview

The mission of the Eclipse COSMOS Project is to build a generic, extensible, standards-based components for a tools platform upon which software developers can create specialized, differentiated, and inter-operable offerings of tools for system management.

Principal focuses of COSMOS include: data collection and a server component, monitoring of the user interface, resource modeling and deployment. Resource instrumentation also is a critical component, with industry specifications including WSDM (Web Services Distributed Management), JMX (Java Management Extensions) and the Open Group's ARM (Application Resource Measuremen) standard all factored into COSMOS. Other projects also may play a role in COSMOS, such as the Eclipse Corona application lifecycle management project and the Eclipse Test & Performance Tools Platform.

Historically, managing systems and applications is an afterthought and generally left to post-test, and sometimes post-deployment. The link between management tools and the applications they manage are usually very weak resulting in management tools that appear at best to be bolted or glued on to the applications and at worst, have little to no application knowledge and merely work with the artifacts of the applications and the systems from which they are built.

Increasingly, these applications are made up of many components, many providing or consuming services to other applications and their components. The relationships amongst these components represent dependencies that are important to properly manage and maintain these complex systems. Systems management tools attempt to monitor and manage these systems, but it is extremely challenging given that many of the underlying assumptions, dependencies, and expectations of the original architects are seldom communicated to or through these tools.

Over the last five years, there have been many advances in areas of application instrumentation for testing, performance analysis, and configuration. Many underlying platforms as well as applications are well instrumented. However, there is still a large knowledge gap between defining points of instrumentation by the developers and the tools that IT specialists use to manage these systems once they have been deployed.

Service Modeling Language (SML) was recently introduced to enable architects, developers, and systems designers to describe complex services. These models typically describe information necessary to enable automation of many of the management tasks that span the lifecycle of the applications and systems that make up a service.

COSMOS is proposing to close the knowledge gap between the development of applications and their management by providing SML-based frameworks and tools within Eclipse. Leveraging work from the build-to-manage workgroups and standard resource models being defined in SML, COSMOS will provide tools for the developers and architects to create models for their applications and services and link them to the instrumentation provided by their application components. COSMOS will also provide working management tools for use by developers and IT management specialists along with a tools framework that consumes these models and underlying instrumentation.