In order to characterise the knowledge model of each agent we have applied advanced knowledge engineering techniques. The particular characteristics of the domain of network management include complex problem-solving tasks (classification, diagnosis, planning, etc.) which suggests to use the concept of model-based system development, that has recently become popular among researchers and knowledge engineers, for the development of large and complex knowledge-based systems. For instance, some recent methodologies and tools such as Kads , KSM , Prot?g?-II , follow this model-based approach. According to this, we have modelled the agents' problem-solving competence as a three step process:
Symptom detection, where administrators watch out for symptoms of undesired network states and behaviours (e.g. a certain service -ftp, www, etc.- does not respond, a host is unreachable, over/under-utilisation of links or equipment, etc.);
Diagnosis, which is done by discriminating hypothesis of different degrees of precision on the basis of network data and the result of exploratory actions to find the causes of symptoms (e.g. inadequate capacity for some resource, unbalance of workload and resources, resource malfunctions, etc.);
Repair, where a sequence of repair actions is proposed to solve the problem.
Figure 2: Local Problem Solving
Each step is realised by customising generic knowledge modelling methods . The heuristic classification problem -solving method  constitutes a typical reasoning structure for classification problems and is used for symptom detection. It follows three steps (abstraction, matching and refinement) which, in our model, are supported by two types of knowledge bases: one about the network model for abstraction and refinement, that includes a declarative representation of the network structure, and another that uses a set of problem scenarios relating symptoms and observables. For diagnosis, the establish and refine method is used . This method can be conceived as an abstract reasoning pattern based on a heuristic search in a taxonomy of hypotheses of problems. Our particular adaptation of the establish and refine method makes use of three primitive inferences:
Refine problem hypotheses uses a knowledge base represented by a taxonomy of hypothesis classes using the is-a relation;
Select best hypothesis makes use of knowledge about the validity of hypotheses (represented using frames) to establish whether any of the input hypothesis can be proved;
Acquire additional observables determines the
sequence of exploratory actions to get additional observables by using a knowledge base
about acquisition methods (represented by rules).
Finally, the hierarchical planning method is used for the repair task. This method is based on a search in a hierarchy of specialists that are knowledgeable about partial abstract plans, which are dynamically composed during the reasoning . The particular instance of the hierarchical planning method that we use in the network management domain, makes use of four specialists (top level, fault detection, performance management and configuration) and uses five primitive inferences supported by four types of knowledge bases.