Глава 7. JAM7 инструмент разработки информационных систем архитектуры "клиент-сервер".
 

«КЛИЕНТ-СЕРВЕР»
Инструментарий разработки приложений JAM разработан и распространяется фирмой JYACC (США), а название продукта расшифровывается как JYACC's Application Manager. Фирма JYACC была создана в 1978 году и является частной. С 1978 по 1985 год фирма занималась консалтингом в области информационных технологий. Первая версия JAM была выпущена в 1985 году. В настоящее время поставляется 7я версия пакета. Вместе с тем JYACC не прекращает своей деятельности в консалтинговой сфере.

7.1. Структура JAM
Пакет JAM имеет модульную структуру и состоит из следующих компонентов:

  • ядро системы. Является законченным модулем и позволяет
    полностью разрабатывать приложения;
  • JAM/DBi- модуль интерфейса к СУБД. Для каждой СУБД, поддерживаемой JAM, существует специализированный модуль. Например, JAM/DBi-Oracle, JAM/DBi-Informix, JAM/DBi-ODBC и т.д. Модули JAM/DBi являются дополнительными для ядра и самостоятельно использоваться не могут;
  • JAM/RW- модуль генератора отчетов. Модуль JAM/RW Является дополнительным для ядра и самостоятельно использоваться не может;
  • JAM/CASEi- модуль интерфейса к CASE верхнего уровня (например, CASE структурного анализа и дизайна). Для каждой CASE, поддерживаемой JAM, существует специализированный модуль. Например, JAM/CASEi-TearnWork, JAM/CASEi-Innovator и т.д. Модули JAM/CASEi являются дополнительными для ядра и самостоятельно использоваться не могут;
  • JAM/TPi- модули интерфейса к Мониторам Транзакций. Существует два варианта этих модулей - TPi-Server и TPi-Client. Для каждого МТ, поддерживаемого JAM, существуют специализированные модули. Например, JAM/TPi-Server TUXEDO и т.д. Модули JAM/TPi являются дополнительными для ядра и самостоятельно использоваться не могут.

7.2. Ядро системы
Ядро системы включает в себя Редактор Экранов, в состав которого входят:

  1. Среда разработки экранов,
  2. Визуальный Репозиторий Объектов,
  3. Собственная СУБД JAM  JDB,
  4. Менеджер Транзакций,
  5. Отладчик,
  6. Редактор Стилей,
  7. Редактор Меню,
  8. Набор вспомогательных отдельных утилит,
  9. Средства изготовления промышленного релиза приложения.

Общая схема взаимодействия компонентов ядра JAM представлена на рис 7.1

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

 

 

Рис. 7.1. Взаимодействие компонент ядра JAM

В распоряжении разработчика имеются следующие интерфейсные элементы:

  • статические метки (static label)  произвольный фиксированный текст или фиксированный графический образ;
  • динамические метки (dynamic label)  произвольный текст или графический образ; может быть изменен в процессе исполнения приложения. Источником информации может быть БД;
  • однострочные текстовые поля ввода/вывода (single line text);
  • многострочные текстовые поля ввода/вывода (multiline text);
  • экранные кнопки (pushbutton);
  • переключаемые экранные кнопки (toggle button)  фиксируется состояние нажата/отпущена;
  • элементы единственного выбора (radio button);
  • элементы множественного выбора (check box);
  • прокручиваемые списки (list box);
  • опциональные меню (option menu)  осуществляет выбор одного значения из раскрывающегося меню;
  • комбинированные меню (combo box)  комбинация опционального меню и однострочного текстового поля;
  • шкалы (scale)  элемент ввода/вывода числовых данных;
  • табличные фреймы (grid)  объединяет элементы типов «однострочный текст» и «динамическая метка» в табличное представление;
  • графические диаграммы (graph);
  • линии (line);
  • рамки (box).

Данный набор элементов полностью соответствует стандарту CUA и является функционально полным для разработки приложений информационных систем. Некоторые однотипные объекты можно объединять в следующие группы:

  1. синхронизированные группы  обеспечивается синхронизированная прокрутка содержимого нескольких объектов;
  2. группы выбора  обеспечивается пометка нескольких строк содержимого объекта;

разнотипные объекты можно объединять в специальные группы «Образ таблицы БД» (table view).
В графическом Редакторе JAM реализован режим перемещения элементов с помощью мыши (drag and drop) и возможность работы в одном сеансе с несколькими проектируемыми экранами. С помощью нескольких служебных окон Редактора возможно уточнение характеристик элементов (размеры, цвет, позиция и др.).
JAM является событийно-ориентированной системой, т.е. для каждого типа интерфейсных элементов приложения определен набор событий (открытие и закрытие для экранов, работа с фокусом для управляющих элементов и элементов ввода/вывода, событие «проверка» (validation), нажатие клавиш клавиатуры и т.д.). Определение обработчиков этих событий осуществляется в Редакторе и задает логику работы приложения. Обработчиками событий могут быть:

  1. функции ядра JAM  более 300 функций самого различного назначения, включая функции динамического (т.е. в процессе исполнения приложения) изменения свойств объектов;
  2. функции, написанные на JPL (внутренний процедурный интерпретируемый язык JAM); из JPLфункций доступны функции ядра;
  3. функции, написанные на любом внешнем языке программирования 3го поколения (С, Pascal, Fortran и т.п.), совместимом по вызовам с С; из этих функций доступны функции ядра JAM и JPLфункции.

Редактор экранов JAM может работать в одном из трех режимов:

  1. режим редактирования (Edit Mode)  разработка экранов;
  2. режим тестирования (Test Mode)  тестирование разраба­тываемых экранов;
  3. режим приложения (Application Mode)  интерпретация всего приложения в целом.

На рис. 7.2 представлена диаграмма переходов между режи­мами Редактора Экранов.

Режим приложения I  I Режим редактирования |  |Режим тестирования

Рис. 7.2. Переходы между режимами Редактора Экранов

 

Каждый экран, входящий в приложение, сохраняется в виде отдельного файла. Кроме этого, экраны могут сохраняться в виде библиотек экранов. Библиотека экранов представляет собой файл, содержащий хранящиеся экраны и индексную таблицу, ускоряющую поиск необходимых экранов. Одновременно в системе может быть открыто несколько экранных библиотек.

JPL внутренний процедурный язык программирования JAM
В состав Редактора Экранов входит JPL  процедурный интерпретируемый язык программирования с синтаксисом, похожим на синтаксис С. В JPL доступны следующие возможности:

  1. скалярные переменные и одно и двумерные массивы;
  2. управляющие конструкции  if, else, for, while, break и next;
  3. передача параметров в функции и возврат значений.

Все JPLфункции оформляются в виде JPLмодулей. JPLмодуль является набором нескольких именованных функций и не более одной неименованной функции. Неименованная функция это JPLкод от начала модуля до первой именованной процедуры и, очевидно, может отсутствовать в модуле, если он начинается сразу с именованной процедуры. Из неименованной процедура доступны именованные. JPLмодули могут быть трех типов:

  1. модуль экранного объекта (vidget module). Хранится вместе с объектом. Неименованная процедура исполняется при возникновении события (validation) для данного момента;
  2. экранный модуль (screen module). Хранится вместе с экраном. Неименованная процедура исполняется при загрузке экрана, именованные процедуры могут являться обработчиками событий всех объектов данного экрана;
  3. внешний модуль (external module). Хранится в отдельном файле. Загружается в память или принудительно, или при вызове процедуры с именем этого файла. Возможна принудительная выгрузка. Неименованная процедура исполняется при загрузке модуля. Внешние модули целесообразно использовать для хранения универсальных процедур.

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

Визуальный Репозиторий Объектов
Реализация принципов объектно-ориентированного программирования осуществлена в JAM следующим образом. Каж­дый элемент приложения с определенными свойствами и мето­дами (в качестве которых выступают обработчики событий) является объектом. Одной из составных частей ядра JAM является Визуальный Репозиторий Объектов, в котором можно сохранять созданные объекты. Визуальный Репозиторий Объектов является специальным типом библиотеки экранов и соответствующим об­разом организован. Он состоит из так называемых входов (entries), которые выглядят как экраны с базовыми объектами на них. Текущая установка свойств и методов является базовой. Для использования какого-либо базового объекта достаточно перенести его мышью с входа Репозитория на проектируемый экран. При изменении свойств и/или методов базового объекта эти изменения распространяются на всех потомков данного объекта. Реализован механизм управляемого наследования свойств и методов, при котором можно запретить наследование части или всех свойств/методов. Вся работа с Репозиторием осуществляется в Редакторе.

Поддержка групповой разработки
Ядро JAM имеет встроенный интерфейс к системам управления многоверсионными проектами и групповой разработки (PVCS на платформе Windows и SCCS на платформе UNIX). При этом под управление этих систем передаются библиотеки экранов и/или Репозиторий. При отсутствии таких систем JAM самостоятельно реализует часть функций поддержки групповой разработки.

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

Собственная СУБД JAM  JDB
В ядро JAM встроена однопользовательская реляционная СУБД JDB. Основным назначением JDB является прототипирование приложений в тех случаях, когда работа со штатным сервером БД недоступна или нецелесообразна. В JDB реализован необходимый минимум возможностей реляционных SQLсерверов БД за исключением индексов, внешних слияний таблиц (outer joins), хранимых процедур, триггеров и так называемых view. В результате с помощью JDB можно построить БД, идентичную целевой БД (с точностью до отсутствующих в JDB возможно­стей) и разработать значительную часть приложения не загружая сеть и сервер. В состав JAM входит утилита интерактивного SQL для JDB.

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

Набор вспомогательных отдельных утилит
Утилиты JAM представляют собой три группы:

  1. конвертор файлов экранов JAM в текстовые файлы. JAM сохраняет экраны в виде двоичных файлов собственного формата. В ряде случаев (например для изготовления проектной документации) необходимо текстовое описание экранов.
  2. конфигурирование устройств ввода/вывода. JAM и приложения, построенные с его помощью, не работают непосредственно с устройствами ввода/вывода. Вместо этого JAM обращается к логическим устройствам ввода/вывода (клавиатура, терминал, отчет). Отображение логических устройств в физические осуществляется с помощью развитых средств конфигурирования.
  3. обслуживание библиотек экранов. Осуществляются традиционные операции с библиотеками.

Средства изготовления промышленного релиза приложения
Приложения, разработанные с использованием JAM, не требуют так называемых runtime систем и могут быть изготовлены в виде исполняемых модулей. Для этого разработчик должен иметь компилятор С и редактор связей. Для изготовления промышленного релиза в состав JAM входит файл сборки (makefile), исходные тексты (на языке С) ряда модулей приложения и необходимые библиотеки.

7.3. Интерфейс к СУБД  JAM/Dbi
JAM ориентирован на работу с реляционными SQLсерверами БД. Средством взаимодействия JAMприложений с СУБД является SQL. При разработки приложений БД SQLзапросы являются составными частями методов объектов приложения. Модуль JAM/DBi осуществляет корректную передачу SQLзапроса соответствующей СУБД и прием и обработку результатов исполнения запроса (включая и коды аварийного за
вершения при невыполнении запроса). Аргументами запросов (т.е. источниками и приемниками информации) могут выступать объекты JAM (интерфейсные элементы) и переменные JPL. В случае аварийного завершения запроса существует возможность самостоятельной обработки кода аварийного завершения.
На рис. 7.3 представлена архитектура взаимодействия JAM и СУБД с помощью модулей JAM/DBi.

 

 

 

 

 

Рис. 7.3. Архитектура взаимодействия с СУБД

Кроме написания SQLзапросов непосредственно разработчиком, в JAM существует возможность автоматической генерации SQLзапросов. Эта возможность реализуется Менеджером Транзакций JAM. Работа Менеджера Транзакций основана на том, что объекты приложения имеют ряд свойств, характеризующих взаимосвязь объекта приложения с объектом БД и то, как эти объекты участвуют в операциях с БД (SQLоператоры select, insert, update, delete). Экранные интерфейсные элементы (поля ввода/вывода) отображаются в поля таблиц БД. Экранные поля, отображаемые на одну таблицу БД, группируются в группу типа Образ Таблицы (table view). Кроме этого, существуют специальные объекты типа связь (link), описывающие связи между таблицами БД. Эта информация в подавляющем большинстве случаев является достаточной для автоматической генерации SQLзапроса для выполнения той или иной операции с БД. Задание этой информации может быть осуществлено или непосредственно разработчиком, или же автоматически при импорте структуры БД (метаданных) в Репозиторий JAM. При этом для каждой таблицы БД в Репозитории JAM создается отдельный вход (entry), в котором создается соответствующий Образ Таблицы (table view) и свойства объектов (т.е. членов группы table view) настраиваются соответствующим образом. Если СУБД, структура БД которой импортируется, поддерживает конструкции «primary/foreign keys», то будут автоматически созданы объекты типа связь (link). Для разработки приложений с использованием Менеджера Транзакций в Редакторе Экранов предусмотрены следующие возможности:

  1. окно DB Interaction  представляет в графическом виде образы всех таблиц (table view), присутствующих на разрабатываемом экране, и их отношения друг с другом;
  2. опция Trace On / Trace Off  в режимах приложения и тестирования трассируются все SQLкоманды, генерируемые Менеджером Транзакций;
  3. отладчик ядра JAM позволяет более детально анализировать работу Менеджера Транзакций; возможна установка точек прерывания при активизировании Менеджера Транзакций.

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

 

 

 

 

 

    В таблице приведены основные команды Менеджера Транзакций и их краткое описание.
В результате вместо написания SQL-запроса, который может состоять из десятка строк, достаточно вызвать Менеджер Транзакций    с    соответствующей     командой.     Например,    err    = sm_tm_command(«SELECT»).
Непосредственная работа Менеджера Транзакций определяется Моделью Транзакции, представляющей собой алгоритм реа­лизации каждой команды Менеджера Транзакции, который определяет все аспекты его работы, например установку блокировок при выполнении команды SELECT (выборка для модификации), генерацию уникального первичного ключа при добавлении новой записи (если сама СУБД не реализует этой возможности) и т.д. Для каждой поддерживаемой СУБД в составе соответствующего JAM/DBi поставляется своя Модель Транзакции в исходных ко­дах. Таким образом опытные разработчики могут модифицировать поведение Менеджера Транзакции. Каждая Модель Транзакции имеет имя и даже для одной СУБД в одном приложении может быть определено и использовано несколько Моделей Транзакции.
В зависимости от контекста команды, выполняемой Менеджером Транзакций, существует возможность управления поведением экранных объектов. Например, при выполнении команды VIEW (транзакция «только чтение») можно запретить ввод или изменение информации в экранных полях и сделать кнопку «Запись» неактивной. Эта возможность реализуется через механизм стилей JAM. Стиль  это определение свойств для различных контекстов команд. Компонента JAM Редактор Стилей, которая упоминалась выше, позволяет разработчику определять свои стили.
JAM может работать практически со всеми распространенными РСУБД, включая Oracle, Informix, Sybase, Ingres, Rdb, DB2, InterBase, Gupta, Netware SQL Server, ODBCсовместимые БД и др.

 

 

 

 

 

7.4. Генератор отчетов  JAM/RW
Одним из дополнительных модулей JAM является Генератор Отчетов. Компоновка отчета осуществляется в Редакторе Экранов JAM. Описание работы отчета осуществляется с помощью специального языка. Генератор отчетов позволяет определить:

  • данные, выводимые в отчет. Источниками информации для отчетов могут быть результаты исполнения SQLзапросов (в том числе и сгенерированные Менеджером Транзакций), внешние источники, информация, введенная конечным пользователем и т.д.;
  • группировку выводимой информации. Уровни вложенности подотчетов и детализации не ограничены;
  • динамическое управление исполнением отчета;
  • форматирование вывода, включая интеллектуальное разбиение на страницы;
  • заголовки и подвалы страниц и групп; использование в них внешних данных;
  • дополнительную обработку с помощью JPLпроцедур или внешних функций, написанных на языках 3го поколения;
  • динамическое управление исполнением отчета;
  • устройство вывода.

7.5. Интерфейс к CASE структурного анализа и дизайна  JAM/CASEi
Интерфейс к CASE структурного анализа и дизайна в некотором отношении подобен интерфейсу к СУБД. Одной из основных задач CASE является разработка структуры БД. Информация о структуре БД хранится в репозитории CASE. Модуль JAM/CASEi позволяет осуществить обмен информацией между Визуальным Репозиторием Объектов JAM и репозиторием CASE аналогично тому, как структура БД импортируется в Репозитории JAM непосредственно из БД. Отличие заключается в том, что в случае интерфейса к CASE этот обмен является двунаправленным, т.е. информацию из Репозитория JAM можно экспортиро­вать в репозитории CASE.


 

 

 

 

 

 

 

     Рис. 7.4. Взаимодействие JAM, CASEи СУБД

На рис. 7.4 приведена схема взаимодействия JAM и CASE с использованием модуля JAM/CASEi. Следует отметить, что модуль JAM/CASEi позволяет осуществлять импорт/экспорт не только в раздел ERD репозитория CASE, но и в раздел DFD. Кроме модуля JAM/CASEi фирма-производитель распространяет модуль JAM/CASEi Developer's Kit, с помощью которого можно самостоятельно разработать интерфейс (т.е. специализированный модуль JAM/CASEi) для конкретного инструмента CASE, если готового модуля JAM/CASEi для данной CASEсистемы еще не существует.

7.6. Интерфейс к Мониторам Транзакций  JAM/Tpi

Модули JAM/TPi используются при разработке приложения трехзвенной модели «клиент-сервер» с применением мониторов транзакций. При разработке клиентской части трехзвенной модели модуль JAM/TPi-Client позволяет в методах объектов использовать вызовы сервисов монитора транзакций. Наличие модуля JAM/TPi-Client расширяет синтаксис JPL командами, ориентированными на работу с мониторами транзакций. При разработке сервера приложений модуль JAM/TPi-Server позволяет разрабатывать сервисы монитора транзакций, используя современную 4GL технологию, а не только традиционный для мониторов транзакций 3GL интерфейс.

7.7. Документация
В состав JAM входит полный комплект документации на английском языке в электронном виде. При этом используется гипертекстовая система Dyna Text фирмы Electronic Book Technologies, доступная на многих платформах, поддерживаемых пакетом JAM. Печатный вариант документации поставляется за дополнительную плату. Если на какой-либо платформе Dyna Text система недоступна, то печатная документация поставляется бесплатно.

7.8. Требования к аппаратным ресурсам
JAM, как среда разработки, и приложения, построенные с его использованием, не являются ресурсоемкими системами. Достаточно сказать, что на платформе MS-Windows достаточно иметь 8MB ОЗУ и 50 MB дискового пространства для среды разработки. На UNIXплатформах требования к аппаратуре нивелируются природой UNIX.

Поддержка локализации
JAM поддерживает 8битные кодировки символов алфавита. Форматы ввода/вывода даты/времени, валюты, чисел являются настраиваемыми. Системные сообщения вынесены в отдельные файлы и доступны для перевода.

7.9. Переносимость приложений, разработанных с помощью JAM
JAM, как среда разработки, доступен на нескольких десятках программноаппаратных платформ, включая Windows, Windows 95, Windows NT, OS/2, Mac, VMS и практически все распространенные UNIX платформы. На этих же платформах, соответственно, доступны и приложения, построенные с использованием JAM. Переносимость JAMприложений между платформами практически абсолютная.
Реализация переносимости между типами интерфейсов  алфавитно-цифровой и графический интерфейсы. JAMприложения могут исполняться как в алфавитно-цифровом, так и в GUIрежиме практически на всех поддерживаемых платформах, где реализованы оба режима. Из GUI поддерживаются MS-Windows, Presentation Manager, X-Windows, Macintosh. Переносимость между типами интерфейса также практически абсолютная за исключением недоступности векторных шрифтов и графических образов в алфавитно-цифровых режимах.
Переносимость локализованных приложений между различными программно-аппаратными платформами с различными кодировками национального алфавита (например, перенос русскоязычных приложений между Windows и UNIX) может иметь ми­нимальную трудоемкость. При максимально активном использовании Репозитория JAM достаточно изменить написание только базовых объектов. В ряде случаев JAM дает возможность избежать и этой работы, что достигается соответствующим переопределением устройств ввода/вывода (клавиатура и терминал).
Решения, предлагаемые пакетом JAM, обеспечивают высокую производительность труда разработчиков:

  1. Визуальное проектирование и широкий выбор предустановленных интерфейсных решений (форматы и фильтры ввода/вывода) позволяют резко сократить время разработки презентационной составляющей приложения.
  2. Наличие компоненты ядра JAM Менеджер Транзакций позволяет резко снизить трудоемкость реализации взаимодействия с СУБД. Отпадает необходимость в написании сложных SQLкоманд, характерных для реальных систем, в тщательном отслеживании соответствия полей таблиц БД экранным полям и т.д. Это особенно критично на ранних этапах разработки, когда требования к приложению часто и существенно изменяются и разработчик должен быстро отражать эти изменения в приложении.
  3. Реализация объектно-ориентированного проектирования (Визуальный Репозиторий Объектов и механизм управляемого наследования свойств и методов объектов)  многократное использование решений и их быстрая модификация во всем приложении также позволяют сократить время разработки, благодаря тому, что, во-первых, объекты создаются один раз и, во-вторых, изменения базовых классов автоматически распространяются по всем реализациям базового класса. Причем это справедливо не только для презентационной составляющей приложения, но и для реализации логики приложения, в том числе и в части взаимодей­ствия с СУБД.

Следует отметить, что эти свойства (кроме снижения стоимости разработки приложений) существенно снижают стоимость сопровождения и модификации приложений, так как внесение изменений происходит с минимальной трудоемкостью.
Но основной чертой JAM является соответствие инструмента методологии быстрой разработке приложений RAD (RapidApplicationDevelopment). При использовании инкрементального прототипирования малое время реализации замечаний, выявлен­ных на предыдущем этапе разработки, делает JAM подходящим инструментом для методологии RAD.
JAM может выполнять задачи неограниченной сложности:

  1. Открытый интерфейс к 3GL обеспечивает возможность реализации любых специфических конкретных подзадач (работа с датчиками и исполнительными устройствами, интерфейсы к редко используемым пакетам других фирм, уникальные алгоритмы обработки данных и т.д.).
  2. При росте сложности, нагрузки и инфраструктуры решаемой задачи (распределенность и гетерогенность используемых ресурсов, количество одновременно подключенных пользователей, сложность логики приложения) единственным средством преодоления таких трудностей является трехзвенная модель архитектуры «клиент-сервер» с использованием мониторов транзакций. Компоненты JAM/TPi-Client и JAM/TPi-Server позволяют максимально безболезненно (т.е. с минимальной трудоемкостью) перейти на трехзвенную модель. При этом ключевую роль играет модуль JAM/TPi-Server, так как основная трудность внедрения трехзвенной модели заключается в реализации логики приложения в сервисах мониторов транзакций.

Сложные программные проекты практически всегда реали­зуются коллективом разработчиков. Наличие интерфейса к системам SCM (SCCS или PVCS) позволяет держать в общем архиве проекта те его части, которые реализуются с помощью JAM. Для несложных проектов достаточно встроенных SCM-механизмов JAM.
Наличие и архитектура модуля JAM/CASEi (особенно двунаправленный обмен между репозиториями JAM и CASE) позволяет реализовать любую методику проектирования и разработки приложений (подходы проектирования от «модели данных», от «функционирующих документов» или комбинированный подход). В результате достигается высокая гибкость и эффективность методики совокупного применения проектных и инструментальных средств.
Переносимость приложений является стратегическим вопросом для ИС среднего и крупного уровней. Несмотря на подав­ляющее распространение IBM PC совместимых компьютеров под управлением DOS/Windows в качестве рабочих мест конечных пользователей, очень многие задачи более эффективно решаются при использовании на рабочих местах UNIX терминалов. Выбор таких решений диктуется или снижением стоимости рабочего места (в том числе и при реализации удаленного доступа), или соображениями защищенности ИС, или инфраструктурой уже существующей ИС. Доступность JAM на многих программно-аппаратных платформах позволяет эффективно решать задачу переноса приложений между программно-аппаратными платформами, типами интерфейсов и СУБД.
Отсутствие runtime систем для приложений, разработанных с использованием JAM, на всех доступных платформах позволяет максимально возможно снизить стоимость развертывания приложений на рабочих местах, что особенно важно при разработке крупнотиражных систем.
Таким образом JAM характеризуется:

  • полноценным языком 4го поколения со всеми характерными свойствами программного обеспечения этого класса и
  • оптимально соответствует требованиям к инструментальным средствам для крупных и средних ИС, а при использовании в малых ИС практически не ограничивает выбор путей дальнейшего развития ИС (платформы, СУБД, архитектуры, методологии проектирования и разработки и т.д.).

Начало | Глава 6 | Глава 8 

 
Copyright ©2009 | powered by coFFIN & Dr.Lector
free credit reports
debt help Student Loan make money at home mortgage interest rate bad credit loans mortage loan bankrupt personal bankruptcy mortages
 

  

 


make money at homebankrupt make money at homebankrupt interest calculatordebt settlement make money at homebankrupt interest calculatordebt settlement make money at homebankrupt interest calculatordebt settlement make money at homebankrupt interest calculatordebt settlement interest calculatordebt settlement
 

  

Хостинг от uCoz