Расчеты по модели GOMS

Вычисления времени, необходимого на выполнение того или иного действия (например, «переместить руку с графического устройства ввода на клавиатуру и набрать букву»), с помощью модели GOMS начинаются с перечисления операций из списка жестов модели GOMS, которые составляют это действие (в приведенном примере это H K). Перечисление движений (K, P и H) — это довольно простая часть модели GOMS. Более сложным, например, в модели скорости печати GOMS, является определение точек, в которых пользователь остановится, чтобы выполнить бессознательную ментальную операцию, — интервалы ментальной подготовки, которые обозначаются символом M. Основные правила (по Card, Moran и Newell, 1983, с. 265), позволяющие определить, в какие моменты будут проходить ментальные операции, представлены в табл. 1.

 

Таблица 1. Расстановка ментальных операций
Правило 0 Начальная расстановка операторов M Операторы M следует устанавливать перед всеми операторами K (нажатие клавиши), а также перед всеми операторами P (указание с помощью мыши), предназначенными для выбора команд; но перед операторами P, предназначенными для указания на аргументы этих команд, ставить оператор M не следует.
Правило 1 Удаление ожидаемых операторов M Если оператор, следующий за оператором M, является полностью ожидаемым с точки зрения оператора, предшествующего M, то этот оператор M может быть удален. Например, если вы перемещаете мышь с намерением нажать его кнопку по достижении цели движения, то в соответствии с этим правилом следует удалить оператор M, устанавливаемый по правилу 0. В этом случае последовательность P M K превращается в P K.
Правило 2 Удаление операторов M внутри когнитивных единиц Если строка вида M K M K M K... принадлежит когнитивной единице, то следует удалить все операторы M, кроме первого. Когнитивной единицей является непрерывная последовательность вводимых символов, которые могут образовывать название команды или аргумент. Например Y, перемещать, Елена Троянская или 4564.23 являются примерами когнитивных единиц.
Правило 3 Удаление операторов M перед последовательными разделителями Если оператор K означает лишний разделитель, стоящий в конце когнитивной единицы (например, разделитель команды, следующий сразу за разделителем аргумента этой команды), то следует удалить оператор M, стоящий перед ним.
Правило 4 Удаление операторов M, которые являются прерывателями команд Если оператор K является разделителем, стоящим после постоянной строки (например, название команды или любая последовательность символов, которая каждый раз вводится в неизменном виде), то следует удалить оператор M, стоящий перед ним. (Добавление разделителя станет привычным действием, и поэтому разделитель станет частью строки и не будет требовать специального оператора M.) Но если оператор K является разделителем для строки аргументов или любой другой изменяемой строки, то оператор M следует сохранить перед ним.
Правило 5 Удаление перекрывающих операторов M Любую часть оператора M, которая перекрывает оператор R, означающий задержку, связанную с ожиданием ответа компьютера, учитывать не следует.

 

9. Принципы и методы разработки надежного программного обеспечения. Основные определения, связанные с обнаружением и исправлением ошибок.

Основные определения, связанные с обнаружением и исправлением ошибок.

Все принципы и методы разработки надежного программного обеспечения можно разбить на четыре группы:

Предупреждение ошибок. не допустить появление ошибок в готовой программе

Обнаружение ошибок. включить средства обнаружения ошибок в само программное обеспечение. Немедленное обнаружение имеет два преимущества: можно минимизировать как влияние ошибки, так и последующие затруднения для человека, которому придется извлекать информацию об этой ошибке, находить ее место и исправлять.

Исправление ошибок. она сама, либо ее последствия должны быть исправлены программным обеспечением.

Устойчивость к ошибкам. - обеспечит функционирование программной системы при наличии в ней ошибок. Они разбиваются на три подгруппы: динамическая избыточность (методы голосования, резервных копий); методы отступления (корректно закончить работу - например, закрыть базу данных); изоляция ошибок (не дать последствиям ошибки выйти за пределы как можно меньшей части системы).