Область применения
Программное обеспечение «Система управления массивами данных Д7» («СУМД Д7», SCAD7) является конструктором для создания и выполнения веб-приложений под управлением баз данных PostgreSQL, PosgresPro, Oracle и т. п. Относится к классу программ для ЭВМ – интегрированные платформы для создания приложений. Предназначена для разработки прикладных программ автоматизации процессов агрегирования данных включая сбор, обработку, представление информации, статистический анализ, формирование отчетных форм и т. п. Реализует динамическую архитектуру программного продукта. Позволяет в режиме реального времени устранять обнаруженные дефекты и неограниченно добавлять новую функциональность программному продукту не нарушая работу системы в целом, минимизирует тродозатраты и повышает скорость и качество разработки.
Функциональные уровни
- Уровень пользователя. Браузер клиента получает с веб-сервера данные и формирует визуальное представление информации средствами HTML, CSS, SVG, AJAX, JavaScript.
- Уровень веб-приложения. Ядро платформы написано на языке Perl и работает под управлением веб-сервера Apache. На ядро возлагается основная задача по реализации динамической архитектуры программного продукта.
- Уровень базы данных. Бизнес-логика программного продукта разрабатывается на уровне базы данных средствами PL/PgSQL.
Разработка
Программный продукт состоит из набора уникальных разработанных модулей (элементов конфигурации) взаимосвязанных логически. Функциональное назначение модуля определяется внутренним составом макрокоманд и макроработ. Совокупность всех модулей образуют рабочую конфигурацию. Объектный код макрокоманд и макроработ недоступен для изменения внешними разработчикам, тем самым поддерживается целостность программного продукта и системы в целом. В тоже время, разработчик платформы изменяя объектный код макрокоманд и макроработ, добавляя новые модификации не нарушает работу действующего программного продукта. Макрокоманды и макроработы выполняют роль внутреннего программного интерфейса и создают изоляционный слой между модулями программного продукта и кодом платформы. Это позволяет перейти на более высокий уровень абстракции к динамической архитектуре. Процесс создания нового программного продукта сводится к настройке рабочей конфигурации и алгоритмическому кодированию бизнес-логики.
Динамическая архитектура
В основу динамической архитектуры заложены базовые понятия – макрокоманда и макроработа.
Макрокоманда – предопределенная объектным кодом платформы последовательность действий. Макрокоманды обеспечивают интерфейс к визуальным компонентам веб-формы и передают значения параметров в макроработы.
По функциональному назначению макрокоманды делятся на следующие:
- МО предназначены для вызова отчетных форм;
- МП предназначены для вызова процедур, функций, скриптов;
- МУ предназначены для передачи управления;
- МИ предназначены для генерации визуального интерфейса;
- МН предназначены для настройки визуального интерфейса;
- МВ предназначены для запуска подпрограмм и виджетов.
Макроработа выполняет действие над объектами и данными базы данных заданное макрокомандой. Макроработы делятся на ведущие и ведомые. Ведущие макроработы посредством макрокоманд МО или МП управляют ведомыми. Передача управления от одной ведущей макроработы к другой ведущей выполняется средствами макрокоманд передачи управления (МУ). Точки входа (Т) в конфигурацию позволяют разделам главного меню вызывать ведущие макроработы.