Учебные курсы
05.08.2012 9336

Типы требований к Web-приложению для обработки экспериментальных данных

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

Среди этих преимуществ можно выделить следующие:

  • кроссплатформенность – не имеет значения, какой программной средой или аппаратной платформой располагает пользователь, будь это новые сервера lineage 2 gracia epilogue или что-то другое, т.к. для работы с приложением необходим только браузер;
  • в отличие от классических приложений, пользователь не заботится об установке и настройке пакета;
  • коллективная работа и синхронное взаимодействие – единый формат представления, единая терминология, поддержка системой объединения результатов различных этапов исследования, организация связи с помощью чата и видеоконференция позволяют исследователям эффективно взаимодействовать в независимости от их местоположения;
  • обновление пакета не требует каких-либо действий со стороны пользователя;
  • обеспечение надежности хранения данных при сбое аппаратуры клиентских компьютеров;
  • не требовательность к ресурсам терминала – все действия над данными выполняются на удаленном сервере, где хранится приложение;
  • увеличение мощности вычислительной системы прозрачно для пользователя и может производиться без прерывания обслуживания.

Разработка программного обеспечения (ПО) подчиняется определенному жизненному циклу (lifecycle), т.е. упорядоченному набору видов деятельности, осуществляемому и управляемому в рамках каждого проекта по разработки ПО, где процессы и методы – механизмы реализации жизненного цикла. Существует множество подходов реализации жизненного цикла разработки (например, такие как SWOT, VCM, BPR, ISA и т.д.), но всех их объединяет наличие этапа определения требований к программной системе. Недостаточный объем информации, поступающей от пользователей, требования, сформулированные не полностью, их кардинальное изменение после начала проектирования являются основными причинами, из-за которых нарушаются сроки разработки и рамки бюджета, чтобы предоставить пользователям полнофункциональный продукт.

Рис. 1. Классификация и типы требований к разрабатываемому приложению

Рис. 1. Классификация и типы требований к разрабатываемому приложению


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

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

Ввиду этих причин, определить свои типы требований к разрабатываемой системе, иерархический список которых, изображен на рисунке 1. Все типы требований разделены на три основных класса:

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

Поясним типы требований, содержащиеся в этих классах:

  • требования к аппаратным средствам, определяют их уровень производительности, тип архитектуры, емкость хранилища, а также пропускную способность канала связи, обеспечивающую комфортную работу с приложением;
  • требования к программной платформе во многом определяют инструментарий разработки, влияют на выбор СУБД;
  • требования к системе хранения данных – выбор СУБД будет влиять на уровень производительности приложения, затраты на обслуживание, объемы данных с которыми сможет оперировать система;
  • требования к информационной безопасности определяют наличие или отсутствие системы авторизации и аутентификации, а также других средств защиты;
  • требования к реализуемым методам обработки экспериментальных данных определяют состав методов и приемов обработки данных. Примерами этих средств являются аппараты математической статистики и интеллектуального анализа данных (Data mining);
  • требования к видам и размерностям величин, т.е. с какими типами данных и каких пределах их варьирования должно быть способно работать приложение;
  • требования к подсистеме визуализации определяет то, в каком виде могут представляться входные и выходные данные;
  • требования к совместимости с форматами файлов других приложений определяют возможности импорта и экспорта данных (межпрограммное взаимодействие);
  • требования к организации совместной работы определяют, какие средства межпользовательского взаимодействия должна поддерживать система;
  • требования к расширяемости позволяют определить, если необходимо, как обеспечиваются дополнительные возможности – с помощью дополнительных модулей (плагинов), с помощью языка написания сценариев и т.п.;
  • требования к интерфейсу пользователя определяют то, как происходит взаимодействие пользователя с приложением;
  • требования к документации и справочной системе, т.е. необходима ли справочная система, насколько подробно должна быть документирована программа, определяет содержание с учетом специфики области применения приложения и/или других особенностей конечных пользователей;
  • требования к затратам на обслуживание системы позволяют ограничить бюджет, который необходим для поддержания функционирования системы в течение эксплуатационного периода.

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

Top