The following list is a select number of recommendations and observations that have come to light during the research and writing of this book. These recommendations are not in any specific orderrather they are a list of thoughts, suggestions, and recommendations that may make autonomic computing more functional.
-
Develop autonomic tools and technologies on top of existing standards.
-
Develop autonomic-based systems using multivendor approaches.
-
Develop metrics to assess the relative strengths and weakness of different approaches.
-
Provide mature software development methodologies and tools for autonomic-based systems.
-
Develop sophisticated yet easy-to-use autonomic environments to include support for design, test, maintenance, and visualization of autonomic-oriented systems.
-
Develop libraries of interaction protocols designed for specific autonomic behavior interactions.
-
Develop the ability for autonomics to collectively evolve languages and protocols specific to the application domain and the autonomics involved.
-
Work toward autonomic-enabled semantic Web services.
-
Develop tools for effective sharing and negotiation strategies.
-
Develop computational models of norms and social structure.
-
Develop sophisticated organizational views of autonomic systems.
-
Advance the state of the art in the theory and practice of negotiation strategies.
-
Develop an enhanced understanding of autonomic society dynamics.
-
Advance the state of the art in the theory and practice of argumentation strategies.
-
Develop autonomic-based eScience systems for the scientific community.
-
Develop techniques for allowing users to specify their preference and desired outcome of negotiation in complex environments.
-
Develop techniques to enable autonomics to identify, create, and dissolve coalitions in multiautonomic negotiation and argumentation contexts.
-
Work on enhancing autonomic abilities to include appropriate adaptation mechanisms.
-
Develop techniques for autonomic personalization.
-
Develop distributed learning mechanisms.
-
Develop techniques to enable automatic runtime reconfiguration and redesign of autonomic systems.
-
Develop techniques for testing the reliability of autonomics.
-
Undertake research on methods for ensuring security and verifiability of autonomic systems.
-
Develop and implement trust and reputation mechanisms.
-
Engage in related-research standardization activities (e.g., UDDI, WDL, WSFL, XLANG, OMG, CORBA, and other widely used industrial-strength open standards).
-
Build autonomic prototypes spanning organizational boundaries (potentially conflicting).
-
Encourage early adopters of autonomic technology, especially those who take some risk. Provide incentives.
-
Develop a catalogue of early adopter case studies, both successful and unsuccessful.
-
Provide analyses and publish reasons for success and failure cases.
-
Identify and publish best practices for autonomic-oriented development and deployment.
-
Support open standardization efforts.
-
Support early industry training efforts.
-
Provide migration paths, helping industries protect their investments and smoothly evolve autonomic-based services, solutions, systems, and products.
-
Focus on process optimization, intelligent services and added value functionality, rather than on creating new infrastructure.
-
Build technology bridges with distributed systems, software engineering, and object technology communities.
-
Clearly articulate the relationship between distributed software engineering and autonomic computing.
-
Explore and clarify relationships between autonomic theories and abstract theories of distributed computation.
-
Build bridges, especially to uncertainty in AI, logic programming, and traditional mathematical modeling communities.
-
Begin to teach autonomic computing in colleges and universities.
-
Establish and fund an industry-wide Autonomic Institute and establish as participants IBM, Sun, HP, Cisco, Oracle, and all other industry vendors.