Designing a Distributed System
Teams may
have cognitive properties that differ from those of the team members. These differences arise from both the effects
of interactions with technology and the effects of a social distribution of
cognitive labor .
A
distributed system can be divided and built from local functional
subsystems. These local functional
systems are coordinated in the interaction of the members of the team. The interactions,
assemble the components, and build a
larger functional system from the subsystems.
The
components of the larger system may be
organised serially, in parallel or a combination of both.
Parallel
organisation increases the speed of the system throughput. While the elements of serial organisation
requires the output of the previous steps it is more organised and
controllable.
A complex distributed
systems with both parallel and serial organisation also needs a synchronization
mechanism. Hence the larger system has
cognitive properties very different from those of any individual .
Dividing the
system to smaller subsystems increases the possibility to use specifically
designed tools.
Interacting
with these tools of trade can be made simpler. Also the social organisation of distributed
cognition helps to alleviate difficulties.
The
decomposition of the task enables each
member of the team to attend closely to only a limited set of data. If the
problem can be divided up, each person can deal with a tractable problem.
“Distributed
computing " increases the prospects for graceful degradation " of system
performance when components fail. Because
the members of the team have overlapping knowledge , it is possible for them to
reconfigure dynamically in response to a problem “.
Adaptation
to external environmental change may be easier in distributed than in centralized systems. If the change is gradual and
small, the necessary adjustments can be done only in the related local
subsystems rather than a global rearrangement.
A tuning and
of the number of small systems and a redesign is possible in order to minimize
the overall system sensitivity to inputs
and environmental distortions.
One of the costs of distribution is the
filtering performed by the sensors. Each stage of input processing works as an
abstraction that eradicates the real input value.
Another cost
of distribution is the potential existence of bottlenecks that cause disruption
of one step by another. Buffers are a
way to overcome bottlenecks.
“The problem
of the design of the distribution of labor : the mapping from individual performance
to the group configuration is a nontrivial one.
Opportunities exist in the distributed version of the task that are simply
not present in the solo-performance case. [1] ”
[1] Edwin Hutchins, Cognition_in_the_Wild