- •Содержание
- •1. Общее представление об корпоративной информационной системе
- •2. Общая классификация архитектур информационных приложений
- •3. Средства и методологии проектирования, разработки и сопровождения файл-серверных приложений
- •4. Средства и методологии проектирования, разработки и сопровождения клиент-серверных приложений
- •5. Средства и методологии проектирования, разработки и сопровождения Intranet-приложений
- •6. Информационные приложения, основанные на использовании "складов данных" (DataWarehousing)
- •7. Глобально распределенные кис
- •Введение
- •1. Общее представление об информационной системе
- •1.1. Специфика информационных программных систем
- •1.2. Этапы развития кис
- •1.3. Задачи информационных систем
- •1.4. Проблемы построения кис
- •1.5. Требования к техническим средствам, поддерживающим кис
- •2. Общая классификация архитектур информационных приложений
- •2.1. Файл-серверные приложения
- •2.2. Клиент-серверные приложения
- •2.3. Intranet-приложения
- •2.4. Склады данных (DataWarehousing) и системы оперативной аналитической обработки данных
- •2.5. Интегрированные распределенные приложения
- •3. Средства и методологии проектирования, разработки и сопровождения файл-серверных приложений
- •3.1. Традиционные средства и методологии разработки
- •3.1.1. Системы программирования и библиотеки
- •3.1.2. Средства и методы разработки приложений на основе субд на персональных компьютерах
- •3.2. Новые средства разработки файл-серверных приложений
- •3.2.1. Общая характеристика современных средств
- •3.2.2. Примеры новых подходов
- •3.2.2.1. Пакет ms Access
- •3.2.2.2. Система Visual FoxPro
- •3.2.2.3. Среда программирования ca-Visual Objects
- •3.3. Перенос файл-серверных приложений в среду клиент-сервер
- •3.3.1. Библиотеки доступа к базам данных
- •3.3.2. Протокол odbc и его реализации
- •3.3.3. Укрупнение приложений (Upsigsing)
- •3.4. Рекомендации по использованию инструментальных средств разработки файл-серверных приложений
- •4. Средства и методологии проектирования, разработки и сопровождения клиент-серверных приложений
- •4.1. Базовые средства построения ис в архитектуре "клиент-сервер"
- •4.1.1. Вызовы удаленных процедур
- •4.1.1.1. Протокол rpc и его реализации
- •4.1.1.2. Протокол xdr
- •4.1.2. Стек протоколов tcp/ip как основа rpc
- •Семейство протоколов tcp/ip
- •4.2. Серверы баз данных как базовая системная поддержка информационной системы в архитектуре "клиент-сервер"
- •4.2.1. Понятие сервера баз данных
- •4.2.2. Базовая архитектура сервера баз данных
- •4.2.2.1. Непосредственное управление данными во внешней памяти
- •4.2.2.2. Управление буферами оперативной памяти
- •4.2.2.3. Управление транзакциями
- •4.2.2.4. Журнализация
- •4.2.2.5. Языки бд
- •4.2.3. Основные производители серверов баз данных и характеристика их продуктов
- •4.2.3.1. История и серверные продукты компании Oracle
- •4.2.3.2. История и серверные продукты компании Informix
- •4.2.3.3. Серверные продукты компании Sybase
- •4.2.3.4. Линия серверных продуктов ca-OpenIngres компании Computer Associates
- •4.2.3.5. Серверные продукты линии db2 компании ibm
- •5. Средства и методологии проектирования, разработки и сопровождения Intranet-приложений
- •5.1. Основные понятия Intranet
- •5.2. Языки и протоколы
- •5.2.1. Html
- •5.2.2. Http
- •5.2.2.1. Форма запроса клиента
- •5.2.2.2. Методы доступа
- •5.2.2.3. Ответ сервера
- •5.2.2.4. Защита сервера от несанкционированного доступа
- •5.3. Серверы Intranet
- •5.3.1.1. Типы информационных ресурсов
- •5.3.1.2. Протокол ftp
- •5.3.1.3. Сервер протокола - программа ftpd
- •5.3.2.1. Структура базы данных сервера www
- •5.3.3. Поисковые серверы
- •5.3.3.1. Архитектура современных информационно-поисковых систем World Wide Web
- •5.3.3.2. Информационные ресурсы и их представление в информационно-поисковой системе
- •5.4. Язык программирования Java
- •5.4.1. Мобильность Java
- •5.4.2. Безопасность, Java и Intranet
- •5.4.3. Миграция от средства программирования интерфейсов электронных устройств
- •5.5. Возможные архитектуры Intranet-приложений
- •5.5.1. Решения, ориентированные на клиентскую часть системы
- •5.5.2. Трехзвенные архитектуры (Web-ориентированные)
- •5.5.3. Решения, основанные на использовании языка Java
- •6. Информационные приложения, основанные на использовании "складов данных" (DataWarehousing)
- •6.1. Проблема интеграции данных
- •6.2. Подходы и имеющиеся решения
- •6.2.1. Компания ibm
- •6.2.2. Oracle
- •6.2.3. Hewlett Packard
- •6.2.4. Sybase
- •6.2.5. Informix Software
- •6.2.7. Sas Institute
- •6.2.8. Software ag
- •7. Глобально распределенные кис
- •7.1. Проблема "унаследованных систем" (Legacy Systems)
- •7.2. Объектный подход
- •7.3. Предложения omg и odmg
- •7.4. Промышленный стандарт corba
7.4. Промышленный стандарт corba
В стандарте CORBA определена архитектура возможных реализаций ORB, поддерживающих общие сервисы и интерфейсы. В последней версии стандарта специфицирован протокол взаимодействия брокеров объектных заявок, что позволяет обеспечивать взаимодействие объектов на основе разных реализаций ORB, если они соответствуют стандарту.
Имеется два способа определения интерфейса объекта и помещения его в репозиторий интерфейсов - статический и динамический. Статический способ основан на описании интерфейса объекта на языке IDL. Репозиторий представляет компоненты интерфейса как объекты и обеспечивает доступ к ним.
Для вызова метода объекта-сервера объект-клиент может использовать интерфейс динамического вызова или полагаться на генерируемый компилятором IDL стаб - локальный представитель вызываемого метода.
При обработке заявки ORB ищет соответствующий код, пересылает параметры обращения и передает управление реализации вызываемого объекта. Вызываемый объект принимает заявку через генерируемый компилятором IDL промежуточный программный код - скелетон, а также может обращаться к объектному адаптеру и ORB. После завершения обработки заявки результаты обращения возвращаются клиенту, который продолжает свое выполнение.
Брокеры объектных заявок могут быть по-разному реализованы и могут поддерживать различные объектные механизмы. В структуре ORB выделяется ядро, обеспечивающее внутреннее представление объектов и передачу заявок, и набор настраиваемых компонентов, интерфейсы которых маскируют различия в реализации ORB. Объекты-клиенты имеют возможность без изменения своего кода работать в среде любого ORB, который поддерживает отображение IDL в соответствующий язык программирования. Реализации вызываемых объектов также могут работать в среде разных ORB, если брокер поддерживает требуемое языковое отображение и снабжен требуемым объектным адаптером.
Языковое отображение включает определение характерных для языка программирования типов данных и интерфейсов доступа к объектам при помощи ORB. В отображении определяется структура интерфейса стаба клиента, интерфейса динамического вызова, скелетона реализации объекта, объектных адаптеров, а также интерфейсы прямого взаимодействия с ORB.
Объектный адаптер является средством доступа к услугам ORB со стороны объектной реализации. Эти услуги включают генерацию и интерпретацию объектных ссылок, вызов методов, активизацию/деактивизацию реализации, регистрацию реализации. Архитектура OMA предполагает также наличие объектных служб (object services) и общих средств (common facilities). Объектные службы представляют собой набор услуг (интерфейсов и объектов), обеспечивающих базовые функции, которые требуются для реализации других объектов и общих средств. Объектная служба может включать отдельный объект, набор объектов с одним типом интерфейсов или набор объектов с разными типами интерфейсов, наследуемых от одного типа интерфейса объектной службы.
Предоставляемые объектными службами операции доступны через интерфейсы, определенные на языке IDL или его расширении, если оно совместимо с базовой объектной моделью OMG. Примерами специфицированных объектных служб являются служба именования объектов, служба долговременного хранения объектов, служба внешнего представления объектов и т.д.
Задачей общих средств является поддержка интерфейсов сервисов высокого уровня, которые могут, в частности, специализировать объектные службы. Общие службы подразделяются на две категории: горизонтальные и вертикальные. Горизонтальный набор общих средств включает операции, используемые во многих системах и не зависящие от конкретных прикладных систем. Вертикальный набор служит для поддержки конкретной прикладной системы. Возможна эволюция общих средств, при которой вертикальные средства, оказавшиеся общими для нескольких прикладных систем, мигрируют в набор горизонтальных средств. В число горизонтальных общих средств входят, например, средства поддержки пользовательского интерфейса, средства управления системой, средства управления задачами и т.д. Вертикальные общие средства включают, например, средства поддержки прикладных систем для бизнеса и производства, распределенные моделирующие средства и т.д. Заметим, что спецификации общих средств являются предварительными (т.е. их нельзя относить к стандартам OMG).
Заключение. Прогнозы на будущее
В начале курса мы уже говорили о том, что используемая в нем классификация подходов к разработке КИС является весьма условной. В любой сложной информационной системе на самом деле применяется некоторая смесь технологий.
Видимо, в будущем эта тенденция не только сохранится, но и будет усиливаться. Можно ожидать появления инструментальных средств и методологий, которые будут явно поддерживать такой смешанный стиль разработки.
Конечно, будут появляться и принципиально новые технологии (хотя обычно в компьютерном мире все новое оказывается хорошо забытым старым). Какими будут эти новые технологии - покажет будущее.