By
Jacob Palme, e-mail jpalme@dsv.su.se,
at the research group for CMC (Computer Mediated Communication), which
is a part of the K2Lab laboratory at
the DSV university department. Last
revision: 27 September 1999.
Of
course, user influence on software design is useful and good. This document
is in no way intended to say that user influence on software design is
bad or should not be used. One should however be aware, that user influence
on software design can have not only positive but also negative effects
on the quality of the software. Here is an explanation why.
- The
successes of human society is based on the flexibility of humans and
their willingness to adapt their activities to different circumstances.
- Humans
are most happy and productive if they can influence their living environment
and contribute to solving problems together.
- Laws
and regulation are a form of communication between humans. They are
in reality only guidelines, people have to adapt to varying circumstances
and interpret and apply the rules with understanding and human compassion.
If everyone had to adhere 100 % to all laws and regulations, human societies
would not work any more.
- This
is usually no problem when the laws and regulations are written on paper.
But if the laws and regulations are programmed into computers, so that
the computers control what is allowed and not allowed, serious problems
will often occur. In the best case, people will only be unhappy and
unproductive, in the worst case, major catastrophs can occur.
- Computer
software must be designed to allow flexibility and human choice. Laws
and regulations should be interpreted by humans, not by machines.
- Making
the software more complex, to include in it more different special handling
of special circumstances, will often only make it worse. Instead of
complex software, software should be flexible and open-ended.
- There
is a human tendency when designing software to want to include in it
"proper procedure" and "experience how things should
be done". This tendency can easily produce unusable or unsuitable
software.
- If
a software grows during several years in close interaction with its
users, then there is a risk that the software becomes very complex in
a non-logical way. This is no problem for the existing users, because
they grow with the software. But it may make the software difficult
to use for new users. The old users become a kind of sacred priesthood,
the only people who really understands and can manage the software.
To avoid this problem, software should be influenced by needs of new
users, not only by the requests coming from experienced users.
- User
influence, in the form of user groups which discuss and propose how
the software should work, need not help with this problem. In fact,
my experience is that users in such user groups often are more eager
to use the computer to enforce "correct behaviour".
- Possible
exception: Certain security rules which humans tend to forget if they
are not enforced by technical means.
|