ТЕХНОЛОГИИ ЗАЩИТЫ ИНФОРМАЦИИ
Наряду с позитивным влиянием на все стороны человеческой деятельности широкое внедрение информационных технологий привело к появлению новых угроз безопасности людей. Это связано с тем обстоятельством, что информация, создаваемая, хранимая и обрабатываемая средствами вычислительной техники, стала определять действия большей части людей и технических систем. В связи с этим резко возросли возможности нанесения ущерба, связанные с хищением информации, так как воздействовать на любуюсистему (социальную, биологическую или техническую) с целью ее уничтожения, снижения эффективности функционирования или воровства ее ресурсов (денег, товаров, оборудования) возможно только в том случае, когда известна информация о ее структуре и принципах функционирования.
Все виды информационных угроз можно разделить на две большие группы [18]:
• отказы и нарушения работоспособности программных и технических средств;
• преднамеренные угрозы, заранее планируемые злоумышленниками для нанесения вреда.
Выделяют следующие основные группы причин сбоев и отказов в работе компьютерных систем:
• нарушения физической и логической целостности хранящихся в оперативной и внешней памяти структур данных, возникающие по причине старения или преждевременного износа их носителей;
• нарушения, возникающие в работе аппаратных средств из-за их старения или преждевременного износа;
• нарушения физической и логической целостности хранящихся в оперативной и внешней памяти структур данных, возникающие по причине некорректного использования компьютерных ресурсов;
• нарушения, возникающие в работе аппаратных средств из-за неправильного использования или повреждения, в том числе из-за неправильного использования программных средств;
• неустраненные ошибки в программных средствах, не выявленные в процессе отладки и испытаний, а также оставшиеся в аппаратных средствах после их разработки.
Помимо естественных способов выявления и своевременного устранения указанных выше причин, используют следующие специальные способы защиты информации от нарушений работоспособности компьютерных систем:
• внесение структурной, временной, информационной и функциональной избыточности компьютерных ресурсов;
• защиту от некорректного использования ресурсов компьютерной системы;
• выявление и своевременное устранение ошибок на этапах разработки программно-аппаратных средств.
Структурная избыточность компьютерных ресурсов достигается за счет резервирования аппаратных компонентов и машинных носителей данных, организации замены отказавших и своевременного пополнения резервных компонентов [19]. Структурная избыточность составляет основу остальных видов избыточности.
Внесение информационной избыточности выполняется путем периодического или постоянного (фонового) резервирования данных на основных и резервных носителях. Зарезервированные данные обеспечивают восстановление случайно или преднамеренно уничтоженной и искаженной информации. Для восстановления работоспособности компьютерной системы после появления устойчивого отказа кроме резервирования обычных данных следует заблаговременно резервировать и системную информацию, а также подготавливать программные средства восстановления.
Функциональная избыточность компьютерных ресурсов достигается дублированием функций или внесением дополнительных функций в программно-аппаратные ресурсы вычислительной системы для повышения ее защищенности от сбоев и отказов, например периодическое тестирование и восстановление, а также самотестирование и самовосстановление компонентов компьютерной системы.
Защита от некорректного использования информационных ресурсов заключается в корректном функционировании программного обеспечения с позиции использования ресурсов вычислительной системы. Программа может четко и своевременно выполнять свои функции, но некорректно использовать компьютерные ресурсы из-за отсутствия всех необходимых функций (например, изолирование участков оперативной памяти для операционной системы и прикладных программ, защита системных областей на внешних носителях, поддержка целостности и непротиворечивости данных).
Выявление и устранение ошибок при разработке программно-аппаратных средств достигается путем качественного выполнения базовых стадий разработки на основе системного анализа концепции, проектирования и реализации проекта.
Однако основным видом угроз целостности и конфиденциальности информации являются преднамеренные угрозы, заранее планируемые злоумышленниками для нанесения вреда. Их можно разделить на две группы:
• угрозы, реализация которых выполняется при постоянном участии человека;
• угрозы, реализация которых после разработки злоумышленником соответствующих компьютерных программ выполняется этими программами без непосредственного участия человека.
Задачи по защите от угроз каждого вида одинаковы:
• запрещение несанкционированного доступа к ресурсам вычислительных систем;
• невозможность несанкционированного использования компьютерных ресурсов при осуществлении доступа;
• своевременное обнаружение факта несанкционированных действий, устранение их причин и последствий.
Основным способом запрещения несанкционированного доступа к ресурсам вычислительных систем является подтверждение подлинности пользователей и разграничение их доступа к информационным ресурсам, включающего следующие этапы:
• идентификация;
• установление подлинности (аутентификация);
• определение полномочий для последующего контроля и разграничения доступа к компьютерным ресурсам.
Идентификация необходима для указания компьютерной системе уникального идентификатора обращающегося к ней пользователя. Идентификатор может представлять собой любую последовательность символов и должен быть заранее зарегистрирован в системе администратора службы безопасности. В процессе регистрации заносится следующая информация:
• фамилия, имя, отчество (при необходимости другие характеристики пользователя);
• уникальный идентификатор пользователя;
• имя процедуры установления подлинности;
• эталонная информация для подтверждения подлинности (например, пароль);
• ограничения на используемую эталонную информацию (например, время действия пароля);
• полномочия пользователя по доступу к компьютерным ресурсам.
Установление подлинности (аутентификация) заключается в проверке истинности полномочий пользователя.
Общая схема идентификации и установления подлинности пользователя представлена на рис. 5.6 [17].
Для особо надежного опознания при идентификации используются технические средства, определяющие индивидуальные характеристики человека (голос, отпечатки пальцев, структура зрач-
Рис. 5.6. Общая схема идентификации и установления подлинности
пользователя
ка). Однако такие методы требуют значительных затрат и поэтому используются редко. Наиболее массово используемыми являются парольные методы проверки подлинности пользователей. Пароли можно разделить на две группы: простые и динамически изменяющиеся.
Простой пароль не изменяется от сеанса к сеансу в течение установленного периода его существования.
Во втором случае пароль изменяется по правилам, определяемым используемым методом. Выделяют следующие методы реализации динамически изменяющихся паролей:
• методы модификации простых паролей. Например, случайная выборка символов пароля и одноразовое использование паролей;
• метод «запрос—ответ», основанный на предъявлении пользователю случайно выбираемых запросов из имеющегося массива;
• функциональные методы, основанные на использовании некоторой функции F с динамически изменяющимися параметрами (дата, время, день недели и др.), с помощью которой определяется пароль.
Для защиты от несанкционированного входа в компьютерную систему используются как общесистемные, так и специализированные программные средства защиты.
После идентификации и аутентификации пользователя система защиты должна определить его полномочия для последующего контроля санкционированного доступа к компьютерным ресурсам (разграничение доступа). В качестве компьютерных ресурсов рассматриваются:
• программы;
• внешняя память (файлы, каталоги, логические диски);
• информация, разграниченная по категориям в базах данных;
• оперативная память;
• время (приоритет) использования процессора;
• порты ввода-вывода;
• внешние устройства.
Различают следующие виды прав пользователей по доступу к ресурсам:
• всеобщее (полное предоставление ресурса);
• функциональное или частичное;
• временное.
Наиболее распространенными способами разграничения доступа являются:
• разграничение по спискам (пользователей или ресурсов);
• использование матрицы установления полномочий (строки матрицы — идентификаторы пользователей, столбцы — ресурсы компьютерной системы);
• разграничение по уровням секретности и категориям (например, общий доступ, конфиденциально, секретно);
• парольное разграничение.
Защита информации от исследования и копирования предполагает криптографическое закрытие защищаемых от хищения данных. Задачей криптографии является обратимое преобразование некоторого понятного исходного текста (открытого текста) в кажущуюся случайной последовательность некоторых знаков, часто называемых шифротекстом, или криптограммой. В шифре выделяют два основных элемента — алгоритм и ключ. Алгоритм шифрования представляет собой последовательность преобразований обрабатываемых данных, зависящих от ключа шифрования. Ключ задает значения некоторых параметров алгоритма шифрования, обеспечивающих шифрование и дешифрование информации. В криптогра-
Рис. 5.7. Процесс шифрования
фической системе информация / и ключ К являются входными данными для шифрования (рис. 5.7) и дешифрования (рис. 5.8) информации. При похищении информации необходимо знать ключ и алгоритм шифрования.
По способу использования ключей различают два типа криптографических систем: симметрические и асимметрические.
В симметрических (одноключевых) криптографических системах ключи шифрования и дешифрования либо одинаковы, либо легко выводятся один из другого.
В асимметрических (двухключевых или системах с открытым ключом) криптографических системах ключи шифрования и дешифрования различаются таким образом, что с помощью вычислений нельзя вывести один ключ из другого.
Скорость шифрования в двухключевых криптографических системах намного ниже, чем в одноключевых. Поэтому асимметрические системы используют в двух случаях:
• для шифрования секретных ключей, распределенных между пользователями вычислительной сети;
• для формирования цифровой подписи.
Одним из сдерживающих факторов массового применения методов шифрования является потребление значительных временных ресурсов при программной реализации большинства хорошо известных шифров (DES, FEAL, REDOC, IDEA, ГОСТ).
Одной из основных угроз хищения информации является угроза доступа к остаточным данным в оперативной и внешней памяти компьютера. Под остаточной информацией понимают данные, оставшиеся в освободившихся участках оперативной и внешней памяти после удаления файлов пользователя, удаления временных файлов без ведома пользователя, находящиеся в неиспользуемых
Рие. 5.8. Процесс дешифрования
хвостовых частях последних кластеров, занимаемых файлами, а также в кластерах, освобожденных после уменьшения размеров файлов и после форматирования дисков.
Основным способом защиты от доступа к конфиденциальным остаточным данным является своевременное уничтожение данных в следующих областях памяти компьютера:
• в рабочих областях оперативной и внешней памяти, выделенных пользователю, после окончания им сеанса работы;
• в местах расположения файлов после выдачи запросов на их удаление.
Уничтожение остаточных данных может быть реализовано либо средствами операционных сред, либо с помощью специализированных программ. Использование специализированных программ (автономных или в составе системы защиты) обеспечивает гарантированное уничтожение информации.
Подсистема защиты от компьютерных вирусов (специально разработанных программ для выполнения несанкционированных действий) является одним из основных компонентов системы защиты информации и процесса ее обработки в вычислительных системах.
Выделяют три уровня защиты от компьютерных вирусов [20]:
• защита от проникновения в вычислительную систему вирусов известных типов;
• углубленный анализ на наличие вирусов известных и неизвестных типов, преодолевших первый уровень защиты;
• защита от деструктивных действий и размножения вирусов, преодолевших первые два уровня.
Поиск и обезвреживание вирусов осуществляются как автономными антивирусными программными средствами (сканеры), так и в рамках комплексных систем защиты информации.
Среди транзитных сканеров, которые загружаются в оперативную память, наибольшей популярностью в нашей стране пользуются антивирусные программы Aidstest Дмитрия Лозинского и DrWeb Игоря Данилова. Эти программы просты в использовании и для детального ознакомления с руководством по каждой из них следует прочитать файл, поставляемый вместе с антивирусным средством.
Широкое внедрение в повседневную практику компьютерных сетей, их открытость, масштабность делают проблему защиты информации исключительно сложной. Выделяют две базовые подзадачи:
• обеспечение безопасности обработки и хранения информации в каждом из компьютеров, входящих в сеть;
• защита информации, передаваемой между компьютерами сети.
Решение первой задачи основано на многоуровневой защите автономных компьютерных ресурсов от несанкционированных и некорректных действий пользователей и программ, рассмотренных выше.
Безопасность информации при сетевом обмене данными требует также обеспечения их конфиденциальности и подлинности. Защита информации в процессе передачи достигается на основе защиты каналов передачи данных, а также криптографического закрытия передаваемых сообщений. В идеальном случае защита каналов передачи данных должна обеспечивать их защиту как от нарушений работоспособности, так и несанкционированных действий (например, подключения к линиям связи). По причине большой протяженности каналов связи, а также возможной доступности их отдельных участков (например, при беспроводной связи) защита каналов передачи данных от несанкционированных действий экономически неэффективна, а в ряде случаев невозможна. Поэтому реально защита каналов передачи данных строится на основе защиты нарушений их работоспособности. На рис. 5.9 представлены цели и способы защиты передаваемых данных [18].
В табл. 5.2 приведены краткие сведения об отечественных комплексных средствах защиты информации, имеющих сертификаты и соответствующих государственным стандартам.
Рис. 5.9. Цели и способы защиты передаваемых данных
Международное признание для защиты передаваемых сообщений получила программная система PGP (Pretty Good Privacy — очень высокая секретность), разработанная в США и объединяющая асимметричные и симметричные шифры. Являясь самой популярной программной криптосистемой в мире, PGP реализована для множества операционных сред — MS DOS, Windows 95, Windows NT, OS/2, UNIX, Linux, Mac OS, Amiga, Atari и др.
Таблица 5.2
№
п/п
| Средство
| Назначение средства (область применения)
| Тип средства
|
| Снег (версия 1.0)
| Система защиты информации от несанкционированного доступа для ПЭВМ IBM PC XT/AT. В нее входит СКЗД «Иней»
| ПА
|
| Снег-ЛВС
| Система защиты информации от несанкционированного доступа в локальных вычислительных сетях. В нее входит СКЗД «Иней»
| ПА
|
| Кобра
| Система защиты информации от несанкционированного доступа для ПЭВМ по четвертому классу защищенности средств вычислительной техники
| П
|
| Страж (версия 1.1)
| Программный комплекс защиты информации от несанкционированного доступа для ПЭВМ по второму классу защищенности средств вычислительной техники
| П
|
| Марс
| Комплекс программных средств защиты от несанкционированного доступа для персонального компьютера по третьему классу защищенности средств вычислительной техники
| П
|
| Кютак-С
| Автоматизированный программно-аппаратный комплекс по управлению и расчетам автозаправочных предприятий
| ПА
|
| Сизам
| Система защиты информации от несанкционированного доступа в локальных вычислительных сетях по классу защищенности 1Д (локальные вычислительные сети) и шестому классу защищенности от несанкционированного доступа
| П
|
| DALLAS LOCK (версия 3.1)
| Программно-аппаратный комплекс защиты от несанкционированного доступа и обработки конфиденциальной информации
| ПА
|
| SECRET NET (версия 1.10)
| Система защиты (включая ее локальную версию) по шестому классу защищенности для средств вычислительной техники
| ПА
|
| СНЕГ 2.0
| Программное средство защиты информации от несанкционированного доступа в автоматизированных системах на базе автономной ПЭВМ с ОС MS DOS версий 5.0 и 6.22 по классу защищенности 1Б; по классу защищенности 2 — в сертифицированных средствах вычислительной техники
| П
|
Продолжение табл. 5.2
№
п/п
| Средство
| Назначение средства (область применения)
| Тип средства
|
| Аккорд
| Программно-аппаратный комплекс (версия ПО и БИОС 1.31/1.10) по классу 1Д (для произвольной программной среды ПЭВМ) и по классу 1В (для функционально-замкнутой программной среды ПЭВМ) — для АСУ
| ПА
|
| SVET&Q
| Программно-аппаратный комплекс защиты информации от несанкционированного доступа в автоматизированных системах по классу защищенности 1В; по классу защищенности 4 — для сертифицированных средств вычислительной техники
| ПА
|
| ДИЗ (версия 1.0)
| Программно-аппаратное средство защиты информации от несанкционированного доступа в локальных вычислительных сетях Novel Netware (версия 3.11) и на автономных АРМ на базе ПЭВМ IBM PS/AT с ОС MS DOS версий 3.30 и выше по классу защищенности 2 для средств вычислительной техники
| ПА
|
| SECRET
NET (версия 2.1)
| Программно-аппаратный комплекс защиты информации от несанкционированного доступа в локальных вычислительных сетях Novel Netware (версия 3.11), Windows for Workgroups (версия 3.11) с использованием ОС MS DOS (версии 3.3—7.0), PS DOS (версии 3.30—6.30) по классам защищенности ЗА, 2Б, 1В для автоматизированных систем и классу защищенности 3 для сертифицированных средств вычислительной техники
| ПА
|
| SKIP (версия 1.0)
| Программный продукт для регулирования доступа на интерфейсе локальная/глобальная сеть под управлением ОС Windows 3.11 и Windows 95. Соответствует техническим условиям и классу защищенности ЗБ для АСУ
| П
|
| SKIP (версия 2.0)
| Программный продукт для регулирования доступа на интерфейсе локальная/глобальная сеть под управлением ОС Solaris 2.4. Соответствует техническим условиям и классу защищенности ЗБ для АСУ
| П
|
| Инфотекс
| Программное обеспечение корпоративной наложенной сети для удаленной защищенной связи, соответствует классу защищенности 1В для АСУ
| П
|
| Шериф
| Программное средство защиты информации от несанкционированного доступа
| П
|
| Банк-Клиент
| Средства защиты информации от несанкционированного доступа автоматизированной системы пересылки документов
| П
|
| Линтер
| Система управления базами данных версии 4.3, соответствует классу защищенности 5 для СВТ
| П
|
| Лабиринт
| Аппаратно-программный комплекс «Система защиты информации на ПЭВМ»
| ПА
|
Продолжение табл. 5.2
№ п/п
| Средство
| Назначение средства (область применения)
| Тип средства
|
| Пандора
| Система защиты информации от несанкционированного доступа в сетях передачи данных по протоколу TCP/IP — межсетевой экран «Пандора». Соответствует классу защищенности ЗБ для АСУ
| ПА
|
| Редут
| Программно-аппаратный комплекс защиты ПЭВМ от несанкционированного доступа, соответствует классу защищенности 5 для средств вычислительной техники
| ПА
|
| Secret Net (версия 3.0)
| Система защиты информации от несанкционированного доступа для ОС Windows 95 на рабочих станциях и сетевая ОС Novel Net Ware версии 3.11—4.1. Соответствует классу защищенности 3 для средств вычислительной техники
| П
|
| ELITE
| Программное средство защиты информации от несанкционированного доступа в составе системы обработки, хранения и передачи электронных документов. Соответствует классу защищенности 5 для средств вычислительной техники
| П
|
| СГУ-1
| Система гарантированного уничтожения файлов и затирания остаточной информации на магнитных носителях и в памяти ЭВМ. Соответствует классу защищенности 3 для средств вычислительной техники
| П
|
| SVINKA-U
| Система защиты информации для ОС UNIX «SVINKA-U» версии 1.20. Соответствует классу защищенности 4 для СВТ
| П
|
| Линтер ВС (версия 5.1)
| Защищенная «Мобильная сетевая система управления базами данных «Линтер ВС» версии 5.1. Соответствует классу защищенности 3 для СВТ
| П
|
| DALLAS LOCK (версия 4.0
| Программно-аппаратный комплекс защиты от несанкционированного доступа и обработки конфиденциальной информации
| ПА
|
| Аккорд (версия 1.35)
| Программно-аппаратный комплекс защиты от несанкционированного доступа и обработки конфиденциальной информации
| ПА
|
| мсвс
| Средства защиты информации от несанкционированного доступа операционной системы «Мобильная система вооруженных сил». Соответствует классу защищенности 5 для средств вычислительной техники
| П
|
| Optima (версия 1.6)
| Система автоматизации технологических процессов электронного документооборота «OPTIMA-Work-Flow-SN» по классу 1В
| П
|
| Secret Net NT (версии 1.0)
| Система разграничения доступа
| ПА
|
| TN-MS EC-TN-1
| Автоматизированная система управления «Менеджер элементов системы управления» по классу 1В для автоматизированных систем
| П
|
Продолжение табл. 5.2
№ п/п
| Средство
| Назначение средства (область применения)
| Тип средства
|
| IMACS EMS (версия 3.0)
| Автоматизированная система управления «Менеджер элементов системы управления» по классу 1В для автоматизированных систем
| П
|
| TAMS
| Система защиты информации от несанкционированного доступа по классу 1Г для автоматизированных систем
| П
|
| Рубеж
| Комплекс средств защиты информации и разграничения доступа к ПЭВМ по классу 1Д для автоматизированных систем
| ПА
|
| Спектр-Z
| Система защиты информации от несанкционированного доступа для различного класса ПЭВМ (автономных и включенных в сеть), работающих под управлением ОС Windows 95, 98, соответствует классу защищенности 1В для средств вычислительной техники
| П
|
Примечание: П — программное средство; ПА — программно-аппаратное средство.
CASE-ТЕХНОЛОГИИ
На данный момент в технологии разработки программного обеспечения существуют два основных подхода к разработке информационных систем, отличающиеся критериями декомпозиции: функционально-модульный (структурный) и объектно-ориентированный.
Функционально-модульный подход основан на принципе алгоритмической декомпозиции с выделением функциональных элементов и установлением строгого порядка выполняемых действий.
Объектно-ориентированный подход основан на объектной декомпозиции с описанием поведения системы в терминах взаимодействия объектов.
Главным недостатком функционально-модульного подхода является однонаправленность информационных потоков и недостаточная обратная связь. В случае изменения требований к системе это приводит к полному перепроектированию, поэтому ошибки, заложенные на ранних этапах, сильно сказываются на продолжительности и стоимости разработки. Другой важной проблемой является неоднородность информационных ресурсов, используемых в большинстве информационных систем. В силу этих причин в настоящее время наибольшее распространение получил объектно-ориентированный подход.
Под CASE-технологией будем понимать комплекс программных средств, поддерживающих процессы создания и сопровождения программного обеспечения, включая анализ и формулировку требований, проектирование, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом (CASE-средство может обеспечивать поддержку только в заданных функциональных областях или в широком диапазоне функциональных областей) [5].
В связи с наличием двух подходов к проектированию программного обеспечения существуют CASE-технологии ориентированные на структурный подход, объектно-ориентированный подход, а также комбинированные. Однако сейчас наблюдается тенденция переориентации инструментальных средств, созданных для структурных методов разработки, на объектно-ориентированные методы, что объясняется следующими причинами:
• возможностью сборки программной системы из готовых компонентов, которые можно использовать повторно;
• возможностью накопления проектных решений в виде библиотек классов на основе механизмов наследования;
• простотой внесения изменений в проекты за счет инкапсуляции данных в объектах;
• быстрой адаптацией приложений к изменяющимся условиям за счет использования свойств наследования и полиформизма;
• возможностью организации параллельной работы аналитиков, проектировщиков и программистов.
Рассмотренные ранее (см. подразд. 3.1) концепции объектно-ориентированного подхода и распределенных вычислений стали базой для создания консорциума Object Management Group (OMG), членами которой являются более 500 ведущих компьютерных компаний (Sun, DEC, IBM, HP, Motorola и др.). Основным направлением деятельности консорциума является разработка спецификаций и стандартов для создания распределенных объектных систем в разнородных средах. Базисом стали спецификации под названием Object Management Architecture (ОМА).
ОМА состоит из четырех основных компонентов, представляющих спецификации различных уровней поддержки приложений (рис. 5.10):
• архитектура брокера запро-
сов объектов (CORBA — Common
Object Request Broker Architecture)
определяет механизмы взаимодей-
ствия объектов в разнородной сети;
• объектные сервисы (Object Servic-
es) являются основными системны
ми сервисами, используемыми раз-
работчиками для создания приложений;
Рис. 5.10. Спецификация ОМА
• универсальные средства (Common Facilities) являются высокоуровневыми системными сервисами, ориентированными на поддержку пользовательских приложений (электронная почта, средства печати и др.);
• прикладные объекты (Application Object) предназначены для решения конкретных прикладных задач.
Исходя из основных положений объектно-ориентированного подхода рассмотрим концепцию идеального объектно-ориентированного CASE-средства.
Существует несколько объектно-ориентированных методов, авторами наиболее распространенных из них являются Г.Буч, Д.Рам-бо, И.Джекобсон. В настоящее время наблюдается процесс сближения объектно-ориентированных методов. В частности, указанные выше авторы создали и выпустили несколько версий унифицированного метода UML (Unified Modeling Language — унифицированный язык моделирования).
Классическая постановка задачи разработки программной системы (инжиниринг) представляет собой спиральный цикл итеративного чередования этапов объектно-ориентированного анализа, проектирования и реализации (программирования).
В реальной практике в большинстве случаев имеется предыстория в виде совокупности разработанных и внедренных программ, которые целесообразно использовать при разработке новой системы. Процесс проектирования в таком случае основан на реинжиниринге программных кодов, при котором путем анализа текстов программ восстанавливается исходная модель программной системы.
Современные CASE-средства поддерживают процессы инжиниринга и автоматизированного реинжиниринга
Анализ
| Проектирование
| Реализация
| Возможность добавлять пояснительные надписи к диаграммам и в документацию
| Возможность создавать различные представления и скрывать ненужные в данный момент слои системы
| Возможность просматривать и выбирать элементы и бизнес-объекты для использования в системе
| Возможность генерировать заготовки программного кода на нескольких объектно-ориентированных языках
| Среда для создания диаграмм разнообразных
моделей
| Возможность создания пользовательского интерфейса (поддержка OLE, ActiveX, OpenDoc, HTML)
| Возможность проверки кода на синтаксическую корректность
| Поддержка различных нотаций
| Возможность динамического моделирования событий в системе
| Возможности определения бизнес-модели и бизнес-правил
| Возможность генерировать код для 4GL и клиент-серверных продуктов (PowerBuider, Forte, VisualAge, VisualWorks)
| Возможность генерации документации для печати
| Возможность динамической коррекции одной диаграммы из другой
| Возможность связи с объектно-ориентированными базами данных и распределенными модулями (поддержка COBRA, DCOM, HOP, HTML)
|
| Инфраструктура
| Контроль версий. Блокирование и согласование частей системы при групповой разработке
| Репозиторий
| Возможность реинжиниринга программного кода, 4GL, клиент-серверных систем в диаграммы моделей
|
Рис. 5.11. Идеальное объектно-ориентированное CASE-средство
Идеальное объектно-ориентированное CASE-средство (рис. 5.11) должно содержать четыре основных блока: анализ, проектирование, разработка и инфраструктура [34].
Основные требования к блоку анализа:
• возможность выбора выводимой на экран информации из всей совокупности данных, описывающих модели;
• согласованность диаграмм при хранении их в репозитарии;
• внесение комментариев в диаграммы и соответствующую документацию для фиксации проектных решений;
• возможность динамического моделирования в терминах событий;
• поддержка нескольких нотаций (хотя бы три нотации — Г.Буча, И.Джекобсона и ОМТ).
Основные требования к блоку проектирования:
• поддержка всего процесса проектирования приложения;
• возможность работы с библиотеками, средствами поиска и выбора;
• возможность разработки пользовательского интерфейса;
• поддержка стандартов OLE, ActiveX и доступ к библиотекам HTML или Java;
• поддержка разработки распределенных или двух- и трех-звенных клиент-серверных систем (работа с CORBA, DCOM, Internet).
Основные требования к блоку реализации:
• генерация кода полностью из диаграмм;
• возможность доработки приложений в клиент-серверных CASE-средствах типа Power Builder;
• реинжиниринг кодов и внесение соответствующих изменений в модель системы;
• наличие средств контроля, которые позволяют выявлять несоответствие между диаграммами и генерируемыми кодами и обнаруживать ошибки как на стадии проектирования, так и на стадии реализации.
Основные требования к блоку инфраструктуры:
• наличие репозитория на основе базы данных, отвечающего за генерацию кода, реинжиниринг, отображение кода на диаграммах, а также обеспечивающего соответствие между моделями и программными кодами;
• обеспечение командной работы (многопользовательской работы и управление версиями) и реинжиниринга.
В табл. 5.3 приведен обзор наиболее распространенных объектно-ориентированных CASE-средств [34].
Таблица 5.3
№ п/п
| Продукт, фирма-разработчик
| Поддерживаемые платформы
| Используемые коды
| Генерация кода
| Описание
|
| BridgePoint (версия 3.2.1), Project Tehnology
| Unix, SIG-Irix
| Шлеер/ Меллор
| C/C++
| Поддержка полного жизненного цикла в рамках методики «Шлеер/ Меллор», генерация кода
|
| Grapical Designer (версия 2.0), Advanced Software Technologies
| Unix, Windows NT Windows 95
| Г. Буч, И.Джекоб-сон, ОМТ, Шлеер/ Меллор, UML.08 и структурная нотация
| C/C++
| Генерация кода и реинжиниринг для каждого из поддерживаемых языков и методологий. Командная работа. Возможность создания собственной нотации
|
| LifeModel for OOOIE (версия 1), InteliCorp
| Unix, Windows NT
| Мартин/ Оделл (ООШ)
| С
| Средство является верхним уровнем фирменного продукта искусственного интеллекта Карра. Прото-типирование в режиме интерпретатора, генерация кода, создание экранов и т.д. Возможность программирования на С или на внутреннем script- языке типа Prolog
|
| ObjectTime, ObjectTime Ltd
| Unix
| ROOM
| C++
| Создание и визуализация исполняемых моделей систем реального времени на основе 00-методологии реального времени (ROOM). Внутренний script-язык — подмножество «Smalltalk»
|
| Objectory (версия 3.7), Rational Software
| Unix, OS/2, D0S5, Windows 3.1, 95, NT
| И. Джекобсон
| C++, Smalltalk
| Два варианта: Analysis Workbench для ОО-ана-лиза и Design Workbench для проектирования. Связь с VisualWorks и C++ Softbench. BPR на основе метода Джекобсона. Так как Objectory перешло к Rational, то неизвестно, как долго еще продукт будет поддерживаться
|
| ObjectPartner (версия 2.0), Verilog
| Unix
| OMT
| C++
|
|
Продолжение табл. 5.3
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|