Типы требований к Web-приложению для обработки экспериментальных данных
Обработка экспериментальных данных в наше время чаще всего проводится с использованием вычислительных машин. Однако целевые пакеты предназначены либо для выполнения на локальной машине исследователя, либо реализуются с помощью GRID-технологий, что лишает их преимуществ перед современным типом программ – Web-приложениями.
Среди этих преимуществ можно выделить следующие:
- кроссплатформенность – не имеет значения, какой программной средой или аппаратной платформой располагает пользователь, будь это новые сервера lineage 2 gracia epilogue или что-то другое, т.к. для работы с приложением необходим только браузер;
- в отличие от классических приложений, пользователь не заботится об установке и настройке пакета;
- коллективная работа и синхронное взаимодействие – единый формат представления, единая терминология, поддержка системой объединения результатов различных этапов исследования, организация связи с помощью чата и видеоконференция позволяют исследователям эффективно взаимодействовать в независимости от их местоположения;
- обновление пакета не требует каких-либо действий со стороны пользователя;
- обеспечение надежности хранения данных при сбое аппаратуры клиентских компьютеров;
- не требовательность к ресурсам терминала – все действия над данными выполняются на удаленном сервере, где хранится приложение;
- увеличение мощности вычислительной системы прозрачно для пользователя и может производиться без прерывания обслуживания.
Разработка программного обеспечения (ПО) подчиняется определенному жизненному циклу (lifecycle), т.е. упорядоченному набору видов деятельности, осуществляемому и управляемому в рамках каждого проекта по разработки ПО, где процессы и методы – механизмы реализации жизненного цикла. Существует множество подходов реализации жизненного цикла разработки (например, такие как SWOT, VCM, BPR, ISA и т.д.), но всех их объединяет наличие этапа определения требований к программной системе. Недостаточный объем информации, поступающей от пользователей, требования, сформулированные не полностью, их кардинальное изменение после начала проектирования являются основными причинами, из-за которых нарушаются сроки разработки и рамки бюджета, чтобы предоставить пользователям полнофункциональный продукт.
Под требованиями к программному обеспечению будем понимать совокупность утверждений относительно свойств программной системы, подлежащая реализации при создании ПО. Изучение литературных источников выявляет несколько основных проблемы, осложняющих разработку требований:
- проблема отсутствия общепринятых определений терминов;
- существующие классификации хорошо работают в условиях крупных проектов, однако являются избыточными для проектов малого масштаба;
- создаются только бизнес-ориентированные классификации требований.
Ввиду этих причин, определить свои типы требований к разрабатываемой системе, иерархический список которых, изображен на рисунке 1. Все типы требований разделены на три основных класса:
- требования к средствам обеспечения и поддержки функционирования – содержит типы требований, определяющие программные и аппаратные средства или их уровни, в рамки которых должно вписаться разрабатываемое приложение.
- Функциональные требования содержат типы требований, определяющие целевые возможности системы, т.е. ограничивает круг непосредственно решаемых с помощью продукта задач.
- Требования общего характера.
Поясним типы требований, содержащиеся в этих классах:
- требования к аппаратным средствам, определяют их уровень производительности, тип архитектуры, емкость хранилища, а также пропускную способность канала связи, обеспечивающую комфортную работу с приложением;
- требования к программной платформе во многом определяют инструментарий разработки, влияют на выбор СУБД;
- требования к системе хранения данных – выбор СУБД будет влиять на уровень производительности приложения, затраты на обслуживание, объемы данных с которыми сможет оперировать система;
- требования к информационной безопасности определяют наличие или отсутствие системы авторизации и аутентификации, а также других средств защиты;
- требования к реализуемым методам обработки экспериментальных данных определяют состав методов и приемов обработки данных. Примерами этих средств являются аппараты математической статистики и интеллектуального анализа данных (Data mining);
- требования к видам и размерностям величин, т.е. с какими типами данных и каких пределах их варьирования должно быть способно работать приложение;
- требования к подсистеме визуализации определяет то, в каком виде могут представляться входные и выходные данные;
- требования к совместимости с форматами файлов других приложений определяют возможности импорта и экспорта данных (межпрограммное взаимодействие);
- требования к организации совместной работы определяют, какие средства межпользовательского взаимодействия должна поддерживать система;
- требования к расширяемости позволяют определить, если необходимо, как обеспечиваются дополнительные возможности – с помощью дополнительных модулей (плагинов), с помощью языка написания сценариев и т.п.;
- требования к интерфейсу пользователя определяют то, как происходит взаимодействие пользователя с приложением;
- требования к документации и справочной системе, т.е. необходима ли справочная система, насколько подробно должна быть документирована программа, определяет содержание с учетом специфики области применения приложения и/или других особенностей конечных пользователей;
- требования к затратам на обслуживание системы позволяют ограничить бюджет, который необходим для поддержания функционирования системы в течение эксплуатационного периода.
Таким образом, в статье была предложена классификация требований к Web-системе обработки экспериментальных данных, последующая конкретизация которых может быть реализована, например, с помощью средств СППР. Это позволит ограничить объем работы по проектированию, создать адекватную этим требованиям архитектуру приложения и оптимально распределить сроки разработки.