 |
|
An autonomic computing system needs to "know itself"
- its components must also possess a system identity. Since a "system"
can exist at many levels, an autonomic system will need detailed
knowledge of its components, current status, ultimate capacity,
and all connections to other systems to govern itself. It will need
to know the extent of its "owned" resources, those it can borrow
or lend, and those that can be shared or should be isolated.
|
 |
|
An autonomic computing system must configure and reconfigure
itself under varying (and in the future, even unpredictable) conditions.
System configuration or "setup" must occur automatically, as well
as dynamic adjustments to that configuration to best handle changing
environments.
|
 |
|
An autonomic computing system never settles for the
status quo - it always looks for ways to optimize its workings.
It will monitor its constituent parts and fine-tune workflow to
achieve predetermined system goals.
|
 |
|
An autonomic computing system must perform something
akin to healing - it must be able to recover from routine and extraordinary
events that might cause some of its parts to malfunction. It must
be able to discover problems or potential problems, then find an
alternate way of using resources or reconfiguring the system to
keep functioning smoothly.
|
 |
|
A virtual world is no less dangerous than the physical
one, so an autonomic computing system must be an expert in self-protection.
It must detect, identify and protect itself against various types
of attacks to maintain overall system security and integrity.
|
 |
|
An autonomic computing system must know its environment
and the context surrounding its activity, and act accordingly. It
will find and generate rules for how best to interact with neighboring
systems. It will tap available resources, even negotiate the use
by other systems of its underutilized elements, changing both itself
and its environment in the process -- in a word, adapting.
|
 |
|
An autonomic computing system cannot exist in a hermetic
environment. While independent in its ability to manage itself,
it must function in a heterogeneous world and implement open standards
-- in other words, an autonomic computing system cannot, by definition,
be a proprietary solution.
|
 |
|
An autonomic computing system will anticipate
the optimized resources needed while keeping its complexity hidden.
It must marshal I/T resources to shrink the gap between the business
or personal goals of the user, and the I/T implementation necessary
to achieve those goals -- without involving the user in that implementation.
|