Смирнов Иван Евгеньевич группа 225а Разработка веб-приложений на основе технологии недоопределенных моделей Магистерская диссертация
Вид материала | Диссертация |
- Лекция 1: Основные понятия технологии проектирования информационных систем (ИС), 2596.25kb.
- Лекция: Этапы проектирования ис с применением uml: Основные типы uml-диаграмм, используемые, 209.83kb.
- «Разработка моделей и образцов стандартов для бакалавров и магистров по специальности», 3866.49kb.
- Лекция: Основные понятия технологии проектирования информационных систем (ИС): Предмет, 189.07kb.
- А. Е. Чуваев научный руководитель В. П. Климов, ст преподаватель Национальный исследовательский, 40.5kb.
- Афанасьев Михаил Геннадьевич исследование, разработка конструкции и технологии изготовления, 128.79kb.
- Рабочая программа учебной дисциплины (модуля) Веб-приложения на Java, 85.65kb.
- Принципи доступу до інформації в мережі Інтернет. Поняття про веб-сайт, веб-сторінку,, 85.43kb.
- Программа конференции-конкурса работ студентов, аспирантов и молодых ученых технологии, 139.2kb.
- Название: Магистерская диссертация. Методика написания, правила оформления и процедура, 1519.29kb.
2.1. Программирование в ограничениях
Технология Н-моделей принадлежит к ведущему направлению искусственного интеллекта – «программирование в ограничениях» (Constraint Programming) и используется в информационных системах для представления и обработки не полностью определенных данных и знаний. Данное направление программирования привлекает к себе все больше исследователей. На текущий момент созданы разнообразные алгоритмы и методы решения систем ограничений, разработаны программные решения.
Программирование в ограничениях в классификации языков программирования выступает как один из видов логических языков программирования, к которым, как известно, относится Prolog. Примером языка, отражающим собственно технологию программирования в ограничениях, является Mozart – мультиплатформенная интерпретирующая реализация языка программирования Oz, разработанная Mozart Consortium.
В число систем, в которых осуществлен процесс решения системы ограничений, входят Prolog III, CHIP, Newton. Методы программирования в ограничениях применяются для решения задач оптимизации бизнеса, научных и технических расчетов, прогнозирования экономики и др. Программирование в ограничениях является максимально декларативным, так как основано на описании модели задачи, а не алгоритма ее решения. Кроме того, появляется возможность использования методов программирования в ограничениях для решения задач с недоопределенными данными.
Исследуемая задача при использовании данного подхода описывается в виде модели в виде набора переменных и неупорядоченного набора ограничений, которые соответствуют связям, существующим между параметрами задачи. Эти ограничения могут иметь вид уравнений, неравенств, логических выражений, табличных зависимостей и т. п.
В наиболее общем виде постановка задачи в парадигме программирования в ограничениях формулируется следующим образом. Пусть на переменные x1, x2, ..., xn , областями значений которых являются множества X1 , X2 , ..., Xn , заданы ограничения Ri (x1, x2, ..., xn), i =1, k. Требуется найти наборы значений 1, a2, ..., an> (ai Xi), которые бы удовлетворяли всем ограничениям одновременно. Задача, поставленная таким образом, называется задачей удовлетворения ограничений (Constraint Satisfaction Problem). Одним из наиболее развитых и значимых подходов, относящихся к программированию в ограничениях, является метод недоопределенных моделей.
2.2. Недоопределенные модели
Недоопределенность данных и знаний является особенностью во многих сферах человеческой деятельности. Поэтому решение проблемы представления и обработки недоопределенных данных в информационных системах является весьма важной задачей. Реальным системам знаний присущи такие черты, как недоопределённость, неполнота, неточность, нечёткость, некорректность и др. Далее в основном будет рассматриваться недоопределенность.
Недоопределенность – свойство данных и знаний, определяемое как частичное знание о сущности x, ограниченное информацией о том, что x принадлежит к некоторому конкретному множеству X. Уточнение данных об x приводит к сокращению множества X, в потенциале стягивающемуся до одного элемента, отображающего полную информацию об x.
Недоопределенные модели были предложены в начале 80-x годов для представления и обработки не полностью определённых знаний. К настоящему моменту на базе Н-моделей создана технология программирования. По сути, она является единственной технологией, которая позволяет решать задачу удовлетворения ограничений в самой общей постановке.
Н-модель представляет собой набор ограничений R={R1, R2, …, Rk} над переменными x1, x2, …, xn с областями значений соответственно A1, A2, …, An. Ограничения могут иметь вид уравнений, неравенств, логических выражений и т. п. Методы программирования в ограничениях, в том числе метод Н-вычислений, обеспечивают автоматическое нахождение наборов значений (a1, a2, …, an), принадлежащим областям значений Ai, i=1, 2, …, n, одновременно удовлетворяющих всем ограничениям из множества R.
Набор значений переменных удовлетворяет ограничению, если после подстановки этих значений в ограничение значение этого ограничения как булевского выражения есть «истина». Так, значения переменных x=3, y=5 удовлетворяют ограничению (x+y)/4< xy-x.
Примером Н-модели может служить следующий набор ограничений:
tg(x)3 + ln(sin(x/2.0) + tg(2*x)) - cos(2-y) = 0;
cos(exp(-y)) - 2*y - 0.1*cos(sin(2*x)) = -3;
x=[0,1]; y=[0,2].
Система имеет решение: x = 0.5441; y = 1.963.
Наиболее важные особенности технологии Н-моделей таковы:
- число переменных в Н-модели может быть не равно числу ограничений, в том числе и уравнений (возможны недоопределённые и переопределённые системы ограничений);
- результатами вычислений Н-модели являются не отдельные решения, а пространство всех решений, удовлетворяющих её ограничениям;
- отсутствует деление переменных Н-модели на входные и выходные, так как в Н-модели все они взаимозависимы;
- в одной Н-модели переменные могут иметь разные типы – например, вещественные и целые, а также логические;
- вместе с уравнениями и неравенствами любого типа могут использоваться логические выражения и табличные зависимости, определяющие дополнительные отношения между переменными Н-модели;
- любые переменные, коэффициенты, константы, показатели в ограничениях Н-модели могут быть заданы неточно – в виде интервалов или списков значений;
- не требуется задания начального приближения к решению;
- могут отсутствовать стандартные методы решения.
2.3. Недоопределенные переменные
Аппарат Н-вычислений вводит новое понятие переменной, которое качественно отличается от понятия классической переменной. Классическая переменная входит в число основных понятий математики и представляет собой некоторую неизвестную величину, связанную условиями задачи с другими известными и неизвестными величинами. Если условия задачи достаточно полны, значение данной переменной может быть определено точно. Значение классической переменной отражает некоторую конкретную сущность, заданную условиями задачи. В рамках одной конкретной задачи переменная не может меняться, она может быть либо известной, либо неизвестной.
Алгоритмическая переменная, фактически является ячейкой памяти, в которую могут помещаться различные значения, меняющиеся в ходе выполнения программы.
Метод Н-моделей сопоставляет с переменной недоопределенное значение (Н-значение). Данное значение выступает оценкой реального значения-денотата на основе доступной в данный момент информации. Н-значение является промежуточным между полной определенностью (точным значением) и полной неопределенностью (всем универсумом). Оно способно уточняться при получении более точных данных. Например, прогнозируемый рост продаж программного продукта может лежать в пределах от 10 до 20 процентов.
Н-значение – непустое подмножество универсума, содержащее внутри себя значение-денотат, которое пока остается неизвестным (точнее, известным с точностью до данного недоопределенного значения) ввиду недостатка информации. При поступлении более точных данных Н-значение становится все более определенным. В пределе оно становится точным и равным денотату данной недоопределенной переменной (Н-переменной).
Для Н-переменной существуют два различных значения:
- реальное неизвестное пока значение-денотат, которое она представляет, и
- текущее Н-значение, являющееся доступной оценкой этого реального значения.
Недоопределенными могут быть значения как существующих объектов, так и находящихся в процессе создания. Во втором случае Н-значение является ограничением на возможные значения данного параметра. Например, яркость создаваемого телевизора составляет от 450 до 500 кд/кв. м; участники планируемой научной конференции имеют возраст от 20 до 40 лет.
В процессе вычислений Н-значение может только уточняться, обеспечивая монотонность процесса вычислений. Число возможных Н-значений должно быть конечным для конечности вычислений. Обычно все реальные параметры имеют начальные оценки, так как даже оценка возможных значений в виде (-∞,+∞) будет представлена конкретным максимальным числом.
2.4. Недоопределенные вычисления
Н-модели представляют собой частный случай обобщенных вычислительных моделей (ОВМ), которые имеют более широкую область применения, чем решение задач удовлетворения ограничений. ОВМ определяется как четвёрка (X, R, W, C), где:
- X – множество переменных из заданной предметной области;
- R – множество ограничений на значениях переменных из X, ограничения должны быть функционально интерпретируемыми;
- W – множество функций присваивания;
- C – множество функций проверки корректности.
Каждой переменной xX сопоставлены:
- область значений Ax;
- начальное значение из Ax;
- функция присваивания wx;
- функция проверки корректности corrx.
Функция присваивания – это двухместная операция, работающая при каждой попытке присваивания очередного значения переменной х и определяющая новое значение переменной как функцию от текущего и присваиваемого значений. Обычно в качестве такой функции используется операция пересечения этих значений. Функция проверки корректности – это унарный предикат, вычисляемый при каждом изменении значения переменной х и проверяющий правильность нового значения.
На уровне интерпретации ОВМ представляется двудольным ориентированным графом, в котором выделены два типа вершин: переменные и функции интерпретации отношений. Дуги связывают вершины-функции и вершины-переменные. Входящие в вершину-функцию f дуги соотносят с ней переменные, значения которых выступают в качестве входных аргументов для функции f, исходящие – указывают на переменные, в которые должна производиться запись вырабатываемых функцией f результатов. Каждой вершине-переменной сопоставляются тип и значение, и с каждой связываются функции присваивания и проверки корректности.
Процесс удовлетворения ограничений на ОВМ имеет потоковый характер: изменение значений вершин-переменных сети вызывает к исполнению функциональные вершины, для которых эти вершины являются входными аргументами, а исполнение функциональных вершин в свою очередь может вызывать изменение результирующих вершин-переменных. Вычисления заканчиваются тогда, когда либо не останется активных функциональных вершин (УСПЕХ)‚ либо функция проверки корректности вырабатывает значение ложь (НЕУДАЧА).
Пусть все функции присваивания в ОВМ производят пересечение Н-значений wx (old, new) = old new , где old – текущее значение переменной x, new – новое значение, выработанное вершиной-функцией, результат вычисления которой должен записываться в данную переменную, а функции проверки корректности выполняют проверку Н-значения на непустоту corrx () = if then true else false.
Именно этот класс обобщенных вычислительных моделей называется Н-моделями. Доказаны следующие свойства Н-моделей.
Процесс удовлетворения ограничений в Н-моделях завершается за конечное число шагов.
Достижение процессом НЕУДАЧИ или УСПЕХА предопределено входными данными (начальными Н-значениями переменных и ограничениями) и не зависит от конкретной стратегии выбора очередного ограничения для интерпретации.
В случае УСПЕХА процесса, при одних и тех же входных Н-значениях переменных Н-модели их выходные Н-значения не зависят от конкретной стратегии выбора очередного ограничения для интерпретации.
В случае УСПЕХА процесса, решение задачи (если оно существует) лежит внутри полученного процессом результата (декартова произведения Н-значений).
Метод Н-вычислений обеспечивает нахождение многомерного параллелепипеда, в котором гарантированно лежат все решения системы ограничений (Н-модели). Если Н-модель не имеет вещественных решений, то результатом является выдача сообщения о несовместности системы. В общем случае для каждой переменной находится интервал возможных значений.
2.5. Взаимодействие пользователя с системой недоопределенных вычислений
Взаимодействие пользователя с системой Н-вычислений включает нескольких этапов: анализ фрагмента предметной области, создание Н-модели, запуск процесса вычислений, получение и анализ решения, а также при необходимости корректировка модели или ее параметров и повторные вычисления. Интеграция технологии Н-моделей с веб-технологиями позволяет автоматизировать эти процессы и обеспечить дополнительные качества по сравнению с однопользовательским режимом работы без подключения к сети.
Создаваемая модель будет использоваться для решения прямых и обратных задач, представленных системами алгебраических уравнений, неравенств и логических выражений. Решаемая система может быть переопределенной или недоопределенной, а параметры уравнений и неравенств могут быть заданы неточно, в виде интервалов или перечислений допустимых значений.
Математические модели в реальных задачах имеют следующие свойства:
- сложность задания точных значений параметров, определяющих модель. Это обусловлено недостаточностью знаний природы изучаемого явления или погрешностью измерительных приборов. Зачастую возможно указать только предельные значения физических величин – интервал их изменения. Отсюда вытекает необходимость решения систем уравнений с неточными параметрами, что практически невозможно сделать с помощью имеющихся методов;
- отсутствие хороших начальных приближений решения. Практически все алгоритмы решения нелинейных систем требуют задания начального приближения корней, неудачный выбор которого может привести к тому, что решение не будет найдено;
- отсутствие стандартных вычислительных алгоритмов для решения многих видов нелинейных систем.
Приведенные выше преимущества технологии Н-моделей позволяют справляться с этими трудностями.
После запуска процесса вычислений предварительно производится проверка модели и ее компиляция в случае отсутствия ошибок. Процесс вычислений заканчивается получением результата – система может быть либо совместной, в этом случае для каждой переменной будет получен интервал возможных значений (или точное значение), либо несовместной.
Решение задачи, полученное с помощью метода Н-вычислений, обычно является недоопределенным и может либо удовлетворить потребности пользователя, либо побудить пользователя к получению дополнительной информации. При введении в Н-модель новой информации (ограничений и значений переменных) в результате вычислений происходит уточнение решения. Если на каком-то этапе система несовместна, требуется выяснение причин несовместности и соответствующая корректировка Н-модели.
Глава 3. Веб-приложения на основе технологии недоопределенных моделей
3.1. Архитектура
Веб-приложения на основе технологии недоопределенных моделей представляют собой одну или несколько веб-страниц с различными компонентами (интерфейс, средства ввода данных), использующих вычислительное ядро. Оно производит вычисления созданных моделей. При этом возможны как вывод результатов для дальнейшего применения, так и передача данных в модель из других приложений. Именно эти возможности, обеспечиваемые за счет использования веб-технологий, существенно расширяют спектр задач, решаемых при помощи технологии Н-моделей.
Кроме того, использование веб-технологий позволяет организовать многопользовательский режим работы, получать данные из различных источников в реальном времени, обеспечивать интеграцию с различными сервисами и многое другое.
3.2. Компоненты
Вычислительное ядро
Основным компонентом веб-приложений на основе технологии Н-моделей является вычислительное ядро. На вход вычислителя поступает файл, представляющий собой недоопределенную модель. После завершения вычислений результат передается в файл, либо может быть выведен с помощью скрипта на веб-страницу.
Запуск вычислительного процесса и передача результатов вычислений серверному процессу обычно происходит по команде пользователя. Вычисления можно начать при наличии Н-модели, которая либо уже имеется, либо будет разработана пользователем, либо будет создана динамически. После компиляции и проверки синтаксиса происходит активация вычислительного процесса, по его завершении основному процессу передается результат. При неверном синтаксисе им может быть сообщение об ошибке компилятора. Если модель составлена правильно, результатом будет полученное решение для всех переменных модели или сообщение о несовместности модели. В случае, когда модель совместна, результат содержит пространство всех решений - для каждой переменной находятся интервалы допустимых значений (в предельном случае точные решения).
Вычислительное ядро может быть запущено с различными дополнительными параметрами, такими как необходимость поиска корней, максимальные границы для представления чисел, точность вычислений и т. п. Поиск корней обеспечивает нахождение точных решений системы ограничений, при этом можно осуществлять поиск различного числа корней. Требования к точности вычислений влияют на время вычислений. Все эти параметры могут иметь значения по умолчанию, а также устанавливаться пользователем.
Веб-приложения на основе Н-моделей обеспечивают возможность многопользовательской разработки. На вход вычислительного ядра отправляется общая модель, которая может состоять из подмоделей различных пользователей. Это ускоряет процесс создания сложных моделей.
Веб-компоненты
Как уже отмечалось, веб-компоненты представляют собой определенные законченные элементы с некоторым набором свойств. Они повышают эффективность разработки благодаря тиражируемости, гибкости настроек и возможности интеграции. Последнее позволяет повысить функциональность веб-приложений на основе Н-моделей путем интеграции с готовыми компонентами.
Например, веб-приложение может представлять собой систему календарно-ресурсного планирования, использующего вычислительное ядро на основе Н-моделей. В системе используется компонент – календарь-планировщик с развитым интерфейсом и большим набором функций. При этом логика работы приложения может быть настроена так, что в результате подключения вычислительного ядра к данному компоненту появляется возможность осуществлять планирование с помощью Н-моделей – уточнять планы, вводить интервальные даты и др.
Другим примером является использование веб-компонента – географической карты. Такой компонент можно использовать для отображения информации в системах мониторинга, представления бизнес-отчетности и др. Например, компания может отображать на карте Европы прогноз продаж программных продуктов по различным странам. Здесь также может быть применен метод Н-моделей для аналитических вычислений – компонент получает в качестве параметров переменные, являющиеся результатом вычислений, и на основе их производит отображение визуальной информации. В целом, построение веб-приложений с помощью компонентов представляет собой мощный подход, следуя которому можно создавать многофункциональные и удобные веб-приложения.
Глава 4. Примеры веб-приложений на основе технологии Н-моделей
В данной главе будут рассмотрены конкретные веб-приложения, созданные на основе технологии недоопределенных моделей.
- Математические приложения
Используя вычислительное ядро, можно создавать разнообразные веб-приложения, предназначенные для математических расчетов. Причем оно может быть единственным компонентом для вычислений или же работать совместно с каким-либо другим математическим веб-компонентом (например, Wolfram WebMathematica).
Примером, в котором реализуется первый случай, является поиск простых чисел в некотором интервале числовой оси. Здесь видны преимущества Н-моделей: помимо малого времени получения результата, имеется возможность задать, например, условие, что простое число должно оканчиваться на 1 или 7, но не на 3 и 9. Оно является дополнительным ограничением, что позволяет быстрее получить искомые числа.
- Естественнонаучные и технические приложения
Круг естественнонаучных и технических задач, решаемых с помощью вычислительного ядра, весьма широк. Как и в других областях, особенностью здесь является возможность задавать интервальные переменные, различные ограничения. Рассматриваемое явление формализуется в виде недоопределенной модели, содержащей константы, параметры и переменные, описывающее его.
Применение Н-моделей в естественных науках и технике обеспечивает такие преимущества, как производительность в нелинейных вычислениях, интервальные расчеты, решение обратных задач, проблем комбинаторики и др.
Примером решения технической задачи может быть вычисление Н-модели, описывающей зависимость между типом самолета и его техническими характеристиками. Такая модель используется при предварительном проектировании самолета. Она включает уравнения, неравенства и логические выражения с целого и вещественного типов. После расчетов результат можно отображать в браузере в виде визуальной трехмерной модели самолета.
- Экономические и финансовые приложения
В настоящее время количество веб-приложений для экономических и финансовых задач продолжает расти. Это обусловлено потребностью организаций и отдельных лиц в эффективных системах для ведения бизнеса, в частности, выполняющих функции планирования, прогнозирования, анализа текущей деятельности. Кроме того, веб-приложения позволяют организовать многопользовательскую работу, не требуют установки, доступны из различных мест.
Основными требованиями к экономическим и финансовым веб-приложениям являются защищенность, удобство пользования, производительность, прозрачность получаемых результатов. Для получения этих качеств в последнее время все чаще используют различные способы защиты, веб-компоненты и средства для построения многофункциональных веб-приложений.
Как уже отмечалось, аналитическая составляющая систем играет важную роль в принятии решений. Успешность ее построения зависит от применяемых моделей данных и алгоритмов их обработки. Благодаря своей универсальности и мощному вычислительному процессу метод Н-моделей позволяет создавать экономические и финансовые веб-приложения нового уровня [26-33].
Метод Н-моделей применяется для анализа и прогнозирования экономической и финансовой ситуации субъектов. В частности, он эффективен для финансового анализа, прогноза экономики, разработки и сопровождения бюджетов, оценки и оптимизации бизнес-планов и инвестиционных проектов, решения текущих финансовых проблем. За счет своих характерных особенностей метод позволяет успешно решать обратные задачи; проводить моделирование с интервальными показателями, что характерно в условиях неполноты информации; добавлять ограничения при поступлении более точной информации и др. Последнее особенно важно в задачах финансового планирования: обычно можно лишь приблизительно оценить величину будущей инфляции, сезонные изменения цен на товары или колебания обменного курса валют.
Примером экономического веб-приложения является система прогнозирования экономики региона. Она может быть реализована следующим образом. Главная страница представляет собой интерактивную карту региона, которую сопровождают элементы для ввода числовых данных, соответствующих различным экономическим параметрам. Пользователь вводит эти данные, которые затем передаются в модель экономики региона, которая может быть разработана заранее. После получения результатов с помощью вычислительного ядра, они также могут быть отображены в интерактивной форме в виде графиков и диаграмм. Интересной особенностью здесь является возможность построения графиков-«коридоров», на которых видно как изменяется ситуация при варьировании переменных задачи.
Такое веб-приложение может включать систему авторизации для различных категорий пользователей, использовать различные веб-компоненты для отображения и ввода информации, а также при необходимости шифрование данных.
Примером финансового веб-приложения является система финансового анализа российского отделения международной компании.
Хорошо организованный учет всевозможных производственных ресурсов является важным элементом бизнеса, но сам по себе он не дает руководителям четкого представления о текущем состоянии дел в фирме. Необходимы средства анализа различных экономических и финансовых показателей, способные не только обеспечивать четкое видение происходящего, но и давать прогноз показателей с учетом различных факторов и тенденций, возникающих на предприятии.
Финансовый анализ предприятия – изучение ключевых параметров и коэффициентов, дающих объективную картину финансового состояния предприятия: прибыли и убытков, изменений в структуре активов и пассивов, расчетах с дебиторами и кредиторами, ликвидности, устойчивости и т. д.
По оценкам финансовых директоров средних компаний, в итоге достигается только 30% планируемой экономии при осуществлении закупочной деятельности. Это заставляет их обращать большее внимание на эту сторону деятельности компании. Недавнее исследование AberdeenGroup показало, что 48% финансовых директоров буквально разрываются между многочисленными обязанностями, такими как планирование, казначейство, контроллинг и другими нефинансовыми ролями. Поэтому их вовлечения в закупочную деятельность, как правило, бывают разовыми и случайными. Только 10% компаний тратят свои ресурсы на исследование и анализ ценообразования, потоков платежей и оборотных средств; между тем, как показывает практика, это имеет существенный экономический эффект. Компании, стабильно применяющие в своей деятельности автоматизированные средства для финансового анализа, существенно сокращают издержки, по крайней мере, в процентном отношении к прибыли.
Из сказанного можно сделать вывод о потребности компаний в системах, обеспечивающих финансовый, экономический анализ предприятия, оценку его эффективности, кредитоспособности, финансовой устойчивости, а также составление прогнозов различных финансовых показателей и планирование производственной деятельности, включая составление и анализ бизнес-планов.
Все это с успехом реализуется в веб-приложениях на основе метода Н-моделей. За счет его использования моделирование позволяет адекватно учесть такие распространенные особенности как неполнота финансовой информации, интервальность данных и показателей. При этом достигается более реалистичное воспроизведение ситуации, возможны решение обратных задач, а также оптимизация по определенным показателям и др.
- Веб-приложения для календарно-ресурсного планирования
Как и многие направления автоматизации деятельности компаний, системы календарно-ресурсного планирования сформировались до начала активного развития Интернета. Этим обусловлено длительное доминирующее положение десктопных приложений перед соответствующими сетевыми аналогами. Однако в последние годы стали появляться и системы, основанные на веб-технологиях.
Современный мировой рынок систем для управления проектами достаточно развит. В России внедрение технологий управления проектами начало быстро расти с середины 90-х годов, когда по мере укрупнения компаний стало необходимым применять единые методы и программные средства управления.
По данным Gartner, с середины 2006 года рынок решений для управления проектами развивался и менялся чрезвычайно быстро. Это обусловлено тем, что крупные предприятия нуждаются в расширенном планировании и контроле ИТ-ресурсов, в качестве основного инструмента используя решения для управления проектами. Ценность таких решений становится очевидной для компаний любого размера, которые используют программное обеспечение по управлению проектами в режиме сервисного обслуживания и по требованию.
В Gartner отмечают, что мировой рынок продаж систем разработки приложений и управления проектами в 2006 году достиг $7,2 млрд., увеличившись на 7% по сравнению с 2005 годом.
Изучая российский опыт, можно утверждать, что задача правильного управления проектами является одной из самых трудных. Основной проблемой отечественного управления проектами является недостаточная квалификация менеджеров. Часто принимается решение об использовании специализированного программного обеспечения для управления проектом, строятся временные диаграммы, но затем начинается рутинная работа: возникают новые задачи, изменяются требования к существующим, все это требует оперативного внесения и отслеживания изменений в план проекта. Как правило, этим перестают заниматься.
Все это требует от используемых программных решений удобных интерфейсов и продуманной логики, основанной на том или ином аналитическом аппарате. Далее рассмотривается система календарно-ресурсного планирования на основе метода недоопределенных моделей.

Рис. 2. Веб-приложение для календарно-ресурсного планирования.
Календарно-ресурсное планирование – одна из основных составляющих управления проектами, заключающаяся в разработке и сопровождении временного плана заданий или работ при учете задействованных ресурсов. Если говорить о последовательности внедрения различных компонентов системы управления проектами, то обычно первыми оказываются востребованными именно средства календарно-ресурсного планирования, так как прежде всего они нужны тем, кто непосредственно управляет проектами.
Одним из основных отличий и преимуществ использования метода Н-моделей в данной области – возможность использовать при планировании интервальные оценки временных и ресурсных параметров, что принципиально меняет как качество плана, так и сам процесс его формирования и использования [34-44].
Также метод позволяет получить следующие преимущества:
- в качестве исходных данных плана пользователю достаточно ввести только его структуру и известные к данному моменту временные ограничения на даты и/или продолжительность заданий, а также на распределение ресурсов. Этих частичных и приблизительных входных данных достаточно системе вывода для автоматического доуточнения плана, определяющего более конкретные значения для временных параметров заданий;
- все соответствующие введенным пользователем ограничениям точные варианты графика представлены в едином обобщенном недоопределенном плане. Именно с ним работает пользователь в процессе уточнения и оптимизации разрабатываемого графика работ. Недоопределенный план – наиболее простой и естественный способ представления всех возможных конкретных вариантов графика, удовлетворяющих исходным ограничениям. Веб-приложение обеспечивает необходимые пользователю средства для эффективного уточнения и оптимизации плана, гарантирующие наилучшие временные и экономические показатели. При этом результирующий график может остаться недоопределенным, то есть сохранить интервальные параметры для динамического приспособления плана к любому изменению реальных условий в процессе его выполнения.
- недоопределенность результирующего варианта плана обеспечивает возможность его автоматической адаптации к отклонениям временных параметров во время реализации. Контролируя выполнение плана на основе информации о начале и завершении текущих заданий, веб-приложение автоматически уточняет график его завершения.
Архитектура
Данное веб-приложение включает в себя следующие компоненты:
- календарь-планировщик – веб-компонент с функцией планирования заданий с развитым интерфейсом выбора времени;
- таблица заданий – веб-компонент на основе электронных таблиц, позволяющий управлять структурой плана;
- таблица отношений – веб-компонент на основе электронных таблиц, позволяющий задавать отношения между заданиями. Является формализованной формой сетевого графика;
- вычислительное ядро на основе метода Н-моделей. Производит вычисления модели, созданной с помощью остальных компонентов.
Также на веб-страницах присутствуют управляющие кнопки, обеспечивающие логику работы приложения.
Принцип работы
Веб-приложение можно рассматривать в качестве инструментальной среды для управления проектами, в частности, для календарного планирования (расписания работ проекта), планирования ресурсов, а также сопровождения проекта на этапе выполнения.
Система предоставляет пользователю высокоэффективные средства, удовлетворяющие всем управленческим требованиям к системам управления проектами.
Она имеет различные формы представления плана: таблицы, временную диаграмму. Это набор взаимодополняющих интерактивных форм, через которые пользователь взаимодействует с создаваемым планом в процессе его разработки и сопровождения.
Данное веб-приложение имеет эффективные средства структурного планирования:
- средства описания заданий при помощи отдельных планов, что позволяет естественным образом адаптировать применение системы к любой структуре организации;
- средства интеграции отдельных планов в единый план, например, планы подразделений – в план организации;
- возможность параллельного формирования, оптимизации и сопровождения календарных планов работ, выполняемых в подразделениях, непосредственно в этих подразделениях;
- возможность использовать типовые планы, подпланы, фазы, пакеты планов при создании конкретного проекта, а также сохранение разработанных подпланов - импорт и экспорт.
Система имеет средства ресурсного планирования. Например, разные задания могут выполняться разными людьми, что учитывается соответствующим образом.
Процесс планирования в данном веб-приложении состоит из следующих основных этапов. Сначала с помощью календаря-планировщика вводятся данные о заданиях – интервалы дат начала и конца, длительность, используемые ресурсы. После добавления данных о заданиях они сразу отображаются во временном и табличном представлениях. При этом первое удобно возможностью выбора временного масштаба. Например, можно переключаться между более и менее детализированными вариантами – от получасового разбиения до просмотра всей годовой информации.
Далее в таблице заданий вводится структура плана. Она представляет собой список заданий в виде иерархического дерева, учитывающего вложенность. Структура отражает ту особенность, что на практике задания могут состоять из подзаданий. Это приводит к дополнительным ограничениям в общей модели плана – задание не может быть полностью завершено прежде, чем будет выполнено последнее из подзаданий.
На следующем этапе заполняется таблица отношений. Она представляет собой более удобный для реализации аналог сетевого графика, так как последний можно свести к некоторой таблице, в которой отношения эквиваленты ветвям графа и обозначают связи во времени между заданиями.
После этого данные из всех компонентов преобразуются в недоопределенную модель плана, которая запускается на счет при нажатии соответствующей кнопки. После вычислений полученные результаты снова преобразуются к виду, удобному для просмотра их во временном и табличном представлениях. Таким образом, пользователи получают новый уточненный благодаря учету связей вариант плана.
Как видно, система берет за основу математическую модель плана. Результат вычисления модели плана есть базовый план проекта. Вычислитель, реализующий Н-вычисления, выявляет существование решения и позволяет, если решение существует, снять противоречие между требованием минимальной продолжительности плана и наличием резервов без дополнительного введения параметров типа КМР («как можно раньше») и КМП («как можно позже»). При несовместности, то есть при отсутствии решения, система позволяет преобразовать модель таким образом, что она будет иметь решение.
В результате система составляет обобщенный график работ на основе тех условий, которые известны, проверив их на непротиворечивость. Этот график включает в себя все варианты выполнения, удовлетворяющие заданным условиям. Можно уточнять и оптимизировать его, формулируя дополнительные ограничения, исключающие худшие варианты развития процесса выполнения плана. В результате график становится конкретным, и гарантирует наилучшие сроки и экономические показатели. Он включает резервы времени, чтобы динамически адаптироваться к любым обстоятельствам реального хода выполнения. Оптимальный вариант формируется в результате процедуры сжатия. При этом длительности всех заданий, находящихся на критическом пути становятся точными.
Таким образом, всю работу с планом в данном веб-приложении можно разделить на ввод исходных данных, формирование плана (расчет и оптимизация расписания) и сопровождение плана (мониторинг выполнения).
Формирование и уточнение плана производится с помощью встроенного вычислительного ядра.
Используя те же процедуры ввода исходных данных, что и в коммерческих системах управления проектами, данная система осуществляет:
- Математическое моделирование планов, чем принципиально отличается от других СУП.
- Структурное моделирование планов, осуществляя разбиение исходной модели плана на систему подмоделей, связанных отношениями.
- Расчет расписания при неточности и неполноте исходных данных.
Система использует подход, который базируется на концепции недоопределенности, то есть учитывается возможность разброса сроков начала и окончания работ, разброса величин длительности и т. д. и не вводится никаких искусственных ограничений и резервов – они вытекают из самого подхода к заданиям (работам) как к недоопределенным интервальным событиям. В итоге минимизируется риск срыва проекта, так как на каждом этапе, в каждый момент автоматически пересчитывается базовый план с учетом изменившихся параметров. Таким образом, рассматриваемая система достаточно гибка, чтобы допускать успешное выполнение проекта даже при срывах отдельных заданий. Этот же механизм позволяет до начала этапа выполнения производить анализ критерия "что, если", оценивая возможные риски плана.
Система позволяет не сохранять архивов проекта, так как сохраняется базовый план в двух вариантах – исходный, до расчета расписания, и после расчета и оптимизации.
Примеры работы веб-приложения
Данное веб-приложение рассчитано на работу над планированием проектов любой сложности – начиная от отдельных людей и небольших фирм до крупных компаний. Основной возможностью, впервые реализованной, является именно сетевой вариант работы над системой. Это выгодно отличает систему от других, так как интерактивный многопользовательский режим работы над планированием является эффективным и предоставляет много преимуществ, таких как быстрый просмотр изменений, сделанный другими участниками.
Примером работы системы является создание компанией-организатором календарно-ресурсного плана подготовки к крупному выставочному мероприятию. В качестве пользователей системы выступают сотрудники компании, работа проводится над одним планом в коллективном режиме.
Вначале составляется структура плана, чтобы сделать работу над подготовкой выставки более прозрачной и определить ответственность сотрудников. Структура может включать следующие группы заданий: подготовка выставочной площадки, кампания по продвижению выставки, работа с экспонентами и т. п.
Далее план детализируется путем добавления конкретных заданий и связей между ними. После выполнения этой процедуры модель запускается на счет, и в результате получается уточненный рабочий вариант плана. При изменении сроков некоторых заданий вносятся изменения, и план снова пересчитывается. Таким образом, осуществляется мониторинг выполнения плана.
- Веб-приложения для задач бизнес-аналитики
Как уже отмечалось, роль современных систем бизнес-аналитики сложно переоценить. Такие системы используются для хранения, преобразования, анализа, моделирования, доставки и трассировки информации в ходе работы над задачами, связанными с принятием решений на основе фактических данных. С помощью данных средств лица, принимающие решения, должны при использовании подходящих технологий получать нужные сведения и в нужное время.
Важнейшей особенностью информационно-аналитических систем является быстрый эффект от их внедрения. Продукты данного класса представляют собой специализированную надстройку над уже действующими на предприятии учетными системами и не требуют обязательной замены функционирующих программно-технических комплексов (системы бухгалтерского учета и оперативного управления) и внедрения дорогостоящих систем уровня ERP, что позволяет существенно сэкономить средства предприятия на ее внедрение. Проекты по внедрению информационно-аналитических систем характеризуются короткими сроками выполнения: в среднем 3-4 месяца.
В последнее время становится очевидной тенденция к созданию приложений и систем, работающих в реальном времени, способных реагировать на различные бизнес-события и инициировать бизнес-процессы.
Спектр задач, решаемых с помощью систем бизнес-аналитики, включает создание корпоративной управленческой отчетности, финансово-экономическое планирование, стратегическое управление и бизнес-моделирование.
Среди технологий, используемых для построения систем бизнес-аналитики, следует упомянуть аналитическую обработку в реальном времени (OLAP, online analytical processing), технологии визуализации, сетевые технологии. OLAP – технология обработки информации, включающая составление и динамическую публикацию отчетов и документов. Для наглядного представления отчетов используются средства визуализации – диаграммы, графики. Сетевые технологии применяются для организации многопользовательской работы, а также для работы с Интернетом.
Для создания систем бизнес-аналитики используются различные современные языки программирования и подходы, в том числе разработка с помощью компонентов. Среди известных решений BA на основе веб-технологий можно назвать spellabs web.agent – веб-интерфейс для пользователей Microsoft Navision, различные системы для веб-аналитики (Statcounter, Webtrends), Mint.com – персональный финансовый органайзер, интегрированный с базами данных финансовых сервисов.
Метод недоопределенных моделей для построения систем бизнес-аналитики эффективен возможностью создания сложных моделей бизнеса с учетом неполной информации, заданной в виде интервалов допустимых значений.
Примером веб-приложения является система по анализу бизнеса российского представительства автомобильной компании Land Rover. В современных условиях конкурентной борьбы имеет первостепенное значение то, насколько оптимизированы бизнес-процессы в компании [45]. А это зависит от степени развитости ее ИТ-инфраструктуры, в том числе применяемых программных средств.
Согласно исследованию компании Capgemini [46], автомобильная промышленность стала одной из самых ранних областей применения информационных технологий, по большей части в связи с характерными особенностями работы автомобильных компаний в сложной глобальной конкурентной среде. За последние сорок лет автомобильная промышленность стала очевидцем быстрого и в некоторой мере неструктурированного роста ИТ, за счет которого ситуация на рынке стала значительно различаться в разных географических регионах и среди автопроизводителей. По результатам исследования, спектр используемых программных приложений в компаниях очень разнообразен, при этом предпочтение отдается системам «под заказ», несмотря на стремление разработчиков создавать унифицированные системы. Это происходит за счет сложности отрасли и трудности создания готовых и полностью удовлеторяющих потребости решений для любого заказчика. Тем не менее, хотя системы «под заказ» и доминируют в целом, для решения отдельных задач применяются и стандартизованные комплексы. Так, последнее характерно для послепродажных вопросов, таких как логистика запчастей, гарантийное обслуживание, тогда как управление цепочками поставок обычно требует настраиваемых систем, что отражает критичность этой задачи для бизнеса.
Интернет в настоящее время является для автопроизводителей одним из важнейших звеньев в бизнесе – и как источник новых клиентов, и как средство для развертывания систем. В качестве примера веб-приложения следует упомянуть комплекс взаимодействия автодилеров Dealer Communication System (DCS), разработанный для мексиканского отделения компании BMW компанией Capgemini. Данная система представляет собой интернет-портал, интегрированный с системой SAP с помощью комплекса SAP@Webstudio. Она также функционирует в Аргентине и Бразилии. Использование указанной системы позволило компании BMW удвоить объем заказов запчастей, увеличить продажи на 50% по сравнению с прошлым годом, более эффективно осуществлять прогноз продаж автомобилей.
Исходя из всего сказанного выше, можно сделать вывод о том, что веб-приложения действительно обеспечивают существенный вклад в оптимизацию бизнеса. Применение метода недоопределенных моделей для задач автомобильного бизнеса является эффективным способом учесть сложность существующей бизнес-среды, исследовать ситуацию с учетом неполной информации, решать обратные задачи. Для этого рекомендуется использовать компонентный подход к построению веб-приложений, что позволяет производить интеграцию с действующими системами в организациях, подключать системы веб-аналитики.