Скачать презентацию Генератор проектов средство автоматизации проектирования прикладных информационновычислительных систем Скачать презентацию Генератор проектов средство автоматизации проектирования прикладных информационновычислительных систем

9026e8adf24e44fa67348df5d1e5e6e7.ppt

  • Количество слайдов: 38

Генератор проектов средство автоматизации проектирования прикладных информационновычислительных систем ORMM-2010 1 Генератор проектов средство автоматизации проектирования прикладных информационновычислительных систем ORMM-2010 1

Авторский коллектив Вышинский Л. Л. n Гринев И. Л. n Логинов А. А. n Авторский коллектив Вышинский Л. Л. n Гринев И. Л. n Логинов А. А. n Флёров Ю. А. n Широков Н. И. n Широков А. Н. ВЦ РАН Отдел математ. моделир. сист. проектирования n ORMM-2010 2

Основные проблемы разработки ИВС ® Изменяющиеся нормы и правила работы ® Требования гибкости и Основные проблемы разработки ИВС ® Изменяющиеся нормы и правила работы ® Требования гибкости и различных настроек ® Многопользовательский режим ® Многокомпонентная сетевая архитектура ® Высокие требование к надежности ® Требования информационной безопасности ® Требования «масштабируемости» ® Сложность систем (большой объем программ) ® Необходимость длительного сопровождения ORMM-2010 3

Жизненный цикл новых разработок Технические объекты ® Информационные системы Разработка моделей Проектирование Конструирование Изготовление Жизненный цикл новых разработок Технические объекты ® Информационные системы Разработка моделей Проектирование Конструирование Изготовление Испытания Производство Эксплуатация Модификации ® Разработка моделей (анализ) ® Проектирование ® Программирование ® Трансляция и сборка ® Тестирование ® Внедрение (тиражирование) ® Эксплуатация ® Модификации ORMM-2010 4

Соотношение трудоемкости этапов жизненного цикла ИВС АНАЛИЗ ПРОЕКТИРОВАНИЕ ПРОГРАММИРОВАНИЕ СБОРКА ТЕСТИРОВАНИЕ ВНЕДРЕНИЕ СОПРОВОЖДЕНИЕ ORMM-2010 Соотношение трудоемкости этапов жизненного цикла ИВС АНАЛИЗ ПРОЕКТИРОВАНИЕ ПРОГРАММИРОВАНИЕ СБОРКА ТЕСТИРОВАНИЕ ВНЕДРЕНИЕ СОПРОВОЖДЕНИЕ ORMM-2010 5

Проектный подход к разработке ИВС информация о содержательных понятиях и объектах ® Полная ® Проектный подход к разработке ИВС информация о содержательных понятиях и объектах ® Полная ® Методы ® Вид и свойства объектов представления результатов ORMM-2010 6

Проектный подход к разработке ИВС ® Первый этап - проектирование системы. Проект прикладной программной Проектный подход к разработке ИВС ® Первый этап - проектирование системы. Проект прикладной программной системы – формальный документ. ® Второй этап – это генерация полного программного кода системы и его технологическая сборка, то есть создание инсталляционного пакета. ® Автоматизация требует специального инструментария, который является технологической компонентой проекта. Фактически, инструментарий – это генератор программного кода проекта – ГЕНЕРАТОР ПРОЕКТА. ORMM-2010 7

Проектный подход к разработке ИВС (генерация системы по ее проекту) АНАЛИЗ ПРОЕКТИРОВАНИЕ ГЕНЕРАЦИЯ ПРОГРАММИРОВАНИЕ Проектный подход к разработке ИВС (генерация системы по ее проекту) АНАЛИЗ ПРОЕКТИРОВАНИЕ ГЕНЕРАЦИЯ ПРОГРАММИРОВАНИЕ СБОРКА ТЕСТИРОВАНИЕ ВНЕДРЕНИЕ СОПРОВОЖДЕНИЕ ORMM-2010 8

Задачи автоматизации построения ИВС ® создание единого информационного пространства проекта; ® описание архитектуры проектируемой Задачи автоматизации построения ИВС ® создание единого информационного пространства проекта; ® описание архитектуры проектируемой системы; ® разработка математических моделей объектов предметной области; ® описание логических структур и моделей хранимых данных; ® описание серверных компонент системы; ® описание пользовательского интерфейса, механизмы редактирования пользовательских документов, форм, диалогов и прочее; ORMM-2010 9

Задачи автоматизации построения ИВС ® создание опытных образцов, макетов, демонстрационных стендов; ® автоматизация программирования, Задачи автоматизации построения ИВС ® создание опытных образцов, макетов, демонстрационных стендов; ® автоматизация программирования, генерация исходного программного кода; ® автоматизация разработки программной и эксплуатационной документации; ® автоматизация разработки программы, методики и тестов функциональных, ресурсных и других испытаний системы; ® автоматизация разработки средств загрузки и инсталляции системы, средств, обеспечивающих системное обслуживание и эксплуатацию. ORMM-2010 10

 «Генератор проектов» это реализация следующих технологий: ® Клиент – серверная архитектура ® Работа «Генератор проектов» это реализация следующих технологий: ® Клиент – серверная архитектура ® Работа с реляционными базами данных ® Пользовательский оконный интерфейс (клиентские приложения, окна, диалоги) ® Создание ИНТЕРНЕТ – сайтов ® Информационная безопасность ® «Многоплатформенность» ORMM-2010 11

Архитектура «клиент-сервер» SQL-запросы БАЗА ДАННЫХ СУБД КЛИЕНТСКИЙ МОДУЛЬ ДВУХУРОВНЕВЫЙ «КЛИЕНТ – СЕРВЕР» КЛИЕНТСКИЙ МОДУЛЬ Архитектура «клиент-сервер» SQL-запросы БАЗА ДАННЫХ СУБД КЛИЕНТСКИЙ МОДУЛЬ ДВУХУРОВНЕВЫЙ «КЛИЕНТ – СЕРВЕР» КЛИЕНТСКИЙ МОДУЛЬ ЗП ПРИКЛАДНОЙ СЕРВЕР SQL СУБД БАЗА ДАННЫХ ТРЕХУРОВНЕВЫЙ «КЛИЕНТ – СЕРВЕР» ORMM-2010 12

Описание проекта Типы данных Схема базы данных Спецификации запросов Описание клиентского интерфейса ГЕНЕРАТОР Описание Описание проекта Типы данных Схема базы данных Спецификации запросов Описание клиентского интерфейса ГЕНЕРАТОР Описание запросов Описание WEB интерфейса ПРОЕКТОВ ПРОГРАММНЫЙ КОД ORMM-2010 13

КЛИЕНТСКИЙ МОДУЛЬ 1 МОДУЛЬ АДМИНИСТРАТОРА СИСТЕМЫ КЛИЕНТСКИЙ МОДУЛЬ 2 БД СБ СИСТЕМА БЕЗОПАСНОСТИ КЛИЕНТСКИЙ КЛИЕНТСКИЙ МОДУЛЬ 1 МОДУЛЬ АДМИНИСТРАТОРА СИСТЕМЫ КЛИЕНТСКИЙ МОДУЛЬ 2 БД СБ СИСТЕМА БЕЗОПАСНОСТИ КЛИЕНТСКИЙ МОДУЛЬ К ПРИКЛАДНОЙ СЕРВЕР 1 СУБД БД 1 ПРИКЛАДНОЙ СЕРВЕР 2 СУБД БД 2 ПРИКЛАДНОЙ СЕРВЕР N СУБД БД N ДИНАМИЧЕСКИЕ БИБЛИОТЕКИ УТИЛИТЫ РАБОТЫ С БАЗАМИ ДАННЫХ W E B САЙТ 1 W E B САЙТ 2 W E B САЙТ M HTML - СТРАНИЦЫ ORMM-2010 14

Состав проекта ИВС ® Головной файл – имя проекта и его структура ® Описание Состав проекта ИВС ® Головной файл – имя проекта и его структура ® Описание типов данных ® Описание проектных документов ® Файлы описания баз данных ® Файлы описания серверов ® Файлы описания окон и диалогов ® Файлы описания клиентских приложений ® Файлы описания ИНТЕРНЕТ-серверов ® Файлы «ручных» функций для процедур ORMM-2010 15

Единое информационное пространство проекта ® текущая версия генератора проекта; ® полный комплект файлов описания Единое информационное пространство проекта ® текущая версия генератора проекта; ® полный комплект файлов описания проекта; ® полный комплект файлов генерируемого программного кода системы; ® полный комплект исполняемых файлов системы. ORMM-2010 16

Язык описания проекта ® реквизиты проекта ® платформы ® пользователи системы ® типы данных Язык описания проекта ® реквизиты проекта ® платформы ® пользователи системы ® типы данных ® документы ® сетевые структуры данных ® реляционные базы данных ® генерируемые (автоматически) SQL - запросы ® произвольные SQL - запросы ORMM-2010 17

Язык описания проекта ® прикладные серверы ® порты прикладных запросов ® WEB - порты Язык описания проекта ® прикладные серверы ® порты прикладных запросов ® WEB - порты серверов ® бизнес - процедуры прикладных серверов ® «ручные» программы бизнес-процедур ® пользовательские окна ® пользовательские диалоги ® пользовательские (клиентские) модули ORMM-2010 18

Платформы ® Cltgtk – оконные приложения Linux ® Cltgtw – оконные приложения MS Windows. Платформы ® Cltgtk – оконные приложения Linux ® Cltgtw – оконные приложения MS Windows. ® Cltwin – оконные приложения для использования в MS Windows. ® Libuni – библиотеки для ручных программ в Linux. ® Libwin - библиотеки для ручных программ в MS WIndows. ® Srvuni – серверы для использования в Linux. ® Srvwin – серверы для использования в MS Windows ORMM-2010 19

Драйверы баз данных ® win_dblb 7 – MS SQL Server через ntwdblib в MS Драйверы баз данных ® win_dblb 7 – MS SQL Server через ntwdblib в MS WIndows. ® win_orcl – Oracle через oci 32 в MS WIndows. ® win_sybase – SYBASE через ctlib в MS WIndows. ® win_mysql – My. Sql в MS Windows. ® uni_psql – Postgres в Linux. ® uni_sybase – SYBASE через ctlib в Linux. ® uni_mysql – интерфейс с My. Sql в Linux. ORMM-2010 20

Типы данных ® предописанный тип данных (numb, char, date, money, …), ® переопределение ранее Типы данных ® предописанный тип данных (numb, char, date, money, …), ® переопределение ранее определенного прототипа, ® перечислимый тип (enum, radio, mask), ® type <идентификатор>: {<формат>(<базовый тип>)|alias <идентификатор типа>} [(<список значений>|<список свойств>)] /tilte=<строка комментария>/hdr=<строка заголовка> ORMM-2010 21

Типы и модели данных ® структуры (struct). В описании задается состав именованных компонент структуры Типы и модели данных ® структуры (struct). В описании задается состав именованных компонент структуры с их типами. type <имя> : {<имя предописанного типа>(<формат>) | struct | alias <имя прототипа>} [(<компоненты типа>)] /title=<строка> /hdr=<строка> ® реляционные модели данных, основанные на SQL ® сетевые модели, основанные на списковых структурах ORMM-2010 22

Документ – основное понятия языка описания проектов document <имя документа> : <тип документа>; record Документ – основное понятия языка описания проектов document <имя документа> : <тип документа>; record <имя записи> : <тип записи>; … set <имя набора> [owner <владелец>] member <член набора>; … func <имя функции> (<вход>) : (<выход>) { <тело> }… ЖЖЖЖЖЖ s 1 s 2 r 1 r 2 s 3 s 4 s 5 r 3 r 4 s 7 s 6 r 5 ORMM-2010 23

Операторы манипулирования содержимым документа ® Записать в заданный экземпляр документа структуру. ® Считать из Операторы манипулирования содержимым документа ® Записать в заданный экземпляр документа структуру. ® Считать из заданного документа структуру. ® Создать экземпляр записи данного типа с указанием структуры, содержимое которой нужно разместить в записи. ® Удалить заданный экземпляр записи. ® Считать из заданного экземпляра записи структуру. ® Записать в заданный экземпляр записи структуру. ORMM-2010 24

Операторы манипулирования содержимым документа ® ® ® Включить заданный экземпляр записи в экземпляр набора Операторы манипулирования содержимым документа ® ® ® Включить заданный экземпляр записи в экземпляр набора в заданную позицию. Найти по заданному номеру позиции экземпляр члена набора по экземпляру владельца. Перейти от заданного экземпляра члена набора к следующему/предыдущему. Найти экземпляр владельца по заданному экземпляру члена набора. Для заданного владельца ключевого набора и значения ключа найти соответствующий экземпляр члена набора. ORMM-2010 25

Реализации абстракции документа ® документ в памяти компьютера ® документ в виде совокупности бинарных Реализации абстракции документа ® документ в памяти компьютера ® документ в виде совокупности бинарных файлов с прямым доступом (сетевая базы данных) ® сетевой (TCP/IP) интерфейс к одной из двух предыдущих реализаций ORMM-2010 26

Схема выполнения бизнес-процедур Входные документы ВХОДНЫЕ ДОКУМЕНТЫ с е р в е р КЛИЕНТСКИЕ Схема выполнения бизнес-процедур Входные документы ВХОДНЫЕ ДОКУМЕНТЫ с е р в е р КЛИЕНТСКИЕ МОДУЛИ (АРМ) БИЗНЕС - ПРОЦЕДУРА БИЗНЕС - ПРОЦЕДУРЫ СУБД БД Выходные документы ВЫХОДНЫЕ ДОКУМЕНТЫ ORMM-2010 27

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

Пользовательский интерфейс ORMM-2010 29 Пользовательский интерфейс ORMM-2010 29

ORMM-2010 30 ORMM-2010 30

Результат генерации проекта (состав программных модулей) ® исполняемые модули бизнес-серверов конфигуратор баз данных crpsetup. Результат генерации проекта (состав программных модулей) ® исполняемые модули бизнес-серверов конфигуратор баз данных crpsetup. exe - конфигуратор безопасности crplib. dll – библиотека шифрования db_dblb 7. dll – драйвер интерфейса с СУБД MS SQL Server db_orcl. dll – драйвер интерфейса с СУБД Oracle 7 db_sybase. dll – драйвер интерфейса с СУБД Sybase 11 <имя кл. модулей>. exe – исполняемые файлы клиентских модулей sysadm. exe – исполняемый модуль администратора безопасности crplib. dll – библиотека алгоритмов шифрования (clt) zlib. dll – библиотека компрессирования информации … ® конфигурационные, командные и другие вспомогательные файлы ® ® ® ® ® ORMM-2010 31

Эффективность «Генератора проектов» ® Объем сгенерированного программного кода ~ 7. 5 Мбт в том Эффективность «Генератора проектов» ® Объем сгенерированного программного кода ~ 7. 5 Мбт в том числе: ® клиентские модули ® библиотеки ® сервер ® Объем ~ 4. 0 Мбт ~ 1. 0 Мбт ~ 2. 5 Мбт проекта ~ 0. 4 Мбт ORMM-2010 32

Разработанные информационно вычислительные системы Система МФО (1992 г. ГУ ЦБ РФ) n АС МБР Разработанные информационно вычислительные системы Система МФО (1992 г. ГУ ЦБ РФ) n АС МБР (1993 г. ГУ ЦБ РФ) n ГАМБИТ (1995 – 97 г. СБ РФ) n Взаимозачеты (1999 г. РПБ) n Mobipay (2002 г. ) n Mass. Pay (2003 г. СБ РФ) n Биллинг (2004 г. ) n ORMM-2010 33

АСБУ - Автоматизированная система бюджетного управления корпорацией (2005, ОАО ТВЭЛ). АСВР-М - Автоматизированная система АСБУ - Автоматизированная система бюджетного управления корпорацией (2005, ОАО ТВЭЛ). АСВР-М - Автоматизированная система весовых расчетов (2007, ОКБ им. П. О. Сухого). КПИР - Комплексная программа управления инженерными расчетами (2010, ОКБ им. П. О. Сухого. ORMM-2010 34

Вышинский Л. Л. , Прибытков Ю. Д. , Флеров Ю. А. , Шиленко В. Вышинский Л. Л. , Прибытков Ю. Д. , Флеров Ю. А. , Шиленко В. И. , Широков Н. И. Инструментальная система ФАКИР. Известия Академии наук СССР, Техническая кибернетика, Москва, 1986 г. , № 3. Вышинский Л. Л. , Гринев И. Л. , Флеров Ю. А. , Шиленко В. И. , Широков Н. И. Инструментальные средства САПР. В сб. Задачи и методы автоматизированного проектирования в авиастроении. Издание Вычислительного Центра АН СССР, Москва, 1991 г. Гринев И. Л. , Широков Н. И. Средства управления данными в САПР. В сб. Задачи и методы автоматизированного проектирования в авиастроении. ВЦ АН СССР, Москва, 1991 г. Вышинский Л. Л. , Гринев И. Л. , Демидов А. Ю. , Широков Н. И. Технологии разработки и сопровождения АБС. «Банковские технологии» , Москва, 1997 июль-август ORMM-2010 35

Вышинский Л. Л. , Гринев И. Л. , Катунин В. П. , Лабутин И. Вышинский Л. Л. , Гринев И. Л. , Катунин В. П. , Лабутин И. В. , Флеров Ю. А. Широков Н. И. Банковские информационные технологии (части I и II) // М. : ВЦ РАН 1999, 272 с. Вышинский Л. Л. , Гринев И. Л. , Флеров Ю. А. , Широков А. Н. , Широков Н. И. Генератор проектов – инструментальный комплекс для разработки «клиент - серверных» систем // Информационные технологии и вычислительные системы. 2003, № 1 -2, с. . 6 -25. сборник «Автоматизация проектирования финансовых информационных систем» // М. : ВЦ РАН 2004 г. ORMM-2010 36

Текущие задачи Повышение эффективности создаваемых многопользовательских транзакционных клиент-серверных систем Повышение эффективности самого Генератора проектов Текущие задачи Повышение эффективности создаваемых многопользовательских транзакционных клиент-серверных систем Повышение эффективности самого Генератора проектов Вопросы разработки новых оконных типов в рамках Генератора проектов ORMM-2010 37

Спасибо за внимание ORMM-2010 38 Спасибо за внимание ORMM-2010 38