Encyclopedia  |   World Factbook  |   World Flags  |   Reference Tables  |   List of Lists     
   Academic Disciplines  |   Historical Timeline  |   Themed Timelines  |   Biographies  |   How-Tos     
Sponsor by The Tattoo Collection
Delegation
Main Page | See live article | Alphabetical index

Delegation

Business

Delegation is handing a task over to a subordinate. It is the assignment of authority and responsibility to another person to carry out specific activities. It allows a subordinate to make decisions, i.e. it is a shift of decision-making authority from one organizational level to another lower one.

Delegation, if properly done, is not abdication.

Ultimate responsibility CANNOT be delegated.

Factors affecting delegation: i) size of organization ii) importance of the duty or decision iii) task complexity iv) organizational culture v) qualities of subordinates

Making delegation effective

i) clarify the assignment ii) specify the subordinate's range of discretion (authority should be commensurate with responsibility) iii) allow the subordinate to participate

Object-oriented programming

In object-oriented programming it is a very simple yet very powerful concept: handing a task over to another part of the program. In OO it is used to describe the situation wherein an object passes a task to another object.

In C++ say there is a class A defined as...

class A 
{
  public:
    foo()
    {
      cout<<"Object A doing the job";
    }
};

Now if there is another class B defined as...

class B
{
  public:
    A a;
    foo()
    {
       a.foo();
    }
};

... any object of class B will delegate the execution of its function foo to an object of class A.

It is possible to extend this idea by making A a virtual base class and foo a pure virtual function. In that case one can further extend object A via sub classes. The result would be that during run time depending upon the subclass of the actual object stored in the variable "a" declared in class B, an appropriate foo would be called.