Разработка методики проектирования защищенной веб-ориентированной информационной системы на примере системы дистанционного образования

Бесплатный доступ

В статье рассматривается модель процесса разработки информационной системы и предлагается методика, позволяющая повысить эффективность процесс разработки и дальнейшего сопровождения веб-ориентированной информационной системы.

Короткий адрес: https://sciup.org/140191214

IDR: 140191214

Текст научной статьи Разработка методики проектирования защищенной веб-ориентированной информационной системы на примере системы дистанционного образования

При создании сложных информационных систем, как правило, применяются смешанные модели разработки. Если разработка занимает существенное время, то важную роль играет возможность выполнять отдельные процессы разработки подсистем и весь процесс создания системы итерационно, с учетом непрерывно уточняемых требований [1]. Одним из классов информационных систем (ИС), активно развивающихся в последнее время, являются веб-ориентированные системы (ВО ИС). Это информационные системы, использующая веб-интерфейс в качестве основного средства взаимодействия с пользователем, предоставляющая различные сервисы доступа к динамическим данным, имеющие различные средства аутентификации пользователей, разграничения доступа и защиты информации. Одним из преимуществ ВО ИС является простота обновления до новой версии. Для традиционного ПО при обновлении необходимо поменять программные модули у всех конечных пользователей, что представляет собой весьма трудную задачу для территориально распределенных пользователей, требующую определенного времени. Для ВО ИС обновление выполняется только на одном вебсервере, никак не затрагивая при этом конечных пользователей информационной системы, при этом разработчик обладает полной информацией о версии, используемой всеми пользователями. Но чтобы в полной мере можно было воспользоваться данным преимуществом, требования, адаптирующие систему под итерационную мо- дель, должны максимально учитываться уже при разработке архитектуры.

  • 2.    Постановка задачи

  • 3.    Анализ модели процесса разработки

Целью настоящей работы является разработка методики проектирования веб-ориентированной информационной системы, представляющей собой дальнейшее развитие итерационной модели с применением современных принципов программирования, позволяющей получить на выходе архитектуру информационной системы, максимально учитывающую специфику веб-ориентированной системы и обеспечивающую простоту дальнейшего развития и модификации.

Эволюционирование принципов программирования, начиная от структурного подхода, прежде всего, направлено на упрощение процесса разработки в целом и процесса модификации в частности.

Во многих информационных системах можно выделить две составные части: ядро информационной системы и окружение ядра. Под ядром информационной системы подразумевается множество программных модулей (функций, классов), составляющих основу системы, то есть реализующих ее базовую функциональность. Остальные компоненты системы – окружение – полностью или частично используют функциональность ядра. Окружение в свою очередь может быть разделено на несколько уровней. Например, окружение второго уровня не использует функции ядра не напрямую, а опосредованно через функции окружения первого уровня и т.д. Ядро, в данном случае, можно считать нулевым уровнем.

Такое деление подразумевает, что процесс разработки системы может начинаться с разработки ядра и продолжаться разработкой нескольких уровней окружения. Если в процессе разработки вносятся изменения в окружение предыдущего уровня или ядро, то это может повлечь неработоспособность функций окружения более высокого уровня. Для минимизации потерь от таких ситуаций обычно применяется следующее [2]:

  • -    грамотное проектирование ядра с учетом максимально возможного количества требований к ИС;

  • -    более четкое разделение уровней окружения с разработкой интерфейсов взаимодействия, максимально независимых от реализации;

  • -    расширение функциональности ядра или уровня окружения без затрагивания уже существующей функциональности;

  • -    внесение минимально необходимых изменений в функциональность предыдущих уровней, если иного выбора не остается.

  • 4.    Методика проектирования веб-ориентированной информационной системы

Таким образом, процесс разработки и использования информационной системы можно представить в виде следующей схемы (рис. 1):

Рис. 1. Процесс разработки и использования информационной системы

Как видно из рис. 1, после разработки ядра начинаются последовательные циклы разработки окружения или функциональности первого уровня. В данном примере более высокие уровни не показаны, но их легко можно внести, повторив блок-схемы, идущие после разработки ядра до выпуска версии. Результатом каждого цикла является очередная версия информационной системы. В процессе эксплуатации идет непрерывный процесс накопления изменений требований. Когда объем необходимых изменений превышает некоторый предел, то запускается следующий цикл разработки ИС.

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

Для разработки ядра будем использовать подход, предложенный в [3]. Необходимо определить, что будет включаться в состав ядра, исходя из основных требований. Критерий, позволяющий определить границу между ядром и окружением можно сформулировать в следующем виде: проектирование ядра завершено, когда создавать новые классы и объекты можно с использованием множества объектов ядра. Таким образом, для веб-ориентированной информационной системы ядро позволяет разработать самостоятельный набор объектов, с помощью которых можно создавать, хранить и обрабатывать информации некоторой предметной области, допускающей представление в рамках объектно-ориентированного подхода. Таким образом, информационная система, состоящая пока только из ядра, позволяет вести дальнейшую свою разработку только через свой веб-интерфейс, поскольку согласно предложенному подходу, файлы с программным кодом тоже являются объектами ИС и могут создаваться, модифицироваться и удаляться через веб-интерфейс.

Разрабатываемая методика обладает следующими свойствами.

  • 1.    Методика является итерационной, то есть предусматривает развитие информационной системы через циклическое повторение однотипных шагов разработки.

  • 2.    Методика использует подход разработки через тестирование, так как подразумевает непрерывный процесс уточнения требований.

  • 3.    Методика подразумевает использование архитектуры Model-View-Controller (MVC), в которой модель данных приложения, пользовательский интерфейс и управляющая логика разделены на три отдельных компонента так, что модификация одного из компонентов оказывает минимальное воздействие на другие компоненты.

  • 4.    Методика ориентирована на использование методов объектно-ориентированного и аспектноориентированного программирования в силу ис-

  • пользуемой модели представления готовой системы как набора модифицируемых объектов.

С учетом всего вышеизложенного для разработки веб-ориентированных информационных систем предлагается следующая методика.

Исходными данными для методики являются требования к разрабатываемой веб-ориентированной информационной системе, описание предметной области и предполагаемые сроки реализации.

  • 1.    Экспертная оценка требований на выполнимость в принципе и в установленные сроки разработки.

  • 2.    Если есть невыполнимые требования или требующие длительного времени, то изменить исходные условия и вернуться на шаг 1.

  • 3.    Разбиение требований по уровням реализации. Общие требования к системе без учета предметной области будут соответствовать нулевому уровню (ядро), остальные – первому или более высокому уровню.

  • 4.    Для каждого уровня n выполнить цикл разработки ( n = 0 для разработки ядра и n > 0 для более высоких уровней).

  • 5.    Выделение классов объектов и их реализация (модель данных и управляющая логика)

  • 6.    Создание минимально необходимых экземпляров объектов (управляющая логика и пользовательский интерфейс).

  • 7.    Разработка правил политики безопасности и их интеграция в управляющую логику посредством аспектно-ориентированного подхода.

  • 8.    Тестирование.

  • 9.    При наличии отрицательных результатов тестирования вернуться к шагу 5.

  • 10.    Если функциональные требования данного уровня не могут быть реализованы без изменений предыдущего уровня (при его наличии), то изменить требования к предыдущему уровню и вернуться к началу цикла его разработки на шаг 5.

  • 11.    Если функциональные требования данного уровня реализованы не полностью, то продолжить разработку, вернувшись на шаг 5.

  • 12.    Если не все уровни разработаны, то перейти к следующему уровню на шаге 5.

  • 13.    Окончательное тестирование и подготовка и выпуск очередной версии системы.

  • 14.    Эксплуатация текущей версии.

  • 15.    Если требования изменились, то запустить новый цикл разработки всех уровней на шаге 4, иначе вернуться к эксплуатации на шаг 14.

  • 5.    Заключение

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

Использование архитектуры MVC проявляется, с одной стороны, в реализации самой концепции информационной системы, представленной в виде набора объектов, имеющих определенную модель хранения данных, управляющую логику и различные интерфейсы, а с другой – при определении состава системы, т.е. набора необходимых классов и объектов. Объектно-ориентированный подход применяется на этапах разработки классов, а для их модернизации с учетом уточненных требований используется преимущественно аспектно-ориентированный подход.

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

Разработанные версии ядра одновременно использовались для разработки нескольких информационных сайтов, а также для разработки веб-ориентированной системы трудоустройства выпускников вуза. Таким образом, практическое применение данной методики позволило значительно повысить эффективность разработки различных веб-ориентированных информационных систем, сократить временные затраты, упростить процесс последующего сопровождения.

Список литературы Разработка методики проектирования защищенной веб-ориентированной информационной системы на примере системы дистанционного образования

  • Соммервилл И. Инженерия программного обеспечения. М.: Вильяме, 2002. -624 с.
  • Брауде Э. Д Технология разработки программного обеспечения. С-Пб.: Питер, 2004, -656 с.
  • Быков Ю. В. Построение архитектуры защищенных веб-ориентированных информационных систем с использованием объектноориентированного подхода//Информационные технологии моделирования и управления. Вып. 4 (38), 2007. Воронеж: Научная книга, 2007. -С. 454-457.
Статья научная