|
CIM Tutorial
> CIM > Overview
> Object Orientated Overview
 |
Object Orientated Overview
|
 |
Overview | CIM
Schema | Extension Schema | CIM
Certification | CIM Query Language
Object Orientated Overview
| Specification | Meta
Schema | MOF | UML
A prerequisite of understanding and working with CIM is understanding
object-oriented modeling. The goal of this section is to deliver
a "high-level" overview of the object-oriented model and the various
objects of the CIM Schema relate to each other.
CIM is based on an object-oriented model. It is important to recognize
that object-oriented modeling is different from object-oriented
programming.
Object-oriented modeling is a formal way of representing something
in the real world. It draws from traditional set theory and classification
theory. Some basics to keep in mind in object-oriented modeling
are that:
- Instances are things.
- Properties are attributes.
- Relationships are pairs of attributes.
- Classes are types of things.
- Subclasses are subtypes of things.
Note the concept of object-oriented modeling is not limited to
computer-related elements. One may use object-oriented modeling
to represent many different types of things, from organizational
structures, to organic materials, to physical buildings. In the
context of CIM and WBEM, object-oriented modeling is used to model
hardware and software elements.
For illustrative purposes of this tutorial we are going to use
the "Cheeseburger Example" to explain the key concepts of object
oriented modeling.
Abstraction: DENotes the essential characteristics of an
object that distinguish it from all other kinds of objects and thus
provide crisply defined conceptual boundaries.
Example: A Cheesburger - is good to eat and fun to cook.
Modularity: Decomposition of abstractions into discrete
units.
Example: The various "layers" of a cheesburger - the bun, the lettuce,
the ketchup, the mayonnaise, the burger, the cheese, onions, pickels,
etc.
Encapsulation: Process of compartmentalizing the elements
of an abstraction that constitute its structure and behavior; encapsulation
serves to separate the interface of an abstraction and its implementation.
Example:
- To cook the cheeseburger: - Is the stove available? Are the
burners working? Are the ingredients available?
- To eat the cheeseburger: - Is it made correctly? Is my plate
clean or disgusting?
Hierarchy: A ranking or ordering of abstractions.
Example: A cheeseburger is really a subclass of a hamburger with
cheese added which is a sub class of sandwich which is a subclass
of the Hierarchal superclass food.
Key Elements: Classes – A collection of definitions of state,
behavior, and/or identity
Objects – Instances of a class
Associations - Relationships
- Dependency
- Identity
- Aggregation
- Composition
- And others
|