Mobile agents are self Autonomous: i.e. Agent itself decides when and where to migrate next. Applying this definition to a distributed shared memory systems where client's requests are cpu-intensive tasks, can we prefer mobile agents that can select a node itself to migrate to that node and execute client request on it. Is this a good paradigm for java based distributed application where client's requests are cpu-bounded and we let the mobile agent to choose a proper node itself.? if not then what alternatives are their in this scenario?