Платформа

Область применения

Программное обеспечение «Система управления массивами данных Д7» («СУМД Д7», SCAD7) является конструктором для создания и выполнения веб-приложений под управлением баз данных PostgreSQL, PosgresPro, Oracle и т. п. Относится к классу программ для ЭВМ – интегрированные платформы для создания приложений. Предназначена для разработки прикладных программ автоматизации процессов агрегирования данных включая сбор, обработку, представление информации, статистический анализ,  формирование отчетных форм и т. п. Реализует динамическую архитектуру программного продукта. Позволяет в режиме реального времени устранять обнаруженные дефекты и неограниченно добавлять новую функциональность программному продукту не нарушая работу системы в целом, минимизирует тродозатраты и повышает скорость и качество разработки.

SCAD7_LEVELS
Рисунок – Функциональные уровни платформы СУМД Д7

Функциональные уровни 

  • Уровень пользователя. Браузер клиента получает с веб-сервера данные и формирует визуальное представление информации средствами HTML, CSS, SVG, AJAX, JavaScript.
  • Уровень веб-приложения. Ядро платформы написано на языке Perl и работает под управлением веб-сервера Apache. На ядро возлагается основная задача по реализации динамической архитектуры программного продукта.
  • Уровень базы данных. Бизнес-логика программного продукта разрабатывается на уровне базы данных средствами PL/PgSQL.

 

Рисунок – Блок-схема платформы СУМД Д7

 

 

 

 

 

Разработка

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

 

 

Динамическая архитектура

В основу динамической архитектуры заложены  базовые понятия – макрокоманда и макроработа.

Рисунок – Пример динамической архитектуры программного продукта на платформе СУМД Д7

Макрокоманда – предопределенная объектным кодом платформы последовательность действий. Макрокоманды обеспечивают интерфейс к визуальным компонентам веб-формы и передают значения параметров в макроработы.

По функциональному назначению макрокоманды делятся на следующие:

  • МО предназначены для вызова отчетных форм;
  • МП предназначены для вызова процедур, функций, скриптов;
  • МУ предназначены для передачи управления;
  • МИ предназначены для генерации визуального интерфейса;
  • МН предназначены для настройки визуального интерфейса;
  • МВ предназначены для запуска подпрограмм и виджетов.

Макроработа выполняет действие над объектами и данными базы данных заданное макрокомандой. Макроработы делятся на ведущие и ведомые. Ведущие макроработы посредством макрокоманд МО или МП управляют ведомыми. Передача управления от одной ведущей макроработы к другой ведущей выполняется средствами макрокоманд передачи управления (МУ).  Точки входа (Т) в конфигурацию позволяют разделам главного меню вызывать ведущие макроработы.