Эта тема чрезвычайно важна для правильного понимания сути обсуждаемых далее тем. Оставшийся один на один с машиной человек называется пользователем. Пользователь - часть человеко-машинной системы, он ставит перед машиной задачи и добивается их решения. Специалист-разработчик не является частью этой системы: свою работу - создание системы и инструкций к ней - он уже сделал.
Из множества человеко-машинных систем мы рассмотрим так называемые операционные среды (или операционные системы) - системы общего назначения, предоставляющие пользователю возможность решать самые разнообразные задачи.
Операционная среда - это совокупность инструментов, методов их интеграции и приемов работы с ними, позволяющая решать любые задачи в инструментальной области и большинство задач в прикладных областях.
Пользователь как клиент
Несмотря на сложность систем и разнообразие решаемых ими задач, вполне возможно оставить для взаимодействия с человеком только те управляющие возможности, что лежат в прикладной области. Иными словами, человеку будет доступно (и известно) лишь то, что относится к постановке и решению задачи. При этом инструментальную область - все, что относится к устройству системы и управляет ходом решения, - следует оставить доступной только разработчикам и экспертам, а от конечного пользователя скрыть.
В чем будет заключаться участие человека в такой системе? По большей части в точном следовании "инструкциям по применению": система сложна, ее поведение непредсказуемо (оттого, что непонятно ее устройство), и, если по незнанию нажать какую-нибудь не ту кнопку, результат может оказаться плачевным. Поскольку действия человека сводятся к выполнению неких процедур, такие системы можно назвать процедурными.
Уровень знаний о системе в этом случае может быть минимальным (как включить, как заставить решать задачу и т. п.). Более того, знание устройства системы, понимание принципов ее работы помогут пользователю лишь в малой степени, потому, что возможности изменить эти принципы у него нет (иначе она давно бы уже вышла из строя из-за неумелого руководства). Что следует знать досконально, так это то, какие именно действия над объектом будут выполнены, если потянуть за тот или иной рычаг управления.
Кто оказывается главным в такой системе, от кого зависит качество получаемого продукта? Машина, а точнее создатели системы, заложившие в нее соответствия между рычагами управления и выполняемыми действиями. Если после нажатия очередной кнопки объект, вопреки сказанному в инструкции, испортился - это недоработка авторов, а не ошибка клиента: все, что он мог сделать, - не нажимать на кнопку. Клиент такой системы требует гарантий качества от разработчиков, потому что сам в силах гарантировать только неукоснительное следование инструкциям.