First of all note the primary equation Work=Duration * Units. In the normal
course of events you might estimate duration, assign resources at a certain
units level, and project will calculate the work the task requires. We are
waxing widgets and expect it to take 5 days. We assign John, who works 8
hours a day to it 100%. Thus the work required is 40 man-hours. Now ...
What should happen if we edit that resource assignment? If I change John to
50%, what does that mean? Is it really only 20 man-hours of work required
but we still want to allow a week to do it for some reason? Or do we need
to use John somewhere else 4 hours out of each day and so can only have him
waxing widgets for 4 hours a day and it will take 10 days for him to do the
40 required man-hours of work? If it's the first option we set the task to
fixed duration before changing his assignment. If it's the latter case, we
set the task to fixed work before making the edit. The default type is
fixed units, but if we change the units in a fixed units task, it behaves as
if it were a fixed work.
The short definiton is that the task type determines which of the 3 terms -
work, duration, or units - Project will hold constant when you edit the
resource assignments after the first assignment. If I change the duration,
for example, task type determines whether Project will recalculate the
resource units or the man-hours of work.