Таблицы решений в реализации задач финансово

advertisement
Финансовая газета.
Региональный выпуск.
Апрель. №16, 2004, стр. 15.
ТАБЛИЦЫ РЕШЕНИЙ В РЕАЛИЗАЦИИ ЗАДАЧ ФИНАНСОВОЭКОНОМИЧЕСКОГО УПРАВЛЕНИЯ
Широкое вовлечение специалистов по управлению - конечных пользователей
информационных систем в организацию компьютерного решения экономических задач,
обусловленное, с одной стороны, постоянно растущей потребностью в автоматизации задач
управления, а с другой - появлением такого простого и вместе с тем эффективного инструмента,
как табличный процессор, вызвало необходимость разработки соответствующих технологических
приемов, позволяющих эффективно использовать возможности табличных процессоров.
Заложенная в основу компьютерной реализации задач с помощью электронных таблиц идея
компьютеризации работы пользователей с "пустографкой" как со специфической формой
представления экономических документов (с которыми обычно приходится иметь дело
специалистам по управлению) оказалась чрезвычайно плодотворной. Разработчики электронных
таблиц (впоследствии названных табличными процессорами) воплотили эту идею путем
предоставления пользователям возможности записи в их любую клетку цифровой, символьной
(текстовой) информации либо формулы, обеспечивающей получение искомого результата по
различным исходным данным.
Способ описания расчетных формул в электронной таблице почти ничем не отличается от
правил их представления, принятых в математике (за исключением жесткого требования линейной
структуры записи). Порядок выполнения арифметических действий в формулах полностью
совпадает с приоритетом реализации операций в математике, и, так же как и в математике, для
изменения естественного порядка следования операций используется система скобок. При этом
единственным наследием, доставшимся пользователям электронных таблиц от программирования
задач на высокоуровневых языках, явилось правило записи логических выражений, реализуемое
по стандартной для алгоритмических языков схеме построения условных операторов:
IF - THEN - ELSE (если <условие> соблюдается, то выполняется <действие-1>, иначе
выполняется <действие-2>).
Помимо простоты и удобства подготовки решения задач в среде табличных процессоров их
быстрому и широкому распространению как инструментальному средству способствовали также:
наличие большого числа встроенных функций (математических, статистических, финансовых и
т.п.);
возможность "проигрывания" различных вариантов решения задач и выбора лучшего из них (за
счет быстрого автоматического пересчета конечных результатов при любом изменении исходных
данных);
поддержка электронных таблиц средствами графической интерпретации, наглядное
представление конечных результатов.
Кроме того, работа с современными электронными таблицами может быть автоматизирована
благодаря использованию командных языков, макросов и специальных языков программирования.
Вместе с тем, как показывает практика, во многих случаях для автоматизации решения задач
финансово-экономического характера с помощью табличных процессоров требуется не столько
обладание программистским мышлением, сколько умение грамотно осуществить постановку
задачи и эффективно использовать имеющийся арсенал встроенных функций. Если первое в
основном определяется знаниями специфики предметной области (т.е. зависит от
профессиональной компетентности специалиста по управлению), то второе полностью зависит от
владения определенными приемами и технологиями работы с табличным процессором как
программно-инструментальным средством реализации экономических задач. Не владея такими
технологическими приемами, облегчающими формализацию процесса разработки алгоритмов,
специалист по управлению - непрофессионал в области программирования подчас не может
осуществить компьютерную реализацию финансово-экономических задач, особенно если в них
подразумевается разветвленная логика формирования конечных результатов решения, а для их
решения требуется автоматизация формирования всех ее производных элементов. Именно
отсутствие методических разработок такого плана, ориентированных в первую очередь на
непрофессионалов в области программирования, является сегодня наиболее узким местом, во
многом сдерживающим дальнейшее расширение применения табличных процессоров среди
специалистов в области финансово-экономического управления.
В то же время в арсенале технологических приемов подготовки задач к компьютерной
реализации имеется такое эффективное средство, как таблицы решений, которые позволяют
специалисту по управлению не только формализовать процедуру решения финансовоэкономических задач и сделать обоснованный выбор рационального способа их компьютерной
реализации, но и подготовить электронную форму документа, реализовав основной принцип
использования компьютера - "все, что может сделать компьютер, он должен делать", т.е.
обеспечить такой уровень автоматизации решения задачи, при котором от его конечного
пользователя будет требоваться только ввод исходной информации, а вся производная
информация будет предоставляться автоматически с помощью встроенных функций табличного
процессора.
Подготовка таблиц решений как средства описания логических процессов. Таблицы
решений, возникшие в обычной деловой практике, зарекомендовали себя как удобное средство,
обеспечивающее четкое, быстрое и простое составление формализованного описания (модели)
достаточно сложных ситуаций, возникающих в задачах управления.
Сущность таблиц решения заключается в структурированном описании:
во-первых, возможных исходных ситуаций (или условий), возникающих при решении какойлибо проблемы;
во-вторых, действий, которые должны быть выполнены в соответствии со сложившимися в
данный момент условиями.
На основе характеристик задачи и необходимых для ее реализации действий в таблице
решений в наглядной форме определяются условия, которые должны быть выполнены, прежде
чем может быть осуществлен переход к тому или иному действию.
Легкость освоения специалистами любой профессии, простота модификации (изменение
содержания, количества "входов" и "выходов" таблицы решений), компактность и, главное, более
общая и более строгая (по сравнению, например, с блок-схемами) форма представления исходных
условий для получения конечных результатов и логики их формирования - вот основные факторы
эффективности применения таблиц решений как средства формализации описания
информационно-логических процессов.
Кроме того, таблицы решений пригодны для описания параллельных процессов (которые
невозможно в удобной форме представить с помощью блок-схем), а также логики построения
сложных моделей ситуационного управления. В зависимости от состава исходных условий и
способа их задания, сложности и детализации выполняемых действий и т.п. они могут иметь
различные формы представления, при этом возможны объединение нескольких логически
взаимосвязанных таблиц решений в одну сводную, а также иерархическая вложенность
взаимозависимых (соподчиненных) таблиц. Однако при всем многообразии этих форм все они
могут быть представлены с помощью таблиц основного (канонического) вида - таблицы решений
"с ограниченным входом".
Структурно, в самом общем и наиболее распространенном виде, любая таблица решений может
быть изображена как матрица, содержащая q-входов и n-выходов, отражающих соответственно q
возможных вариантов сочетаний из m-исходных условий (параметров, или аргументов) и n
конечных результатов (или действий). При этом для любой i-строки левой части таблицы решений
(где i= ) в ее правой части может соответствовать только один символ "+" в p-столбце (где p = ),
означающий, что при одновременном соблюдении условий, перечисленных в i-строке левой части
таблицы, необходимо выполнить Rp-действие (или будет получен Rp-результат).
Очевидно, что, "заложив" подобные таблицы решений в электронную память компьютера,
специалист по управлению может оперативно получать эффективные управленческие решения в
ответ на вводимые им исходные условия, отражающие сложившуюся на данный момент
ситуацию.
Другим важным отличием таблиц решений от иных способов представления алгоритмов
является то, что они легко поддерживают реализацию "обратных" задач, часто возникающих в
процессах управления: определение необходимых условий для достижения той или иной конечной
цели, что особо важно при оперативном планировании. Для решения такой задачи достаточно
просмотреть соответствующий столбец правой части таблицы решений (табл. 1) и выбрать из
помеченных
знаком "+" строк в ее левой части вариант(ы) с исходными условиями,
удовлетворяющими осуществлению поставленной цели. При этом количество таких возможных
вариантов будет соответствовать количеству знаков "+" в столбце правой части таблицы с
планируемым результатом решения.
Таблица 1
Структура представления информации в таблице решений
конкретные значения
проверяемых
параметров (или исходных
условий)
признак выбора Rj варианта
результата
В общем случае процесс формирования таблицы решений для ее компьютерного
использования состоит из следующих этапов:
1) построение исходной (предварительной) таблицы решений на основе определения состава
получаемых результатов (возможных исходов) и их "увязки" с исходными условиями. При этом
определяются выходы таблицы решений (идентифицируются n-возможные варианты конечных
решений), а также ее входы (идентифицируются возможные варианты комбинаций исходных
условий), приводящие к n-возможным результатам решения;
2) формирование конечной (рабочей) таблицы решений путем исключения нерациональных
проверок (уменьшения количества выходов в таблице до (n-1), так как формирование конечного
результата может быть ограничено использованием (n-1)-вложенных условных функций "ЕСЛИ")
и определения рациональной последовательности их исполнения. Для этого определяются (n-1)выходов таблицы решений, по которым будет осуществляться проверка исходных условий, а из
таблицы удаляются все входы - строки с условиями, которые не подлежат проверке, и
корректируется перечень оставшихся условий. При этом для компьютерной реализации
алгоритмов, базирующихся на информации, представленной средствами таблицы решений,
справедливы следующие логические действия:
все требования (условия), содержащиеся в i-строке (i= ) левой части таблицы, объединяются в
единое сложное условие с помощью логической функции "И";
в свою очередь все строки левой части таблицы, приводящие к одному и тому же результату
(т.е. помеченные знаком "+" в одном и том же столбце ее правой части), объединяются в виде
единого условия с помощью логической функции "ИЛИ".
В связи с этим в целях упрощения формулы выбора (сокращения количества применяемых в
формуле логических функций "ИЛИ") последовательность записи условий, как правило,
целесообразно осуществлять, начиная со столбцов в правой части таблицы решений, имеющих
наименьшее количество знаков "+", а при наличии нескольких вариантов конечных решений с
одинаковым количеством символов "+" (в соответствующих столбцах ее правой части) - с
проверки варианта, содержащего меньшее количество проверяемых условий по строке в левой
части таблицы решений.
Из сказанного выше следует, что основную проблему, связанную с использованием таблиц
решений в практике ситуационного управления (в виде "прямой" или "обратной" задачи),
составляет процедура их формирования, технология которой сводится, с одной стороны, к
определению всех возможных вариантов получаемых результатов, а с другой - к определению и
увязке с этими результатами исходных условий, влияющих на выбор того или иного варианта
конечного результата. Причем процесс формирования таблицы решений в этой части универсален
и не зависит от ее конечного предназначения, будь то непосредственное многократное
использование таблицы, размещенной в памяти компьютерной системы, для оперативного
принятия на ее основе управленческих решений в зависимости от складывающихся ситуаций либо
однократное использование таблицы решений как эффективного вспомогательного средства для
подготовки компьютерной реализации конкретной прикладной экономической задачи.
В случае применения таблицы решений как вспомогательного средства подготовки
компьютерного решения прикладных задач ее формирование и использование представляются
более развернутой процедурой. В связи с этим в наиболее полном виде технологию построения и
последующего использования таблицы можно рассмотреть на примере подготовки экономической
задачи к реализации c помощью компьютера.
Финансовая газета.
Региональный выпуск.
Апрель. №18, 2004, стр. 14.
ТАБЛИЦЫ РЕШЕНИЙ В РЕАЛИЗАЦИИ ЗАДАЧ ФИНАНСОВОЭКОНОМИЧЕСКОГО УПРАВЛЕНИЯ
(Окончание. Начало см. в N 16)
Подготовка электронных форм документов с использованием таблиц решений. Рассмотрим
технологию подготовки и использования таблиц решений на примере организации электронного
ведения (в среде табличного процессора Excel) журнала учета валютных поступлений от
контрагентов фирмы по форме, представленной в табл. 2, в котором обеспечивается
автоматическое формирование очередных значений: "N п./п.", "Наименование валюты",
"Эквивалент в рублях", а также итогового значения по всем записям в графе "Эквивалент в
рублях" (т.е. всех элементов табл. 2, выделенных двойной жирной чертой).
Данная задача сводится к подготовке электронной формы документа (см. табл. 2), при
формировании которого в среде табличного процессора Excel достаточно воспользоваться такими
широко употребляемыми функциями, как "ЕСЛИ", "И", "ИЛИ", "ПРОСМОТР" (или родственной
функцией ВПР - вертикальный просмотр) и "СУММ".
Таблица 2
Журнал учета валютных поступлений (электронный документ в среде Excel)
Примечание. Здесь и далее символ *** в клетках таблиц означает отображение каких-либо
записей (введенных или сформированных с помощью формул) на текущий момент работы с
электронным документом.
Наличие "пустой строки" между последней введенной N-й записью и "итоговой строкой"
целесообразно для обеспечения удобства ввода информации по очередному контрагенту.
Процесс подготовки электронной формы документа можно осуществить путем
автоматического формирования значений в каком-то одном из его элементов (обычно реквизитов
1-го столбца) в качестве ключевого и последующей "привязки" к нему формул для получения
значений других производных реквизитов.
Рассмотрим этапы заполнения документа в среде электронных таблиц (см. табл. 2)
первоначально только для столбца "А" (N п/п). Очевидно, что управление процессом
формирования элементов этого столбца можно увязать с завершением ввода информации,
отражающей название контрагента (столбец "В"), при этом последовательность формирования
элементов в столбце "А" по мере заполнения электронного документа представлена в табл. 3 - 6.
Из представленных выше таблиц (см. табл. 3 - 6) видно, что введение очередной записи в
колонке "В" должно привести к появлению в этой же строке колонки "А" (в графе "N п/п")
значения очередного номера записи. Причем графа "N п/п" в первых двух строках документа (что
соответствует клеткам А3 и А4 электронной таблицы) может либо быть пустой, либо содержать
порядковый номер записи, и только, начиная с третьей строки (т.е. с А5 и далее), в графе "N п/п"
может появляться еще и слово "ИТОГО".
Таким образом, в позицию А3 достаточно будет ввести следующую формулу:
=ЕСЛИ (В3 = ""; ""; 1),
что обеспечит появление 1 при занесении названия контрагента в позицию В3, а в позицию А4
можно занести формулу:
=ЕСЛИ (В4 = ""; ""; А3+1),
которая в случае необходимости легко обеспечит возможность организовать ведение
(продолжение) журнала учета, начиная с любого требуемого номера. Для этого достаточно будет
ввести этот номер в ячейку А3 и далее продолжить принятый порядок ввода записей по
контрагентам.
Что касается позиций А5, А6 и т.д., то их заполнение должно осуществляться по более сложной
формуле, записанной в А5 и скопированной в режиме модификации в последующие за ней ячейки
электронной таблицы. Для определения структуры этой формулы целесообразно применить
"механизм" таблиц решений.
Во-первых, из табл. 3 - 6 следует, что
а) в правой части таблицы решений ("Конечные результаты") должны содержаться три
варианта решений: вывод слова ИТОГО, формирование очередного номера записи либо вывод
символа "пробел";
б) в левой части таблицы решений ("Исходные условия") необходимо отразить состояние ячеек
электронной таблицы, отведенных для идентификации (ввода названия) контрагента: В3, В4 и В5.
Во-вторых, информация табл. 3 - 6 позволяет заполнить таблицу решений (табл. 7), при этом
можно "увязать" исходные условия ("входы" таблицы решений) с ее соответствующими
"выходами".
Таблица 7
Таблица решений для подготовки формулы 1-й графы электронного документа
(предварительный вид)
Теперь, прежде чем перейти к подготовке формулы, которую следует записать в ячейку А5
электронной таблицы, необходимо упростить полученную таблицу решений, приведя ее к
рабочему виду. Из табл. 7 видно, что подготавливаемая формула должна:
содержать две проверки (функции "ЕСЛИ"), так как существует только три варианта конечных
решений;
проверять следует условия, обеспечивающие формирование очередного номера записи и вывод
слова "ИТОГО", поскольку в столбцах таблицы решений с этими условиями содержится только по
одному символу "+" (тогда как в столбце с "пробелом" - два символа "+").
Следовательно, из таблицы решений можно исключить строки 1 и 3. Кроме того, учитывая, что
наличие записи по контрагенту в i-строке автоматически предполагает обязательное наличие
соответствующих записей во всех предыдущих строках документа, значения содержимого ячеек
В4 и В3 в 4-й строке также можно не проверять. Таким образом, таблица решений примет
окончательный рабочий вид (табл. 8).
Сформированную и отредактированную таблицу решений можно использовать для
определения рациональной последовательности проверки условий при подготовке
соответствующей формулы. Так, из таблицы решений в окончательном виде (см. табл. 8) следует,
что по 4-й строке необходимо проверить только одно условие, тогда как по 2-й строке количество
проверяемых условий равно трем. В связи с этим в подготавливаемой формуле проверку нужно
начинать с условия, представленного в 4-й строке таблицы, а затем уже проверять условия,
содержащиеся во 2-й строке. Следовательно, формула, которую следует записать в ячейку А5
электронной таблицы, будет иметь следующий вид:
=ЕСЛИ(В5 < > "";А4+1;ЕСЛИ(И(В4 = "";В3 < > ""); "ИТОГО" ; "")).
Таблица 8
Таблица решений для подготовки формулы 1-й графы электронного документа
(окончательный вид)
Полученную таким образом формулу в А5 необходимо скопировать вниз по столбцу до конца
электронного документа.
Что касается формулы, вводимой в столбец "Е" (Наименование валюты), то она должна
отражать взаимодействие со Справочником валют (табл. 9), а ее управление может
осуществляться на основе анализа состояния соответствующего элемента столбца "С" (Код
валюты). Причем данная формула может быть представлена в Е3 в универсальном виде для
копирования во все элементы данного столбца:
=ЕСЛИ(C3="";"";ПРОСМОТР(C3;Код_валюты;Наименование_валюты)).
Таблица 9
Структура Справочника валют
Аналогично можно получить формулы для графы "Эквивалент в рублях". Соответственно для
F3 и F4:
=ЕСЛИ(D3 = "";"";D3*ПРОСМОТР (C3;Код_валюты; Курс_валюты));
=ЕСЛИ(D4 = ""; "";D4*ПРОСМОТР (C4;Код_валюты; Курс_валюты)),
так как в позициях F3 и F4 может выводиться либо символ "пробел" (если отсутствует запись в
графе "Количество"), либо значение рублевого эквивалента валюты, поступившей от данного
контрагента.
Учитывая, что столбец "F" электронного документа (начиная с его 3-й строки, т.е. ячейки F5)
может отражать три состояния: "пусто", "эквивалент в рублях" по контрагенту или "общий итог"
по всем контрагентам, для составления формулы, записываемой в F5, целесообразно прибегнуть к
уже рассмотренной выше технологии таблиц решений. Для этого подготавливается, а затем
редактируется таблица решений, окончательный рабочий вид которой представлен в табл. 10.
Таблица 10
Таблица решений для подготовки формулы 6-й графы электронного документа
(окончательный вид)
На основе полученной таблицы решений можно выбрать наиболее компактную формулу,
соответствующую проверке условий вывода пробела, эквивалента в рублях или итоговой суммы.
Причем из табл. 10 видно, что последовательность перечисленных проверок условий с точки
зрения конечного результата в данном случае не имеет принципиального значения:
=ЕСЛИ(D5<>"";D5*ПРОСМОТР (C5;Код_валюты; Курс_валюты); ЕСЛИ(A5="ИТОГО";
СУММ (F$3:F3);"")),
так как любая из этих формул, скопированная вниз по столбцу "F" электронного документа,
будет оперировать со Справочником валют и обеспечивать (в зависимости от условий) вывод:
либо значения эквивалента в рублях по каждому контрагенту,
либо общую сумму по всем контрагентам в итоговой строке,
либо при отсутствии записей в строке - символа "пробел".
Подготовленная форма электронного документа будет обеспечивать не только автоматическое
заполнение всех требуемых позиций, но и автоматическое восстановление корректной формы
документа даже в случае последовательного удаления в нем последних записей. Вместе с тем
указанные настройки электронной формы документа ориентированы на работу в условиях
правильного ввода значений в графе "Код валюты" (т.е. обязательно наличие введенного кода в
Справочнике валют). Однако при использовании перечисленных выше функций Excel можно
обеспечить автоматический контроль такой корректности ввода, выдавая в случае ошибки
соответствующее сообщение, например "Введенный код отсутствует в справочнике".
В заключение на основе рассмотренного примера можно сделать вывод, что с точки зрения
специалиста по управлению - непрофессионала в области автоматизации процессов обработки
информации таблицы решений обладают следующими преимуществами по сравнению с другими
распространенными способами представления алгоритмов:
удобны для формализованного представления логики формирования конечных результатов;
отражают весь спектр возможных вариантов решения задачи;
обеспечивают обоснованный выбор рациональной последовательности реализации условий
выбора того или иного варианта решения.
Следует отметить, что эффект от использования таблиц решений в качестве средства
определения алгоритма решения задачи будет тем выше, чем больше вариантов исходных условий
и конечных результатов (т.е. чем больше "входов" и "выходов") будет отражено в них. Практика
показывает, что при сложных и/или многоальтернативных комбинациях исходных условий и
наличии трех и более вариантов конечных решений использование технологии этих таблиц
становится оправданным.
Download