К ВОПРОСУ О МЕТОДОЛОГИИ РАЗРАБОТКИ ВЕБ-ПРИЛОЖЕНИЙ В.В. Мартынов, А.М. Кузнецов Уфимский государственный авиационный технический университет, г.Уфа Направление: – Технологии и опыт построения информационных систем и баз данных, документации и результатов эксперимента на основе Интернет-технологий В последнее время в связи с ростом популярности сети Интернет, повышенную актуальность приобрели так называемые веб-приложения – распределенные программные системы, выполняющие основную часть своей бизнес-логики на стороне одного или нескольких серверов, а пользователь или клиент использует в качестве средства для доступа к приложению лишь веб-браузер. Популярность этой архитектуры можно объяснить также и тем, что для пользователей отпадает необходимость установки на свои ПК специальных программных продуктов, проводить их инсталляцию и настройку. Благодаря тому, что основная часть ПО работает на сервере, увеличивается также надежность систем и снижается время и расходы на их тестирование и отладку, так как необходима корректная работа ПО лишь на заранее определенном множестве серверов и клиентам доставляются лишь результаты работы системы в неизменном виде, необходимо лишь отладить их корректное отображение в разных платформах и браузерах. Однако основным преимуществом данной архитектуры является возможность доступа широкой аудитории пользователей одновременно к единому информационному хранилищу, то есть базе данных. Используя подобную архитектуру разработчики создают как специфичное для Интернет программное обеспечение, а именно: - системы управления содержимым веб-сайтов; - интерактивные веб-представительства организаций; - приложения электронной коммерции; - так и вполне традиционные виды программных продуктов: - системы управления документооборотом; - картотеки; - системы управления процессами и т.п., - при этом в разработке успешно используются все вышеприведенные преимущества. Как и для любых других архитектур у этой есть своя специфика, которая определяет проектирование и разработку веб-приложений. Для проектирования веб-приложений в настоящее время существует два наиболее распространенных подхода: - использование методологии IDEF – средства реализующие методологию BPWIN; - объекто-ориентированное моделирование (как правило, посредством языка UML) – PowerDesigner, Rational Rose. Первая при создании изначально не предназначалась для проектирования веб-приложений – она предназначена даже не для моделирования программных систем, а для моделирования процессов вообще, она позволяет лишь упорядочить процессы и провести их некоторую оптимизацию. Возможность генерации кода для веб-приложений отсутствует. ООП – достаточно эффективная методика разработки программных средств, но, как правило, веб-приложения разрабатываются на скриптовых языках, не поддерживающих объекты. Также методика не позволяет однозначно описать алгоритм будущей системы и информационные потоки между основными компонентами системы такими как база данных, веб-страница, электронная почта, серверные компоненты и т.п. Соответственно данная методика хороша для ранних стадий проектирования и построения концептуальных моделей. При переходе к процессу разработки необходимо применять более конкретизированные методы моделирования алгоритмов и информационных потоков приложения. Концепция предлагаемого нами метода содержит методики моделирования информационных потоков и сценария функционирования системы (алгоритма) с возможностью декомпозиции до минимального элемента системы – веб-страницы. Моделирование информационных потоков позволяет представить всю будущую систему виде подмодулей, воспринимающих и генерирующих потоки информации. Назначение такой модели в том, чтобы точно определить информационную связь между подсистемами, то есть какая из подсистем для своей корректной работы требует данные, порожденные другой подсистемой. Это в числе прочего позволяет надлежащим образом расставить временные приоритеты при планировании графика разработки системы. Так же модель информационных потоков позволяет лучше осознать цель и предназначение каждого модуля, выполнить задачи по их оптимизации. 3 На основе диаграммы сценариев возможна разработка шаблонов веб-страниц, что облегчает процесс проектирования интерфейсов веб-приложений. Данный фактор также положительно сказывается на юзабилити системы. Такая методика моделирования интерфейсов основана на разделении ролей использования системы между ее объектами взаимодействия, то есть пользователями (администраторы, покупатели и т.д.) и информационными сервисами, такими как веб-серверы, серверы электронной почты, системы электронных платежей и т.п. Метод сетевого планирования групповой разработки программного обеспечения, лежащий также в рамках представленной методологии, позволяет обеспечить решение организационных аспектов процесса разработки программного обеспечения. С его помощью руководитель проекта создает список ресурсов, т.е. программистов привлеченных к проекту. Затем обозначает крупные задачи и связывает их на основе зависимостей между подсистемами для определения порядка исполнения. Каждой задаче назначается ее предварительная продолжительность и приоритеты. К полученным задачам прикрепляются ресурсы (программисты), которые будут их исполнять. Имеются в наличии средства, которые помогают следить за тем, что бы программисты не получали заданий, требующих временных затрат, превышающих заранее установленные. Далее, крупные задачи разбиваются на более мелкие подзадачи. С помощью так называемого work breakdown structure руководитель проекта должен получить иерархию задач. Это необходимо для того, чтобы, с одной стороны, точнее оценить временные затраты на задачи высшего порядка, а с другой – точно сформулировать индивидуальные планы работы каждого программиста. Прототип данной методики активно используется в разрабатываемой в Уфимском государственном авиационном техническом университете системе Интернет-тестирования и положительно зарекомендовал себя в процессе подготовки спецификаций на программные коды и на ранних этапах кодирования приложения. 4