Сделай Сам Свою Работу на 5

ТЕХНОЛОГИИ ЗАЩИТЫ ИНФОРМАЦИИ

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

Все виды информационных угроз можно разделить на две боль­шие группы [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++, Small­talk   Два варианта: Analysis Workbench для ОО-ана-лиза и Design Workbench для проектирования. Связь с VisualWorks и C++ Softbench. BPR на основе метода Джекобсона. Так как Objectory перешло к Rational, то неизвестно, как долго еще продукт бу­дет поддерживаться  
ObjectPartner (версия 2.0), Verilog   Unix OMT C++  

 

 

Продолжение табл. 5.3

 

Прокрутить вверх

№ п/п Продукт, фир­ма-разработчик   Поддержи­ваемые платформы   Используемые коды Генерация кода Описание
ObjectTeamEnter-prise (версия 1) Cayenne Software   Unix OMT C++ Cayenne объединяет Cadre и Bachman technlology. Пользователям ObjectTeam (метод Шлеер/Меллор) предлагается обратиться к продуктам BridgePoint  
©2015- 2017 stydopedia.ru Все материалы защищены законодательством РФ.