Название: Вопросно-ответное программирование человеко-компьютерной деятельности( Соснин П.И.)

Жанр: Информационные системы и технологии

Просмотров: 1878


4.3. образцы и примеры qa-псевдопрограмм

4.3.1. Ориентация QA-программирования на прецедентыКомплекс OwnWIQA позиционируется как инструментальная среда, предназначенная для поддержки человеко-компьютерной деятельности простого человека, который по ходу свой активности создаёт образцы прецедентов и использует их, когда в этом возникает необходимость.Для создания образцов прецедентов и их использования комплекс OwnWIQA              предоставляет              пользователю              средства QA-программирования, в том числе в форме QA-псевдопрограмм. Проведём оценку того в образцах прецедентов, что можно реализовать с помощью псевдопрограммирования. В оценках будем ориентироваться на  исполняемые  коды,  которые  можно  вложить  в  QA-программы, и на интегральную модель прецедента, представленную в п. 4.1.3.Опыт      разработок      и      применения      QA-программ      привёл к их спецификациям, которые позволяют ввести в их исходные коды передачу управления:  другим QA-программам любого типа;  исполняемым   компьютерным   кодам,   например,   вложенным в .dll- и .exe-фалы.

А это означает, что с помощью QA-программ можно представить практически    любое    развитие    человеко-компьютерной   активности в     человеко-компьютерной    среде.     Следовательно,     с     помощью QA-программ можно закодировать: любой   образец   прецедента,   предназначенный   для   его многократного использования в человеко-компьютерной деятельности, более того, такой образец будет легко перепрограммировать; любую  составную  часть  прецедента,  если  за  ней  стоят исполняемые коды.Перейдём к интегральной модели прецедента. Во-первых, для построения образца из составляющих его моделей прецедента необходимы средства для построения самих моделей. Во-вторых, необходимы средства для интеграции моделей в единое целое, причем, как с позиций хранения образцов, так и с позиций их оперативного использования. И, в-третьих, необходимы средства для построения образцов прецедентов, в составе которых включены подчинённые образцы прецедентов.Ниже     представлены     решения,     раскрывающие     ориентацию QA-программ на прецеденты, а также средства, обеспечивающие человеко-компьютерную деятельность в среде OwnWIQA.4.3.2. Псевдопрограммирование условийК числу обязательно программируемых составляющих модели относится «условие», проверка которого открывает доступ  к ещё одной составляющей прецедента, вложенному в него активность «реакция», которую также следует программировать.Составляющая «условие» в своём минимальном предназначении обеспечивает   доступ   к   «реакции».   В   своей   простейшей   версии за  «условием» стоит  псевдопрограмма, в  которой  объявлен  перечень

«нормативных  ключей»,  с  которыми  сравнивается  входной  список«ситуативных  ключей»,  за  формирование  которого  несёт ответственность     пользователь.     Для     любой     версии     сравнения её псевдопрограммирование легко просматривается, легко понимается (поскольку автором версии сравнения является пользователь) и легко псевдопрограммируется.Но сравнение ключей является «грубой» формой доступа, которая не принимает в расчёт отношения между теми сущностями, которые стоят за ключами. А значит, простейшая форма игнорирует семантику, соответствующую отношениям между сущностями прецедента.Кроме средств «грубого» доступа к образцам прецедентов пользователю полезно предоставить возможности для псевдопрограммирования доступа, в котором используются алгебраические и логические выражения, связывающие те переменные, которые      отражают      существенное      в      прецедентах.      Типоваяпсевдопрограмма такого доступа имеет следующий вид:QA-PROGRAM_1 (функциональный тип):Q1. Строка @Переменная V_1 @ Строка, Комментарий? A1.Значение V_1.Q2. Строка @Переменная V_2 @ Строка, Комментарий? A2. Значение V_2.……………………………………………QN. Строка @Переменная V_M @ Строка, Комментарий? AN. Значение V_M.QN+1. Выражение_W1 (V_1, V_2, …, V_M)? AN+1. Значение выражения W1.Q N+2. Выражение_W2 (V_1, V_2, …, V_M, W1)? A N+2. Значение W2.............................................................Q N+P. Выражение_WP(V_1, V_2, …, V_M, W1, ..., WP-1),? A N+P. Значение WP. (результат проверки условия)End

Типовая  QA-программ  «условия»  указывает  на  то,  что  в  общем случае её экземпляр может включать связную совокупность алгебраических и логических выражений, используемых в оценках правомерности и полезности включения прецедента в текущую или предполагаемую   активность   человека.   Так,   что   на   самом   деле за  «условием»  стоит  совокупность  взаимосвязанных  алгебраических и условных функций, причём, одной из разновидностей содержания условных функций является «оценивание».В  то  же  время,  так  как  формирование  и  проверки  «условия» нацелены в основном на решение задач доступа к «реакции» и её выбора с позиций альтернатив и полезности, то главным для «условия» является устойчивое распознавание адекватного прецедента. Для решения такой задачи обычно пригодны различные версии «условий» доступа, одна из которых     обычно     получает     преференции     и     совершенствуется в многократных обращениях к прецеденту (обучается на примерах).А значит, для псевдокодовых программ «условий», исполняемых интеллектуальным процессором, принципиально важным является возможность     их     оперативного     совершенствования     (изменения) и   исполнения.   В   комплексе   OwnWIQA   для   совершенствования«условий» человеку доступны изменения в объявлениях переменных (признаков распознавания) и изменения в отношениях между переменными, для спецификаций которых достаточны алгебраические и логические функции.Для оперативного исполнения «условий» в разработанных средствах псевдокодового программирования предусмотрены следующие возможности:  активизация   пользователем  (интеллектуальным  процессором)специального   компилятора   [31],   обеспечивающего   формирование

исполняемого  кода  для  «условия»,  и  последующее  автоматическое исполнение такого кода; активизация   интеллектуальным   процессором   специального интерпретатора    [31]     для     пошагового    исполнения     «условия» с возможностью оперативной коррекции QA-программы «условия».Для компьютерного процессора вызов «Компилятора псевдокода»,переход к исполнению и исполнение осуществляются автоматически.Завершая  пункт,  приведём  QA-программу «условия»  для  образца прецедента,  моделирующего  15-е   правило  Международных  правилпредупреждения столкновения судов (COLREG’72) [7].QA-PROGRAM_3 (conditional access to the precedent). D1. Velocity V1 of  the power driven vessel V_1? V1.Value of V1.D2. Bear_B1 of  the vessel V_1?V2.Value of B1.D3. Place of the vessel V_1?V3. Coordinates of the place_1.D4. Velocity V2 of  the power driven vessel V_2? V4.Value of V2.D5. Bear_B2 of  the vessel V_2? V5.Value of B2.D6. Place of the vessel V_2?V6. Coordinates of the place_2.O7.CPA = expression for computing the Closest Point of Approach (CPA)? E7. Value of CPA.O8. Cond =  (V_1, “keep out of the way”)&& (│Bear_1 - Bear_2│ > 11, 5о) && (CPA-DDA- ∆D1 ≤ 0)?E8. Manoeuvre_Mi / Call of the appropriate QA-procedure.O9. End.QA-программа приведена с демонстрационными целями и, по этой причине        переменные        и        константы        не        объясняются и не специфицируются.

4.3.3. Псевдопрограммирование реакцийПерейдём к псевдокодовому программированию «реакций», исходный псевдокод которой формируется как «процедура», поскольку за реакцией стоит поведение, состоящее из связной совокупности действий. Операторы «реакции» включают в общем случае целенаправленную совокупность действий двух типов, один из которых требует  активности  интеллектуального  процессора,  а  второй  – активности компьютерного процессора.Типовая схема  смешивания действий, исполняемых процессорамидвух типов, имеет следующий вид:QA-PROGRAM_2 (процедурный тип):Q1.K_i, K_j, …, PL_k ? A1. *Q2.  K_m, QA-P_n,  …, K_q?A2.*……………………………… QN. K_s, Pl_t,  …, QA_P_v? AN. #End.где K_i – команда, активизируемая пользователем в акте интерактивного взаимодействия с компьютером; PL_k – вызов пользователем плагина и переход к его функционалу; QA_P – вызов QA-программы.Исполнение процедурных QA-программ ориентировано на их построковое (а значит пошаговое) исполнение интеллектуальным процессором с помощью «Псевдокодового интерпретатора», который можно использовать и для построкового исполнений QA-программ функционального типа. Отметим, что входной язык интерпретатора включает  в  себя  часть,  которая  выполняет  функции  входного  языка«Псевдокодового компилятора». Факт исполнения очередной строки

QA-программы         регистрируется          специальным символом       «*»в соответствующем ответе.Заметим,    что    в    процессе    построкового    исполнения    любую QA-программу можно прервать с возможностью последующего возврата в «точку прерывания». Для обеспечения такой возможности в состав средств инструментария WIQA.Net включена специальная «Подсистема управления прерываниями QA-программ».С      демонстрационными            целями            приведём        пример           следующейQA-процедуры:QA-Program: Установка Microsoft OutlookО1.  Закройте все программы.О2. На Запустить меню, нажмите кнопку Запустить.03. В Открыть поле, тип regedit, а затем нажмите кнопку ОК.О4. Переместить и выделите следующий раздел: HKEY_CURRENT_USER/Software/Microsoft/Office/9.0/Outlook/О5. В имени списка выбор FirstRunDialog.О6. If  требуется включить только Добро пожаловать в MicrosoftOutlook  Then  Нажмите меню Правка ИзменитьО6.1. ВведитеЗначение trueв поле значение,О6.2. Затем нажмите кнопкуОК.О7. If вы хотите повторно создать все элементы вашему вниманию примеры Then переместить и выделите следующий раздел: HKEY_CURRENT_USER/Software/Microsoft/Office/9.0/Outlook/SetupО8.В списке Имя выберите и удалите следующие разделы: CreateWelcome и Первый запускО9. В подтверждение удаления параметра диалоговом окне,нажмите кнопку Да для каждой записи.О10. Меню в реестр, нажмите кнопкуВыход. O11. EndПроцедура относится к классу методик, описывающих поведение пользователя в рамках приложения, предоставляющего интерфейсные средства для доступа к действиям, с помощью которых можно решить полезную задачу.В приложения, ориентированные на решение задач с помощью методик, встраивают инструментальные полоски, открывающие доступа

к   командам,   собранным   в   группы.   Подобные   приложения   часто называют процессорами, подчёркивая тем самым, что они рассчитаны на  интерактивную  обработку  команд  пользователя,  которые  он  шаг за  шагом  выбирает  (из  доступных  ему)  для  решения  поставленной задачи. Для расширения возможностей в приложения встраивают макросредства  и   даже  средства  компьютерного  программирования. К   названному   классу   приложений   относится   группа   процессоров системы Microsoft Office.QA-процессор также относится к этому классу приложений. Для взаимодействия с QA-процессором разработана    система методик, каждая из которых представлена соответствующей ей QA-программой, настроенной   на   её    согласованное   выполнение   I-процессором   и K-процессором.Для    хранения    QA-программ,    обеспечивающих    использование QA-процессора,  в   библиотеке  QA-программ  выделен   специальный раздел с тематическими подразделами. Система методик QA-процессора способна выполнять, и выполняет функцию «помощи» пользователю.Разумеется, отмеченный тип QA-программ всего лишь одно из практически полезных направлений QA-программирования. О ряде других говорилось выше (документирование, обучение и другие). И всё же основное предназначение системы команд OwnWIQA и других системных средств – обслуживание человеко-компьютерной деятельности пользователя на основе освоенных им прецедентов.4.3.4. Сборка прецедентаСостав типового образца прецедента не ограничивается только его составляющими «условие» и «реакция». В общем случае в него включены модели PT,   PL,   PQA,   PG,   PI и   PE, содержание которых частично зависит от версии QA-программирования, применяемой при

создании образца прецедента. Напомним, что первая версия ориентируется  на  переход  от  QA-программ  к  исполняемому  коду с помощью динамической компиляции, а во второй версии для перехода используется псевдопрограммирование с дополнительной атрибутикой.Представим конкретику моделей прецедента и их сборку в единое целое  только  для  второй  версии,  так  как  первая  версия  рассчитана на пользователя, владеющего компьютерным программированием. Начнём  со  сборки,  для  осуществления  которой  выбраны  средствапредставления задач OwnWIQA.Освоение прецедента и построение его образца осуществляется как решение соответствующей прецеденту задачи, которая материализуется в   виде фрагмента «дерева задач», в котором шаг за шагом формируется решение задачи. Решение целесобразно совместить со сборкой образца прецедента,  понимая  под  такой  сборкой  включение  в фрагмент подчинённых задач, нацеленных на построение моделей прецедента.Схема  интеграции  моделей  прецедента  с  использованием  дерева задач приведена на рис. 4.8.

Z.К. Освоение прецедента Фрагмент дерева задач

Z.К.1. Решение задачи прецедента

Z.К.2. Z.К.2.1. Построение модели PTiZ.К.2.2. Построение модели PLiQA

Дерево задач пользователя Z.К.2.3. Построение модели P   iZ.К.2.4 Построение модели PGiZ.К

 

.2.5. Построение модели PIiZ

.2.6. Построение модели PEi

Рис. 4.8. Интеграция моделей прецедента

Одним из достоинств приведённой схемы сборки моделей является то, что к ней применим богатый набор системных действий, запрограммированный  в OwnWIQA для работы с деревом и задачами. В число полезных действий, например, входят: преобразование выбранного фрагмента дерева задач в xml-файл как единицу хранения и пересылки внутри OwnWIQA или в другие приложения; возможность просмотра каждой задачи в режиме интерпретации её QA-кода.Перейдём  к  конкретизациям  моделей,  с  которыми  связаны следующее их содержание и материализация:  текстовая модель PT, регистрирующая в форме QA-программыдокумента, в общем случае, иерархическую систему задач и подзадач, которые решены, в рамках подзадачи ZK.1.1 «Решение задачи прецедента»;   логическая  модель  PL,  регистрирующая  в  форме  объявленияQA-переменной типа «строка символов» логическую формулу, представляющую  прецедент,  в   частном   случае   формулу  доступа к прецеденту;  графическая  модель  прецедента  PG,  представляющая в  формеобъявления QA-переменной типа «строка символов» описание диаграммы с присоединённым к этому объявлению рисунком диаграммы;  вопросно-ответная            модель            PQA,            регистрирующаярафинированную      совокупность      QA-моделей      задачи      ZK.1.1и её подзадач;  модель PI, регистрирующая вложенное в прецедент поведение,представленное, в общем случае, совокупностью QA-программ;  модель PЕ,      регистрирующая       QA-оператор типа    «вызов исполняемого кода»

 схематическая модель прецедента PS, которая, интегрируя все модели прецедента, регистрируется в той же форме, что и графическая модель.4.3.5. Сборка прецедентовВ построении образцов прецедентов, кроме задачи сборки образца из моделей прецедента, существует задача включения в образец прецедента подчинённых  прецедентов,  разумеется,  если  они  оказались востребованы. Такую задачу можно связать со сборкой образцов прецедентов в единое целое – новый образец.И эту сборку можно осуществить с помощью дерева задач, если,например, для интеграции образцов прецедентов   использовать схему,приведённую на рис. 4.9.

Z.К. Освоение прецедента Pi Фрагмент дерева задач

Дерево задач пользователя Z.К.1. Решение задачи прецедента PiZ.К.1.1. Решение основной задачиZ.К.1.2. Подстановка прецедента Pim............................................................. Z.К.1.4. Подстановка прецедента Pin……………………………………….Z.К.2.

Рис. 4.9. Схема интеграции образцов прецедентовВ схеме отражён тот факт, что каждое включение в подчинённого образца прецедента, например Pin, в процесс формирования нового прецедента Pi  происходит как подстановка его задачи Z.К.1.4. в дерево текущих задач пользователя.

Следует заметить, что после подстановки задача Z.К.1.4. должна пройти   проверки   на   её   соответствие   деятельностному   контексту, и, возможно, её придётся адаптировать к этому контексту.4.3.6. Агентная реализация образцов прецедентовВозможность представления образца прецедента Pi в дереве задач единым фрагментом, который можно извлечь из дерева и сохранить в виде xml-файла, приводит к его коду K(Pi), содержащему QA-данные и независимому от других кодов в OwnWIQA. Заметим, что код K(Pi) представляет QA-программу представления и исполнения прецедента Pi, которую целесообразно сохранить для её повторных применений.Кодирование  и хранение QA-данных в форме xml-файлов, а также загрузка   QA-данных   в   OwnWIQA   из   xml-файлов   используется в комплексе как основной механизм пересылки данных внутри комплекса, а также его обмена данными с окружением.В частности код K(Pi) используется для пересылки разработанных и проверенных QA-программ в выбранные разделы библиотеки вопросно-ответных шаблонов. Из этой библиотеки любой QA-шаблон, а значит и любую QA-программу, можно загрузить в любое место текущего дерева  задач  (при  этом  системные имена  будут  настроены на место загрузки).Приведённые формы кодирования QA-программ и механизмы их пересылок можно использовать для моделирования образца прецедента Pi   в виде программного агента А(Pi), как автономного программного кода с событийным доступом к его исполнению.Представим агентную модель А(Pi), начиная с хранения таких моделей  в  общей  базе  образцов  прецедентов,  но  в  форме, представленной на рис. 4.10.   Форма ориентирована на то, что модели прецедента, указанные на рис. 4.3, интегрированы в единый код.

образец прецедента Pi

Имя Ключи Проверка A(Pi)

Рис. 4.10. Представление агентной модели в базе прецедентовЕсли при поиске необходимого образца проверка подтверждает, что образец А(Pi) полезен, то его QA-код загружается в дерево задач (задача с подзадачами и соответствующие им QA-протоколы). После загрузки агент А(Pi) становится доступен, если в  исполняемом процессе создаются условия для его работы.Условия U(А(Pi) активизации агента имеют совершенно другой смысл,   отличающийся  от   смысла   условий   доступа   к   прецеденту. Условия U(А(Pi) настроены на события в среде, окружающей агента, в  образовании  которых  могут  участвовать  любые  акторы  процесса в OwnWIQA, в том числе и другие агенты. Агент А(Pi),  как автономная программная сущность, должен сам проверять появление таких событий. Именно на такие проверки и ориентировано нормативное условие U(А(Pi), встроенное в коды агента А(Pi).Доступ к событиям в OwnWIQA организован с помощью «доскиобъявлений», структура которой представлена на рис. 4.11.агент

Поле событий (вопросно- ответные данные) Информационное поле(вопросно-ответные данные)

Среда OwnWIQAРис. 4.11. Схема взаимодействия агента со средой приложения

На рисунке отражено и то, что агент в своей работе обменивается данными с окружающей его средой. Для обмена данных также целесообразно  использовать доску объявлений, выделив для этой цели специальный раздел.Взаимодействие   между    агентами,    схема    которого    приведена на   рис.   4.12,   подобна   схеме   взаимодействия   агентов   со   средой. И  в  этом  случае  используется  механизм  вопросно-ответных данных,доступных обработке в исполняемых программных кодах.

Агент_i Агент_j

Информационное поле(вопросно-ответные данные)Поле событий (вопросно-ответные данные)Среда существования агентовРис. 4.12. Схема коммуникативного взаимодействия агентовРаскроем механизмы работы с событиями, управляющими активностью агентов. Одной из специфик вопросно-ответных данных является   наличие   в   их   атрибутике   признака,   значение   которого фиксирует момент времени регистрации значений для таких данных. А  значит,  изменение значений  атрибутов для  данных,  которые участвуют во взаимодействии агентов с их окружением, логично использовать  как  причину  и  сигнал  для  генерации  событий, управляющих агентами.Такую       работа логично          возложить      на            специального            агента,формирующего         очередь           событий,        анализ которой            агентами

и          используется  для      их        запуска.          Именно          очередь           событий         и регистрируется в соответствующем разделе «доски объявлений».Для хранения событий на доске объявлений (рис. 4.13) используется вопросно-ответная пара, где вопрос регистрирует идентификатор агента, который может или должен среагировать на событие, а ответ фиксирует набор  признаков,  достаточный  для  идентификации  события  агентом и условной проверки его для выбора реакции. Отметим, что на рисунке представлен   один   из   вариантов   регистрации   событий,   который

Z

 
не учитывает конкуренцию между агентами.Дерево задачZк   Задача регистрации событийДоска объявлений (регистрация событий): QA-модель задачи Zк…………………………………………… QJ.1. Имя_Агента_J?AJ.1.Признак_ J 1, Признак_ J 2, ... Признак_  M.QJ.1.1. Имя_Агента_K)?AJ.1.1. Признак_ K 1, Признак_ K 2, ... Признак_  P..……………………………………………… QJ.1.1. Имя_Агента_L)?AJ.1.1. Признак_ L 1, Признак_ L 2, ... Признак_   R.………………………………………………Рис. 4.13. Схема доступа к доске объявления событийВ теории и практике многоагентных систем центральное место занимает интеллектуализация агентов. В агнентные решения пытаются встроить моделирование рассуждений. В агентах, для построения которых  используется  QA-программирование,  изначально моделируются рассуждения, причём имитирующие природные формы рассуждений – диалоговые процессы сознания.Но   QA-моделирование   нацелено   на   участие   в   его   процессах человека,  в  то  время  как  интеллектуализация  агентов  нацелена  на

моделирование  рассуждений  агентом  для  своих  внутрених  «целей» и/или для осуществления поведения, которому можно приписать интеллектуальные проявления.На момент написания этих строк в коллективе, научным руководителем которого является автор монографии, завершается программирование средств, предназначенных для интеллектуализации программных агентов, представленных выше. Интеллектуализация нацелена на включение в состав агента А(Pi) средств  анализа входных событий,  на  их  соответствие  условиям  активизации  А(Pi).  В  числотаких средств интеллектуального агента АИ(Pi) включены следующиекомпоненты: морфологический    анализатор,    преобразующий    входное описание события в список Sp(w1, w2, …,   wN)   потенциально существенных слов, представленных в нормативном виде;  онтологический фильтр, преобразующий список Sp(w1, w2, …, wN) в список Sp(w’1, w’2, …,   w’M)   фактически существенных нормализованных слов; компилятор      QA-программ,      представляющих      условия активизации агента АИ(Pi).Все названные компоненты запрограммированы так, чтобы их копии можно было включить в состав любого агента, которому решено приписать тип AИ. Разумеется, база данных морфологического анализатора   размещается   за   рамками   интеллектуальных   агентов. Она является для них общей. Онтологический фильтр включает список нормативных ключей, каждый из которых, во-первых, присутствует в онтологии   OwnWIQA,   а,   во-вторых,   представляет   определённую QA-переменную     QA-программы     условия     активизации     агента.

Компилятор   специализирован      только на        трансляцию   функций,совмещённую с исполнением их псевдокодов.Перейдём к средствам обмена данными. Если в процессе человеко- компьютерной деятельности порождаются данные, которые могут быть востребованы прецедентами, представленными агентами, то они регистрируются во втором разделе «доски объявлений». Включившийся работу агент, считывает необходимые ему данные из этого раздела.4.3.7. Компьютерное QA-программированиеВыше      в      п.      4.1      были      раскрыты      отношения      между I-, QA- и K-процессорами с интерфейсной и инструментальной позиций исполнений QA-программ. Обобщённо говоря, I-процессор, исполняющий QA-программы, созданные на псевдокодовом языке, взаимодействует    с    K-процессором,    оболочкой    которого    служит QA-процессор, реализованный в виде комплекса OwnWIQA.Для монографии особый интерес представляет версия отношений, в которой центральное место занимает I-процессор, который взаимодействует  с  K-процессором  опосредованно  через  посредника, роль которого выполняет QA-процессор. То есть версия человеко- компьютерной   деятельности,   в   которой   К-процессор       «скрыт» от I-процессора. В этой версии I-процессор и QA-процессор исполняют одну   и   ту   же   программу,   переходя   (в   соответствии   с   текстом QA-программы) от одной её части к другой.В первой версии процессом исполнения QA-программы управляет человек, использующий компьютер как помощника (слугу). В общем случае, человек не только управляет, но и исполняет действия, которые могут осуществляться за рамками компьютера, например действия в стендовом оборудовании для ресурсных испытаний (п. 4.2.3). Практически всё,  о  чём  говорилось  выше,  относится  именно  к  этой

версии QA-программирования. Для того чтобы реализовать такую версию    человеко-компьютерной    деятельности    человеку    следует предоставить интерпретатор QA-программВо второй версии человеко-компьютерной деятельности центральная роль передаётся К-процессору с оболочкой, функции которой исполняет QA-процессор.     Процесс     исполняется     компьютером,     который в   определённых   ситуациях   обращается   за   помощью   к   человеку. За второй версией стоит традиционная человеко-компьютерная деятельность,  в  которой  QA-программа транслируется на  машинный язык или с помощью компилятора, или с помощью интерпретатора.Логичен вопрос о том, есть ли при использовании комплекса OwnWIQA причины, по которым разумно переходить от первой версии активности ко второй версии. Одной из таких причин является освоение определённой части активности (которой соответствует определённая QA-программа) до состояния навыка, то есть автоматического исполнения,   подобного   исполнению   К-программ.   Отметим,   что в общем случае К-программа может включать подчинённое автоматизированное исполнение определённых составляющих.