457

ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

Embed Size (px)

Citation preview

Page 1: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование
Page 2: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

2

ОГ Л А В Л Е Н И Е П ОЯ С Н И Т Е Л Ь Н А Я ЗА П И С К А .................................................................... 5

1. Т Е ОРЕ Т И Ч Е С К И Й РА ЗДЕ Л ..................................................................... 6

Т Е М А 1 С ОВ РЕ М Е Н Н Ы Е И Н Ф ОРМ А Ц И ОН Н Ы Е Т Е Х Н ОЛ ОГ И И .. 6

1.1 Информация, информатика, информатизация, информационные технологии и информационные системы. ........................................................ 6

1.1.1 Информационные системы ........... Ошибка! Закладка не определена. 1.2 Техническое обеспечение информационных технологий .......... Ошибка! Закладка не определена. 1.2.1 Развитие вычислительной техники. Элементная база. ............. Ошибка! Закладка не определена. 1.2.2 Принцип работы, структура, архитектура компьютера. Основные технические параметры. Классификация ................... Ошибка! Закладка не определена. 1.3 Операционные системы .................... Ошибка! Закладка не определена. 1.4 Языки и технологии программирования .............. Ошибка! Закладка не определена. 1.4.1 История развития языков программирования ... Ошибка! Закладка не определена. 1.4.2 Сравнительные характеристики, назначение и возможности современных языков программирования. ................... Ошибка! Закладка не определена. 1.4.3 Общая характеристика технологии создания программного обеспечения .............................................. Ошибка! Закладка не определена. 1.4.4 Процедурное, объектно-ориентированное и логическое программирование .................................. Ошибка! Закладка не определена. Т Е М А 2 ОС Н ОВ Н Ы Е П РОГ РА М М Н Ы Е С РЕ ДС Т В А И Н Ф ОРМ А Ц И ОН Н Ы Х Т Е Х Н ОЛ ОГ И Й ...... ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 2.1 Программное обеспечение ............... Ошибка! Закладка не определена. 2.2 Текстовые редакторы ........................ Ошибка! Закладка не определена. 2.3 Графические редакторы .................... Ошибка! Закладка не определена. 2.4 Электронные таблицы Excel ............ Ошибка! Закладка не определена. 2.5 Сервисные инструментальные средства ............... Ошибка! Закладка не определена. 2.5.2 Архиваторы .................................... Ошибка! Закладка не определена.

Page 3: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

3

2.5.3 Электронные словари и переводчикиОшибка! Закладка не определена. 2.5.4 Программы распознавания текстаОшибка! Закладка не определена. 2.6 Системы математических вычислений MatLab, MathCad. Назначение, возможности, примеры применения. .... Ошибка! Закладка не определена. 2.7 Система подготовки презентаций. Назначение, возможности. Работа в MS PowerPoint. ......................................... Ошибка! Закладка не определена. Т Е М А 3 С Е Т Е В Ы Е Т Е Х Н ОЛ ОГ И И И И Н Т Е РН Е Т ................ ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 3.1 Модель структуры протоколов связи .................... Ошибка! Закладка не определена. 3.2 Компьютерные сети. Интернет ........ Ошибка! Закладка не определена. 3.2.1 Интернет. Интранет. Экстранет .... Ошибка! Закладка не определена. 3.2.2 Корпоративная информационная сеть ............... Ошибка! Закладка не определена. 3.3 Архитектура и принципы работы сети Интернет Ошибка! Закладка не определена. 3.4 Основные сервисы Internet (DNS, FTP, HTTP, SNMP, POP3, SNTP). ................................................................... Ошибка! Закладка не определена. 3.5 Скриптовые языки программирования (JavaScript, Perl) ............ Ошибка! Закладка не определена. 3.6 Языки разметки (HTML, XML) ....... Ошибка! Закладка не определена. 3.7 Инструментальные средства создания web-серверов и web-сайтов (PHP, Delphi for PHP, ASP .NET) ...................... Ошибка! Закладка не определена. 3.8 Основы Web-дизайна ........................ Ошибка! Закладка не определена. Т Е М А 4 С И С Т Е М Ы У П РА В Л Е Н И Я Б А ЗА М И ДА Н Н Ы Х .... ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 4.1 Проектирование баз данных ............ Ошибка! Закладка не определена. 4.2 Трехуровневая модель организации баз данных . Ошибка! Закладка не определена. 4.3 Модели данных .................................. Ошибка! Закладка не определена. 4.4 Общая характеристика некоторых баз данных и систем управления . 199

4.5 Основы языка SQL и построение SQL-запросов . Ошибка! Закладка не определена. Т Е М А 5 ЗА Щ И Т А И Н Ф ОРМ А Ц И И .............. ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 5.1 Методы и средства защиты информации ............. Ошибка! Закладка не определена.

Page 4: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

4

5.2 Защита от несанкционированного доступа к данным ................. Ошибка! Закладка не определена. 5.3 Основные понятия криптографии. Кодирование и декодирование ................................................................... Ошибка! Закладка не определена. 5.4 Электронный документооборот. Цифровая электронная подпись ................................................................... Ошибка! Закладка не определена. 5.5 Классы безопасности компьютерных систем ....... Ошибка! Закладка не определена. 5.6 Организационно-правовые аспекты защиты информации ......... Ошибка! Закладка не определена. 5.7 Авторское право ................................ Ошибка! Закладка не определена. Т Е М А 6 М А Т Е М А Т И Ч Е С К ОЕ М ОДЕ Л И РОВ А Н И Е И Ч И С Л Е Н Н Ы Е М Е Т ОДЫ ................................. ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 6.1 Понятие модели, математической модели и моделирования. .... Ошибка! Закладка не определена. 6.2 Классификация математических моделей и требования к ним. . Ошибка! Закладка не определена. 6.3 Аналитическое моделирование ....... Ошибка! Закладка не определена. 6.4 Имитационное моделирование ........ Ошибка! Закладка не определена. 6.5 Экономико-математическое моделирование........ Ошибка! Закладка не определена. 6.6 Погрешность исходных данных ...... Ошибка! Закладка не определена. 6. 7 Статистическая обработка результатов исследования ............... Ошибка! Закладка не определена. 6.7.1. Основные понятия математической статистики ... Ошибка! Закладка не определена. 6.7.2 Методы статистического анализа . Ошибка! Закладка не определена. 6.7.3 Компьютерные программы для статистического анализа. ...... Ошибка! Закладка не определена. Т Е М А 7 М Е Т ОДЫ ОП Т И М И ЗА Ц И И И С И С Т Е М Ы П ОДДЕ РЖ К И П РИ Н Я Т И Я РЕ Ш Е Н И Й ...... ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 7.1 Понятие оптимизации и математическая модель оптимизационных задач .......................................................... Ошибка! Закладка не определена. 7.2 Классификация математических моделей и задач оптимизации ................................................................... Ошибка! Закладка не определена. 7.3 Примеры оптимизационных задач .. Ошибка! Закладка не определена. 7.4 Методы решения оптимизационных задач ........... Ошибка! Закладка не определена.

Page 5: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

5

7.5 Система поддержки принятия решений ............... Ошибка! Закладка не определена. 7.6 Экспертные системы: понятие, назначение, архитектура, отличительные особенности. ................. Ошибка! Закладка не определена. 7.7 Классификация и примеры экспертных систем ... Ошибка! Закладка не определена. 2. П РА К Т И Ч Е С К И Й РА ЗДЕ Л ......................... ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 3. РА ЗДЕ Л К ОН Т РОЛ Я ЗН А Н И Й .................. ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. 4. В С П ОМ ОГ А Т Е Л Ь Н Ы Й РА ЗДЕ Л ............... ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА.5 У Ч Е Б Н А Я П РОГ РА М М А ДИ С Ц И П Л И Н Ы «ОС Н ОВ Ы И Н Ф ОРМ А Ц И ОН Н Ы Х Т Е Х Н ОЛ ОГ И Й » .............................................. 446

С П И С ОК РЕ К ОМ Е Н ДУ Е М ОЙ Л И Т Е РА Т У РЫ ................................. 4543

Page 6: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

6

П ОЯ С Н И Т Е Л Ь Н А Я ЗА П И С К А

Учебная дисциплина «Основы информационных технологий» чита-ется для студентов получения высшего образования на второй ступени (в магистратуре) для специальностей 1-21 80 14 Искусствоведение, 1-23 80 03 Психология, 1-24 80 01 Юриспруденция, 1-26 80 01 Управление в социаль-ных и экономических системах. Данная дисциплина относится к общеоб-разовательным и предусматривает сдачу кандидатского зачета (дифферен-цированныго зачета).

В настоящее время информационные технологии – одна из самых динамично развивающихся областей. Совершенствуется элементная база и архитектура компьютеров, развиваются языки и технологии программиро-вания, создаются новые пакеты прикладных программ на основе совре-менных математических методов моделирования и оптимизации. Исходя из этого, необходимым элементом подготовки специалистов является как систематизация основных базовых понятий, так и знакомство с современ-ными достижениями в области информационных технологий, что обуслав-ливает необходимость в изучении дисциплины «Основы информационных технологий»

Учебно-методический комплекс содержит 4 раздела: теоретический, практический, раздел контроля знаний и вспомогательный раздел.

Page 7: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

7

1. Т Е ОРЕ Т И Ч Е С К И Й РА ЗДЕ Л Т Е М А 1 С ОВ РЕ М Е Н Н Ы Е И Н Ф ОРМ А Ц И ОН Н Ы Е

Т Е Х Н ОЛ ОГ И И 1.1 И нформация, информатика, информатизация,

информационны е технологии и информационны е системы

Информация достаточно сложное понятие, которое имеет достаточно много различных определений. В ст. 1 Закона Республики Беларусь от 10.11.2008 № 455-З «Об информации, информатизации и защите информа-ции» (далее Закон РБ «Об информации») использованы следующие опре-деления: информация – сведения о лицах, предметах, фактах, событиях, явлениях и процессах;

Вот еще несколько определений. Информация – любые сведения об объектах и явлениях окружающе-

го нас мира, их параметрах, свойствах и состоянии, воспринимаемые чело-веком или специальными приборами и содержащиеся в сообщении, сигна-ле или памяти.

Информация – всестороннее объективное отражение реального мира во всей его полноте и общности. Информация проявляется в виде описания компонентов и взаимосвязей реального мира, сделанного в той или иной знаковой системе. Вместе с тем, информация сама является компонентой реальности и весьма своеобразной компонентой. Она проявляет себя лишь при наличии соответствующего приемника, позволяющего выделять ее из окружающего мира и по тому или иному критерию идентифицировать.

Существуют три основных способа представления информации: ана-логовый, числовой и символьный.

Основные формы представления информации – символьная, тек-стовая и графическая.

• символьная основана на использовании набора определенных символов.

• текстовая также использует образующие тексты символы (бук-вы), но расположенные в определенном порядке.

• самой емкой и сложной является графическая форма. К ней от-носятся различные виды изображений.

Виды информации по форме ее представления человеком на носите-лях:

Page 8: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

8

• текстовая (алфавитная), числовая (цифровая), алфавитно-цифровая, графическая, звуковая, нотная, в форме магнитных полей, элек-трического тока и др.

• разные формы представления информации могут дополнять и не-редко заменять друг друга.

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

Информатизация процесс формирования оптимальных условий для удовлетворения информационных потребностей пользователей за счет применения соответствующих технологий.

Согласно закону Республики Беларусь «Об информации»: информа-тизация – организационный социально-экономический и научно-технический процесс обеспечения потребностей органов государственной власти, юридических и физических лиц в получении сведений о лицах, предметах, фактах, событиях, явлениях и процессах на базе информацион-ных систем и сетей, осуществляющих формирование и обработку инфор-мационных ресурсов и выдачу пользователю документированной инфор-мации.

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

Главные направления развития информатизации: • создание более прогрессивных и гибких средств обработки ин-

формации, • снижение стоимости ее обработки, • улучшение технических характеристик оборудования, • расширение масштабов стандартизации устройств сопряжения, • качественное улучшение подготовки кадров; • разработка защитных мер против несанкционированного доступа

к информации и др.

Page 9: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

9

В XXI веке информационно-коммуникационные технологии стали важнейшим фактором, определяющим развитие общества.

Определение информационных технологий тесно связано с понятием «технология». Технология – это способ организации и выполнения неко-торого процесса (techne в переводе с греческого означает «искусство, ма-стерство, умение»). В узком смысле под технологией понимают процесс функционирования определенных орудий производства, методы, приемы и режимы работы механизмов, станков, различной аппаратуры. В более ши-роком смысле с помощью технологий описываются многие производ-ственные, экономические, социальные, культурные и другие процессы, происходящие в обществе.

Информационная технология (ИТ) – совокупность методов, спосо-бов, приемов и средств обработки документированной информации, вклю-чая прикладные программные средства, и регламентированного порядка их применения (согласно закону Республики Беларусь «Об информации»). Или другими словами ИТ – это процесс, использующий совокупность средств и методов сбора, обработки и передачи данных для получения ин-формации нового качества о состоянии объекта, процесса или явления. Цель ИТ – производство информации для ее анализа человеком и приня-тия на его основе решения по выполнению какого-либо действия.

В последнее время под информационными технологиями чаще всего понимают компьютерные технологии. Но в широком понимании ИТ охва-тывает все области передачи, хранения и восприятия информации и не только компьютерные технологии.

Цель информационной технологии – производство информации для ее анализа человеком и принятия на его основе решения по выполне-нию какого-либо действия.

Современные информационные технологии базируется на следую-щих основных принципах:

• интерактивный (диалоговый) режим работы с компьютером; • интегрированность с другими программными продуктами; • гибкость процесса изменения данных и постановок задач. Можно выделить базовые ИТ по областям применения: в админи-

стративном управлении, экономике, промышленности, науке, образовании, полиграфии, социально-бытовой сфере и т.д.

По содержанию ИТ разделяют на: телекоммуникационные, техноло-гии распределенных баз данных и знаний с удаленным доступом, мульти-медиа-технологии, геоинформационные технологии, технологии обработ-

Page 10: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

10

ки данных, технологии защиты информации, технологии виртуальной ре-альности и др.

Основные виды информационных технологий 1. Информационная технология обработки данных предназначена

для решения хорошо структурированных задач, алгоритмы решения кото-рых хорошо известны и для решения которых имеются все необходимые входные данные. Решаются следующие задачи: обработка данных об опе-рациях, производимых фирмой; создание периодических контрольных от-четов о состоянии дел в фирме; получение ответов на всевозможные теку-щие запросы и оформление их в виде бумажных документов или отчетов; хранение данных (создаются базы данных).

2. Информационная технология управления предназначена для информационного обслуживания всех работников предприятий, связанных с принятием управленческих решений. Здесь информация обычно пред-ставляется в виде регулярных или специальных управленческих отчетов и содержит оценки планируемого состояния объекта управления; оценки от-клонений от планируемого состояния; выявление причин отклонений; ана-лиз возможных решений и действий. Сюда же можно отнести и информа-ционную технологию автоматизированного офиса. Автоматизация офиса предполагает организацию и поддержку коммуникационных процессов как внутри фирмы, так и с внешней средой на базе компьютерных сетей и дру-гих современных средств передачи и работы с информацией.

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

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

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

С появлением персонального компьютера начался новый этап разви-тия информационной технологии. Основной целью становится удовлетво-рение персональных информационных потребностей человека как для профессиональной сферы, так и для бытовой.

Page 11: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

11

1.1.1 И нформационны е системы

ИТ тесно связана с информационными системами, которые являются для нее основной средой.

В широком смысле информационная система (ИС) – это взаимо-связанная совокупность информационных, технических, программных, ма-тематических, организационных, правовых, эргономических, лингвистиче-ских, технологических и других средств, а также персонала, предназначен-ная для сбора, обработки, хранения и выдачи информации для своевремен-ного обеспечения пользователей необходимой информацией (для принятия управленческих решений).

Согласно Закона РБ «Об информации»: ИС – совокупность банков данных, ИТ и комплекса (комплексов) программно-технических средств.

ИТ может существовать и вне сферы ИС. Таким образом, ИТ явля-ется более емким понятием, отражающим современное представление о процессах преобразования информации в информационном обществе.

Процессы в информационной системе: • ввод информации из внешних и внутренних источников; • обработка входящей информации; • хранение информации для последующего ее использования; • вывод информации в удобном для пользователя виде; • обратная связь, т.е. представление информации, переработанной в

данной организации, для корректировки входящей информации. С учетом сферы применения выделяют: технические ИС, экономиче-

ские ИС, ИС в гуманитарных областях, ИС в правоведении и т.д. Основные этапы развития ИС приведены в таблице 1.1, а обобщен-

ная классификация – в таблице 1.2.

Таблица 1.1 – Основные этапы развития ИС Период Использование

информации Основные функции ИС Цель использования ИС

1950-1960 гг.

формирование бумажных рас-четных докумен-тов

обработка расчетных до-кументов на электроме-ханических и бухгалтер-ских машинах

повышение скорости об-работки документов, упрощение процедуры об-работки счетов и расчета зарплаты

1960-1970 гг.

формирование отчетов

управление производ-ственной информацией

ускорение процесса под-готовки отчетности

1970-1980 гг.

управленческий контроль произ-водства и реали-

поддержка принятия ре-шений

выработка оптимального решения

Page 12: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

12

зации 1980 г. – настоя-

щее время

управление стра-тегией развития предприятия

формирование информа-ции для принятия страте-гических решений

поддержка управления бизнес-стратегией

Таблица 1.2 – Обобщенная классификация ИС

Признак

Группы ИС

Характер использования результатной информации

Характеристика Примечание информацион-но-поисковые

производят ввод, системати-зацию, хранение и выдачу информации по запросу пользователя

электронные библиотеки, поисковые или справочные системы, например телефонные, транспортных касс и др.

информацион-но-решающие

осуществляют все операции по переработке информации по определенному алгорит-му

Степень воздействия выдаваемой информации на процесс принятия решений:

управля-ющие

решают задачи расчетного характера (системы бухгалтерского учета, плани-рования выпуска продукции и др.)

совету-ющие

обрабатывают знания и предлагают пользователю определенные рекомен-дации для принятия решений, т.е. относятся к системам искусственного интеллекта (системы диагностики в медицине, экспертные системы, систе-мы поддержки принятия решений)

Тип хранимых данных Характеристика Примечание фактографи-ческие

хранят и обрабатывают струк-турированные данные в виде чисел и текстов

документаль-ные

хранят и обрабатывают не-структурированную инфор-мацию в виде документов

поиск по неструктурированным данным осуществ-ляется с использованием семантических признаков

Структурированность решаемых задач1 Характеристика Примечание создающие управленческие отчеты

ориентированы, главным об-разом, на поиск, сортировку, агрегирование, фильтрацию

на основании отчетов менеджер принимает реше-ние

1 По признаку структурированности различают три типа задач: структурированные (формализу-

емые); неструктурированные (неформализуемые); частично структурированные. Структурированная задача характеризуется возможностью построения математической модели,

имеющей алгоритм решения (например, задача расчета заработной платы – это структурированная зада-ча, где полностью известен алгоритм решения).

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

На практике сравнительно немного полностью структурированных или совершенно неструкту-рированных задач. О большинстве задач можно сказать, что известна лишь часть их элементов и связей между ними. Такие задачи называются частично структурированными. В них качественные характери-стики могут превалировать над количественными.

При решении частично или слабоструктурированных задач человеку приходится не только учи-тывать большое число факторов, но и рассматривать различные пути решения проблемы.

Page 13: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

13

данных вырабатыва-ющие альтер-нативные ре-шения

принятие решения сводится к выбору одной из предложен-ных альтернатив

модель-ные

предоставляют пользователю матема-тические, статистические, финансовые и другие модели, использование кото-рых облегчает выработку и оценку альтернатив решения. Они использу-ют типовые математические модели, включая решение задач типа «как сде-лать, чтобы?», «что будет, если?», анализ чувствительности и др., вы-полняют оперативную подготовку и корректировку входных параметров и ограничений модели; предоставляют возможность графического отображе-ния динамики модели и объяснения пользователю необходимых шагов формирования и работы модели

эксперт-ные

обеспечивают выработку возможных альтернатив и оценку их пользовате-лем

Степень автоматизации процедур преобразования информации Характеристика Примечание автоматиче-ские

позволяют решать структури-рованные задачи по опреде-ленным алгоритмам с исполь-зованием известных матема-тических и других моделей

в этом случае роль человеческого участия сводится к нулю

автоматизи-рованные

позволяют решать слабо или частично структурированные задачи

в их функционировании принимает участие чело-век

Масштаб Характеристика Примечание локальные функционируют на одном

рабочем месте основываются на настольных (локальных) системах управления базами данных, например Clarion, Clip-per, FoxPro, Paradox, dBase, Microsoft Access и др.

групповые обеспечивают коллективную работу группы пользователей

используют сетевые версии настольных СУБД или серверы баз данных

корпоратив-ные

функционируют на крупных предприятиях на базе распре-деленных БД и сетей

используют серверы баз данных, например Oracle, DB2 и Microsoft SQL Server и др.

Функции управления на предприятии Характеристика Примечание организацион-ного управле-ния

предназначены для автомати-зации функций управленче-ского персонала

управление промышленными и непромышленными объектами: гостиницами, банками, торговыми фирмами и др. Основные функции: оперативный контроль и регулирование, оперативный учет и анализ, перспективное и оперативное планирова-ние, бухгалтерский учет, управление сбытом и снабжением и другие экономические и организаци-онные задачи

управления технологиче-скими процес-сами

служат для автоматизации функций производственного персонала.

широко используются для поддержания технологи-ческого процесса в металлургической, машино-строительной промышленности и др. отраслях

автоматизиро-ванного проек-тирования (САПР)

предназначены для автомати-зации функций инженеров-проектировщиков, конструк-торов, архитекторов, дизайне-

основные функции: инженерные расчеты, создание графической документации (чертежей, схем, пла-нов) и проектной документации, моделирование проектируемых объектов

Page 14: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

14

ров при создании новой тех-ники или технологии

интегрирован-ные (корпора-тивные)

используются для автомати-зации всех функций предпри-ятия (организации) и охваты-вают весь цикл работ от про-ектирования до сбыта про-дукции

Уровень управления Характеристика Примечание операционного (оперативного) уровня

поддерживают специалистов-исполнителей, отслеживают текущее состояние потока сделок, обрабатывают данные о сделках и событиях (счета, накладные, зарплата, креди-ты, поток сырья и материа-лов)

являются связующим звеном между предприятием и внешней средой и основным поставщиком ин-формации для ИС остальных уровней, так как со-держат оперативную и архивную информацию. К ним относятся: бухгалтерские, ИС рабочих мест кассиров-операционистов банка, обработки заказов и т.д. Задачи, цели и источники информации на операци-онном уровне, как правило, заранее определены и структурированы

уровня знаний помогают специалистам, ра-ботающим с данными, повы-шают продуктивность и про-изводительность работы

офисной автома-тизации

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

уровня менедж-мента

используются работниками среднего управленческого звена для монито-ринга (постоянного слежения), кон-троля, принятия решений и админи-стрирования

стратегическо-го2 уровня

помогают высшему звену управленцев решать неструк-турированные задачи по дол-госрочному планированию, выбору целей фирмы, ее за-дач, методов, продуктов, услуг, опередить конкурен-тов, налаживать более тесное взаимодействие с потребите-лями и поставщиками

Режим работы Характеристика Примечание пакетные работают в пакетном режиме:

вначале данные накапливают-ся, формируется пакет дан-ных, а затем пакет последова-тельно обрабатывается рядом программ

недостаток этого режима – низкая оперативность принятия решений и обособленность пользователя от системы

диалоговые работают в режиме обмена сообщениями между пользо-

режим особенно удобен, когда пользователь может выбирать перспективные варианты из числа пред-

2 Под стратегией понимается набор методов и средств решения перспективных долгосрочных задач.

Page 15: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

15

вателями и системой лагаемых системой. смешанные сочетают оба типа режима

работы

Выполняемые функции Характеристика Примечание производ-ственные

коммерческие маркетинговые финансовые бухгалтерские управление персоналом

управление документо-оборотом

Способ распределения вычислительных ресурсов Характеристика Примечание локальные для работы используют один

компьютер

распределен-ные

взаимодействуют несколько компьютеров, связанных се-тью.

Отдельные узлы сети территориально удалены друг от друга, решают разные задачи, но используют общую информационную базу

Сфера применения Характеристика Примечание системы обра-ботки транзак-ции

в свою очередь, по оператив-ности обработки данных, раз-деляются на пакетные инфор-мационные системы и опера-тивные информационные си-стемы. В информационных системах организационного управления преобладает ре-жим оперативной обработки транзакций – OLTP (OnLine Transaction Processing), для отражения актуального состо-яния предметной области в любой момент времени, а па-кетная обработка занимает весьма ограниченную часть. Для систем OLTP характерен регулярный (возможно, ин-тенсивный) поток довольно простых транзакций, играю-щих роль заказов, платежей, запросов и т. п. Важными требованиями для них явля-ются высокая производитель-ность обработки транзакций; гарантированная доставка информации при удаленном доступе к БД по телекомму-никациям.

системы под-держки приня-тия решений;

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

Page 16: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

16

производится отбор и анализ данных в различных разрезах: временных, географических и по другим показателям.

информацион-но-справочные системы;

основан на гипертекстовых документах и мультимедиа. Наибольшее развитие такие информационные системы получили в сети Интернет.

офисные ин-формационные системы.

нацелен на перевод бумажных документов в электронный вид, автоматизацию делопро-изводства и управление доку-ментооборотом

1.2 Т ехническое обеспечение информационны х технологий

1.2.1 Развитие вы числительной техники. Э лементная база

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

• механический (нулевое поколение). • электронный. «Механическая» эра (нулевое поколение) в эволюции вычисли-

тельной техники связана с механическими, а позже – электромеханически-ми вычислительными устройствами. Основным элементом механических устройств было зубчатое колесо. Начиная с XX века, роль базового эле-мента переходит к электромеханическому реле. Не умаляя значения мно-гих идей «механической» эры, необходимо отметить, что ни одно из со-зданных устройств нельзя с полным основанием назвать вычислительной машиной в современном ее понимании.

Электронный этап включает четыре поколения, которые связывают с элементной базой средств вычислительной техники: электронные лампы, транзисторы, интегральные микросхемы малой и средней степени инте-грации, большие и сверхбольшие интегральные схемы (БИС и СБИС).

Первой электронной вычислительной машиной принято считать ЭВМ ENIAC (Electronic Numerical Integrator and Computer – электронный

Page 17: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

17

цифровой интегратор и вычислитель), созданную в 1943-46 в Пенсильван-ском университете (США) под руководством Дж.Моучли и Дж.Эккерта. Конструкция машины была очень сложной: содержала 18000 электронных ламп, потребляла мощность в 174 кВт, занимала площадь 300 кв. м, имела вес 30 т.

С момента создания первой ЭВМ на электронных лампах развитие компьютеров определяется совершенствованием их элементной базы: электронные лампы, транзисторы, интегральные микросхемы, большие ин-тегральные схемы.

Для компьютерной техники характерна прежде всего быстрота сме-ны поколений – за ее короткую историю развития уже успело смениться четыре поколения и сейчас мы работаем на компьютерах пятого поколе-ния. Определяющим признаком при отнесении ЭВМ к тому или иному по-колению является, прежде всего, их элементная база (из каких в основном элементов они построены), и такие важные характеристики, как быстро-действие, емкость памяти, способы управления и переработки информа-ции. Деление ЭВМ на поколения в определенной мере условно. Существу-ет немало моделей, которые по одним признакам относятся к одному, а по другим – к другому поколению. И все же, несмотря на эту условность по-коления ЭВМ можно считать качественными скачками в развитии элек-тронно-вычислительной техники.

Поколение первое. Компьютеры на электронных лампах Компьютеры на основе электронных ламп появились в 40-х годах

XX века. Использование электронной лампы в качестве основного элемен-та ЭВМ создавало множество проблем: большие размеры, низкая надеж-ность, большое потребление энергии.

Примерами машин I-го поколения могут служить Mark 1, ENIAC, EDSAC (Electronic Delay Storage Automatic Calculator), UNIVAC (Universal Automatic Computer) – первая машина с хранимой программой.

Поколение второе. Транзисторные компьютеры Разработка транзистора (Джон Бардин и Уолтер Брайттен) в сере-

дине сороков годов позволила создать в конце 50-х годов первые компью-теры на их основе. Применение транзисторов в качестве основного эле-мента в ЭВМ привело к уменьшению размеров компьютеров в сотни раз и к повышению их надежности, снижению энергопотребления.

Одновременно с этим совершенствовались методы хранения инфор-мации. Увеличился объем памяти, а магнитную ленту, впервые применен-ную в ЭВМ Юнивак, начали использовать как для ввода, так и для вывода

Page 18: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

18

информации. В середине 60-х годов получило распространение хранение информации на дисках. Большие достижения в архитектуре компьютеров позволило достичь быстродействия в миллион операций в секунду! В то время СССР шел в ногу со временем и выпускал ЭВМ мирового уровня (например "БЭСМ-6").

Поколение третье. Интегральные схемы Подобно тому, как появление транзисторов привело к созданию вто-

рого поколения компьютеров, появление интегральных схем ознаменовало собой новый этап в развитии вычислительной техники – рождение машин третьего поколения. Интегральная схема, которую также называют кри-сталлом, представляет собой миниатюрную электронную схему, вытрав-ленную на поверхности кремниевого кристалла площадью около 10 мм2, способную заменить тысячи транзисторов. Первые интегральные схемы (ИС) появились в 1964 году.

Быстродействие ЭВМ третьего поколения возросло в тысячи раз, а габариты значительно уменьшились. Благодаря дешевизне производства, многие организации смогли приобрести и освоить такие машины. А это, в свою очередь, привело к росту спроса на универсальные ЭВМ, предназна-ченные для решения самых различных задач.

Поколение четвертое. Большие интегральные схемы Развитие микроэлектроники привело к созданию возможности раз-

мещать на одном-единственном кристалле тысячи интегральных схем. Так, уже в 1980 году, центральный процессор небольшого компьютера оказался возможным разместить на кристалле, площадью всего в четверть квадрат-ного дюйма (1,61 см2). Началась эпоха микрокомпьютеров.

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

В современных компьютерах используются большие и сверхбольшие интегральные схемы (БИС и СБИС), содержащие миллионы и миллиарды транзисторов, размещенных на кристалле кремния площадью менее пяти квадратных сантиметров.

Page 19: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

19

На сегодняшний день основное условие повышения производитель-ности процессоров – методы параллелизма. Как известно, микропроцессор обрабатывает последовательность инструкций (команд), составляющих ту или иную программу. Если организовать параллельное (то есть одновре-менное) выполнение инструкций, общая производительность существенно вырастет.

1.2.2 П ринцип работы , структура, архитектура компьютера. Основны е технические параметры . К лассификация

Термин «электронная вычислительная машина – ЭВМ» определяется как совокупности технических средств, служащих для автоматизированной обработки дискретных данных по заданному алгоритму. В основе совре-менных ЭВМ лежит представление алгоритма решения задачи в виде про-граммы последовательных вычислений. Согласно стандарту ISO 2382/1-84, программа для ЭВМ – это «упорядоченная последовательность команд, подлежащая обработке».

В основе современных компьютеров лежит концепция хранимой в памяти программы. Идея концепции принадлежит создателям первой ЭВМ ENIAC Дж. Эккерту, Дж. Моучли и Дж. фон Нейману. Дж. фон Нейман, обобщив накопленный опыт построения ЭВМ, представил в 1945 г. логи-ческую организацию компьютера безотносительно от его элементной базы, выделил и детально описал базовые компоненты универсального компью-тера и принципы его функционирования.

В СССР принципы компьютера с хранимой в памяти программой были выдвинуты, обоснованы и реализованы в 1948 независимо от Эккер-та, Моучли и фон Неймана С. А. Лебедевым.

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

Сущность фон-неймановской концепции можно свести к четырем принципам:

• двоичного кодирования; • программного управления; • адресности; • однородности памяти.

Page 20: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

20

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

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

Принцип адресности. Память компьютера состоит из пронумеро-ванных ячеек. Номер ячейки является ее адресом. В произвольный момент компьютеру доступна любая ячейка. Слова информации (двоичные коды команд и данных) хранятся в ячейках памяти, для доступа к ним исполь-зуются адреса соответствующих ячеек.

Принцип однородности памяти. Команды и данные хранятся в од-ной и той же памяти. По форме представления команды и данные одно-типны.

Фон-неймановская вычислительная машина (ВМ) включает пять функциональных блоков (рисунок 1.1):

• устройство ввода; • память; • арифметико-логическое устройство (АЛУ); • устройство управления (УУ); • устройство вывода. АЛУ и УУ вместе образуют центральное процессорное устройство

(ЦПУ), которое обычно называют центральным процессором (ЦП) или просто процессором.

Информация поступает из подсоединенных к ВМ периферийных устройств ввода. Затем отдельные команды программы одна за другой ав-

Page 21: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

21

томатически поступают в устройство управления, которое их декодирует и управляет выполнением операции, заданной в команде.

Рисунок 1.1 – Структурная схема вычислительной машины

Операции выполняются в арифметико-логическом устройстве, со-держащем все необходимые для обработки данных схемы. При этом дан-ные должны поступить в АЛУ из памяти. Результаты вычислений выво-дятся на устройства вывода. Связь и взаимодействие обеспечивают порты ввода и порты вывода. Термином порт обозначают аппаратуру сопряжения периферийного устройства с ВМ. Совокупность портов ввода и вывода называют устройством ввода/вывода.

Чтобы программа могла выполняться, команды и данные должны располагаться в основной памяти (ОП). В ОП каждое слово хранится в от-дельной ячейке со своим адресом, причем соседние ячейки памяти имеют следующие по порядку адреса. Доступ к любым ячейкам запоминающего устройства (ЗУ) ОП может производиться в произвольной последователь-ности. Такой вид памяти называется памятью с произвольным доступом. ОП современных ВМ в основном состоит из полупроводниковых опера-тивные запоминающих устройств (ОЗУ), обеспечивающих как считывание, так и запись информации. Для таких ЗУ характерна энергозависимость – хранимая информация теряется при отключении электропитания.

Page 22: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

22

Для того, чтобы часть основной памяти была энергонезависимой, в состав ОП включают постоянные запоминающие устройства (ПЗУ), кото-рые также обеспечивают произвольный доступ. Хранящаяся в ПЗУ ин-формация в рабочем режиме ВМ может только считываться (но не записы-ваться).

В ВМ может быть дополнительная (вторичная) память. Введенная информация всегда сначала запоминается в ОП, а затем может переносить-ся во вторичную память для длительного хранения. Вторичная память энергонезависима и чаще всего реализуется как внешняя память на базе магнитных дисков. Информация в ней хранится в виде специальных про-граммно поддерживаемых объектов – файлов.

Обработка данных осуществляется главным образом в АЛУ. Встро-енные операции элементарны: функции АЛУ обычно сводятся к простым арифметическим и логическим операциям, а также операциям сдвига. АЛУ обеспечивает обработку двух входных переменных, в результате которой формируется выходная переменная. Более сложные математические дей-ствия должны выполняться с помощью программ, использующих встроен-ные операции.

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

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

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

Page 23: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

23

дальновидное техническое решение дало мощный толчок всей индустрии вычислительной техники.

Под микроархитектурой понимается структурная организация про-цессора (микропроцессора), т.е. внутренняя реализация архитектуры набо-ра команд процессора.

Современную архитектуру компьютера определяют следующие принципы:

• принцип программного управления; • принцип программы, сохраняемой в памяти; • принцип произвольного доступа к памяти. На основании этих принципов можно утверждать, что современный

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

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

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

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

Page 24: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

24

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

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

В качестве основных технико-эксплуатационных параметров ЭВМ рассматриваются:

• производительность процессора и ЭВМ в целом, • разрядность слова, • набор команд, • пропускная способность каналов ввода-вывода, • номенклатура устройств ввода-вывода и их характеристики, • емкость оперативной и внешней памяти, • надежность работы и др. Наиболее важной характеристикой ЭВМ является производитель-

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

Разрядность (длина) слова влияет на диапазон обрабатываемых чи-сел, а, следовательно, на точность представления чисел и результатов об-работки информации. Возможности ЭВМ для обработки данных, в боль-шой степени зависят от емкости и скорости работы различных видов памя-ти, а также от характеристики и номенклатуры устройств ввода-вывода.

Page 25: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

25

От набора команд компьютера зависят его функциональные возмож-ности при решении различных классов задач.

Одинаковая архитектура набора команд разных компьютеров обес-печивает их совместимость.

Надежность ЭВМ может определяться различными показателями, например, вероятность безотказной работы ЭВМ за время t при заданных условиях эксплуатации; наработка на отказ и др.

Принцип работы и структуру ЭВМ рассмотрим на примере персо-нального компьютера. На рисунке 1.2 представлена схема структуры ПК.

Рисунок 1.2 – Структурная схеме компьютера Она характеризуется модульно-магистральным принципом архи-

тектуры компьютеров: различные устройства (модули) компьютера свя-зываются между собой посредством общего канала обмена информацией – шины (или магистрали). Модульно-магистральный принцип позволяет легко создавать нужную конфигурацию компьютера или модифицировать ее, не внося никаких изменений в уже имеющиеся устройства при подклю-чении новых. Основу ПК составляет системный блок, в котором размеще-ны: процессор, блок оперативного запоминающего устройства (ОЗУ), по-

Page 26: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

26

стоянного запоминающего устройства (ПЗУ), долговременной памяти на жёстком магнитном диске (Винчестер), устройства для запуска компакт-дисков (CD) и различных периферийных устройств. Там же находятся пла-ты: сетевая, видеопамяти, обработки звука, модем (модулятор-демодулятор), интерфейсные платы, обслуживающие устройства ввода-вывода: клавиатуры, дисплея, "мыши", принтера и др.

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

Процессор служит для обработки информации: он выбирает команды из внутренней памяти (ОЗУ или ПЗУ), расшифровывает и затем исполняет их, производя арифметические и логические операции. Получает данные из устройства ввода и посылает результаты на устройства вывода. Он вы-рабатывает также сигналы управления и синхронизации для согласованной работы его внутренних узлов, контролирует работу системной магистрали и всех периферийных устройств.

В настоящее время используются компьютеры, построенные на раз-личных принципах логической и структурной организации.

Совершенствование компьютеров традиционной архитектуры фон Неймана предусматривает повышение производительности за счет:

• увеличения разрядности системной шины и процессора, разде-ления единой шины данных и программ на две;

• использования элементов, в которых реализована не двоичная система счисления, а троичная и т.д.;

• создания многоядерных процессоров; • разработки микросхем на новых технологиях; • увеличения объемов и количества уровней кэш-памяти; • использования процессоров с новыми типами архитектур; • внедрения технологий конвейеризации и параллелизма; • перехода на многомашинные и многопроцессорные вычисли-

тельные системы и т.д. На первых этапах развития компьютеров при их построении исполь-

зовались процессоры с CISC архитектурой, затем были разработаны про-цессоры с новой RISC архитектурой. Выбор между RISC и CISC архитек-турами зависит от области применения процессоров. RISC-процессоры удобны при использовании их в качестве элементарных процессорных устройств с высокой степенью распараллеливания операций, а CISC-процессоры – в тех областях, где требуется поддержка аппаратными сред-

Page 27: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

27

ствами высоконадежного программного обеспечения. Для реализации пре-имуществ RISC-процессоров над CISC необходимо создание большого ко-личества специально ориентированных на реализацию RISC-процессоров программ.

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

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

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

Использование многомашинных и многопроцессорных ВС позволя-ет:

• повысить производительность и быстродействие; • обеспечить высокую надежность, характеризуемую безотказ-

ным функционированием в течение заданного времени или средним вре-менем безотказной работы;

• достигнуть высокой живучести, понимаемой как способности системы продолжать (с пониженным быстродействием) решение задач при отказах отдельных элементов;

• обеспечить с необходимой достоверностью получение пра-вильного результата решения;

• получить решение задачи в заданное время;

Page 28: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

28

• снизить стоимость использования средств вычислительной техники;

• снизать стоимость обработки информации. Основными архитектурными формами параллельных процессоров

являются: • архитектура с потоком управления: отдельный управляющий

процессор служит для посылки команд множеству процессорных элемен-тов, состоящих из процессора и связанной с ним оперативной памяти;

• архитектура с потоком данных – децентрализована с высокой степенью, параллельные команды посылаются вместе с данными во мно-гие одинаковые процессорные элементы;

• архитектура с управлением по запросам, в которой задачи раз-биваются на подзадачи, результаты выполнения которых снова объединя-ются для формирования окончательного результата. Команда, которую следует выполнять, определяется при необходимости использования ее ре-зультата активной командой.

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

• архитектура, объединяющая процессоры с памятью с исполь-зованием разнообразных соединений между ними (в виде шин, колец, ку-бов и др.).

Классификация вычислительных машин и систем Цифровые ВМ Цифровой компьютер – это вычислительная машина, оперирующая

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

Page 29: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

29

Аналоговые ВМ Аналоговый компьютер – это вычислительная машина, оперирую-

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

Гибридные ВМ Гибридная вычислительная машина, аналого-цифровая система – вид

гибридной вычислительной системы (ГВС), сочетающий в себе свойства аналоговых и цифровых вычислительных устройств

Специализированные ВМ Специализированная вычислительная машина – вычислительная ма-

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

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

Универсальные ВМ Универсальные вычислительные машины предназначены для реше-

ния широкого круга самых разнообразных математических задач. Универсальные вычислительные машины имеют сумматоры, постро-

енные по тем же арифметическим основам, что и счетчики электронных перфорационных вычислительных машин. Универсальная вычислительная машина состоит из ряда устройств – блоков, каждый из которых имеет специальное назначение.

Проблемно-ориентированные ВМ Проблемно-ориентированные ВМ служат для решения более узкого

круга задач, связанных, как правило, с управлением технологическими объектами; регистрацией, накоплением и обработкой относительно не-больших объемов данных; выполнением расчетов по относительно не-сложным алгоритмам; они обладают ограниченными по сравнению с уни-

Page 30: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

30

версальными ЭВМ аппаратными и программными ресурсами. К проблем-но-ориентированным ЭВМ можно отнести, в частности, всевозможные управляющие вычислительные комплексы.

Классификация ВС возможна по ряду признаков, в основу которых положен реализуемый параллелизм.

По режиму работы различают однопрограммные и мультипро-граммные ВС.

По режиму обслуживания различают: ВС с режимом индивидуально-го пользования, пакетной обработки, коллективного пользования.

В случае режима пакетной обработки подготовленные пользователем программы передаются обслуживающему систему персоналу и накапли-ваются во внешней памяти. При активизации система выполняет накоп-ленный пакет программ. В этом режиме работают однопрограммные и многопрограммные ВС.

Режим коллективного пользования предусматривает возможность одновременного доступа нескольких пользователей к ресурсам ВС.

Системы коллективного использования с квантованным обслужива-нием называются системами с разделением времени.

По особенностям территориального размещения частей системы различают:

• сосредоточенные ВС – комплекс компактно размещенного оборудования.

• ВС с телеобработкой содержат, расположенные на значитель-ном расстоянии от вычислительных средств терминалы ввода-вывода. Со-единение этих терминалов с центральными средствами ВС осуществляется по каналам связи.

• вычислительные сети представляет собой территориально рас-средоточенную многомашинную систему, состоящую из взаимодействую-щих ЭВМ, связанных между собой каналами передачи данных.

По степени распределения управляющих функций выделяют центра-лизованные с закреплением всех управляющих функций в одном элементе ВС и децентрализованные.

По назначению ВС делятся на универсальные и специализированные ВС. Универсальные ВС предназначены для решения широкого круга задач различного назначения. Специализированные ориентированы на решение заранее определенного класса задач.

По типу используемых ЭВМ (процессоров) различают:

Page 31: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

31

• однородные ВС, построенные из однотипных ЭВМ (процессо-ров).

• неоднородные – как правило, используют различные специали-зированные процессоры, например процессоры для операций над числами с плавающей точкой, для обработки десятичных чисел и др.

Перспективные направления развития В области средств вычислительной техники можно выделить следу-

ющие перспективные направления развития: • разработка новой микроэлектронной базы; • дальнейшая миниатюризация СБИС; • создание новых носителей информации; • разработки в области создания перспективных архитектур

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

В области телекоммуникаций перспективными направлениями яв-ляются:

• совершенствование оптоволоконных линий связи; • создание новой аппаратуры уплотнения (модуляция лазерного

луча); • создание и совершенствование Глобальных спутниковых си-

стем связи и навигации (GPS, ГЛОНАС, Бэйдоу). В области оргтехники и технических средств информационных си-

стем можно выделить следующие перспективы: • создание новых носителей, в том числе, использующих биоло-

гические принципы, и разработка методов доступа к банковским системам (идентификация, услуги карточек и т.д.);

• распознавание образов (идентификация) и т.д.; • создание систем идентификации на базе биологических прин-

ципов; • создание робототехники и ее широкое внедрение во все сферы

деятельности человека и т.д.

1.3 Операционны е системы

Системное программное обеспечение координирует работу различ-ных компонентов компьютера и играет роль посредника между приклад-

Page 32: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

32

ными программами и аппаратным обеспечением. Системное программное обеспечение, которое управляет работой компьютера, называется операци-онной системой – ОС (operating system – OS). К другому системному про-граммному обеспечению относятся программы трансляции, преобразую-щие команды языков программирования в исполняемый машинный код, а также различные утилиты (utilities) – программы для обслуживания ком-пьютера и периферийных устройств.

Функции операционной системы Функции операционной системы можно сравнить с обязанностями

главного менеджера. ОС решает, какие ресурсы компьютера будут исполь-зованы, какие программы будут запущены и в каком порядке будут следо-вать эти и другие операции для выполнения поставленной пользователем задачи.

ОС выполняет три основные функции: • распределяет и назначает использование ресурсов компьютера, • планирует использование ресурсов компьютера и время испол-

нения задач, • осуществляет текущий контроль работы компьютера. Распределение и назначение ОС распределяет ресурсы компьютера между приложениями, нахо-

дящимися в очереди на исполнение. Например, в число задач ОС входит выделение отдельной области памяти каждому запущенному приложению и необходимым ему данным, а также управление устройствами ввода-вывода (клавиатурой, принтером, монитором, сетевой картой и т.п.).

Планирование Как правило, компьютер выполняет несколько программ одновре-

менно. Каждая задача разбивается на множество «кусочков» или «пор-ций», которые компьютер обрабатывает, переключаясь между задачами. Тысячи таких порций должны выполняться различными устройствами компьютера – одной программе необходимо произвести расчет электрон-ной таблицы, второй – распечатать документ на принтере, третья обраща-ется к серверу организации, на котором хранится база данных и т.д. Задача ОС – скоординировать работу всех компонентов компьютера так, чтобы все приложения выполнялись как можно быстрее и эффективнее. Для это-го операционной системе необходимо осуществлять планирование исполь-зования различных ресурсов компьютера (прежде всего, ЦП, ОЗУ и жест-кого диска). Как правило, каждой задаче присваивается приоритет выпол-нения, в соответствии с которым и осуществляется планирование.

Page 33: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

33

Контроль ОС контролирует работу компьютера. Она отслеживает стадии вы-

полнения каждой задачи, а также может вести журнал учета – кто исполь-зует компьютер, какие программы были запущены, наблюдались ли случаи несанкционированного использования программ или данных. В любом случае, ОС любого компьютера – и мэйнфрейма и ПК – сама по себе очень большая программа. Поэтому в оперативной памяти всегда хранится лишь часть ОС, называемая ядром (kernel). Большая же часть ОС хранится на жестком диске. Когда какая-либо часть ОС необходима для выполнения данного приложения, эта часть подгружается с жесткого диска в ОЗУ. Диск, на котором хранится операционная система, называется системным (system disk).

Операционные системы можно классифицировать по: 1. Количеству одновременно работающих пользователей: однополь-

зовательские и многопользовательские. 2. Числу заданий, одновременно выполняемых под управлением ОС:

однозадачные и многозадачные. 3. Количеству поддерживаемых процессоров: однопроцессорные и

многопроцессорные. 4. Разрядности кода ОС: 8-, 16-, 32- и 64-разрядные. 5. Типу пользовательского интерфейса: командные (текстовые) и

объектно-ориентированные (графические). 6. Типу доступа пользователя к ресурсам ЭВМ: с пакетной обработ-

кой, с разделением времени и реального времени. 7. Типу использования ресурсов: локальные и сетевые. Многозадачность. Многозадачность (multitasking) – механизм, поз-

воляющий выполнять на компьютере несколько задач (tasks). В зависимо-сти от вида компьютера, применяется несколько видов реализации этого механизма. Рассмотрим тот, который применяется в ОС микрокомпьюте-ров. Система без поддержки многозадачности может выполнять только одно приложение в данный момент времени. Такой режим работы компь-ютера зачастую не позволяет полностью задействовать все его ресурсы – процессор может быть недогружен, большая часть оперативной памяти будет оставаться свободной, периферийные устройства будут ожидать ко-манд ввода или вывода информации. В случае же применения механизма многозадачности, можно запустить несколько приложений. Самое важное при реализации этого механизма – не позволять каким-либо двум прило-

Page 34: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

34

жениям одновременно задействовать одни и те же ресурсы компьютера – будь то ЦПУ, память или периферийные устройства.

В случае с оперативной памятью применяется разделение ее адрес-ного пространства на отдельные непересекающиеся области и выделение таких областей каждому запущенному приложению. Таким образом, полу-чается, что каждая отдельная программа работает в отведенном ей кусочке памяти и не конфликтует с другими программами. С разделением ресурсов процессора дело обстоит иначе. Как уже упоминалось, процессор может выполнять только одну инструкцию за цикл. Чтобы программы, находя-щиеся в ОЗУ могли выполняться вместе, каждой из них выделяется опре-деленный интервал времени работы процессора (около двух миллисекунд); при этом процессор переключается с одной программы на другую. Конеч-но, вам может показаться, что интервал времени ничтожно мал, но ведь процессор работает на уровне наносекунд и за две миллисекунды успевает выполнить немало работы. Пользователь не замечает, что компьютер об-рабатывает все программы по очереди – ему кажется, что все запущенные приложения выполняются одновременно. Кроме того, каждой программе, как вы помните, назначается приоритет. В первую очередь обрабатывают-ся команды программ с более высоким приоритетом; в случае равного приоритета инструкции приложений выполняются в порядке очередности; наивысший приоритет всегда имеет ядро операционной системы.

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

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

Page 35: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

35

ложение обработает задание на печать, этот процесс выполняется в так называемом фоновом режиме (background printing).

Виртуальная память. Как известно, адресное пространство – это размер памяти компьютера, которую система может использовать. Если у вашего компьютера 64 Мб ОЗУ, значит, компьютер может адресовать 64 Мб памяти. Механизм виртуальной памяти (virtual storage) позволяет вы-делить часть вторичной памяти (на жестком диске), чтобы в дальнейшем система рассматривала эту часть как продолжение первичной. В результа-те компьютер может адресовать больше памяти. Применение этого меха-низма, также как многозадачности и многопоточности, позволяют добить-ся существенного повышения эффективности работы компьютера. Из-за того, что размер первичной памяти ограничен, часть программного кода каждой из программ записывается на жесткий диск в так называемый файл подкачки (swap file), освобождая, таким образом, оперативную память для других программ. Однако следует помнить, что жесткие диски намного медленнее ОЗУ, поэтому размер первичной памяти должен быть достаточ-но большим.

Мультипроцессирование. Еще одним важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной об-работки – мультипроцессирование (SMP). Мультипроцессорная обработка – это способ организации вычислительного процесса в системах с несколь-кими процессорами, при котором несколько задач (процессов, потоков) могут одновременно выполняться на разных процессорах системы. ОС в данном случае должна обеспечивать балансировку нагрузки, чтобы дать работу каждому из процессоров. Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами.

В современных ОС введены функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.

Многопроцессорные ОС могут классифицироваться по способу ор-ганизации вычислительного процесса в системе с многопроцессорной ар-хитектурой: асимметричные ОС и симметричные ОС.

Асимметричная ОС целиком выполняется только на одном из про-цессоров системы, распределяя прикладные задачи по остальным процес-сорам.

Page 36: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

36

Симметричная ОС полностью децентрализована и использует все процессоры, разделяя их между системными и прикладными задачами.

Преобразование исходного кода При выполнении инструкций программ, написанных на таких языках

программирования как COBOL, FORTRAN или C, компьютеру необходи-мо преобразовать удобные для человеческого восприятия операторы в форму, понятную для компьютера. Системное программное обеспечение включает специальную программу, транслирующую (translate) текст про-грамм, написанных на различных языках программирования, в машинные коды, которые и выполняются компьютером. Этот вид программного обеспечения называется компилятором или интерпретатором. Текст про-граммы, написанный на языке программирования высокого уровня, до того как быть преобразованным в машинные коды, называется исходным кодом (source code). Компилятор (compiler) преобразует исходный код в машин-ные коды, называемые объектным кодом (object code), то есть программой на выходном языке транслятора. Перед выполнением протекает процесс редактирования связей (linkage editing), когда модули выходной програм-мы объединяются с другими модулями объектного кода, содержащими, например, данные. Результирующий загрузочный модуль – это команды, непосредственно выполняемые компьютером. На рисунке 1.3 показан про-цесс трансляции кода программы.

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

Page 37: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

37

Рисунок 1.3 – Процесс трансляции кода программы. По числу одновременно работающих пользователей ОС делятся на: • однопользовательские (MS-DOS, Windows 3.x, ранние версии

OS/2); • многопользовательские (UNIX, Windows NT и более поздние

версии). Главным отличием многопользовательских систем от однопользова-

тельских является наличие средств защиты информации каждого пользо-вателя от несанкционированного доступа других пользователей.

Следует заметить, что не всякая многозадачная система является многопользовательской, и не всякая однопользовательская ОС является однозадачной.

Особенности аппаратных платформ На свойства ОС непосредственное влияние оказывают аппаратные

средства, на которые она ориентирована. По типу аппаратуры различают операционные системы:

• персональных компьютеров, • мини-компьютеров,

Page 38: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

38

• мейнфреймов, • кластеров, • и сетей ЭВМ. Очевидно, что ОС большой машины является более сложной и

функциональной, чем ОС персонального компьютера. Так в ОС больших машин функции по планированию потока выполняемых задач реализуются путем использования сложных приоритетных дисциплин и требуют боль-шей вычислительной мощности, чем в ОС персональных компьютеров. Аналогично обстоит дело и с другими функциями.

Сетевые операционные системы Компьютерная сеть – это набор компьютеров, связанных коммуни-

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

Сетевая ОС играет роль интерфейса, экранирующего от пользователя все детали низкоуровневых программно-аппаратных средств сети.

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

Функциональные компоненты сетевой ОС: • средства управления локальными ресурсами (реализуют функции

ОС автономного компьютера); • сетевые средства:

− серверная часть ОС (средства для предоставления локальных ресурсов и услуг в общее пользование);

− клиентская часть ОС (средства запроса доступа к удаленным ресурсам и услугам);

− транспортные средства ОС (совместно с коммуникационной системой обеспечивают передачу сообщений между компью-терами): − формируют сообщения,

Page 39: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

39

− разбивают сообщения на части (пакеты, кадры), − преобразуют имена компьютеров в числовые адреса, − организуют надежную доставку сообщений, − определяют маршрут в сложной сети и др.

Первоначально сетевые ОС представляли собой совокупность уже существующей локальной ОС и надстроенной над ней сетевой оболочки. Современные сетевые ОС (более эффективный подход) с самого начала проектируются специально для работы в сети. Например, сетевая ОС LAN Manager является надстройкой над локальной ОС OS/2. ОС со встроенны-ми сетевыми службами – Windows NT, все версии UNIX, NetWare, OS/2 Warp.

Также выделяют одноранговые ОС, которые должны включать и серверные и клиентские компоненты сетевых служб, и серверные сетевые ОС. Примеры одноранговых ОС: LANtastic, Personal Ware, Windows for Workgroups, Windows NT Workstation, Windows 95/98.

Клиентские ОС организованы проще. Разработчики клиентских ОС уделяют особое внимание пользовательскому интерфейсу и клиентским частям сетевых служб. Наиболее простые клиентские ОС поддерживают только базовые сетевые службы – обычно файловую службу и службу пе-чати. Многие компании, разрабатывающие сетевые ОС, выпускают два ва-рианта одной и той же ОС. Один вариант предназначен для работы в каче-стве серверной ОС, другой – в качестве клиентской. Эти варианты чаще всего основаны на одном и том же базовом коде, но отличаются набором служб и утилит, а также параметрами конфигурации, некоторые из кото-рых устанавливаются по умолчанию и не поддаются изменению.

Например, ОС Windows NT выпускается в варианте для рабочей станции – Windows NT Workstation – и в варианте для выделенного сервера – Windows NT Server. Оба эти варианта включают клиентские и серверные части многих сетевых служб.

Наряду с ОС, ориентированными на совершенно определенный тип аппаратной платформы, существуют операционные системы, специально разработанные таким образом, чтобы они могли быть легко перенесены с компьютера одного типа на компьютер другого типа, так называемые мо-бильные ОС (аппаратно-независимые). Наиболее ярким примером такой ОС является популярная система UNIX.

В этих системах аппаратно-зависимые места тщательно локализова-ны, так что при переносе системы на новую платформу переписываются только они. Средством, облегчающем перенос остальной части ОС, явля-

Page 40: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

40

ется написание ее на машинно-независимом языке, например, на С, кото-рый и был разработан для программирования операционных систем.

Однозадачные ОС делают более простым и удобным процесс взаи-модействия пользователя с компьютером путем предоставления пользова-телю виртуальной машины и включают средства управления периферий-ными устройствами, средства управления файлами, средства поддержки диалога с пользователем. Многозадачные ОС дополнительно выполняют функции управления разделением ресурсов компьютера (процессоров, оперативной памяти, файлов и внешних устройств), совместно используе-мых различными задачами.

Среди многозадачных ОС в соответствии с используемыми режима-ми эксплуатации выделяют:

• системы пакетной обработки, обеспечивающие решение мак-симального числа задач в единицу времени за счет предварительного фор-мирования пакета заданий; каждое задание содержит требование к систем-ным ресурсам; из пакета заданий формируется множество одновременно выполняемых задач, которые выбираются ОС в соответствии с требовани-ями к ресурсам, так, чтобы обеспечивалась сбалансированная загрузка всех устройств вычислительной системы;

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

• системы реального времени, обеспечивающие получение ре-зультата (управляющего воздействия) через заранее заданный интервал времени после запуска программы. Они применяются для управления раз-личными техническими объектами (станок, спутник, научная эксперимен-тальная установка или технологический процесс), т.к. для этих объектов существует предельно допустимое время, в течение которого должна быть выполнена та или иная управляющая объектом программа, в противном случае может произойти авария. Эти системы осуществляют выбор про-

Page 41: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

41

граммы на выполнение, исходя из текущего состояния объекта или в соот-ветствии с расписанием плановых работ.

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

Многопользовательские системы в отличие от однопользовательских содержат средства защиты информации каждого пользователя от несанк-ционированного доступа других пользователей.

Графический интерфейс пользователя Интерфейс пользователя (user interface) – это средства взаимодей-

ствия компьютера с пользователем. Одна из основных "обязанностей" опе-рационной системы – обеспечивать и поддерживать диалог пользователя с компьютером, что и достигается с помощью пользовательского интерфей-са. У старых ОС, таких как DOS, интерфейс был построен на базе команд-ной строки (command prompt). Для выполнения какой-либо операции, пользователю нужно было набирать в командной строке соответствующие команды. Например, чтобы удалить документ «Текст», требовалось ввести следующую команду: delete c:\Текст.

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

Современные ОС обладают графическим пользовательским интер-фейсом. Каждый объект системы, будь то документ или программа, отоб-ражается графическим символом, называемым пиктограммой или значком. Большинство команд выполняется с помощью мыши – с помощью курсора объект выделяется, а затем пользователь одним движением руки выполня-ет команду. Такой интерфейс помогает пользователю при использовании многозадачного режима – каждая запущенная программа отображается на экране в отдельной области – окне (window). Также широко используется система всплывающих экранных меню и дополнительные диалоговые ок-на, чтобы облегчить пользователю ввод команд и данных.

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

Page 42: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

42

запоминание команд не только операционной системы, но еще и каждого приложения. Графический интерфейс позволяет выполнять основные опе-рации, такие как сохранение или печать документов одним и тем же спо-собом в любом приложении. Сложный набор команд может быть выпол-нен несколькими щелчками мыши по пиктограммам. Единственное ис-ключение в применении графического интерфейса – тонкая настройка си-стемы и некоторых приложений: здесь еще не все автоматизировано, и профессионалы часто обращаются к режиму командной строки.

Операционные системы микрокомпьютеров Программное обеспечение микрокомпьютеров, как и других машин,

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

В таблице 1.3 приведены некоторые характеристики наиболее рас-пространенных ОС. Как видите, среди них нет ни одной операционной си-стемы с чисто командным интерфейсом, и это неудивительно, так как эпо-ха интерфейсов, основанных на командной строке, медленно, но верно уходит в прошлое.

Таблица 1.3 – Некоторые характеристики наиболее распространенных ОС

Название

Поддержка функций

Применение Многоза-дачность

Многопо-точность

Графиче-ский ин-терфейс

Много-процес-

сорность Windows 98 Есть Есть Есть Нет ПК, рабочие станции Windows 2000 и выше

Есть Есть Есть Есть ПК, рабочие станции, серверы, кластеры серверов

System 7 Есть Есть Есть Нет ПК Macintosh фирмы Apple

Unix Есть Есть Есть Есть ПК, рабочие станции, серверы, кластеры серверов, миником-пьютеры

Linux Есть Есть Есть Есть ПК, рабочие станции, серверы

Первые две строки таблицы занимают две ОС, разработанные ком-

панией Microsoft, признанным лидером в создании ОС и приложений.

Page 43: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

43

Наиболее известные ОС – это DOS; OS/2; Windows а также UNIX-системы, среди которых стоит отдельно выделить Linux и Mac OS (OS X) разработки Apple. На сегодняшний день наиболее распространены среди персональных компьютеров ОС семейства Windows (см. таблицу 1.4).

Операционная система Windows ОС Windows – создана для работы с персональными компьютерами,

является многозадачной и многопоточной операционной системой с гра-фическим интерфейсом. ОС семейства Windows разработаны фирмой Microsoft. Они образуют две ветви: локальные ОС (Windows 95/98/Millennium) и сетевые ОС (Windows NT/2000). ОС Windows XP и бо-лее поздние версии интегрирует особенности обеих ветвей. Первая в этой серии Windows 95 заменила операционную систему MS-DOS (Microsoft Disk Operating System – дисковая операционная система) с командным ин-терфейсом и программу-оболочку Windows 3.1, разработанную Microsoft как надстройку над операционной системой MS-DOS.

Таблица 1.4 – Распространенность различных ОС среди пользователей ПК (по данным Hi-News.ru 8.03.2016)

Windows 7 52,34% Windows 10 12,82% Windows XP 11,24% Windows 8.1 9,83% Mac OS X 10.11 3,72% Windows 8 2,43% Mac OS X 10.10 2,20% Linux 1,78% Windows Vista 1,66% Mac OS X 10.9 0,87% Mac OS X 10.6 0,34% Mac OS X 10.8 0,28% Mac OS X 10.7 0,28% Windows NT 0,12% Mac OS X 10.5 0,05% Mac OS X 10.4 0,02% Windows 2000 0,01% Windows 98 0,01%

Page 44: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

44

Графический интерфейс Windows – простое и удобное средство, обеспечивающее выполнение пользователем необходимых действий при работе с программами, данными, устройствами. Универсальную основу интерфейса образуют окна. Объектно-ориентированный подход – отличи-тельная особенность интерфейса Windows.

В 2001 Microsoft выпускает Windows XP, снискавшую в итоге колос-сальную популярность и признание пользователей. Целых пять лет пона-добилось компании чтобы вывести на рынок следующую систему – Windows Vista. Вышедшая в 2009 Windows 7 исправила основные ошибки предшественника и предложила ряд небольших, но удачных нововведений.

Спустя ещё три года свет увидела Windows 8, принёсшая с собой плиточный интерфейс, оптимизированный для сенсорного управления, ко-торый вызвал массу споров среди пользователей. В 2013 Microsoft пред-ставляет Windows 8.1 – крупное, но при этом бесплатное обновление для выпущенной ранее ОС. В 2014 корпорация возвращается к меню «Пуск» и оконную концепцию интерфейса, анонсируя Windows 10. Летом 2015 года выходит финальная версия этой новой системы.

Mac OS Операционная система Mac, известная ещё как Макинтош

(Macintosh Operating System), была создана компанией Apple в 1984 году. Именно данная ОС первой дала пользователям возможность управлять компьютером при помощи компьютерной мыши. В ней стал использовать-ся оконный интерфейс для организации информации; именно ОС Mac вве-ла в наш лексикон такие метафоры, как "папка" и "файл". Изначально, Mac OS была совместима исключительно с компьютерами Macintosh. Сейчас, она совместима с архитектурой РРС и х86, но официально компания Apple разрешает установку Mac только на компьютерах собственного производ-ства: iMac и MacBook. Традиционно компьютеры фирмы Apple использу-ются в издательской деятельности, поэтому операционные системы Mac имеют хороший графический интерфейс и качественную поддержку муль-тимедиа.

В настоящее время эта ОС является второй наиболее часто использу-емой после Windows. Mac OS в отличие от Windows основана на Unix. Та-ким образом, OS X считается частью семейства Unix ОС, как и Linux.

Первая MacOS появилась в 1984 году, и именовалась очень просто: System 1.0. В процессе своего развития MacOS прошла путь от полной не-стабильности до высокой надежности, многозадачности и т.д. С самого начала было запланировано эволюционное развитие Mac с незначитель-

Page 45: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

45

ными отличиями в интерфейсе. Именно поэтому можно встретить такие версии данной операционной системы, как Mac OS: Cheetah, Puma, Jaguar, Panther, Tiger, Leopard, Snow Leopard, Lion, Mountain Lion.

Диапазон пользовательских настроек весьма велик. Системные настройки, не столь масштабные как в Windows, но очень функциональ-ные: все настройки разбиты на категории и четко разграничены.

Безопасность MacOS Lion основывается на том, что эта ОС была разработана уже в эпоху сети интернет, а потому все возможные проблемы здесь предусмотрены. Файервол и антивирус тут встроенный. Учитывая, распространенность этой ОС, вирусов для MacOS мало.

ОС UNIX ОС UNIX разработана в Bell Laboratories в 1969 г. для миникомпью-

теров, но в последствии была успешно перенесена на платформу микро-ЭВМ. Это мощная и очень надежная операционная система, которая при-меняется в основном в качестве ОС для серверов больших локальных се-тей, кластеров серверов, серверов Интернет и серверов баз данных. Благо-даря открытой архитектуре – возможности изменять исходный код ОС – UNIX может работать практически на любой аппаратной платформе. Именно этим объясняется большое количество различных модификаций UNIX (XENIX, IRIX и др.). Программисты, разрабатывающие приложения для UNIX, также придерживаются стандарта открытой архитектуры, что позволяет осуществлять перенос приложений, сделав небольшие измене-ния в исходном коде. Однако, UNIX очень сложна в установке, а еще больше – в настройке. Она еще требовательнее к аппаратным ресурсам, чем Windows 2000 и Windows NT.

Основное отличие UNIX-подобных систем от других ОС заключает-ся в том, что это изначально многопользовательские многозадачные си-стемы. То есть в один и тот же момент времени сразу множество людей может выполнять множество вычислительных задач (процессов). Даже по-пулярную во всём мире систему Microsoft Windows нельзя назвать полно-ценной многопользовательской системой, так как кроме как на некоторых серверных версиях, в один и тот же момент за одним компьютером с Windows может работать только один человек. В Unix может работать сра-зу много людей, при этом каждый из них может выполнять множество раз-личных вычислительных процессов, которые будут использовать ресурсы именно этого компьютера.

Page 46: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

46

Вторая заслуга Unix в её мультиплатформенности. Ядро системы написано таким образом, что его легко можно приспособить практически под любой микропроцессор.

В Unix развит пользовательский интерфейс командной строки, в комплекте с системой идет множество полезных утилит, которые можно использовать с командной строки, а скрипты позволяют автоматизировать множество задач. Работа с командной строки намного эффективнее, чем работа на мышке, но нужно помнить команды, ключи и другие параметры команд.

До недавнего времени у этой системы не было собственного графи-ческого интерфейса, но даже появление такового не облегчило работу пользователям: все-таки, UNIX остается системой для инженеров и насто-ящих профессионалов.

Linux – самая молодая из описанных здесь операционных систем. Linux была разработана в 1991 году студентом Линусом Торвальдсом, и представляет собой UNIX-подобную ОС для микрокомпьютеров. Основ-ное отличие Linux от UNIX в том, что Linux несколько проще и, самое главное, является абсолютно бесплатной. Благодаря открытой архитектуре, которую Linux также поддерживает, свой вклад в дальнейшую разработку этой ОС внесли тысячи программистов всего мира. Сегодня Linux стано-вится конкурентом операционных систем Microsoft, хотя процедура ин-сталляции и настройки еще далека до совершенства.

Дистрибутив – это сама ОС + набор пакетов программ для Linux. Стоит также упомянуть, что все это поставляется с исходными текстами, и любую программу, написанную под Linux, можно переделать под себя. Это же позволяет перенести любую программу на любую платформу – Intel PC, Macintosh.

В Linux нет разделения на диски С, D, и процесс общения с устрой-ствами очень удобен. Все устройства имеют собственный системный файл, все диски подключаются к одной файловой системе и выглядит это все как бы монолитно, едино. Четкая структура каталогов позволяет находить лю-бую информацию мгновенно. Для файлов библиотек – свой каталог, для запускаемых файлов – свой, для файлов с настройками – свой, для файлов устройств – свой, и так далее.

Модульность ядра позволяет подключать любые сервисы ОС без пе-резагрузки компьютера. Кроме того, вы можете переделать само ядро ОС, благо исходные тексты ядра также имеются в любом дистрибутиве.

Page 47: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

47

Linux поддерживает большую часть популярного Unix'овского про-граммного обеспечения, включая графическую систему X Window. Требо-вания к аппаратной части, как и у всех Unix-систем, у Linux минимальны. Так для Linux Mint хватает 512 Мб оперативной памяти, интегрированно-го видеоадаптера и запаса памяти на жестком диске в 5 Гб. Также потребу-ется DVD или USB. 32-битная операционная система отлично работает как на 32-разрядном, так и на 64-разрядном процессоре.

Графический интерфейс последних версий Linux не предполагает отказа от командной строки и никогда ей не противопоставлялся, как в Windows. Многие графические приложения могут управляться с команд-ной строки, сочетая преимущества обоих методов.

В комплект данной ОС входят: • браузеры (в частности, Mozilla Firefox); • аналог программного пакета MS Office, позволяющего сохра-

нять документы в различных форматах (от txt и до docx); • программы для прослушивания музыки, просмотра видео и

изображений, а также для редактирования последних; • программы для онлайн общения (Jabber) и т.д.

1.4 Я зы ки и технологии программирования

Программа – это конечная упорядоченная последовательность ин-струкций-команд для ЭВМ, записанная на некотором языке программиро-вания, понятном компьютеру, выполнение которых реализует алгоритм. Программирование (кодирование) – это перевод алгоритма на язык понят-ных ЭВМ команд.

Язык программирования – это совокупность средств и правил представления различных алгоритмов в виде, пригодном для его выполне-ния компьютером и не требующем ввода численных кодов команд и адре-сов ячеек памяти. Большинство языков программирования, используемых при решении задач на ЭВМ, являются алгоритмическими языками.

1.4.1 И стория развития язы ков программирования

Одной из самых революционных идей приведших к созданию авто-матических цифровых вычислительных машин, была высказанная в 20-х годах 19 века Чарльзом Бебиджем мысль о предварительной записи поряд-ка действия машины для последующей автоматической реализации вычис-

Page 48: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

48

лений – программе. И, хотя использованная Бебиджем запись программы на перфокартах, придуманная для управления такими станками француз-ским изобретателем Жозефом Мари Жаккаром, технически не имеет ниче-го общего с современными приемами хранения программ в ПК, принцип здесь по существу один. С этого момента начинается история программи-рования.

Аду Левлейс, современницу Бебиджа, называют первым в мире про-граммистом. Она теоретически разработала некоторые приемы управления последовательностью вычислений, которые используются в программиро-вании и сейчас. Ею же была описана и одна из важнейших конструкций практически любого современного языка программирования – цикл.

Машинный код. Ассемблер Первые программы писались на машинном языке, т.к. для ЭВМ того

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

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

Для каждого типа ЭВМ существует свой язык символического коди-рования, так как его структура, обозначения, операции и т.д. определяются структурой конкретной ЭВМ. Программы на ассемблере зависят от харак-теристик конкретного процессора, поэтому его называют машинно-ориентированным языком.

Page 49: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

49

«Слова» на машинном языке называются инструкции, каждая из ко-торых представляет собой одно элементарное действие для центрального процессора, такое, например, как считывание информации из ячейки памя-ти. Каждая модель процессора имеет свой собственный набор машинных команд, хотя большинство из них совпадает

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

Ассемблеры на сегодняшний день продолжают использоваться (в си-стемном программировании – низкоуровневые интерфейсы операционных систем, части драйверов и др.).

Языки высокого уровня Вскоре возникла необходимость создания новых, более совершен-

ных языков программирования, которые бы напоминали естественные языки и позволяли бы не работать напрямую с машинными командами. Они стали называться языками высокого уровня.

Такие языки ориентированы на описание алгоритмов. Поэтому их еще называют алгоритмическими языками. Их преимущество заключается в большей наглядности и независимости от конкретного компьютера.

Поскольку компьютер распознает только машинный язык, програм-ма на алгоритмическом языке перед выполнением переводится на этот язык с помощью специальной программы транслятора. В программе трансляторе «заложены» все правила алгоритмического языка и способы преобразования различных его конструкции на машинный язык. Суще-ствуют два способа трансляции:

Компиляция (Compilation) – метод выполнения программы, при ко-тором инструкции программы выполняются лишь тогда, когда собран пе-ревод всего текста программы.

Интерпретация (Interpretation) – метод выполнения программы, при котором инструкции программы переводятся и сразу выполняются.

Работа с программой, написанной на алгоритмическом языке, упро-щается за счет относительной простоты написания, удобной читаемости, возможности ее коррекции. Однако при этом очевидны и недостатки: до-полнительное время и память на трансляцию.

Page 50: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

50

Структурное программирование В 1954 году началась разработка первого компилятора языка высоко-

го уровня. По прошествии 2-х лет был создан язык Fortran (от англ. FORmula TRANslator – Переводчик формул). В языке имелись средства, значительно упрощающие разработку, однако программирование на Fortran представляло собой задачу непростую: легко понимаемый в корот-ких программах, этот язык становился нечитаемым, когда дело касалось больших программ. Однако этот язык имел успех, и было выпущено много его версий.

Проблема решилась после изобретения языков структурного про-граммирования: появились программные блоки, независимые подпро-граммы, поддержка рекурсии и локальных переменных, отсутствие опера-тора безусловного перехода (GoTo) – в общем, возможности разбиения программы на составляющие элементы.

В течение десятилетия было создано достаточно большое количество новых языков: Algol (1958) – для записи алгоритмов, составленных из обособленных блоков; Cobol (1959) – для массовой обработки данных в сферах управления и бизнеса; Basic (1965) – для написания простых про-грамм, обучению азам программирования. Однако совсем немногие из них были структурированными. Также было создано много других специали-зированных языков: Lisp, Prolog, Forth, PL/1...

Особое внимание заслуживает язык Pascal (1970) (назван в честь ученого Блеза Паскаля), который можно было использовать как для обуче-ния, так и для решения задач различной сложности. Программы на нем легко читались, что позволяло быстро находить и исправлять ошибки, также он обладал хорошо выраженной структурированностью. Это приве-ло к его широкой распространенности, и даже сейчас его все еще активно используют в учебных заведениях.

Очень успешным шагом стал появившийся в 1972 году язык C. Он сочетал в себе достижения многих языков, а также обладал большим коли-чеством различных нововведений. Широкие возможности, структуриро-ванность, а также относительная простота изучения позволили ему быстро завоевать признание и стать одним из основных языков.

Хотя использование структурного программирования дало отличные результаты, было все еще проблематично писать длинные и сложные про-граммы. Следовательно был нужен новый подход к поставленной задаче.

Объектно-ориентированное программирование (ООП)

Page 51: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

51

В 70-х были созданы основы нового Объектно-ориентированного программирования. ООП возникло в результате развития идеологии про-цедурного программирования, где данные и подпрограммы (процедуры, функции) их обработки формально не связаны. Основными понятиями ООП являются:

• инкапсуляция – объединение свойств (данных) и методов (подро-грамм) в классе с целью сокрытия данных объекта от остальной програм-мы и обеспечения целостности и независимоти объекта. (изменять свой-ства объекта иожно только через специальные методы класса)

• наследование – механизм языка, позволяющий описать новый класс на основе уже существующего класса (или классов) с добавлением новых свойств и методов.

• полиморфизм – свойство системы использовать объекты с одина-ковым интерфейсом без информации о типе и внутренней структуре объ-екта.

Первым языком программирования, в котором были предложены принципы объектной ориентированности, была Симула. В момент его по-явления в 1967 году в нём были предложены революционные идеи: объек-ты, классы, виртуальные методы и т.д., но это всё не было достойно оцене-но современниками. Тем не менее, большинство концепций были развиты Аланом Кэем и Дэном Ингаллсом в языке Smalltalk. Именно он стал пер-вым широко распространённым объектно-ориентированным языком про-граммирования.

В настоящее время количество прикладных языков программирова-ния, реализующих объектно-ориентированную парадигму, является наибольшим по отношению к другим парадигмам. Основные языки, под-держивающие концепцию ООП: C++, C#, Object Pascal (Delphi), Java...

Развитие Интернета С появлением технологии World Wide Web Интернет приобрел

большую популярность. Было создано много вспомогательных языков для работы с Интернетом, оформления сайтов, доступа к ресурсам и т.д.

Повсеместно распространен интерпретируемый, простой и легко пе-реносимый на другие платформы язык Perl. Он используется для написа-ния различных по сложности приложений и CGI-скриптов. Значительную роль в развитии и функционировании Интернета играет язык Java.

В 70-х годах появился язык структурированных запросов SQL, со-зданный для доступа и манипуляций с базами данных.

Page 52: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

52

Для написания основы страниц Web-сайтов используется HTML (Язык разметки гипертекстов). Он обладает всеми возможностями размет-ки и оформления текста, графики. Для большей привлекательности и функциональности сайта используются:

Сценарии, написанные на JavaScript, выполняются на Web-браузере пользователя. В основном используются для улучшения внешнего вида сайта и решения мелких задач.

Сценарии, написанные на языке PHP, выполняются на стороне сер-вера и посылающие в браузер пользователя уже обработанную информа-цию. Используются для создания динамических HTML-страниц, гостевых книг, форумов, опросов.

CGI-скрипты, написанные преимущественно на Perl, C/C++, выпол-няются на стороне сервера и зависящие от конкретных действий пользова-теля. Имеют назначение сходное со сценариями PHP.

1.4.2 С равнительны е характеристики, назначение и возможности современны х язы ков программирования

Язык программирования – это система обозначений, служащая для точного описания программ или алгоритмов для ЭВМ. Языки программи-рования являются искусственными языками. От естественных языков они отличаются ограниченным числом «слов» и очень строгими правилами за-писи команд (операторов). Поэтому при применении их по назначению они не допускают свободного толкования выражений, характерного для естественного языка.

Fortran (Фортран). Это первый компилируемый язык, созданный в 50-е годы. В Фортране впервые был реализован ряд важнейших понятий программирования. Удобство создания программ было положено в основу возможностей языка. Фортран продолжает активно использоваться во мно-гих организациях.

Cobol (Кобол). Это компилируемый язык для применения в эконо-мической области и решения бизнес – задач, разработанный в начале 60-х годов. В Коболе были реализованы очень мощные средства работы с большими объемами данных, хранящимися на различных внешних носи-телях.

Algol (Алгол). Компилируемый язык, созданный в 1960г. В 1968г. была создана версия Алгол 68, по своим возможностям и сегодня опере-жающая многие языки программирования.

Page 53: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

53

Basic. Он был разработан в 1963 году профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени. Язык предназначался для обучения программированию и получил широкое распространение в виде различных диалектов, прежде всего как язык для домашних компьютеров. При проектировании языка использовались следующие восемь принципов:

1. Быть простым в использовании для начинающих. 2. Быть языком программирования общего назначения. 3. Предоставлять возможность расширения функциональности, до-

ступную опытным программистам. 4. Быть интерактивным. 5. Предоставлять ясные сообщения об ошибках. 6. Быстро работать на небольших программах. 7. Не требовать понимания работы аппаратного обеспечения. 8. Защищать пользователя от операционной системы. Язык был основан частично на Фортран II и частично на Алгол-60, с

добавлениями, делающими его удобным для работы в режиме разделения времени и, позднее, обработки текста и матричной арифметики. Синтаксис языка напоминает Fortran, и многие элементы – явные заимствования из него. Язык задумывался для обучения, поэтому его конструкции макси-мально просты. Как и в других языках программирования, ключевые слова взяты из английского языка. Основных типов данных два: строки и числа. Объявление переменных не требует специальной секции (в отличие, например, от Паскаля). Объявление переменной – это первое её использо-вание.

C Sharp – C# (произносится «си шарп») – объектно-ориентированный язык программирования. Разработан в 1998-2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft.NET Framework. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибу-ты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. Переняв многое от своих предшественников – языков C++, Java, Delphi. С#, опираясь на практику их использования, исключает неко-торые модели, зарекомендовавшие себя как проблематичные при разра-

Page 54: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

54

ботке программных систем, например, C# не поддерживает множественное наследование классов (в отличие от C++).

Язык программирования C++ – компилируемый статически типи-зированный язык программирования общего назначения. Поддерживает разные парадигмы программирования, но, в сравнении с его предшествен-ником – языком Си, – наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «Си++» происходит от Си, в котором унарный оператор ++ обозначает инкремент переменной. В 1990-х годах язык стал одним из наиболее широко приме-няемых языков программирования общего назначения. При создании Си++ стремились сохранить совместимость с языком Си. Большинство программ на Си будут исправно работать и с компилятором Си++. Си++ имеет син-таксис, основанный на синтаксисе Си.

Достоинства C++ – чрезвычайно мощный язык, содержащий сред-ства создания эффективных программ практически любого назначения, от низкоуровневых утилит и драйверов до сложных программных комплексов самого различного назначения. В частности: высокая совместимость с язы-ком С, позволяющая использовать весь существующий С-код (код С может быть с минимальными переделками скомпилирован компилятором С++; библиотеки, написанные на С, обычно могут быть вызваны из С++ непо-средственно без каких-либо дополнительных затрат, в том числе и на уровне функций обратного вызова, позволяя библиотекам, написанным на С, вызывать код, написанный на С++). Поддерживаются различные стили и технологии программирования, включая традиционное директивное про-граммирование, ООП, обобщенное программирование, метапрограммиро-вание (шаблоны, макросы). Имеется возможность работы на низком уровне с памятью, адресами, портами. Возможность создания обобщённых контейнеров и алгоритмов для разных типов данных, их специализация и вычисления на этапе компиляции, используя шаблоны. Кроссплатформен-ность. Доступны компиляторы для большого количества платформ, на языке C++ разрабатывают программы для самых различных платформ и систем. Эффективность. Язык спроектирован так, чтобы дать программи-сту максимальный контроль над всеми аспектами структуры и порядка ис-полнения программы.

Недостатки. Отчасти недостатки C++ унаследованы от языка-предка – Си, – и вызваны изначально заданным требованием возможно большей совместимости с Си. Это такие недостатки, как: синтаксис, провоцирую-щий ошибки; препроцессор, унаследованный от С, очень примитивен.

Page 55: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

55

Плохая поддержка модульности (по сути, в классическом Си модульность на уровне языка отсутствует, её обеспечение переложено на компонов-щик). Подключение интерфейса внешнего модуля через препроцессорную вставку заголовочного файла (#include) серьёзно замедляет компиляцию при подключении большого количества модулей (потому что результиру-ющий файл, который обрабатывается компилятором, оказывается очень велик).

Паскаль. Появившийся в 1972 году язык Паскаль был назван так в честь великого французского математика XVII века, изобретателя первой в мире арифметической машины Блеза Паскаля. Этот язык был создан швейцарским учёным, специалистом в области информатики Никлаусом Виртом как язык для обучения методам программирования. Паскаль – это язык программирования общего назначения. Особенностями языка явля-ются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мне-нию Н. Вирта, язык должен способствовать дисциплинированию програм-мирования, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис интуитивно понятен даже при первом знакомстве с языком. Язык Паскаль учит не только тому, как правильно написать программу, но и тому, как правильно разработать метод решения задачи, подобрать способы пред-ставления и организации данных, используемых в задаче. С 1983 года язык Паскаль введён в учебные курсы информатики средних школ США.

Delphi (Дельфи) – среда разработки, использует язык программиро-вания Delphi (начиная с 7 версии язык в среде именуется Delphi, ранее – Object Pascal), разработанный фирмой Borland и изначально реализован-ный в её пакете Borland Delphi, от которого и получил в 2003 году своё нынешнее название. Object Pascal – по сути, является наследником языка Pascal с объектно-ориентированными расширениями. Delphi обеспечивает визуальное проектирование пользовательского интерфейса, имеет разви-тый объектно-ориентированный язык Object Pascal (позже переименован-ный в Delphi) и уникальные по своей простоте и мощи средства доступа к базам данных. Язык Delphi по возможностям значительно превзошел язык Basic и даже в чем-то язык C++, но при этом он оказался весьма надежным и легким в изучении (особенно в сравнении с языком C++). В результате, среда Delphi позволила программистам легко создавать собственные ком-поненты и строить из них профессиональные программы.

Page 56: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

56

Java – объектно-ориентированный язык программирования, разрабо-танный компанией Sun Microsystems – 23 мая 1995 года. Программы на Java транслируются в байт-код, выполняемый виртуальной машиной Java (JVM) – программой, обрабатывающей байтовый код и передающей ин-струкции оборудованию как интерпретатор. Достоинство подобного спо-соба выполнения программ – в полной независимости байт-кода от опера-ционной системы и оборудования, что позволяет выполнять Java-приложения на любом устройстве, для которого существует соответству-ющая виртуальная машина. Другой важной особенностью технологии Java является гибкая система безопасности благодаря тому, что исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соеди-нения с другим компьютером) вызывают немедленное прерывание. Часто к недостаткам концепции виртуальной машины относят то, что исполнение байт-кода виртуальной машиной может снижать производительность про-грамм и алгоритмов, реализованных на языке Java. В последнее время был внесен ряд усовершенствований, которые несколько увеличили скорость выполнения программ на Java: применение технологии трансляции байт-кода в машинный код непосредственно во время работы программы (JIT-технология) с возможностью сохранения версий класса в машинном коде, широкое использование платформенно-ориентированного кода (native-код) в стандартных библиотеках, аппаратные средства, обеспечивающие уско-ренную обработку байт-кода (например, технология Jazelle, поддерживае-мая некоторыми процессорами фирмы ARM).

Основные возможности: автоматическое управление памятью; рас-ширенные возможности обработки исключительных ситуаций; богатый набор средств фильтрации ввода/вывода; набор стандартных коллекций, таких как массив, список, стек и т. п.; наличие простых средств создания сетевых приложений (в том числе с использованием протокола RMI); встроенные в язык средства создания многопоточных приложений; парал-лельное выполнение программ.

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

Page 57: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

57

личные сведения из справочников, картотек, журналов бухгалтерского учета и т. д. Для этого был создан структурированный язык запросов SQL (Structured Query Language). Он основан на мощной математической тео-рии и позволяет выполнять эффективную обработку баз данных, манипу-лируя не отдельными записями, а группами записей.

Для управления большими базами данных и их эффективной обра-ботки разработаны СУБД (Системы Управления Базами Данных). Практи-чески в каждой СУБД помимо поддержки языка SQL имеется свой уни-кальный язык, ориентированный на особенности этой СУБД и не перено-симый на другие системы. Сегодня в мире насчитывается пять ведущих производителей СУБД: Microsoft (SQL Server), IBM (DB2), Oracle, Software AG (Adabas), Informix и Sybase. Их продукты нацелены на поддержку од-новременной работы тысяч пользователей в сети, а базы данных могут храниться в распределенном виде на нескольких серверах.

С появлением персональных компьютеров были созданы так называ-емые настольные СУБД. Родоначальником современных языков програм-мирования баз данных для ПК принято считать СУБД dBase II, язык кото-рой был интерпретируемым. Затем для него были созданы компиляторы, появились СУБД FoxPro и Clipper, поддерживающие диалекты этого язы-ка. Сегодня похожие, но несовместимые версии языков семейства dBase реализованы в продуктах Visual FoxPro фирмы Microsoft и Visual dBase фирмы Inprise.

1.4.3 Общая характеристика технологии создания программного обеспечения

Рассмотрим этапы разработки программ (рисунок 1.4).

Постановказадачи

Математическоеописание

Разработка(выбор и

адаптация)алгоритма

Составление(адаптация)программы

Тестированиеи отладка

программы

Приемо-сдаточныеиспытания

Опытнаяэксплуатация

Промышленнаяэксплуатация

Рисунок 1.4 – Этапы разработки программного обеспечения.

Page 58: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

58

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

Особое внимание в процессе постановки задачи уделяется детально-му описанию входной, выходной (результатной) и межуточной информа-ции.

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

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

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

Третий этап технологического процесса подготовки решения задач ЭВМ представляет собой алгоритмизацию ее решения, т.е. разработку

Page 59: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

59

оригинального или адаптацию (уточнение и корректировку) уже известно-го алгоритма.

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

Любой алгоритм обладает следующими важными свойствами: Де-терминированностью, массовостью, результатностью и дискретностью.

Детерминированность алгоритма (определенность, однозначность) – свойство, определяющее однозначность результата работы алгоритма при одних и тех же исходных данных. Это означает, что набор указаний алгоритма должен быть однозначно и точно понят любым исполнителем.

Массовость алгоритма – свойство, определяющее пригодность ис-пользования алгоритма для решения множества задач данного класса. Оно предполагает возможность варьирования исходными данными в опреде-ленных пределах. Свойство массовости алгоритма является определяющим фактором, обеспечивающим экономическую эффективность решения задач на ЭВМ, так как для задач, решение которых осуществляется один раз, це-лесообразность использования ЭВМ, как правило, диктуется внеэкономи-ческими категориями.

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

Дискретность алгоритма – свойство, означающее возможность разбиения определенного алгоритмического процесса на отдельные эле-ментарные действия.

Таким образом, алгоритм дает возможность чисто механически ре-шать любую задачу из некоторого класса однотипных задач.

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

Page 60: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

60

зующих алгоритм, отражается посредством конкретного языка программи-рования.

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

Тестирование представляет собой совокупность действий, назна-ченных для демонстрации правильности работы программы в заданных диапазонах изменения внешних условий и режимов эксплуатации про-граммы. Цель тестирования заключается в демонстрации отсутствия (или выявлении) ошибок в разработанных программах на заранее подготовлен-ном наборе контрольных примеров.

Процессу тестирования сопутствует понятие «отладка», которое подразумевает совокупность действий, направленных на устранение оши-бок в программах, начиная с момента обнаружения фактов ошибочной ра-боты программы и завершая устранением причин их возникновения.

По своему характеру (причине возникновения) ошибки в программах делятся на синтаксические и логические.

Синтаксические ошибки в программе представляют собой некор-ректную запись отдельных языковых конструкций с точки зрения правил их представления для выбранного языка программирования. (ошибки вы-являются автоматически)

Далее проверяется логика работы программы на исходных данных. При этом возможны следующие основные формы проявления логических ошибок:

в какой-то момент программа не может продолжать работу (воз-никает программное прерывание, обычно сопровождающееся указанием места в программе, где оно произошло);

программа работает, но не выдает всех запланированных ре-зультатов и не выходит на останов (происходит ее «зацикливание»);

программа выдает результаты и завершает свою работу, но они полностью или частично не совпадают с контрольными.

После выявления логических ошибок и устранения причин их воз-никновения в программу вносятся соответствующие исправления и отлад-ка продолжается.

Программа считается отлаженной, если она безошибочно выполня-ется на достаточно представительном наборе тестовых данных, обеспечи-вающих проверку всех ее участков (ветвей).

Процесс тестирования и отладки программ имеет итерационный ха-рактер и считается одним из наиболее трудоемких этапов процесса разра-

Page 61: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

61

ботки программ. По оценкам специалистов, он может составлять от 30 до 50% в общей структуре затрат времени на разработку проектов и зависит от объема и логической сложности разрабатываемы программных ком-плексов.

Для сокращения затрат на проведение тестирования и отладки в настоящее время широко применяются специальные программные сред-ства тестирования (например, генераторы тестовых данных) и приемы от-ладки (например, метод трассировки программ, позволяющий выявлять, все ли ветви программы были задействованы при решении задачи с задан-ными наборами исходных данных).

После завершения процесса тестирования и отладки программные средства вместе с сопроводительной документацией передаются пользова-телю для эксплуатации.

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

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

В процессе внедрения и эксплуатации прикладных программных средств могут выявляться различного рода ошибки, не обнаруженные раз-работчиком при тестировании и отладке программных средств. Поэтому при реализации достаточно сложных и ответственных программных ком-плексов по согласованию пользователя (заказчика) с разработчиком этап эксплуатации программных средств может быть разбит на два подэтапа: экспериментальная (опытная) и промышленная эксплуатация.

Смысл экспериментальной эксплуатации заключается во внедрении разработанных программных средств на объекте заказчика с целью про-

Page 62: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

62

верки их работоспособности и удобства работы пользователей при реше-нии реальных задач в течение достаточно длительного периода времени (обычно не менее года) Только после завершения периода эксперимен-тальной эксплуатации и устранения выявленных при этом ошибок и учета замечаний программное средство передается в промышленную эксплуата-цию.

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

Описанная схема технологического процесса разработки прикладных программных средств отражает их «жизненный цикл», т.е. временной ин-тервал с момента зарождения программы до момента полного отказа от ее эксплуатации.

1.4.4 П роцедурное, объектно-ориентированное и логическое программирование

В настоящее время выдел несколько типов языков программирова-ния. Одним из важнейших признаков их классификации – принадлежность их к одному из стилей, основными из которых являются следующие стили:

1) процедурный, 2) логический, 3) объектно-ориентированный. 1. Процедурное программирование является отражением архитек-

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

Процедурные языки характеризуются следующими особенностями:

Page 63: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

63

1) необходимостью явного управления памятью, в частности, описа-нием переменных;

2) малой пригодностью для символьных вычислений; 3) отсутствием строгой математической основы; 4) высокой эффективностью реализации па традиционных ЭВМ. Одним из важнейших классификационных признаков процедурного

языка является его уровень. Чем более язык ориентирован на человека, тем выше его уровень.

К процедурным языкам относятся: язык Ассемблера, С, Basic, Pascal. 2. Логическое программирование. Новую область – логическое,

или реляционное программирование, – открыло появление языка PROLOG. Этот язык был создан французским ученым А. Кольмероэ в 1973 году. Языки логического программирования, в особенности Пролог, широ-ко используются в системах искусственного интеллекта.

Центральным понятием в логическом программировании является отношение. Программа представляет собой совокупность определений от-ношений между объектами (в терминах условий или ограничений) и цели (запроса). Языки логического программирования характеризуются:

1) высоким уровнем; 2) строгой ориентацией на символьные вычисления; 3) возможностью инверсных вычислений, то есть переменные в про-

цедурах не делятся на входные и выходные; 4) возможной логической неполнотой, поскольку зачастую невоз-

можно выразить в программе определенные логические соотношения, а также невозможно получить из программы все выводы правильные.

Логические программы, в принципе, имеют небольшое быстродей-ствие, так как вычисления осуществляются методом проб и ошибок, поис-ком с возвратами к предыдущим шагам.

3. Объектно-ориентированное программирование (ООП). Прото-типом ООП послужил ряд средств, входящих в состав языка SIMULA-67. Но в самостоятельный стиль оно оформилось с появлением языка SMALLTALK, разработанного А. Кеем в 1972 году и первоначально пред-назначенного для реализации функций машинной графики.

Основная цель ООП, как и большинства других подходов к про-граммированию – повышение эффективности разработки программ. Идеи ООП оказались плодотворными и нашли применение не только в языках программирования, но и в других областях Computer Science, например, в области разработки операционных систем.

Page 64: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

64

ООП – метод программирования, в котором главными элементами программ являются объекты. В т языках программирования понятие объ-екта реализовано как совокупность свойств (структур данных, характер-ных для данного объекта), методов их обработки (подпрограмм изменения их свойств) и событий, на которые данный объект может реагировать и ко-торые приводят, как правило, к изменению свойств объекта. Важнейшими понятиями ООП являются:

• класс – модель ещё не существующего объекта. Фактически он описывает устройство объекта, являясь его схемой.

• объект – экземпляр класса, сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса.

• абстракция – придание объекту характеристик, которые чётко определяют его границы, отличая от всех других объектов. Основная идея состоит в том, чтобы отделить способ использования составных объектов данных от деталей их реализации в виде более простых объектов.

• инкапсуляция – объединение данных и свойственных им проце-дур обработки в одном объекте. Фундаментальным понятием является класс – шаблон, на основе которого может быть создан конкретный про-граммный объект. Он описывает свойства и методы, определяющие пове-дение объектов этого класса. Каждый конкретный объект, имеющий структуру этого класса, называется экземпляром класса.

• наследование – такая организация классов, которая предусматри-вает создание новых классов на базе существующих и позволяет классу потомку иметь (наследовать) все свойства класса – родителя.

• полиморфизм – означает, что рожденные объекты обладают ин-формацией о том, какие методы они должны использовать в зависимости от того, в каком месте цепочки (дерева классов) они находятся. Это кон-цепция, реализующая "множество методов в одном интерфейсе".

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

К наиболее современным объектно-ориентированным языкам про-граммирования относятся C++ и Java.

В последнее время многие программы, в особенности объектно-ориентированные, реализуются как системы визуального программирова-ния. Отличительной особенностью таких систем является мощная среда разработки программ из готовых «строительных блоков», позволяющая со-

Page 65: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

65

здать интерфейсную часть программного продукта в диалоговом режиме, практически без кодирования программных операций. К числу таких си-стем относятся: VisualBasic, Delphi, C++ Builder и Visual C++.

Таблица 1.5 Различия концепций программирования

Концепция про-граммирования

Представление программ и данных

Исполнение про-граммы

Связь частей про-граммы между собой

Процедурное Программа и данные представляют собой не связанные друг с другом элементы

Последовательное выполнение опе-раторов

Возможна только че-рез совместно обраба-тываемые данные

Логическое Данные и правила их обработки объ-единены в рамках единого логического и структурного об-разования

Преобразование логического обра-зования в соответ-ствии с логиче-скими правилами

Разбиение программы на отдельные незави-симые части за-труднительно

Объектно-ориентированное

Данные и методы их обработки ин-капсулированы в рамках единого объ-екта

Последователь-ность событий и реакций объектов на эти события

Отдельные части про-граммы могут насле-довать методы и эле-менты данных друг у друга

Ранее было сказано, что для перевода кода с одного языка програм-

мирования (например, языка высокого уровня) на другой (например, ма-шинный язык) требуется специальная программа – транслятор. Механизм этого перевода весьма сложен, при этом выделяют два основных способа трансляции – компиляция программы или ее интерпретация.

При компиляции весь исходный программный код (тот, который пи-шет программист) сразу переводится в машинный. Создается отдельный исполняемый файл, который никак не связан с исходным кодом. Выполне-ние исполняемого файла обеспечивается операционной системой.

При интерпретации выполнение кода происходит последовательно (можно сказать, строка за строкой). Операционная система взаимодейству-ет с интерпретатором, а не исходным кодом.

Выполнение откомпилированной программы происходит быстрее, т.к. она представляет собой готовый машинный код. Однако на современ-ных компьютерах снижение скорости выполнения при интерпретации обычно не заметно.

Page 66: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

66

Т Е М А 2 ОС Н ОВ Н Ы Е П РОГ РА М М Н Ы Е С РЕ ДС Т В А И Н Ф ОРМ А Ц И ОН Н Ы Х Т Е Х Н ОЛ ОГ И Й

2.1 П рограммное обеспечение

Программа – это конечная упорядоченная последовательность ин-струкций-команд для ЭВМ, записанная на некотором языке программиро-вания, понятном компьютеру, выполнение которых реализует алгоритм. Программирование (кодирование) – это перевод алгоритма на язык понят-ных ЭВМ команд.

Язык программирования – это совокупность средств и правил пред-ставления различных алгоритмов в виде, пригодном для его выполнения компьютером и не требующем ввода численных кодов команд и адресов ячеек памяти. Большинство языков программирования, используемых при решении задач на ЭВМ, являются алгоритмическими языками.

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

Программное обеспечение (ПО) – это совокупность программ, по-нятных компьютеру, обеспечивающих функционирование, диагностику и тестирование его аппаратных средств, а также разработку, отладку и вы-полнение любых задач пользователя с соответствующим документирова-нием. В зависимости от назначении ПО классифицируют (таблица 2.1) на три группы.

Таблица 2.1 – Классификация ПО

Системное (базовое)

Инструментальное Прикладное

Операционные си-стемы (ОС) Утилиты Операционные оболочки (ОО) Средства тестиро-вания и диагности-ки

Компиляторы и интерпретаторы с языков программирования Ассемблеры Библиотеки стандартных про-грамм (БСП) Средства редактирования, отлад-ки, тестирования и загрузки Системы программирования

Пакеты прикладных про-грамм: - общего назначения; - проблемно-ориентированные; - расширяющие функции ОС; - интегрированные ПО поль-зователей

Page 67: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

67

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

Системное ПО управляет всеми ресурсами ЭВМ и осуществляет общую организацию процесса обработки информации и интерфейс ЭВМ с пользователем. Системное ПО включает:

• операционную систему (ОС); • сервисные программы: оболочку операционной системы, утили-

ты, антивирусные программы; • средства тестирования и диагностики; • сетевое ПО (предназначенное для управления общими ресурсами

компьютерной сети – принтерами, сканерами, накопителями на магнитных и оптических дисках, данными, программами и т.п.).

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

Основные компоненты ОС: • базовая система ввода-вывода • загрузчик ОС • блок расширенной базовой системы ввода-вывода – расширяет и

дополняет возможности BIOS. В качестве примеров ОС можно привести MS-DOS, Windows, Unix,

OS/2, Linux, Finder. Оболочка ОС – это набор программных средств, качественно моди-

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

Операционные оболочки (ОО) на первых этапах своего развития слу-жили как для расширения функций ОС, так и для повышения уровня ин-терфейса ЭВМ путем упрощения доступа к средствам ОС. Сред простых ОО для IBM-совместимых ПК можно отметить первую очередь Norton Commander..

Page 68: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

68

Графическая оболочка Windows 3.1 фирмы Microsoft в значительной мере определила на ближайшее время тенденции развития операционной среды ЭВМ, ориентированных в основном на персональный режим ис-пользования. В дальнейшем произошло слияние оболочек с "базовой ча-стью" ОС. И сейчас все это вместе называют ОС такие как Windows 2000, ХР, 7.

Утилиты – это программы, облегчающие пользование какими-то другими программами. Утилиты во многих случаях помогают существен-но повысить эффективность использования ЭBM и удобство работы с ними; Примером набора утилит для массового пользователя IBM-совместимых ПК может служить пакет Norton Utilities.

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

Инструментальное программное обеспечение Инструментальное программное обеспечение – это программные

средства, служащие для создания других компьютерных программ. Инструментальное ПО включает: языки программирования; системы

программирования. Язык программирования – это совокупность средств и правил представления алгоритма в виде, пригодном для исполнения компьютером. Примеры языков программирования: Assembler, Basic, С, Pascal, и др.

Система программирования – это комплекс специальных про-грамм, облегчающих работу программиста и включающих текстовый ре-дактор для ввода и корректировки текстов программ, программные сред-ства загрузки прикладных программ, обработки файлов, отладки про-грамм, перевода прикладных программ на язык двоичных машинных ко-дов (компилятор) и т.д. Каждая система программирования связана с опре-деленными языками программирования. Примеры: система программиро-вания Borland Pascal ориентирована на язык программирования Pascal.

Средства разработки программ используются для разработки но-вого программного обеспечения, как системного, так и прикладного.

В состав средств разработки ПО входят: • некоторые языки программирования, • трансляторы; • редакторы связей; • отладчики.

Page 69: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

69

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

Трансляторы делятся на три класса – ассемблеры, компиляторы и интерпретаторы.

Ассемблеры являются трансляторами с машинно-ориентированных языков низкого уровня (языков Ассемблера) и жестко привязаны к кон-кретному виду процессора компьютера.

Компиляторы и интерпретаторы являются трансляторами с языков программирования высокого уровня.

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

Интерпретатор анализирует и переводит команды или операторы исходной программы на машинный язык по очереди и немедленно их ис-полняет. Основное достоинство интерпретаторов – простота отладки про-граммы, недостаток – для их работы необходим большой объем оператив-ной памяти.

Объектный модуль – это программа пользователя, переведенная на машинный язык, вместе с дополнительной информацией, обеспечивающей настройку модуля по месту его загрузки и объединение данного модуля с другими независимо оттранслированными модулями в единую программу.

Редактор связей (или сборщик) – системная обрабатывающая про-грамма, редактирующая и объединяющая объектные модули, полученные в результате работы транслятора, в единые загрузочные, полностью гото-вые к исполнению программные модули.

Отладчик – это специальная системная программа, которая управ-ляет процессом исполнения программы пользователя и служит для поиска и исправления в ней ошибок.

Для некоторых языков программирования высокого уровня компи-ляторы могут включать средства редактирования и загрузки.

Реализация любого языков программирования высокого уровня мо-жет быть в виде как компилирующего, так и интерпретирующего типа. Однако в силу сложившихся традиций каждый ЯВУ отдает предпочтение одному из указанных типов реализации.

Прикладное программное обеспечение

Page 70: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

70

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

Прикладные программы подразделяются на общего назначения (универсальные) и проблемно-ориентированные (специализированные).

Универсальные прикладные программы ориентированы на широкий круг пользователей в различных проблемных областях, позволяют автома-тизировать наиболее часто используемые функции и работы включают:

• текстовые процессоры (текстовые редакторы); • табличные процессоры (электронные таблицы); • графические процессоры; • системы управления базами данных; • мультимедиа-приложения (программы воспроизведения звуко-

вых и видеоданных, игровые программы); • телекоммуникационные средства (Web-браузеры и др.) и т.д. Специализированное программное обеспечение предназначено для

автоматизации обработки конкретных видов информации и включает: • издательские системы; • бухгалтерские системы; • системы автоматического проектирования (САПР); • системы автоматического перевода; • экспертные системы; • обучающие и тестирующие программы, программы-тренажеры; • математические программы; • статистические программы; • музыкальные редакторы; • электронные справочники; • средства создания и демонстрации презентаций и др. Прикладные программы часто объединяют в пакеты прикладных

программ (или интегрированные пакеты).

Page 71: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

71

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

Пример: пакет Microsoft Office, включающий: • текстовый процессор Word; • электронные таблицы Excel; • систему управления базами данных Access; • персональный организатор Outlook; • систему создания электронных презентаций PowerPoint. Объединение программных средств в пакеты сопровождается: • единым стилем организации взаимодействия пользователя с си-

стемой; • единообразным и наглядным представлением информации; • взаимной согласованностью и общим сервисом программ; • упрощением обмена данными между программами путем дина-

мического обмена данными через буфер обмена, переноса объектов мето-дом «Drag-and-Drop», связывания и внедрения объектов с помощью OLE-технологии;

• возможностью быстрого переключения между программами (многооконный режим работы);

• единообразным интерфейсом: общими командами меню, стан-дартными пиктограммами одних и тех же функций и т.д.

OLE-технология позволяет вставлять различные объекты (графиче-ские картинки, диаграммы, звук, видео) в документы двумя способами.

Первый способ: вставляемый объект связывается с исходным фай-лом, и документ хранит информацию как о самом файле, так и о породив-шем его приложении. При этом изменения файла вне документа приводят к изменению связанного объекта при просмотре документа.

Второй способ: вставляемый объект внедряется в документ и теряет связь с исходным файлом, однако документ хранит информацию о поро-дившем его приложении.

Page 72: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

72

Расширяющие функции ОС пакеты: • обеспечивающие сопряжение ЭВМ с унифицированными при-

борными интерфейсами, научными приборами и установками. • пакеты, обеспечивающие подключение к ЭВМ дополнительных

унифицированных ВУ, поддержку работы ЭВМ в локальных сетях, много-машинных комплексах и т.д.

• ряд пакетов служат для обеспечения обмена текстовыми файла-ми часто используемых форматов, подготовленных на различного типа ЭВМ;

• другие для расширения функций устройств ЭВМ (монитора, кла-виатуры, мыши и др.);

• третьи обеспечивают обработку информации в режиме информа-ционного распараллеливания на однородных ВС и т.д.

2.2 Т екстовы е редакторы

Текстовые редакторы – это программы для создания и редактирова-ния текстовых документов. Это письма, статьи, справки, повести или ро-маны и прочая информация, именуемая текстовый документ, текстовый файл или просто текст.

Под редактированием текста понимается весь комплекс операции по внутренней (смысловой) и внешней (оформительской) работе над тек-стом. Каждый текст можно «кроить», т. е. вырезать из него куски, «склеи-вать» их, вставлять в рабочий материал части из других текстов, менять их местами и пр. Можно изменять расположение текста на странице, формат строк и абзацев, вставлять в текст иллюстрации (рисунки, графики, схемы и пр.).

При описании текстовых процессоров следует выделить две группы программных продуктов этого типа. Первая группа ориентирована па со-здание документов разной степени сложности с мощными средствами форматирования и включения графики. Типичным представителем этой группы является Microsoft Word. Вторая группа текстовых процессоров (их часто называют текстовыми редакторами) ориентирована на работу с чи-сто текстовыми файлами, среди которых могут быть тексты программ, написанные на различных языках, конфигурационные файлы, файлы настройки и др.

Ярким представителем таких программных продуктов является MultiEdit. Этот текстовый процессор имеет мощную систему контекстной

Page 73: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

73

замены, встроенный язык макрокоманд па уровне Visual Basic, средства поддержки внутренней среды, средства помощи при наборе ключевых слов.

Существует еще одна отдельная группа текстовых процессоров – это настольные издательские системы. Издательские программы (Desktop Publishing) в чем-то похожи на обычные текстовые процессоры, но отли-чаются от них более широким набором возможностей работы с текстом. К издательским системам относятся такие продукты, как Adobe PageMaker, Adobe In Design, Quark X Press. Правда следует заметить, что эта разница постепенно стирается, и такие редакторы, как Word Perfect или Microsoft Word уже приближаются к издательским программам. Во всяком случае, они в состоянии обеспечить набор и распечатку несложных изданий.

Обычно текстовые редакторы включают в себя следующие возмож-ности:

• набор текста; • корректирование набранного текста обычным способом, т. е. из-

менение букв, слов и т. д.; • вырезание фрагментов текста, запоминание их в течении текуще-

го сеанса работы, а также в виде отдельных файлов; • вставка фрагментов в нужное место текста; • нахождение в тексте нужных слов или предложений; • замена слов одно па другое частично или полностью по всему

тексту; • форматирование текста, т. е. придание ему определенного вида

последующим параметрам: ширина текстовой колонки, абзац, поля с обеих сторон, верхнее и нижнее поле, расстояние между строками, выравнивание края строк;

• автоматическая разбивка текста на страницы с заданным числом строк;

• автоматическая нумерация страниц; • автоматический ввод подзаголовков в нижней или верхней части

страницы; • выделение части текста жирным, наклонным или подчеркнутым

шрифтом; • переключение программы для работы с другим алфавитом; • табуляция строк, т. е. создание постоянных интервалов для пред-

ставления текста в виде колонок; • распечатка текста или отдельных его кусков;

Page 74: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

74

Наиболее совершенные редакторы обладают также дополнительны-ми возможностями, такими как:

• возможность увидеть па экране текст в готовом виде, т. е. таким, каким он будет распечатан принтером;

• широкий выбор шрифтов; • вставка в текст формул, таблиц, рисунков; • создание нескольких текстовых колонок на одной странице; • автоматический поиск и исправление грамматических ошибок; • выбор готовых стилей и шаблонов. Рассмотрим коротко некоторые текстовые редакторы. Блокнот. Это самый простой и незамысловатый текстовый редактор

в Windows. Этот текстовый редактор используется для каких-либо заметок, небольших фраз и прочих пометок. Многие программисты в блокнот ко-пируют различные коды, которые в Блокноте остаются в первозданном ви-де, так как более продвинутые текстовые редакторы могут их распознавать и преобразовывать визуально, в итоге теряя часть кода. Также в Блокнот удобно копировать пароли, ссылки и консольные команды. Блокнот по-ставляется наряду со стандартным предустановленным пакетом программ операционной системы, по сути, является бесплатным.

В операционной системе Linux есть свой аналог блокнота – gedit. Программа по функциям и назначению абсолютно идентична с аналогом из Windows.

Преимущество данных текстовых редакторов в том, что они просты и компактны, это идеальный вариант для пометок и хранения элементов кода. Недостатком данного редактора текста является его преимущество – излишняя простата, которая не даёт возможность производить оформление теста.

WordPad. WordPad – это ещё один стандартный текстовый редактор, который поставляется в перечне предустановленных в Windows программ. WordPad это что-то среднее между блокнотом и Microsoft Word. То есть WordPad имеет простую основу, как и Блокнот, но в него включены неко-торые элементы оформления текста из Word. Такое сочетание: простота плюс минимальный набор функций для оформления, делают его довольно привлекательным для набора простого текста, не требующего особого оформления.

LibreOffice Writer – на данный момент это самый мощный среди бесплатных текстовых редакторов. Он позволяет работать с документами Microsoft Word, RTF, создавать HTML документы. В нем также можно

Page 75: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

75

вставлять в тексты таблицы, картинки, мультимедийные объекты и другие элементы. В LibreOffice Writer имеется редактируемый словарь и функция проверки орфографии. Интерфейс программы напоминает Word 2003, Этот редактор можно назвать бесплатным аналогом или упрощенной версией Microsoft Word.

Изначально данный офисный пакет был создан для операционной системы Linux, сменив устоявшийся на то время OpenOfficeOrg, который существует и поныне. Затем была выпущена версия LibreOffice под Windows.

Word. Текстовый процессор Word один из самых популярных в мире и обладает большими возможностями. В настоящее время существует уже много версий MS Word, наиболее популярными среди них считаются вер-сии 2003, 2007, 2010 и 2013 года выпуска.

Современный текстовый процессор Microsoft Word предназначен для просмотра, создания, печати и модификации текстовых документов. Он предусматривает выполнение многих операций, как над текстовой, так и над графической или табличной информацией. Благодаря MS Word стало возможно быстро, а также с высоким качеством подготовить любой доку-мент, причем от сложного до простого.

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

• Редактирование, создание текста. Сохранение документа в виде файла с необходимым расширением (в 2003 расширение по умолчанию – *.doc, в 2007, 2010 – *.docx). Поиск необходимого файла на информацион-ном носителе (жесткий диск, флешка, диск, дискета и др), а также считы-вание его с диска.

• Поиск орфографических ошибок в существующем тексте и про-верка лексики.

• Возможность текст разбивать на страницы. • Пользователь может форматировать тексты по своему усмотре-

нию. • Возможность создавать оглавление документа (причем в автома-

тическом режиме). • Встроенная возможность многооконного режима (работа с окна-

ми). • Распечатка файлов различных форматов. Причем данный тексто-

вый редактор отличается следующим: что видит пользователь – то и будет

Page 76: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

76

распечатано, так называемый режим WYSIWYG (What You See Is What You Get).

• Удаление объектов из файла, а также их внедрение туда. • Вставка и создание рисунков в файле (причем можно вставить и

уже готовые фотографии). Можно использовать библиотеку под названием CLIPART, где хранятся готовые рисунки формата *.wmf, а также вставлять их в файл.

• Вставка в файл научных формул (химических, математических и др.) и диаграмм.

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

• Выделение необходимых участков текста или блока, а также их перенос на новое место. Если потребуется, то их можно удалить. Также включена возможность обрамления требуемых участков текста.

• Создание и вставка в файл электронных таблиц. Причем в них можно по-своему усмотрению изменить число строк и столбцов.

• Создание баз данных в электронных таблицах, а также выполне-ние сложных или простых математических вычислений.

• Возможность программировать на языке под названием Word Basic, а также создавать макрокоманды. Макрос или макрокоманда – это предложение языка, которое идентифицирует набор самых простых ко-манд. В макросе обычно сохраняется комбинация клавиш, которая в даль-нейшем может использоваться далеко не один раз. С помощью макросов можно автоматизировать самые используемые операции. Следует отме-тить, что кроме клавишных макросов существуют языковые макросы, ко-торые создаются на языке программирования Word Basic.

• Создание конвертов писем, этикетов и эмблем. • Вставка в файл видеоклипов, текстовых спецэффектов, мульти-

медийных и звуковых файлов. • Просмотр перед печатью текста, с возможностью его увеличения

для лучшего просмотра. • В рассматриваемый текстовый редактор входит обширная спра-

вочная система, благодаря которой пользователь может довольно быстро получить помощь.

Для подготовки буклетов, оформления журналов и книг предназна-чены специальные издательские системы такие как Microsoft Publisher, Corel Ventura и Adobe PageMaker. Издательские системы незаменимы для

Page 77: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

77

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

Основная операция издательских систем – верстка (размещение тек-ста по страницам документа, вставка рисунков, оформление текста различ-ными шрифтами и т.д.). Редактирование текста в издательских системах менее удобно, чем в текстовых редакторах. Поэтому бывает, что докумен-ты готовят в два этапа: сначала набирают текст в текстовом процессоре, а затем считывают его издательской системой и осуществляют окончатель-ную подготовку документа.

Основным отличием настольных издательских систем от текстовых редакторов (таких, например, как MS Word) является то, что они предна-значены в первую очередь для оформления (верстки) документа, а не для его создания «с нуля» (ввода текста, проверки правописания, создания изображений), хотя в определенной степени могут выполнять и эти функ-ции. Процесс верстки документа состоит в оформлении текста и задании условий взаимного расположения текста и иллюстраций. Целью верстки является создание оригинал-макета, пригодного для размножения доку-мента полиграфическими методами.

Предусмотренные в программных пакетах данного типа средства позволяют:

• компоновать (верстать) текст; • использовать всевозможные шрифты и полиграфические изобра-

жения; • осуществлять редактирование на уровне лучших текстовых про-

цессоров; • обрабатывать графические изображения; • обеспечивать вывод документов высокого качества; • и др. PageMaker – первая настольная издательская система, выпущенная в

1985 году компанией Aldus Corporation первоначально для персонального компьютера Apple Macintosh, а затем в 1987 году и для персонального компьютера PC с Microsoft Windows.

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

Page 78: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

78

ства: PageMaker – это классическая и простая в работе программа (простая организация рабочего процесса – электронный «рабочий стол», мощные инструменты вывода). К достоинствам пакета следует отнести интегриро-ванность с другими продуктами Adobe – Adobe Illustrator и Adobe Photoshop. Недостатки: традиционный подход к верстке (вырезка и вставка текстовых блоков) усложняет работу с длинными документами.

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

Для получения изданий еще больших объемов в программе суще-ствует возможность объединения отдельных документов в книгу со сквоз-ной нумерацией. Эта функция часто применяется при верстке изданий, со-стоящих из нескольких глав или частей.

Для работы с многостраничными документами предусмотрены ши-рокие возможности по автоматическому созданию оглавлений и предмет-ных указателей.

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

Специально для газетной и журнальной верстки программа содержит функции «обтекания текстом» графических вставок, что позволяет прида-вать практически любую форму различным текстовым блокам.

2.3 Г рафические редакторы

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

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

Page 79: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

79

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

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

Достоинство векторных редакторов: существенно меньший, чем в растровых редакторах, объем памяти для хранения изображения, можно построить изображение любого размера с любой степенью подробности. Недостатком является относительно низкая скорость работы, так как изоб-ражение каждый раз строится заново.

Если растровые изображения можно сравнить с фотографией, то век-торное изображение ближе к гравюре, оно резче и строже в переходах. Векторные изображения создаются и редактируются с помощью приложе-ний CorelDraw, Adobe Illustrator, FreeHand. Сфера применения векторной графики очень широка, она играет огромную роль в компьютерной поли-графии. Векторными методами формируются шрифты True Tupe.

Page 80: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

80

Растровые изображения представляются совокупностью точек, или пикселей и не поддаются описанию математическими формулами. Для вы-явления точечной природы растровых изображений требуется сильно уве-личить их масштаб. При отсутствии увеличения пиксели практически не видны. Например, в каждом квадратном дюйме экрана монитора помеща-ется матрица пикселей размером 72 на 72 элемента.

Все точки растрового изображения запоминаются в специальном файле в виде набора чисел – цветов и воспроизводится на экране фактиче-ски без изменений. Растровую картинку трудно масштабировать. Ещё один недостаток растровой графики – огромный объём файлов (они тем больше, чем выше разрешения и чем больше цветов), и тем не менее, при соответ-ствующей технике растр позволяет получить изображение высочайшего качества. Поэтому растровые картинки применяются в художественной графике и там, где не предъявляется особых требований к качеству мас-штабирования. Примером приложения для обработки растровых картинок является графический редактор Pаint. Растровые изображения создаёт и сканер, фотографирующий картинку и представляющий её набором оциф-рованных точек. В профессиональной графике используются мощные при-ложения для работы с растровой графикой CorelPhoto, Adobe PhotoShop.

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

Достоинство растровых редакторов – высокая точность в передаче цветов и полутонов, высокая скорость и относительная простота работы. Недостатки – большой объем памяти для хранения и так называемая пик-селизация изображений при их увеличении: при увеличении масштаба увеличивается размер точек, дискретность изображения становится замет-ной, само изображение искажается.

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

• TIFF – для хранения растровых изображений высокого качества; • PSD – собственный формат программы Adobe PhotoShop; • Windows Bitmap (BMP) – формат хранения растровых изображе-

ний, поддерживается всеми приложениями, работающими в среде Windows;

Page 81: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

81

• JPEG – для хранения растровых изображений; позволяет регулиро-вать соотношение между степенью сжатия файла и качеством изображе-ния;

• GIF – средство хранения сжатых изображений с фиксированным количеством цветов (256 цветов);

• WMF – для хранения векторных изображений в ОС Windows; • PDF – формат описания документов, разработанный фирмой Adobe.

Предназначен для хранения документов целиком, позволяет получить вы-сокое качество иллюстраций при сравнительно небольшом размере файла.

Для построения, коррекции, сохранения и получения «бумажных» копий рисунков и других изображений используется специальная про-грамма – графический редактор.

Для создания изображений в графическом редакторе используются определённые «инструменты» – линейка («отрезок»), прямоугольник, круг, эллипс и т.д. Такие инструменты, позволяющие изображать простые фигу-ры, называются «графическими примитивами». Можно без труда нарисо-вать окружность, квадрат или многоугольник произвольной формы. Для этого нужно выбрать в таблице инструментов графический примитив и установить курсор в соответствующую точку рабочего поля. Для прямо-угольника в эту точку будет помещен левый верхний угол, для круга и эл-липса – центр. При этом «художник» может подобрать желаемые размеры примитива.

Рисовать изображение можно как с помощью базовых инструментов (примитивов), так и в режиме ручной прорисовки. Выбор в качестве ин-струмента «кисти» позволяет наносить изображения на «холст» от руки. В этом случае «художник» использует курсор, управляемый клавишами или манипулятором типа «мышь». Очень трудно с помощью мыши от руки провести прямую линию. Используя в качестве инструмента «линейку», достаточно просто соединить прямой любые две точки рабочего поля.

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

• «вырезать», «склеивать» и «стирать» произвольные части изоб-ражения;

• применять для рисования произвольные «краски» и «кисти»; • запоминать рисунки на внешних носителях, осуществлять их

поиск и воспроизведение;

Page 82: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

82

• увеличивать фрагмент изображения для проработки мелких де-талей;

• добавлять к рисункам текст и таким образом создавать красоч-ные объявления, рекламные плакаты, визитные карточки и т. д.

Графический редактор позволяет также масштабировать (изменять размер) изображение, выполнять его перемещение и поворот.

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

Режимы графического редактора определяют возможные действия художника, а также команды, которые художник может отдавать редакто-ру в данном режиме.

1. Режим работы с рисунком (рисование). В этом режиме на рабочем поле находится изображение инструмента. Художник наносит рисунок, редактирует его, манипулирует его фрагментами.

2. Режим выбора и настройки инструмента. Курсор – указатель нахо-дится в поле экрана с изображениями инструментов (меню инструментов). Кроме того, с помощью меню можно настроить инструмент на определен-ный тип и ширину линии, орнамент закраски.

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

4.Режим работы с внешними устройствами. В этом режиме можно выполнять команды записи рисунка на диск, считывания рисунка с диска, вывода рисунка на печать. Графические редакторы на профессиональных ПК могут работать со сканером, используя его для ввода изображения с репродукций.

Работая с графическим редактором, пользователь применяет не толь-ко клавиатуру, но и манипулятор-мышь. Создавая изображения на экране

Page 83: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

83

компьютера можно не только рисовать их самому, но и использовать дру-гие изображения, например фотографии, рисунки из книг и т.д. Для ввода такой дополнительной графической информации в компьютере использу-ется специальное устройство – сканер.

Названием Corel Draw обозначается и одноименный графический редактор и весь пакет поставляемых вместе с ней программ в целом для создания и редактирования векторной графики.

В данной программе есть исчерпывающее количество инструментов для создания собственных изображений, способных удовлетворить прак-тически каждого, даже самого притязательного пользователя. Есть также широкий спектр эффектов, предназначенных для редактирования изобра-жений. Довольно удобный и интуитивно понятный интерфейс, что являет-ся большим плюсом, особенно при освоении программы. Интерфейс мо-жет настраивать сам пользователь в зависимости от конкретного изобра-жения либо личных пристрастий.

Еще один большой плюс данных программ – это возможность сохра-нения ваших изображений в различных форматах (даже AutoCAD 2000 (.dxf и.dwg) и Macromedia Flash (.swf)).

Photoshop. В обширном классе растровых графических редакторов особой популярностью пользуется программа Photoshop компании Adobe. Растровый редактор Photoshop работает с графическими файлами основ-ных форматов, принятых в полиграфии, и компьютерных сетях, а также используемых при разработке электронных документов и программного обеспечения. Графический редактор Photoshop одинаково почитают поль-зователи как IBM PC – совместимых компьютеров, так и компьютеров Macintosh.

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

Перечислим основные возможности этой программы: 1. Обработка цифровых и отсканированных фотоснимков, цвето-

коррекция, спецэффекты, устранение различных дефектов съемки. 2. Возможность создания многослойного изображения. При этом

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

3. Фотомонтаж, составление коллажей.

Page 84: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

84

4. Ретуширование и восстановление старых фотографий. 5. Обработка эскизов, нарисованных вручную. 6. Улучшенные инструменты для работы с текстом. Используя

различные инструменты, эффекты и фильтры можно получить очень инте-ресные эффекты.

7. Создание текстур для 3D моделей. 8. Создание графических элементов дизайна и оформления для

сайтов, документов, печати и полиграфии. 9. Подготовка изображений к печати или публикации в Интерне-

те. 10. Поддержка различных стандартов изображения (RGB, CMYK,

Grayscale и т.д.); 11. Поддержка различных графических форматов, как растровых

(BMP, JPEG, GIF), так и векторных (AI, CDR). 12. Раскрашивание фотографий. Можно подкрашивать участки

изображения на черно-белых фотографиях. Основными техническими операциями при работе с изображениями

являются: • изменение динамического диапазона (управление яркостью и

контрастностью изображения); • повышение четкости изображения; • цветовая коррекция (изменение яркости и контрастности в кана-

лах красной, зеленой и синей составляющих цвета); • отмывка (изменение яркости отдельных фрагментов); • растушевка (сглаживание перехода между границами отдельных

фрагментов); • обтравка («вырезание» отдельных фрагментов из общей компо-

зиции); • набивка (восстановление утраченных элементов изображения пу-

тем копирования фрагментов с сохранившихся участков); • монтаж (компоновка изображения из фрагментов, скопированных

из других изображений или импортированных из других редакторов). Основные инструменты редактора Photoshop, применяемые в техни-

ческих операциях, сосредоточены на панели инструментов. Особенностью панели инструментов является наличие альтернативных инструментов.

Для настройки действия инструментов в редакторе Photoshop ис-пользуются диалоговые окна особого типа, называемые Палитрами.

Page 85: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

85

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

2.4 Э лектронны е таблицы E xcel

Электронные таблицы (ЭТ) предназначены для хранения и обработ-ки данных, представленных в табличной форме. Электронные таблицы – это двумерные массивы данных, представленные в электронном виде.

Программные средства для проектирования ЭТ называют также таб-личными процессорами. Они позволяют решать целый комплекс задач.

Прежде всего, выполнение вычислений. Издавна многие расчеты выполняются в табличной форме, особенно в области делопроизводства: многочисленные расчетные ведомости, табуляграммы, сметы расходов и т. п. Кроме того, решение численными методами целого ряда математиче-ских задач; удобно выполнять в табличной форме. Электронные таблицы представляют собой удобный инструмент для автоматизации таких вычис-лений. Решения многих вычислительных задач на ЭВМ, которые раньше можно было осуществить только путем программирования, стало возмож-но реализовать

Математическое моделирование. Использование математических формул в ЭТ позволяет представить взаимосвязь между различными пара-метрами некоторой реальной системы. Основное свойство ЭТ – мгновен-ный пересчет формул при изменении значений входящих в них операндов. Благодаря этому свойству, таблица представляет собой удобный инстру-мент для организации численного эксперимента:

• подбор параметров, • прогноз поведения моделируемой системы, • анализ зависимостей, • планирование. Дополнительные удобства для моделирования дает возможность

графического представления данных (диаграммы). Использование электронной таблицы в качестве базы данных. Ко-

нечно, по сравнению с СУБД электронные таблицы имеют меньшие воз-можности в этой области. Однако некоторые операции манипулирования данными, свойственные реляционным СУБД, в них реализованы. Это по-иск информации по заданным условиям и сортировка информации. Также,

Page 86: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

86

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

Функции табличных процессоров достаточно разнообразны: • создание и редактирование электронных таблиц; • оформление и печать электронных таблиц; • создание многотабличных документов, объединенных форму-

лами; • построение диаграмм и решение задач графическими методами; • работа с электронными таблицами как с базами данных: сорти-

ровка таблиц, выборка данных по запросам; • создание итоговых и сводных таблиц; • использование при построении таблиц информации из внешних

баз данных; • решение оптимизационных задач; • статистическая обработка данных; • разработка макрокоманд, настройка среды под потребности

пользователя. Примерный объем продаж на мировом рынке табличных процессо-

ров: 80% продаж – Excel (продукт Microsoft, входящий в пакет Microsoft Office); далее Lotus, затем QuattroPro, остальные (например, SuperCulc – незначительно).

Элементы ЭТ: электронные таблицы состоят из столбцов и строк. Столбцы идентифицированы буквами латинского алфавита (A, B, C, ..., AA, AB, …), расположенными в заголовочной части таблицы. Строки идентифицированы цифрами (1, 2, 3 ...), расположенными в первой колон-ке. Количество строк и столбцов в разных электронных таблицах различно, например, в табличном процессоре Excel используется 256 столбцов и бо-лее 16 384 тысячи строк, всего 4 194 304 ячеек. Место пересечения столбца и строки называется ячейкой. Каждая ячейка имеет свой уникальный ад-рес, состоящий из имени столбца и номера строки, например D8.

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

Page 87: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

87

так и с группами ячеек, которые образуют блок. Имена ячеек в блоках раз-деляются двоеточием, например блок A1:B4 включает в себя ячейки: А1, А2, A3, А4, В1, В2, В3 и В4. С блоками ячеек в основном выполняются операции копирования, удаления, перемещения, вставки.

Типы данных ЭТ: текст, числа, формулы, функции, дата. Текст – это любая последовательность символов. Число – это числовая константа. Формула – это выражение, состоящее из числовых величин и ариф-

метических операций. Кроме числовых величин, в формулу могут входить в качестве аргументов адреса ячеек, функции и другие формулы. Пример формулы (записываются, начиная со знака =): =А5/ Н8х12.

Функции – это запрограммированные формулы, позволяющие про-водить часто встречающиеся последовательности вычислений. Например, функция автосуммирования может быть представлена следующим обра-зом: = СУММ (A1:A4).

Дата – может быть представлена в различных форматах; с ней мож-но выполнять арифметические и логические операции.

Основные типы объектов Excel: рабочий лист, рабочая книга, диа-грамма, макротаблица (макрос).

Рабочий лист служит для организации и анализа данных. Одновре-менно на нескольких листах данные можно вводить, править, производить с ними вычисления. В книгу можно вставить листы диаграмм для графиче-ского представления данных и модули для создания и хранения макросов, используемых при выполнении специальных задач.

Рабочая книга представляет собой электронный эквивалент папки-скоросшивателя. Книга состоит из листов, имена которых выводятся на ярлычках в нижней части экрана. По умолчанию книга открывается с 3 ра-бочими листами Лист1, Лист2, Лист 3, однако их число можно увеличить или уменьшить. В книгу можно поместить несколько различных типов до-кументов, например рабочий лист с электронной таблицей, лист диаграмм, лист макросов и т. п.

Диаграмма представляет собой графическое изображение связей между числами ЭТ. Она позволяет показать количественное соотношение между сопоставляемыми величинами.

Макротаблица (макрос) – это зафиксированная и автоматически воспроизводящаяся последовательность команд, которую приходится по-стоянно выполнять пользователю в повседневной работе. Макросы позво-ляют автоматизировать часто встречающиеся операции.

Page 88: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

88

Типы форматов данных в Ехсеl: • общий (используется для отображения как числовых, так и тек-

стовых значений произвольного типа); • числовой (числа отображаются с фиксированным количеством

цифр в дробной части); • денежный (используется для отображения денежных величин); • финансовый (используется для выравнивания денежных вели-

чин по разделителю целой и дробной части); • дата; • время; • процентный (в этом формате значение ячейки умножается на

100 и выводится на экран с символом процента); • дробный (числа отображаются в виде простых дробей – через

наклонную черту); • экспоненциальный (числа отображаются в экспоненциальной

форме с фиксированным количеством цифр после запятой); • текстовый; • дополнительный (используется для записи почтовых индексов,

номеров телефонов и т.д.). При создании нового рабочего листа в Excel все ячейки имеют об-

щий формат. В этом формате числа записываются в обычной или экспо-ненциальной форме и выравниваются по правому краю ячейки, текст вы-равнивается по левому краю, а логические значения и значения ошибок выравниваются по центру ячеек.

2.5 С ервисны е инструментальны е средства

2.5.1 Файловые менеджеры Файловый менеджер – компьютерная программа, предоставляющая

интерфейс пользователя для работы с файловой системой и файлами. Фай-ловый менеджер позволяет выполнять наиболее частые операции над фай-лами – создание, открытие/проигрывание/просмотр, редактирование, пе-ремещение, переименование, копирование, удаление, изменение атрибутов и свойств, поиск файлов и назначение прав. Помимо основных функций, многие файловые менеджеры включают ряд дополнительных возможно-стей, например, таких, как работа с сетью (через FTP, NFS и т. п.), резерв-ное копирование, управление принтерами и пр.

Выделяют различные типы файловых менеджеров, например:

Page 89: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

89

• навигационные и пространственные – иногда поддерживается переключение между этими режимами (проводник Windows);

• двухпанельные – в общем случае имеют две равноценных панели для списка файлов, дерева каталогов и т. п. (DOS – Norton Commander, Volkov Commander; Microsoft Windows – FAR Manager, Total Commander.

Файловые менеджеры начали свою историю со специальных про-грамм – оболочек, разработанных для операционной среды DOS. В свое время эти программы были настоящим прорывом в IT-индустрии. Они позволили значительно расширить возможности ПК и способствовали мас-совой интеграции компьютеров во все отрасли делопроизводства.

Первым, ставшим самым известным файловым менеджером, стал Norton Commander, Volkov Commander – один из лучших файловых мене-джеров для операционной системы DOS, клон Norton Commander.

Проводник Windows – это приложение, реализующее графический интерфейс доступа пользователя к файлам в операционной системе Microsoft Windows. Проводник в настоящее время фактически является основой графической оболочки пользователя Windows.

Проводник в Windows является штатным средством навигации опе-рационной системы по файлам и папкам жестокого диска компьютера. Иногда его называют обозреватель или эксплорер по названию его файла explorer.exe, но его не стоит путать с браузером интернет эксплорер (internet explorer) предназначенным для просмотра веб-страниц в сети ин-тернет.

Проводник в Windows запускается автоматически при загрузке опе-рационной системы. Рабочий стол это тоже Проводник, который показы-вает содержимое определенной папки, просто он имеет вид отличный от всех остальных. Другими словами, все ярлыки программ и файлы (кроме некоторых системных, таких как «Мой компьютер», «Корзина» и т.д.) ко-торые вы видите на своем рабочем столе, хранятся в папке. Папок таких две, первая имеет адрес C:\Пользователи\Общие\Общий рабочий стол или по-другому C:\Users\Public\Desktop в ней хранятся данные для всех поль-зователей компьютера. Вторая папка с адресом C:\Пользователи\Имя поль-зователя\Desktop или C:\Users\Имя пользователя\Desktop хранит ярлыки и файлы конкретной учетной записи на компьютере. В итоге на рабочем столе Windows отображается совокупность этих двух папок, поэтому у разных пользователей компьютера, количество элементов на рабочем сто-ле может быть различным. Поэтому если вдруг произойдет крах обозрева-теля или вы сами завершите процесс explorer.exe, вы не только не сможете

Page 90: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

90

переходить штатными средствами по файловой системе компьютера, но и лишитесь рабочего стола Windows.

В верхней части Проводника, как это принято в Windows-программах, расположено меню, затем – панель инструментов, под ней – адресная строка, отражающая ваше текущее расположение в иерархии па-пок. Слева находится список устройств компьютера и Папок, представлен-ные в виде иерархической (древовидной) структуры. Содержимое выбран-ной папки отображается справа (рисунок 2.1). Для изменения представле-ния папки используйте меню Вид или одноименную кнопку-меню на па-нели инструментов.

Вот так выглядит типичное окно Проводника при настройке вида «Обычные значки».

Рисунок 2.1 – Внешний вид Проводника Вы можете изменять параметры отображения, для каждой конкрет-

ной папки в контекстном меню «Вид». Так же через контекстное меню правой кнопки мыши, можно настроить сортировку и группировку элемен-тов в данной папке.

Чтобы Проводник показывал скрытые файлы, необходимо во вклад-ке «Вид» отметить переключателем «Показывать скрытые файлы, папки и диски». Теперь элементы с атрибутом «скрытый», появятся в обозревателе и будут отображаться бледным цветом. Данные, имеющие атрибут «си-стемные», критически важны для нормальной работы компьютера и но-

Page 91: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

91

вичкам доступ к ним не нужен, но если вам почему-либо необходимо их увидеть, нужно дополнительно снять флажок «Скрывать защищенные си-стемные файлы (рекомендуется).

По умолчанию, Проводник скрывает расширение имени файла для зарегистрированных в системе. Это можно изменить. Для чего необходимо открыть окно «Параметры папок» и на вкладке «Вид» снять флажок с пункта «Скрывать расширения для зарегистрированных типов файлов».

Total Commander – файловый менеджер с закрытым исходным ко-дом, работающий на платформе Microsoft Windows. Поддерживает огром-ное кол-во функций:

• двухпанельный многоязычный графический интерфейс пользова-теля;

• полностью настраиваемые сочетания клавиш, • поддержка Drag&Drop при помощи мыши; • вкладочный интерфейс; • встроенный FTP-клиент, с поддержкой SSL/TLS; • внутренние распаковщики для форматов ZIP, ARJ, LZH, gzip, tar,

RAR и ACE; • разрезание и сборка файлов большого объёма; • подсчёт и проверка контрольных сумм файлов (CRC32, MD5,

SHA1); • групповое переименование файлов и синхронизация каталогов; • сравнение файлов с возможностью редактирования, сравнение

файлов с разными кодовыми страницами; • поддержка последовательной очереди и параллельного фонового

выполнения операций над файлами (копирование, перенос, удаление, ра-бота с архивами и FTP).

Внешний вид окна Total Commander показан на рисунке 2.2.

Page 92: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

92

Рисунок 2.2 – Внешний вид окна Total Commander

2.5.2 Архиваторы

Архиватор – программа, осуществляющая сжатие и/или упаковку одного и более файлов в архив или серию архивов для удобства переноса или хранения, а также распаковку архивов. Архиваторы – это программы для создания архивов. Архивы предназначены для хранения данных в удобном компактном виде. В качестве данных обычно выступают файлы и папки. Как правило, данные предварительно подвергаются процедуре сжа-тия или упаковки. Поэтому почти каждый архиватор одновременно явля-ется программой для сжатия данных. С другой стороны, любая программа для сжатия данных может рассматриваться как архиватор. Эффективность сжатия является важнейшей характеристикой архиваторов. От нее зависит размер создаваемых архивов. Чем меньше архив, тем меньше места требу-ется для его хранения. Для передачи нужна меньшая пропускная способ-ность канала передачи или затрачивается меньшее время. Преимущества архивов очевидны, если учесть, что данные уменьшаются в размере и в 2 раза, и в 5 раз.

Page 93: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

93

Сжатие данных используется очень широко. Можно сказать, почти везде. Например, документы PDF, как правило, содержат сжатую инфор-мацию. Довольно много исполняемых файлов EXE сжаты специальными упаковщиками. Всевозможные мультимедийные файлы (GIF, JPG, MP3, MPG) являются своеобразными архивами.

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

В данный момент существует много архиваторов. Они имеют разную распространенность и эффективность.

Методы сжатия Разработано большое количество разнообразных методов, их моди-

фикаций и подвидов для сжатия данных. Современные архиваторы, как правило, одновременно используют несколько методов одновременно. Можно выделить некоторые основные.

Кодирование длин серий. Последовательная серия одинаковых эле-ментов данных заменяется на два символа: элемент и число его повторе-ний. Широко используется как дополнительный, так и промежуточный ме-тод. В качестве самостоятельного метода применяется, например, в графи-ческом формате BMP.

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

Основным параметром словарного метода является размер словаря. Чем больше словарь, тем больше эффективность. Однако для неоднород-ных данных чрезмерно большой размер может быть вреден, так как при резком изменении типа данных словарь будет заполнен неактуальными словами. Для эффективной работы данного метода при сжатии требуется дополнительная память. Приблизительно на порядок больше, чем нужно для исходных данных словаря. Существенным преимуществом словарного метода является простая и быстрая процедура распаковки. Дополнительная память при этом не требуется. Такая особенность особенно важна, если не-обходим оперативный доступ к данным.

Page 94: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

94

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

Широко используется как дополнительный метод. В качестве само-стоятельного метода применяется, например, в графическом формате JPG.

Метод контекстного моделирования. В этом методе строится мо-дель исходных данных. При сжатии очередного элемента данных эта мо-дель выдает свое предсказание или вероятность. Согласно этой вероятно-сти, элемент данных кодируется энтропийным методом. Чем точнее мо-дель будет соответствовать исходным данным, тем точнее она будет выда-вать предсказания, и тем короче будут кодироваться элементы данных.

Для построения эффективной модели требуется много памяти. При распаковке приходится строить точно такую же модель. Поэтому скорость и требования к объему оперативной памяти для упаковки и распаковки по-чти одинаковы. В данный момент методы контекстного моделирования позволяют получить наилучшую степень сжатия, но отличаются чрезвы-чайно низкой скоростью.

Сегментирование. Во всех методах сжатия при изменении типа дан-ных собственно сам переход кодируется очень плохо. Словарь становится не актуальным, модель настроена на другие данные. В этих случаях при-меняется сегментирование. Это предварительная разбивка на однородные части. Затем эти части кодируются по отдельности или группами.

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

Особенности данных Степень сжатия в основном зависит от исходных данных. Хорошо

сжимаются почти все предварительно несжатые данные, например, испол-няемые файлы (EXE), тексты (TXT, DOC), базы данных (DBF), простые несжатые изображения (BMP). Ограниченно сжимаются несжатый звук (WAV), сложные несжатые изображения (BMP). Не сжимаются почти все уже сжатые данные, например, архивы (ZIP, CAB), сжатые документы (PDF), сжатая графика и видео (JPG, GIF, AVI, MPG), сжатый звук (MP3). Их сжатие находится в пределах пары процентов за счет служебных бло-ков и небольшой избыточности.

Page 95: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

95

Для сжатия некоторых специфических данных (текст, несжатые изображения, несжатый звук) существуют специальные методы и архива-торы. Такие архиваторы обеспечивают высокую степень сжатия и высокую скорость. Однако так называемые универсальные архиваторы постепенно дополняются подобными методами. В данный момент только для несжато-го звука существуют высокоэффективные специальные архиваторы, такие, как OptimFROG, Monkey Audio. Для текстов и изображений лучшие уни-версальные архиваторы показывают лучшую степень сжатия. Например, архив изображений получится меньше, если использовать формат BMP и архиватор WinRK вместо специализированных графических форматов, та-ких как JPEG2000 (LossLess – сжатие без потерь).

Большое количество типов данных уже являются сжатыми. Исполь-зование архиваторов дает мизерное уменьшение размера. Тем не менее, даже в таких случаях эффективное сжатие теоретически возможно. Это обусловлено тем, что в большинстве распространенных форматов файлов, использующих сжатие, применены не самые эффективные методы. Например, в основе формата JPG лежит энтропийное сжатие, которое ис-пользуется после преобразований Фурье. Данные кодируются неоптималь-ными блоками, что обусловлено желанием сделать формат JPG устойчи-вым к повреждениям и возможности частичного извлечения информации. Перекодировав файлы JPG при помощи высокоэффективных методов, можно добиться сжатия порядка 75% от исходного файла (архиватор StuffIt). Собственно сам исходный файл JPG сжимается обычными архива-торами только до 96%. Однако подобные манипуляции с файлами JPG ста-ли возможны только недавно и еще не получили распространения. В большинстве случаев сжимать уже сжатые данные бесполезно.

Какие существуют архиваторы и чем они отличаются? Следует различать собственно программу-архиватор, формат архи-

вов и методы сжатия. Даже один и тот же метод сжатия может иметь вари-анты реализации. Например, существует более десятка программ-архиваторов, которые могут создавать архивы в формате ZIP. В свою оче-редь данные в формате ZIP могут быть сжаты различными методами: Deflate, Deflate64, BZip2. Метод Deflate имеет несколько реализаций с раз-ной скоростью и степенью сжатия (разница порядка 5%). С помощью этого метода архиватор 7-zip позволяет создавать архивы в формате ZIP и 7Z.

Обычно архиваторы могут создавать архивы в собственном эксклю-зивном формате с использованием своих оригинальных методов. Напри-мер, архиватор RAR позволяет создавать архивы RAR. В формате архива и

Page 96: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

96

методах сжатия заключаются основные преимущества того или иного ар-хиватора.

В простейшем случае архиватор позволяет только упаковать или распаковать один файл. Кроме собственно сжатия данных, современные архиваторы обеспечивают некоторые дополнительные функции. Можно выделить несколько основных:

• сжатие некоторых файлов и целых директорий; • создание самораспаковывающихся (SFX) архивов. То есть для

распаковки архива программа-архиватор не требуется; • изменение содержимого архива; • шифрование содержимого архива; • информация для восстановления архива при частичном повре-

ждении и возможность восстановления поврежденных архивов; • разбивка архива на несколько частей или томов; • консольная версия программы для работы из командной строки; • графическая (GUI) версия программы. Кроме различий в функциональности, можно разбить архиваторы на

две группы: асимметричные и симметричные. Асимметричные архива-торы требуют для операции распаковки значительно меньше времени и оперативной памяти, чем для операции упаковки. Это позволяет быстро получать содержимое архива на маломощных компьютерах. Симметрич-ные архиваторы требуют для операций упаковки и распаковки одинаковое время и объем оперативной памяти. Использование таких архиваторов на широком парке компьютеров или для оперативного доступа к содержимо-му архива ограничено. Известный архиватор RAR в качестве основного использует асимметричный словарный метод сжатия, а для текстов может использовать симметричный PPM-метод. Таким образом, распаковка архи-вов RAR, сжатых с максимальной степенью сжатия, может быть невоз-можна на компьютерах с ограниченным объемом оперативной памяти. Все или почти все передовые архиваторы с высокой степенью сжатия являются симметричными.

Самым распространенным архиватором являются ZIP и его модифи-кации. По своей распространенности он значительно превосходит бли-жайших конкурентов. Следом идут RAR и ACE. В последние годы встре-чается архиватор 7-zip.

Page 97: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

97

2.5.3 Электронные словари и переводчики

На сегодняшний день существует две технологии автоматизации пе-реводов: системы Translation Memory (TM) и машинного перевода (МП).

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

Применение ТМ эффективно при переводе технической, финансо-вой, юридической и другой документации, с высокой степенью повторяе-мости текстов (в среднем количество повторов в проекте может достигать 50%, что означает увеличение скорости перевода в полтора-два раза). Ис-пользование данных систем также целесообразно при коллективной рабо-те, когда необходимо обеспечить согласованный перевод в рамках одного проекта. Весь перевод автоматически сохраняется в единой базе данных, доступной всем участникам процесса перевода. В режиме реального вре-мени пользователи видят результаты перевода друг друга. При этом пере-водчики могут находиться в одной локальной сети или подключаться уда-ленно. Это особенно важно для компаний, имеющих филиалы в разных го-родах и даже странах.

Среди подобных систем наиболее распространенной является SDL Trados (http://www.trados.com/). Она стала своего рода промышленным стандартом письменного перевода. По независимым оценкам, 80% пере-водчиков во всем мире применяют решения SDL Trados. Другой аналогич-ной системой является OmegaT(http://www.omegat.org/, http://omegat.info/), обладающая не столь обширными функциями.

Данные программные продукты ориентированы для профессиональ-ных переводчиков. Не для профессионалов более полезными могут быть системы машинного перевода.

Page 98: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

98

Существуют два принципиально разных подхода к построению алго-ритмов машинного перевода: основанный на грамматических правилах (Rule-Based Machine Translation, RBMT) и основанный на статистике (Statistical Machine Translation, SMT). Системы RBMT анализируют текст и строят его перевод на базе встроенных словарей и набора правил для дан-ной языковой пары. В системах SMT применяется принцип статистическо-го анализа: в программу загружаются большие (в миллионы слов) объёмы текстов на исходном языке и их переводы, выполненные человеком. Про-грамма анализирует статистику межъязыковых соответствий, словоупо-требления, синтаксических конструкций и т. д., и позже опирается на неё при выборе вариантов перевода – этот процесс называется самообучением. Систему может обучать и человек, корректируя выдаваемые переводы. Именно так работает широко известные сервисы «Переводчик Google», «Яндекс Переводчик».

1. Первый подход (RBMT) является традиционным и использовался большинством разработчиков систем машинного перевода на начальном этапе развития (ПРОМТ в России, SYSTRAN во Франции, Linguatec в Германии и др.).

PROMT (http://www.promt.ru/) – российское ПО, созданное в 1991 году. В 1992 году было изменено название на STYLUS, а в 1998 году было возвращено прежнее название. В 1993 году был создан пакет Stylus for Windows 2.0, ставший первой в мире программой перевода в среде Windows 3.1.

В настоящий момент существуют переводчики PROMT для англий-ского, немецкого, французского, испанского, итальянского, португальского и русского языков. Причем имеются пары не только с русским языком, но и с иностранными, например, англо-испанский, англо-португальский, немецко-французский, испанско-немецкий и т. п. Офисы компании откры-ты в России, США и Германии. В серверных продуктах PROMT доступны также китайский, японский, арабский и другие языки. В последние годы PROMT поставляет наряду с различными вариантами своей системы авто-матического перевода и сопутствующими специализированными словаря-ми ещё и собственные решения на основе технологии памяти переводов.

Первоначально в основе перевода PROMT лежала технология ма-шинного перевода, основанная на правилах RBMT. RBMT строится на ос-нове лингвистического описания двух естественных языков (двуязычных словарей и других баз данных, содержащих морфологическую, граммати-ческую и семантическую информацию), формальных грамматик и, соб-

Page 99: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

99

ственно, алгоритмов перевода. Качество перевода зависит от объёмов лингвистических баз данных (словарей) и глубины описания естественных языков, то есть необходим учет максимального количества особенностей грамматической структуры.

В конце 2010 года PROMT представил гибридную технологию пере-вода, совмещающую в себе подход RBMT и SMT. Суть такого совмещения в том, что вместо одного варианта перевода программа порождает множе-ство переводов, число которых у одного предложения, в зависимости от многозначности слов, конструкций и результатов статистической обработ-ки, может доходить до нескольких сотен. Далее вероятностная модель языка позволяет выбрать самый вероятный из предложенных вариантов.

Совмещение RBMT и SMT подходов дает преимущество от обеих технологий. Такой подход также позволяет быстро обучать переводчик.

Основные возможности: • перевод слов, словосочетаний и текстов, в том числе с помощью

«горячих» клавиш; • грамматическая и стилистическая проверка; • перевод выделенной области экрана с графическим текстом; • перевод документов разных форматов: doc(x), xls(x), ppt(x), rtf,

html, xml, txt, ttx, pdf (в том числе отсканированные), jpeg, png, tiff; • использование, редактирование и создание специализированных

словарей и профилей перевода; • подключение баз Translation Memory и глоссариев; • интеграция в офисные приложения, веб-браузеры, корпоратив-

ные порталы и сайты; • перевод веб – страниц в браузерах Internet Explorer, Mozilla

Firefox, Opera и Google Chrome; сообщений в ICQ, Skype, QIP, Windows Live Messenger.

На сегодняшний день существуют различные сборки переводчика для домашнего использования (например, Standard, Professional), которые имеют по несколько версий в зависимости от комплектации (дополнитель-ные словари, дополнительные опции).

Технология Text-to-Speech позволяет услышать как звучит исходный текст или текст перевода.

Среди систем электронного перевода программы-переводчики PROMT получили наибольшее распространение. Они предоставляют ши-рокие возможности по настройке на перевод текстов, подключению специ-ализированных словарей (PROMT предлагает приобрести дополнительно

Page 100: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

100

около 180 словарей по 33 тематикам) или создать собственный пользова-тельский словарь. Текст для перевода может вводиться не только с клавиа-туры или редактора, но и со сканера. При работе со сканером и наличии установленной на компьютере какой-либо системы оптического распозна-вания текстов (OCR) (FineReader, Cunieform или AutoR) можно запустить OCR-программу непосредственно из системы PROMT.

2 подход. Ко второму типу, основанному на самообучаемом алго-ритме статистического машинного перевода (SMT), относится популярный сервис Яндекс Переводчик, Переводчик Google, а также аналогичный до-статочно новый сервис от ABBYY.

Google Translator (http://translate.google.ru/) единственный on-line переводчик, не ограничивающий объем переводимого текста. Использует собственное программное обеспечение. Привлекает дружественный ин-терфейс, возможность автоматического определения языка, перевод веб-сайтов. От других аналогичных сервисов отличает скорость и функция ав-тозаполнение, при ручном вводе текста. Имеется возможность услышать произношение текста. У сервиса есть свои особенности из-за того, что вы-дача вариантов контролируется статистическим алгоритмом, при переводе обычных общеупотребительных слов Google Переводчик может предла-гать в числе возможных вариантов нецензурные слова. На результат выда-чи также можно повлиять, массово предлагая некий, в том числе, заведомо неверный вариант перевода.

Google Переводчик предлагает перевод с любого поддерживаемого языка на любой поддерживаемый, но в большинстве случаев реально вы-полняет перевод через английский. Иногда качество от этого сильно стра-дает.

Компания Abbyy предлагает пользователям сервис «TextGrabber + Translater» (http://www.abbyy.ru/textgrabber_translator/). Принцип работы предполагает следующее: пользователю достаточно запустить приложе-ние, сфотографировать текст, который необходимо перевести, нажать кнопку «распознать», потом текст можно отредактировать и перевести на один из 40 доступных языков. Помимо полнотекстового перевода в про-грамме доступен пословный перевод, при наличии на устройстве установ-ленного словаря.

В последние годы наблюдается развитие гибридных систем, соче-тающие преимущества тех и других. Благодаря способности таких систем обучаться и накапливать языковые данные, качество перевода у них по-

Page 101: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

101

вышается с каждым переведённым текстом. Последние версии PROMT в большей степени относятся к гибридным системам.

Качество перевода зависит от тематики и стиля исходного текста, а также грамматической, синтаксической и лексической родственности язы-ков, между которыми производится перевод. Машинный перевод художе-ственных текстов практически всегда оказывается неудовлетворительного качества. Тем не менее для технических документов при наличии специа-лизированных машинных словарей и некоторой настройке системы на особенности того или иного типа текстов возможно получение перевода приемлемого качества, который нуждается лишь в небольшой редактор-ской корректировке. Чем более формализован стиль исходного документа, тем большего качества перевода можно ожидать. Самых лучших результа-тов при использовании машинного перевода можно достичь для текстов, написанных в техническом (различные описания и руководства) и офици-ально-деловом стиле.

В повседневной работе часто используются электронные словари. Среди электронных словарей выделяется профессиональный словарь

ABBYY Lingvo (http://www.lingvo.ru). ABBYY Lingvo – компьютерная программа и семейство электронных словарей. Многоязычная версия охва-тывает 15 языков – русский, украинский, английский, немецкий, француз-ский, испанский, итальянский, турецкий, латинский, китайский, порту-гальский, татарский, казахский, шведский, польский и финский. Также существует Европейская версия, содержащая 130 словарей на 7 языках и англо-русско-английский электронный словарь.

В ABBYY Lingvo нет функции полнотекстового перевода, но возмо-жен пословный перевод текстов из буфера обмена. В некоторых словарях на английском, немецком и французском большинство слов озвучены про-фессиональными дикторами – носителями языка. Lingvo является хорошим средством для оперативной помощи при переводе, когда надо быстро про-смотреть варианты перевода слова.

Грамматические комментарии на любое слово, озвучивание наиболее употребляемых слов, проверка правильности написания, возможность со-здания собственных словарей – вот перечень основных возможностей Lingvo, используемых не только при переводе текста, но и при изучении иностранного языка.

В сети доступно большое количество on-line словарей. Мультитран (http://www.multitran.ru/) в настоящее время это один из

наиболее полных и самых популярных автоматических онлайновых слова-

Page 102: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

102

рей Рунета. Помимо интернет-версии, распространяется оффлайн-версия «Мультитрана».

Dicto (http://dicto.org.ru/) электронный словарь, обладает полным набором свойств, свойственных качественным комплексным средствам пе-ревода, в том числе возможностью использования глобальных горячих клавиш для перевода из внешних приложений и высокой скоростью рабо-ты. Работа над проектом приостановлена с 2009 года.

2.5.4 Программы распознавания текста

Задача распознавания текстовой информации при переводе печатно-го и рукописного текста в электронную форму является одной из важней-ших составляющих любого проекта, имеющего целью автоматизацию до-кументооборота или внедрение безбумажных технологий. Вместе с тем эта задача является одной из наиболее сложных и наукоемких задач полно-стью автоматического анализа изображений. Даже человек, читающий ру-кописный текст, в отрыве от контекста, делает в среднем около 4% оши-бок. Между тем, в наиболее ответственных системах оптического распо-знавания текста (Optical Character Recognition – OCR) необходимо обеспе-чивать более высокую надежность распознавания (свыше 99%) даже при плохом качестве печати и оцифровки исходного текста.

Типовые проблемы, связанные с распознаванием символов. Имеется ряд существенных проблем, связанных с распознаванием

рукописных и печатных символов. Наиболее важные из них следующие: • разнообразие форм начертания символов; • искажение изображений символов; • вариации размеров и масштаба символов. Каждый отдельный символ может быть написан различными стан-

дартными шрифтами, например (Times, Gothic, Elite, Courier, Orator), а также – множеством нестандартных шрифтов, используемых в различных предметных областях. При этом различные символы могут обладать сход-ными очертаниями. Например, «U» и «V», «S» и «5», «Z» и «2», «G» и «6».

Искажения цифровых изображений текстовых символов могут быть вызваны:

• шумами печати, в частности, непропечаткой (разрывами слитных черт символов), «слипанием» соседних символов, пятнами и ложными точками на фоне вблизи символов и т. п.;

• смещением символов или частей символов относительно их ожи-даемого положения в строке;

Page 103: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

103

• изменением наклона символов; • искажением формы символа за счет оцифровки изображения с

"грубым" дискретом; • эффектами освещения (тени, блики и т. п.) при съемке видеока-

мерой. Существенным является и влияние исходного масштаба печати. Система оптического распознавания текста (OCR), должна выделять

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

Структура систем оптического распознавания текстов. Системы OCR состоят из следующих основных блоков, предполага-

ющих аппаратную или программную реализацию: • блок сегментации (локализации и выделения) элементов текста; • блок предобработки изображения; • блок выделения признаков; • блок распознавания символов; • блок постобработки результатов распознавания. Эти алгоритмические блоки соответствуют последовательным шагам

обработки и анализа изображений, выполняемым последовательно. Сначала осуществляется выделение текстовых областей, строк и раз-

биение связных текстовых строк на отдельные знакоместа, каждое из ко-торых соответствует одному текстовому символу.

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

Выделение признаков является одной из наиболее трудных и важных задач в распознавании образов. Для распознавания символов может быть использовано большое количество различных систем признаков. Проблема заключается в том, чтобы выделить именно те признаки, которые позволят эффективно отличать один класс символов от всех остальных в данной конкретной задаче. Ряд методов основывается на непосредственном срав-нении изображений тестового и эталонного символов. При этом вычисля-ется степень сходства между образом и каждым из эталонов. Второй более

Page 104: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

104

сложные подход – группа структурных методов, которые основаны на нахождении специфических особенностей символов. Разработка алгорит-мов, которые позволяют распознавать символы – трудная задача, особенно для распознавания рукописных текстов. Как правило, современные систе-мы распознавания текста (в том числе FineReader) являются структурно-шаблонными.

Основное назначение OCR-систем состоит в анализе растровой ин-формации (отсканированного символа) и присвоении фрагменту изобра-жения соответствующего символа. После завершения процесса распозна-вания OCR-системы должны уметь сохранять форматирование исходных документов, присваивать в нужном месте атрибут абзаца, сохранять таб-лицы, графику и т.д. Современные программы распознавания поддержи-вают все известные текстовые и графические форматы и форматы элек-тронных таблиц, а также такие форматы, как HTML и PDF.

Работа с OCR-системами, как правило, не должна вызывать особых затруднений. Большинство таких систем имеют простейший автоматиче-ский режим сканируй и распознавай (Scan&Read). Кроме того, они под-держивают и режим распознавания изображений из файлов. Однако для того, чтобы достигнуть лучших из возможных для данной системы резуль-татов, желательно (а нередко и обязательно) предварительно вручную настроить ее на конкретный вид текста, макет бланка и качество бумаги.

На данный момент существует большое количество программ, под-держивающих распознавание текста как одну из возможностей. Лидером в этой области является FineReader. Это программный продукт российской фирмы ABBYY. Основные возможности (на основе: FineReader 12):

• распознавание более 190 различных языков, включая арабский, китайский и другие азиатские, а также любые их комбинации с автомати-ческим определением языка документа;

• работа с файлами следующих форматов: PDF, BMP, PCX, DCX, JPEG, JPEG 2000, TIFF, PNG, DjVu;

• содержит такие опции как: очистить изображение от мусора, устранить перекосы, устранить искажение строк, инвертировать изображе-ние, повернуть или зеркально отразить изображение, обрезать изображе-ние, стереть часть изображения;

• определение структуры документа (верхние и нижние колонти-тулы, сноски, подписи к картинкам и диаграммам, стили, шрифты и т.д. Элементы исходного документа восстанавливаются в результирующем до-

Page 105: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

105

кументе. Например, при сохранении в Word верхние и нижние колонтиту-лы, сноски воспроизводятся как соответствующие объекты в Word);

• распознавание цифровых фотографий документов (рекомендует-ся использовать цифровой фотоаппарат с разрешением матрицы 4 Мпикс и выше);

• распознавание гиперссылок и воспроизведение их в выходных документах; такие документы могут быть сохранены в форматах Microsoft Word, PDF и HTML;

• распознавание скриншотов; • распознавание штрих-кодов; • экспорт результатов распознавания в популярные офисные при-

ложения: Microsoft Word, Microsoft Excel, Microsoft PowerPoint, Lotus Word Pro, Corel WordPerfect, OpenOffice;

• сохранение в различных форматах : PDF, PDF/A, DOCX, XLSX, RTF, DOC, XLS, CSV, TXT, HTML, Unicode TXT, Word ML, LIT, DBF;

• создание PDF-файлов, защищённых паролем; • создание PDF-файлов с тегами; • автоматическая обработка документов (можно создать собствен-

ный сценарий); • вызов из Microsoft Word и Excel; • интеграция с почтовыми программами; • многоколоночный WYSIWYG-редактор для максимально точно-

го воспроизведение всех деталей оформления документа: колонки текста, таблицы и картинки.

2.6 С истемы математических вы числений M atL ab, M athC ad. Н азначение, возможности, примеры применения

Сегодня серьезное конструирование, градостроительство и архитек-тура, электротехника и масса смежных с ними отраслей, а также учебные заведения технической направленности уже не могут обойтись без систем автоматизированного проектирования (САПР), производства и расчетов. А математические пакеты являются составной частью CAE-систем (Computer Aided Engeneering), но эта часть никак не может считаться второстепенной, поскольку некоторые задачи вообще невозможно решить без помощи ком-пьютера. Более того, к системам символьной математики сегодня прибе-гают даже теоретики (так называемые чистые, а не прикладные математи-ки), например для проверки своих гипотез. С середины 90-х годов пакеты

Page 106: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

106

для параметрического моделирования с промышленными возможностями стали доступны пользователям персональных компьютеров.

В математических пакетах в настоящее время применяется принцип конструирования модели, а не традиционное «искусство программирова-ния». То есть пользователь лишь ставит задачу, а методы и алгоритмы ре-шения система находит сама. Более того, такие операции, как раскрывание скобок, преобразование выражений, нахождение корней уравнений, произ-водных и неопределенных интегралов компьютер самостоятельно осу-ществляет в символьном виде, причем практически без вмешательства пользователя.

Современные математические пакеты можно использовать и как обычный калькулятор, и как средства для упрощения выражений при ре-шении каких-либо задач, и как генератор графики или даже звука! Стан-дартными стали также средства взаимодействия с Интернетом, и генерация HTML-страниц выполняется теперь прямо в процессе вычислений. Теперь можно решать задачу и одновременно публиковать для коллег ход ее ре-шения на своей домашней странице.

В настоящее время практически все современные CAE-программы имеют встроенные функции символьных вычислений. Однако наиболее известными и приспособленными для математических символьных вычис-лений считаются Maple, MathCad, Mathematica и MatLab.

Спектр задач, решаемых подобными системами, очень широк: • проведение математических исследований, требующих вычисле-

ний и аналитических выкладок; • разработка и анализ алгоритмов; • математическое моделирование и компьютерный эксперимент; • анализ и обработка данных; • визуализация, научная и инженерная графика; • разработка графических и расчетных приложений. При этом отметим, что поскольку CAE-системы содержат операторы

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

MatLab (http://www.mathworks.com/) Система MatLab относится к среднему уровню продуктов, предна-

значенных для символьной математики. Несмотря на то, что изначально MatLab предназначалась исключительно для вычислений, в процессе эво-люции, в дополнение к вычислительным средствам, у фирмы Waterloo

Page 107: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

107

Maple по лицензии для MatLab было приобретено ядро символьных преоб-разований, а также появились библиотеки, которые обеспечивают в MatLab уникальные для математических пакетов функции. Например, ши-роко известная библиотека Simulink, реализуя принцип визуального про-граммирования, позволяет построить логическую схему сложной системы управления из одних только стандартных блоков, не написав при этом ни строчки кода. После конструирования такой схемы можно детально про-анализировать ее работу.

В системе MatLab также существуют широкие возможности для про-граммирования. Ее библиотека C Math (компилятор MatLab) является объ-ектной и содержит свыше 300 процедур обработки данных на языке C. Внутри пакета можно использовать как процедуры самой MatLab, так и стандартные процедуры языка C, что делает этот инструмент мощнейшим подспорьем при разработке приложений (используя компилятор C Math, можно встраивать любые процедуры MatLab в готовые приложения).

Рисунок 2.3 – Рабочее окно MatLab Библиотека C Math позволяет пользоваться следующими категория-

ми функций:

Page 108: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

108

• операции с матрицами; • сравнение матриц; • решение линейных уравнений; • разложение операторов и поиск собственных значений; • нахождение обратной матрицы; • поиск определителя; • вычисление матричного экспоненциала; • элементарная математика; • функции beta, gamma, erf и эллиптические функции; • основы статистики и анализа данных; • поиск корней полиномов; • фильтрация, свертка; • быстрое преобразование Фурье (FFT); • интерполяция; • операции со строками; • операции ввода-вывода файлов и т.д. При этом все библиотеки MatLab отличаются высокой скоростью

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

Для визуализации моделирования система MatLab имеет библиотеку Image Processing Toolbox, которая обеспечивает широкий спектр функций, поддерживающих визуализацию проводимых вычислений непосредствен-но из среды MatLab, увеличение и анализ, а также возможность построе-ния алгоритмов обработки изображений. Усовершенствованные методы графической библиотеки в соединении с языком программирования MatLab обеспечивают открытую расширяемую систему, которая может быть использована для создания специальных приложений, пригодных для обработки графики.

Основные средства библиотеки Image Processing Tollbox:

Page 109: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

109

• построение фильтров, фильтрация и восстановление изображе-ний;

• увеличение изображений; • анализ и статистическая обработка изображений; • выделение областей интересов, геометрические и морфологиче-

ские операции; • манипуляции с цветом; • двумерные преобразования; • блок обработки; • средство визуализации; • запись/чтение графических файлов. Таким образом, систему MatLab можно использовать для обработки

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

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

Среди других библиотек системы MatLab можно также отметить System Identification Toolbox – набор инструментов для создания матема-тических моделей динамических систем, основанных на наблюдаемых входных/выходных данных. Особенностью этого инструментария является наличие гибкого пользовательского интерфейса, позволяющего организо-вать данные и модели. Библиотека System Identification Toolbox поддержи-вает как параметрические, так и непараметрические методы. Интерфейс системы облегчает предварительную обработку данных, работу с итера-

Page 110: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

110

тивным процессом создания моделей для получения оценок и выделения наиболее значимых данных. Быстрое выполнение с минимальными усили-ями таких операций, как открытие/сохранение данных, выделение области возможных значений данных, удаление погрешностей, предотвращение ухода данных от характерного для них уровня.

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

А что касается математических вычислений, то MatLab предоставля-ет доступ к огромному количеству подпрограмм, содержащихся в библио-теке NAG Foundation Library компании Numerical Algorithms Group Ltd (инструментарий имеет сотни функций из различных областей математи-ки, и многие из этих программ были разработаны широко известными в мире специалистами). Это уникальная коллекция реализаций современных численных методов компьютерной математики, созданных за последние три десятка лет. Таким образом, MatLab вобрала и опыт, и правила, и ме-тоды математических вычислений, накопленные за тысячи лет развития математики. Одну только прилагаемую к системе обширную документа-цию вполне можно рассматривать как фундаментальный многотомный электронный справочник по математическому обеспечению.

Из недостатков системы MatLab можно отметить невысокую инте-грированность среды (очень много окон, с которыми лучше работать на двух мониторах), не очень внятную справочную систему (а между тем объем фирменной документации достигает почти 5 тыс. страниц, что дела-ет ее трудно обозримой) и специфический редактор кода MatLab-программ. Сегодня система MatLab широко используется в технике, науке и образовании, но все-таки она больше подходит для анализа данных и ор-ганизации вычислений, нежели для чисто математических выкладок.

MathCad (http://www.mathsoft.com/, http://www.mathcad.com/) В отличие от мощного и ориентированного на высокоэффективные

вычисления при анализе данных пакета MatLab, программа MathCad – это, скорее, простой, но продвинутый редактор математических текстов с ши-рокими возможностями символьных вычислений и достаточно простым интерфейсом. MathCad не имеет языка программирования как такового, а

Page 111: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

111

движок символьных вычислений заимствован из пакета Maple. Зато ин-терфейс программы MathCad очень простой, а возможности визуализации богатые. Все вычисления здесь осуществляются на уровне визуальной за-писи выражений в общеупотребительной математической форме. Пакет имеет хорошие подсказки, подробную документацию, функцию обучения использованию, целый ряд дополнительных модулей и приличную техни-ческую поддержку производителя. Однако пока математические возмож-ности MathCad в области компьютерной алгебры намного уступают систе-мам Maple, Mathematica, MatLab. По программе MathCad выпущено много книг и обучающих курсов. Сегодня эта система стала буквально междуна-родным стандартом для технических вычислений и даже многие школьни-ки осваивают и используют MathCad.

Рисунок 2.4 – Интерфес MathCad Для небольшого объема вычислений MathCad очень удобен – здесь

все можно проделать очень быстро и эффективно, а затем оформить работу в привычном виде (MathCad предоставляет широкие возможности для

Page 112: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

112

оформления результатов, вплоть до публикации в Интернете). Пакет имеет удобные возможности импорта/экспорта данных. Например, можно рабо-тать с электронными таблицами Microsoft Excel прямо внутри MathCad-документа.

Отметим, что практически все эти системы работают не только на персональных компьютерах, оснащенных популярными операционными системами Windows, но и под управлением операционных системы Linux, UNIX, Mac OS.

2.7 С истема подготовки презентаций. Н азначение, возможности. Работа в M S Power Point

Обширные возможности операционной системы Windows позволяют подготовить любую презентацию или организовать рекламную компанию. В частности, программное приложение Microsoft PowerPoint предназначе-но исключительно для этих целей.

Рассмотрим определения некоторых терминов и понятий, использу-емых в дальнейшем при описании возможностей приложения PowerPoint.

Анимация – создание эффекта непрерывного движения некоторых объектов (как плоских, так и объемных) за счет быстрого последователь-ного воспроизведения изображений (кадров).

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

Слайд – изображение, демонстрируемое на экране компьютера или на другом демонстрационном экране с помощью компьютера и специаль-ных устройств (например, проектора).

Слайд-шоу – демонстрация слайдов с помощью компьютера во время выступления, доклада.

Сценарий – план презентации, рекламного ролика, слайд–шоу. Для придания слайдам большей наглядности и информативности на

них помимо текста могут быть размещены следующие объекты: • таблицы; • диаграммы; • рисунки. Для использования диаграммы на слайде PowerPoint ее можно пере-

нести из программ Excel или Word. Для этого следует выделить диаграмму

Page 113: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

113

в соответствующем приложении и скопировать ее в буфер обмена. В про-грамме PowerPoint следует выполнить команду Правка – Вставить. Диа-грамма будет вставлена в слайд.

Простые диаграммы можно попытаться создать с помощью специ-альной программы Microsoft Graph, входящей в состав Microsoft Office.

Что может PowerPoint? Перечислим основные возможности данного приложения: • создание и редактирование сценария презентации; • манипулирование слайдами (вставка, редактирование, удаление); • работа с иллюстрациями; • форматирование иллюстраций; • использование шаблонов; • создание и редактирование текстовых фрагментов в слайдах; • автоматическая работа за счет использования Мастеров. В основе любой презентации лежит набор слайдов, на которых раз-

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

PowerPoint предоставляет 5 различных режимов просмотра презен-тации:

• режим Слайды (Обычный) – служит для просмотра каждого слайда по отдельности, для правки слайдов. В этом режиме удобно редак-тировать отдельные объекты, добавлять рисунки и текстовые коммента-рии;

• режим Структура презентации включает все текстовую инфор-мацию на слайдах. В данном режиме можно создать все заголовки слайдов; основной текст слайдов; изменить текст и начертание шрифта; изменять художественное оформление содержимого слайдов. Этот режим в основ-ном предназначен для работы над текстом. Он позволяет сконцентриро-ваться на словесном изложении идей, подобрать оптимальную последова-тельность подачи материала;

• режим Сортировщик слайдов – предназначен для работы с пре-зентацией в целом. В данном режиме можно изменить порядок следования слайдов и задать видеоэффекты, используемые при переходе к следующе-му слайду или при заполнении слайда объектами;

• режим Страница заметок – служит для просмотра каждой стра-ницы со слайдом и заметками к нему, ввод комментариев. Эти заметки не

Page 114: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

114

видны на экране в режиме просмотра презентации, они не выводятся на печать вместе со слайдом. Однако, проводя электронную презентацию в локальной сети, докладчик может читать заметки на экране своего компь-ютера. Кроме того, страницы заметок можно распечатать и пользоваться ими во время доклада;

• режим Показ слайдов – служит для вывода на экран подготов-ленных слайдов презентации. Выход из просмотра презентации осуществ-ляется нажатием клавиши Esc.

Все входящие в презентацию слайды должны быть объединены в единую систему и решать одну задачу – последовательное изложение определенного материала. Для того чтобы информация лучше восприни-малась аудиторией, презентация должна протекать плавно; каждый новый слайд должен вписываться в ход повествования. Одним из способов обес-печения плавного повествования является подбор способа перехода от слайда к слайду. Реализация перехода от слайда к слайду – это творческий процесс. Один слайд может быть затемненным, а следующий сразу за ним очень ярким. На каком–то слайде отражена информация, над которой сто-ит поразмыслить, и тут же следует слайд, побуждающий вас улыбнуться и ни о чем не думать.

Для монтажа слайдов PowerPoint предлагает более десятка разных типов переходов, каждый из которых представлен несколькими варианта-ми. Предусмотрены следующие переходы:

• жалюзи. Открываются постепенно, пока вы не увидите весь но-вый слайд. Бывают горизонтальными и вертикальными;

• прямоугольник. Уменьшается до точки в центре слайда или увеличивается до размеров слайда;

• шашки. Небольшие квадратики покрывают весь слайд, затем увеличиваются в стороны или вниз;

• наплыв. Новый слайд появляется сверху, снизу, с любой сторо-ны или из любого угла и постепенно закрывает предыдущий слайд;

• прорезание. Это резкий переход; • растворение. Небольшие точки, образующие новый слайд, по-

степенно увеличиваются, закрывая предыдущий; • выцветание через черное. Реализуется эффект исчезновения и

появления; • случайные полосы. Появляются толстые и тонкие линии (вер-

тикальные или горизонтальные) и постепенно превращаются в новый слайд;

Page 115: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

115

• панорама. Напоминает занавески над слайдом; • уголки. Новый слайд появляется, покрывая предыдущий по диа-

гонали зубчатой кромкой; • открывание. В отличие от вставки, где новый слайд сразу за-

полняет весь экран, здесь части экрана с новым изображением постепенно открываются в любом из 8 направления;

• появление. Медленно появляется новый слайд, закрывая ста-рый;

• случайный переход. Переходы между отдельными слайдами различны и изменяются случайным образом на каждой новой презентации;

• и др. В программе PowerPoint предусмотрены несколько вариантов по-

строения слайда. Например, можно использовать такой способ: уже сфор-мированные фрагменты слайда могут как бы "прилетать" на экран с раз-ных сторон. Для этого используется Анимация.

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

Рисунок 2.5 – Элементы управления

Возможны различные варианты сохранения презентации: Презента-ция (расширение .pptx) или Демонстрация PowerPoint (расшире-ние.ppsx). Основные различия между расширениями .pptx и .ppsx:

1. Если нажать на файл с расширением точка pptx, то презентация откроется в режиме редактирования. Если кликнуть на файл с расширени-ем точка ppsx, то автоматически запустится сама презентация.

Page 116: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

116

2. В файле pptx можно с легкостью изменять шрифт, его размер и цвет, также можно добавить звуковые эффекты, графические изображения и настроить переходы. Поскольку ppsx файл не открывается в режиме ре-дактирования, то для внесения каких-либо изменений, придётся задать этому файлу расширение pptx, отредактировать его, затем снова сохранить как ppsx файл.

3. Файл рptx содержит скрытую информацию, например, имя автора, комментарии, аннотации, невидимые слайды и заметки о презентации. Файл рpsx чистый и официальный, потому как скрытая информация была удалена перед его сохранением с этим расширением.

4. Лекторам и дикторам удобнее работать не с pptx, а с ppsx файла-ми, которые значительно ускоряют процесс запуска презентации. Чтобы открыть презентацию с расширением pptx, придётся пройти несколько этапов и подождать несколько минут.

Как же нужно сохранять презентацию? 1. Рекомендуется сохранять ее как Демонстрация, при этом она со-

храняется в специальном формате .ppsx. 2. Существует возможность демонстрации презентации на любом

компьютере. При этом вы можете абсолютно не задумываться – установ-лен ли на компьютере Power Point (и какой версии) или не установлен, установлены ли те или иные хитрые шрифты или не установлены: в этом случае все необходимое находится в одной папке: Power Point позволяет собрать вместе все ресурсы, необходимые для показа презентации (шриф-ты, медиа-файлы, и даже проектор, позволяющий показать презентацию на компьютере, на котором не установлен Microsoft Office) и сохранить это в одной папке – «Все свое ношу с собой!». Особенно это актуально в насто-ящее время, когда широко используются различные версии Power Point.

Для того, чтобы это сделать в Power Point 2010 надо выбрать Файл – Сохранить и Отправить, а затем – Упаковать презентацию для ком-пакт-диска.

Пусть слово «компакт-диск» вас не смущает – Вы можете сохранить подборку в любой папке на вашем компьютере. Просто укажите располо-жение нужной папки в следующем окошке (рисунок 2.6):

Page 117: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

117

Рисунок 2.6 – Сохранение презентации со всеми необходимыми ресурсами для по-каза

Не забудьте указать, что нужно включить все связанные файлы в па-

кет (просто ответьте Да, когда об этом спросят) – это даст вам полностью автономный набор.

Page 118: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

118

Т Е М А 3 С Е Т Е В Ы Е Т Е Х Н ОЛ ОГ И И И И Н Т Е РН Е Т

3.1 М одель структуры протоколов связи

Для единого представления данных в сетях с неоднородными устройствами и программным обеспечением международная организация по стандартам ISO (International Standardization Organization) разработала базовую модель связи открытых систем OSI (Open System Interconnection). Эта модель описывает правила и процедуры передачи данных в различных сетевых средах при организации сеанса связи. Основными элементами мо-дели являются уровни, прикладные процессы и физические средства со-единения. На рисунке 3.1 представлена структура базовой модели.

Рисунок 3.1 – Модель OSI

Каждый уровень модели OSI выполняет определенную задачу в про-цессе передачи данных по сети. Базовая модель является основой для раз-работки сетевых протоколов. OSI разделяет коммуникационные функции в сети на семь уровней, каждый из которых обслуживает различные части процесса области взаимодействия открытых систем.

Взаимодействие уровней модели OSI Модель OSI можно разделить на две различных модели, как показано

на рисунке 3.2: • горизонтальную модель на базе протоколов, обеспечивающую

механизм взаимодействия программ и процессов на различных машинах;

Page 119: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

119

• вертикальную модель на основе услуг, обеспечиваемых соседни-ми уровнями друг другу на одной машине.

Рисунок 3.2 – Схема взаимодействия компьютеров в базовой эталонной модели OSI

Каждый уровень компьютера-отправителя взаимодействует с таким же уровнем компьютера-получателя, как будто он связан напрямую. Такая связь называется логической или виртуальной связью. В действительности взаимодействие осуществляется между смежными уровнями одного ком-пьютера.

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

В горизонтальной модели двум программам требуется общий прото-кол для обмена данными. В вертикальной модели соседние уровни обме-ниваются данными с использованием интерфейсов прикладных программ API (Application Programming Interface).

Перед подачей в сеть данные разбиваются на пакеты. Пакет (packet) – это единица информации, передаваемая между станциями сети.

Page 120: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

120

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

Рисунок 3.3 – Формирование пакета каждого уровня семиуровневой модели

На принимающей стороне пакет проходит через все уровни в обрат-

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

Каждый уровень модели выполняет свою функцию. Чем выше уро-вень, тем более сложную задачу он решает.

Отдельные уровни модели OSI удобно рассматривать как группы программ, предназначенных для выполнения конкретных функций. Один уровень, к примеру, отвечает за обеспечение преобразования данных из ASCII в EBCDIC и содержит программы, необходимые для выполнения этой задачи.

Каждый уровень обеспечивает сервис для вышестоящего уровня, за-прашивая в свою очередь сервис у нижестоящего уровня. Верхние уровни

Page 121: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

121

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

Рисунок 3.4 – Функции уровней модели OSI

Рассматриваемая модель определяет взаимодействие открытых си-стем разных производителей в одной сети. Поэтому она выполняет для них координирующие действия по:

• взаимодействию прикладных процессов; • формам представления данных; • единообразному хранению данных; • управлению сетевыми ресурсами; • безопасности данных и защите информации; • диагностике программ и технических средств. Прикладной уровень (Application layer). Прикладной уровень

обеспечивает прикладным процессам средства доступа к области взаимо-

Page 122: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

122

действия, является верхним (седьмым) уровнем и непосредственно примы-кает к прикладным процессам.

В действительности прикладной уровень – это набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например с помощью протокола электронной почты. Специальные элементы приклад-ного сервиса обеспечивают сервис для конкретных прикладных программ, таких как программы пересылки файлов и эмуляции терминалов. Если, например программе необходимо переслать файлы, то обязательно будет использован протокол передачи, доступа и управления файлами FTAM (File Transfer, Access, and Management). В модели OSI прикладная про-грамма, которой нужно выполнить конкретную задачу (например, обно-вить базу данных на компьютере), посылает конкретные данные в виде Дейтаграммы на прикладной уровень. Одна из основных задач этого уров-ня – определить, как следует обрабатывать запрос прикладной программы, другими словами, какой вид должен принять данный запрос.

Единица данных, которой оперирует прикладной уровень, обычно называется сообщением (message).

Прикладной уровень выполняет следующие функции: 1. Выполнение различных видов работ: • передача файлов; • управление заданиями; • управление системой и т. д;

2. Идентификация пользователей по их паролям, адресам, электрон-ным подписям.

3. Определение функционирующих абонентов и возможности досту-па к новым прикладным процессам.

4. Определение достаточности имеющихся ресурсов. 5. Организация запросов на соединение с другими прикладными

процессами. 6. Передача заявок представительскому уровню на необходимые ме-

тоды описания информации. 7. Выбор процедур планируемого диалога процессов. 8. Управление данными, которыми обмениваются прикладные про-

цессы и синхронизация взаимодействия прикладных процессов. 9. Определение качества обслуживания (время доставки блоков дан-

ных, допустимой частоты ошибок).

Page 123: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

123

10. Соглашение об исправлении ошибок и определении достоверно-сти данных.

11. Согласование ограничений, накладываемых на синтаксис (набо-ры символов, структура данных).

Указанные функции определяют виды сервиса, которые прикладной уровень предоставляет прикладным процессам. Кроме этого, прикладной уровень передает прикладным процессам сервис, предоставляемый физи-ческим, канальным, сетевым, транспортным, сеансовым и представитель-ским уровнями.

На прикладном уровне необходимо предоставить в распоряжение пользователей уже переработанную информацию. С этим может справить-ся системное и пользовательское программное обеспечение.

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

К числу наиболее распространенных протоколов верхних трех уров-ней относятся:

• FTP (File Transfer Protocol) протокол передачи файлов; • TFTP (Trivial File Transfer Protocol) простейший протокол пере-

сылки файлов; • X.400 электронная почта; • Telnet работа с удаленным терминалом; • SMTP (Simple Mail Transfer Protocol) простой протокол почтового

обмена; • CMIP (Common Management Information Protocol) общий прото-

кол управления информацией; • SLIP (Serial Line IP) IP для последовательных линий. Протокол

последовательной посимвольной передачи данных; • SNMP (Simple Network Management Protocol) простой протокол

сетевого управления; • FTAM (File Transfer, Access, and Management) протокол передачи,

доступа и управления файлами. Уровень представления данных (Presentation layer). Функции

данного уровня – представление данных, передаваемых между приклад-ными процессами, в нужной форме.

Этот уровень обеспечивает то, что информация, передаваемая при-кладным уровнем, будет понятна прикладному уровню в другой системе. В случаях необходимости уровень представления в момент передачи инфор-

Page 124: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

124

мации выполняет преобразование форматов данных в некоторый общий формат представления, а в момент приема, соответственно, выполняет об-ратное преобразование. Таким образом, прикладные уровни могут преодо-леть, например, синтаксические различия в представлении данных. Такая ситуация может возникнуть в ЛВС с неоднотипными компьютерами (IBM PC и Macintosh), которым необходимо обмениваться данными. Так, в по-лях баз данных информация должна быть представлена в виде букв и цифр, а зачастую и в виде графического изображения. Обрабатывать же эти данные нужно, например, как числа с плавающей запятой.

В основу общего представления данных положена единая для всех уровней модели система ASN.1. Эта система служит для описания струк-туры файлов, а также позволяет решить проблему шифрования данных. На этом уровне может выполняться шифрование и дешифрование данных, благодаря которым секретность обмена данными обеспечивается сразу для всех прикладных сервисов. Примером такого протокола является протокол Secure Socket Layer (SSL), который обеспечивает секретный обмен сооб-щениями для протоколов прикладного уровня стека TCP/IP. Этот уровень обеспечивает преобразование данных (кодирование, компрессия и т.п.) прикладного уровня в поток информации для транспортного уровня.

Представительный уровень выполняет следующие основные функ-ции:

1. Генерация запросов на установление сеансов взаимодействия при-кладных процессов.

2. Согласование представления данных между прикладными процес-сами.

3. Реализация форм представления данных. 4. Представление графического материала (чертежей, рисунков,

схем). 5. Засекречивание данных. 6. Передача запросов на прекращение сеансов. Протоколы уровня представления данных обычно являются состав-

ной частью протоколов трех верхних уровней модели. Сеансовый уровень (Session layer). Сеансовый уровень – это уро-

вень, определяющий процедуру проведения сеансов между пользователя-ми или прикладными процессами.

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

Page 125: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

125

ют вставлять контрольные точки в длинные передачи, чтобы в случае отка-за можно было вернуться назад к последней контрольной точке, вместо то-го чтобы начинать все сначала. На практике немногие приложения исполь-зуют сеансовый уровень, и он редко реализуется.

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

На сеансовом уровне определяется, какой будет передача между двумя прикладными процессами:

• полудуплексной (процессы будут передавать и принимать дан-ные по очереди);

• дуплексной (процессы будут передавать данные, и принимать их одновременно).

В полудуплексном режиме сеансовый уровень выдает тому процес-су, который начинает передачу, маркер данных. Когда второму процессу приходит время отвечать, маркер данных передается ему. Сеансовый уро-вень разрешает передачу только той стороне, которая обладает маркером данных.

Сеансовый уровень обеспечивает выполнение следующих функций: 1. Установление и завершение на сеансовом уровне соединения меж-

ду взаимодействующими системами. 2. Выполнение нормального и срочного обмена данными между при-

кладными процессами. 3. Управление взаимодействием прикладных процессов. 4. Синхронизация сеансовых соединений. 5. Извещение прикладных процессов об исключительных ситуациях. 6. Установление в прикладном процессе меток, позволяющих после

отказа либо ошибки восстановить его выполнение от ближайшей метки. 7. Прерывание в нужных случаях прикладного процесса и его кор-

ректное возобновление. 8. Прекращение сеанса без потери данных.

Page 126: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

126

9. Передача особых сообщений о ходе проведения сеанса. Сеансовый уровень отвечает за организацию сеансов обмена данны-

ми между оконечными машинами. Протоколы сеансового уровня обычно являются составной частью протоколов трех верхних уровней модели.

Транспортный уровень (Transport Layer). Транспортный уровень предназначен для передачи пакетов через коммуникационную сеть. На транспортном уровне пакеты разбиваются на блоки.

На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением. Работа транспортного уровня заклю-чается в том, чтобы обеспечить приложениям или верхним уровням моде-ли (прикладному и сеансовому) передачу данных с той степенью надежно-сти, которая им требуется. Модель OSI определяет пять классов сервиса, предоставляемых транспортным уровнем. Эти виды сервиса отличаются качеством предоставляемых услуг: срочностью, возможностью восстанов-ления прерванной связи, наличием средств мультиплексирования несколь-ких соединений между различными прикладными протоколами через об-щий транспортный протокол, а главное способностью к обнаружению и исправлению ошибок передачи, таких как искажение, потеря и дублирова-ние пакетов.

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

В функции транспортного уровня входят: 1. Управление передачей по сети и обеспечение целостности блоков

данных. 2. Обнаружение ошибок, частичная их ликвидация и сообщение о

неисправленных ошибках. 3. Восстановление передачи после отказов и неисправностей. 4. Укрупнение или разделение блоков данных. 5. Предоставление приоритетов при передаче блоков (нормальная

или срочная).

Page 127: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

127

6. Подтверждение передачи. 7. Ликвидация блоков при тупиковых ситуациях в сети. Начиная с транспортного уровня, все вышележащие протоколы реа-

лизуются программными средствами, обычно включаемыми в состав сете-вой операционной системы.

Наиболее распространенные протоколы транспортного уровня вклю-чают в себя:

• TCP (Transmission Control Protocol) протокол управления переда-чей стека TCP/IP;

• UDP (User Datagram Protocol) пользовательский протокол дейта-грамм стека TCP/IP;

• NCP (NetWare Core Protocol) базовый протокол сетей NetWare; • SPX (Sequenced Packet eXchange) упорядоченный обмен пакетами

стека Novell; • TP4 (Transmission Protocol) – протокол передачи класса 4. Сетевой уровень (Network Layer). Сетевой уровень обеспечивает

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

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

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

Page 128: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

128

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

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

Сети соединяются между собой специальными устройствами, назы-ваемыми маршрутизаторами. Маршрутизатор – это устройство, которое собирает информацию о топологии межсетевых соединений и на ее осно-вании пересылает пакеты сетевого уровня в сеть назначения. Для того что-бы передать сообщение от отправителя, находящегося в одной сети, полу-чателю, находящемуся в другой сети, нужно совершить некоторое количе-ство транзитных передач (hops) между сетями, каждый раз, выбирая под-ходящий маршрут. Таким образом, маршрут представляет собой последо-вательность маршрутизаторов, по которым проходит пакет.

Сетевой уровень отвечает за деление пользователей на группы и маршрутизацию пакетов на основе преобразования MAC-адресов в сете-вые адреса. Сетевой уровень обеспечивает также прозрачную передачу па-кетов на транспортный уровень.

Сетевой уровень выполняет функции: 1. Создание сетевых соединений и идентификация их портов. 2. Обнаружение и исправление ошибок, возникающих при передаче

через коммуникационную сеть. 3. Управление потоками пакетов. 4. Организация (упорядочение) последовательностей пакетов. 5. Маршрутизация и коммутация. 6. Сегментирование и объединение пакетов. На сетевом уровне определяется два вида протоколов. Первый вид

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

Page 129: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

129

этих протоколов маршрутизаторы собирают информацию о топологии межсетевых соединений.

Протоколы сетевого уровня реализуются программными модулями операционной системы, а также программными и аппаратными средствами маршрутизаторов.

Наиболее часто на сетевом уровне используются протоколы: • IP (Internet Protocol) протокол Internet, сетевой протокол стека

TCP/IP, который предоставляет адресную и маршрутную информацию; • IPX (Internetwork Packet Exchange) протокол межсетевого обмена

пакетами, предназначенный для адресации и маршрутизации пакетов в се-тях Novell;

• X.25 международный стандарт для глобальных коммуникаций с коммутацией пакетов (частично этот протокол реализован на уровне 2);

• CLNP (Connection Less Network Protocol) сетевой протокол без организации соединений.

Канальный уровень (Data Link). Единицей информации канально-го уровня являются кадры (frame). Кадры – это логически организованная структура, в которую можно помещать данные. Задача канального уровня – передавать кадры от сетевого уровня к физическому уровню.

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

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

Задача канального уровня – брать пакеты, поступающие с сетевого уровня и готовить их к передаче, укладывая в кадр соответствующего раз-

Page 130: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

130

мера. Этот уровень обязан определить, где начинается и где заканчивается блок, а также обнаруживать ошибки передачи.

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

Канальный уровень обеспечивает создание, передачу и прием кадров данных. Этот уровень обслуживает запросы сетевого уровня и использует сервис физического уровня для приема и передачи пакетов. Спецификации IEEE 802.Х делят канальный уровень на два подуровня:

• LLC (Logical Link Control) управление логическим каналом осу-ществляет логический контроль связи. Подуровень LLC обеспечивает об-служивание сетевого уровня и связан с передачей и приемом пользова-тельских сообщений.

• MAC (Media Assess Control) контроль доступа к среде. Подуро-вень MAC регулирует доступ к разделяемой физической среде (передача маркера или обнаружение коллизий или столкновений) и управляет досту-пом к каналу связи. Подуровень LLC находится выше подуровня МАC.

Канальный уровень определяет доступ к среде и управление переда-чей посредством процедуры передачи данных по каналу.

При больших размерах передаваемых блоков данных канальный уровень делит их на кадры и передает кадры в виде последовательностей.

При получении кадров уровень формирует из них переданные блоки данных. Размер блока данных зависит от способа передачи, качества кана-ла, по которому он передается.

В локальных сетях протоколы канального уровня используются ком-пьютерами, мостами, коммутаторами и маршрутизаторами. В компьютерах функции канального уровня реализуются совместными усилиями сетевых адаптеров и их драйверов.

Канальный уровень может выполнять следующие виды функций: 1. Организация (установление, управление, расторжение) канальных

соединений и идентификация их портов. 2. Организация и передача кадров. 3. Обнаружение и исправление ошибок. 4. Управление потоками данных. 5. Обеспечение прозрачности логических каналов (передачи по ним

данных, закодированных любым способом).

Page 131: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

131

Наиболее часто используемые протоколы на канальном уровне включают:

• HDLC (High Level Data Link Control) протокол управления кана-лом передачи данных высокого уровня, для последовательных соединений;

• IEEE 802.2 LLC (тип I и тип II) обеспечивают MAC для сред 802.x;

• Ethernet сетевая технология по стандарту IEEE 802.3 для сетей, использующая шинную топологию и коллективный доступ с прослушива-нием несущей частоты и обнаружением конфликтов;

• Token ring сетевая технология по стандарту IEEE 802.5, исполь-зующая кольцевую топологию и метод доступа к кольцу с передачей мар-кера;

• FDDI (Fiber Distributed Date Interface Station) сетевая технология по стандарту IEEE 802.6, использующая оптоволоконный носитель;

• X.25 международный стандарт для глобальных коммуникаций с коммутацией пакетов;

• Frame relay сеть, организованная из технологий Х25 и ISDN. Физический уровень (Physical Layer).Физический уровень предна-

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

Физическая среда – это материальная субстанция, через которую осуществляется передача сигналов. Физическая среда является основой, на которой строятся физические средства соединения. В качестве физической среды широко используются эфир, металлы, оптическое стекло и кварц.

Физический уровень состоит из Подуровня стыковки со средой и Подуровня преобразования передачи.

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

Page 132: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

132

чи на приемный узел. Механические и электрические/оптические свойства среды передачи определяются на физическом уровне и включают:

• тип кабелей и разъемов; • разводку контактов в разъемах; • схему кодирования сигналов для значений 0 и 1. Физический уровень выполняет следующие функции: 1. Установление и разъединение физических соединений. 2. Передача сигналов в последовательном коде и прием. 3. Прослушивание, в нужных случаях, каналов. 4. Идентификация каналов. 5. Оповещение о появлении неисправностей и отказов. Оповещение о появлении неисправностей и отказов связано с тем,

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

Рисунок – 3.5 Физический уровень беспроводной локальной сети

Функции физического уровня реализуются во всех устройствах, под-ключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером. Повторители являются единственным типом оборудования, которое работает только на физическом уровне.

Page 133: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

133

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

Примером протокола физического уровня может служить специфи-кация 10Base-T технологии Ethernet, которая определяет в качестве ис-пользуемого кабеля неэкранированную витую пару категории 3 с волно-вым сопротивлением 100 Ом, разъем RJ-45, максимальную длину физиче-ского сегмента 100 метров, манчестерский код для представления данных и другие характеристики среды и электрических сигналов.

К числу наиболее распространенных спецификаций физического уровня относятся:

• EIA-RS-232-C, CCITT V.24/V.28 – механические/электрические характеристики несбалансированного последовательного интерфейса;

• EIA-RS-422/449, CCITT V.10 – механические, электрические и оптические характеристики сбалансированного последовательного интер-фейса;

• Ethernet – сетевая технология по стандарту IEEE 802.3 для сетей, использующая шинную топологию и коллективный доступ с прослушива-нием несущей и обнаружением конфликтов;

• Token ring – сетевая технология по стандарту IEEE 802.5, ис-пользующая кольцевую топологию и метод доступа к кольцу с передачей маркера.

3.2 К омпьютерны е сети. И нтернет

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

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

Page 134: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

134

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

Объединение компьютеров в сеть позволяет решать следующие ос-новные задачи:

• разделение файлов. Файл (набор документов) может храниться на центральном компьютере (сервере), к примеру, – в офисе адвоката. Сеть предоставляет одновременный доступ нескольких секретарей к этому фай-лу;

• передача файлов. Сеть позволяет быстро копировать файлы с од-ной ЭВМ на другую без использования дискет;

• доступ к информации и файлам. Сеть позволяет запускать при-кладные программы с любой рабочей станции, где бы она ни была распо-ложена;

• одновременный ввод данных в прикладные программы. Напри-мер, ввод записей в бухгалтерские книги. Только сетевые версии программ позволяют одновременный ввод информации;

• разделение принтера. Сеть позволяет нескольким пользователям на различных станциях совместно использовать один или несколько доро-гостоящих лазерных принтеров;

• использование электронной почты. Можно использовать сеть как почтовую службу и рассылать служебные записки, доклады, сообще-ния другим пользователям;

• защита данных и ресурсов от несанкционированного воздей-ствия;

• поиск информации по адресу, по ключу (ключевым словам) или по содержанию

Развитие компьютерных сетей началось с решение более простой за-дачи – доступ к компьютеру с терминалов, удаленных на большие рассто-яния и соединенных с компьютером через телефонные сети с помощью модемов. Следующим этапом в развитии компьютерных сетей стали со-единения через модем «компьютер-компьютер». Компьютеры получили возможность обмениваться данными в автоматическом режиме, что явля-ется базовым механизмом любой компьютерной сети и обеспечения обме-на файлами, синхронизации баз данных и использования электронной по-чты (традиционные сетевые сервисы). Такие компьютерные сети получили название глобальных компьютерных сетей.

В начале 70-х годов двадцатого столетия, благодаря развитию мик-роэлектроники, были созданы мини-компьютеры, которые стали реальны-

Page 135: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

135

ми конкурентами мэйнфреймам и обеспечили распределение вычисли-тельных ресурсов по всему предприятию. Такие компьютерные сети стали называться локальными компьютерными сетями.

На начальном этапе создания локальных компьютерных сетей для объединения компьютеров использовались самые разнообразные не стан-дартизованные устройства и программное обеспечение. В середине 80-х годов положение дел в локальных компьютерных сетях стало кардинально меняться в сторону создания стандартных сетевых технологий. Были раз-работаны специальные методы и правила обмена информацией между компьютерами, среди которых наиболее известными стали стандарты Ethernet, Toking Ring, FDDI, Arcnet. Они строго регламентировали дли-ну, вид и порядок следования кодов, посылаемых компьютерами в сеть, правила доступа к сети отдельными компьютерами и т.д.

Появление локальных компьютерных сетей внесло много нового в использование вычислительной техники: возможность быстрого доступа к разделяемым вычислительным ресурсам, к базе данных сразу нескольких пользователей. Задачу обработки этих команд и распределения задач меж-ду отдельными компьютерами взяла на себя сетевая операционная систе-ма.

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

Глобальные сети (WAN, Wide Area Networks) позволяют организо-вать взаимодействие между компьютерами на больших расстояниях, рабо-тают на относительно низких скоростях и могут вносить значительные за-держки в передачу информации.

Локальные сети (LAN, Local Area Networks) обеспечивают наивысшую скорость обмена информацией между компьютерами и протя-женность LAN составляет несколько километров.

В настоящее время развиваются городские сети или сети мегопо-лисов (MAN, Metropolitan Area Networks), предназначенные для обслужива-ния территории крупного города.

В своем классическом построении глобальные и локальные компью-терные сети отличаются по следующим признакам:

• протяженность и качество линий связи; • сложность методов передачи данных; • скорость обмена данными;

Page 136: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

136

• разнообразие услуг. По мере развития и совершенствования методов, технических

средств передачи различных видов информации в последние годы наблю-дается тенденция сближения (конвергенция) локальных и глобальных компьютерных сетей. Использование глобальных сетей в качестве связу-ющей среды между локальными сетями привела к значительному взаимо-проникновению соответствующих технологий. Сближение в методах пере-дачи данных в локальных и глобальных сетях происходит за счет исполь-зования волоконно-оптических линий связи без дополнительного преобра-зования сигнала.

Значительному повышению скорости обмена способствует примене-ние стандарта Ethernet 10G (передача данных со скоростью 10 Гбит/с), предназначенного для глобальных и крупных локальных сетей, что позво-ляет создавать в глобальных сетях службы для работы с большими объе-мами мультимедийной информации в реальном времени.

Процесс переноса служб и технологий из глобальной сети Интернет в локальные сети, включая использование IP-протокола, приобрел такой массовый характер, что появился даже специальный термин – intranet-технологии (intra – внутренний).

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

• полносвязная топология соответствует сети, в которой каждый узел связан со всеми остальными;

• общая шина; • звезда; • кольцо; • смешанная. Любой сети необходимо обеспечить доступность имеющихся физи-

ческих каналов связи одновременно нескольким узлам. Предоставление физических каналов во время сеансов связи между узлами в сети называ-ется коммутацией.

В настоящее время существуют два основных типа коммутации: коммутация каналов и коммутация пакетов. Сети с коммутацией каналов обладают высокой надежностью, минимальными затратами на маршрути-зацию. К недостаткам можно отнести невозможность объединения в один

Page 137: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

137

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

Пакеты в сети могут передвигаться тремя основными способами: дейтаграммная передача, передача с установлением логического соедине-ния и передача с установлением виртуального канала.

При дейтаграммной передаче отдельный пакет рассматривается как независимая единица передачи (дейтаграмма), соединение между уз-лами не устанавливается, и все пакеты передвигаются независимо друг от друга.

Передача с установлением логического соединения предполагает установление сеансов связи с определением процедуры обработки некото-рого множества пакетов в рамках одного сеанса.

Передача с установлением виртуального канала отличается от пе-редачи с установлением логического соединения тем, что в параметры со-единения входит заранее прокладываемый сетью маршрут, по которому проходят все пакеты в рамках данного соединения. Виртуальный канал для следующего сеанса может проходить по другому маршруту.

Поскольку компьютеры и сетевое оборудование могут быть разных производителей, то возникает проблема их совместимости. Без принятия всеми производителями общепринятых правил построения оборудования создание компьютерной сети было бы невозможно. Поэтому разработка и создание компьютерных сетей может происходить только в рамках утвер-жденных стандартов на:

• взаимодействие программного обеспечения пользователя с физи-ческим каналом связи (посредством сетевой карты) в пределах одного компьютера;

• взаимодействие компьютера через канал связи с другим компью-тером.

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

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

В начале 80-х годов двадцатого столетия ряд международных орга-

Page 138: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

138

низаций разработали стандартную модель сетевого взаимодействия – модель взаимодействия открытых систем (OSI – Open System Interconnec-tion). В модели OSI все протоколы сети делятся на семь уровней: физиче-ский, канальный, сетевой, транспортный, сеансовый, представительный и прикладной (см. ранее).

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

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

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

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

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

Модель OSI имеет опубликованные, общедоступные спецификации и стандарты, принятые в результате достижения соглашения между мно-гими разработчиками и пользователями. Если две сети построены с со-блюдением правил открытости то у них есть возможность использования аппаратных и программных средств разных производителей, придержива-ющихся одного и того же стандарта, такие сети легко сопрягаются друг с другом, просты в освоении и обслуживании. Примером открытой системы является глобальная компьютерная сеть Интернет.

В локальных сетях используются следующие основные методы до-ступа компьютеров к линиям связи для передачи данных: приоритетный, маркерный и случайный. Приоритетный доступ был реализован в стандарте 100G-AnyLAN, а маркерный в технологии Token Ring. Эти методы в

Page 139: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

139

настоящее время не находят широкого распространения из-за сложности реализующей их аппаратуры.

Ethernet – самый распространенный на сегодняшний день стандарт передачи данных в локальных сетях, реализуемый на канальном уровне модели OSI, согласно которому доступ компьютеров к линии связи обес-печивается случайным образом. Стандарт использует метод коллективно-го доступа с опознаванием несущей и обнаружением коллизий. Он приме-няется в сетях с топологией «общая шина».

В последнее время широкое распространение получает радио-Ethernet (соответствующий стандарт принят в 1997 году) для организации беспроводной локальной сети (WLAN – Wireless LAN). Радиосети удобны для мобильных средств, но также находят применение и в других областях (сети отелей, библиотек, аэропортов, больниц и т.д.).

Радио-Ethernet использует два основных типа оборудования: клиент (компьютер), точка доступа, играющая роль связующего звена между про-водной и беспроводной сетью. Беспроводная сеть может работать в двух режимах: «клиент/сервер» и «точка – точка». При первом режиме к одной точке доступа по радиоканалу могут подключаться несколько компьюте-ров, во втором – связь между конечными узлами устанавливается напря-мую без специальной точки доступа.

Наиболее известная модификацией радио-Ethernet является WiFi (Wireless Fidelity) технология, которая обеспечивает скорость передачи до 11 Мбит/с, и использует метод коллективного доступа с опознаванием не-сущей и избеганием коллизий (соответствующий стандарт принят в 2001 году). Для осуществления связи используются всенаправленные и узкона-правленные антенны (последние для соединений «точка-точка»). Всена-правленная антенна гарантирует связь для расстояний до 45 метров, а уз-конаправленная – до 45 км. Одновременно может обслуживать до 50 кли-ентов.

В отличие от проводного Ethernet для радиосетей важно, чтобы ра-диосигналы от различных узлов-отправителей не накладывались на входе узла-получателя. В противном случае в сети будет возникать коллизия. Для предотвращения коллизий в радио-Ethernet необходимо строго соблю-дать расстояния действия радиосигнала отдельных узлов.

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

Page 140: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

140

независимо друг от друга. Это позволяет различным сервисам (электрон-ная почта, www, IP-телефония и т.д.) передавать информацию.

Сеть Интернет основывается на идее объединения множества неза-висимых сетей почти произвольной архитектуры. Открытая сетевая архи-тектура подразумевает, что отдельные сети могут проектироваться и раз-рабатываться независимо, со своими уникальными интерфейсами, предо-ставляемыми пользователям и/или другим поставщикам сетевых услуг, включая услуги сети Интернет.

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

3.2.1 И нтернет. И нтранет. Э кстранет

Интернет-технологии проникают во все области жизни и деятельно-сти человеческого общества. При организации доступа компьютеров ло-кальной сети в сеть Интернет используется различное оборудование и тех-нологии:

• модем провайдера – устройство, которое позволяет передавать и принимать информацию по выбранному каналу передачи данных;

• граничный (внутренний) маршрутизатор, который обменивается данными маршрутизации с маршрутизаторами, принадлежащими другим сетям передачи данных, объявляет внешние маршруты в автономных си-стемах;

• firewall – программно-аппаратный комплекс, обеспечивающий защиту, как правило, от несанкционированного доступа из внешней гло-бальной сети во внутреннюю сеть (интрасеть);

• концентратор – сетевое устройство, объединяющее линии связи в одном месте, обеспечивая общее подключение для всех устройств сети;

• ADSL (Asymmetric Digital Subscriber Line) – технология высоко-скоростной передачи данных, разработанная фирмой Bellcore;

• HDSL (High Bit-Rate Digital Subscriber Line) – технология высоко-скоростной передачи по кабелям на основе скрученных медных пар, ис-пользуется для организации каналов обмена данными между потребителем и поставщиком телекоммуникационных услуг;

Page 141: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

141

• ISDN (Integrated Services Digital Network) – международный теле-коммуникационный стандарт, позволяющий использовать канал для пере-дачи цифровых данных, речи, видео и звука. Компьютеры и другие устройства подключаются к сетям ISDN через простые стандартные ин-терфейсы.

Для доступа в сеть Интернет используются различные способы, например:

• высокоскоростные выделенные каналы передачи данных ISDN; • каналы передачи данных семейства xDSL; • коммутируемый доступ; • коммерческие сети радио-Ethernet. Использование сети Интернет, как сети передачи данных позволяет

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

Интранет-технология – это идеология построения систем информа-ционной поддержки внутри одной организации, основанная на Интернет-технологиях. Она базируется на:

• организации технологической среды поддержки различных про-токолов передачи данных (на базе TCP/IP);

• использовании для представления и хранения информации WWW- и SQL-серверов;

• использовании технологии «клиенты-серверы» с минимальными техническими требованиями к клиентской части;

• поддержке распределенных БД. • Экстранет – корпоративная сеть, использующая протоколы и

технологии Интернет и общедоступные телекоммуникационные сети для взаимодействия с заказчиками, дилерами и партнерами и для предоставле-ния им необходимой информации.

• Интернет, интранет и экстранет, несмотря на общность технологий, используются предприятиями для решения различных задач бизнеса:

• Интернет позволяет работать с общественной информацией. Ра-бота с материалами сети Интернета ведется, прежде всего, отделом марке-тинга (изучение материалов конкурентов, анализ данных СМИ и т.п.);

• Интранет предоставляет информацию ограниченного пользова-ния, обеспечивает удобные коммуникации и эффективное сотрудничество пользователей, служит распространению знаний внутри организации. Со-

Page 142: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

142

держание интрасети активно используется всеми сотрудниками (тогда как доступ к Интернету может быть не у всех). Интранет-системы обеспечи-вают организации единый способ обмена информацией и доступа к мате-риалам, единое представление документов и единое пространство для хра-нения документов, что позволяет создавать системы документооборота для компаний с региональными офисами и большим количеством персонала, расширять функциональность с минимальными трудозатратами;

• Экстранет – среда, в которой, прежде всего, работают сотрудники отделов маркетинга и логистики.

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

Приложения в Интранет основаны на применении Интернет-технологий и в особенности Web-технологии: гипертекст в формате html, протокол передачи гипертекста http и интерфейс для связи между Web-сервером и вызываемыми программами Common Gateway Interface – CGI.

По технической реализации Интранет практически не отличается от Интернет: предоставляются те же виды сервисов (www, электронная почта, телеконференции и др.), используются те же программные средства (брау-зеры, web-серверы).

Технология Интранет превращает бумажные документы в электрон-ные страницы и файлы; доску объявлений – в Web-сервер; записки и теле-фонные звонки – в сообщения электронной почты; газетные новости – в событийные сообщения сервера телеконференций. Интранет делает корпо-ративные коммуникации более надежными, быстрыми и интенсивными, ускоряет и упрощает доступ к информации. При этом содержание корпо-ративной информации принципиально не меняется, изменяется ее пред-ставление.

Использование Интернет/Интранет-технологии при построении ин-формационных систем специализированных и общего назначения стано-

Page 143: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

143

вится доминирующим по следующим причинам: • обеспечивается простота поиска информации; • предъявляются минимальные требования к рабочему месту кли-

ента (к программному и аппаратному обеспечению); • поддерживаются распределенные системы хранения информации; • поддерживается работа с большими объемами разнородных дан-

ных (текст, графика, изображение, звук, видео и др.); • обеспечивается простота администрирования информационных

систем с одного рабочего места; • поддерживаются удаленные методы ввода и редактирования ин-

формации. При построении информационных систем с использованием Интра-

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

В Интранет-технологию построения ИС вложен принцип разделения вычислительных ресурсов между серверами, между сервером и клиентом. Реализация этого принципа основывается на использовании HTTP-SQL интерфейса для формирования запросов пользователя на получение ин-формации, который обеспечивается установкой в сети HTTP-SQL-сервера, переводящего HTTP-запросы клиента к WWW-серверу в SQL-запросы к различным базам данных. Эта технология позволяет сочетать возможности гипертекстового представления информации и использование современ-ных СУБД. Со стороны клиента предоставляется возможность унифициро-вать запросы на поиск, представление информации и получение аналити-ческих данных из информационных систем. Данная технология позволяет использовать в сетевом режиме уже имеющиеся базы данных без дополни-тельных затрат на их унификацию и приведение к единому стандарту.

Для организации HTTP-SQL-сервера используется свободно распро-страняемое программное обеспечение для различных операционных плат-форм (MS Windows, UNIX-платформ) и имеющиеся СУБД (Microsoft Access, mySQL, Informix, Oracle, Microsoft SQL Server и др.). Для несете-вых СУБД HTTP-SQL-сервер устанавливается на том же компьютере, где работает используемая СУБД.

Сеть Интернет позволяет организовывать, так называемые, дата-центры (англ. data center) или центры обработки данных (ЦОД) – специа-лизированное здание (площадка) для размещения серверного и коммуни-

Page 144: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

144

кационного оборудования и подключения к каналам сети Интернет. Корпоративные ЦОДы развертываются конкретной организацией,

используются для решения ее собственных задач (например, для размеще-ния узлов ИТ-инфраструктуры предприятия или системы резервного хра-нения данных), требуют крупных затрат и обслуживаются самостоятельно. Коммерческие ЦОДы предназначены для обслуживания телекоммуника-ционных компаний, развивающих услуги хостинга, организаций и пред-приятий, желающих воспользоваться услугами аутсорсинга. На базе таких дата-центров организовывается предоставление услуг по размещению ин-формационных ресурсов различных компаний, корпораций и ведомств.

3.2.2 К орпоративная информационная сеть

Корпоративная информационная сеть (КИС) представляет собой инфраструктуру организации, поддерживающую решение актуальных за-дач и обеспечивающую выполнение ее миссии. Она объединяет в единое пространство информационные системы всех объектов корпорации.

Создание КИС позволяет: • создать единое информационное пространство; • оперативно получать информацию и формировать консолидиро-

ванные отчеты на уровне предприятия; • централизовать финансовые и информационные потоки данных; • оперативно собирать и обрабатывать информацию; • снизить затраты при использовании серверных решений и пере-

ходе от решений для рабочих групп на решения уровня предприятия; • обрабатывать мультимедиа потоки данных между подразделени-

ями; • снизать затраты на связь между подразделениями и организовать

единое номерное пространство; • обеспечить качественную связь на высоких скоростях; • организовать систему видеонаблюдения. Основные требования, предъявляемые к современным КИС: • масштабируемость означает возможность наращивания мощно-

стей серверов (производительности, объема хранимой информации и т.д.) и территориальное расширение сети;

• надежность сети – является одним из факторов, определяющих непрерывность деятельности организации;

Page 145: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

145

• производительность – рост числа узлов сети и объема обрабаты-ваемых данных предъявляет постоянно возрастающие требования к про-пускной способности используемых каналов связи и производительности устройств, обеспечивающих функционирование КИС;

• экономическая эффективность – экономия средств на создание, эксплуатацию и модернизацию сетевой инфраструктуры при постоянном росте масштаба и сложности корпоративных сетей;

• информационная безопасность – обеспечивает стабильность и безопасность бизнеса в целом, защиту хранения и обработки в сети конфи-денциальной информации.

Корпоративную сеть можно рассматривать с различных точек зре-ния:

• структуры (системно-техническая инфраструктура); • системной функциональности (сервисы и приложения); • эксплуатационных характеристик (свойства и службы). С системно-технической точки зрения она представляет собой це-

лостную структуру, состоящую из нескольких взаимосвязанных и взаимо-действующих уровней: компьютерной сети, телекоммуникаций, компью-терных и операционных платформ, программного обеспечения промежу-точного слоя (middleware), приложений.

С функциональной точки зрения КИС представляет собой эффектив-ную среду передачи актуальной информации, необходимой для решения задач корпорации.

С точки зрения системной функциональности КИС выглядит как единое целое, предоставляющее пользователям и программам набор по-лезных в работе услуг (сервисов), общесистемных и специализированных приложений, обладающее набором полезных качеств и содержащее служ-бы, гарантирующее нормальное функционирование сети.

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

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

Специализированные приложения направлены на решение задач, ко-торые невозможно или технически сложно автоматизировать с помощью общесистемных приложений, и в рамках корпорации определяют приклад-

Page 146: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

146

ную функциональность. Корпоративная сеть обеспечивает возможность развертывания новых

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

Использование сети Интернет в качестве транспортной среды пере-дачи данных при построении КИС предприятия предоставляет следующие преимущества:

• низкая абонентская плата; • простота реализации. К недостаткам такой сети можно отнести невысокую надежность и

безопасность, отсутствие гарантированной скорости передачи данных. Правильно спроектированная и реализованная корпоративная сеть,

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

Инфраструктурными составляющими корпоративной сети являются: • кабельная система, образующая физическую среду передачи дан-

ных; • сетевое оборудование, обеспечивающее обмен данными между

оконечным оборудованием (рабочими станциями, серверами и т.д.). При создании КИС главной задачей является построение сетей мас-

штаба здания (локальных) и группы близко расположенных зданий (кам-пусных), объединение с использованием каналов связи территориально удаленных подразделений. В качестве объединяющего средства может вы-ступать сеть Интернет или городская сеть.

При построении локальных и кампусных сетей используются ком-мутаторы, а при построении территориально-распределенных сетей – маршрутизаторы. Коммутаторы обеспечивают высокоскоростной обмен в рамках локальной сети, передавая информацию только на узлы-адресаты. Коммутаторы оперируют адресами канального протокола, в роли которого, как правило, выступает Ethernet/Fast Ethernet/Gigabit Ethernet, что обеспе-чивает «прозрачное» функционирование сети, и коммутаторы могут вы-полнять свои базовые функции без трудоемкого конфигурирования. Маршрутизаторы при передаче информации оперируют логическими адре-

Page 147: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

147

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

Беспроводные офисные сети служат альтернативой традиционным кабельным системам. Основное отличие их от кабельных систем – данные между компьютерами и устройствами сети передаются не посредством проводов, а по высоконадежному беспроводному каналу. За счет исполь-зования беспроводной сети, построенной в соответствии со спецификацией Wi-Fi обеспечивается гибкость и масштабируемость локальной сети, воз-можность легкого подключения нового оборудования, рабочих мест, мо-бильных пользователей, вне зависимости от типа используемого компью-тера. Применение технологий беспроводных сетей позволяет получать до-полнительные услуги: доступ в сеть Интернет в конференц-зале или ком-нате переговоров, организация Hot-Spot точки доступа и т.д.

Преимущества применения беспроводных сетей: • скорость и простота развертывания беспроводной сети; • масштабируемость сети, возможность построения многосотовых

сетей; • сохранение инвестиций в локальную сеть при изменении место-

расположения офиса; • быстрая реструктуризация, изменение конфигурации и размеров

сети; • мобильность пользователей в зоне покрытия сети. Для организации бесперебойной работы и обеспечения безопасности

данных в КИС необходимо наличие службы сетевого администрирования. Администрирование – это процесс управления, деятельность по руковод-ству порученным участком работы посредством административных мето-дов управления.

Администрирование компьютерной сети предполагает информаци-онную поддержку пользователей, позволяет свести к минимуму влияние человеческого фактора на появление сбоев в ее работе.

Системный администратор – сотрудник, обеспечивающий сетевую безопасность организации, создание оптимальной работоспособности сети, компьютеров и программного обеспечения. Нередко функции системного администратора выполняют компании, занимающиеся IT-аутсорсингом.

Администратор решает вопросы планирования сети, выбора и при-обретения сетевого оборудования, наблюдает за ходом монтажа сети и

Page 148: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

148

следит за тем, чтобы были выполнены все требования. После установки сетевого оборудования он его проверяет и устанавливает на серверы и ра-бочие станции сетевое программное обеспечение.

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

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

Администратор веб-сервера – занимается установкой, настройкой и обслуживанием программного обеспечения веб-серверов.

Администратор базы данных – специализируется на обслуживании и проектировании баз данных.

Администратор сети – занимается разработкой и обслуживанием сетей.

Системный инженер (или системный архитектор) – занимается по-строением корпоративной информационной инфраструктуры на уровне приложений.

Администратор безопасности сети – занимается проблемами ин-формационной безопасности.

При администрировании сети, подключенной к сети Интернет, и в которой установлены Интернет-сервисы, возникают следующие проблемы:

• организация сети на базе протоколов TCP/IP; • подключение локальной или корпоративной сети к сети Интернет; • маршрутизация передачи информации в сети; • получение доменного имени для организации; • обмен электронной почтой внутри организации и с адресатами за

ее пределами; • организация информационного обслуживания на базе Интернет- и

Интранет-технологий; • безопасности сети.

Page 149: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

149

3.3 А рхитектура и принципы работы сети И нтернет

К середине 2015 года число пользователей Интернета достигло 3,3 млрд. человек.

Интернет – всемирная (глобальная) система объединённых компь-ютерных сетей для хранения и передачи информации, построенная на базе стека протоколов TCP/IP.

Интернет – глобальная сеть компьютерных ресурсов с коллектив-ным доступом на основе использования единой стандартной схемы адре-сации, высокопроизводительной магистрали и высокоскоростных линий связи с главными сетевыми компьютерами.

Интернет – мегасеть, состоящая из многих сетей, которые работают согласно протоколам семейства TCP/IP, объединены через шлюзы и ис-пользуют единое адресное пространство и пространство имен (рисунок 3.6).

Рисунок 3.6 – Схема взаимодействия в сети Интернет В структурные компоненты сети Интернет включаются: • маршрутизаторы – специальные устройства, которые связывают

отдельные локальные сети между собой путем непосредственной адреса-ции каждой из подсетей с помощью IP-адресов. Продвижение пакетов

Page 150: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

150

между подсетями, в соответствии с адресами назначения называется маршрутизацией;

• proxy-сервер (от англ. proxy— «представитель, уполномоченный») – специальный компьютер, позволяющий пользователям локальной сети получать информацию, хранящуюся на компьютерах в сети Интернет. Сначала пользователь подключается к proxy-серверу и запрашивает какой-либо ресурс (например, e-mail), расположенный на другом сервере. Затем proxy-сервер либо подключается к указанному серверу и получает ресурс у него, либо возвращает ресурс из собственной памяти. Proxy-сервер позво-ляет также защищать клиентский компьютер от некоторых сетевых атак;

• DNS-сервер – специальный компьютер, хранящий доменные име-на.

Для защиты локальной сети от несанкционированного доступа (атак хакеров, проникновения вирусов и. д.) используются программно-аппаратные комплексы – файрволлы (firewall). В сети он обеспечивает фильтрацию прохождения информации в обе стороны и блокирует несанк-ционированный доступ к компьютеру или локальной сети извне. Файрволл позволяет контролировать использование портов и протоколов, «скры-вать» неиспользуемые порты для исключения атаки через них, а также за-прещать/разрешать доступ конкретных приложений к конкретным IP-адресам, т.е. контролировать все, что может стать орудием хакера и недоб-росовестных фирм. В основном файрволлы работают на сетевом уровне и осуществляют фильтрацию пакетов, хотя можно организовать защиту и на прикладном или канальном уровне. Технология фильтрации пакетов явля-ется самым дешевым способом реализации файрволла, т.к. в этом случае можно проверять пакеты различных протоколов с большой скоростью. Фильтр анализирует пакеты на сетевом уровне и не зависит от используе-мого приложения.

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

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

• поставщики доступа к сети Интернет (Internet Access Providers – ISP);

• поставщики интерактивных услуг (Online Service Providers – OSP).

Page 151: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

151

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

Рисунок 3.7 – Инфраструктура сети Интернет

Подсеть связи состоит из каналов передачи информации и коммуни-

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

Интернет – это глобальная информационная система, которая: • логически взаимосвязана пространством глобальных уникальных

адресов, основанных на Интернет-протоколе (IP);

Page 152: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

152

• способна поддерживать коммуникации с использованием семей-ства протокола управления передачей – TCP/IP или его последующих рас-ширений/преемников и/или других IP-совместимых протоколов;

• обеспечивает, использует или делает доступными на обществен-ной или частной основе высокоуровневые услуги, надстроенные над опи-санной здесь коммуникационной и иной связанной с ней инфраструктурой.

Инфраструктура Интернет (рисунок 3.7): • магистральный уровень (система связанных высокоскоростных

телекоммуникационных серверов). • уровень сетей и точек доступа (крупные телекоммуникационные

сети), подключенных к магистрали. • уровень региональных и других сетей. • ISP – интернет-провайдеры. • пользователи. К техническим ресурсам сети Интернет относятся компьютерные

узлы, маршрутизаторы, шлюзы, каналы связи и др. В основу архитектуры сетей положен многоуровневый принцип пе-

редачи сообщений. Формирование сообщения осуществляется на самом верхнем уровне модели ISO/OSI.. Затем (при передаче) оно последовательно проходит все уровни системы до самого нижнего, где и передается по кана-лу связи адресату. По мере прохождения каждого из уровней системы со-общение трансформируется, разбивается на сравнительно короткие части, которые снабжаются дополнительными заголовками, обеспечивающими ин-формацией аналогичные уровни на узле адресата. В этом узле сообщение проходит от нижнего уровня к верхнему, снимая с себя заголовки. В ре-зультате адресат принимает сообщение в первоначальном виде.

В территориальных сетях управление обменом данных осуществляет-ся протоколами верхнего уровня модели ISO/OSI. Независимо от внутрен-ней конструкции каждого конкретного протокола верхнего уровня для них характерно наличие общих функций: инициализация связи, передача и прием данных, завершение обмена. Каждый протокол имеет средства для иденти-фикации любой рабочей станции сети по имени, сетевому адресу или по обоим этим атрибутам. Активизация обмена информацией между взаимо-действующими узлами начинается после идентификации узла адресата уз-лом, инициирующим обмен данными. Инициирующая станция устанавлива-ет один из методов организации обмена данными: метод дейтаграмм или метод сеансов связи. Протокол предоставляет средства для приема/передачи

Page 153: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

153

сообщений адресатом и источником. При этом обычно накладываются огра-ничения на длину сообщений.

TCP/IP – технология межсетевого взаимодействия Наиболее распространенным протоколом управления обменом дан-

ных является протокол TCP/IP. Главное отличие сети Internet от других сетей заключается именно в ее протоколах TCP/IP, охватывающих целое семейство протоколов взаимодействия между компьютерами сети. TCP/IP – это технология межсетевого взаимодействия, технология Internet. Поэтому глобальная сеть, объединяющая множество сетей с технологией TCP/IP, называется Internet.

Протокол TCP/IP – это семейство программно реализованных прото-колов старшего уровня, не работающих с аппаратными прерываниями. Технически протокол TCP/IP состоит из двух частей – IP и TCP.

Протокол IP (Internet Protocol – межсетевой протокол) является главным протоколом семейства, он реализует распространение информации в IP-сети и выполняется на третьем (сетевом) уровне модели ISO/OSI. Про-токол IP обеспечивает дейтаграммную доставку пакетов, его основная за-дача – маршрутизация пакетов. Он не отвечает за надежность доставки информации, за ее целостность, за сохранение порядка потока пакетов. Се-ти, в которых используется протокол IP, называются IP-сетями. Они рабо-тают в основном по аналоговым каналам (т.е. для подключения компьюте-ра к сети требуется IP-модем) и являются сетями с коммутацией пакетов. Пакет здесь называется дейтаграммой.

Высокоуровневый протокол TCP (Transmission Control Protocol – протокол управления передачей) работает на транспортном уровне и ча-стично – на сеансовом уровне. Это протокол с установлением логического соединения между отправителем и получателем. Он обеспечивает сеансо-вую связь между двумя узлами с гарантированной доставкой информации, осуществляет контроль целостности передаваемой информации, сохраняет порядок потока пакетов.

Для компьютеров протокол TCP/IP – это то же, что правила разговора для людей. Он принят в качестве официального стандарта в сети Internet, т.е. сетевая технология TCP/IP де-факто стала технологией всемирной сети Интернет.

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

Page 154: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

154

адрес станции внутри сети. Такая схема позволяет передавать сообщения как внутри данной сети, так и во внешние сети.

Основные протоколы сети Интернет Работа сети Internet основана на использовании семейств коммуни-

кационных протоколов TCP/IP (Transmission Control Protocol/Internet Protocol). TCP/IP используется для передачи данных как в глобальной сети Internet, так и во многих локальных сетях.

Название TCP/IP определяет семейство протоколов передачи данных сети. Протокол – это набор правил, которых должны придерживаться все компании, чтобы обеспечить совместимость производимого аппаратного и программного обеспечения. Эти правила гарантируют совместимость про-изводимого аппаратного и программного обеспечения. Кроме того, TCP/IP – это гарантия того, что ваш персональный компьютер сможет связаться по сети Internet с любым компьютером в мире, также работающим с TCP/IP. При соблюдении определенных стандартов для функционирования всей системы не имеет значения, кто является производителем программного обеспечения или аппаратных средств. Идеология открытых систем пред-полагает использование стандартных аппаратных средств и программного обеспечения. TCP/IP – открытый протокол и вся специальная инфор-мация издана и может быть свободно использована.

Он обеспечивает: • независимость от сетевой технологии отдельной сети – TCP/IP

определяет только элемент передачи – дейтаграмму, и описывает способ ее движения по сети;

• всеобщую связанность сетей, за счет назначения каждому ком-пьютеру логического адреса, используемого 1) передаваемой дейтаграм-мой для идентификации отправителя и получателя, 2) промежуточными маршрутизаторами для принятия решения о маршрутизации;

• подтверждение – протокол TCP/IP обеспечивает подтверждение правильности прохождения информации при обмене данными между от-правителем и получателем;

• поддержку стандартных прикладных протоколов – электронной почты, передачи файлов, удаленного доступа и т.д.

В стеке TCP/IP определены 4 уровня взаимодействия, каждый из ко-торых берет на себя определенную функцию по организации надежной ра-боты глобальной сети

Программный модуль протокола ТСР/IP реализуется в операционной системе компьютера в виде отдельного системного модуля (драйвера).

Page 155: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

155

Пользователь может самостоятельно настраивать протокол TCP/IP для каждого конкретного случая (количество пользователей сети, пропускная способность физических линий связи и т.д.).

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

На передающем компьютере TCP разбивает блок данных, поступа-ющих с прикладного уровня, на отдельные сегменты, присваивает номера сегментам, добавляет заголовок и передает сегменты на уровень межсете-вого взаимодействия. Для каждого отправленного сегмента предающий компьютер ожидает прихода от принимающего компьютера специального сообщения – квитанции, подтверждающей тот факт, что компьютер нуж-ный сегмент принял. Время ожидания прихода соответствующей квитан-ции называется временем тайм-аута.

Для производительности сети очень важно установление времени тайм-аута и размера «скользящего окна». В протоколе ТСР предусмотрен специальный автоматический алгоритм определения этих величин с уче-том пропускной способности физических линий связи.

В задачи протокола TCP входит задача определения, к какому типу прикладных программ относятся данные, поступившие из сети. Для разли-чия прикладных программ используются специальные идентификаторы – порты. Назначение номеров портов осуществляется либо централизовано, если прикладные программы являются популярными и общедоступными (например, служба удаленного доступа к файлам FTP имеет порт 21, а служба WWW – порт 80), или локально – если разработчик приложения просто связывает с этим приложением любой доступный, произвольно вы-бранный номер.

Таким образом, протокол TCP использует надежную связь, он имеет встроенную возможность надежной доставки. Если сообщение не отправ-лено корректно, мы получим сообщение об ошибке. Протокол TCP ис-пользуется в таких прикладных протоколах, как HTTP, FTP, SMTP и Telnet.

Протокол TCP может работать как UDP-протокол (User Datagramm Protocol). В отличие от TCP UDP – очень быстрый протокол, поскольку в нем определен самый минимальный механизм, необходимый для передачи данных. Конечно, он имеет некоторые недостатки. Сообщения поступают в любом порядке, и то, которое отправлено первым, может быть получено

Page 156: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

156

последним. Доставка сообщений UDP вовсе не гарантируется, сообщение может потеряться, и могут быть получены две копии одного и того же со-общения. Последний случай возникает, если для отправки сообщений в один адрес использовать два разных маршрута. UDP не требует открывать соединение, и данные могут быть отправлены сразу же, как только они подготовлены. UDP не отправляет подтверждающие сообщения, поэтому данные могут быть получены или потеряны. Если при использовании UDP требуется надежная передача данных, ее следует реализовать в протоколе более высокого уровня.

Так в чем же преимущества UDP, зачем может понадобиться такой ненадежный протокол? Чтобы понять причину использования UDP, нужно различать однонаправленную передачу, широковещательную передачу и групповую рассылку.

Однонаправленное (unicast) сообщение отправляется из одного узла только в один другой узел. Это также называется связью "точка-точка". Протокол TCP поддерживает лишь однонаправленную связь. Если серверу нужно с помощью TCP взаимодействовать с несколькими клиентами, каж-дый клиент должен установить соединение, поскольку сообщения могут отправляться только одиночным узлам.

Широковещательная передача (broadcast) означает, что сообщение отправляется всем узлам сети. Групповая рассылка (multicast) – это про-межуточный механизм: сообщения отправляются выбранным группам уз-лов.

UDP может использоваться для однонаправленной связи, если требу-ется быстрая передача, например для доставки мультимедийных данных, но главные преимущества UDP касаются широковещательной передачи и групповой рассылки.

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

Таким образом, UDP – это быстрый протокол, не гарантирующий доставки. Если требуется поддержание порядка сообщений и надежная до-ставка, нужно использовать TCP. UDP главным образом предназначен для широковещательной и групповой передачи.

Page 157: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

157

IP-протокол является стержнем всей архитектуры стека TCP/IP и ре-ализует концепцию передачи пакетов по нужному адресу (IP-адресу). Со-ответствующий уровень взаимодействия обеспечивает возможность пере-мещения пакетов по сети, используя тот маршрут, который в данный мо-мент является оптимальным.

Основные протоколы семейства TCP/IP: • транспортные протоколы – управляют передачей данных меж-

ду двумя машинами: − TCP/IP (Transmission Control Protocol), − UDP (User Datagram Protocol);

• протоколы маршрутизации – обрабатывают адресацию данных, обеспечивают фактическую передачу данных и определяют наилучшие пу-ти передвижения пакета:

− IP (Internet Protocol), − ICMP (Internet Control Message Protocol), − RIP (Routing Information Protocol) − и другие;

• протоколы поддержки сетевого адреса – обрабатывают адреса-цию данных, обеспечивают идентификацию машины с уникальным номе-ром и именем:

− DNS (Domain Name System), − ARP (Address Resolution Protocol) − и другие;

• протоколы прикладных сервисов – это программы, которые пользователь (или компьютер) использует для получения доступа к раз-личным услугам:

− FTP (File Transfer Protocol), − TELNET, − HTTP (HyperText Transfer Protocol), − NNTP (NetNewsTransfer Protocol), − и другие.

• шлюзовые протоколы помогают передавать по сети сообщения о маршругазации и информацию о состоянии сети, а так же обрабатывать данные для локальных сетей:

− EGP (Exterior Gateway Protocol), − GGP (Gateway-to-Gateway Protocol), − IGP (Interior Gateway Protocol);

Page 158: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

158

• другие протоколы – используются для передачи сообщений электронной почты, при работе с каталогами и файлами удаленного ком-пьютера и так далее:

− SMTP (Simple Mail Transfer Protocol), − NFS (Network File System).

IP-адресация Каждый компьютер в Internet (включая любой ПК, когда он устанав-

ливает сеансовое соединение с провайдером по телефонной линии) имеет уникальный адрес, называемый IP-адрес.

IP-адрес имеет длину 32 бита и состоит из четырех частей по 8 бит, именуемых в соответствии с сетевой терминологией октетами (octets). Это значит, что каждая часть IP-адреса может принимать значение в пре-делах от 0 до 255. Четыре части объединяют в запись, в которой каждое восьмибитовое значение отделяется точкой. Когда речь идет о сетевом ад-ресе, то обычно имеется в виду IP-адрес.

Если бы использовались все 32 бита в IP-адресе, то получилось бы свыше четырех миллиардов возможных адресов – более чем достаточно для будущего расширения Internet. Однако некоторые комбинации битов зарезервированы для специальных целей, что уменьшает число потенци-альных адресов. Кроме того, 8-битные четверки сгруппированы специаль-ными способами в зависимости от типа сети, так что фактическое число адресов еще меньше.

С понятием IP-адреса тесно связано понятие хоста (host). Некоторые просто отождествляют понятие хоста с понятием компьютера, подключен-ного к Internet. В принципе, это так, но в общем случае под хостом пони-мается любое устройство, использующее протокол TCP/IP для общения с другим оборудованием. То есть кроме компьютеров, это могут быть спе-циальные сетевые устройства – маршрутизаторы (routers), концентраторы (habs) и другие. Эти устройства так же обладают своими уникальными IР-адресами,— как и компьютеры узлов сети пользователей.

Любой IP-адрес состоит из двух частей: адреса сети (идентифика-тора сети, Network ID) и адреса хоста (идентификатора хоста, Host ID) в этой сети. Благодаря такой структуре IP-адреса компьютеров в разных се-тях могут иметь одинаковые номера. Но так как адреса сетей различны, то эти компьютеры идентифицируются однозначно и не могут быть перепу-таны друг с другом.

IP-адреса выделяются в зависимости от размеров организации и типа ее деятельности. Если это небольшая организация, то, скорее всего в ее се-

Page 159: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

159

ти немного компьютеров (и, следовательно, IP-адресов). Напротив, у большой корпорации могут быть тысячи (а то и больше) компьютеров, объединенных во множество соединенных между собой локальных сетей. Для обеспечения максимальной гибкости IP-адреса разделяются на клас-сы: А, В и С. Еще существуют классы D и Е, но они используются для специфических служебных целей.

Итак, три класса IP-адресов позволяют распределять их в зависимо-сти от размера сети организации. Поскольку 32 бита – допустимый полный размер IP-адреса, то классы разбивают четыре 8-битные части адреса на адрес сети и адрес хоста в зависимости от класса.

Адрес сети класса A определяется первым октетом IP-адреса (счи-тается слева направо). Значение первого октета, находящееся в пределах 1-126, зарезервировано для гигантских транснациональных корпорации и крупнейших провайдеров. Таким образом, в классе А в мире может суще-ствовать всего лишь 126 крупных компаний, каждая из которых может со-держать почти 17 миллионов компьютеров.

Класс B использует 2 первых октета в качестве адреса сети, значе-ние первого октета может принимать значение в пределах 128—191. В каждой сети класса В может быть около 65 тысяч компьютеров, и такие сети имеют крупнейшие университеты и другие большие организации.

Соответственно, в классе C под адрес сети отводится уже три пер-вых октета, а значение первого октета может быть в пределах 192-223. Это самые распространенные сети, их число может превышать более двух миллионов, а число компьютеров (хостов) в каждой сети – до 254. Следует отметить, что «разрывы» в допустимых значениях первого октета между классами сетей появляются из-за того, что один или несколько битов заре-зервированы в начале IP-адреса для идентификации класса.

Если любой IP-адрес символически обозначить как набор октетов w.x.y.z, то структуру для сетей различных классов можно представить в таблице 3.1. Таблица 3.1 – Структура IP-адресов в сетях различных классов

Класс сети

Значение пер-вого октета (W)

Октеты номера сети

Октеты но-мера хоста

Число воз-можных сетей

Число хостов в таких сетях

А 1-126 w x.y.z 128 (27) 16777214 (224) В 128-191 w.x y.z 16384 (214) 65536 (216) С 192-223 w.x.y z 2097151 (221) 254 (28)

Всякий раз, когда посылается сообщение какому-либо хост-

Page 160: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

160

компьютеру в Internet, IP-адрес используется для указания адреса отправи-теля и получателя. Конечно, пользователям не придется самим запоминать все IP-адреса, так как для этого существует специальный сервис TCP/IP, называемый Domain Name System (Доменная система имен).

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

Кроме того, все страны мира имеют свое собственное символьное имя, обозначающий домен верхнего уровня этой страны. Например, de – Германия, us – США, ru – Россия, by – Беларусь и т.д.

Понятие маски подсети Для того чтобы отделить идентификатор сети от идентификатора хо-

ста, применяется специальное 32-битное число, называемое маской подсе-ти (subnet mask). Чисто внешне маска подсети представляет собой точно такой же набор из четырех октетов, разделенных между собой точками, как и любой IP-адрес. В таблице 3.2 приведены значения маски подсети для сетей класса A, B, C, используемые по умолчанию.

Таблица 3.2 – Значение маски подсети (по умолчанию)

Класс сети Значение маски в битах (двоичное представление)

Значение маски в десятичном виде

А 11111111 00000000 00000000 00000000 255.0.0.0 В 11111111 11111111 00000000 00000000 255.255.0,0 С 11111111 11111111 11111111 00000000 255,255.255.0

Маска применяется также для логического разделения больших IP-

сетей на ряд подсетей меньшего масштаба. Представим, к примеру, что в Сибирском Федеральном Университете, обладающего сетью класса B, имеется 10 факультетов и в каждом из них установлено по 200 компьюте-ров (хостов). Применив маску подсети 255.255.0.0, эту сеть можно разде-лить на 254 отдельных подсетей с числом хостов до 254 в каждой.

Значения маски подсети, применяемые по умолчанию, не являются единственно возможными. К примеру, системный администратор конкрет-ной IP-сети может использовать и другое.

Page 161: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

161

3.4 Основны е сервисы I nter net (DNS, F T P, H T T P, SNM P, POP3, SNT P)

В настоящее время в Интернете существует большое количество сервисов, обеспечивающих работу со всем спектром ресурсов. Например:

• сервис DNS; • электронная почта (E-mail); • сервис IRC (chat); • сервис FTP; • сервис Telnet; • World Wide Web – гипертекстовая система, для интеграции

различных сетевых ресурсов в единое информационное пространство; • потоковое мультимедиа. DNS (Domain Name System – система доменных имён) – компьютер-

ная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компа или устр-ва), получения информации о маршрутизации почты. Распределённая база данных DNS поддерживается с помощью иерархии DNS-серверов, взаимодействующих по определённому протоколу.

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

FTP (File Transfer Protocol – протокол передачи файлов) – стандарт-ный протокол, предназначенный для передачи файлов по TCP-сетям (например, Интернет). FTP часто используется для загрузки сетевых стра-ниц и других документов с частного устройства разработки на открытые сервера хостинга.

Протокол построен на архитектуре «клиент-сервер» и использует разные сетевые соединения для передачи команд и данных между клиен-том и сервером. Пользователи FTP могут пройти аутентификацию, переда-вая логин и пароль открытым текстом, или же, если это разрешено на сер-вере, они могут подключиться анонимно. Можно использовать протокол SSH для безопасной передачи, скрывающей (шифрующей) логин и пароль, а также шифрующей содержимое.

Page 162: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

162

FTP является одним из старейших прикладных протоколов, появив-шимся задолго до HTTP, в 1971 году. Он и сегодня широко используется для распространения ПО и доступа к удалённым хостам.

HTTP (Hyper Text Transfer Prоtocоl – «протокол передачи гипертек-ста») – протокол прикладного уровня передачи данных (изначально – в ви-де гипертекстовых документов). Основой HTTP является технология «кли-ент-сервер», то есть предполагается существование потребителей (клиен-тов), которые инициируют соединение и посылают запрос, и поставщиков (серверов), которые ожидают соединения для получения запроса, произво-дят необходимые действия и возвращают обратно сообщение с результа-том.

HTTP в настоящее время повсеместно используется во Всемирной паутине для получения информации с веб-сайтов.

Основным объектом манипуляции в HTTP является ресурс, на кото-рый указывает URI (Uniform Resource Identifier) в запросе клиента. Обычно такими ресурсами являются хранящиеся на сервере файлы, но ими могут быть логические объекты или что-то абстрактное. Особенностью протоко-ла HTTP является возможность указать в запросе и ответе способ пред-ставления одного и того же ресурса по различным параметрам: формату, кодировке, языку и т. д. (В частности для этого используется HTTP-заголовок.) Именно благодаря возможности указания способа кодирования сообщения клиент и сервер могут обмениваться двоичными данными, хотя данный протокол является текстовым.

HTTP – протокол прикладного уровня, аналогичными ему являются FTP и SMTP. Обмен сообщениями идёт по обыкновенной схеме «запрос-ответ». Для идентификации ресурсов HTTP использует глобальные URI. В отличие от многих других протоколов, HTTP не сохраняет своего состоя-ния. Это означает отсутствие сохранения промежуточного состояния меж-ду парами «запрос-ответ». Компоненты, использующие HTTP, могут само-стоятельно осуществлять сохранение информации о состоянии, связанной с последними запросами и ответами (например, «куки» (cookies) на сто-роне клиента, «сессии» на стороне сервера). Браузер, посылающий запро-сы, может отслеживать задержки ответов. Сервер может хранить IP-адреса и заголовки запросов последних клиентов. Однако сам протокол не осве-домлён о предыдущих запросах и ответах, в нём не предусмотрена внут-ренняя поддержка состояния, к нему не предъявляются такие требования.

SNMP (Simple Network Management Protocol) – простой протокол се-тевого управления) – стандартный интернет-протокол для управления

Page 163: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

163

устройствами в IP-сетях на основе архитектур UDP/TCP. К поддерживаю-щим SNMP устройствам относятся маршрутизаторы, коммутаторы, серве-ры, рабочие станции, принтеры, модемные стойки и другие. Протокол обычно используется в системах сетевого управления для контроля под-ключенных к сети устройств на предмет условий, которые требуют внима-ния администратора. SNMP определен Инженерным советом интернета (IETF) как компонент TCP/IP. Он состоит из набора стандартов для сетево-го управления, включая протокол прикладного уровня, схему баз данных и набор объектов данных.

POP3 (Post Office Protocol Version 3) – протокол почтового отделе-ния, в. 3) – стандартный Интернет-протокол прикладного уровня, исполь-зуемый клиентами электронной почты для извлечения электронного сооб-щения с удаленного сервера по TCP/IP-соединению.

POP и IMAP (Internet Message Access Protocol) – наиболее распро-страненные Интернет-протоколы для извлечения почты. Практически все современные клиенты и сервера электронной почты поддерживают оба стандарта. Протокол POP был разработан в нескольких версиях, нынеш-ним стандартом является третья версия (POP3). Большинство поставщиков услуг электронной почты (такие как Hotmail, Gmail и Yahoo!Mail) также поддерживают IMAP и POP3.

SNTP (Simple Network Time Protocol) – протокол синхронизации времени по компьютерной сети. Является упрощённой реализацией прото-кола NTP. Используется во встраиваемых системах и устройствах, не тре-бующих высокой точности, а также в пользовательских программах точно-го времени.

Существуют несколько организаций, отвечающих за развитие сети Интернет:

• Internet Society (ISOC) – профессиональное сообщество, которое занимается вопросами роста и эволюции сети Интернет, как глобальной коммуникационной инфраструктуры;

• Internet Architecture Board (IAB) – работающая под управлением ISOC организация, в ведении которой находится технический контроль и координация работ для сети Интернет. IAB координирует направление ис-следований и новых разработок для протокола TCP/IP и является конечной инстанцией при определении новых Интернет-стандартов. В нее входят: Internet Engineering Task Force (IETF) – инженерная группа, которая зани-мается решением ближайших технических проблем сети Интернет и Inter-

Page 164: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

164

net Research Task Force (IRTF) – координирует долгосрочные проекты по протоколам TCP/IP;

• Internet Corporation for Assigned Names and Numbers (ICANN) – международная некоммерческая организация для наделения локальных и региональных сетей конкретным IP-адресом. При этой организации суще-ствует специальный информационный центр – InterNIC (Internet Network Center);

• World Wide Web Consortium, W3C (W3-консорциум) – координи-рующая организация по продвижению сети Интернет в качестве среды для осуществления положительных социальных и экономических преобразо-ваний общества.

3.5 С криптовы е язы ки программирования (J avaScr ipt, Per l)

Язык сценариев (или скриптовый) – это язык программирования, который разработан для записи последовательностей операций («сценари-ев»), выполняемых пользователем на своем компьютере. Раньше называл-ся языком пакетной обработки. Сценарий или скрипт – это программа, ав-томатизирующая задачу. Обычно язык скриптов включает простые струк-туры управления: линейные последовательности, циклы и условные выра-жения. Без скрипта пользователю бы пришлось ее выполнять вручную с помощью интерфейса программы. Сценарии обычно интерпретируются, а не компилируются. За счет того, что скрипты значительно короче про-грамм, они выполняются тоже достаточно быстро.

Скрипты используют при разработке сайта в следующих целях: • для расширения функционала ресурса; • для автоматического обмена ссылками; • для выполнения работ по поисковой оптимизации; • для сбора статистики, анализа позиций сайта и т.д. Их преимуществом является: • безопасность. Скриптовый язык обеспечивает программируе-

мость без риска дестабилизации системы. Скрипты не компилируются, а интерпретируются. Поэтому неправильно написанная программа выведет диагностическое сообщение, не вызывая падение системы;

• наглядность. Язык сценариев используется, если необходим вы-разительный код. Концепция программирования в скриптовом языке мо-жет кардинально отличаться от основной программы;

Page 165: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

165

• простота. Код имеет собственный набор программ, поэтому одна строка может выполнять те же операции, что и десятки строк на обычном языке. Поэтому для написания кодов не требуется программист высокой квалификации;

К числу широко используемых в Web-разработках скриптовых язы-ков относятся JavaScript, Perl и др.

JavaScript – это относительно простой объектно-ориентированный язык, предназначенный для создания небольших клиентских и серверных приложений для Internet. Программы, написанные на языке JavaScript, включаются в состав HTML-документов и распространяются вместе с ни-ми. Программы просмотра (браузеры – от англ. browser) типа Netscape Navigator и Microsoft Internet Explorer распознают встроенные в текст до-кумента программы-вставки (script-коды) и выполняют их. Таким образом, JavaScript – интерпретируемый язык программирования. Примерами про-грамм на JavaScript могут служить программы, проверяющие введенные пользователем данные или выполняющие какие-то действия при открытии или закрытии документа. Такие программы могут реагировать на действия пользователя – нажатие кнопок "мыши", ввод данных в экранной форме или перемещение "мыши" по странице. Более того, JavaScript-программы могут управлять самим браузером и атрибутами документа.

Для создания программ на JavaScript не требуется никаких дополни-тельных средств – необходим лишь браузер, поддерживающий язык JavaScript соответствующей версии и текстовый редактор, позволяющий создавать HTML-документы. Так как программа на JavaScript встраивается непосредственно в текст HTML-документа, вы можете немедленно увидеть результаты своей работы во время просмотра документа браузером и при необходимости внести изменения.

Основные области использования JavaScrip: • создание динамических, интерактивных страниц, т. е. страниц,

содержимое которых может меняться после загрузки документа; • проверка правильности заполнения пользователем форм до пере-

сылки их на сервер; • решение "локальных" задач с помощью сценариев и некоторые

другие сферы. Что умеет JavaScript? • Изменять страницу, писать на ней текст, добавлять и удалять те-

ги, менять стили элементов.

Page 166: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

166

• Реагировать на события: скрипт может ждать, когда что-нибудь случиться (клик мыши, окончание загрузки страницы) и реагировать на это выполнением функции.

• Выполнять запросы к серверу и загружать данные без переза-грузки страницы.

• Устанавливать и считывать cookie, проверять корректность дан-ных, выводить сообщения и многое другое.

Perl – интерпретируемый скриптовый язык программирования, один из самых распространённых в области веб-программирования. По одной из версий, Perl – аббревиатура, которая расшифровывается как "Practical Extraction and Report Language" (практический язык извлечений и отчётов).

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

Perl – язык, приспособленный для обработки произвольных тексто-вых файлов, извлечения из них необходимой информации и выдачи сооб-щений. Perl также удобен для написания различных системных программ. Этот язык прост в использовании, эффективен. Синтаксис выражений Perl близок к синтаксису Си. Perl позволяет использовать регулярные выраже-ния, создавать объекты, вставлять в программу на Си или Си++ куски кода на Perl, а также позволяет осуществлять доступ к базам данных, в том чис-ле Oracle.

Он удобен для решения задач администрирования Web-серверов, электронной почты и других систем. Благодаря быстроте и легкости напи-сания сценариев на этом языке он распространился и на другие платфор-мы: DOS, Windows, OS/2, Mac, VMS и пр. Одно из основных достоинств языка Perl – его открытость и доступность. В сети Internet можно получить совершенно бесплатно исходные тексты интерпретатора Рerl (язык Perl – интерпретируемый, что в некоторых случаях является преимуществом) и модулей его расширения.

3.6 Я зы ки разметки (H T M L , X M L )

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

Page 167: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

167

ющие дескрипторы, в таких документах каким-то образом кодируются, выделяются относительно основного содержимого документа и служат в качестве инструкций для программы, производящей показ содержимого документа на стороне клиента. В самых первых системах для обозначения этих команд использовались символы «<» и «>», внутри которых помеща-лись названия инструкций и их параметры. Сейчас такой способ обозначе-ния тэгов является стандартным.

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

Самый популярный на сегодняшний день язык гипертекстовой раз-метки – HTML, был создан специально для организации информации, распределенной в сети Интернет, и является одной из ключевых составля-ющих технологии WWW. С использованием гипертекстовой модели доку-мента способ представления разнообразных информационных ресурсов в сети стал более упорядочен, а пользователи получили удобный механизм поиска и просмотра нужной информации.

HTML является упрощенной версией стандартного общего языка разметки – SGML (Standart Generalised Markup Language), который был утвержден ISO в качестве стандарта еще в 80-х годах. Этот язык предна-значен для создания других языков разметки, он определяет допустимый набор тэгов, их атрибуты и внутреннюю структуру документа.

Гораздо более простой и удобный, чем SGML, язык HTML позволяет определять оформление элементов документа и имеет некий ограниченный набор инструкций – тэгов, при помощи которых осуществляется процесс разметки.

Документ HTML представляет собой файл типа html или htm, нахо-дящийся на сервере Интернета, в локальной сети или на жестком диске. Этот файл содержит обычный текст и текстовые команды разметки, назы-ваемые тегами. С помощью тегов можно решить две основные задачи:

• управлять содержимым документа, включая форматирование текста, разметку заголовков, создание списков и таблиц;

• управлять связями документа с другими ресурсами (изображени-ями, таблицами стилей, внешними программами, сторонними Веб-страницами).

Page 168: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

168

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

Однако, уже в середина 90-х годов были отмечены недостатки HTML:

• в разных браузерах целый ряд тегов различался; • нельзя было размечать данные в разных стилях, поскольку HTML

представлял собой язык форматирования для отображения данных; • браузер, как среда исполнения была очень слабой, ограничивала

возможности динамической обработки данных; • поисковые машины возвращали много ссылок, причем содержа-

ние многих из них не соответствовало запросу. Также следует отметить, что современные приложения нуждаются

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

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

Page 169: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

169

Ему на смену был предложен новый язык гипертекстовой разметки – язык XML. В чем же заключается его достоинства?

XML (Extensible Markup Language) – это язык разметки, описываю-щий целый класс объектов данных, называемых XML- документами. Этот язык используется в качестве средства для описания грамматики других языков и контроля за правильностью составления документов. Т.е. сам по себе XML не содержит никаких тэгов, предназначенных для разметки, он просто определяет порядок их создания. Таким образом, если, например, мы считаем, что для обозначения элемента rose в документе необходимо использовать определенный тэг, то XML позволяет свободно использовать определяемый нами тэг.

Набор тэгов может быть легко расширен. Сам процесс создания XML документа упрощается и требует от нас

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

Еще одним из очевидных достоинств XML является возможность использования его в качестве универсального языка запросов к хранили-щам информации. Кроме того, XML-документы могут выступать в каче-стве уникального способа хранения данных, который включает в себя од-новременно средства для разбора информации и представления ее на сто-роне клиента. В этой области одним из перспективных направлений явля-ется интеграция Java и XML – технологий, позволяющая использовать мощь обеих технологий при построении машинно-независимых приложе-ний, использующих, кроме того, универсальный формат данных при об-мене информации.

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

Page 170: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

170

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

Также одним из достоинств XML является то, что в настоящее время появились и свободно распространяются всевозможные программные про-дукты, предназначенные для работы с XML-документами (например, в Microsoft Internet Explorer 4/0 и выше).

3.7 И нструментальны е средства создания web-серверов и web-сайтов (PH P, Delphi for PH P, A SP .NE T )

Для создания документа формата HTML достаточно простого тек-стового редактора типа Блокнот. Однако в таких редакторах весь HTML-текст приходится писать вручную. Для удобства можно воспользоваться редакторами, которые автоматизируют ввод тегов, подсвечивая другими цветами сами теги и их атрибуты, или же позволяют готовить оформление страницы, генерируя код автоматически.

Достаточно востребованным для создания web-сайтов является ряд визуальных приложений, называемых WYSIWYG-редакторами (What You See Is What You Get – что видишь, то и получишь). Эти программы уско-ряют создание web-документов и избавляют от необходимости вручную набирать основной программный HTML-код. Все необходимые операции выполняются автоматически. Но все визуальные редакторы web-страниц вставляют в создаваемые страницы множество лишних ненужных тегов.

Так же web-страницы можно создавать вручную с помощью языка HTML (HyperText Mark-up Language – язык разметки гипертекста), при этом ввод HTML-кода выполняется в любом текстовом редакторе или с помощью HTML-редакторов.

Такие современные редакторы, как Microsoft FrontPage или Macromedia Dreamweaver, позволяют готовить документы в этих двух режимах по выбору. Рассмотрим более подробно их назначение и основ-ные характеристики.

Microsoft FrontPage – редактор для начинающих разработчиков веб-страниц, он предоставляет полный набор средств для разработки и органи-зации веб-сайтов в различных режимах. Задача пользователя сводится к тому, что он располагает тексты, изображения и гиперссылки так, как ему

Page 171: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

171

нужно, а FrontPage сам генерирует необходимый HTML-код. (Необходимо учитывать, что код, сгенерированный FrontPage, не всегда является опти-мальным).

Работа в редакторе FrontPage похожа на работу с текстовым процес-сором Microsoft Word. В нем есть стандартные кнопки, такие, как полу-жирный шрифт, курсив и подчеркивание, маркированные и нумерованные списки, повтор и отмена операции и т. п. Ввод текста в окне редактора происходит так же, как в Word; форматирование страниц осуществляется с помощью таблиц и фреймов.

Редактор FrontPage позволяет одновременно открывать несколько файлов (страниц) и быстро переходить от одной страницы к другой. Редак-тор также позволяет скопировать страницу (вместе со всем кодом HTML) из Интернет и отредактировать ее.

Программный пакет DreamWeaver, как и FrontPage, предназначен для проектирования различных сайтов и редактирования их непосред-ственно с FTP-сервера, это более мощный редактор, им чаще пользуются профессионалы. Создание сайта так же можно начать в режиме WYSIWYG (what you see is what you get – что видите, то и получаете).

Оба редактора позволяют создавать каскадные таблицы стилей (CSS), анимацию, элементы ActiveX, а так же добавлять объекты JavaScripts.

Благодаря своим возможностям добавлять новые свойства веб-страницам широкое распространение получили Java-апплеты. Файлы за-гружаются как отдельные элементы, но обычно распространяются в заар-хивированном виде (в виде пакетов *.zip, укомплектованных некоторыми файлами поддержки – документацией, графическими и звуковыми файла-ми в зависимости от предназначения апплета).

Редакторы позволяют быстро включить апплет в страницу. Для этого необходимо файлы с расширением .class импортировать в папку с сайтом и вставить HTML-код в нужную страницу.

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

В WWW используются в основном два формата графических изоб-ражений – GIF и JPEG. Изображения в этих форматах воспроизводятся са-мими браузерами без использования встраиваемых модулей.

Page 172: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

172

GIF (Graphic Interchange Format) файлы – это файлы растровых изоб-ражений, в которых используется не более 256 индексированных цветов. Графическая информация, сохраняемая в GIF-файле, сжимается при по-мощи специальных алгоритмов сжатия с минимальными потерями инфор-мации. Рекомендуется использовать для веб-графики разрешение 72 пик-селя на дюйм, т.к. именно эта величина разрешения используется при пре-образовании в формат GIF.

JPEG (Joint Photographic Experts Group) представляет собой растро-вое изображение, в котором может быть использовано до 16,7 млн. цветов (24-битовый цвет). Сжатие JPEG-изображений, как правило, сопровожда-ется потерями информации, т.к. основано на отбрасывании мелких дета-лей. Для этого формата также рекомендуется создавать рисунки с разре-шением 72 пикселя на дюйм.

Каждый формат имеет свои преимущества и недостатки. Выбор формата для графического изображения, размещаемого на веб-странице, зависит от стоящих перед разработчиком целей. GIF-формат больше под-ходит для изображений, содержащих меньше 256 цветов. JPEG-файлы ис-пользуются для хранения 16- и 24-битовых фотографических изображений, содержащих более 256 цветов.

Рисунки для веб-сайта можно взять в специальной библиотеке ри-сунков (Clip Art), создать с помощью графической программы, отсканиро-вать какие-либо готовые изображения или воспользоваться цифровой ка-мерой.

В WWW все большую популярность получает Flash-технология, разработанная компанией Macromedia. Это оптимальное средство разра-ботки мультимедийного информационного наполнения и приложений для Интернета. Благодаря векторной технологии Flash позволяет радикально сократить объем данных, описывающих движущееся изображение. Создав в одном из кадров векторный рисунок, можно задать траекторию его даль-нейшего движения и количество кадров, на протяжении которого эта тра-ектория должна быть пройдена. В файле при этом хранятся только перво-начальное изображение и уравнение траектории, а все промежуточные кадры просчитываются на основе этих данных в момент воспроизведения. Получается, что для хранения движущегося изображения требуется прак-тически столько же места, сколько и для неподвижного. Кроме простых перемещений, задаваемых траекториями, можно строить анимацию, ис-пользуя повороты и трансформации изображения. Каждая линейка кадров принадлежит конкретному слою. От того, на каком слое находится объект,

Page 173: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

173

зависит, будет ли он виден на первом плане или находится позади других объектов. Используя слои, можно без труда создать ощущение многопла-новости сцены.

В редактор Flash включено такое мощное средство, как объектно-ориентированный язык сценариев ActionScript, имеющий широкий диапа-зон возможностей. Помимо основных действий можно управлять объекта-ми, изменяя любые их параметры, загружать дополнительные модули, об-мениваться данными со скриптами на HTML-странице, написанными на языке JavaScript. Являясь модульным языком программирования, ActionScript позволяет писать сценарии, представляющие собой небольшие модули, которые выполняют строго определенные функции, например остановку или воспроизведение клипа. В общих чертах задача авторов фильмов сводится к тому, чтобы связать сценарии ActionScript с соответ-ствующими кнопками, клипами и кадрами. Когда при воспроизведении фильма пользователь щелкает на какой-то кнопке или просто наступает черед кадра или клипа, с которым связан определенный сценарий, ActionScript этот сценарий автоматически запускается. Модульность языка позволяет в большинстве случаев работу над фильмом свести к написанию небольших по объему сценариев для кнопок, клипов и кадров.

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

для веб разработок являются PHP, Delphi for PHP, ASP .NET. PHP (Hypertext Preprocessor) – это распространенный язык програм-

мирования общего назначения с открытым исходным кодом. PHP скон-струирован специально для ведения Web-разработок и его код может внедряться непосредственно в HTML. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров.

РНР – это серверный язык сценариев, который может быть внедрен в код HTML для развертывания в браузере.

Серверный сценарий можно рассматривать как совокупности супер-дескрипторов HTML или небольших программ, которые выполняются внутри Web-страниц, но не в браузере, а на сервере, перед отправкой в браузер. Например, код РНР можно использовать в коде HTML для ввода общих верхних и нижних колонтитулов во все страницы узла или для со-хранения данных, введенных в форму, в базе данных.

Строго говоря, язык РНР практически не применяется для создания компоновки, обработки событий, выполнения манипуляций с элементами объектной модели документа, а также фактически не влияет на то, как вы-

Page 174: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

174

глядит Web-страница или какие звуки на ней воспроизводятся. В действи-тельности основная часть действий, выполняемых в коде РНР, остается не-заметной для конечного пользователя. В частности, просмотр страницы, созданной с помощью языка РНР, отнюдь не позволяет судить о том, что для написания кода этой страницы применялся какой-то другой язык, кро-ме HTML, поскольку обычно результатом воспроизведения кода РНР яв-ляется код HTML.

В настоящее время программное обеспечение поддержки языка РНР формально введено в виде отдельного модуля в состав программ HTTP-сервера Apache, доминирующего на рынке бесплатного Web-сервера, ко-торый применяется для обработки около 67% трафика World Wide Web. Это означает, что машина поддержки сценариев РНР может быть встроена непосредственно в сам Web-сервер, что способствует ускорению обработ-ки, более эффективному распределению памяти и значительному упроще-нию сопровождения. Интерпретатор языка РНР, как и сервер Apache, пол-ностью обеспечивает эксплуатацию приложений на разных программных и аппаратных платформах. Это означает, что приложения, написанные на этом языке, могут эксплуатироваться в своем непосредственном виде во многих разновидностях операционной системы Unix, в разных версиях операционной системы Windows, а с недавнего времени – в операционной системе Mac OS X.

Delphi for PHP является интегрированной, построенной на компо-нентах, средой для быстрой разработки приложений (RAD IDE) и библио-теки визуальных компонентов с открытым исходным кодом для PHP (VCL for PHP).

Delphi for PHP предоставляет все средства и функциональность, не-обходимые для быстрого создания мощных PHP-приложений в визуальном стиле, новых компонентов языка PHP и упаковки наработанного PHP-кода в допускающие многократное использование визуальные компоненты. Наряду с этим, Delphi for PHP легко поддерживает MySQL, InterBase от CodeGear и другие базы данных, базирующиеся на языке SQL, что обеспе-чивает библиотека с открытым исходным кодом VCL для PHP.

Основные преимущества: • среда быстрой разработки приложений для PHP; • VCL for PHP – это написанная на языке PHP библиотека визуаль-

ных компонентов с открытым исходным кодом, имеющая в своем составе более 50 расширяемых и допускающих повторное использование компо-нентов;

Page 175: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

175

• встроенная интеграция с InterBase, MySQL, Oracle, Microsoft SQL Server и другими популярными базами данных;

• интегрированный отладчик языка PHP; • разворачивание PHP-приложений на Windows, Linux, Solaris и

других платформах; • поддержка многих национальных языков в приложениях; • разработка приложений баз данных в стиле "перетащить и оста-

вить" с использованием средства Data Explorer для InterBase и MySQL; • редактор кода, облегчающих и ускоряющих создание кода на

языке PHP. ASP .NET (Active Server Pages для .NET) – технология создания веб-

приложений и веб-сервисов от компании Майкрософт. Позволяет в значи-тельной степени облегчить процесс создание динамических страниц HTML. Она является составной частью платформы Microsoft .NET и разви-тием более старой технологии Microsoft ASP.

Благодаря тому, что внешнее сходство между ASP.NET и более ста-рой версией технологии ASP очень велико, то перейти на работу с более современной технологией разработчику относительно просто. Но, несмот-ря на внешнее сходство, внутреннее устройство новой технологии в значи-тельной степени отличается от устаревшей ASP. В ней содержится огром-ное количество уже готовых элементов управления, пользуясь которыми можно быстро создавать самые разнообразные интернет-сайты. Помимо этого, можно прибегнуть к всевозможным сторонним сервисам, которые предоставляют другие сайты, не нагружая тем самым лишними функциями свой проект. Разработчики могут писать код для ASP.NET, используя практически любые языки программирования, входящие в комплект .NET Framework (C#, Visual Basic.NET и JScript .NET). ASP.NET имеет преиму-щество в скорости по сравнению со скриптовыми технологиями.

3.8 Основы W eb-дизайна

Информация, доступная пользователям Internet, располагается на компьютерах (web-серверах), на которых установлено специальное про-граммное обеспечение. Значительная часть этой информации организова-на в виде web-сайтов. Web-сайт – это информация, представленная в определенном виде, которая располагается на web-сервере и имеет свое имя (адрес). Web-сайт состоит из связанных между собой web-страниц. web-страница представляет собой текстовый файл с расширением *.htm,

Page 176: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

176

который содержит текстовую информацию и специальные команды – HTML-коды, определяющие в каком виде эта информация будет отобра-жаться в окне браузера.

Вся графическая, аудио- и видео-информация непосредственно в web-страницу не входит и представляет собой отдельные файлы с расши-рениями *.gif, *.jpg (графика), *.mid, *.mp3 (звук), *.avi (видео). В HTML-коде страницы содержатся только указания на такие файлы.

Каждая страница web-сайта также имеет свой Internet адрес, кото-рый состоит из адреса сайта и имени файла, соответствующего данной странице. Таким образом, web-сайт – это информационный ресурс, состо-ящий из связанных между собой гипертекстовых документов (web-страниц), размещенный на web-сервере и имеющий индивидуальный ад-рес.

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

ницы и разрабатывается графика). Любую страницу можно оценить по трем параметрам: контенту,

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

Реализация. Это и есть работа по созданию сайта. На этом этапе проводится подготовка текстового и графического материала. Материал разбивается по файлам в соответствии со структурой. Организуются ссыл-ки между файлами сайта.

Рекомендуется создать шаблон-заготовку страницы с основными структурными областями и стилевым оформлением и использовать ее для

Page 177: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

177

создания всех страниц узла; в каждой новой странице можно менять толь-ко содержимое и адресацию ссылок. Такая организация работы сократит время, потраченное на каждую из них.

Тестирование. Завершив работу по размещению страниц на web-сайте, необходимо выполнить тестирование. Оно состоит из двух этапов: тестирование на работоспособность и тестирование на удобство пользова-ния интерфейсом. На этапе тестирования на работоспособность проверя-ют, как функционирует web-сайт, используя те же условия, при которых с ним будет работать пользователь. Необходимо поработать с web-сайтом в различных браузерах и посмотреть, как он выглядит в каждом из них; оце-нить время загрузки страниц.

Публикация. Готовый web-сайт необходимо опубликовать на web-сервере, чтобы он был доступен через Internet. Если ваш сайт создан по-средством редактора FrontPage, то на сервере должны быть инсталлирова-ны серверные расширения FrontPage, что обеспечит полную поддержку доступных в FrontPage компонентов, которые были помещены на странице в процессе создания сайта.

Если у вас нет собственного сервера, то в сети можно найти огром-ное количество ссылок на free web pages, где некоторые провайдеры предоставляют своим клиентам бесплатное место под страницу.

Например, http://narod.ru Однако для того чтобы окончательно выбрать сервер для размеще-

ния своего сайта необходимо обратить внимание на следующее: • отсутствие дискриминации по контенту. Некоторые сервера ста-

вят условия, касающиеся содержимого Вашего сайта; • надежность web-сервера. Посетите их web-узел в пиковые часы и

убедитесь, что проблем с доступом не возникает; • отсутствие скрытых завуалированных видов оплаты места в виде

всевозможных доплат за различные услуги и рекламы; • техническая поддержка. Предоставят ли Вам возможность обще-

ния с администратором сервера, есть ли возможность доступа по протоко-лу FTP (File Transfer Protocol ) и т.д.;

• объем выделяемого Вам пространства. Обычно это 5 – 10 мега-байт;

• дополнительные возможности. Не будет лишним, если сервер предложит Вам: бесплатную почту. счетчик посещений, гостевую книгу, чат, раз-личные CGI-скрипты и т.д.;

Page 178: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

178

• какое программное обеспечение установлено на сервере. Напри-мер, UNIX-сервера чувствительны к регистру букв в названиях файлов, т.е. если у Вас в исходном коде будет стоять ссылка на файл background.gif, а файл будет назван background.Gif или Background.gif, то он не будет визу-ализирован. Однако у таких серверов более высокая степень защищенно-сти от взломов;

• есть ли на сервере автоматическая перекодировка содержимого страниц, в соответствии с пользовательскими настройками браузера. Если нет, то у Вас могут возникнуть проблемы с отображением русских кодиро-вок.

Рекламирование сайта. Существует множество приемов реклами-рования сайта: размещение информации о нем на поисковом web-сайте, организация взаимных ссылок с другими сайтами и т.д.

Как привлечь пользователя? Красиво оформленные страницы web-сайта – это только половина дела. В первую очередь страницы должны быть содержательными. Основное требование к содержимому web-сайта – полнота и достоверность. Информация должна быть представлена таким образом, чтобы пользователь, однажды посетивший web-сайт, еще ни раз обратился к нему.

Сопровождение сайта. Содержимое web-сайта может подвергаться неоднократным изменениям. Важно, чтобы предоставляемая на web-сайте информация всегда была актуальной, поэтому как можно чаще обновляйте информацию на своем web-сайте, по возможности расширяйте материал, улучшайте дизайн.

Обязательное правило. web-сайт должен обновляться не реже одного раза в месяц. В противном случае вы потеряете не только потенциальных, но и уже состоявшихся посетителей. Рекомендуется создать на своем ком-пьютере копию web-сайта, вносить в нее изменения и новую версию пере-давать для размещения на сервере в завершенном виде.

Основные элементы HTML. Основой для создания веб-страниц является язык HTML (HyperText

Mark-up Language – язык разметки гипертекста), при этом ввод HTML-кода выполняется в любом текстовом редакторе или с помощью HTML-редакторов.

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

Page 179: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

179

щего и закрывающего тегов, между которыми располагается содержимое тега. Они подразделяются на структурные, которые организуют текст и на форматирующие, которые задают его стиль.

Процесс создания документа HTML «вручную», не прибегая к спе-циализированным приложениям, заключается в следующем:

• создать минимальную веб-страницу в файле с расширением .htm; • вставить внутрь тегов текст; • осуществить логическое и физическое форматирование текста

(разбивка на абзацы, блоки, заголовки и пр., внешнее их оформление) при помощи тегов;

• внедрить в документ необходимые объекты: рисунки, таблицы, видео- клипы, аудио- файлы, апплеты Java, скрипты и т.д. при помощи те-гов языка HTML;

• вставить гипертекстовые связи; • загрузить готовый документ в программу просмотра и при необ-

ходимости продолжить редактирование. В настоящее время применяется стандарт языка HTML 4.0, теги ко-

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

Значки «<» и «>». Эти элементы в угловых скобках называются HTML-дескрипторами или HTML-тегами.

Именно дескрипторы сообщают web-браузеру информацию о струк-туре и особенностях форматирования web-страницы. Большинство де-скрипторов являются парными, т.е. состоят из открывающей и закрываю-щей частей и воздействуют на текст, помещенный между ними (признак закрывающего дескриптора – обратная косая черта «/»).

Следующий важный термин, относящийся к основным понятиям языка HTML, – элемент. Он состоит из открывающего дескриптора, со-держания и закрывающего дескриптора. Содержанием называется все, что находится между открывающим и закрывающим дескрипторами.

Атрибуты – дополнительные к дескрипторам параметры или свой-ства элементов (например, цвет или размер шрифта для одного абзаца, где абзац является элементом).

Структура документа HTML. Согласно спецификациям для всех документов HTML обязательны следующие условия.

Page 180: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

180

В документе должна присутствовать директива (или пролог, как его иногда называют) DOCTYPE (Document Type Declaration). Пролог содер-жит объявление, информирующее о том, какая именно версия HTML ис-пользовалась при составлении web-страницы, и указывает web-браузеру, каким образом обрабатывать данный документ. Пролог представляет со-бой одиночный дескриптор специального вида. Данный дескриптор всегда вставляется в самом начале HTML-документа перед открывающим де-скриптором <html>.

<! doctype – единственный дескриптор, который пишется прописны-ми буквами. Все остальные дескрипторы нужно набирать только строчны-ми буквами!

HTML-документ всегда должен начинаться открывающим дескрип-тором <html> и заканчиваться закрывающим дескриптором </html>

Далее следуют два дескриптора заголовка <head> и </head>. Между этими дескрипторами обычно находится пара дескрипторов <title> и </title>, определяющих название страницы. Обратите внимание: именно это название отображается в заголовке окна web-браузера.

Далее следует пара дескрипторов содержимого документа <body> и </body>. Между этими дескрипторами и размещают всю информацию, ко-торая планируется быть представленной на web-странице.

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

Комментарии не отображаются web-браузерами на экране, но нужно помнить, что любой пользователь может прочесть данные комментарии.

Чтобы внести в HTML-код web-страницы текстовую конструкцию комментариев, выполните такие действия.

1. Введите дескриптор <!– в месте начала текста комментария. Набе-рите собственно требуемый текст комментария. Завершите блок коммен-тария закрывающим дескриптором.

2. Как обычно, сохраните текст, вернитесь в окно web-браузера и об-новите изображение открытой web-страницы. Обратите внимание, что на web-странице текст комментариев не отображается.

Текст комментариев можно отделять дополнительными пробелами от разделительных дескрипторов, чтобы HTML-код было проще читать.

Page 181: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

181

Т Е М А 4 С И С Т Е М Ы У П РА В Л Е Н И Я Б А ЗА М И ДА Н Н Ы Х

4.1 П роектирование баз данны х

Одними из основополагающих в концепции баз данных являются ка-тегории «данные» и «модель данных». Данные – это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию и др. Любая база данных состоит из элементов данных (реквизитов) и связей между ними. Значит, чтобы организовать данные в базу, необходим пред-варительный процесс моделирования, то есть должна быть разработана схема, позволяющая изобразить связи между элементами данных. Такую схему принято называть моделью данных. Таким образом, модель данных – это систематизация разнообразной информации по данным и отражение их свойств по содержанию, структуре, объему, связям, динамике с учетом удовлетворения информационных потребностей всех категорий пользова-телей. Модель данных является ядром базы данных.

Стремительное увеличение объемов обрабатываемой информации с использованием вычислительной техники привело к разработке новой концепции управления данными – автоматизированных банков данных.

Автоматизированный банк данных – система информационных, математических, программных, языковых и технических средств и обслу-живающего персонала, предназначенных для эффективного хранения и управления данными с целью получения требуемой информации. Основ-ная часть банка данных – база данных с ее системой управления. База данных (БД) – организованная структура, предназначенная для хранения информации. Система управления базами данных (СУБД) – это сово-купность языковых и программных средств, предназначенных для созда-ния, ведения и совместного использования БД многими пользователями.

Разработка систем управления базами данных в большой степени явилась результатом решения двух основных проблем, возникших при ра-боте с обычными системами файловой обработки: избыточности и зави-симости данных.

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

Page 182: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

182

существует вероятность несоответствия данных из-за ошибок в программе или различия в планировании при изменении файлов. Т.е. существует про-блема несогласованного изменения данных.

Решить только что рассмотренные проблемы можно, сделав так, что-бы прикладные программы не зависели от таких деталей, как организация файлов и формат записей. Программы пользователей имеют дело не с са-мими файлами из базы данных, а делают запросы системе управления ба-зой данных на логическом уровне без учета того, как данные хранятся в файле. Например, программа может запросить текущую регистрационную информацию по определенному студенту. Посредством обращения к опи-санию отображения данных СУБД определит нужные физические файлы и порядок доступа к ним. После чтения файлов содержащаяся в них ин-формация будет приведена к нужному прикладной программе виду.

Независимость данных, полученная с помощью только что описан-ного подхода, означает, что можно менять структуры файлов, не трогая при этом прикладные программы.

Независимость данных, обеспечиваемая системой управления базами данных, важна и по другим причинам. При желании в любой момент могут быть заменены технические средства, на которых реализована база дан-ных. Например, вся она или же ее часть может быть перенесена на запоми-нающее устройство другого типа. Файлы могут быть реорганизованы, пе-ресортированы в различные последовательности или проиндексированы другим набором ключей. Обычно это делает администратор базы данных, который старается так организовать и хранить данные, чтобы база данных использовалась с большей эффективностью. Все этим изменения можно сделать, не оказывая влияния на прикладные программы.

Информация, хранимая СУБД, в зависимости от нужд пользователя может быть представлена по-разному. Наиболее общим представлением является полное логическое описание базы данных, называемое схемой.

Для создания базы данных СУБД применяются так называемые язы-ки описания данных. С помощью языка описания данных задается схема базы данных, описываются типы данных. В каждой СУБД имеется транс-лятор или интерпретатор с языка описания данных и с языка манипулиро-вания данными. Язык манипулирования данными обеспечивает выбор конкретного данного в соответствии с критериями поиска. В современных СУБД чаще всего используется язык запросов (например, SQL).

Основными принципами проектирования баз данных являются: • Эффективная структуризация информации, что позволяет эконо-

Page 183: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

183

мить время и уменьшать затраты. • Исключение или сведение к минимуму повторяющихся данных в

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

• Обеспечение всем пользователям быстрого доступа к информа-ции БД.

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

необходима конкретному пользователю. • Возможность добавления или редактирования информации базы

данных только определенным лицам. • Последовательность разработки базы данных. В настоящее время используются два различных подхода к проекти-

рованию базы данных с помощью концептуальных моделей: проектирова-ние прикладной базы данных снизу вверх и разработка проблемно-ориентированной базы данных сверху вниз. Эти подходы, рассматривае-мые ниже, позволяют создать базы данных различной структуры.

Прикладные базы данных (подход проектирования снизу вверх) Модели данных позволяют представить информацию определенным

образом. При этом можно разрабатывать базу данных снизу вверх и начи-нать с данных на мониторе и/или в напечатанном виде. Такой подход при-меняется для создания прикладной базы данных. Если нужно построить простую базу данных для работы с объектами одного типа, то проектиро-вание снизу вверх может сослужить хорошую службу, т. к. способы пред-ставления и свойства включенных объектов обычно хорошо известны. Од-нако недостатком такого подхода является то, что он часто приводит к со-зданию нескольких баз данных, содержащих повторяющуюся информа-цию. Рассмотрим, например, базу данных, содержащую таблицу с данны-ми о клиентах. При добавлении в одну базу данных информации о новом клиенте или обновлении данных о существующем потребуется изменить эту информацию и во всех других прикладных базах данных. Процесс об-

Page 184: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

184

новления занимает много времени и с большой вероятностью может стать источником ошибок.

Порядок проектирования при использовании подхода снизу вверх • Анализ отчетов и форм для внесения информации (анализ доку-

ментов на бумаге). • Группировка данных по логическому принципу и разделение их

на информацию, встречающуюся только раз в конкретном отчете (доку-менте) или в каждой строке отчета.

• Группировка данных в таблицы, описывающие свойства кон-кретных объектов, и разделение в разные таблицы повторяющихся и не повторяющихся данных.

• Нормализация. • Связывание таблиц. • Продумывание операции, выполняемых при создании и измене-

нии информации таблиц, включая целостность данных. • Определение использования индексов для ускорения выполнения

запросов. • Определение пользователей, которым разрешен доступ к данным,

их редактирование и изменение структуры таблиц, если это необходимо. • Создание приложений. Проблемно-ориентированная база данных (подход проектирова-

ния сверху-вниз) Базы данных, содержащие таблицы, связанные с одним классом

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

При проектировании проблемно-ориентированных баз данных тре-буется подход сверху вниз. В этом случае ход разработки определяют свой-ства объектов, а не использующие их процедуры. Проектирование про-блемно-ориентированных баз данных включает разработку схем использу-емых объектов и выявление связей между ними, также создание моделей всех задействованных баз данных. Затем нарисованную структуру базы данных отдают на ознакомление пользователю.

Этапы разработки базы данных для подхода сверху вниз: • Определить объекты (источники данных), которые должны со-

Page 185: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

185

держаться в БД (будущие таблицы). • Выявить связи между объектами. • Определить основные свойства объектов для сопоставления им

затем атрибутов. • Выявить связи между свойствами объектов. • Определить таблицы, входящие в базу данных путем установле-

ния соответствия между объектами и таблицами БД. • Нормализация (нормализацией называется формальная процеду-

ра, в ходе которой атрибуты данных группируются в таблицы, а таблицы группируются в базы данных).

• Определить связи между таблицами БД на основе связей между объектами.

• Продумать операции, выполняемые при создании и изменении информации таблиц, включая целостность данных.

• Определить как использовать индексы для ускорения выполне-ния запросов.

• Определить пользователей, которым разрешен доступ к данным, их редактирование и изменение структуры таблиц, если это необходимо.

• Создать приложение. Режимы работы с базами данных. Обычно с БД работают две кате-

гории исполнителей: • проектировщики – разрабатывают структуру таблиц базы и со-

гласовывают ее с заказчиком; разрабатывают объекты, предназначенные для автоматизации работы и ограничения функциональных возможностей работы с базой (из соображений безопасности);

• пользователи – работают с базами данных, наполняют ее и об-служивают.

Соответственно, СУБД имеет два режима: проектировочный и поль-зовательский. В проектировочном режиме создаются и изменяются струк-тура базы и ее объекты. В пользовательском используются ранее подго-товленные объекты для наполнения БД или получения данных из нее.

4.2 Т рехуровневая модель организации баз данны х

После того, как была выработана концепция базы данных и системы управления ее, специалисты, начиная с 1971 года, стали работать над об-щей архитектурой и терминологией базы данных. В результате много-кратных обсуждений предлагаемых решений в 1978 году учеными была

Page 186: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

186

принята трехуровневая система организации данных, предложенная Наци-ональным Институтом стандартизации – ANSI (American National Stand-ards Institute) и Комитетом по планированию выпуска стандартов и техни-ческих условий – SPARC Соединенных штатов Америки. В соответствии с принятой концепцией предлагается выделять три уровня абстракции пред-ставления данных: внешний, концептуальный и внутренний (рисунок 4.1). Хотя идеология ANSI/SPARС не стала стандартом, она представляет осно-ву для понимания основных функциональных особенностей баз данных и систем управления базами данных (СУБД).

Рисунок 4.1 – Трехуровневая модель организации баз данных Основное внимание в этом подходе сконцентрировано на необходи-

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

• внешний уровень – это тот, на котором представляют данные пользователи;

• концептуальный уровень служит для отображения данных

Page 187: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

187

внешнего уровня на внутренний и обеспечивает необходимую независи-мость данных разных уровней друг от друга;

• на внутреннем уровне данные воспринимаются СУБД и опера-ционной системой.

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

Конечные пользователи часто оперируют с приложениями. Каждое приложение видит и обрабатывает только те данные, которые необходимы именно ему. Например, системе отдела кадров нужны сведения о возрасте, домашнем адресе сотрудника, а система расчета зарплаты учитывает ква-лификацию работника, стаж его работы.

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

Концептуальный уровень – это попытка представить требования к базе со стороны организации. И этот уровень не должен содержать ника-ких сведений о методах хранения данных. Здесь должны быть отражены:

• все сущности, включаемые в базу, их атрибуты и связи; • накладываемые на данные ограничения; • семантическая информация о данных; • информация о мерах обеспечения безопасности и поддержки це-

лостности данных.

Page 188: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

188

База данных на концептуальном уровне имеет высокую степень аб-стракции и характеризуется аппаратной и программной независимостью. Создаваемая на этом уровне концептуальная модель служит основой для идентификации и описания основных объектов данных.

Внутренний уровень служит для адаптации концептуальной моде-ли к конкретной СУБД. Другими словами, внутренняя уровень – это пред-ставление базы данных со стороны СУБД, и на этом уровне описывается, как данные должны храниться в компьютере. А потому на этом уровне требуется, чтобы проектировщик привел свойства и ограничения концеп-туальной модели в соответствие с выбранной моделью реализации базы данных. Внутренний уровень предназначен для достижения оптимальной производительности и обеспечения оптимального использования дисково-го пространства. На этом уровне осуществляется взаимодействие СУБД с методами доступа операционной системы. Здесь хранится такая информа-ция:

• распределение дискового пространства для хранения данных и индексов;

• описание подробностей хранения данных; • сведения о размещении записей; • сведения о сжатии данных и методах их шифрования. База данных, создаваемая на этом уровне, имеет средний уровень аб-

стракции и характеризуется аппаратной независимостью и программной зависимостью, то есть она зависит от программного обеспечения базы данных. А потому любые изменения в программном обеспечении СУБД потребуют изменений во внутренней модели, для того чтобы она соответ-ствовала требованиям СУБД.

В действительности ниже внутреннего уровня находится еще уро-вень физического представления данных, то есть физический уровень, на котором описываются способы хранения информации на носителях, например, на винчестерах. Другими словами, физический уровень – это собственно данные, хранящиеся на внешних носителях информации и рас-положенные в файлах или страничных структурах. Этот уровень контро-лируется операционной системой, но под управлением СУБД. Здесь тре-буется определить, как устройства физического хранения, так и методы доступа, необходимые для извлечения данных с физического носителя. Ба-за данных, создаваемая на этом уровне, имеет самый низкий уровень аб-стракции и характеризуется аппаратной и программной зависимостью.

Page 189: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

189

Предложенная архитектура позволяет обеспечить логическую и фи-зическую независимость при работе с данными. Логическая независимость предполагает возможность изменения одного приложения без корректи-ровки других, работающих с этой же базой данных. А физическая незави-симость предполагает возможность переноса хранимой информации с од-них носителей на другие при сохранении работоспособности всех прило-жений, работающих с конкретной базой. Логическая независимость уста-навливается между 1 и 2 уровнями, а физическая между 2 и 3. Именно этого не хватало при использовании файловых систем.

В соответствии с трехуровневой архитектурой существует три раз-личных типа схем базы данных. На самом высоком уровне имеется не-сколько внешних схем данных, которые соответствуют разным представ-лениям пользователей. На концептуальном уровне описываются все эле-менты и связи между ними. Для каждой базы данных имеется только одна концептуальная схема. Внутренняя схема является полным описанием данных внутреннего уровня и содержит определение хранимых записей: методы представления, описание полей данных, сведения об индексах и схемах хеширования данных. СУБД отвечает за установление соответствия между этими тремя типами схем, а также за проверку их непротиворечиво-сти.

4.3 М одели данны х

Процесс проектирования баз данных включает два этапа: разработку логической организации базы данных и создание базы данных на носителе.

Логическая организация БД – это представление пользователя (проек-тировщика) о той предметной области, информация о которой должна хра-ниться в БД. Результатом логического проектирования является концепту-альная (внешняя, информационно-логическая) схема базы данных – логи-ческая модель предметной области. Такая модель отражает три вида ин-формации:

• сведения об объектах предметной области, • свойства объектов предметной области, • отношения между объектами.

Объекты на схеме представляются типами записей; свойства объектов – элементарными или групповыми данными в виде полей записей; отно-шения – связями между типами записей и полями. Такая модель не зависит от физической среды – типа ЭВМ, операционной системы и СУБД, т.е. аб-

Page 190: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

190

страгируется от смыслового содержания данных, отражая формы пред-ставления информации и связи между данными.

Логическую модель можно представить несколькими способами. Для информационных систем характерны два способа схемного представления данных – графический и табличный.

Графический способ основан на изображении модели данных в виде ориентированного графа, вершины которого служат для отображения ти-пов записей, а дуги – связей между записями.

Табличный способ структурирования данных состоит в представле-нии информации о предметной области в виде одной или нескольких таб-лиц, заголовок («шапка») каждой из которых аналогичен типу записи гра-фической модели данных.

В настоящее время разработано много моделей данных, которые раз-личаются по способу связи между данными. Однако наибольшее практиче-ское применение нашли три логические модели: иерархическая, сетевая и реляционная. Их иногда называют традиционными моделями данных. В последние годы ведутся работы по созданию баз данных, построенных на постреляционной, многомерной, объектно-ориентированной и других мо-делях, которые называют нетрадиционными моделями.

Реляционные базы данных Реляционная модель представляет собой совокупность данных, со-

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

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

Любая таблица в реляционной базе состоит из строк, которые назы-вают записями, и столбцов, которые называют полями. На пересечении строк и столбцов находятся конкретные значения данных. Для каждого по-ля определяется множество его значений, например, поле «Месяц» может иметь двенадцать значений.

Структура таблицы в реляционной базе характеризуется следующим: • она состоит из совокупности столбцов; • каждый столбец имеет уникальное, то есть не повторяющееся в

Page 191: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

191

других столбцах, имя; • последовательность столбцов в таблице не существенна; • все строки таблицы организованы по одинаковой структуре, то

есть имеют одно и то же количество реквизитов и имеют одинаковую дли-ну;

• в таблице нет одинаковых строк; • количество строк в таблице практически не ограничено; • последовательность строк в таблице не существенна; • при выполнении манипуляций с таблицей все строки и столбцы

могут просматриваться в произвольном порядке безотносительно к их со-держанию и смыслу.

Для этого типа модели имеется развитый математический аппарат – реляционная алгебра.

Типы полей: символьный, числовой, денежный, графический, дата, время, счетчик, логический и др. Пример: поля «Фамилия» и «Пол» имеют символьный тип, поле «Дата рождения» имеет тип дата, поле «Стипендия» – денежного типа.

Возможные операции в реляционной базе данных: создание таблиц и связей, изменение структуры таблиц, добавление, удаление и изменение записей, поиск данных, отбор данных одной или нескольких таблиц и т.д.

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

Ключевые поля используются для создания межтабличных связей (отношений).

Различают первичный и вторичный ключи. Первичный ключ – это поле или группа полей, которые единствен-

ным образом идентифицируют каждую строку в таблице. Таблица может иметь только один первичный ключ. Пример: первичным ключом может служить личный номер гражданина.

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

Пример: вторичным ключом могут служить серия и номер паспорта гражданина.

Page 192: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

192

Установление связи между данными разных таблиц производится в соответствии с типами отношений между таблицами.

Типы отношений между таблицами: • «один к одному»; • «один ко многим»; • «многие к одному»; • «многие ко многим». Отношение «один к одному»: каждая запись (строка) одной таблицы

соответствует одной записи (строке) другой таблицы Связь таблиц осу-ществляется по совпадающему полю. Это отношение обычно устанавлива-ется в тех случаях, когда часть полей данных используется редко. Его ис-пользование позволяет увеличить скорость обработки данных.

Отношение «один ко многим»: каждой записи (строке) одной табли-цы соответствует несколько записей (строк) другой таблицы. Это отноше-ние поддерживается всеми системами управления базами данных (СУБД) и используется очень часто.

Отношение «многие к одному»: нескольким записям (строкам) одной таблицы соответствует только одна запись (строка) другой таблицы. Это отношение также поддерживается всеми СУБД и часто используется.

Отношение «многие ко многим»: нескольким записям (строкам) од-ной таблицы ставится в соответствие несколько записей (строк) другой таблицы. Это отношение пользуется сравнительно редко и поддерживается не всеми СУБД.

Отношения между таблицами устанавливаются по совпадающему полю; присутствующему в обеих таблицах. Выбор типа отношения зави-сит, от характера поставленной перед СУБД задачи.

Основные достоинства реляционных баз данных. • Упрощенная схема представления данных – в виде таблицы. • Простота инструментальных средств поддержки реляционной

модели. • Оптимизация доступа к базе данных, поскольку системы сами

выбирают наиболее эффективную последовательность действий. • Улучшение целостности и защиты, поскольку реляционная мо-

дель позволяет улучшить выражение требований целостности путем ис-пользования языка высокого уровня.

• Возможности различных применений, в том числе и рассчитан-ных на не специалистов в области программирования.

• Обеспечение пользователя языками высокого уровня при работе

Page 193: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

193

с базой данных. • Обеспечение методологического подхода, поскольку главной це-

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

Недостаток реляционной модели – в жесткости структуры данных, например, невозможно задать строку таблицы произвольной длины, а так-же сложность описания иерархических и сетевых связей.

В настоящее время многие известные системы управления базами данных используют именно реляционную модель представления данных –dBase, FoxBase, FoxPro, Paradox, Oracle, Microsoft Access, Clarion, Clipper, Ingres; ПАЛЬМА, HyTech и др.

Иерархическая модель данных (ИМД) В иерархических моделях основная структура представления дан-

ных имеет форму дерева и реализуется связь один – ко многим. Схемати-чески иерархическая модель представления данных изображается в виде ориентированных деревьев – рисунок 4.2 (или древовидных графов).

Иерархическая модель БД Сетевая модель БД

Рисунок 4.2 – Модели баз данных

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

Page 194: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

194

Примером иерархической структуры может служить книга, как иерархическая последовательность букв, которые объединяются в слова, слова – в предложения, предложения – в параграфы, затем в главы и т.д.

Над иерархически организованными данными определенны следую-щие операции:

• Добавить в базу данных новую запись. • Изменить значение данных предварительно извлеченной записи. • Удалить некоторую запись и все подчиненные ей записи. • Извлечь запись; в этой операции допускается задание условий

выборки, например, извлечь сотрудников с окладом более 200 тысяч руб. Иерархическая модель является наиболее простой, поэтому истори-

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

Поиск данных в такой структуре выполняется всегда по одной из ветвей, начиная с корневого элемента, т. е. должен быть указан полный путь движения по ветви. Например, Шкаф/ящик/папка; Автомобиль / агре-гат / деталь; Продавец/заказчики/заказы/изделия.

База данных может содержать несколько деревьев одинаковой или различной структуры.

Первые системы управления базами данных, появившиеся в сере-дине 60-х годов, позволяли работать с иерархической базой данных. Наиболее известной была иерархическая система IMS фирмы IBM. Из-вестны также другие системы: PC/Focus, Team-Up, Data Edge, Ока, ИНЭС, МИРИС.

Работа с иерархическими базами данных основана на математиче-ской теории графов.

Сетевая модель данных (СМД) Сетевая база данных состоит из наборов записей, которые связаны

между собой так, что записи могут содержать явные ссылки на другие наборы записей. Тем самым наборы записей образуют сеть (рисунок 4.2). Связи между записями могут быть произвольными, и эти связи явно при-сутствуют и хранятся в базе данных.

Page 195: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

195

Над данными в сетевой базе могут выполняться следующие опера-ции:

• Добавить – внести запись в базу данных. • Извлечь – извлечь запись из базы данных. • Обновить – изменить значение элементов предварительно извле-

ченной записи. • Удалить – убрать запись из базы данных. • Включить в групповое отношение – связать существующую под-

чиненную запись с записью-владельцем. • Исключить из группового отношения – разорвать связь между

записью-владельцем и записью-членом. • Переключить – связать существующую подчиненную запись с

другой записью-владельцем в том же групповом отношении. Первоначально сетевая модель замышлялась как инструмент для

программистов. В качестве базового языка программирования был выбран Cobol. Одна из первых сетевых моделей данных, разработанная группой CODASYL, была предложена в 1969 г. и развивалась до 80-х годов. К из-вестным сетевым системам управления базами данных относятся: DBMS, IDMS, TOTAL, VISTA, СЕТЬ, СЕТОР, КОМПАС и др.

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

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

Однако следует отметить жесткость организации данных в иерархи-ческих и сетевых моделях. Доступ к информации осуществляется только в соответствии со связями, определенными при проектировании структуры конкретной базы данных. Базы данных с такими моделями сложно реорга-низовывать. Недостатком этих моделей является и сложность механизма доступа к данным, а также необходимость на физическом уровне четко определять связи данных. А поскольку каждый элемент данных должен

Page 196: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

196

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

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

Объектно-ориентированная модель данных Объектно-ориентированная модель представляет структуру, ко-

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

Базовыми понятиями этой модели являются следующие: объекты, классы, методы, инкапсуляция, наследование, полиморфизм.

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

Класс объекта состоит из его интерфейса и закрытой области. Ин-терфейс класса – это то, что видно другим объектам. Он, в свою очередь, состоит из двух частей: свойства класса и методов класса. Аналогом свойств являются атрибуты отношений. Например, клиент может иметь следующие свойства: номер, ФИО, адрес, телефон. К свойствам относятся также связи с другими объектами. Свойства сами могут быть объектами,

Page 197: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

197

что позволяет создавать составные объекты, например, свойство ФИО мо-жет состоять из свойств: фамилия, имя, отчество.

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

Закрытая область – это та часть определения класса, которая не видна другим объектам. Пользователю объекта предоставляется информа-ция только о том, как работать с объектом при помощи его методов. Сама же работа объекта скрыта от пользователя. Например, могут существовать дополнительные свойства с закрытыми значениями, а также скрытые связи и сообщения другим объектам.

Свойства объектов описываются либо одним из стандартных типов, заложенных в системе, например, строковым типом String, либо типом, ко-торый конструирует сам пользователь. Этот тип определяется словом Class. Значением свойства типа Class является объект, являющийся экзем-пляром соответствующего класса. Каждый объект – экземпляр класса счи-тается потомком объекта, в котором он определен как свойство. Объект – экземпляр класса принадлежит своему классу и имеет одного родителя. Родовые отношения в базе образуют связанную иерархию объектов.

Важным достоинством объектно-ориентированной базы является то, что пользователю не нужно знать о взаимодействии объектов: он просто обращается к конкретному объекту и использует конкретный метод. А то, что при этом осуществляется воздействие на другие объекты базы, скрыто от пользователя. Различные правила, руководящие использованием объек-тов, также могут быть скрыты от пользователя. Например, выбранный ме-тод может, в свою очередь, обращаться к другим методам, например, ме-тоду проверки кредитоспособности выбранного клиента.

Чтобы определить класс объектов, нужно задать его свойства и ме-тоды, а также определить его взаимодействие с другими объектами. Поня-тие класс объекта во многом аналогично понятию тип. Поэтому при проек-тировании объектно-ориентированной базы данных нужно, прежде всего,

Page 198: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

198

осуществить процесс классификации, то есть выявить объекты с аналогич-ными свойствами и поведением и объединить их в классы.

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

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

Наследование распространяет множество свойств и методов на всех потомков объекта. Аналогом наследования можно считать разбиение на подтипы. Например, можно определить классы Мужчина и Женщина как наследующие класс Человек. Все эти классы будут иметь общие свойства и методы. Однако в определении новых классов можно добавить дополни-тельные свойства и методы.

Полиморфизм допускает в объектах разных типов иметь методы (процедуры и функции) с одинаковыми именами, что означает способ-ность одного и того же программного кода работать с разнотипными дан-ными.

Создание объектной модели начинается с классификации – выявле-нии объектов с аналогичными свойствами и поведением и объединении их в классы. Например, в базе данных, содержащей диаграммы, можно клас-сификацию начать с выделения объектов диаграмм, имеющих дату их со-здания. Процесс классификации позволяет выделить объекты с общими свойствами и методами. Однако, некоторые их свойства и методы различ-ны. В этом случае производят генерализацию и специализацию.

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

Page 199: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

199

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

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

Таким образом, создание объектно-ориентированной базы данных основано на процессах: классификации, генерализации, специализации и агрегации, – которые проводятся параллельно.

Резюмируя все вышеизложенное, можно сказать следующее: • объектно-ориентированная база данных – это попытка приме-

нить идеологию объектно-ориентированного программирования к техно-логии баз данных;

• объектно-ориентированная база данных состоит из объектов, причем каждый объект принадлежит к определенному классу;

• поведение объекта полностью определяется его принадлежно-стью к определенному классу;

• процесс проектирования объектно-ориентированной базы ос-нован на выявлении классов объектов.

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

Основной недостаток объектно-ориентированной модели состоит в сложности понимания ее сути и низкой скорости выполнения запросов. В настоящее время объектно-ориентированные базы данных достаточно сложны, и потому их коммерческое использование идет медленно. Но у этих моделей есть потенциал, а, стало быть, и будущее. А потому исследо-вания в области объектной ориентации становятся главным направлением в теории СУБД.

Page 200: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

200

Сегодня уже разработаны и успешно функционируют такие системы управления базами данных как: Iris, Orion и др., – обслуживающие эти мо-дели.

4.4 Общая характеристика некоторы х баз данны х и систем управления

В настоящее время для построения информационных систем приме-няются различные системы управления базами данных (СУБД), различа-ющиеся как своими возможностями, так и требованиями к вычислитель-ным ресурсам. Все многообразие применяемых СУБД, однако, можно све-сти к двум основным их классам: персональные (настольные) и много-пользовательские (сетевые).

К первому классу относятся СУБД, ориентированные для работы на персональном компьютере (dBASE, FoxPro, MS Access и т.п.).

Изначально они поддерживали работу с данными только одного пользователя. Вся СУБД такого класса выполняется как единая программа, таблицы базы данных представляются отдельными файлами на диске того же персонального компьютера. С развитием локальных сетей разработчики СУБД этого класса стали приспосабливать их к работе в сетевой среде, в которой потенциально стало возможным организовать доступ к данным с нескольких персональных компьютеров, включенных в локальную сеть. Файлы базы данных при этом размещаются на файловом сервере. На каж-дом же рабочем месте работает собственная копия программы-СУБД и прикладная программа, и на их выполнение могут оказывать существенное влияние характеристики компьютера этого рабочего места. Таким образом, при наличии в сети N рабочих мест с одними и теми же данными работают N копий программы-СУБД, одними и теми же данными управляют сразу N копий СУБД. Ошибка в выполнении одной из копий не будет замечена другими копиями. При выполнении запросов к базе данных копия СУБД может либо производить поиск данных в удаленных файлах на файловом сервере, либо копировать все файлы, в которых ведется поиск в свою ло-кальную файловую систему. В первом случае возникают проблемы одно-временного доступа к данным при их изменении. Данные, над которыми производится изменения, должны быть заблокированы. Средства файлово-го сервера позволяют выполнять блокировку на уровне файлов, но не на уровне записей, что существенно снижает эффективность параллельной работы с базой данных многих пользователей. Во втором же случае, во-

Page 201: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

201

первых, требуется передача по сети больших объемов информации, а во-вторых, получается, что разные рабочие места работают с разными копия-ми данных и эти копии могут стать неидентичными.

СУБД второго класса изначально создавались для выполнения на больших компьютерах и обеспечения параллельной работы многих поль-зователей. Такие СУБД, как правило, состоят из ядра, постоянно присут-ствующего в памяти, (сервера) и большого количества программ-агентов, обслуживающих запросы конечных пользователей и прикладных программ (клиентов). В этом случае и ядро СУБД, и данные находятся на одном и том же компьютере. Одна копия СУБД управляет одной копией данных. Единая управляющая система позволяет эффективно организовать одно-временный доступ к данным многих агентов, предотвращая конфликты между ними. Ошибка в работе СУБД локализована и может быть эффек-тивно исправлена самой же СУБД. При работе в условиях сети ядро СУБД выполняет запросы агентов на выборку данных и передает по сети только результаты выборки. Поскольку быстродействие современных дисковых систем обычно выше, чем скорость передачи данных по сети, уменьшение объема передаваемых данных существенно увеличивает общую эффектив-ность работы системы. При этом не накладывается никаких ограничений на масштаб сети, агенты могут быть связаны с ядром СУБД через любую сеть и любые протоколы передачи данных. Многопользовательские СУБД обладают также неоспоримыми преимуществами в таких аспектах, как надежность, безопасность, доступность. Многопользовательские СУБД с самого начала своей истории использовали в качестве интерфейса запро-сов язык SQL, отсюда произошло одно из их альтернативных названий – SQL-серверы. Хотя в последнее время подмножества SQL становятся до-ступными и в персональных СУБД, но в эти подмножества не включаются средства обеспечения безопасности и параллельного доступа к данным – те средства, которые персональные СУБД обеспечить просто не могут.

На сегодня известно большое число различных серверов баз данных SQL. Наиболее известными и распространенными серверными СУБД яв-ляются: Oracle, IBM DB2, Microsoft SQL Server и Informix.

Одним из основных недостатков настольных СУБД является отсут-ствие специальных приложений и сервисов, управляющих данными – для этих целей используются файловые сервисы операционной системы, вся реальная обработка данных в таких СУБД осуществляется в клиентском приложении, и любые библиотеки доступа к данным в этом случае также находятся в адресном пространстве клиентского приложения. Поэтому при

Page 202: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

202

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

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

СУБД Access Первая версия СУБД Access появилась в начале 90-х годов. Это была

первая настольная реляционная СУБД для 16-разрядной версии Windows. Популярность Access значительно возросла после включения этой СУБД в состав Microsoft Office.

Access ориентирован в первую очередь на пользователей Microsoft Office, в том числе, и не знакомых с программированием. Это, в частности, проявилось в том, что вся информация, относящаяся к конкретной базе данных, а именно таблицы, индексы (естественно, поддерживаемые), пра-вила ссылочной целостности, бизнес-правила, список пользователей, а также формы и отчеты хранятся в одном файле, что в целом удобно для начинающих пользователей.

Microsoft Access может быть использован, с одной стороны, в каче-стве настольной СУБД и составной части офисного пакета, а с другой сто-роны, в качестве клиента Microsoft SQL Server, позволяющего осуществ-лять его администрирование, манипуляцию его данными и создание при-ложений для этого сервера.

Информация базы данных хранится в таблицах. Любая таблица с данными состоит из набора однотипных записей, расположенных друг за другом. Они представляют собой строки таблицы, которые можно добав-

Page 203: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

203

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

Тип данных определяется значениями, которые предполагается вво-дить в поле, и операциями, которые будут выполняться с этими значения-ми. В Access допускается использование следующих типов данных: тек-стовый, МЕМО, числовой (конкретные варианты числового типа и их дли-на задаются в свойстве «Размер поля»), дата/время, денежный, счетчик (используется для определения уникального системного ключа таблицы), логический, поле объекта OLE, гиперссылка, мастер подстановок.

Для хранения данных создаются по одной таблице на каждый тип отслеживаемых сведений. Для объединения данных из нескольких таблиц в запросе, форме, отчете или на странице доступа к данным определяются связи между таблицами.

Для поиска и вывода данных, удовлетворяющих заданным условиям, включая данные из нескольких таблиц, создаются запрос. Запрос также может обновлять или удалять несколько записей одновременно и выпол-нять стандартные или пользовательские вычисления с данными.

Для простоты просмотра, ввода и изменения данных непосредствен-но в таблице создаются формы. При открытии формы Microsoft Access от-бирает данные из одной или более таблиц и выводит их на экран с исполь-зованием макета, выбранного в мастере форм или созданного пользовате-лем самостоятельно.

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

Чтобы сделать данные доступными через Интернет или интрасеть для создания отчетов в интерактивном режиме, используется страница до-ступа к данным. Microsoft Access отбирает данные из одной или более таблиц и выводит их на экран с использованием созданного макета.

СУБД dBase – относится к настольным реляционным СУБД. Первая промышленная версия СУБД dBase – dBase II появилась в

начале 80-х годов. Благодаря простоте в использовании, нетребовательно-

Page 204: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

204

сти к ресурсам компьютера, этот продукт приобрел немалую популяр-ность.

Хранение данных в dBase основано на принципе одна таблица – один файл (эти файлы обычно имеют расширение *.dbf). MEMO-поля и BLOB-поля (доступные в поздних версиях dBase) хранятся в отдельных файлах (обычно с расширением *.dbt). Индексы для таблиц также хранятся в от-дельных файлах. При этом в ранних версиях этой СУБД требовалась спе-циальная операция реиндексирования для приведения индексов в соответ-ствие с текущим состоянием таблицы.

Формат данных dBase является открытым, что позволило ряду дру-гих производителей заимствовать его для создания dBase-подобных СУБД, частично совместимых с dBase по форматам данных.

Помимо популярного формата данных dBase является родоначаль-ником и некогда популярного семейства языков программирования, полу-чившего называние xBase. Все языки этого семейства, использующиеся и в FoxBase, и в Clipper, и в некоторых более поздних средствах разработки, содержат сходный набор команд для манипуляции данными и являются по существу интерпретируемыми языками. В роли интерпретатора команд xBase выступает обычно либо среда разработки приложения на этом языке, либо среда времени выполнения, которую можно поставлять вместе с при-ложением.

Последние версии этого продукта имеют следующие возможности: • средства манипуляции данными dBase и FoxPro всех версий; • средства создания форм, отчетов и приложений; • средства публикации данных в Internet и создания Web-

клиентов; • ядро доступа к данным Advantage Database Server фирмы

Extended Systems и ODBC-драйвер для доступа к данным этой СУБД; • средства публикации отчетов в Web; • средства визуального построения запросов; • средства генерации исполняемых файлов и дистрибутивов. СУБД FoxPro FoxPro (реляционная модель представления данных) ведет свое про-

исхождение от настольной СУБД dBase. Разрабатывая FoxBase в конце 80-х годов, эта компания преследовала цель создать СУБД, функционально совместимую с dBase с точки зрения организации файлов и языка про-граммирования, но существенно превышающую ее по производительно-

Page 205: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

205

сти. Одним из способов повышения производительности являлась более эффективная организация индексных файлов, нежели в dBase, – по форма-ту индексных файлов эти две СУБД несовместимы между собой.

По сравнению с аналогичными версиями dBase, FoxPro предоставля-ли своим пользователям несколько более широкие возможности, такие как использование деловой графики, генерация кода приложений, автоматиче-ская генерация документации к приложениям и т.д.

Впоследствии этот продукт был приобретен компанией Microsoft. Его последние версии (начиная с версии 3.0, выпущенной в 1995 году) по-лучили название Visual FoxPro. С каждой новой версией этот продукт ока-зывался все более и более интегрирован с другими продуктами Microsoft, в частности с Microsoft SQL Server, – в состав Visual FoxPro в течение не-скольких последних лет вошли средства переноса данных FoxPro в SQL Server и средства доступа к данным этого сервера из Visual FoxPro и со-зданных с его помощью приложений. Хотя формат данных FoxPro также модифицировался с каждой новой версией, приобретая такие возможности, как хранение правил ссылочной целостности и некоторых бизнес-правил в самой базе данных, миграции приложений Visual FoxPro на серверные платформы уделялось значительно большее внимание.

Последние версии этого продукта имеют следующие возможности: • средства публикации данных в Internet и создания Web-

клиентов; • средства создания ASP-компонентов и Web-приложений. • средства создания COM-объектов, позволяющих создавать

масштабируемые многозвенные приложения для обработки данных; • средства доступа к данным серверных СУБД, в том числе из

нереляционных баз данных; • средства доступа к данным Microsoft SQL Server и Oracle,

включая возможность создания и редактирования таблиц, хранимых про-цедур;

• средства отладки хранимых процедур Microsoft SQL Server; • средство визуального моделирования компонентов и объектов,

являющиеся составными частями приложения Visual Modeller; • средство для управления компонентами приложений, позволя-

ющее осуществлять их повторное использование. Таким образом, основными тенденциями развития этого продукта,

также как и других настольных СУБД является:

Page 206: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

206

• разработка визуальных средств проектирования форм, отчетов и приложений;

• осуществление доступа к данным серверных СУБД; • создание средств публикации данных в Internet и в той или

иной степени поддержка создание приложений для редактирования дан-ных с помощью Web-браузеров;

• предоставление возможность хранить описания правил ссы-лочной целостности внутри базы данных.

СУБД Oracle Oracle занимает лидирующие позиции на рынке СУБД и, что осо-

бенно важно, лидирует на платформах Unix и Windows. Oracle – это объ-ектно-реляционная система, поддерживающая некоторые технологии, реа-лизующие объектно-ориентированный подход и является серверной СУБД. Oracle имеет большое количество различных версии и типов. На се-годняшний день СУБД Oracle поддерживают свыше 80 вариантов опера-ционной среды в широком диапазоне, включая мэйнфреймы IBM, мини-компьютеры DEC VAX, UNIX, Windows и множество других платформ.

Ядром СУБД является сервер базы данных, который поставляется в одной из четырех редакций в зависимости от масштаба ИС, в рамках кото-рой предполагается его применение: корпоративная редакция; стандартная редакция ориентированная на организации среднего масштаба или подраз-деления в составе крупной организации; редакция для персонального ис-пользования и для систем мобильной связи и небольших офисов. При этом все варианты сервера Oracle имеют в своей основе один и тот же исходный код и функционально идентичны, за исключением некоторых дополни-тельных опций, которые необходимы для специфических конфигураций.

Основное преимущество такого подхода к построению СУБД – это идентичность кода для всех вариантов сервера баз данных. Для всех ком-пьютерных платформ и архитектур существует единая СУБД Oracle, по-ставляемая в различных версиях, которая ведет себя одинаково и предо-ставляет одинаковую функциональность вне зависимости от платформы, на которой она установлена.

Одной из основных характеристик СУБД Oracle является функцио-нирование системы на большинстве платформ. В том числе на больших ЭВМ, UNIX-серверах, персональных компьютерах и т. д.

Page 207: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

207

Другой важной характеристикой является поддержка Oracle всех возможных вариантов архитектур, в том числе симметричных многопро-цессорных систем, кластеров, систем с массовым параллелизмом и т. д.

Разработку серверных продуктов выполняет единое подразделение корпорации Oracle, изменения вносятся централизованно. После этого все версии подвергаются тщательному тестированию в базовом варианте, а за-тем переносятся на все платформы, где также детально проверяются. Воз-можность переноса Oracle обеспечивается специфической структурой ис-ходного программного кода сервера баз данных. Приблизительно 80% программного кода Oracle – это программы на языке программирования C, является платформо-независимым. Примерно 20% кода, представляющее собой ядро сервера, реализовано на машинно-зависимых языках; и эта часть кода, разумеется, переписывается для различных платформ.

Однa из отличительных особенностей сервера Oracle – возможность хранения и обработки различных типов данных. Данная функциональ-ность интегрирована в ядро СУБД и поддерживается модулем interMedia в составе Oracle Database. Он обеспечивает работу с текстовыми документа-ми, включая различные виды поиска, в том числе контекстного; работу с графическими образами более 20–ти форматов; работу с аудио и видеоин-формацией.

СУБД Oracle не только предоставляет расширенный набор встроен-ных типов данных, но и позволяет за счет использования Object Option конструировать новые типы данных со спецификацией методов доступа к ним. Это означает фактически, что разработчики получают в руки инстру-мент, позволяющий строить структурированные типы данных, непосред-ственно отображающие объекты предметной области.

СУБД SQL Server Первая версия Microsoft SQL Server, совместно разработанная в 1988

году компаниями Microsoft и Sybase, предназначалась для платформы OS/2. Последующие версии этого сервера баз данных предназначались для платформы Windows NT и со временем были тесно интегрированы с этой операционной системой. Для других платформ версии этого сервера не выпускались и не выпускаются.

Удобный пользовательский интерфейс утилит администрирования в сочетании с достаточно высокой производительностью и относительно не-высокой стоимостью эксплуатации сделал эту серверную СУБД второй по популярности – после Oracle. Наибольший рост популярности этой СУБД

Page 208: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

208

пришелся на конец 90-х годов, когда были выпущены Microsoft SQL Server 6.0 (1995 год), обладавший централизованными функциями администри-рования и встроенными возможностями репликации данных, Microsoft SQL Server 6.5 (1996 год) и Microsoft SQL Server 6.5 Enterprise Edition, поддерживающий параллельные вычисления в многопроцессорных систе-мах.

СУБД MySQL MySQL – свободная реляционная система управления базами дан-

ных и является решением для малых и средних приложений и рассчитана на большое количество различных платформ: Linux, Mac OS X, OS/2 Warp, Windows. Она не предназначена для работы с большими объемами инфор-мации, но ее применение идеально для интернет сайтов, как небольших, так и достаточно крупных.

MySQL состоит из двух частей: серверной и клиентской. Сервер MySQL постоянно работает на компьютере. Клиентские программы (например, скрипты PHP) посылают серверу MySQL SQL-запросы через механизм сокетов (то есть при помощи сетевых средств), сервер их обра-батывает и запоминает результат. То есть скрипт (клиент) указывает, ка-кую информацию он хочет получить от сервера баз данных. Затем сервер баз данных посылает ответ (результат) клиенту (скрипту).

Cтруктура MySQL трехуровневая: базы данных – таблицы – записи. Базы данных и таблицы MySQL физически представляются файлами с расширениями frm, MYD, MYI. Логически – таблица представляет собой совокупность записей. А записи – это совокупность полей разного типа. Имя базы данных MySQL уникально в пределах системы, а таблицы – в пределах базы данных, поля – в пределах таблицы. Один сервер MySQL может поддерживать сразу несколько баз данных, доступ к которым может разграничиваться логином и паролем. Зная эти логин и пароль, можно ра-ботать с конкретной базой данных. Например, можно создать или удалить в ней таблицу, добавить записи и т. д. Обычно имя-идентификатор и па-роль назначаются хостинг провайдерами, которые и обеспечивают под-держку MySQL для своих пользователей.

Самой популярной «связкой» для управления сайтами считается MySQL с языком PHP. Многие CMS написаны на PHP в связке с БД MySQL.

К основным плюсам MySQL можно отнести высокую скорость рабо-ты, быстроту обработки данных и достаточную надежность. Немаловажно

Page 209: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

209

и то, что данная СУБД распространяется бесплатно и представляет собой программное обеспечение с открытым кодом. За счет этого можно вносить свои изменения и модифицировать код, что весьма полезно для веб-мастеров.

4.5 Основы язы ка SQL и построение SQL -запросов

Язык SQL (Structured Query Language – структурированный язык за-просов) представляет собой стандартный высокоуровневый язык описания данных и манипулирования ими в системах управления базами данных (СУБД), построенных на основе реляционной модели данных.

SQL работает следующим образом. Предположим, что имеется база данных, управляемая с помощью какой-либо СУБД. Для извлечения из нее данных используется запрос, сформулированный на языке SQL. СУБД об-рабатывает этот запрос, извлекает запрашиваемые данные и возвращает их SQL позволяет не только извлекать данные, но и определять структуру данных, добавлять и удалять данные, ограничивать или предоставлять до-ступ к данным, поддерживать ссылочную целостность.

SQL сам по себе не является ни СУБД, ни отдельным продуктом. Это язык, применяемый для взаимодействия с СУБД и являющийся в опреде-ленном смысле ее неотъемлемой частью.

Единственной структурой представления данных (как прикладных, так и системных) в реляционной базе данных является двумерная таблица. Любая таблица может рассматриваться как одна из форм представления теоретико-множественного понятия отношение (relation), отсюда название модели данных – реляционная.

В реляционной модели данных таблица обладает следующими ос-новными свойствами:

• идентифицируется уникальным именем; • имеет конечное (как правило, постоянное) ненулевое количе-

ство столбцов; • имеет конечное (возможно, нулевое) число строк; • столбцы таблицы идентифицируются своими уникальными

именами и номерами; • содержимое всех ячеек столбца принадлежит одному типу

данных (т.е. столбцы однородны), содержимым ячейки столбца не может быть таблица;

Page 210: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

210

• строки таблицы не имеют какой-либо упорядоченности и иден-тифицируются только своим содержимым;

• в общем случае ячейки таблицы могут оставаться пустыми (т.е. не содержать какого-либо значения), такое их состояние обозначается как NULL.

На содержимое таблиц допустимо накладывать ограничения в виде: • требования уникальности содержимого каждой ячейки какого-

либо столбца и/или совокупности ячеек в строке, относящихся к несколь-ким столбцам;

• запрета для какого-либо столбца (столбцов) иметь пустые (NULL) ячейки.

Ограничение в виде требования уникальности тесно связано с поня-тием ключа таблицы. Ключом таблицы называется столбец или комбина-ция столбцов, содержимое ячеек которого(ых) используется для прямого доступа к строкам таблицы. Различают ключи первичный (он может быть только единственным для каждой таблицы) и вторичные. Первичный ключ уникален и однозначно идентифицирует строку таблицы. Столбец строки, определенный в качестве первичного ключа, не может содержать пустое (NULL) значение в какой-либо своей ячейке. Вторичный ключ определяет местоположение, в общем случае, не одной строки таблицы, а нескольких подобных (в любом случае ускоряя доступ к ним, хотя не в такой степени как ключ первичный).

Ключи используются внутренними механизмами СУБД для оптими-зации затрат на доступ к строкам таблиц (путем, например, их физического упорядочения по значениям ключей или построения двоичного дерева по-иска).

Основными операциями над таблицами являются следующие. Проекция – построение новой таблицы из исходной путем включе-

ния в нее избранных столбцов исходной таблицы. Ограничение – построение новой таблицы из исходной путем вклю-

чения в нее тех строк исходной таблицы, которые отвечают некоторому критерию в виде логического условия (ограничения).

Объединение – построение новой таблицы из 2-ух или более исход-ных путем включения в нее всех строк исходных таблиц (при условии, ко-нечно, что они подобны).

Декартово произведение – построение новой таблицы из 2-ух или более исходных путем включения в нее строк, образованных всеми воз-можными вариантами конкатенации (слияния) строк исходных таблиц.

Page 211: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

211

Количество строк новой таблицы определяется как произведение коли-честв строк всех исходных таблиц.

Перечисленные выше четыре операции создают базис, на основе ко-торого может быть построено большинство (но не все) практически полез-ных запросов на извлечение информации из реляционной БД.

Кроме перечисленных выше в языке SQL реализованы операции мо-дификации содержимого строк таблицы и пополнения таблицы новыми строками (что теоретически может рассматриваться как операция объеди-нения), а также операции управления таблицами.

Рассмотренные выше операции над таблицами реляционной БД об-ладая функциональной полнотой, будучи реализованы на практике в обычном виде, как правило, крайне неэкономичны. Разработчики реальных реляционных СУБД прибегают ко всевозможным приемам для минимиза-ции вычислительных затрат (в первую очередь, машинного времени) при выполнении этих операций. Общим способом, нашедшим отражение в языке SQL, повышения эффективности выполнения запросов в реляцион-ных СУБД являются использование ключей индексов.

Индексом называется скрытая от пользователя вспомогательная управляющая структура, обеспечивающая прямой (или квази прямой) ме-тод доступа к строкам таблицы, позволяющий исключить последователь-ный просмотр всех строк таблицы для обнаружения отвечающих некото-рому критерию поиска. Индексы неявным образом (скрытно от пользова-теля) автоматически создаются для всех ключей таблицы.

Основы синтаксиса языка SQL Программа на языке SQL представляет собой простую линейную по-

следовательность операторов языка SQL. Язык SQL в своем чистом виде операторов управления порядком выполнения запросов к БД (типа циклов, ветвлений, переходов) не имеет.

Операторы языка SQL строятся с применением: • зарезервированных ключевых слов; • идентификаторов (имен) таблиц и столбцов таблиц; • логических, арифметических и строковых выражений, исполь-

зуемых для формирования критериев поиска информации в БД и для вы-числения значений ячеек результирующих таблиц;

• идентификаторов (имен) операций и функций, используемых в выражениях.

Все ключевые слова, имена функций и, как правило, имена таблиц и столбцов представляются латинскими буквами.

Page 212: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

212

В языке SQL не делается различия между прописными (большими) и строчными (маленькими) буквами, т.е., например, строки SELECT, Select, select представляют собой одно и то же ключевое слово. Для конструиро-вания имен таблиц и их столбцов допустимо использовать буквы, цифры и знак «_» (подчеркивание), но первым символом имени обязательно должна быть буква.

Запрещено использование ключевых слов и имен функций в качестве идентификаторов таблиц и имен столбцов. Полный список ключевых слов и имен функций (а он весьма обширен) можно найти в документации на конкретную СУБД. Каждый оператор SQL начинается с ключевого слова-глагола, представляющего собой ключевое слово, определяющее, что именно делает этот оператор (например, CREATE – создать, UPDATE – обновить, SELECT – выбрать и т.п.) и заканчивается знаком «;» (точка с запятой).

В операторе содержатся также предложения, содержащие сведения о том, над какими данными производятся операции. Каждое предложение начинается с ключевого слова, такого как FROM, WHERE и др. Структу-ра предложения зависит от его типа – ряд предложений содержит имена таблиц или полей, некоторые могут содержать дополнительные ключевые слова, константы или выражения. Оператор записывается в свободном формате и может занимать несколько строк. Допустимыми разделителями лексических единиц в операторе являются:

• один или несколько пробелов, • один или несколько символов табуляции, • один или несколько символов «новая строка». Комментарии при использовании в различных СУБД в текстах про-

грамм на языке SQL могут помечаться следующими способами: • от двойного минуса («--») до конца строки; • от символа «#» до конца строки; • между последовательностями «/*» и «*/» (стиль комментариев

языка СИ). SQL содержит примерно 40 операторов для выполнения различных

действий внутри СУБД. Пример запроса для выбора студентов, получающих стипендию,

равную 150 000: SELECT fname FROM STUDENT WHERE STIP=150 000; С помощью данного SQL запроса SELECT выбираются все значения

из таблицы STUDENT, поле STIP которых строго равно 150 000.

Page 213: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

213

Т Е М А 5 ЗА Щ И Т А И Н Ф ОРМ А Ц И И

5.1 М етоды и средства защиты информации

Информационная безопасность – состояние защищенности сбалан-сированных интересов личности, общества и государства от внешних и внутренних угроз в информационной сфере. (Концепция национальной безопасности Республики Беларусь).

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

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

Согласно закону Республики Беларусь от 10.11.2008 N 455-З "Об информации, информатизации и защите информации":

• конфиденциальность – обеспечение доступа к информации толь-ко авторизованным пользователям;

• целостность – обеспечение достоверности и полноты информа-ции и методов ее обработки;

• доступность – обеспечение доступа к информации и связанным с ней активам авторизованных пользователей по мере необходимости.

Развитие новых ИТ и всеобщая компьютеризация привели к тому, что информационная безопасность не только становится обязательной, она еще и одна из характеристик ИС.

Под безопасностью ИС понимается защищенность системы от слу-чайного или преднамеренного вмешательства в нормальный процесс ее функционирования, от попыток хищения (несанкционированного получе-ния) информации, модификации или физического разрушения ее компо-нентов. Иначе говоря, это способность противодействовать различным возмущающим воздействиям на ИС.

Под угрозой безопасности информации понимаются события или действия, которые могут привести к искажению, несанкционированному

Page 214: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

214

использованию или даже к разрушению информационных ресурсов управ-ляемой системы, а также программных и аппаратных средств.

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

Информационная безопасность основывается на следующих прин-ципах.

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

Принцип непрерывного развития систем информационной безопас-ности (СИБ). Это непрерывный процесс, заключающийся в обосновании и реализации наиболее рациональных методов, способов и путей совершен-ствования СИБ, непрерывном контроле, выявлении ее узких и слабых мест, потенциальных каналов утечки информации и новых способов не-санкционированного доступа.

Разделение и минимизация полномочий по доступу к обрабатываемой информации и процедурам обработки, т. е. предоставление как пользова-телям, так и самим работникам ИС, минимума строго определенных пол-номочий, достаточных для выполнения ими своих служебных обязанно-стей.

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

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

Обеспечение контроля за функционированием системы защиты, т.е. создание средств и методов контроля работоспособности механизмов за-щиты.

Обеспечение всевозможных средств борьбы с вредоносными про-

Page 215: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

215

граммами. Обеспечение экономической целесообразности использования си-

стемы защиты, что выражается в превышении возможного ущерба ИС и ИТ от реализации угроз над стоимостью разработки и эксплуатации СИБ.

Основные составляющие информационной безопасности: 1. Правовое обеспечение – совокупность законодательных актов,

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

2. Организационное обеспечение. Имеется в виду, что реализация информационной безопасности осуществляется определенными структур-ными единицами, такими, например, как служба безопасности фирмы и ее составные структуры: режим, охрана и др.

3. Информационное обеспечение, включающее в себя сведения, дан-ные, показатели, параметры, лежащие в основе решения задач, обеспечи-вающих функционирование СИБ.

4. Техническое (аппаратное) обеспечение. Предполагается широкое использование технических средств, как для защиты информации, так и для обеспечения деятельности СИБ. Вся совокупность технических средств подразделяется на аппаратные и физические. Аппаратные сред-ства – устройства, встраиваемые непосредственно в вычислительную тех-нику, или устройства, которые сопрягаются с ней по стандартному интер-фейсу. Физические средства включают различные инженерные устройства и сооружения, препятствующие физическому проникновению злоумыш-ленников на объекты защиты и осуществляющие защиту персонала (лич-ные средства безопасности), материальных средств и финансов, информа-ции от противоправных действий. Примеры физических средств: замки на дверях, решетки на окнах, средства электронной охранной сигнализации и т.п.

5. Программное обеспечение – это специальные программы и про-граммные комплексы, предназначенные для защиты информации в ИС. В настоящее время многие из них слиты с ПО самой ИС. Из средств ПО си-стемы защиты необходимо выделить еще программные средства, реализу-ющие механизмы шифрования (криптографии).

6. Нормативно-методическое обеспечение. Сюда входят нормы и ре-гламенты деятельности органов, служб, средств, реализующих функции защиты информации; различного рода методики, обеспечивающие дея-тельность пользователей при выполнении своей работы в условиях жест-

Page 216: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

216

ких требований соблюдения конфиденциальности. Нормативно-методическое обеспечение может быть слито с правовым.

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

Методы и средства защиты информации и основы информационной безопасности включают в себя:

• ограничении физического доступа к объектам защиты информа-ции с помощью режимных мер и методов информационной безопасности;

• разграничение доступа к объектам защиты информации – это установка правил разграничения доступа органами защиты информации, шифрование информации для ее хранения и передачи (криптографические методы защиты информации, программные средства защиты информации и защита информации в сетях);

• резервное копирование наиболее важных массивов данных и надлежащее их хранение (физическая защита информации);

• профилактика заражение компьютерными вирусами объекта защиты информации.

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

Механизмы обеспечения целостности данных применимы как к от-дельному блоку данных, так и к потоку данных. Целостность блока обес-печивается выполнением взаимосвязанных процедур шифрования и де-шифрования отправителем и получателем. Возможны и более простые ме-тоды контроля целостности, например нумерация блоков, дополнение их меткой имени и т.д.

Для того чтобы информационная безопасность информации обеспе-чивала целостность хранения и передачи данных необходима разработка

Page 217: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

217

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

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

Механизмы подстановки трафика основываются на генерации объ-ектами сети фиктивных блоков, их шифровании и организации их переда-чи по каналам сети.

Механизмы управления маршрутизацией обеспечивают выбор марш-рутов движения информации по сети.

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

5.2 Защита от несанкционированного доступа к данны м

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

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

• хищение носителей информации и производственных отходов; • копирование носителей информации с преодолением мер за-

щиты; • маскировка под зарегистрированного пользователя;

Page 218: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

218

• мистификация (маскировка под запросы системы); • использование недостатков операционных систем и языков

программирования; • использование программных закладок и программных блоков

типа «троянский конь»; • перехват электронных излучений; • перехват акустических излучений; • дистанционное фотографирование; • применение подслушивающих устройств; • злоумышленный вывод из строя механизмов защиты и т.д. Для защиты информации от несанкционированного доступа приме-

няются: организационные мероприятия, технические средства, программ-ные средства, криптография.

Организационные мероприятия включают в себя: • пропускной режим; • хранение носителей и устройств в сейфе (дискеты, монитор,

клавиатура и т.д.); • ограничение доступа лиц в компьютерные помещения и т.д. Технические средства включают в себя различные аппаратные спо-

собы защиты информации: • фильтры, экраны на аппаратуру; • ключ для блокировки клавиатуры; • устройства аутентификации: для чтения отпечатков пальцев,

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

разработки специального программного обеспечения, которое бы не поз-воляло постороннему человеку, не знакомому с этим видом защиты, полу-чать информацию из системы. Программные средства включают в себя:

• парольный доступ-задание полномочий пользователя; • блокировка экрана и клавиатуры, например с помощью комби-

нации клавиш; • использование средств парольной защиты BIOS на сам BIOS и

на ПК в целом и т.д. Под криптографическим способом защиты информации подразуме-

вается ее шифрование при вводе в компьютерную систему. На практике обычно используются комбинированные способы.

Page 219: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

219

Среди механизмов безопасности сетей обычно выделяют следующие основные:

• шифрование; • контроль доступа; • цифровая подпись. Шифрование применяется для реализации служб засекречивания и

используется в ряде других служб. Механизмы контроля доступа обеспечивают реализацию одноимен-

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

Механизмы контроля доступа делятся на две основные группы: • аутентификация объектов, требующих ресурса, с последующей

проверкой допустимости доступа, для которой используется специальная информационная база контроля доступа;

• использование меток безопасности, наличие у объекта соответ-ствующего мандата дает право на доступ к ресурсу.

Самым распространенным и одновременно самым ненадежным ме-тодом аутентификации является парольный доступ. Более совершенными являются пластиковые карточки и электронные жетоны. Наиболее надеж-ными считаются методы аутентификации по особым параметрам личности, так называемые биометрические методы.

Методы и системы защиты информации, опирающиеся на управле-ние доступом, включают в себя следующие функции защиты информации в локальных сетях информационных систем:

• идентификация пользователей, ресурсов и персонала системы информационной безопасности сети;

• опознание и установление подлинности пользователя по вво-димым учетным данным (на данном принципе работает большинство мо-делей информационной безопасности);

• допуск к определенным условиям работы согласно регламенту, предписанному каждому отдельному пользователю, что определяется средствами защиты информации и является основой информационной без-опасности большинства типовых моделей информационных систем;

• протоколирование обращений пользователей к ресурсам, ин-формационная безопасность которых защищает ресурсы от несанкциони-

Page 220: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

220

рованного доступа и отслеживает некорректное поведение пользователей системы.

• информационная безопасность банков и экономическая ин-формационная безопасность и других систем должна обеспечивать свое-временное реагирование на попытки несанкционированного доступа к данным посредством сигнализации, отказов и задержке в работе.

5.3 Основны е понятия криптографии. К одирование и декодирование

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

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

На практике эти три вида преобразования информации обычно ис-пользуются совместно. Так, например, некоторые программные пакеты пе-ред шифрованием архивируют обрабатываемые данные. С другой стороны, реальные системы передачи информации, будь то локальные и глобальные сети передачи данных, или компьютерные носители информации (CD или DVD-диски) всегда имеют в составе системы защиты информации сред-ства контроля и коррекции случайных ошибок.

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

Кодирование – перевод информации, представленной сообщением в первичном алфавите, в последовательность кодов вторичного алфавита.

Декодирование – восстановление информации в первичном алфави-те по полученной последовательности кодов или другими словами дей-

Page 221: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

221

ствия по восстановлению первоначальной формы представления информа-ции. Для декодирования надо знать ключ.

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

В настоящее время считается, что криптография предназначена ре-шать следующие задачи:

• собственно шифрование данных с целью защиты от несанкцио-нированного доступа;

• проверка подлинности сообщений: получатель сообщения может проверить его источник;

• проверка целостности передаваемых данных: получатель может проверить, не было ли сообщение изменено или подменено в процессе пе-ресылки;

• обеспечение невозможности отказа, то есть невозможности как для получателя, так и для отправителя отказаться от факта передачи.

Шифр – совокупность заранее оговоренных способов преобразова-ния исходного секретного сообщения с целью его защиты. Исходные со-общения обычно называют открытыми текстами.

Сообщение, полученное после преобразования с использованием любого шифра, называется шифрованным сообщением (закрытым текстом, криптограммой).

Преобразование открытого текста в криптограмму называется за-шифрованием. Обратное действие называется расшифрованием.

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

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

Page 222: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

222

Криптостойкостью называется характеристика шифра, определяю-щая его стойкость к дешифрованию без знания ключа.

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

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

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

Криптографическая система защиты информации – система защиты информации, в которой используются криптографические методы для шифрования данных.

Для разрабатываемых в настоящее время криптографических систем защиты информации сформулированы следующие общепринятые требова-ния:

• зашифрованное сообщение должно поддаваться чтению только при наличии ключа;

• знание алгоритма шифрования не должно влиять на надежность защиты;

• любой ключ из множества возможных должен обеспечивать надежную защиту информации;

• алгоритм шифрования должен допускать как программную, так и аппаратную реализацию.

В современной криптографии большое внимание уделяется разра-ботке криптографических протоколов, то есть процедур или алгоритмов взаимодействия абонентов с использованием криптографических средств.

Page 223: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

223

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

Наиболее перспективными системами криптографической защиты данных сегодня считаются асимметричные криптосистемы, называемые также системами с открытым ключом. Их суть состоит в том, что ключ, используемый для зашифровывания, отличен от ключа расшифровывания. При этом ключ зашифровывания не секретен и может быть известен всем пользователям системы. Однако расшифровывание с помощью известного ключа зашифровывания невозможно. Для расшифровывания используется специальный, секретный ключ. Знание открытого ключа не позволяет определить ключ секретный. Таким образом, расшифровать сообщение может только его получатель, владеющий этим секретным ключом.

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

Известно несколько криптосистем с открытым ключом. Наиболее разработана на сегодня система RSA. RSA— это система коллективного пользования, в которой каждый из пользователей имеет свои ключи за-шифровывания и расшифровывания данных, причем секретен только ключ расшифровывания.

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

Асимметричные криптосистемы наиболее перспективны, так как в них не используется передача ключей другим пользователям, и они легко реализуются как аппаратным, так и программным способами. Однако си-стемы типа RSA работают приблизительно в тысячу раз медленнее, чем классические, и требуют длины ключа порядка 300— 600 бит. Поэтому все

Page 224: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

224

их достоинства сводятся на нет низкой скоростью работы. Кроме того, для ряда функций найдены алгоритмы инвертирования, т. е. доказано, что они не являются необратимыми. Для функций, используемых в системе RSA, такие алгоритмы не найдены, но нет и строгого доказательства необрати-мости используемых функций.

5.4 Э лектронны й документооборот. Ц ифровая электронная подпись

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

Саму информацию, содержащуюся в документе, тоже можно разде-лить на две части. Первая часть – непосредственно содержание, вторая – вспомогательная информация, которая дает возможность установить его аутентичность (подлинность). К ней относятся реквизиты типа исходящего номера, подписей и печатей. В состав информации, как содержательной, так и вспомогательной, могут входить и данные о времени, условиях и ме-сте составления документа.

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

Таким образом, документ выполняет следующие функции: • фиксация некоторой (содержательной) информации; • фиксация лица, подписавшего документ; • фиксация условий составления документа; • доказательство в судебном разбирательстве;

Page 225: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

225

• функция оригинала, обеспечиваемая его уникальностью. В настоящее время правовые основы применения электронных до-

кументов в Республике Беларусь регламентированы законом «Об элек-тронном документе» от 10.01.2000 г. № 357-З, где определены основные требования, предъявляемые к электронным документам, а также права, обязанности и ответственность участников правоотношений, возникающих в сфере обращения электронных документов.

Основные понятия: • электронный документ – информация, зафиксированная на ма-

шинном носителе и соответствующая требованиям, установленным насто-ящим Законом;

• электронная цифровая подпись – набор символов, вырабатыва-емый средствами электронной цифровой подписи и являющийся неотъем-лемой частью электронного документа;

• средства электронной цифровой подписи – программные и тех-нические средства, обеспечивающие выработку и проверку электронной цифровой подписи и имеющие сертификат соответствия требованиям тех-нических нормативных правовых актов в области технического нормиро-вания и стандартизации;

• личный ключ подписи – набор символов, принадлежащий кон-кретному лицу и используемый при выработке электронной цифровой подписи;

• открытый ключ проверки подписи – набор символов, доступ-ный для всех заинтересованных лиц и используемый при проверке элек-тронной цифровой подписи;

• карточка открытого ключа проверки подписи – документ на бумажном носителе, содержащий значение открытого ключа проверки подписи и подтверждающий его принадлежность какому-либо физическо-му или юридическому лицу.

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

Электронный документ должен соответствовать следующим требо-ваниям:

Page 226: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

226

• создаваться, обрабатываться, передаваться и храниться с помо-щью программных и технических средств;

• иметь структуру, установленную настоящим Законом, и содер-жать реквизиты, позволяющие ее идентифицировать;

• быть представленным в форме, понятной для восприятия челове-ком.

Электронный документ состоит из двух неотъемлемых частей – об-щей и особенной.

Общая часть электронного документа состоит из информации, со-ставляющей содержание документа. Информация об адресате относится к общей части.

Особенная часть электронного документа состоит из одной или не-скольких электронных цифровых подписей.

Электронный документ имеет формы внутреннего и внешнего представления.

Формой внутреннего представления электронного документа явля-ется запись информации, составляющей электронный документ, на ма-шинном носителе.

Формой внешнего представления электронного документа является воспроизведение электронного документа на экране дисплея, на бумажном либо ином отделимом от машинного носителя материальном объекте в до-ступном для визуального обозрения виде (без дополнительных техниче-ских приспособлений) и форме, понятной для восприятия человеком.

Оригинал электронного документа существует только на машинном носителе. Все экземпляры электронного документа, зафиксированные на машинном носителе и идентичные один другому, являются оригиналами и имеют одинаковую юридическую силу.

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

Электронный документ на машинном носителе приравнивается к до-кументу на бумажном носителе и имеет одинаковую с ним юридическую силу.

Электронная цифровая подпись предназначена для: • удостоверения информации, составляющей общую часть элек-

тронного документа;

Page 227: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

227

• подтверждения подлинности и целостности электронного доку-мента.

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

Подлинность и целостность электронного документа означает, что документ в действительности создан владельцем личного ключа подписи и в данный документ не внесены изменения.

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

Электронная цифровая подпись Как правило, информация, систематизированная и хранящаяся в ин-

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

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

Электронная цифровая подпись (ЭЦП) – набор символов, выраба-тываемый средствами электронной цифровой подписи и являющийся неотъемлемой частью электронного документа. То есть это реквизит элек-тронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием открытого ключа элек-тронной цифровой подписи, что позволяет идентифицировать владельца

Page 228: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

228

ключа подписи, а также установить отсутствие искажения информации в электронном документе

С юридической точки зрения электронная цифровая подпись в элек-тронном документе равнозначна собственноручной подписи в документе на бумажном носителе при соблюдении определенных условий и элек-тронный документ приравнивается к документу на бумажном носителе.

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

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

Закрытый ключ электронной цифровой подписи – уникальная после-довательность символов, известная владельцу сертификата ключа подписи и предназначенная для создания в электронных документах электронной цифровой подписи с использованием средств электронной цифровой под-писи.

Открытый ключ электронной цифровой подписи – уникальная по-следовательность символов, соответствующая закрытому ключу электрон-ной цифровой подписи, доступная любому пользователю информацион-ной системы и предназначенная для подтверждения с использованием средств электронной цифровой подписи подлинности электронной цифро-вой подписи в электронном документе. В связи с этим, одним из основопо-лагающих моментов использования ЭЦП является подтверждение принад-лежности открытого ключа ЭЦП конкретному лицу посредством выдачи сертификата ключа подписи. Поэтому значительная часть Закона об ЭЦП посвящена механизму удостоверения личности владельца открытого клю-ча.

При создании ключей ЭЦП для использования в информационной системе общего пользования должны применяться только сертифициро-ванные средства электронной цифровой подписи.

Page 229: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

229

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

На практике сертификация открытых ключей выполняется следую-щим образом.

1. Лицо (юридическое или физическое), создавшее себе пару ключей (открытый и закрытый) с помощью средства ЭЦП, должно обратиться в орган, уполномоченный выполнить сертификацию. Этот орган называется удостоверяющим центром.

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

3. Любой партнер, желающий вступить в контакт с владельцем от-крытого ключа, может прочитать удостоверяющую запись с помощью от-крытого ключа удостоверяющего центра. Если целостность этой записи не нарушена, то он может использовать открытый ключ партнера для связи с ним.

В настоящее время распространение получили две структурные мо-дели системы сертификации – централизованная и децентрализованная.

Централизованная модель имеет иерархический характер и наиболее соответствует потребностям служебного документооборота. Децентрали-зованная модель имеет сетевой характер и может использоваться, напри-мер, в гражданском электронном документообороте.

В основе централизованной модели сертификации находится один уполномоченный орган сертификации. Такой орган называется корневым удостоверяющим центром (корневым центром сертификации).

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

Page 230: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

230

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

5.5 К лассы безопасности компьютерны х систем

В 1983 году Министерство обороны США выпустило Orange Book книгу в оранжевой обложке под названием Критерии оценки достоверных компьютерных систем (Trusted Computer Systems Evaluation Criteria TCSEC). За пределами США также появились аналоги Оранжевой книги: это руководящие документы Гостехкомиссии, а также Критерии оценки безопасности информационных технологий (ITSEC Information Technology Security Evaluation Criteria), действующие в странах Западной Европы. Но-вый международный стандарт ISO/IEC 15408 Единые критерии оценки безопасности в области ИТ чаще всего называют просто Common Criteria ( Единые критерии).

Данный стандарт (TCSEC), получил международное признание и оказал исключительно сильное влияние на последующие разработки в об-ласти информационной безопасности (ИБ). Он относится к оценочным стандартам (классификация информационных систем и средств защиты) и речь в нём идет не о безопасных, а о доверенных системах. Каких-либо аб-солютных систем (в том числе и безопасных) не существует. Поэтому и было предложено оценивать лишь степень доверия, которое можно оказать той или иной системе.

В стандарте заложен понятийный базис ИБ (безопасная система, до-веренная система, политика безопасности, уровень гарантированности, подотчетность, доверенная вычислительная база, монитор обращений, яд-ро безопасности, периметр безопасности).

Безопасность и доверие оцениваются в данном стандарте с точки зрения управления доступом к информации, что и является средством обеспечения конфиденциальности и целостности.

Основные понятия Безопасная система – система, которая обеспечивает управление до-

ступом к информации, таким образом, что только авторизованные лица или процессы, действующие от их имени, получают право работы с ин-формацией.

Page 231: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

231

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

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

Уровень гарантированности – подразумевает меру доверия, которая может быть оказана архитектуре и реализации информационной системы, и показывает, насколько корректны механизмы, отвечающие за реализа-цию политики безопасности (пассивный аспект защиты).

Доверенная вычислительная база – это совокупность защитных ме-ханизмов информационной системы (как программные, так и аппаратные), реализующие политику безопасности.

Монитор обращений. Контроль за выполнением субъектами (поль-зователями) определенных операций над объектами, путем проверки допу-стимости обращения (данного пользователя) к программам и данным раз-решенному набору действий.

Обязательные качества для монитора обращений: 1. Изолированность (неотслеживаемость работы). 2. Полнота (невозможность обойти). 3. Верифицируемость (возможность анализа и тестирования). Ядро безопасности – конкретная реализация монитора обращений,

обладающая гарантированной неизменностью. Периметр безопасности – граница доверенной вычислительной ба-

зы Механизмы реализации безопасности Произвольное управление доступом (добровольное управление до-

ступом) – это метод ограничения доступа к объектам, основанный на уче-те личности субъекта или группы, в которую субъект входит. Доброволь-ность управления состоит в том, что некоторое лицо (обычно владелец объекта) может по своему усмотрению давать другим субъектам или отби-рать у них права доступа к объекту. Большинство операционных систем и СУБД реализуют именно добровольное управление доступом. Главное его достоинство – гибкость, главные недостатки – рассредоточенность управ-ления и сложность централизованного контроля, а также оторванность

Page 232: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

232

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

Безопасность повторного использования объектов – важное на практике дополнение средств управления доступом, предохраняющее от случайного или преднамеренного извлечения секретной информации из «мусора». Безопасность повторного использования должна гарантировать-ся для областей оперативной памяти (в частности, для буферов с образами экрана, расшифрованными паролями и т.п.), для дисковых блоков и маг-нитных носителей в целом. Важно обратить внимание на следующий мо-мент. Поскольку информация о субъектах также представляет собой объ-ект, необходимо позаботиться о безопасности «повторного использования субъектов». Когда пользователь покидает организацию, следует не только лишить его возможности входа в систему, но и запретить доступ ко всем объектам. В противном случае, новый сотрудник может получить ранее использовавшийся идентификатор, а с ним и все права своего предше-ственника. Современные интеллектуальные периферийные устройства усложняют обеспечение безопасности повторного использования объек-тов. Действительно, принтер может буферизовать несколько страниц до-кумента, которые останутся в памяти даже после окончания печати. Необ-ходимо предпринять специальные меры, чтобы «вытолкнуть» их оттуда. Впрочем, иногда организации защищаются от повторного использования слишком ревностно – путем уничтожения магнитных носителей. На прак-тике заведомо достаточно троекратной записи случайных последователь-ностей бит.

Метки безопасности. Предусмотрены метки для субъектов (степень благонадежности) и объектов (степень конфиденциальности информации). Метки безопасности содержат данные об уровне секретности и категории, к которой относятся данные. Согласно «Оранжевой книге», метки безопас-ности состоят из двух частей – уровня секретности и списка категорий. Уровни секретности, поддерживаемые системой, образуют упорядоченное множество, которое может выглядеть, например, так:

• совершенно секретно; • секретно; • конфиденциально; • несекретно. Впрочем, для разных систем набор уровней секретности может раз-

личаться. Категории образуют неупорядоченный набор. Их назначение –

Page 233: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

233

описать предметную область, к которой относятся данные. В военном окружении каждая категория может соответствовать, например, опреде-ленному виду вооружений. Механизм категорий позволяет разделить ин-формацию по отсекам, что способствует лучшей защищенности. Субъект не может получить доступ к «чужим» категориям, даже если его уровень благонадежности «совершенно секретно». Специалист по танкам не узнает тактико-технические данные самолетов.

Главная проблема, которую необходимо решать в связи с метками, это обеспечение их целостности. Во-первых, не должно быть непомечен-ных субъектов и объектов, иначе в меточной безопасности появятся легко используемые бреши. Во-вторых, при любых операциях с данными метки должны оставаться правильными. В особенности это относится к экспорту и импорту данных. Например, печатный документ должен открываться за-головком, содержащим текстовое и/или графическое представление метки безопасности. Аналогично при передаче файла по каналу связи должна пе-редаваться и ассоциированная с ним метка, причем в таком виде, чтобы удаленная система могла её разобрать, несмотря на возможные различия в уровнях секретности и наборе категорий.

Одним из средств обеспечения целостности меток безопасности яв-ляется разделение устройств на многоуровневые и одноуровневые. На многоуровневых устройствах может храниться информация разного уров-ня секретности (точнее, лежащая в определенном диапазоне уровней). Од-ноуровневое устройство можно рассматривать как вырожденный случай многоуровневого, когда допустимый диапазон состоит из одного уровня. Зная уровень устройства, система может решить, допустимо ли записывать на него информацию с определенной меткой. Например, попытка напеча-тать совершенно секретную информацию на принтере общего пользования с уровнем «несекретно» потерпит неудачу.

Принудительное управление доступом основано на сопоставлении меток безопасности субъекта и объекта. Субъект может читать информа-цию из объекта, если уровень секретности субъекта не ниже, чем у объек-та, а все категории, перечисленные в метке безопасности объекта, присут-ствуют в метке субъекта. В таком случае говорят, что метка субъекта до-минирует над меткой объекта. Субъект может записывать информацию в объект, если метка безопасности объекта доминирует над меткой субъекта. В частности, "конфиденциальный" субъект может писать в секретные фай-лы, но не может – в несекретные (разумеется, должны также выполняться ограничения на набор категорий). На первый взгляд подобное ограничение

Page 234: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

234

может показаться странным, однако оно вполне разумно. Ни при каких операциях уровень секретности информации не должен понижаться, хотя обратный процесс вполне возможен.

Описанный способ управления доступом называется принудитель-ным, поскольку он не зависит от воли субъектов, на месте которых могут оказаться даже системные администраторы. После того, как зафиксирова-ны метки безопасности субъектов и объектов, оказываются зафиксирован-ными и права доступа. В терминах принудительного управления нельзя выразить предложение "разрешить доступ к объекту Х ещё и для пользова-теля Y". Конечно, можно изменить метку безопасности пользователя Y, но тогда он скорее всего получит доступ ко многим дополнительным объек-там, а не только к Х. Принудительное управление доступом реализовано во многих вариантах операционных систем и СУБД, отличающихся повы-шенными мерами безопасности. В частности, такие варианты существуют для SunOS и СУБД Ingres. Независимо от практического использования принципы принудительного управления являются удобным методологиче-ским базисом для начальной классификации информации и распределения прав доступа. Удобнее мыслить в терминах уровней секретности и катего-рий, чем заполнять неструктурированную матрицу доступа. Впрочем, в ре-альной жизни добровольное и принудительное управление доступом соче-тается в рамках одной системы, что позволяет использовать сильные сто-роны обоих подходов.

Классы безопасности В стандарте TCSEC впервые введены четыре уровня доверия – D, C,

B и A, которые подразделяются на классы. Классов безопасности всего шесть – C1, C2, B1, B2, B3, A1 (перечислены в порядке ужесточения тре-бований).

Уровень D – минимальная защита. К этому классу относятся все си-стемы, которые не удовлетворяют требованиям других классов.

Уровень C – дискреционная защита, или – произвольное управление доступом, характеризуется наличием произвольного управления доступом и регистрацией действий субъектов.

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

Page 235: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

235

обработка данных одного уровня секретности. Например: пользователи должны идентифицировать себя, причем аутентификационная информация должна быть защищена от несанкционированного доступа;

Класс С2, управление доступом. Системы этого класса осуществля-ют более избирательное управление доступом, чем системы класса С1, с помощью применения средств индивидуального контроля за действиями пользователей, регистрацией, учетом событий и выделением ресурсов. Например, каждый пользователь системы должен уникальным образом идентифицироваться. Каждое регистрируемое действие должно ассоции-роваться с конкретным пользователем.

Уровень B, мандатная защита, также именуется – принудительное управление доступом. Основные требования этой группы – нормативное управление доступом с использованием меток безопасности, поддержка модели и политики безопасности, а также наличие спецификаций на функ-ции ТСВ. Для систем этой группы монитор взаимодействий должен кон-тролировать все события в системе.

Класс В1. Защита с применением меток безопасности. Системы клас-са В1 должны соответствовать всем требованиям, предъявляемым к систе-мам класса С2, и, кроме того, должны поддерживать определенную не-формально модель безопасности, маркировку данных и нормативное управление доступом. При экспорте из системы информация должна под-вергаться маркировке. Обнаруженные в процессе тестирования недостат-ки, должны быть устранены.

Класс В2. Структурированная защита. Для соответствия классу В2 системы должна поддерживать формально определенную и четко доку-ментированную модель безопасности, предусматривающую произвольное и нормативное управление доступом, которое распространяется по сравне-нию с системами класса В1 на все субъекты. Кроме того, должен осу-ществляться контроль скрытых каналов утечки информации. В структуре систем должны быть выделены элементы, критичные с точки зрения без-опасности. Интерфейс должен быть четко определен, а ее архитектура и реализация должны быть выполнены с учетом возможности проведения тестовых испытаний. По сравнению с классом В1 должны быть усилены средства аутентификации. Управление безопасностью осуществляется ад-министраторами системы. Должны быть предусмотрены средства управ-ления конфигурацией.

Класс ВЗ. Домены безопасности. Для соответствия этому классу си-стемы должна поддерживать монитор взаимодействий, который контроли-

Page 236: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

236

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

Уровень A – верифицируемая безопасность. Данная группа характе-ризуется применением формальных методов верификации корректности работы механизмов управления доступом (произвольного и нормативно-го). Требуется дополнительная документация, демонстрирующая, что ар-хитектура и реализация системы отвечают требованиям безопасности.

Класс А1. Формальная верификация. Системы класса А1 функцио-нально эквивалентны системам класса ВЗ, и к ним не предъявляется ника-ких дополнительных функциональных требований. В отличие от систем класса ВЗ в ходе разработки должны применяться формальные методы ве-рификации, что позволяет с высокой уверенностью получить корректную реализацию функций защиты. Процесс доказательства адекватности реали-зации начинается на ранней стадии разработки с построения формальной модели политики безопасности и спецификаций высокого уровня. Для обеспечения методов верификации системы класса А1 должны содержать более мощные средства управления конфигурацией и защищенную проце-дуру дистрибуции.

Такова классификация, введенная в "Оранжевой книге". Коротко её можно сформулировать так:· уровень C – произвольное управление досту-пом; уровень B – принудительное управление доступом; · уровень A – ве-рифицируемая безопасность.

Приведенные классы безопасности надолго определили основные концепции безопасности и ход развития средств защиты.

5.6 Организационно-правовы е аспекты защиты информации

Основными правовые проблемы Интернета являются: • нарушение авторских прав и прав интеллектуальной собственно-

сти;

Page 237: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

237

• распространение информации, оказывающей негативное влияние на различные аспекты жизнедеятельности, в том числе бесконтрольное распространение оскорбительных и непристойных материалов в сетях Ин-тернет и доступ к ним детей;

• распространение недобросовестной, а зачастую лживой реклам-ной информации, рекламы и различных объявлений;

• проникновение в системы, в т. ч. системы управления; несанкци-онированный доступ к коммерческой и конфиденциальной информации юридических и физических лиц и органов власти и управления;

• различные мошеннические операции; • нарушение прав и законных интересов личности в процессе ин-

формационного обмена. В результате, вышеуказанные юридические проблемы, можно сгруп-

пировать в три группы: а) защита информации; б) защита прав и законных интересов личности, общества и государ-

ства при использовании компьютерных сетей; в) защита прав на объекты интеллектуальной собственности. Основными нормативно-правовыми актами, регламентирующие

деятельность Интернета в Республике Беларусь являются: • Об информации, информатизации и защите информации: Закон

Республики Беларусь, 10.11.2008 N 455-З // Национальный реестр право-вых актов Республики Беларусь. – 2008. – N 279. – 2/1552.

• Указа Президента Республики Беларусь от 01.02.2010 N 60 «О мерах по совершенствованию использования национального сегмента сети Интернет»

• Закон Республики Беларусь «О внесении дополнений и измене-ний в Закон Республики Беларусь «О средствах массовой информации» от 20 декабря 2014 г. № 213-З.

• Об электронном документе: Закон Республики Беларусь от 10 ян-варя 2000 г. № 357-З (с изм. и доп. От 20.07.2006 г.) // Эталон – Беларусь [Электронный ресурс] / Нац. центр правовой информ. Респ. Беларусь. – Минск, 2012.

• Закон Республики Беларусь «Об авторском праве и смежных пра-вах» от 11.08.1998 г. № 370–ХII

• Закон Республики Беларусь «О средствах массовой информации» от 17 июля 2008 г. № 427-З.

Page 238: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

238

С 1 января 2015 года вступил в силу Закон Республики Беларусь «О внесении дополнений и изменений в Закон Республики Беларусь «О сред-ствах массовой информации». Принципиальной и основной новацией За-кона является распространение его действия на информационные ресурсы (их составные части), размещенные в глобальной компьютерной сети Ин-тернет, посредством которых осуществляется распространение продукции средства массовой информации.

При этом следует отметить, что никаких разрешительных процедур, в том числе государственной регистрации для этих ресурсов не требуется. Вместе с тем, новый Закон наделил Интернет-ресурсы правами и обязан-ностями средств массовой информации.

Владельцы информационных ресурсов (их составных частей) обяза-ны не допускать использования их ресурсов для распространения инфор-мации, содержание которой противоречит требованиям Закона (пункт 3 статьи 38).

Законодателем закреплен порядок опровержения информации в Ин-тернете. Статья 43 дополнена пунктом 5, в соответствии с которым опро-вержение информации, распространенной в глобальной компьютерной се-ти Интернет, осуществляется на том же информационном ресурсе, посред-ством которого была распространена опровергаемая информация, не позд-нее дня, следующего за днем поступления требования об опровержении. При этом опровергаемые информационное сообщение и (или) материал подлежат удалению.

В соответствии со статьей 49 владельцу информационного ресурса, размещенного в глобальной компьютерной сети Интернет, Министерством информации могут быть вынесены письменные предупреждения. Основа-ния для их вынесения аналогичны предусмотренным для редакций СМИ.

Законом предусмотрено ограничение доступа к продукции средств массовой информации, распространяемой посредством информационного ресурса (его составной части), размещенного в глобальной компьютерной сети Интернет (статья 511).

Такое ограничение вводится по решению Министерства информации в случае:

• вынесения владельцу информационного ресурса (его составной части), размещенного в глобальной компьютерной сети Интернет, в тече-ние года двух и более письменных предупреждений;

• распространения посредством информационного ресурса (его составной части), размещенного в глобальной компьютерной сети Интер-

Page 239: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

239

нет, информационных сообщений и (или) материалов, запрещенных или ограниченных к распространению в соответствии с законодательными ак-тами Республики Беларусь, а также вступившими в законную силу реше-ниями суда;

• невыполнения владельцем информационного ресурса (его со-ставной части), размещенного в глобальной компьютерной сети Интернет, законного требования государственного органа об устранении нарушений законодательства Республики Беларусь о средствах массовой информации.

5.7 А вторское право

Co времён первого закона об авторском праве (1710 г.) законода-тельное регулирование предполагает компромисс между интересами об-щества в распространении информации, знаний и культурных ценностей, с одной стороны, и заботе об интересах авторов, с другой. Другими опреде-ляющими интересами в формировании авторского права изначально были потребность в цензуре и защита бизнеса издателей (механизмы лицензиро-вания). При этом исторически и содержательно интерес общества занимал первое место, защита авторства (права атрибуции) – второе, а бизнес – третье.

В Беларуси копирайт (авторское право) действует в течение всей жизни автора плюс 50 лет после его смерти. За границей этот срок "после смерти автора" может варьироваться от 50 до более 100 лет. Это очень большой срок. И это значит, что в общественное достояние произведение современных авторов не попадёт ни при нашей жизни, ни, возможно, даже при жизни наших детей. Многие творческие сообщества во всем мире счи-тают подобные сроки действия копирайта слишком большими, мешающи-ми гармоничному развитию общества, и создают альтернативные подходы, например, свободные лицензии.

Республика Беларусь является участником различных международ-ных организаций и договоров в области авторского права, в частности: ра-тифицирована Бернская Конвенция, является членом Всемирной Органи-зации Интеллектуальной Собственности (ВОИС). Во многом сегодняшний белорусской копирайт взят из типовых документов ВОИС и выписок Бернского Союза.

Согласно закону Республики Беларусь «Об авторском праве и смеж-ных правах» от 16 мая 1996 г. N 370-XIII (Изменения и дополнения от 4 января 2003 г. N 183-З):

Page 240: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

240

• авторское право распространяется на произведения науки, литера-туры и искусства, являющиеся результатом творческой деятельности, независимо от назначения и достоинства произведений, а также способа их выражения.

• авторское право распространяется как на обнародованные, так и на необнародованные произведения, существующие в какой-либо объектив-ной форме:

− письменной (рукопись, машинопись, нотная запись и др.); − устной (публичное произнесение, публичное исполнение и

др.); − звуко- или видеозаписи (механическая, магнитная, цифровая,

оптическая и др.); − изображения (рисунок, эскиз, картина, карта, план, чертеж, ки-

но-, теле-, видео-, фотокадр и др.); − объемно-пространственной (скульптура, модель, макет, соору-

жение и др.); − электронной, в том числе цифровой; − в иной форме.

Идея гипертекста как всемирной справочной системы все чаще всту-пает в противоречие с целями авторского права, призванного защищать интересы создателей информации, а также с уголовным и гражданским правом, защищающим «объекты информационного воздействия».

В условиях развития информационного общества рост числа нару-шений авторских и смежных прав при их использовании посредством сети Интернет становится особенно значительным. «Интеллектуальное» пират-ство захлестнуло весь мир. По некоторым данным доля программного обеспечения нелегального происхождения составляет: в ФРГ – 50%, Фран-ции – 57, Великобритании и Финляндии – 43, Швейцарии и США – 35, России – до 94 %.

Основные проблемы авторского права в Интернете Одна из основных проблем Интернета заключается в том, что сфера

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

Page 241: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

241

Одним из спорных вопросов является вопрос ответственности за размещенную информацию: лицо, которое поместило в сеть соответству-ющую информацию или сервис – провайдер сети, предоставивший услуги по размещению информации в сети.

Существует точка зрения, согласно которой сервис – провайдеры не должны нести ответственность за содержание размещаемой информации или должны быть установлены дополнительные условия ответственности, например, в случаях, если оператор знал о нарушениях и имел возмож-ность и способность предотвратить размещение. Объясняется такая пози-ция тем, что объем информации в системах провайдеров столь велик, что просмотреть все невозможно. Кроме того, не всегда представляется воз-можным определить, имеет ли место нарушение закона.

Например, неясно, норма законодательства какой страны должна применяться при конфликте интересов в случае, если сайт зарегистрирован в доменной зоне одной страны, физически находится на сервере во второй стране, владелец сайта является гражданином третьей, основная пользова-тельская аудитория – в четвертой.

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

Идея гипертекста как всемирной справочной системы все чаще всту-пает в противоречие с целями авторского права, призванного защищать интересы создателей информации, а также с уголовным и гражданским правом, защищающим «объекты информационного воздействия».

Появление на сцене Интернета поставило ряд вопросов, на которые пока нет ясного ответа. Вот наиболее типичные примеры:

1. Если я на своей веб-странице на всеобщее обозрение выставляю некую информацию, используя которую без моего ведома, любой желаю-щий может заработать деньги и/или уменьшить мою прибыль, каким обра-зом я смогу потребовать компенсацию?

2. Каким образом я могу доказать приоритет собственной информа-ции?

Page 242: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

242

3. Что является критерием использования или неиспользования моих материалов для извлечения прибыли?

4. Являются ли ссылки на другие сайты, находящиеся на моей стра-нице, вторжением в права других авторов? И наоборот: если на мой сайт приходят по ссылке с другого сайта, как быть с авторскими правами?

5. Что является объектом авторского права – отображение страницы на экране монитора или ее код?

6. Если я извлекаю полезную информацию, не заходя на чью-либо страницу, а только используя анонс, отображаемый поисковым сервером, нарушаю ли я авторские права?

7. Если через баннер, вывешенный на моей странице баннерной службой, некто перешел на чью-то страницу и там нарушил авторские права, являюсь ли я соучастником, или соучастник баннерная служба или провайдер?

И т.д. До сих пор мы говорили о защите прав «писателей», но и с «худож-

никами» проблем ничуть не меньше. Дизайн сайта – это такой же объект авторского права, как и его содержание. И вопросы тут возникают весьма непростые. Например, такие:

Если веб-дизайнеру понравилось оформление какой-либо страницы, может ли он просто ее скопировать, заменив текст, изображения и рекви-зиты своими? Нарушает ли он при этом права создателя сайта? А если, к тому же, будет изменена цветовая палитра? А если дизайнер воспользуется только управляющими фреймами, но дизайн разработает сам? Здесь, веро-ятно, не может быть однозначного ответа. Если дизайн сайта (или элемен-ты дизайна – кнопочки, иконки, линии и т.д.) зарегистрирован, то факт нарушения авторских прав может определить только суд. Какими критери-ями при этом суд может руководствоваться?

В законодательстве Соединенных Штатов Америки в области Интернета действуют две основные правовые нормы, принятые в 1996 г. («Теlecommunications Act of 1996» как дополнения к федеральному закону «Communications Act of 1934» в виде нового параграфа 230 «Охрана лич-ного блокирования и защита от оскорбительных материалов») и касающи-еся содержания информационных ресурсов в Интернете.

Первая норма определяет, что ни провайдер, ни пользователь интер-активной компьютерной услуги не несут ответственности за содержание информации, публикуемой другим провайдером.

Page 243: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

243

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

Существенным комплексом нормативных документов, оказывающих решающее влияние на правовые нормы европейских стран в области Ин-тернета, являются нормативные документы Европарламента и Совета Ев-ропы. Среди этих документов необходимо выделить Директиву «Об обра-ботке персональных данных и защите частных интересов в области теле-коммуникации», проект Директивы «О ряде правовых аспектов электрон-ной коммерции на внутреннем рынке». Эти документы составляют основу европейской законодательной базы в области Интернета с позиций обмена информацией и электронной коммерции. Первая директива посвящена от-ношениям между поставщиками услуг в общедоступной телекоммуника-ционной сети и конечными пользователями этих услуг. Основные вопро-сы, рассмотренные в ней:

Безопасность. На поставщика услуги возлагается обязанность по обеспечению информационной безопасности своих услуг, если требуется, во взаимодействии с владельцем общедоступной телекоммуникационной сети.

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

Права потребителя (пользователя общедоступной телекоммуника-ционной сети) по отношению к своим персональным данным, которые размещаются в электронных или печатных справочниках, предназначен-ных для общего пользования

Вторым наиболее значимым прецедентом в иностранном законода-тельстве, регулирующем область Интернета, явился германский «Мульти-медийный закон». В отличие от американского подхода германские зако-нодатели возлагают на провайдеров услуг ответственность за содержание,

Page 244: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

244

предоставляемое третьей стороной, если они осведомлены об этом содер-жании и блокирование его технически возможно и обоснованно. Здесь в императивной форме провайдеру предписывается обязанность по блоки-ровке «незаконной» информации. Закон также возлагает на провайдера услуг ответственность за содержание «собственной» информации, кото-рую они предоставляют для использования. Закон освобождает провайде-ров услуг от ответственности за содержание, предоставляемое третьей сто-роной, только в том случае, если они обеспечивают только доступ к ин-формации.

Так, одной из серьезнейших проблем сегодня является спам – массо-вая незапрашиваемая рассылка, как правило, рекламного характера.

В Республике Беларусь с 4 апреля 2016 года вступила в силу адми-нистративная ответственность за «хранение с целью распространения» контрафактных экземпляров произведений, записанных исполнений, фо-нограмм и передач. Минимальный штраф для физических лиц за эти нарушения будет 30 базовых величин (от 6300000 рублей на январь 2016 г.), для юридических лиц он составит 100 базовых величин (21 миллион рублей, на январь 2016 г.).

Например, если на компьютере хранятся нелицензионные музыкаль-ные файлы и один из файлов был закачан в социальную сеть или хранится в обще доступной папке (доступен к скачиванию через торрент), владелец ПК может быть привлеченным к административной ответственности за не-законное распространение произведений.

Проблемы охраны авторских прав в Интернете заключаются в слож-ности обеспечения доказательной базы в случае нарушения и в отсутствии частного правого механизма их защиты Автор или правообладатель дол-жен самостоятельно определить факт нарушений авторских прав, отсле-дить распространение и использование охраняемых объектов в цифровых сетях. (Закон Республики Беларусь «Об авторском праве и смежных пра-вах» от 11.08.1998 г.). Это многие правообладатели обеспечить не в состо-янии, поэтому не предпринимают попыток пресечь нарушения, основыва-лось на действующем Законодательстве Республики Беларусь.

Действует ли авторское право в электронном мире? Да. Материалы из книг, журналов или периодических изданий не могут быть размещены в Интернете, в группах новостей или на досках объявлений без письменного разрешения владельца авторских прав.

Авторское право защищает в Интернете дизайн страницы и ее со-держание, в том числе:

Page 245: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

245

• ссылки; • оригинальный текст; • графику; • аудиофайлы; • видеофайлы; • html, vrml и другие языковые ряды; • списки веб-сайтов, составленные организацией или отдельным

гражданином; • и все остальные уникальные элементы, составляющие ориги-

нальный характер материала. Создавая страницу в Интернете, вы можете: • размещать гипертекстовые ссылки на другие сайты; • использовать бесплатную графику. Если графика не упоминается

как "бесплатная", ее нельзя копировать без соответствующего разрешения. Создавая страницу в Интернете, нельзя: • размещать на ней содержание чужих сайтов; • копировать и объединять информацию из различных Интернет-

ресурсов для создания "собственного" документа; • без разрешения включать в свой документ чужие электронные

материалы, такие как электронная почта; • без разрешения пересылать дальше электронную почту; • изменять контекст или редактировать чужую цифровую корре-

спонденцию, изменяя таким образом смысл; • копировать и вставлять чужие списки ресурсов на своей страни-

це; • копировать и вставлять логотипы, иконки и другую графику

(кроме того, что четко указано как "fгееwаге") с других сайтов на свою страницу без соответствующего разрешения.

При этом необходимо учитывать следующее. Вопрос обеспечения доказательств для сети Интернет является основополагающим. В условиях изменчивости природы электронной информации, легкости передачи ин-формации по сетям, открытости протокола ТСР/IР главным становится вопрос: где какая страница лежала и кто и когда осуществил каждую кон-кретную публикацию данной страницы в сети.

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

Page 246: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

246

обычном визуальном рассмотрении изображения пользователь не видит каких-либо закодированных обозначений – значка копирайта, имени авто-ра, года издания. Но при применении затем определенного программного средства можно доказать, что файлы содержат дополнительную информа-цию, указывающую на лицо, ее записавшую. Из таких программных про-дуктов можно назвать Сгурtо1оре фирмы IBМ, программу "@ttribute" фирмы NеtRights. Причем, важной особенностью водяных знаков с чисто дизайнерской точки зрения можно назвать устойчивость к любым опера-циям над изображением – сжатию, изменению размеров, формата, цветно-сти, которые не уничтожают и лишь слабо искажают их.

Множество аспектов проблемы авторского права и Интернета все еще ждут своего окончательного разрешения.

Во многих странах мира, в органах полиции и прокуратуры суще-ствуют специальные отделы, которые занимаются только вопросами охра-ны интеллектуальной собственности.

Page 247: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

247

Т Е М А 6 М А Т Е М А Т И Ч Е С К ОЕ М ОДЕ Л И РОВ А Н И Е И Ч И С Л Е Н Н Ы Е М Е Т ОДЫ

6.1 П онятие модели, математической модели и моделирования

Слово «модель» происходит от латинского modus (копия, образ, очертание). Моделирование – это замещение некоторого объекта А (ори-гинала) другим объектом Б (моделью).

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

На идее моделирования базируется любой метод научного исследо-вания, при этом, в теоретических методах используются различного рода знаковые, абстрактные модели, в экспериментальных – предметные моде-ли.

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

Моделирование – это метод исследования каких-либо явлений, про-цессов или систем объектов, который предполагает создание искусствен-ных или естественных систем (моделей), имитирующих существенные свойства оригинала; использование моделей для определения или уточне-ния характеристик и рационализации способов построения вновь констру-ируемых объектов.

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

Page 248: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

248

предполагаемые в изучаемом объекте между отдельными его деталями и составными частями можно записать с помощью математических отноше-ний: равенств, неравенств, уравнений. В результате получается математи-ческое описание изучаемого процесса или явление, то есть его математи-ческая модель.

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

Главные функции моделей – описательная, конструктивная и эври-стическая.

Описательная функция модели состоит в том, что в исследуемом объекте выделяются и обобщаются существенные компоненты и взаимо-связи между ними.

Конструктивная функция модели состоит в её способности служить ориентиром, применять добытые знания в новых ситуациях.

Эвристическая функция модели способствует прогнозированию. Как алгоритм математической деятельности метод математического

моделирования содержит три этапа: • построение математической модели объекта (явления, процесса); • исследование полученной модели, т. е. решение полученной ма-

тематической задачи средствами математики; • интерпретация полученного решения с точки зрения исходной

ситуации. Процесс моделирования является итеративным. В случае неудовле-

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

При этом должны соблюдаться следующие требования: • модель должна адекватно отражать наиболее существенные (с

точки зрения определенной постановки задачи) свойства объекта, отвлека-ясь от несущественных его свойств;

• модель должна иметь определенную область применимости, обу-словленную принятыми при её построении допущениями;

Page 249: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

249

• модель должна позволять получать новые знания об изучаемом объекте.

При разработке математической модели необходимо выполнить три правила:

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

случая: • полученная конкретная модель принадлежит к уже изученному в

математике классу моделей и тогда математическая задача решается уже известными методами;

• эта модель не укладывается ни в одну из известных схем (клас-сов) моделей, разработанных в математике, и тогда возникает внутримате-матическая проблема исследования нового класса моделей, что приводит к дальнейшему развитию одной из существующих математических теорий или к появлению новой.

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

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

Обычно в процессе математического моделирования и вычислитель-ного эксперимента участвуют помимо профессиональных математиков и программистов специалисты в конкретной предметной области (биологии, химии, медицине и др.).

Page 250: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

250

Современные компьютерно-ориентированные численные методы должны удовлетворять многообразным и зачастую противоречивым тре-бованиям. Обычно построение численного метода для заданной математи-ческой модели разбивается на два этапа: дискретизацию исходной матема-тической задачи и разработку вычислительного алгоритма, позволяющего отыскать решение дискретной задачи.

Выделяют две группы требований к численным методам. Первая группа связана с адекватностью дискретной модели исходной матема-тической задаче, вторая – с реализуемостью численного метода на имеющейся вычислительной технике.

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

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

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

Page 251: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

251

элементарных. Многие элементарные задачи являются несложными, они хорошо изучены, для них уже разработаны методы численного решения и имеются стандартные программы решения.

Построение модели объекта, явления начинается с выделения его наиболее существенных черт и свойств и описания их с помощью матема-тических соотношений. Затем, после создания математической модели, ее исследуют математическими методами, т.е. решают сформулированную математическую задачу.

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

Именно недостаточно хорошее совпадение результатов, предостав-ляемых моделью, с объектом вызывает дальнейшее совершенствование модели.

6.2 К лассификация математических моделей и требования к ним

Математические модели могут быть детерменированными и стоха-стическими.

Детерменированные модели – это модели, в которых установлено взаимно-однозначное соответствие между переменными описывающими объект или явления.

Часто моделируемый объект сложен и расшифровка его механизма может оказаться очень трудоемкой и длинной во времени. В этом случае поступают следующим образом: на оригинале проводят эксперименты, об-

Page 252: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

252

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

По характеру режимов модель бывают статистическими и динами-ческими.

Статистическая модель включает описание связей между основными переменными моделируемого объекта в установившемся режиме без учета изменения параметров во времени.

В динамической модели описываются связи между основными пере-менными моделируемого объекта при переходе от одного режима к друго-му.

Модели бывают дискретными и непрерывными, а также смешанного типа. В непрерывных переменные принимают значения из некоторого промежутка, в дискретных переменные принимают изолированные значе-ния.

Линейные модели – все функции и отношения, описывающие модель линейно зависят от переменных и не линейные в противном случае.

Требования, предъявляемые к моделям. 1. Универсальность – характеризует полноту отображения моделью

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

погрешностью не выше заданной. 3. Точность – оценивается степенью совпадения значений характе-

ристик реального объекта и значения этих характеристик полученных с помощью моделей.

4. Экономичность – определяется затратами ресурсов ЭВМ памяти и времени на ее реализацию и эксплуатацию.

6.3 А налитическое моделирование

Для аналитического моделирования характерно, что процессы функ-ционирования системы записываются в виде некоторых функциональных соотношений (алгебраических, дифференциальных, интегральных уравне-

Page 253: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

253

ний). Аналитическая модель может быть исследована следующими мето-дами:

1) аналитическим, когда стремятся получить в общем виде явные за-висимости для характеристик систем;

2) численным, когда не удается найти решение уравнений в общем виде и их решают для конкретных начальных данных;

3) качественным, когда при отсутствии решения находят некоторые его свойства.

Аналитические модели удается получить только для сравнительно простых систем. Для сложных систем часто возникают большие математи-ческие проблемы. Для применения аналитического метода идут на суще-ственное упрощение первоначальной модели. Однако исследование на упрощенной модели помогает получить лишь ориентировочные результа-ты. Аналитические модели математически верно отражают связь между входными и выходными переменными и параметрами. Но их структура не отражает внутреннюю структуру объекта.

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

6.4 И митационное моделирование

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

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

Page 254: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

254

или непрерывных элементов, нелинейные характеристики, случайные воз-действия и др. Поэтому этот метод широко применяется на этапе проекти-рования сложных систем. Основным средством реализации имитационного моделирования служит ЭВМ, позволяющая осуществлять цифровое моде-лирование систем и сигналов.

Результаты имитационного моделирования работы стохастической системы являются реализациями случайных величин или процессов. По-этому для нахождения характеристик системы требуется многократное по-вторение и последующая обработка данных. Чаще всего в этом случае применяется разновидность имитационного моделирования – статистиче-ское моделирование (или метод Монте-Карло), т.е. воспроизведение в моделях случайных факторов, событий, величин, процессов, полей. По ре-зультатам статистического моделирования определяют оценки вероят-ностных критериев качества, общих и частных, характеризующих функци-онирование и эффективность управляемой системы. Статистическое моде-лирование широко применяется для решения научных и прикладных задач в различных областях науки и техники. Методы статистического модели-рования широко применяются при исследовании сложных динамических систем, оценке их функционирования и эффективности.

Заключительный этап статистического моделирования основан на математической обработке полученных результатов. Здесь используют ме-тоды математической статистики.

Оптимизационные модели, в том числе многокритериальные, имеют общее свойство – известна цель (или несколько целей) для достижения ко-торой часто приходится иметь дело со сложными системами, где речь идет не столько о решении оптимизационных задач, сколько об исследовании и прогнозировании состояний в зависимости от избираемых стратегий управления. И здесь мы сталкиваемся с трудностями реализации прежнего плана. Они состоят в следующем:

• сложная система содержит много связей между элементами; • реальная система подвергается влиянию случайных факторов,

учет их аналитическим путем невозможен; • возможность сопоставления оригинала с моделью существует

лишь в начале и после применения математического аппарата, т.к. проме-жуточные результаты могут не иметь аналогов в реальной системе.

В связи с перечисленными трудностями, возникающими при изуче-нии сложных систем, практика потребовала более гибкий метод, и он по-

Page 255: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

255

явился – имитационное моделирование «Simujation modeling». Имитаци-онные модель не просто отражают реальность, но имитируют ее.

Имитационное моделирование (ситуационное моделирование) – ме-тод, позволяющий строить модели, описывающие процессы так, как они проходили бы в действительности. Такую модель можно «проиграть» во времени как для одного испытания, так и заданного их множества. При этом результаты будут определяться случайным характером процессов. По этим данным можно получить достаточно устойчивую статистику.

Имитационное моделирование – это метод исследования, при кото-ром изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему, с которой проводятся эксперименты с целью получения информации об этой системе. Экспериментирование с моделью называют имитацией (имитация – это постижение сути явления, не прибегая к экспериментам на реальном объекте).

Имитационное моделирование – это частный случай математическо-го моделирования. Существует класс объектов, для которых по различным причинам не разработаны аналитические модели, либо не разработаны ме-тоды решения полученной модели. В этом случае аналитическая модель заменяется имитатором или имитационной моделью.

К имитационному моделированию прибегают, когда: • дорого или невозможно экспериментировать на реальном объек-

те; • невозможно построить аналитическую модель: в системе есть

время, причинные связи, последствие, нелинейности, стохастические (слу-чайные) переменные;

• необходимо сымитировать поведение системы во времени. Цель имитационного моделирования состоит в воспроизведении по-

ведения исследуемой системы на основе результатов анализа наиболее су-щественных взаимосвязей между её элементами или другими словами – разработке симулятора исследуемой предметной области для проведения различных экспериментов.

Имитационное моделирование может применяться в самых различ-ных сферах деятельности:

• проектирование и анализ производственных систем; • оценка различных систем вооружений и требований к их мате-

риально-техническому обеспечению; • определение требований к оборудованию и протоколам сетей

связи;

Page 256: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

256

• определение требований к оборудованию и программному обеспечению различных компьютерных систем;

• проектирование и анализ работы транспортных систем, напри-мер: аэропортов, автомагистралей, портов и метрополитена;

• оценка проектов создания различных организаций массового обслуживания, например: центров обработки заказов, заведений быстрого питания, больниц, отделений связи;

• модернизация различных процессов в деловой сфере; • определение политики в системах управления запасами; • анализ финансовых и экономических систем; • при подготовке специалистов и освоении новой техники на

имитаторах (тренажерах). Например, имитационное моделирование может использоваться при

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

В качестве второго примера можно рассмотреть случай, когда необ-ходимо определить загруженность ресурсов (оборудование или люди) предприятия и принять управленческое решение по закупке нового обору-дования или найме/увольнении сотрудников. Реальные действия могут привести к ненужным затратам: купили новое оборудование, а оно проста-ивает, уволили людей, а в реальности оказалось, что оставшийся персонал не справляется с объемом работы.

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

Page 257: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

257

дования сложных систем. Этому способствуют преимущества, присущие этому методу, а именно:

1. Большинство сложных реальных систем с вероятностными пара-метрами нельзя точно описать с использованием математических моделей.

2. Путем моделирования можно разработать ряд альтернативных ва-риантов моделей системы и затем определить, какой из них наиболее соот-ветствует исходным требованиям.

3. Имитационное моделирование в ряде случаев гораздо менее за-тратное, чем проведение экспериментов с реальными системами. Тем бо-лее, что иногда эксперименты на реальных системах в принципе невоз-можны.

4. Моделирование позволяет изучить длительный интервал функци-онирования системы в сжатые сроки или, наоборот, изучить более подроб-но работу системы в развернутый интервал времени.

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

6.5 Э кономико-математическое моделирование

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

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

Page 258: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

258

номико-математической модели любого вида. Процесс моделирования можно условно подразделить на три этапа: 1) анализ теоретических зако-номерностей, свойственных изучаемому явлению или процессу и эмпири-ческих данных о его структуре и особенностях; на основе такого анализа формируются модели; 2) определение методов, с помощью которых можно решить задачу; 3) анализ полученных результатов.

Важнейшим моментом первого этапа моделирования является четкая формулировка конечной цели построения модели, а также определение критерия, по которому будут сравниваться различные варианты решения. Такими критериями в системе менеджмента могут быть: а) максимизация полезного эффекта товара при ограничении совокупности затрат; б) мак-симизация прибыли фирмы при условии, что качество товара не снизится; в) снижение себестоимости товара при условии, что его качество не сни-зится, затраты у потребителя не увеличатся; г) рост производительности труда, улучшение использования оборудования или материалов, повыше-ние оборачиваемости оборотных средств при условии, что качество товара не снизится и другие критерии не ухудшатся. Таким образом, в качестве критерия оптимизации может быть целое или любой компонент прибыли, эффективности товара, объема рынка при условии, что другие компоненты при этом не ухудшатся.

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

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

Третьим этапом моделирования является всесторонний анализ ре-зультата, полученного при изучении экономического явления. Оконча-тельным критерием достоверности и качества модели являются практика, соответствие полученных результатов и выводов реальным условиям, эко-

Page 259: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

259

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

6.6 П огрешность исходны х данны х

Любая математическая модель использует для проведения расчетов эмпирические данные. В силу погрешности измерительных инструментов, ошибок при снятии размеров, нестабильности свойств и размеров тел практически все исходные данные содержат погрешности, влияющие в большей или меньшей степени на результаты расчетов. Погрешности из-мерения вносят неустранимые искажения в результаты решения задач. Ограничения на точность выполнения математических вычислений: по-грешность вычислений должна быть меньше погрешности измерения при-мерно в 10 раз. Более высокая точность вычислений является бессмыслен-ной из-за наличия погрешностей представления исходных данных.

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

Так, при замене интеграла конечной суммой точное значение площа-ди под графиком заменяется суммой площадей соответствующих прямо-угольников. Чем меньше шаг интегрирования, тем выше точность вы-числения значения интеграла.

Аналогичная ситуация имеет место при замене производной раз-ностным аналогом: погрешность замены производной разностным анало-гом уменьшается с уменьшением величины шага h.

Таким образом: при использовании численных методов погрешность решения является регулируемой: при корректном построении разностной аппроксимации исходного уравнения всегда имеется некоторый параметр, варьированием которого можно регулировать величину погрешности по-лучаемого результата.

Но: повышение точности решения модели приводит к ощутимому повышению затрат ресурсов ЭВМ (времени проведения вычислений и оперативной памяти).

Page 260: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

260

Погрешность проведения расчетов на вычислительных маши-нах: абсолютная погрешность делится на приближенное значение пере-менной, поскольку ее точное значение неизвестно.

Погрешности округления чисел в ЭВМ Округление: операция замены заданного числа другим числом, пер-

вые S значащих цифр которого совпадают с соответствующими цифрами исходного числа, а начиная с S+1 разряда содержат нули.

Многие практические способы округления чисел выполняют отбра-сывание «лишних» разрядов, хотя возможны варианты, при которых в «младший» разряд округленного числа, в зависимости от ситуации, может добавляться единица.

Ошибки округления появляются при хранении мантиссы веществен-ного числа. В представлении чисел на персональных компьютерах IBM до-стоверными могут быть 7 значащих цифр (для хранения числа отводится 4 байта оперативной памяти), 15 цифр (8 байт) или 19 (10 байт).

Для всех чисел, представимых в ЭВМ, относительная погрешность одна и та же.

6. 7 С татистическая обработка результатов исследования

6.7.1 Основны е понятия математической статистики

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

Математическая статистика решает обратную задачу по отношению к теории вероятностей. Ее цель – на основе результатов наблюдений (из-мерений, анализов, испытаний, опытов) получить выводы о вероятностях, лежащих в основе вероятностной модели. Например, на основе частоты

Page 261: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

261

появления дефектных изделий при контроле можно сделать выводы о ве-роятности дефектности.

Без статистики невозможно изучать явления и процессы, происхо-дящие в производстве, экономике и т.д. Статистическое изучение тех или иных явлений предполагает в качестве первого шага сбор сведений или статистическое наблюдение. В результате такого наблюдения получается беспорядочная груда сырого материала, нуждающегося в систематизации и обработке.

В основе научной статистики лежит метод группировок. Группиров-кой называется расчленение совокупности сведений по какому-либо при-знаку.

Благодаря группировкам материал наблюдений принимает упорядо-ченный (систематизированный) вид. Группированные признаки могут иметь количественное выражение – заработная плата, успеваемость и т.д. или качественное – пол, должность, семейное положение и т.п.

Следующий этап обработки собранных данных – вычисление обоб-щающих показателей. В качестве таких показателей широко известны средние величины. Необходимость вычисления средних величин всегда возникает при изучении массовых явлений. Роль средних величин велика, так как в каждом явлении имеет место сочетание случайности и законо-мерности. При вычислении средних в силу действия закона больших чисел случайности взаимопоглощаются и уравновешиваются, поэтому появляет-ся возможность переходить от единичного к общему, от случайного – к за-кономерному.

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

Основным этапом обработки экспериментальных данных является группировка, т. е. разделение статистической совокупности на группы (классы), однородные по какому-то признаку. Благодаря группировке со-бранный материал приобретает систематизированный вид, поэтому выде-ление тех или иных групп должно быть не формальным, а обоснованным исходя из целей исследования.

Сведения, собранные за какой-то период, могут быть систематизиро-ваны по времени. Получаемые при этом данные называются временными

Page 262: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

262

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

Когда признаки количественные, то, расположив их в порядке воз-растания или убывания и подсчитав число элементов, соответствующих каждому значению признака, получают вариационный ряд. Варьирующие признаки могут выражаться в виде дискретных целых чисел или прини-мать любые значения. Для непрерывных признаков вариационные ряды строятся как интервальные, т. е. значения признаков в них выражаются в виде «от... до...».

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

Наиболее полную характеристику статистической совокупности дает функция распределения вероятностей случайной величины. Однако на практике часто используют ограниченное количество числовых характери-стик, называемых параметрами распределения. Эти параметры можно разделить на три класса, которые характеризуют: центр группирования; величину рассеяния (степень вариации); форму распределения вероятно-стей.

Центр группирования. Одной из основных характеристик статисти-ческой совокупности, дающей представление о том, вокруг какого центра группируются все значения, является среднее арифметическое (см. далее).

Величина рассеяния. Статистические совокупности могут иметь близкие или даже одинаковые значения центра группирования, однако от-дельные значения величин могут существенно отличаться. Происходит это из-за того, что разброс значений относительно центра бывает неодинако-

Page 263: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

263

вый: в одних случаях большой, в других – малый. Поэтому необходимо количественно измерять эти разбросы или вариации (см. далее).

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

Для характеристики формы распределения обычно используют ту математическую модель, которая наилучшим образом приближает к виду кривой распределения вероятностей, полученной при анализе эксперимен-тально полученных данных. В качестве математических моделей статисти-ческих распределений используют теоретические кривые распределения. Теоретическая кривая – это зависимость, которая описывается математи-чески, т. е. может быть выражена уравнением с определенными парамет-рами. Известно значительное количество различных распределений: число потенциально возможных статистических моделей еще больше. Однако на практике применяют лишь некоторые из них, обычно те, которые более удобны для описания какой-либо ситуации или обладают необходимыми математическими свойствами.

6.7.2 М етоды статистического анализа

Все методы статистического анализа условно делятся на первичные и вторичные.

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

К первичным методам статистической обработки относят: определе-ние среднего арифметического, дисперсии, моды и медианы.

Вторичными называют методы статистической обработки, с помо-щью которых на базе первичных данных выявляют скрытые в них стати-стические закономерности. К вторичным методам статистической обра-ботки относят: корреляционный анализ, регрессионный анализ, факторный анализ и др.

Page 264: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

264

Основные процедуры статистического анализа первичных ре-зультатов исследования

Меры центральной тенденции Рассматривая методы математической статистики, применяемые для

обработки данных тестовых исследований, можно выделить группу мето-дов которые могут описывать те или иные меры центральной тенденции. Такие меры указывают наиболее типичный результат, характеризующий выполнение теста всей группой. Самая известная из таких мер – средне-арифметическое значение ().

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

Среднеарифметическое значение М определяется по следующей формуле (6.1):

n

n

ii∑

== 1,

(6.1)

где n – количество значений Другой мерой центральной тенденции является мода (Мо) – наибо-

лее часто встречающийся результат (не путать с частотой встречаемости этого значения). В интервальном частотном распределении мода определя-ется как середина интервала, для которого частота максимальна. Так в ря-ду значений 2, 3, 4, 5, 5, 6, 6, 6, 7, 7, 8, 9 модой является 6, потому, что 6 встречается чаще любого другого числа.

Когда два соседних значения имеют одинаковую частоту и их часто-та больше частот любых других значений, мода вычисляется как среднее арифметическое этих двух значений. Так, в выборке 1, 2, 2, 2, 5, 5, 5, 6 ча-стоты рядом расположенных значений 2 и 5 совпадают и равняются 3. Эта частота больше, чем частота других значений 1 и 6 (у которых она равна 1). Следовательно, модой этого ряда будет величина Мо=(2+5)/2=3,5

Page 265: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

265

Третья мера центральной тенденции – медиана (Ме), – результат, находящийся в середине последовательности показателей, если их распо-ложить в порядке возрастания или убывания. Справа и слева от медианы (Ме) в упорядоченном ряду остается по одинаковому количеству данных (50% и 50%). Если ряд включает в себя четное количество признаков, то медианой (Ме) будет среднее, взятое как полусумма двух центральных значений ряда.

Пример 1: Найдем медиану выборки: 5, 4, 5, 6, 7, 3, 6, 2, 8, 6, 9, 7. Упорядочим выборку: 2, 3, 4, 5, 5, 6, / 6, 6, 7, 7, 8, 9. Поскольку здесь имеется

четное число элементов, то существует две ``середины'' – 6 и 6. В этом случае медиана определяется как среднее арифметическое этих значений: Ме=(6+6)/2=6

Пример 2: Найдем медиану выборки: 9, 3, 5, 8, 4, 11, 13. Сначала упорядочим выборку по величинам входящих в нее значений. Получим:

3, 4, 5, 8, 9, 11, 13. Поскольку в выборке семь элементов, четвертый по порядку элемент будет серединой ряда. Таким образом, медианой будет четвертый элемент Ме=8.

Значения Ме и Мо полезны для того, чтобы установить является ли распределение частных значений изучаемого признака симметричным и приближающимся к нормальному распределению. Среднее арифметиче-ское (М), медиана (Ме) и мода (Мо) для нормального распределения обыч-но совпадают или очень мало отличаются друг от друга.

Меры разброса данных Для более полного описания результатов эмпирического исследова-

ния используются меры разброса данных, характеризующие степень инди-видуальных отклонений от центральной тенденции.

Самый простой показатель, который можно получить для выборки – разность между максимальной и минимальной величинами данного кон-кретного вариационного ряда, который называется вариационный размах хmax-xmin

Мера разброса данных позволяет сравнивать между собой разные группы. Чем сильней варьирует измеряемый признак, тем больше величи-на разброса данных и наоборот. Необходимо отметить, что данная мера крайне неточна и неустойчива. Единственный необычно высокий или низ-кий результат может повлиять на величину размаха.

Более точный метод измерения разброса данных основан на учете разности между каждым индивидуальным результатом и среднеарифмети-ческим значением по группе. Используют среднее линейное отклонение, дисперсию и среднее квадратическое отклонение.

Page 266: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

266

Среднее линейное отклонение основано на учете индивидуальных отклонений отдельных значений от среднего арифметического данного ря-да и определяется как среднее арифметическое этих отклонений:

n

Мxd

n

ii∑

=

−= 1 , (6.2)

где М – средне арифметическое значение. Дисперсия или средний квадрат отклонения σ2 характеризует

насколько частные значения отклоняются от средней величины в данной выборке. Чем больше дисперсия, тем больше отклонение или разброс дан-ных. Дисперсия определяется по следующей формуле (6.2):

n

Mxn

ii∑

=

−= 1

2

2)(

σ , (6.3)

где σ2 – дисперсия, ∑=

−n

ii Mx

1

2)( – выражение, означающее, что для всех значений x от первого до последнего в данной выборке вычисляется разность между частными и средними значениями, эти разности возводятся в квадрат и суммируются,

n – объем выборки. Вычислим дисперсию σ2 для следующего ряда: 2, 4, 6, 8, 10. Прежде

всего, найдем среднее (М) для данного ряда, оно равно 6. Из каждого элемента ряда вычтем величину среднего этого ряда. По-

лученные величины характеризуют то, насколько каждый элемент откло-няется от средней величины в данном ряду. Экспериментальные данные этой задаче, необходимые для расчета дисперсии, представим в виде (таб-лице 6.1)

Далее разности возводят в квадрат и суммируются. Полученную сумму квадратов разностей делим на объем данной выборки. В нашем примере получится следующее: σ2 =40/5=8.

Таблица 6.1– Расчет дисперсии

n Первичный результат хi хi - М (хi – М)2 1 2 - 4 16 2 4 - 2 4 3 6 0 0 4 8 2 4 5 10 4 16

Page 267: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

267

М = 6 ∑=

=−5

1

2 40)(i

i Mx

Общий алгоритм вычисления дисперсии следующий: • вычисляется среднее по выборке; • для каждого элемента выборки вычисляется его отклонение от

среднего; • каждый элемент множества возводят в квадрат; • находится сумма этих квадратов; • эта сумма делится на общее количество членов используемой вы-

борки. Очень часто вместо дисперсии для выявления разброса частных дан-

ных относительно средней используют производную от дисперсии вели-чину, называемую стандартным отклонением. Стандартное отклонение равно квадратному корню, извлекаемому из дисперсии, и обозначается тем же знаком, только без квадрата σ.

( )

n

Мxn

ii∑

=

−= 1

2

σ , (6.4)

Эта величина также называется среднее квадратическое отклонение

(СКО) или основное отклонение и дает абсолютную оценку меры разброса и в ряде случаев оказывается более удобной характеристикой варьирова-ния, чем, дисперсия, так как выражается в тех же единицах, что и средняя арифметическая величина.

В нашем примере: 83,2540

≈=σ .

О чем же свидетельствует стандартное отклонение равное 2,83? Оно позволяет сказать, что большая часть результатов данного исследования располагается в пределах 2,83 от средней, т. е. между 3,17 (6 – 2,83) и 8,83 (6 + 2,83).

Для того чтобы лучше понять, что подразумевается под «большей частью результатов», необходимо рассмотреть те свойства стандартного отклонения, которые проявляются при нормальной или приблизительно нормальной кривой распределения, так как здесь существует прямое соот-ветствие между σ и относительным количеством случаев. На рисунке 6.1

Page 268: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

268

по горизонтальной оси отложены интервалы, соответствующие отклоне-нию в 1σ, 2σ и 3σ вправо и влево от среднего значения (М). Процент слу-чаев, приходящийся на интервал М + 1σ в нормальном распределении, ра-вен 34,13. Поскольку кривая симметрична, 34,13 случаев приходится также на интервалы от М – 1σ, так, что диапазон от – 1σ до + 1σ охватывает 68, 26 % случаев. Почти все случаи (99,72%), т. е. почти все показатели лежат в пределе от – 3σ до + 3σ относительно среднего значения.

Рисунок 6.1 – Процентное соотношение случаев для кривой нормального

распределения Другими словами, вероятность того, что случайная величина откло-

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

Чтобы понять, насколько разброс велик относительно самих значе-ний (т.е. независимо от их масштаба), требуется относительный показа-тель. Такой показатель называется коэффициентом вариации и рассчиты-вается по следующей формуле:

МV σ= , (6.5)

Коэффициент вариации измеряется в процентах (если умножить на

100%). По этому показателю можно сравнивать однородность самых раз-ных явлений независимо от их масштаба и единиц измерения. Данный

Page 269: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

269

факт и делает коэффициент вариации столь популярным. В статистике принято, что, если значение коэффициента вариации менее 33%, то сово-купность считается однородной, если больше 33%, то – неоднородной.

Page 270: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

270

Методы вторичной статистической обработки результатов ис-следования

С помощью вторичных методов статистической обработки данных проверяются, доказываются или опровергаются гипотезы, связанные с эм-пирическим исследованием.

Например, чаще всего в прикладных психолого-педагогических ис-следованиях применяются следующие методы вторичной статистической обработки результатов:

• методы сравнения двух или нескольких элементарных статистик (средних, дисперсий и т. д.) относящихся к разным выборкам;

• методы установления статистических связей между переменными (корреляционный анализ);

• методы выявления внутренней статистической структуры эмпи-рических данных (факторный анализ).

В общем, психологические задачи, решаемые с помощью методов математической статистики, условно можно разделить на несколько групп:

• задачи, требующие установления сходства или различия; • задачи, требующие группировки и классификации данных; • задачи, ставящие целью анализ источников вариативности (из-

менчивости) получаемых психологических признаков; • задачи, предполагающие возможность прогноза на основе имею-

щихся данных. Наиболее полная сводка типов задач и методов их решения дана в

таблице 6.2 Таблица 6.2 – Краткая классификация методов статистической обра-

ботки результатов исследований Задачи Условия Методы

1. Выявление раз-личий в уровне ис-следуемого призна-ка

а) 2 выборки испыту-емых

критерий Макнамары; Q критерий Розенбаума; U критерий Манна-Уитни; ϕ критерий (угловое преобразование Фи-шера)

б) 3 и больше выбо-рок испытуемых

S критерий Джонкира; H критерий Крускала-Уоллиса

2. Оценка сдвига значений исследу-емого признака

а) 2 замера на одной и той же выборке ис-пытуемых

T критерий Вилкоксона; G критерий знаков; ϕ критерий (угловое преобразование Фи-шера)

Page 271: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

271

t- критерий Стьюдента

б) 3 и более замеров на одной и той же выборке испытуемых

Х2фр критерий Фридмана

L критерий тенденций Пейджа t- критерий Стьюдента

3. Выявление раз-личий в распреде-лении признака

а) при сопоставлении эмпирического рас-пределения с теоре-тическим

χ2 критерий Пирсона λ- критерий Колмогорова-Смирнова t- критерий Стьюдента

б) при сопоставлении двух эмпирических распределений

χ2 критерий Пирсона λ критерий Колмогорова-Смирнова ϕ критерий (угловое преобразование Фи-шера)

4. Выявление сте-пени согласованно-сти изменений

а) двух признаков ϕ коэффициент корреляции Пирсона τ коэффициент корреляции Кендалла R - бисериальный коэффициент корреля-ции η корреляционное отношение Пирсона

б) трех или большего числа признаков

p коэффициент ранговой корреляции Спирмена r коэффициент корреляции Пирсона Линейная и криволинейная регрессии

5. Анализ измене-ний признака под влиянием контро-лируемых условий

а) под влиянием од-ного фактора

S критерий Джонкира L критерий тенденций Пейджа Однофакторный дисперсионный анализ Критерий Линка и Уоллеса Критерий Немени Множественное сравнение независимых выборок

б) под влиянием двух факторов одновре-менно

Двухфакторный дисперсионный анализ

Корреляционный анализ Корреляцией называют зависимость между двумя переменными ве-

личинами. Переменная – это любая величина, которая может быть измере-на и чье количественное выражение может варьировать.

При изучении корреляций стараются установить, существует ли ка-кая-то связь между двумя показателями в одной выборке (например, меж-ду ростом и весом детей или между уровнем IQ и школьной успеваемо-стью) либо между двумя различными выборками (например, при сравне-нии пар близнецов), и если эта связь существует, то увеличение одного по-

Page 272: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

272

казателя сопровождается возрастанием (положительная корреляция) или уменьшением (отрицательная корреляция) другого.

Коэффициент корреляции – это величина, которая может варьиро-вать в пределах от +1 до -1. В случае полной положительной корреляции этот коэффициент равен +1, а при полной отрицательной -1. В случаи, если коэффициент корреляции равен 0, обе переменные полностью независимы друг от друга.

В гуманитарных науках корреляция считается сильной, если ее ко-эффициент выше 0,60; если же он превышает 0,90, то корреляция считает-ся очень сильной.

Можно выделить несколько видов корреляционного анализа: линей-ный, ранговый, парный и множественный. Мы рассмотрим два вида корре-ляционного анализа – линейный и ранговый.

Коэффициент корреляции Пирсона Линейный корреляционный анализ позволяет установить прямые

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

В общем виде формула для подсчета коэффициента корреляции та-кова:

22 )()(

)()(

yyxx

yyxxr

ii

iixy

−×−

−×−=∑∑ , (6.6)

где хi - значения, принимаемые переменной X, yi- значения, принимаемые переменой Y, x – средняя по X, y – средняя по Y. Расчет коэффициента корреляции Пирсона предполагает, что пере-

менные Х и Y распределены нормально. Даная формула предполагает, что из каждого значения хi переменной

X, должно вычитаться ее среднее значение x. Это неудобно, поэтому для расчета коэффициента корреляции используют не данную формулу, а ее аналог, получаемый с помощью преобразований:

Page 273: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

273

( )( )[ ] ( )[ ]∑ ∑∑ ∑

∑∑∑−××−×

×−××=

2222

)(

iiii

iiiixy

уупxxп

xyyxnr , (6.7)

Коэффициент корреляции рангов Спирмена Коэффициент корреляции рангов, предложенный К. Спирменом, от-

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

Величина коэффициента корреляции Спирмена также лежит в ин-тервале +1 и -1. Он, как и коэффициент Пирсона, может быть положитель-ным и отрицательным, характеризуя направленность связи между двумя признаками, измеренными в ранговой шкале.

В принципе число ранжируемых признаков (качеств, черт и т.п.) мо-жет быть любым, но сам процесс ранжирования большего, чем 20 числа признаков затруднителен.

Ранговый коэффициент корреляции Спирмена подсчитывается по формуле:

)1()(6

1 2

2

−×

×−= ∑

nnD

р

где n – количество ранжируемых признаков (показателей, испытуе-мых);

D – разность между рангами по двум переменным для каждого ис-пытуемого;

∑ )( 2D - сумма квадратов разностей рангов. Регрессионный анализ Регрессионный анализ называют основным методом современной

математической статистики для выявления неявных и завуалированных связей между данными наблюдений. Если расчёт корреляции характеризу-ет силу связи между двумя переменными, то регрессионный анализ служит для определения вида этой связи и дает возможность для прогнозирования значения одной (зависимой) переменной отталкиваясь от значения другой (независимой) переменной.

Постановка задачи регрессионного анализа формулируется следую-

Page 274: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

274

щим образом. Имеется совокупность результатов наблюдений. В этой совокупно-

сти один столбец соответствует показателю, для которого необходимо установить функциональную зависимость с параметрами объекта и среды, представленными остальными столбцами. Требуется: установить количе-ственную взаимосвязь между показателем и факторами. В таком случае за-дача регрессионного анализа понимается как задача выявления такой функциональной зависимости y = f(x2, x3, …, xn), которая наилучшим обра-зом описывает имеющиеся экспериментальные данные.

Допущения: • количество наблюдений достаточно для проявления статистиче-

ских закономерностей относительно факторов и их взаимосвязей; • обрабатываемые данные содержат некоторые ошибки (помехи),

обусловленные погрешностями измерений, воздействием неучтенных слу-чайных факторов;

• матрица результатов наблюдений является единственной инфор-мацией об изучаемом объекте, имеющейся в распоряжении перед началом исследования.

Функция y = f(x2, x3, …, xn), описывающая зависимость показателя от параметров, называется уравнением (функцией) регрессии. Термин «ре-грессия» (regression (лат.) – отступление, возврат к чему-либо) связан со спецификой одной из конкретных задач, решенных на стадии становления метода.

Решение задачи регрессионного анализа целесообразно разбить на несколько этапов:

• предварительная обработка данных; • выбор вида уравнений регрессии; • вычисление коэффициентов уравнения регрессии; • проверка адекватности построенной функции результатам

наблюдений. В общем случае для стандартизованных данных функциональную

зависимость показателя от параметров можно представить в виде: y = f(x2, x3, …, xn)+ e где f – заранее не известная функция, подлежащая определению; e – ошибка аппроксимации данных. Указанное уравнение принято называть выборочным уравнением ре-

грессии.

Page 275: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

275

Функция f должна подбираться так, чтобы ошибка e в некотором смысле была минимальна. В целях выбора функциональной связи заранее выдвигают гипотезу о том, к какому классу может принадлежать функция f, а затем подбирают "лучшую" функцию в этом классе.

Частным случаем, широко применяемым на практике, является по-лином первой степени или уравнение линейной регрессии.

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

Регрессионный анализ в Exсel Ms Excel представляет широкие возможности для проведения анали-

за данных, находящихся в списке. К средствам анализа относятся: • Обработка списка с помощью различных формул и функций; • Построение диаграмм и использование карт Ms Excel; • Проверка данных рабочих листов и рабочих книг на наличие оши-

бок; • Структуризация рабочих листов; • Автоматическое подведение итогов (включая мастер частичных

сумм); • Консолидация данных; • Сводные таблицы; • Специальные средства анализа выборочных записей и данных -

подбор параметра, поиск решения, сценарии и др. В состав Microsoft Excel входит набор средств анализа данных (так

называемый пакет анализа), предназначенный для решения сложных ста-тистических и инженерных задач. Для проведения анализа данных с по-мощью этих инструментов следует указать входные данные и выбрать па-раметры; анализ будет проведен с помощью подходящей статистической

Page 276: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

276

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

Статистические данные приводятся в виде длинных и сложных ста-тистических таблиц, поэтому бывает весьма трудно обнаружить в них имеющиеся неточности и ошибки.

Графическое же представление статистических данных помогает легко и быстро выявить ничем не оправданные пики и впадины, явно не соответствующие изображаемым статистическим данным, аномалии и от-клонения.

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

Регрессия является инструментом пакета анализа данных Microsoft Excel. Линейный регрессионный анализ заключается в подборе графика для набора наблюдений с помощью метода наименьших квадратов. Ре-грессия используется для анализа воздействия на отдельную зависимую переменную значений одной или более независимых переменных.

Факторный анализ При исследовании сложных объектов, явлений, систем факторы,

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

Для выявления факторов, определяющих измеряемые признаки объ-ектов, используются методы факторного анализа

В качестве примера применения факторного анализа можно указать изучение свойств личности на основе психологических тестов. Свойства личности не поддаются прямому измерению. О них можно судить только по поведению человека или характеру ответов на вопросы. Для объяснения

Page 277: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

277

результатов опытов их подвергают факторному анализу, который и позво-ляет выявить те личностные свойства, которые оказывают влияние на по-ведение индивидуума.

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

Цель факторного анализа – сконцентрировать исходную информа-цию, выражая большое число рассматриваемых признаков через меньшее число более ёмких внутренних характеристик явления, которые, однако, не поддаются непосредственному измерению

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

Для выявления наиболее значимых факторов и, как следствие, фак-торной структуры, наиболее оправданно применять метод главных компо-нент (МГК). Суть данного метода состоит в замене коррелированных ком-понентов некоррелированными факторами. Другой важной характеристи-кой метода является возможность ограничиться наиболее информативны-ми главными компонентами и исключить остальные из анализа, что упро-щает интерпретацию результатов. Достоинство МГК также в том, что он – единственный математически обоснованный метод факторного анализа.

Таким образом, можно выделить две цели факторного анализа: • определение взаимосвязей между переменными, их классифика-

ция; • сокращение числа переменных. Рассмотрим конкретный пример. В интересах науки планируете со-

брать следующие данные у случайно сформированной выборки, например, у 200 студентов:

• V1 – вес тела (в кг);

Page 278: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

278

• V2 – степень невнятности речи (ранжируется по шкале от 1 до 5); • V3 – длина ноги (в см); • V4 – разговорчивость (ранжируется по шкале от 1 до 5); • V5 – длина руки (в см); • V6 – степень шатания при попытках пройти по прямой линии

(ранжируется по шкале от 1 до 5). Кажется вероятным, что V1 ,V3 и V5 будут варьировать совместно,

поскольку крупные люди будут склонны иметь длинные руки и ноги и больше весить. Все эти три пункта измеряют некоторое фундаментальное свойство индивидуумов вашей выборки: их размеры. Точно так же вероят-но, что V2, V4 и V6 будут варьировать совместно, так как количество упо-требленного алкоголя, вероятно, будет связано с четкостью речи, разго-ворчивостью и с осложнениями при попытках пройти по прямой линии. Таким образом, хотя мы собрали шесть фрагментарных данных, эти пере-менные измеряют только двумя факторами: размеры тела и степень опья-нения.

Исследовательский факторный анализ, по существу, выполняет две функции:

• он показывает, сколько отдельных психологических факторов измеряется данным набором переменных. В приведенном выше примере такими двумя факторами являются размеры тела и степень опьянения;

• он показывает, какие именно факторы измеряют использованные переменные. В приведенном выше примере было показано, что VI , V3 и V5 измеряют один фактор и V2, V4 и V6 измеряют другой, совершенно от-личный фактор.

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

Page 279: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

279

6.7.3 К омпьютерны е программы для статистического анализа

Потребность в средствах статистического анализа данных в различ-ных областях деятельности, особенно в науке, очень велика, что и послу-жило причиной развития рынка компьютерных программ для статистиче-ской обработки данных. За последние 20 лет активное развитие получили компьютерные программы, позволяющие проводить статистический ана-лиз больших объемов данных с целью выявления закономерностей, срав-нения вероятных альтернатив выбора, построения прогнозов развития со-бытий, обнаружения связей между явлениями и процессами и пр. Суще-ствующие программы постоянно совершенствуются в части ускорения ра-боты с данными, улучшения представления результатов анализа данных, повышения удобства интерфейса, совершенствования справочной систе-мы, увеличения числа встроенных в программу статистических процедур, средств обработки данных и пр.

Отрасль развивается стремительными темпами. На сегодняшний день на рынке представлено около тысячи компьютерных программ для статистической обработки данных (далее – статистические пакеты). Разно-образие статистических пакетов обусловлено многоплановостью задач об-работки данных с применением различных типов статистических процедур анализа для поиска ответов на вопросы из различных областей человече-ской деятельности.

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

• соответствие характеру решаемых задач; • объем обрабатываемых данных; • требования, предъявляемые к квалификации пользователя (уро-

вень знаний в области статистики); • имеющееся в наличии компьютерное оборудование. Статистические пакеты по признаку функциональности могут быть

разделены на 3 основные группы.

Page 280: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

280

Универсальные пакеты, или пакеты общего назначения (например, SPSS, STATA, STATISTICA, S-PLUS, Stadia, STATGRAPHICS, SYSTAT, Minitab).

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

Для того чтобы статистический пакет считался универсальным, он должен удовлетворять ряду требований:

• содержать достаточно широкий набор стандартных статистиче-ских методов;

• быть достаточно простым для быстрого освоения и использова-ния непрофессиональным пользователем;

• работать с достаточно большими базами данных и отвечать вы-соким требованиям к вводу, преобразованию и организации хранения дан-ных;

• осуществлять обмен данными с широко распространенными па-кетами и базами данных;

• иметь обширный набор средств графического представления данных и результатов их анализа;

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

Профессиональные пакеты (например, SAS, BMDP). Профессиональные пакеты отличаются от универсальных тем, что

позволяют работать со сверхбольшими объемами данных, применять узко-специализированные методы анализа, создавать собственную систему об-работки данных. Как правило, подобные пакеты сложны в освоении для

Page 281: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

281

непрофессионалов. В то же время подготовленным пользователям работа с профессиональным пакетом предоставит больше возможностей для глубо-кого и детального анализа данных, построения сложных моделей и адапта-ции системы к собственным потребностям. Профессиональные пакеты бо-лее дорогостоящи, чем универсальные. Например, стоимость покупки SAS Analytics Pro на один год для индивидуального пользования составляет 5 360 EUR. Эти факторы делают современные профессиональные статисти-ческие пакеты слишком тяжеловесными для массового применения в раз-личных областях деятельности.

Специализированные пакеты (например, BioStat, MESOSAUR, DATASCOPE).

В некоторых областях деятельности анализируемые данные настоль-ко специфичны, что к ним следует применять особые методы статистиче-ского анализа, как правило, не представленные в универсальных пакетах.

Специализированные пакеты позволяют проводить анализ с исполь-зованием ограниченного числа специализированных статистических мето-дов или применимы к использованию для решения вопросов, относящихся к отдельно взятой предметной области. Как правило, с подобными стати-стическими пакетами работают специалисты, хорошо знакомые с метода-ми анализа данных в той области, на которую ориентирован пакет. Так, статистический пакет BioStat создан для анализа данных в области биоло-гии. Российский статистический пакет MESOSAUR специализируется на анализе одномерных и многомерных временных рядов и построении ре-грессионных моделей.

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

Большинство представленных на рынке статистических пакетов об-ладают гибкой модульной структурой, которая может пополняться и рас-ширяться за счет пользовательских модулей, дополнительно закупаемых или находящихся в свободном доступе в Интернете. Подобная гибкость позволяет адаптировать большинство пакетов к потребностям конкретного пользователя.

По мнению профессионалов, статистический пакет должен удовле-творять следующему минимальному набору требований:

• модульность;

Page 282: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

282

• ассистирование при выборе способа обработки данных; • использование простого проблемно-ориентированного языка для

формулировки задания пользователя; • автоматическая организация процесса обработки данных; • ведение банка данных пользователя и составление отчета о ре-

зультатах проделанного анализа; • диалоговый режим работы пользователя с пакетом; • совместимость с другим программным обеспечением. Рассмотрим коротко наиболее известные и распространенные паке-

ты. Пакет SPSS (Statistical Package for the Social Sciences) – универсаль-

ный статистический пакет компании SРSS Inc5. Первая версия пакета была выпущена в 1968 г. В 2009 г. компания IBM поглотила SPSS Inc., поэтому новая версия пакета включает в свое название аббревиатуру IBM (IBM SPSS Statistics 19).

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

SРSS является модульной программой. Ее основу составляет базо-вый модуль, позволяющий осуществлять управление данными и содержа-щий наиболее распространенные методы статистического анализа данных: проведение описательной статистики; построение линейных и нелинейных моделей; осуществление преобразования данных; проведение факторного, кластерного, дисперсионного анализов; вычисление корреляций; построе-ние графиков; подготовка отчетов и пр.

Для проведения расширенного и углубленного анализа данных могут быть установлены дополнительные модули пакета. Для пакета IBM SPSS Statistics 19 разработаны 16 различных модулей. Достоинства SPSS:

• развитый аппарат статистического анализа; • универсальность (может быть использован для решения широ-

кого круга вопросов из различных предметных областей, требующих про-ведения статистического анализа данных);

• широкий набор статистических и графических процедур (более 50 типов диаграмм) анализа данных, а также процедур создания отчетов;

• высокая скорость вычислений, простой и удобный интерфейс; • детальная контекстно-ориентированная справочная система,

позволяющая неопытному пользователю с большей легкостью ориентиро-

Page 283: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

283

ваться в программе; • возможность свободного скачивания демонстрационной версии

продукта на официальном сайте компании, наличие версий продукта на различных языках;

• совместимость с операционными системами Windows, Mac, Linux;

• наличие значительного количества литературы по работе с паке-том.

Недостатки SPSS: • высокие требования к системе компьютера (требуется 1GB опе-

ративной памяти, 800MB памяти на жестком диске и процессор с частотой 1GHz и выше);

• высокая цена по сравнению со статистическими пакетами ана-логичного уровня (стоимость покупки для индивидуального пользования сроком на год составляет около 1000 долл.).

Пакет Stata – универсальный статистический пакет компании StataCorp7. Первая версия пакета была выпущена в 1985 г. На сегодняш-ний день разработана 11-я версия пакета (Stata 11).

Пакет Stata позиционируется как инструмент анализа, предназначен-ный для специалистов, которые занимаются научными исследованиями в различных областях знаний: общественные науки (экономика, политология и пр.), медицина (биостатистика, эпидемиология и пр.) и т. д.

Stata предоставляет пользователям следующие возможности стати-стического анализа данных:

• динамические факторные модели, линейные, обобщенные линей-ные модели и нелинейные модели, многоуровневые смешанные модели, модели выбытия;

• обобщенные оценки уравнений; • непараметрические методы, методы повторных выборок и стати-

стического эксперимента; • проверка гипотез и работа с оцененными моделями; • максимизация функций правдоподобия, заданных пользователем; • матричные команды. Достоинства Stata: • широкий набор средств статистического анализа данных; • широкий спектр возможностей по управлению данными (воз-

можности комбинирования и изменения наборов данных, управления пе-ременными и пр.);

Page 284: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

284

• возможность программирования всей последовательности команд (начиная от загрузки данных до проведения всех этапов их анализа);

• использование координатного указателя; • интерактивный справочник; • создание графики полиграфического качества; • возможность написания собственных программных модулей; • совместимость с операционными системами Windows, Macintosh

и Unix (включая Linux); • полное документационное сопровождение ("Базовое справочное

руководство" с более чем 1800 страницами информации, содержащее по-дробные примеры и ссылки на литературу по статистике);

• экспорт результатов в MS Office и SAS; • для работы программы требуется лишь 512 MB оперативной па-

мяти, сама программа занимает 250 MB на жестком диске компьютера; • возможность запуска команды, как через соответствующий пункт

меню, так и через написание команды в командной строке. Недостатки Stata: • отсутствие возможности полноценного экспорта и импорта дан-

ных в базы данных, электронные таблицы и текстовые процессоры; • возможность прямого открытия в программе лишь файлов с раз-

решением .dta. Пакет STATISTICA – универсальный статистический пакет компа-

нии StatSoft Inc1. Первая версия пакета (STATISTICA for DOS) была вы-пущена в 1991 г. На сегодняшний день разработана 9-я версия пакета (STATISTICA 9). Русифицирована только 6-я версия (STATISTICA 6).

Стандартную комплектацию пакета STATISTICA составляют три модуля, которые могут приобретаться как единым пакетом, так и отдельно.

Базовый пакет STATISTICA Base предоставляет обширные возмож-ности выбора основных типов статистического анализа. Для эффективной работы базового пакета требуется как минимум 256 MB оперативной па-мяти. Минимальные требования к скорости процессора – 500 MHz.

Разработчики STATISTICA утверждают, что пакет может приме-няться для решения задач в таких областях, как:

• НИОКР, контроль качества, процесс мониторинга в химической, фармацевтической промышленности и в производстве потребительских товаров;

• гарантийный анализ и приложения для удаленного мониторинга в обрабатывающей промышленности;

Page 285: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

285

• анализ рисков, сегментация потребителей и оценка кредитоспо-собности заемщиков в банковской сфере, в сфере предоставления финан-совых услуг и в страховой деятельности.

Возможны различные варианты установки пакета в зависимости от целей и задач пользователя:

• однопользовательская версия (Single-User); • сетевая версия (Concurrent Network) для работы в локальных вы-

числительных сетях; • Enterprise – версия для применения в вычислительных системах и

крупных организациях • Web-Based – версия для использования в крупных сетях через

веббраузер. Пакет предоставляет пользователям следующие возможности стати-

стического анализа данных: • исследование корреляций между переменными; • диаграмма рассеяния, матричная диаграмма рассеяния; • быстрые основные статистики и блоковые статистики (интерак-

тивные средства, позволяющие одним щелчком мыши вычислять основные статистики и строить графики в любой момент в течение сеанса работы);

• интерактивный калькулятор вероятностных распределений (поз-воляет интерактивно исследовать структуру распределений, например, за-висимость вероятности от параметров);

• анализ многомерных откликов, многомерное шкалирование; • анализ при помощи временных рядов и прогнозирование времен-

ных зависимостей, в том числе анализ сезонных колебаний. Достоинства STATISTICA: • реализован обмен данными между STATISTICAи Windows-

приложениями; • результаты анализа в виде графиков, таблиц и текста могут быть

сохранены в файле с форматом RTF, который открывается и редактируется в MS Word;

• возможность расширения системы при помощи создания про-грамм на встроенном в STATISTICA языке программирования;

• исходные данные из MS Excel можно легко импортировать в STATISTICA;

• возможность записи макросов для автоматизации выполнения однотипных задач;

• программа способна обрабатывать большие массивы данных –

Page 286: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

286

базы данных с числом переменных до 32 000 и практически неограничен-ным числом наблюдений.

В пакете представлены несколько сотен типов графиков 2D, 3D и 4D, матрицы и пиктограммы; предоставляется возможность разработки соб-ственного дизайна графика. Средства управления графиками позволяют работать одновременно с несколькими графиками, изменять размеры сложных объектов, добавлять художественную перспективу и ряд специ-альных эффектов, разбивку страниц и быструю перерисовку. Например, 3D-графики можно вращать, накладывать друг на друга, сжимать или уве-личивать.

STATISTICA обладает огромными возможностями для построения графиков непосредственно из таблиц исходных данных и таблиц результа-тов. Построение графических объектов и анализ данных в пакете тесно ин-тегрированы. После получения результатов статистического анализа их можно с легкостью представить графически посредством команды Быст-рые статистические графики. В разных модулях системы имеются свои специальные графики, учитывающие особенности получаемых в них ре-зультатов.

Начинающие пользователи могут начать работу со специальной вер-сии, разработанной для обучения основам статистических методов – Studеnt Еditiоn оf STATISTICA. Эта версия представляет собой урезанный вариант пакета и позволяет анализировать файлы данных, включающих не более 400 наблюдений.

Пакет STADIA – (Statistical Dialogue System) – универсальный ста-тистический пакет, разработанный специалистами Московского государ-ственного университета им. М.В. Ломоносова совместно с НПО "Инфор-матика и компьютеры". Первая версия пакета была выпущена в 1989 году. На сегодняшний день разработана 7-я версия пакета STADIA 7.0.

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

Пакет предоставляет пользователям широкий набор методов стати-стического анализа данных: описательная статистика, дисперсионный, корреляционный и спектральный анализ, сглаживание, прогнозирование, простая, нелинейная регрессия, кластерный и факторный анализ, методы контроля качества, анализ и замена пропущенных значений. Также воз-можно построение и редактирование 2-х, 3-х и многомерной графики: за-

Page 287: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

287

висимости, прогнозы, диаграммы рассеяния, карты, гистограммы, столби-ковые, башенные и круговые диаграммы, установка размеров, надписей по осям и под рисунком и пр.

Достоинства STADIA: • наличие системы контекстной экранной помощи, включающей

объемный гипертекстстовый справочник и экспертную систему по выбору метода статистического анализа;

• обработка больших объемов данных (до 32 000 наблюдений); • наличие режима выдачи оглавления архива данных с коммента-

риями; • селективный поиск файлов по контексту комментариев, присво-

енных архиву с данными; • для работы программы требуется лишь 8 MB оперативной памя-

ти, сама программа занимает 4.1 MB на жестком диске компьютера; • экспорт данных и результатов. Недостатки STADIA: • наличие только русскоязычной версии; • несовместимость с операционными системами, отличными от

Windows.

Page 288: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

288

Т Е М А 7 М Е Т ОДЫ ОП Т И М И ЗА Ц И И И С И С Т Е М Ы П ОДДЕ РЖ К И П РИ Н Я Т И Я РЕ Ш Е Н И Й

7.1 П онятие оптимизации и математическая модель оптимизационны х задач

Оптимизация – процесс нахождения экстремума (максимума или минимума) определённой функции или выбора наилучшего (оптимально-го) варианта из множества возможных. Многие вопросы, требующие ре-шения, в хозяйственной деятельности связаны с такого рода задачами:

• проектирование изделия заданной стоимости с наилучшими свойствами, либо с заданными свойствами наименьшей стоимости;

• задачи распределения ресурсов вообще и задачи распределения ресурсов во времени;

• выбор критерия и анализ принимаемого решения. В общем виде задачу оптимизации можно представить следующим

образом:

==≤

nj,miD xd

b)(xg)F = f(x

jjj

iji

j

,1 ;1 где ,

,

max

(7.1)

Запись (7.1) и является общей формой записи задачи оптимизации. В эту систему входят три составляющие.

1. ЦФ – целевая функция (F = f(xj) → max) или критерий оптими-зации, показывает, в каком смысле решение должно быть оптимальным, т. е. наилучшим. При этом возможны 3 вида назначения целевой функции:

• максимизация; • минимизация; • назначение заданного значения. 2. ОГР – ограничения устанавливают зависимости между пере-

менными. Они могут быть как односторонними, как в нашем случае gi(xj) ≤ bi, так и двусторонними аi ≤ gi(xj) ≤ bi

3. ГРУ – граничные условия (dj≤xj≤Dj) показывают, в каких пределах могут быть значения искомых переменных в оптимальном решении.

Решение задачи, удовлетворяющее всем ограничениям и граничным условиям, называется допустимым. Важной характеристикой задачи опти-мизации является ее размерность, определяемая числом переменных п и

Page 289: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

289

числом ограничений m. Соотношение этих величин является определяю-щим при постановке задачи оптимизации. Возможны три соотношения n < m, n = m, п > m, которые мы и рассмотрим.

1. n < m – такие задачи решения не имеют. 2. n = m – задача имеет одно решение 3. п < m – может быть бесчисленное множество решений. Таким образом, условие п > m – это непременное требование для

задач оптимизации. Чтобы из всех возможных решений выбрать только одно, необходи-

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

Так, если при принятии решения требуется максимизировать какую-то величину, например, прибыль, производительность или надежность, то в этом случае для оптимального решения критерий будет иметь самое большое значение из всех допустимых. Если же требуется минимизация критерия (затраты, расход материала, простой оборудования), то для опти-мального решения критерий будет иметь самое меньшее значение из всех допустимых.

7.2 К лассификация математических моделей и задач оптимизации

Задача, в которой нет ограничений, называется оптимизационной за-дачей без ограничений или задачей безусловной оптимизации. В этом случае ищут абсолютный экстремум.

При решении практических задач встречаются, как правило, с опти-мизацией при наличии некоторого количества ограничений на управляе-мые переменные. Такие ограничения существенно уменьшают размеры области, в которой ищется оптимум. С одной стороны, уменьшение разме-ров допустимой области должно упростить процедуру поиска оптимума. Но, с другой стороны, при наличии ограничений может нарушаться основ-ное математической условие, в соответствии с которым оптимум должен достигаться в точке, характеризующейся нулевым градиентом. Например, безусловный минимум функции f(x)=(х-2)2 имеет место в точке x=2. Но ес-

Page 290: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

290

ли задача минимизации решается с учетом ограничения x≥4, то будет найден условный минимум, которому соответствует точка x=4.

Задачи, в которых есть ограничения на переменные называются за-дачей оптимизации с ограничениями или задачей условной оптимизации.

Задачи безусловной оптимизации с одной переменной составляют простейший, но вместе с тем весьма важный подкласс оптимизационных задач.

К прямым методам одномерного поиска относят методы, в которых для отыскания экстремума не используются производные первого и выс-ших порядков. В этих методах направления поиска определяются на осно-ве последовательных вычислений значений анализируемой функции.

Рассмотрим классификацию математических моделей оптимизаци-онных задач в зависимости от исходных данных.

Исходными данными для математической модели являются: целевая функция F(xj), левые части ограничений gi(xj) и их правые части bi,. Ис-ходные данные могут быть детерминированными и случайными. Детерми-нированными называются такие исходные данные, когда при составлении модели их точные значения известны. В достаточно распространенных за-дачах распределения ресурсов точное значение имеющегося ресурса, а также других элементов, входящих в модель, может быть заранее неиз-вестно. В таких случаях эти элементы модели являются случайными вели-чинами.

Искомые переменные могут быть непрерывными и дискретными. Непрерывными называются такие величины, которые в заданных гранич-ных условиях могут принимать любые значения. Дискретными называются такие переменные которые могут принимать только заданные значения. Целочисленными называются такие дискретные переменные, которые мо-гут принимать только целые значения, например, количество используе-мых станков, количество продукции.

Зависимости между переменными (как целевые функции, так и огра-ничения) могут быть линейными и нелинейными. При этом следует иметь в виду, что если в задаче хотя бы одна зависимость нелинейная, то и вся за-дача является нелинейной.

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

• линейного программирования;

Page 291: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

291

• нелинейного программирования; • целочисленного программирования; • стохастического программирования; • динамического программирования. Помимо того, методы решения делятся на: • аналитические; • численные; • графические. Графический метод решения задач линейного программирования да-

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

7.3 П римеры оптимизационны х задач

7.3.1 Задача Штейнера Классическая задача Штейнера формулируется так: требуется найти

точку x, сумма расстояний от которой до заданных точек x1, ..., xn мини-мальна. Эта задача типично оптимизационная:

(7.2)

7.3.2 Задача о рационе Пусть имеется n различных пищевых продуктов, содержащих m раз-

личных питательных веществ. Обозначим через aij содержание (долю) j-го питательного вещества в i-ом продукте, через bj – суточную потреб-ность организма в j-ом питательном веществе, через ci – стоимость едини-цы i-го продукта. Требуется составить суточный рацион питания мини-мальной стоимости, удовлетворяющий потребность во всех питательных веществах. Если обозначить через xi суточное потребление i-го продукта, то эта задача может быть формализована следующим обра-зом. Нужно минимизировать функцию:

(7.3)

Page 292: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

292

при условиях (рацион должен содержать не менее суточной потребности в каждом из питательных веществ):

(7.4)

xi ≥ 0, mj,ni ,1 ;1 где ==

7.3.3 Транспортная задача. Эта задача – классическая задача линейного программирования. К

ней сводятся многие оптимизационные задачи. Формулируется она так. На m складах находится груз, который нужно развезти n потребителям. Пусть ai (i = 1, ..., n) – количество груза на i-ом складе, а bj (j = 1, ..., m) – потреб-ность в грузе j-го потребителя, cij – стоимость перевозки единицы груза с i-го склада j-му потребителю. Требуется минимизировать стоимость перево-зок. Если обозначить через xij объем перевозок с i-го склада j-му потреби-телю, то транспортная задача формализуется так:

(7.5)

(все потребители должны быть удовлетворены),

(7.6)

(весь груз должен быть доставлен потребителю),

(7.7)

xij ≥ 0 (нельзя перевозить груз от потребителя на склад).

mj,ni ,1 ;1 где == (7.8)

7.3.3 Задачи о распределении ресурсов Общий смысл таких задач – задача оптимального использования ре-

сурсов. Пусть некоторая производственная единица (цех, предприятие, объединение и т.д.), исходя из конъюнктуры рынка, технических возмож-

Page 293: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

293

ностей и имеющихся ресурсов, может выпускать n различных видов про-дукции, известных под номерами j.

При выпуске продукции предприятие ограничено имеющимися ре-сурсами b, количество которых обозначим m. Известны также технологи-ческие коэффициенты aij, которые показывают норму расхода i-го ресурса на производство единицы j-ой продукции. Эффективность выпуска едини-цы j-и продукции характеризуется прибылью pj.

Требуется определить план выпуска продукции хj=(х1, х2, ..., xп), максимизирующий прибыль предприятия при заданных ресурсах. Эта за-дача может быть формализована следующим образом. Нужно максимизи-ровать функцию:

(7.9)

при ограничениях:

(7.10)

nj,mi ,1 ;1 где ==

Если задается ассортимент продукции, т. е. его объемы должны быть заключены в некоторых границах Dн

j и Dвj: тогда используются следую-

щие ограничение: Dвj:≥xi ≥ Dн

j. Модель задачи оптимального использования ресурсов лежит в осно-

ве моделей оптимизации годовой производственной программы предприя-тия. В модель включаются ограничения по фонду времени работы обору-дования.

Сохраняя прежние обозначения, обозначим через αj и сj соответ-ственно отпускную цену и затраты на единицу j-й продукции. В качестве критерия оптимальности могут быть приняты:

1) максимум прибыли

(7.11)

2) минимум затрат на производство:

Page 294: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

294

(7.12)

3) максимум выпуска в стоимостном выражении (выручки от реа-лизации продукции):

(7.13)

7.4 М етоды решения оптимизационны х задач

Методы решения оптимизационных задач существенно зависят от свойств и видах целевой функции, уравнений связи и типах ограничений.

В целом можно выделить аналитические и численные методы реше-ния этих задач.

Аналитические методы основаны на том, что необходимым условиям наличия экстремума функции многих переменных является равенство ну-лю частных первых производных (точки, где производная равна нулю, называются стационарными), а для определения достаточных условий не-обходим анализ второго дифференциала функции, т.е. аналитические ме-тоды требуют решения систем дифференциальных уравнений, что не все-гда возможно. Кроме того, целевая функция может быть не только не диф-ференцируемой, но даже не аналитически заданной. Поэтому аналитиче-ские методы имеет ограниченное применение; для решения задачи на практике чаще используют приближенные численные методы.

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

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

Page 295: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

295

оценке методов большое значение придается эффективности и удобству их реализации на ЭВМ.

Математическое программирование можно рассматривать как сово-купность самостоятельных разделов, занимающихся изучением и разра-боткой методов решения определенных классов задач.

7.4.1 Методы безусловной оптимизации Как уже говорилось, оптимизационная задача, в которой нет ограни-

чений, называется задачей без ограничений или задачей безусловной оп-тимизации.

Задачи безусловной оптимизации с одной переменной, называются задачами с одной переменной и составляют простейший, но вместе с тем весьма важный подкласс оптимизационных задач.

К прямым методам решения таких задач относятся численные мето-ды, в которых для отыскания экстремума не используются производные первого и высших порядков, а направления поиска определяются на осно-ве последовательных вычислений значений функции f(x).

В этих методах, после задания начальной точки х0 последовательно ищутся точки х1, х2, … хk такие, чтобы выполнялось неравенство вида:

f(х0) > f(х1) > f(х2),…> f(хk). Новая точка хk+1 ищется с помощью итерационной процедуры, в ко-

торой выбор нового приближения к точке минимума определяется сравне-нием значений функции f(x) в нескольких точках.

Простейшим из прямых методов является метод перебора. Для ре-шения задачи минимизации функции одной переменной f(x)→min, задан-ной на отрезке [a, b], такой метод заключается в последовательном перебо-ре всех значений точек, делящих отрезок на n равных частей, с вычислени-ем значений целевой функции в каждой точке. Путем выбора наименьшего из всех вычисленных значений функции и находится решение задачи.

Существуют и другие методы: метод дихотомии, метод золотого се-чения и метод Фибоначчи, которые объединяются одной идеей: на каждом шаге алгоритма отсекается отрезок, включающийся в [a ,b], на котором за-ведомо нет точки x – решения задачи. Эти методы часто называют метода-ми отсечений (исключений) интервалов.

7.4.2 Методы условной оптимизации Разработаны многочисленные методы решения таких задачи при

различных видах целевой функции, уравнений связи и типах ограничений:

Page 296: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

296

В зависимости от свойств целевой функции и функции ограничений выде-ляют два основных класса:

• задачи линейного программирования, • задачи нелинейного программирования. В решении задач линейного программирования часто используется

симплекс-метод. В общем виде, когда в задаче участвуют N-неизвестных, область до-

пустимых решений, задаваемая системой ограничивающих условий, мож-но представить выпуклым многогранником в n-мерном пространстве, а оптимальное значение целевой функции достигается в одной или несколь-ких вершинах. Решить данные задачи графически, когда количество пере-менных более 3 весьма затруднительно. Существует универсальный спо-соб решения задач линейного программирования, называемый симплекс-методом.

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

В решении задач нелинейного программирования со многими пере-менными часто используется методы спуска (в частности, градиентный ме-тод):

• задается начальная точки поиска, из которой производится движение к минимуму. Выбор начальной точки производится, исходя из физического содержания решаемой задачи и наличия априорной информа-ции о положении точек экстремума.

• выбирается направление поиска очередной точки (на основа-нии исследования локальных свойств целевой функции) и величина шага до новой точки вдоль выбранного направления. Выбор направления и ве-личины шага определяется выбранным методом решения.

Page 297: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

297

• осуществляется переход в очередную точку итерационного процесса.

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

Различные методы спуска отличаются друг от друга способами вы-бора двух параметров – направления спуска и длины шага вдоль этого направления.

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

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

• Сгенерировать начальную популяцию (случайную совокуп-ность неоптимальных решений).

• Выбрать родительские пары. • Для каждой родительской пары с использованием оператора

скрещивания породить потомство. • К порожденным особям применить оператор мутации, внеся

случайные искажения. • Произвести отбор особей из популяции по значению их фит-

несс-функции, применив оператор редукции. • Повторять шаги 2–5, пока не выполнится критерий остановки. Оценка эффективности методов оптимизации

Page 298: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

298

Большое разнообразие итерационных алгоритмов ставит перед поль-зователем задачу выбора. Для этого следует выставить критерии, на осно-вании которых один алгоритм будет считаться более предпочтительным, нежели другой. С этой целью обычно используют следующие оценки:

• точность поиска – значение окрестности локального оптимума, в которую приводит алгоритм после выполнения заданного числа итера-ций.

• скорость сходимости – число итераций, необходимое для до-стижения заданной точности.

• время счета – время поиска на ЭВМ локального оптимума с за-данной точностью, отнесенное к коэффициенту сложности задачи (или к быстродействию ЭВМ).

• стабильность – свойство алгоритма незначительно увеличивать число итераций при малых возмущениях выбора начальных точек, а также вследствие погрешности вычислений.

• надежность – свойство алгоритма приводить к оптимуму при многократном повторении поиска из разных начальных точек.

7.4.3 Вариационные задачи и их решение Многие задачи естествознания допускают описание исследуемых

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

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

Поскольку прикладные вариационные принципы описываются, как правило, интегральными функционалами:

(7.14)

Page 299: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

299

необходимое условие экстремума приводит к краевой задаче для дифференциального уравнение Эйлера – Лагранжа второго порядка.

0=′∂

∂−

∂∂

yL

dxd

yL

, y(a)=ya, y(b)=yb (7.15)

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

Второй путь решения вариационной задачи состоит в применении прямых методов, которые позволяют приближенно найти функцию, даю-щую минимум функционалу и удовлетворяющую заданным краевым усло-виям. Основная идея прямых методов состоит в построении минимизиру-ющей последовательности функций, сходящихся к решению рассматрива-емой задачи и являющихся решениями более простой задачи, в пределе совпадающей с данной. Способ построения минимизирующих последова-тельностей характеризует каждый из прямых методов, употребляемых в вариационном исчислении, и соответствующий алгоритм построения при-ближенных решений рассматриваемой вариационной задачи.

Для решения задач оптимизации широко используются различные

программы. Одной из наиболее известной из них является программа По-иск решения электронных таблиц Excel, которая позволяет решать задачи линейного, нелинейного, целочисленного программирования и, что очень важно для прикладных задач, дает развернутый отчет по устойчивости оп-тимального плана. Для решения линейных задач оптимизации на основе Excel «Поиск решения» используется симплекс-метод. При численном решении задач нелинейного программирования используется алгоритмы градиентного спуска и эволюционного поиска.

7.5 С истема поддержки принятия решений

Система поддержки принятия решений (СППР, Decision Support System, DSS) – компьютерная автоматизированная система, целью которой является помощь людям, принимающим решение в сложных условиях для полного и объективного анализа предметной деятельности.

Page 300: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

300

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

Система поддержки решений решает две основные задачи: выбор наилучшего решения из множества возможных (оптимизация), упорядоче-ние возможных решений по предпочтительности (ранжирование).

В обеих задачах первым и наиболее принципиальным моментом яв-ляется выбор совокупности критериев, на основе которых в дальнейшем будут оцениваться и сопоставляться возможные решения. Система СППР помогает пользователю сделать такой выбор.

Основные классы СППР представлены на рисунке 7.1, где они сгруппированы в уровни: системы расположенные выше используют дан-ные, полученные при помощи систем, расположенных ниже (КИС чаще всего являются источником данных).

Для анализа и выработок предложений в СППР используются разные методы. Это могут быть:

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

Page 301: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

301

Рисунок 7.1 – Классы ИС поддержки принятия решения при управлении пред-приятием.

Некоторые из этих методов были разработаны в рамках искусствен-

ного интеллекта. Если в основе работы СППР лежат методы искусственно-го интеллекта, то говорят о интеллектуальной СППР или ИСППР.

По взаимодействию с пользователем выделяют три вида СППР: • пассивные (помогают в процессе принятия решений, но не мо-

гут выдвинуть конкретного предложения); • активные (непосредственно участвуют в разработке правиль-

ного решения); • кооперативные (предполагают взаимодействие СППР с поль-

зователем). Выдвинутое системой предложение пользователь может доработать,

усовершенствовать, а затем отправить обратно в систему для проверки. После этого предложение вновь представляется пользователю, и так до тех пор, пока он не одобрит решение.

Результаты внедрения СППР соответствуют предоставлению воз-можности получения ответов на вопросы:

• здоров ли бизнес? • кто мой лучший клиент? • какой мой лучший продукт или услуга? • какого поставщика мне выгодно выбрать и почему? • где мы типично не укладываемся в сроки и почему? • какова эффективность деятельности нашего персонала?

Page 302: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

302

• какая дочерняя компания внесла наибольший (наименьший) вклад в результат?

• что показывает анализ фондоотдачи оборудования? • какой сценарий и подход выбрать при слиянии (реструктури-

зации) компаний? • и т.п. Решаемые вопросы СППР позволяет облегчить работу руководите-

лям предприятий и повысить ее эффективность и контроль над деятельно-стью организации. Они значительно ускоряют решение проблем в бизнесе и дает большие преимущества по сравнению с конкурирующими структу-рами.

7.6 Э кспертны е системы : понятие, назначение, архитектура, отличительны е особенности

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

Взаимодействие эксперта, пользователя и структурных частей си-стемы можно представить в виде следующей базовой структуры (рисунок 7.2).

Рассмотрим архитектуру экспертной системы. База знаний. Основу ЭС составляет база знаний (БЗ), хранящая мно-

жество фактов и набор правил, полученных от экспертов, из специальной литературы. БЗ отличается от базы данных тем, что в базе данных единицы информации представляют собой не связанные друг с другом сведения, формулы, теоремы, аксиомы. В БЗ те же элементы уже связаны как между собой, так и с понятиями внешнего мира. Информация в БЗ – это все необ-ходимое для понимания, формирования и решения проблемы. Она содер-жит два основных элемента: факты (данные) из предметной области и спе-циальные эвристики или правила, которые управляют использованием фактов при решении проблемы. Знания могут быть представлены несколь-кими способами: логической моделью, продукциями, фреймами и семан-тическими сетями.

Page 303: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

303

Рисунок 7.2 – Базовая структура экспертной системы. Машина логического вывода. Главным в ЭС является машина логи-

ческого вывода, осуществляющая поиск в базе знаний для получения ре-шения. Она манипулирует информацией из БЗ, определяя в каком порядке следует выявлять взаимосвязи и делать выводы. Машина логического вы-вода используются для моделирования рассуждений, обработки вопросов и подготовки ответов.

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

Эксперты поставляют знания в экспертную систему и оценивают правильность получаемых результатов.

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

Page 304: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

304

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

Многочисленные экспертные системы решают в настоящее время задачи в таких областях, как медицина, образование, бизнес, дизайн и научные исследования.

Базовые функции экспертных систем 1. Приобретение знаний. Приобретение знаний – это передача по-

тенциального опыта решения проблемы от некоторого источника знаний и преобразование его в вид, который позволяет использовать эти знания в программе.

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

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

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

Page 305: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

305

Отличительные особенности ЭС 1. Экспертиза может проводиться только в одной конкретной обла-

сти. 2. Создание новой БЗ для ЭС должно обеспечивать выполнение тре-

бований машины логического вывода. 3. ЭС объясняет ход решения задачи (цепочку рассуждений) понят-

ным пользователю способом (можно спросить как и почему получилось такое решение и получить понятный ответ).

4. Выходные результаты являются качественными (например, совет), а не количественными (цифровыми).

5. Системы строятся по модульному принципу, что позволяет нара-щивать их базы знаний.

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

Классификация экспертных систем Для классификации ЭС можно использовать различные критерии. 1. По назначению ЭС можно условно разделить на консультацион-

ные (информационные), исследовательские и управляющие. Консультаци-онные ЭС предназначены для получения квалифицированных ответов; ис-следовательские – для помощи пользователю квалифицированно решать научные задачи; управляющие – для автоматизации управления процесса-ми в реальном масштабе времени.

2. По сложности и объему базы знаний – неглубокие и глубокие. Неглубокие (простые) ЭС имеют относительно малые БЗ. Доказа-

тельства их заключений обычно коротки, большинство выводов являются прямыми следствиями информации, хранимой в базе знаний. Такие ЭС в основном предназначены для решения относительно простых задач типа ответов на запросы по требуемой информации.

Глубокие ЭС делают свои выводы обязательно из моделей происхо-дящих процессов, хранящихся в базах знаний. Сама модель процесса пред-ставляет собой набор правил, предназначенных для объяснения большого количества эмпирических данных. В глубоких ЭС доказательства выводов значительно длиннее, основываются на знаниях, выведенных из моделей.

3. По области применения ЭС делятся следующие классы. 1) Диагностика. Например, медицинская диагностика, когда системы

используются для установления заболеваний; техническая диагностика,

Page 306: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

306

когда определяют неисправности в механических и электрических устрой-ствах.

2) Прогнозирование. Прогнозирующие системы предсказывают воз-можные результаты или события на основе данных о текущем состоянии объекта (погода, урожайность, поток пассажиров).

3) Планирование и проектирование. Такие системы предназначены для достижения конкретных целей при решении задач с большим числом переменных (консультации по приобретению товаров, проектирование космических станций, и так далее).

4) Интерпретация. Интерпретирующие системы обладают способ-ностью получать определенные заключения на основе результатов наблю-дения (например, местоположение и тип судов в океане по данным акусти-ческих систем слежения).

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

6) Обучение. Экспертно-обучающие системы реализуют следующие педагогические функции: учение, обучение, контроль и диагностику зна-ний, тренировку.

7.7 Классификация и примеры экспертны х систем

Основными областями применения экспертных систем (ЭС) в насто-ящее время являются:

• медицина; • электроника; • вычислительная техника; • геология; • математика; • космос; • сельское хозяйство; • управление; • финансы; • юриспруденция и т.д. Рассмотрим некоторые примеры экспертных систем на основе их

классификации по по различным критериям. Классификация по решаемой задаче

Page 307: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

307

Интерпретация данных. Это одна из традиционных задач для экс-пертных систем. Под интерпретацией понимается определение смысла данных, результаты которого должны быть согласованными и корректны-ми. Обычно предусматривается многовариантный анализ данных.

Примеры: • обнаружение и идентификация различных типов океанских судов –

SIAP; • определение основных свойств личности по результатам психодиа-

гностического тестирования в системах АВТАНТЕСТ и МИКРОЛЮШЕР и др.

Диагностика. Под диагностикой понимается обнаружение неисправ-ности в некоторой системе. Неисправность – это отклонение от нормы. Та-кая трактовка позволяет с единых теоретических позиций рассматривать и неисправность оборудования в технических системах, и заболевания жи-вых организмов, и всевозможные природные аномалии. Важной специфи-кой является необходимость понимания функциональной структуры («ана-томии») диагностирующей системы.

Примеры: • диагностика и терапия сужения коронарных сосудов – ANGY; • диагностика ошибок в аппаратуре и математическом обеспечении

ЭВМ – система CRIB и др. Мониторинг. Основная задача мониторинга – непрерывная интер-

претация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы – "пропуск" тревожной ситуации и инверсная задача «ложного» срабатыва-ния. Сложность этих проблем в размытости симптомов тревожных ситуа-ций и необходимость учета временного контекста.

Примеры: • контроль за работой электростанций СПРИНТ, помощь диспетче-

рам атомного реактора – REACTOR; • контроль аварийных датчиков на химическом заводе – FALCON и

др. Проектирование. Проектирование состоит в подготовке специфика-

ций на создание «объектов» с заранее определенными свойствами. Под спецификацией понимается весь набор необходимых документов – чертеж, пояснительная записка и т.д. Основные проблемы здесь – получение чет-кого структурного описания знаний об объекте и проблема «следа». Дня организации эффективного проектирования и, в еще большей степени, пе-

Page 308: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

308

репроектирования необходимо формировать не только сами проектные решения, но и мотивы их принятия. Таким образом, в задачах проектиро-вания тесно связываются два основных процесса, выполняемых в рамках соответствующей ЭС: процесс вывода решения и процесс объяснения.

Примеры: • проектирование конфигураций ЭВМ VAX – 11/780 в системе

XCON (или R1), проектирование БИС – CADHELP; • синтез электрических цепей – SYN и др. Прогнозирование. Прогнозирующие системы логически выводят ве-

роятные следствия из заданных ситуаций. В прогнозирующей системе обычно используется параметрическая динамическая модель, в которой значения параметров "подгоняются" под заданную ситуацию. Выводимые из этой модели следствия составляют основу для прогнозов с вероятност-ными оценками.

Примеры: • предсказание погоды – система WILLARD; • оценки будущего урожая – PLANT; • прогнозы в экономике – ECON и др. Планирование. Под планированием понимается нахождение планов

действий, относящихся к объектам, способным выполнять некоторые функции. В таких ЭС используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемой деятельности.

Примеры: • планирование поведения робота – STRIPS; • планирование промышленных заказов – ISIS; • планирование эксперимента – MOLGEN и др. Обучение. Системы обучения диагностируют ошибки при изучении

какой-либо дисциплины с помощью ЭВМ и подсказывают правильные ре-шения. Они аккумулируют знания о гипотетическом "ученике" и его ха-рактерных ошибках, затем в работе способны диагностировать слабости в знаниях обучаемых и находить соответствующие средства для их ликвида-ции. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний.

Примеры: • обучение языку программирования Лисп в системе «Учитель Лис-

па»; • система PROUST – обучение языку Паскаль и др.

Page 309: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

309

В общем случае все системы, основанные на знаниях, можно подраз-делить на системы, решающие задачи анализа, и на системы, решающие задачи синтеза. Основное отличие задач анализа от задач синтеза заключа-ется в следующем: если в задачах анализа множество решений может быть перечислено и включено в систему, то в задачах синтеза множество реше-ний потенциально строится из решений компонентов или подпроблем. За-дача анализа – это интерпретация данных, диагностика; к задачам синтеза относятся проектирование, планирование. Комбинированные задачи: обу-чение, мониторинг, прогнозирование.

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

база знаний и интерпретируемые данные не меняются во времени. Они стабильны. Пример: диагностика неисправностей в автомобиле.

Квазидинамические ЭС интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени. Пример: микробиоло-гические ЭС, в которых снимаются лабораторные измерения с технологи-ческого процесса один раз в 4 - 5 ч (производство лизина, например) и ана-лизируется динамика полученных показателей по отношению к предыду-щему измерению.

Динамические ЭС работают в сопряжении с датчиками объектов в режиме реального времени с непрерывной интерпретацией поступаемых данных. Пример: управление гибкими производственными комплексами, мониторинг в реанимационных палатах и т.д.

Финансовые ЭС, основанные на правилах. Множество фирм на Уолл-Стрит установили ЭС для решения задач в

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

Примерами этому является целый класс консультативных ЭС: Bear, Sterns & Company’s Broker Monitoring System, Athena Group’s Portfolio Advisor и Trader’s Assistant, совместно разработанные корпорациями Author D. Little Corporation, Knowledge-Based Network Corporation и еще шестью финансовыми институтами. Японский Sanwa Bank, один из круп-нейших мировых банков, применяет экспертную систему Best Mix для улучшения качества своей информации по инвестициям.

ЭС Nikko Portfolio Consultation Management System, разработанная для внутреннего использования фирмой Nikko Securities, Ltd., помогает

Page 310: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

310

управляющим фондами выбрать оптимальный портфель для своих клиен-тов. Данная система основана на базе данных с информацией за пять лет продаж акций и на системе с новой теорией управления портфелем, кото-рая вычисляет и оптимизирует портфель ценных бумаг для страховки от различных рисков. Управляющие фондами освобождаются от рутинных вычислений и, таким образом, имеют возможность более быстро составить оптимальный портфель ценных бумаг. Компания IDS Financial Services, подразделение финансового планирования American Express Company, классифицировали финансовые экспертизы своих лучших управляющих для создания экспертной системы, названной Insight. IDS включила экс-пертизы лучших управляющих в свои средства, т.е. экспертную систему, доступную всем своим планировщикам. Одним из основных результатов применения экспертной системы в компании IDS стало то, что процент по-кинувших фирму клиентов упал более чем наполовину.

Примерами ЭС этого класса являются: 1. FLiPSiDE – система логического программирования финансовой

экспертизы. Решаемые задачи: • мониторинг состояния рынка ценных бумаг; • мониторинг состояния текущего портфеля ценных бумаг; • поддержка обзора будущих условий рынка; • планирование и выполнение продаж.

2. Intelligent Hedger – система страхования от риска. Проблема огромного количества постоянно растущих альтернатив страхования от рисков, быстрое принятие решений менеджерами по рискам в ускоряю-щемся потоке информации, а также недостаток соответствующей машин-ной поддержки на ранних стадиях процесса разработки систем страхова-ния от рисков предполагает обильную сферу различных оптимальных ре-шений для менеджеров по риску. В данной системе разработка страхова-ния от риска сформулирована как многоцелевая оптимизационная задача. Данная задача оптимизации включает несколько сложностей, с которыми существующие технические решения не справляются.

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

Примеры экспертных правовых систем Для автоматизации работы эксперта-криминалиста создаются и ис-

пользуются экспертные правовые системы. Экспертные правовые системы,

Page 311: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

311

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

Типовой состав экспертной правовой системы: Правовая экспертная система

Правила вывода Знания Механизм вывода Факты Убеждения Правила Базы знаний

Объекты Атрибуты Условия Ограничения Используемые в экспертной правовой системе знания складываются

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

В правоохранительной деятельности экспертные системы использу-ются, в основном, в следственной практике, хотя имеются примеры и дру-гих применений. Так экспертная система «БЛОК», предназначенная для борьбы с экономическими преступлениями, позволяет расследовать хище-ния в строительстве с использованием экономических, технологических, товароведческих, бухгалтерских, оперативных материалов и признаков, а также данных о лицах и документах в этой области. Экспертная система «БЛОК» может адаптироваться в процессе эксплуатации.

На этапе ввода исходных данных система позволяет пользователю – оперативному уполномоченному аппарата БЭП сформулировать свою проблему. На основании введенной информации автоматически определя-ются возможные способы совершения хищений. Кроме того, в ЭС реали-зована возможность автоматического вывода списка признаков, соответ-ствующих тому или иному способу совершения хищения. Этот список ис-пользуется для планирования мероприятий по раскрытию преступления и документированию действий расхитителей. Для формирования решения о способе совершения преступлений используется семь групп признаков:

Page 312: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

312

экономические, технологические, товароведческие, бухгалтерские, опера-тивные, а также причастные лица и документы – носители информации.

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

Экспертная система «АВТОЭКС» предназначена для экспертизы дорожно-транспортных происшествий и позволяет, например, установить, мог ли водитель транспортного средства предотвратить происшествие.

Новым классом автоматизированных информационных систем яв-ляются системы поддержки принятия решений, которые представляют со-бой объединение АИС и экспертной системы. К экспертным системам можно также отнести автоматизированные информационно-распознающие системы – сложные системы со специальными техническими и программ-ными средствами.

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

Автоматизация сбора и обработки экспериментальных данных, по-лученных при расследовании, с использованием современных научно-технических способов. Для этого могут использоваться измерительно-вычислительные комплексы на базе измерительных приборов и компьюте-ров. Для анализа данных используются технологические банки данных.

Создание банков данных и АИПС по конкретным объектам экспер-тизы, например, «Металлы», «Автоэмали», «Волокно» (текстиль), «Краси-тели» (волокна), «Помада» (губная), «Бумага», «Оружие», «Наркотические средства». Эти АИПС могут работать самостоятельно или совместно с другими информационно-вычислительными комплексами. Так, например, имеются АИПС по взрывчатым веществам гражданского и военного при-менения, а также боеприпасам (можно определять состав, марку взрывча-тых веществ по экспериментальным данным); банки данных «Модель оружия-гильзы» (можно найти тип оружия по пуле или гильзе).

Page 313: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

313

Системы анализа изображений, к которым относятся почерки, под-писи, отпечатки пальцев, следы обуви, следы от пуль, портреты. Самые трудные проблемы здесь – это фотороботы для реконструкции лица, ре-конструкция лица по черепу. Некоторые успехи достигнуты с помощью графического процессора Adobe Photoshop.

Вспомогательные расчеты и модели – моделирование криминальных ситуаций (пожаров, взрывов, аварий, дорожно-транспортных происше-ствий) в зависимости от условий (где возникают, как развиваются).

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

• «ЭВРИКА» (экспертиза и выдача результатов исследования ка-белей), работающая в диалоговом режиме;

• «КОРТИК» – экспертиза холодного оружия; • «БАЛЭКС» – баллистическая экспертиза; • «НАРКОЭКС» – экспертиза наркотических веществ • «МОДЕЛЬ ОРУЖИЯ», «ПАТРОН», для идентификации оружия

по пулям и гильзам; • «ПАПИЛОН» и «СОНДА-ФРЕС», для анализа снятых на дакти-

ло-картах отпечатков пальцев с места происшествия. Принадлежность от-печатков конкретным лицам устанавливается экспертом;

• «ОБУВЬ» и «САПОГ», для исследования следов обуви. Для анализа используется кодирование элементов подошв обуви и рельефа ри-сунка.

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

ЭКС «ОХРАНА» предназначена для подготовки вариантов построе-ния технических систем охраны объектов хранения товарно-материальных ценностей и жилых помещений.

На основе данных обследования объекта система позволяет: • определить категорию важности объекта, берущегося под охрану;

Page 314: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

314

• определить степень инженерной защищенности объекта; • установить требования к рубежам охраны; • подобрать, с учетом конкретных условий, технические требова-

ния для построения системы охранно-пожарной сигнализации; • рассчитать стоимость охраны объекта в зависимости от выбран-

ного уровня его технической защиты. Система «ОХРАНА» разработана с помощью инструментального

средства «РИЗА», которое представляет собой оболочку, способную настраиваться на решение конкретной задачи с учетом присущих ей осо-бенностей. В оболочке «РИЗА» предусмотрены два уровня настройки под конкретную область знаний.

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

На втором: осуществляется разработка дополнительных процедур с последующим включением их в библиотеку оболочки, ведется работа по развитию возможностей системы, разрабатывается интерфейс для связи ЭС со специализированными информационно-поисковыми системами подразделений охраны, постоянно пополняется и корректируется база зна-ний.

Экспертная система «СПРУТ» позволяет на основании знаний о преступных формированиях, связей между лицами, экономических состав-ляющих и фактов, представляющих оперативный интерес, устанавливать связи субъектов преступного формирования.

Система «СПРУТ» помогает решать следующие задачи: • определять наличие и тип преступной связи; • оценивать степень достоверности принимаемых решений, осно-

вываясь на интервально-статистическом анализе данных; • вводить новые предметные знания о конкретных организацион-

ных структурах и людях, их родовидовых и других связях на естественном языке;

• пополнять знания о типовых схемах преступлений, которые ис-пользуются для активизации запросов на недостающую информацию, а также для выдачи готовых решений;

• получать ответы на запросы (в формах естественного языка) по конкретным фактам о преступниках и установленным связям;

Page 315: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

315

• формировать тексты, касающиеся любой информации из БЗ си-стемы, обеспечивать выдачу описаний конкретных (указанных пользовате-лем) объектов, а также используемых схем и структур;

• получать графическое представление о структуре преступного формирования;

• планировать мероприятия по документированию действий лиц, входящих в организованное преступное формирование.

Отметим, наконец, следственные экспертные системы, применяемые для раскрытия и расследования преступлений:

• Экспертная система прогнозирования преступлений, позволяю-щая оценить зависимость между характерными особенностями личности преступника и возможным местом совершения преступления.

• Экспертная система выявления скрытых преступлений (например, скрытых хищений в производстве или торговле) на основе анализа дея-тельности предприятий позволяет получить материал для ревизий.

• Экспертная система поиска и установления личности преступника позволяет сделать предположения о личности преступника по материалам следствия и сузить круг подозреваемых лиц.

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

• Экспертные системы для расследования грабежей и разбоев и многие другие.

Page 316: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

316

2. П РА К Т И Ч Е С К И Й РА ЗДЕ Л Перечень лабораторных работ

Лабораторные работы № 1, 2 и 3 выполняются магистрантами всех

специальностей.

Лабораторная работа №1. «Структурирование и стилевое оформление информации в текстовом

редакторе Microsoft Word. Технология создания серийных документов»

Теоретический материал, необходимый для ее выполнения, содер-

жится в пособии «Текстовый процессор Microsoft Word. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

Задания

I. Использование электронных форм и шаблонов. 1. Создать шаблон электронной формы Карточка учета спецодеж-

ды, установить защиту формы. Для позиционирования текста на странице использовать технологию таблиц.

2. Сохранить шаблон в файле Форма1.

КАРТОЧКА № УЧЕТА СПЕЦОДЕЖДЫ

Фамилия Пол Имя Отчество Рост

Таб. ном.

Разм. одежды

Отдел № участка.

Разм. обу-ви

Должность

Дата по-ступл. на раб.

Разм. го-ловы

Предусмотрено по утвержденным меркам

Наименование спецодежды

Ед. изм. Кол-во Срок службы

Page 317: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

317

Добавить текстовые поля и поля со списком в соответствующие раз-

делы карточки. 3. Заполнить карточку, созданную при помощи шаблона Форма1, и

сохранить ее как документ в файле с именем Карточка. Пример заполнения карточки:

КАРТОЧКА №3 УЧЕТА СПЕЦОДЕЖДЫ

Фамилия Пол м Имя Отчество Рост

Таб. ном.

Разм. одежды 52

Отдел 20 № участка.

Разм. обу-ви 43

Должность мастер

Дата по-ступл. на раб.

Разм. го-ловы 61

Предусмотрено по утвержденным меркам

Наименование спец-одежды

Ед. изм. Кол-во Срок службы

брюки штуки 1 год фуфайка штуки 1 год комбинезон штуки 1 год

4. Создать типовой документ Накладная для оформления движения

товарно-материальных ценностей. Сохранить его как шаблон. Ввести со-ответствующую информацию в накладную по приведенному ниже образ-цу. Для позиционирования текста на странице использовать технологию таблиц.

Начальник ОТБ Бухгалтер Начальник цеха

Начальник ОТБ Бухгалтер Начальник цеха

Page 318: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

318

Проверить шаблон, создав документ с помощью команды Файл – Создать, указав шаблон Накладная. Заполнить накладную и обновить ре-зультаты вычислений, выделив таблицу с вычислениями и нажав клавишу F9.

Page 319: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

319

Организация Типовая форма №19 Предприятие Утверждена Министерством торговли РБ

Шифр “ ” “ ” 200 г.

Грузополучатели Поставщики Склад (секции)

Вид операции

НАКЛАДНАЯ №

Отправитель Получатель Основание

прейс-куран-

та и допол-нение к

нему

Арти-кул или поряд-ковый номер

по прейс-

куранту

Шифр това-ра,

тары

Наимено-вание то-

варно-матери-альных ценно-

стей

Еди-ницы изм.

Сорт Количество (вес)

Цена Сум-ма

Брут-то

Нетто

Отпустил Разрешил Принял

Page 320: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

320

II. Работа со сносками и установка параметров страницы Для текста своей научной работы (текст объемом не менее 20 стр.)

выполнить следующие задания: 1. Отформатировать текст работы, используя режим расстановки

переносов. Новая глава (или раздел) текста должен начинаться с новой страницы (при этом использовать вставку разрыва).

2. Создать различные варианты сносок: а) концевые и обычные; б) буквенные, цифровые, с использованием специальных симво-

лов.

3. Установить колонтитулы по следующей схеме: − на первой странице документа колонтитулов нет; − верхний колонтитул на нечетных страницах должен содер-

жать: а) название работы (выровненное по левому краю); б) текущую дату (выровненную по правому краю);

− нижний колонтитул на нечетных страницах должен содержать номер страницы (выровненный по левому краю);

− верхний колонтитул на четных страницах должен содержать: а) название работы (выровненное по правому краю); б) текущую дату (выровненную по левому краю).

− нижний колонтитул на четных страницах должен содержать номер страницы (выровненный по правому краю).

4. Установить для страниц научной работы следующие параметры: а) для одной из страниц текста – альбомную ориентацию; б) размеры верхних, нижних, левых и правых полей: верхнее –

2,65см, нижнее – 2,85см, левое – 1,6см, правое – 2,5см; в) отступы от верхнего и нижнего колонтитулов: от верхнего –

1,4см, от нижнего – 1,5см. Результат сохранить в файле с именем Сноски_и_параметры_страниц.

Page 321: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

321

Лабораторная работа №2. «Поиск информации в Интернете»

Задания

I. Работа с поисковыми машинами Yandex и Google Загрузите начальную страницу поисковой машины Yandex –

www.yandex.ru. Перейдите по ссылке Расширенный поиск. Сформируйте и выполните следующие запросы на поиск:

1 ресурсов, касающихся банковского дела (психологии, правоведения, искусствове-

дения) 2 ресурсов, касающихся специальности “Банковское дело” (“Правоведение”, “Пси-

хология”, “Искусствоведение”) 3 ресурсов, касающихся специальности “Банковское дело” (“Правоведение”, “Пси-

хология”, “Искусствоведение”), которые были обновлены не позднее 2-х месяцев назад

4 ресурсов, касающихся специальности “Банковское дело” (“Правоведение”, “Пси-хология”, “Искусствоведение”), которые были обновлены не позднее 2-х месяцев назад, исключая информацию о колледжах и техникумах

5 ресурсов, касающихся специальности “Банковское дело” (“Правоведение”, “Пси-хология”, “Искусствоведение”), которые были обновлены не позднее 2-х месяцев назад, исключая информацию о колледжах и техникумах. Ресурсы должны яв-ляться файлами формата RTF.

В каждом из случаев в таблицу MS Excel записывайте общее количе-ство возвращенных результатов и адрес первого ресурса в списке резуль-татов.

Постройте график зависимости количества возвращаемых результа-тов поиска от шага уточнения запроса (номера запроса).

Загрузите начальную страницу поисковой машины Google – www.google.com.

Перейдите по ссылке Расширенный поиск. Сформируйте и выполните следующие запросы на поиск:

1 ресурсов о баскетболе 2 ресурсов о турнирах по баскетболу 3 ресурсов о турнирах по баскетболу, измененных в течение последнего по-

лугодия 4 ресурсов украинских сайтов (доменное имя – .ua) о турнирах по баскетбо-

лу, измененных в течение последнего полугодия 5 ресурсов украинских сайтов в формате PDF о турнирах по баскетболу, из-

мененных в течение последнего полугодия

Page 322: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

322

В каждом из случаев в таблицу Excel записывайте общее количество возвращенных результатов и адрес первого ресурса в списке результатов.

Постройте график зависимости количества возвращаемых результа-тов поиска от шага уточнения запроса (номера запроса).

Загрузите начальную страницу поисковой машины Google – www.google.com.

Перейдите по ссылке Картинки, а затем Расширенный поиск изоб-ражений.

Сформируйте и выполните следующие запросы на поиск: 1 фотографий Брюса Уиллиса среднего размера в формате JPG 2 огромного изображения медведя 3 изображения Брюсселя (Brussel) размером, подходящим для обоев рабоче-

го стола 4 черно-белого изображения бегемота

Для каждого из результатов, сохраните один из понравившихся Вам рисунков на диске. На отдельном листе MS Excel вставьте все четыре найденные рисунка.

Сравнение поисковых машин Yandex и Google Для поисковых машин Yandex и Google сформируйте и выполните

следующие запросы: 1 на поиск всех страниц, содержащих ссылки на сайт Белорусского государ-

ственного университета (www.bsu.by) 2 на поиск рецептов салата, в который входят помидоры, огурцы и петруш-

ка, и не входят перец, лук и чеснок 3 на поиск любой информации о табличном редакторе MS Excel в файлах

формата PDF, измененных не позднее 3-х месяцев назад 4 на поиск любой информации о табличном редакторе MS Excel на русском

языке в файлах формата PDF, измененных не позднее 3-х месяцев назад В каждом из случаев в таблицу Excel записывайте общее количество

возвращенных результатов по запросу. Постройте следующую таблицу:

№ запроса Число результатов в Yandex

Число результатов в Google

Отклонение

Рассчитайте Отклонение по формуле: (Число результатов в Yandex – Число результатов в Google) / МАКСИМУМ(Число результатов в Yandex; Число результатов в Google). Задайте процентный формат ячеек для столбца Отклонение.

Рассчитайте суммарное отклонение.

Page 323: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

323

Постройте диаграмму по рассчитанному столбцу отклонений. Назо-вите ее Сравнение эффективности поиска.

Постройте следующую таблицу: Возможности поиска Yandex Google Отклонение Поиск слова Поиск фразы Исключение слова/фразы из поиска Поиск документов на определенном языке Поиск документов определенного формата Поиск документов по дате Поиск документов по домену или сайту

Если рассматриваемая возможность поиска у системы Yandex, на Ваш взгляд, лучше, то в графу Yandex занесите значение 3, а в графу Google – значение 1.

Если рассматриваемая возможность поиска у системы Google, на Ваш взгляд, лучше, то в графу Google занесите значение 3, а в графу Yandex – значение 1.

Если рассматриваемая возможность поиска у системы Yandex, на Ваш взгляд, намного лучше, то в графу Yandex занесите значение 5, а в графу Google – значение 1.

Если рассматриваемая возможность поиска у системы Google, на Ваш взгляд, намного лучше, то в графу Google занесите значение 5, а в графу Yandex – значение 1.

Если рассматриваемая возможность поиска у системы Google, на Ваш взгляд, сопоставима с аналогичной возможностью у системы Google, то в графы Google и Yandex занесите значение 1.

Рассчитайте Отклонение по формуле: (Yandex – Google) / МАК-СИМУМ(Yandex; Google). Задайте процентный формат ячеек для столбца Отклонение.

Постройте диаграмму по рассчитанному столбцу отклонений. Назо-вите ее Сравнение возможностей поиска.

Рассчитайте суммарное отклонение. Сделайте вывод о проделанной работе. II. Исследование и ранжирование Интернет-ресурсов 1. Выберите область исследования – компании/организации, сайты

которых Вы будете изучать и ранжировать. Например, коммерческие бан-ки, страховые компании, автосалоны, вузы, суды, социальные службы, ИТ-компании и т. д.

2. Найдите адреса сайтов наиболее крупных/“интересных”/успешных представителей выбранной предметной области.

Page 324: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

324

3. Предварительно изучив сайты, выберите из них пять, на Ваш взгляд, лучших.

4. Сформируйте группу технических критериев, по которым Вы бу-дете оценивать данные сайты. Например, дизайн, наличие ошибок, количе-ство страниц с полезной информацией, используемые технологии (от 3 до 5 критериев).

5. Сформируйте группу информационных критериев, по которым Вы будете оценивать данные сайты. Например, качество содержания страниц, их актуальность, наличие ленты новостей и др. (от 2 до 3 критериев).

6. Добавьте два специфических для выбранной предметной области критерия, по которым Вы будете оценивать сайт. Например, для автосало-нов – наличие галереи автомобилей, для вузов – наличие правил поступле-ния и т.д.

7. Для всех критериев укажите шкалу. 8. Оцените выбранные сайты по сформированным критериям. Все

результаты занесите в отчет (сводную таблицу, созданную в MS Word).

Page 325: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

325

Лабораторная работа №3. «Консолидация данных.

Фильтрация данных и подведение итогов в MS Excel»

Теоретический материал, необходимый для выполнения лаборатор-ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

Задания

Сортировка данных 1. Открыть файл Книги в библиотеке.doc (файл получить у препо-

давателя). 2. Скопировать текст в Буфер обмена и вставить на лист книги Excel,

разнеся данные по столбцам с помощью Мастера текстов. 2. Дать имя Листу1 Исходная таблица. 3. Скопировать эту таблицу на Лист2. Дать имя Листу2 Сортиров-

ка1. 4. Отсортировать таблицу на листе «Сортировка1» по трем столб-

цам «Фамилия», «Имя», «Отчество». 5. Скопировать эту таблицу на Лист 3. Дать имя Листу 3 – «Сортиров-

ка2». 6. Отсортировать таблицу на листе «Сортировка2» по столбцу

"Наименование издательства". 7. Результат сохранить в своей папке в файле с именем Книги в библио-

теке.xls. Консолидация I. «Служба занятости» 1. Создать шаблон таблицы по образцу 1. Сохранить его на диске с

именем Консолидация 1. 2. Прочитать шаблон и сохранить его с именем Моя консолидация

1. 3. Заполнить шаблон по образцу 2 и переименовать лист с этой таб-

лицей, дав ему имя Минск. 4. Выделить заполненную таблицу, скопировать ее в Буфер Обмена,

перейти на лист 2 и вставить из Буфера Обмена. 5. Заполнить новую таблицу по образцу 3, переименовать лист с этой

таблицей, дав ему имя Марьина Горка. 6. Выделить заполненную таблицу, скопировать ее в Буфер Обмена,

перейти на лист 3 и вставить из Буфера Обмена.

Page 326: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

326

7. Заполнить новую таблицу по образцу 4, переименовать лист с этой таблицей, дав ему имя Борисов.

8. Выделить заполненную таблицу, скопировать ее в Буфер Обмена, перейти на лист 4 и вставить из Буфера Обмена.

9. Заполнить новую таблицу по образцу 5, переименовать лист с этой таблицей, дав ему имя Общая таблица.

10. Составить сводную таблицу, используя средство Консолидация для столбцов Пользователь ЭВМ и Секретарь-референт.

II. «Средний балл» 1. Создать шаблон по прилагаемому образцу. Сохранить его на диске

с именем Консолидация 2. 2. Прочитать шаблон и сохранить его в виде файла с именем Моя

консолидация 2. 3. Заполнить таблицу, переименовать лист с полученной таблицей,

дав ему имя Сессия 1. 4. Выделить заполненную таблицу, скопировать ее в Буфер Обмена,

перейти на лист 2 и вставить из Буфера Обмена. 5. Заполнить таблицу, переименовать лист с полученной таблицей,

дав ему имя Сессия 2. 6. Выделить заполненную таблицу, скопировать ее в Буфер Обмена,

перейти на лист 3 и вставить из Буфера Обмена. 7. Заполнить таблицу, переименовать лист с полученной таблицей,

дав ему имя Сессия 3. 8. Выделить заполненную таблицу, скопировать ее в Буфер Обмена,

перейти на лист 4 и вставить из Буфера Обмена. 9. Заполнить новую таблицу, переименовать лист с этой таблицей,

дав ему имя Общая таблица. 10. Составить сводную таблицу, используя средство Консолидация

для столбца Средний балл (функция Среднее значение).

Page 327: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

327

Образцы для задания I

Образец 1 Образец 2 Служба занятости Минска и Минского района

Служба занятости Минска и Минско-го района

Наименование Города Минск Количество слушателей Количество слушателей

По специальностям По специальностям

№ Поль-зова-тель ЭВМ

Секре-тарь-рефе-рент

Итого № Поль-зова-тель ЭВМ

Секре-ре-тарь-рефе-рент

Итого

1 квартал =B8+C8 1 квартал 300 200 500 2 квартал =B9+C9 2 квартал 150 100 250 3 квартал =B10+C

10 3 квартал 200 300 500

4 квартал =B11+C11

4 квартал 350 150 500

Итого за год

=B8+B9+B10+B11

=C8+C9+C10+C11

=B12+C12

Итого за год

1000 750 1750

Образец 3 Образец 4 Служба занятости Минска и Минского района

Служба занятости Минска и Минско-го района

Марьина Горка

Борисов

Количество слушателей Количество слушателей По специальностям По специальностям № Поль-

зова-тель ЭВМ

Секрере-тарь-рефе-фе-рент

Итого № Поль-зова-тель ЭВМ

Секре-ре-тарь-рефе-рент

Итого

1 квартал 5 2 7 1 квартал 12 2 14 2 квартал 10 3 13 2 квартал 10 5 15 3 квартал 15 4 19 3 квартал 7 8 15 4 квартал 3 5 8 4 квартал 15 8 23 Итого за год

33 14 47 Итого за год

44 23 67

Page 328: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

328

Образец 5 Служба занятости Минска и Мин-ского района Общая таблица Количество слушателей По специальностям № Поль-

зова-тель ЭВМ

Секре-тарь-рефе-рент

Итого

1 квартал 2 квартал

3 квартал 4 квартал Итого за год

Образец для задания II

Фами-лия

Имя

Отчество

Курс

Группа

Оценки Сессия 1 1 2 3 4 Средний

балл Фильтрация данных. Подведение итогов I. «Книги в библиотеке» 1. Открыть файл Книги в библиотеке.xls, созданный в начале данной

лабораторной работы. 2. Выделить таблицу на листе Исходная таблица и скопировать ее

на лист Фильтрация 1. 3. Выполнить фильтрацию данной таблицы по фамилии – Толстой,

по имени – Алексей, по отчеству Николаевич. 4. Выделить исходную таблицу на листе Исходная таблица и ско-

пировать ее на лист Фильтрация 2. 5. Выполнить фильтрацию по наименованию издательства "Мастац-

кая лiтаратура".

Page 329: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

329

6. Выделить исходную таблицу на листе Исходная таблица и ско-пировать ее на лист Фильтрация 3.

7. Выполнить фильтрацию по году издательства: необходимо от-фильтровать все книги, изданные начиная с 1991 по 2000 год.

8. Добавить в эту таблицу столбцы: Стоимость одного экземпляра, Количество экземпляров, Сумма 9. Ввести для каждого произведения соответствующую информацию

в эти столбцы. 10. Подвести промежуточные итоги по доходу каждого издательства,

суммируя доход и помещая информацию промежуточных итогов под дан-ными.

11. Результат сохранить в файле с именем Фильтрация.xls.

II. «Работа с кадрами» 1. На листе 1 составить таблицу и отформатировать ее по прилагаемому

образцу 1. 2. Сохранить ее в файле с именем Работа с кадрами..xls. 3. Переименовать «Лист1» с этой таблицей, дать ему имя «Исходная

таблица1». 4. Скопировать эту таблицу в буфер обмена, перейти на лист 2 и

вставить туда таблицу из буфера обмена. 5. Переименовать «Лист 2» с этой таблицей, дать ему имя «Копия таб-

лицы1». 6. Выделить столбцы «Должность» и «Суммарная зарплата» и со-

ставить по этой информации диаграмму, поместив ее на новый лист, дав листу имя «Диаграмма1».

7. Сформировать список фамилий медсестер больницы, используя команды Сервис – Параметры – Списки.

8. Перейти на «Лист 3», дать ему имя «Ведомость ЗАРПЛАТА». 9. Создать на нем шапку таблицы по образцу 2. 10. Вставить в столбец «Фамилия» подготовленный список фамилий мед-

сестер. 11. Отсортировать таблицу по алфавиту фамилий. 12. Ввести для каждой фамилии коэффициенты А и C по своему

усмотрению. 13. Ввести в графу «Зарплата» формулу 4:

Коэффициент_А * 150000 + Коэффициент_C 14. Ввести в графу «ИТОГО» формулу 5:

Сумма всех зарплат по столбцу. 15. Отсортировать таблицу по возрастанию зарплаты.

Page 330: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

330

16. Осуществить фильтрацию этой таблицы, выделив все фамилии медсестер, зарплаты которых меньше или равны 180000.

17. Скопировать получившуюся таблицу на «Лист 4», дать имя листу «Материальная помощь».

18. Добавить в эту таблицу 2 строки. 19. Добавить в эти строки текст (см. образец 3). 20. Сохранить все на своем диске. 21.Перейти на «Лист 5». Дать этому листу имя «Дополнительная

информация». 23. Создать на нем шапку таблицы по образцу 4. 24. Объединить столбцы «№», «Фамилия», «Зарплата», «Год рож-

дения» и «Стаж работы» и построить новую таблицу, используя преды-дущие.

Здесь: Формула 1 = Зарплата_санитарки (в абсолютной адресации) *

(Коэффициент_А + Коэффициент_В) Формула 2 = Зарплата_Сотрудника * Количество_сотрудников Формула 3 = Сумма зарплат всех сотрудников

III. «Доход фирмы»

1. На листе 1 составить таблицу по прилагаемому образцу и отфор-матировать ее; причем:

Номера п/п сформировать протаскиванием мыши. Сумму дохода за январь сформировать как ряд (Правка – Запол-нить – Прогрессия: начальное значение =5000, шаг 100, всего – 8 фирм). Список наименований месяцев – протаскиванием мыши. 2. Сохранить ее на своем диске в своей папке под именем Доход

фирмы.xls. 3. Переименовать «Лист 1» с этой таблицей, дать ему имя «Табли-

ца1». 4. Скопировать эту таблицу в буфер обмена, перейти на «Лист 2» и

вставить туда таблицу из буфера обмена. 5. Переименовать «Лист 2» с этой таблицей, дать ему имя «Копия

таблицы1». 6. Выделить столбцы «Фирма» и «Суммарный доход» и составить

по этой информации диаграмму, поместив ее на новый лист, дав листу имя «Диаграмма». Выделить всю таблицу и построить по ней график доходов фирм, поместив график на этот же лист.

7. Перейти на «Лист 3», дать ему имя «Итоги».

Page 331: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

331

8. Скопировать на нее таблицу с листа «Таблица1». 9. Отсортировать таблицу по наименованиям фирм (по алфавиту). 10. Подвести промежуточные итоги по каждой фирме. 11. Перейти на «Лист 4», дать ему имя «Фильтрация». 12. Скопировать на нее таблицу с листа «Таблица1». 13. Отсортировать таблицу по наименованиям фирм (по алфавиту). 14. Осуществить фильтрацию этой таблицы, выделив все фирмы, го-

довой доход которых меньше или равны 18000. 15. Скопировать получившуюся таблицу на "Лист 5", дать имя листу

«Фирмы с небольшим доходом». Здесь: Формула 1 = доход фирмы за предыдущий месяц +

доход за предыдущий месяц *0,1 (т. е. на 10 %); Формула 2 = сумма дохода фирмы за указанный квартал; Формула 3 = сумма дохода фирмы за год; Формула 4 = суммарный доход фирмы в долларах; Формула 5 = суммарный доход всех фирм за указанное время.

IV. «Премирование» 1. Построить таблицу по прилагаемому образцу. 2. Упорядочить таблицу, расположив фамилии в алфавитном поряд-

ке. 3. Вычислить значения «Стаж», «Пенсионер» и «Льготы» по прила-

гаемым формулам. 4. Построить круговую диаграмму для столбцов «ФИО» и «Стаж». 5. Построить гистограмму для столбцов «ФИО» и «Год рождения». 6. Подсчитать количество пенсионеров, используя команды Данные –

Итоги. 7. Выделить с помощью Автофильтра всех сотрудников старше 40

лет. 8. С помощью буфера обмена скопировать таких сотрудников на

другой лист и дать листу имя «Старше 40 лет». 9. Вернуться на предыдущий лист и с помощью расширенного филь-

тра определить всех сотрудников, у которых возрастной год является юби-лейным годом (то есть, кратен 5 или 10).

10. Используя буфер обмена, скопировать данный список на новый лист и дать этому листу имя «Юбиляры».

11. Результат сохранить в файле Премирование.xls. V. «Сводный анализ»

Page 332: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

332

Создайте таблицу по образцу Таблица №1. В таблицу №1 добавьте столбец Сумма, содержащий сумму сделки,

и постройте на ее основе сводную таблицу и диаграмму, содержащие све-дения, указанные в таблице №2 в зависимости от варианта.

В созданной таблице отсортируйте строки по убыванию общего ито-га и с помощью фильтра сводной таблицы уберите строку, вносящую наименьший вклад в общий итог.

Page 333: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

333

Таблица №1 к заданию V

Продавец Покупатель Товар Цена Коли-чество

NTT БГУ компьютер 700 10 ELife БНТУ принтер 300 2

UniComLine БНТУ компьютер 650 15 NTT БГУ монитор 200 1

UniComLine БГУ компьютер 600 5 ELife БГУ сканер 85 1 NTT БНТУ монитор 350 1 ELife БНТУ принтер 300 1

UniComLine БГУ сканер 90 2 NTT БНТУ компьютер 800 7 NTT БГУ принтер 200 3

UniComLine БГУ компьютер 590 4 NTT БНТУ монитор 170 15

UniComLine БГУ компьютер 710 5 NTT БГУ сканер 120 2 NTT БГУ компьютер 680 13

UniComLine БГУ компьютер 570 12 NTT БНТУ компьютер 805 4

Таблица №2

Вариант Строки Столбцы Данные 1 Продавцы Покупатели Общая сумма сделок 2 Продавцы Покупатели Общее количество сделок 3 Товары Продавцы Общая сумма сделок 4 Товары Продавцы Общее количество проданных товаров

Page 334: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

334

Образец 1 для задания II Штатное расписание больницы Зарплата санитарки ввести число

Должность

Коэффици-ент А

Коэффици-ент В

Зарплата сотрудника

Количество сотрудников

Суммарная зар-плата

Санитарка 1 000 Формула 1 6 Формула 2 Медсестра 1,5 000 Формула 1 8 Формула 2 Врач 3 000 Формула 1 10 Формула 2 Зав. отделением 3 030 Формула 1 3 Формула 2 Зав. аптекой 2 000 Формула 1 1 Формула 2 Завхоз 1,5 040 Формула 1 1 Формула 2 Главврач 4 000 Формула 1 1 Формула 2 Зав. больницей 4 020 Формула 1 1 Формула 2 Месячный фонд зарплаты Формула 3

Образец 2 для задания II

№ Фамилия Коэффициент А Коэффициент В Зарплата Подпись 1 Формула4 2 Формула4 3 Формула4 … Формула4 ИТОГО: Формула5

Page 335: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

335

Образец 3 для задания II

Председателю профкома

Больницы № 121 Просим оказать материальную помощь следующим сотрудникам больницы: Образец 4 для задания II

Фамилия Год рождения Стаж

Page 336: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

336

Образец для задания III

A B C D E … N O P Q R S Курс $ число

п/п

Наиме-нование фирмы

Доход фирмы Январь Фев-

раль Март … Декабрь Итого

за 1 квар-тал

Итого за 2

квар-тал

Итого за 3

квар-тал

Итого за 4

квар-тал

Итого за год

Итого за год в

$

1 Эврика

Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

2 Анадема Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

3 Изумруд Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

4 Авицен-на

Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

5 Альянс Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

Page 337: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

337

6 Яхонт Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

7 Барф Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

8 Темп Ввести лю-бое число больше 5000

Форму-ла1

Форму-ла1

Формула1 Форму-ла2

Форму-ла2

Форму-ла2

Форму-ла2

Формула3 Форму-ла4

Итого Форму-ла5

Форму-ла5

Формула5 Форму-ла5

Форму-ла5

Форму-ла5

Форму-ла5

Формула5 Форму-ла5

Образец для задания IV

A B C D E F

Таблица премиальных 2 № ФИО Год

рож-дения

Стаж ра-боты

Пенсионер Льготы

3 1 Иванов 1945 =2009-C3-20 =ЕСЛИ((2009-C3)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D3>20;"Начислить премию за стаж";" ")

4 2 Петров 1923 =2009-C4-20 =ЕСЛИ((2009-C4)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D4>20;"Начислить премию за стаж";" ")

5 3 Сидоров 1935 =2009-C5-20 =ЕСЛИ((2009-C5)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D5>20;"Начислить премию за стаж";" ")

6 4 Вален-тинов

1965 =2009-C6-20 =ЕСЛИ((2009-C6)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D6>20;"Начислить премию за стаж";" ")

Page 338: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

338

7 5 Алек-сандров

1977 =2009-C7-20 =ЕСЛИ((2009-C7)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D7>20;"Начислить премию за стаж";" ")

8 6 Евгень-ев

1943 =2009-C8-20 =ЕСЛИ((2009-C8)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D8>20;"Начислить премию за стаж";" ")

9 7 Терехин 1939 =2009-C9-20 =ЕСЛИ((2009-C9)>60;"Пенсионный воз-раст";"Непенсионный возраст")

=ЕСЛИ(D9>20;"Начислить премию за стаж";" ")

10

8 Арбузов 1940 =2009-C10-20

=ЕСЛИ((2009-C10)>60;"Пенсионный возраст";"Непенсионный возраст")

=ЕСЛИ(D10>20;"Начислить премию за стаж";" ")

11

9 Никола-ев

1942 =2009-C11-20

=ЕСЛИ((2009-C11)>60;"Пенсионный возраст";"Непенсионный возраст")

=ЕСЛИ(D11>20;"Начислить премию за стаж";" ")

12

10

Григо-рьев

1954 =2009-C12-20

=ЕСЛИ((2009-C12)>60;"Пенсионный возраст";"Непенсионный возраст")

=ЕСЛИ(D12>20;"Начислить премию за стаж";" ")

Page 339: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

ЛАБОРАТОРНЫЕ РАБОТЫ ДЛЯ МАГИСТРАНТОВ СПЕЦИАЛЬНОСТИ

«УПРАВЛЕНИЕ В СОЦИАЛЬНЫХ И ЭКОНОМИЧЕСКИХ СИСТЕМАХ»

Лабораторная работа №4.

«Microsoft Excel. Базовые операции»

Основные теоретические сведения, необходимые для выполнения лабораторной работы содержатся в пособии «Табличный процессор Mi-crosoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведе-ния», автор Борздова Т.В.

Задания

1. Создать таблицу средствами Microsoft Excel, выполнить в ней

вычисления. Звездочка (*) указывает на подсчет итога по данной графе или вычисление функции. Задать рабочему листу имя, совпадающее с названи-ем таблицы.

2. Построить диаграмму. 3. Номер варианта выполняемого задания совпадает с номером по

списку (если номер по списку >10, то отнять от номера число 10). Вариант 1

Ведомость удержаний

Табельный но-мер

Удержания Всего удержа-но Аванс Подох. налог Прочие удерж.

1800 1801 1802

$500,00 $460,00 $620,00

$416,54 $312,30 $485,25

$110,00 $45,35

ИТОГО: * * * *

Максимальное удержание:

*

Указание. 1) Графа 5=графа 2 + графа 3 + графа 4 2) Диаграмму построить по 5-ой графе. Тип диаграммы – Объемная с обла-стями.

Page 340: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

340

Вариант 2 Ведомость начислений

Табельный номер

Начисления Всего

начислено Зарплата Премии Больн. лист Проч.

начисл. 1754 1755 1756

$1 185,00 $1 200,00 $1 150,00

$115,00 $110,00 $85,00

$117,40 $87,35

$25,00 $11,64 $35,40

ИТОГО: * * *

Минимум начислений:

*

Указание. 1) Графа 6=графа 2 + графа3 + графа4 + графа5.

2) Диаграмму построить по 6-ой графе, 1-ю графу использо-вать для подписей оси Х. Тип диаграммы – Объемная Гисто-грамма.

Вариант 3

Коэффициент сортности

Сорта продукции

Отчетный год Планируемый год

Удельный вес в об-щем объ-еме про-

дукции, %

Соотноше-ние цен, %

Коэффици-ент сортно-

сти

Удельный вес в общем объеме про-дукции, %

Соотноше-ние цен, %

Коэффи-циент

сортности

1 2 3

87 10 3

100 90 80

89 9 2

100 90 80

Итого: * *

Среднее значение коэффициентов: * *

Указание. 1) Графа 4=графа2 * графа 3 : 100

2) Графа 7=графа 5 * графа 6 : 100.

Page 341: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

341

3) Диаграмму построить по 7-ой графе, 1-ю графу использо-вать для подписей оси Х. Тип диаграммы – Объемная линейча-тая.

Вариант 4

Сведения о выручке от реализации за плановый период

Изделие Остатки на нача-ло года

План вы-пуска

Остатки на конец

года

Объем реали-зации, шт.

Стоимость в оптовых ценах предприятия, $ США

Единицы продукции

Всего объема реализации

А Б В

800 200 400

40000 80000 90000

500 100 2000

200,3 50,0 100,1

ИТОГО: * *

Минимум объема: *

Указание. 1) Графа 5=графа 2 + графа3 - графа4

2) Графа 7= (графа 5 * графа 6) : 1000 3) Диаграмму построить по 7-ой графе. Тип диаграммы – Объ-емная круговая.

Вариант 5 Потребность в спецодежде и обуви

Наименование Срок

носки, мес.

Кол-во выдач в

год

Кол-во рабочих

Потребность в год Кол-во

ед. Стоимость

$США Сумма $США

Комбинезоны х/б 12

480 10,0

Халаты 12 140 15,2

Рукавицы 6 640 1,5

Сапоги резин. 12 180 7

ИТОГО: * * Максимальное кол-во еди-

ниц: *

Указание. 1) Графа3=12 : графа 2.

Page 342: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

342

2) Графа5= графа3 * графа4. 3) Графа7=графа5 * графа6. 4) Диаграмму построить по 7-ой графе, 1-ю графу использо-вать для подписей оси Х. Тип диаграммы – С областями.

Вариант 6

Ведомость выработки изделий

Номер наряда

На единицу изделия Кол-во годных из-

делий

На всю партию

Норма вре-мени Расценка Время по

норме Сумма

1385 1384 1386

0,380 0,650 0,550

0,87 0,45 0,12

12 9 15

ИТОГО: * * Минимум времени: *

Указание. 1) Графа5=графа2 * графа4.

2) Графа6=графа3 * графа4. 3) Диаграмму построить по 6-ой графе, 1-ю графу использо-вать для подписей оси X. Тип диаграммы – Гистограмма.

Вариант 7 ОПЕРАТИВНАЯ ВЕДОМОСТЬ ПОСТУПЛЕНИЯ ТОВАРОВ НА СКЛАД

ЗА________20__г. В СОПОСТАВЛЕНИИ С ДАННЫМИ ДОГОВОРА

Код торгово-го предприя-

тия

Код по-ставщика

Код то-варной группы

Сумма Должно быть по-ставлено

Фактически поступило Отклонение

22 33 44

501 501 501

21 23 25

40050,9 197000,0 8500,5

37500,3 200000,6 25614,0

ИТОГО: * * * Среднее отклонение: *

Указание. 1) Графа6=графа5 - графа4.

2) Диаграмму построить по 6-ой графе, 1-ю графу использо-вать для подписей оси X. Тип диаграммы – Линейчатая.

Вариант 8

Page 343: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

343

СВЕДЕНИЯ О СТОИМОСТИ НЕЗАВЕРШЕННОГО ПРОИЗВОДСТВА ПО ПЛАНОВЫМ И НОРМАТИВНЫМ ЦЕНАМ

Номер дета-ли или узла

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

узлов

Плановая стоимость Нормативная стоимость

цена сумма цена сумма 1 2 3 4 5 6

3270 4152 3578

39 48 132

2,00 0,91 1,27

2,41 0,98 1,35

ИТОГО: * *

Максимум стоимости: * *

Указание. 1) Графа4=графа2* графа3 2) Графа6=графа2 * графа5 3) Диаграмму построить по 6-ой графе. Тип диаграммы – Кру-говая.

Вариант 9

ВЕДОМОСТЬ НАЧИСЛЕНИЯ ЗАРОБОТНОЙ ПЛАТЫ РАБОЧИМ

Табельный номер Разряд Заработная

плата, ($)

Премия Сумма начисления,

($) % Сумма

1 2 3 4 5 6 716 802 930

5 3 4

1180.00 1165,00 1770,00

20 25 25

ИТОГО: * * * Среднее значение начисле-

ний: *

Указание. 1) Графа 5= графа 3* графа 4 : 100.

2) Графа 6= графа 3+ графа 5. 3) Диаграмму построить по 6-ой графе. Тип диаграммы – Кру-говая.

Вариант 10

ВЕДОМОСТЬ ВЫРАБОТКИ ИЗДЕЛИЙ

Номер наряда

На единицу изделия Кол-во из-делий

На всю партию Норма вре-

мени Расценка Время по норме Сумма

1 2 3 4 5 6 1385 0,100 0,02 12

Page 344: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

344

1384 1386

0,200 0,250

0,12 0,09

9 15

ИТОГО: * * Минимум времени: *

Указание. 1) Графа5= графа2 * графа4.

2) Графа6= графа3 * графа4. 3) Диаграмму построить по 5-ой графе, 1-ю графу использо-вать для подписей оси X. Тип диаграммы – Гистограмма.

Page 345: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

345

Лабораторная работа №5. «Построение графиков и поверхностей»

Задания

Теоретический материал, необходимый для выполнения лаборатор-

ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

Номер варианта выполняемого задания совпадает с номером по списку (если номер по списку >10, то отнять от номера число 10).

Вариант 1 1. Построить в разных системах координат при ]2;2[−∈x графики

функций: xexу 2)sin( −=

>+

+

≤+

+

=

0,2

)(sin2

0,x1

x1

G

2

4

2

xxxx

x

≥+

−∈+

+++

−≤++

+

=

0,)1(

)0;1[,2

)(cos1)1ln(2

1,1

||1

53

42

3 2

xx

xx

xx

xxx

x

Z

2. Построить в одной системе координат при ]2;2[−∈x графики функций:

• Y=2sin(x)cos(x); • )sin()(cos3 2 xxZ = .

3. Построить поверхность 22 2yxz −= при ]1;1[, −∈yx .

Page 346: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

346

4. Найти все корни уравнения 0791136,04355,192,2 23 =++− xxx , строя график функции и затем ис-

пользуя средство Подбор параметра. Вариант 2 1. Построить в разных системах координат при ]2;2[−∈x графики

функций:

2

2

211

xxY

++

=

>+

≤−=

0,13

0),(cos)sin(32

2

xxxxx

G

≥−

∈+−

≤+

+

=−

1,|2|

)1,0(,2

0,11

31

2

3 2

xx

xex

xxx

Zx

2. Построить в одной системе координат при ]2;2[−∈x графики функций:

• )cos(3)sin(2 xxY ππ −=

• )sin(2)2(cos2 xxY ππ −= . 3. Построить поверхность 222 )(sin23 yyxz −= при ]1;1[, −∈yx . 4. Найти все корни уравнения 0395006,43251,156,2 23 =+−− xxx ,

строя график функции и затем используя средство Подбор параметра. Вариант 3 1. Простроить в разных системах координат при ]5,1;2[−∈x графики

функций:

2

2

1)(sin2

xxY

++

=

Page 347: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

347

>+

+

≤+

=

0,1

21

0,13

2

2

2

xxx

xx

x

G

>

<++

=−

1),3sin(2

]1,0[,)cos(2

0,13

2

2

xx

xex

xxx

Zx

.

2. Построить в одной системе координат при ]2;2[−∈x графики функций:

• );sin()3cos()sin(5 xxxY πππ −=

• )(sin2)2cos( 3 xxZ ππ −= .

3. Построить поверхность yeyyxz 222 2)(cos5 −= при x∈[-1;1].

4. Найти все корни уравнения 0766336,146064,584,2 23 =−−+ xxx , строя график функции и затем используя средство Подбор параметра.

Вариант 4 1. Построить в разных системах координат при x∈[-1,5;1,5] графики

функций:

xexY 21)cos(1

++

=

0,

0,212)(cos1)2(sin3

2

2

>+++

=x

xxxx

G

Page 348: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

348

>+

<+

+

=

1,|)3sin(2|1

]1;0[),(cos2

0,1

1

3/1

2

2

2

xx

xx

xx

x

Z.

2. Построить в одной системе координат при x∈[-2;2] графики функ-ций:

• Y = 3sin(2 πx) cos(πx) – cos2 (3πx); • Z = 2cos2(2πx) – 3sin(3πx).

3. Построить поверхность при x, y∈[-1;1]

||11||5,0

5,0||

,2,,2

2

2

yxyx

yx

yeeyxe

exZ

yx

x

y

+≤<+≤

<+

−−−

=.

4. Найти все корни уравнения x3 +1,41x2 – 5,4724x – 7,380384 = 0, строя график функции и затем используя средство Подбор параметра.

Вариант 5 1. Построить в разных системах координат при x∈[-1,8;1,8] графики

функций: 4 31 xeY +=

>

≤+

+=

0),(cos2

0,1

)sin(3

22

2

xxx

xx

xG

≥+−

∈+

+−

<

=

1,1

|3|

)1,0[,1

2

0,|| 31

xxx

xx

xx

xx

Z

Page 349: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

349

2. Построить в одной системе координат при x∈[0;3] графики функ-ций:

• Y = 2sin(πx)cos(πx); • Z = cos 2 (πx)sin(3πx).

3. Построить поверхность 222 2)(cos2 yxxz −= при x, y∈[-1;1]. 4. Найти все корни уравнения x3 +0,85x2 – 0,4317x + 0,043911 = 0,

строя график функции и затем используя средство Подбор параметра.

Вариант 6 1. Построить в разных системах координат при x∈[-2;1,8] графики

функций:

2132

xxxY

+++

=

0,0,

22

)(sin21

3 1,0

22

>≤

+

+−+

=−

xx

ex

xxG

x

≥∈<

++

++

=1,

)1;0[,0,

|)3sin(|21

1

11

2

xx

x

xx

xxx

Z .

2. Построить в одной системе координат при x∈[-3;0] графики функ-ций:

• Y = 3sin(3πx)cos(2πx); • Z = cos3(4πx)sin(πx).

3. Построить поверхность 422,0 22 yxez x −= при x, y∈[-1;1]. 4. Найти все корни уравнения x3 – 0,12x2 – 1,4775x + 0,191906 = 0,

строя график функции и затем используя средство Подбор параметра.

Вариант 7 1. Построить в разных системах координат при x∈[-1,7;1,5] графики

функций:

2211

xxxY+++

+=

Page 350: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

350

>++

+

≤+

=

−0,

111

0,1

3 2,0

2

xex

xx

G

x

≥∈<

++

+

+++

=1,

)1;0[,0,

|)sin(5,0|21

21

11

2

2

2

xx

x

xxx

xxx

Z.

2. Построить в одной системе координат при x∈[-3;0] графики функ-ций:

• Y = 2sin(2πx)cos(4πx); • Z = cos2(3πx) – cos(πx)sin(πx).

3. Построить поверхность 22,02 2 yexz y−= при x, y∈[-1;1]. 4. Найти все корни уравнения x3 + 0,77x2 – 0,2513x + 0,016995 = 0,

строя график функции и затем используя средство Подбор параметра.

Вариант 8 1. Построить в разных системах координат при ]8,1;5,1[−∈x графики

функций:

)(sin21

22

1

xxxeY++

+=

>++

+

≤+=

0,1231

0,1

3x

xx

xxG

Page 351: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

351

[ ]

>+

+

∈−+

<++

+

=

1),(cos1

11;0,)1(1

0,131

2

2

2

xx

xxx

xxx

Z.

2. Построить в одной системе координат при ]2;0[∈x графики функции:

• );3cos()2sin(2)3sin( xxxY πππ +=

• ).(sin)3cos()cos( 2 xxxZ πππ −=

3. Построить поверхность при ]1;1[, −∈yx

+≤−

<+≤−

<+−

=

yxye

yxex

yxex

zx

y

y

1,

15,0,2

5,0,

2

2

2

4. Найти все корни уравнения 0037638,03999,088,0 23 =+−+ xxx , строя график функции и затем используя средство Подбор параметра.

Вариант 9 1. Построить в разных системах координат при x∈[1,4;1,9] графики

функций:

)(sin2

1 22 x

xxeY

x

++

=−

>++

≤+

+

=

0,)(cos2

1

021

3 xx

X

xXX

G

Page 352: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

352

[ ],1,)(sin

1;0,1)(sin

01

21

2.0

2

2

2

>

∈+

<++

=

xex

xxx

xx

x

Zx

2. Построить в одной системе координат при х∈[0;2] графики функ-ций:

• );2cos()3sin(2)sin()3cos( xxxxY ππππ += • )3cos()(cos2 xxZ ππ −= . 3. Построить поверхность при х∈[-1;1]

>+−

≤+−=

1,3,1,3

2232

2232

yxyxyxyx

z .

4. Найти все корни уравнения 0146718,08269,078,0 23 =+−+ xxx , строя график функции и затем используя средство Подбор параметра.

Вариант 10 1. Построить в разных системах координат при ]4.1;4.1[−∈x графики

функций:

)sin(11

xexxY

x ++

+=

>+

++

≤+=

0,)(cos1

1)(sin

0,1

22

3 2

xx

xx

xxG

[ ]

>++

+∈+

<+

=

1,31

)sin(11;0,1

0,1

2

22

xxx

xxx

xex

x

Z

x

2. Построить в одной системе координат при ]2;0[∈x графики функций:

Page 353: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

353

• );3sin()cos()2sin(2 xxxY πππ +=

• ).4cos()(sin)2cos( 2 xxxZ πππ −=

3. Построить поверхность yexxz y222 5)(sin3 −= при ]1;1[, −∈yx . 4. Найти все корни уравнения 0907574,39347,128,2 23 =−−+ xxx ,

строя график функции и затем используя средство Подбор параметра.

Page 354: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

354

Лабораторная работа №6. «Решение уравнений с помощью метода деления отрезка пополам»

Задание

Теоретический материал, необходимый для выполнения лаборатор-

ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

1. Преобразовать заданное уравнение к виду F(x) = 0. 2. Построить таблицу значений функции на заданном отрезке. 3. Построить график функции F(x). 4. Локализовать корни, т. е. найти интервалы, на которых корни

уравнения существуют. Такими интервалами локализации корней могут служить промежутки, на концах которых функция имеет противополож-ные знаки.

5. Определить по графику первый из корней уравнения и первый от-резок локализации этого корня.

6. Методом половинного деления найти корень уравнения с точно-стью ε=0,001.

7. Повторить пункты 5 и 6 для следующих корней уравнения. 8. Вариант уравнения выбирается по номеру магистранта в списке.

Варианты уравнений 1. Найти корни нелинейного алгебраического уравнения

( ) 12cos)5,1sin( 2 ++=+ xx

при 2≤x . 2. Найти корни нелинейного алгебраического уравнения

x x xx

sin − + + =2 15 0

на отрезке [ ]10;1 . 3. Найти корни нелинейного алгебраического уравнения

x xx

x⋅ =

+cos

102 при [ ]15;1∈x .

4. Решить нелинейное уравнение tg(x x x) ln( )+ + =2 23 0

Page 355: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

355

на отрезке [ ]4;0 . 5. Решить нелинейное уравнение

5,0)4/sin( 2

+= xe x

и найти его корни на отрезке ]7;0[ . 6. Найти корни нелинейного алгебраического уравнения

1,0sin32)2( =−+− xx

на отрезке [ ]5;2− . 7. Найти корни нелинейного уравнения

( ) ( )32 3,05,014,1cos2 −+=− xx на отрезке [ ]3;1− . 8. Найти корни нелинейного алгебраического уравнения

( ) 12sin)5,1cos( 2 ++=+ xx

при 5,2≤x .

Page 356: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

356

Лабораторная работа №7. «Применение массивов в решении экономических задач»

Задания

Теоретический материал, необходимый для выполнения лаборатор-ной работы, содержится в «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздо-ва Т.В.

I. Выполните следующие задания с помощью средств Microsoft

Excel в соответствии с номером варианта (номер варианта выбирается по номеру магистранта в списке).

Вариант 1 1. Решить системы линейных уравнений AX=B, A3X=B и вычис-

лить значение квадратичной формы Z=YTATA2Y, где

=

7865678578647459

A ,

=

7360

B,

=

3262

Y

2. Вычислить:

∑ ∑∑

=

= = =

+

+

= n

ii

n

i

m

i

m

jijii

x

byxS

1

1

2

1 1

3

2

,

где x, y – векторы из n компонентов, b – матрица размера mxm, при-чем n=4, m=2 и

( ) ( )

===

5214

,3,2,7,1,3,2,1,3 byx .

Вариант 2

Page 357: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

357

1. Решить системы линейных уравнений АХ=B, A2ATX=B вычис-лить значение квадратной формы Z=YТA3Y, где

=

7384353247648359

A ,

=

2413

B ,

=

3153

Y

2. Вычислить

,11

2

1

2

1

1 11

+

+

+

=

∑∑

∑∑∑

==

= ==

m

ii

m

ii

n

i

n

jij

m

ii

aa

caS

где a – вектор из m – компонентов, с – матрица размера nxn, причем n=3, m=4

( ) .352642422

,3,2,1,3

== ca

Вариант 3 1. Решить системы линейных уравнений AX=B, AАТАХ=B и вы-

числить значение квадратичной формы Z=YTATA3Y, где

=

2373862135445241

A ,

=

7183

B,

=

1521

Y.

2. Вычислить

Page 358: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

358

∑ ∑∑∑

=

= = ==

+

++

= n

ii

n

i

m

i

m

jij

n

iii

y

byxS

1

1

3

1 11

2

3

52

,

где x, y – векторы из n компонентов, b – матрица размерности mxm, при-чем n= 4, m = 2 и

( ) ( )

===

5214

,3,2,7,1,4,7,2,1 byx

Вариант 4 1. Решить системы линейных уравнений AX=B, A2АТАХ=B и вы-

числить значение квадратичной формы Z=YTATAАTY, где

=

1457712457252532

A,

=

2323

B,

=

2213

Y.

2. Вычислить

∑ ∑∑∑∑= = == =

+−+=

m

i

n

i

n

jij

n

i

n

jiji ccaS

1

2

1 11 1

2 173 ,

где a – векторы из m компонентов, c – матрица размера nxn, причем n= 3, m=4 и

( )

==

352642422

,3,2,1,3 ca .

Вариант 5 1. Решить системы линейных уравнений AX=B, AАТА2Х=B и вы-

числить значение квадратичной формы Z=YTA3ATY, где

Page 359: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

359

=

7384353247648369

A ,

=

2413

B ,

=

3153

Y .

2. Вычислить

+−

+

++= ∑∑∑ ∑∑∑

=== = ==

n

iii

n

ii

n

i

m

i

m

jij

n

iii yxxbyxS

111 1 11

2 1222 ,

где x, y – векторы из n компонентов, b – матрица размера mxm, причем n = 4, m = 2 и

( ) ( )

===

5214

,3,2,7,1,4,7,2,1 byx .

Вариант 6 1.Решить системы линейных уравнений AX=B, A3ATX=B и вы-

числить значение квадратной формы Z=YTА2ATAY, где

=

7536763826144742

A ,

=

1302

B ,

=

1412

Y

2. Вычислить

∑∑ ∑∑∑∑= = == ==

+

+−+

=

n

i

n

j

m

ii

n

i

n

jijij

m

ii accaS

1 1 1

2

1 1

2

1,13

где a – вектор из m – компонентов, с – матрица размера nxn, причем n=3, m=4

( ) .352642422

,3,1,3,3

== ca

Вариант 7

Page 360: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

360

1. Решить системы линейных уравнений AX=B, АТА3Х=B и вы-числить значение квадратичной формы Z=YTAATA2Y, где

=

6391554364625433

A,

=

3041

B,

=

2121

Y.

2. Вычислить

∑∑∑ ∑=== =

++

+=

n

ii

n

ii

n

i

n

iiii xxyxxS

1

2

11 1,322

где x, y – векторы из n компонентов, причем n = 4 и

( ) ( )3,2,7,1,4,7,2,1 == yx .

Вариант 8 1. Решить системы линейных уравнений AX=B, AАТА2Х=B и вы-

числить значение квадратичной формы Z=YTA2ATAY, где

=

1331212262252512

A ,

=

2031

B ,

=

1213

Y .

2. Вычислить

+

+−

+

+= ∑∑∑∑∑∑

= == ===

n

i

n

jij

n

i

n

jij

m

ii

m

ii ccaaS

1 1

2

1 11

22

11111 ,

где a – вектор из m компонентов, c – матрица размера nxn причем n= 2, m= 4 и

Page 361: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

361

( )

==

2312

,3,1,4,1 ca .

Вариант 9 1. Решить системы линейных уравнений AX=B, ATAATX=B и вы-

числить значение квадратной формы Z=YTAATAATY, где

=

6342623253647567

A ,

=

3403

B,

=

1102

Y

2. Вычислить

∑∑ ∑∑ ∑ +−

++

+=

= == =

n

ii

n

i

n

iii

n

ii

n

iii xyxyxxS 2

1 11 1

2 315

где x,y – векторы их n компонентов, причем n=4 и ( )4,7,5,7=x , ( )3,2,4,2=y .

Вариант 10 1. Решить системы линейных уравнений AX=B, А2АTAX=B и вы-

числить значение квадратичной формы Z=YTAATAATY, где

=

6342623253647563

A ,

=

3403

B,

=

1102

Y.

2. Вычислить

∑∑∑∑∑∑= === ==

+−−

+

+=

n

i

n

jij

m

ii

n

i

n

jij

m

ii cacaS

1 11

2

1 1

22

14111 ,

где a – вектор из m компонентов, c – матрица размера nxn причем n= 3, m= 4 и

Page 362: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

362

( )

==

537241425

,3,1,1,2 ca.

II. Выполните следующие задания экономического содержания 1-7, используя операции с матрицами в Microsoft Excel.

1. Частный предприниматель приобрел 250 единиц товара I вида и

600 единиц товара II вида; другой частный предприниматель – 200 единиц товара I вида и 700 единиц товара II вида. После удачно проведенной ре-кламной кампании товара I вида первый предприниматель сделал следую-щие закупки: I вида – 350 единиц, II вида – 550 единиц; второй предпри-ниматель соответственно 350 и 600 единиц. Запишите матрицы: а) А1 и А2 всех закупок первым и вторым предпринимателем соответственно; б) об-щих закупок двумя предпринимателями сначала до, а затем после рек-ламной кампании.

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

73463104384312

,

105108520

1551010520

,

6478411

134612417

(магазин 1) (магазин 2) (магазин 3) Покажите, что в каждый сезон магазины 1 и 3 вместе взятые продали

больше каждого вида товаров, чем магазин 2. Найдите матрицу общей продажи всех трех магазинов.

3. Данные о доходах (тыс. ден. ед.) холдинговой компании по трем регионам трех компаний за 2001 и 2003 гг. представлены в матрицах А и В.

=

=

78001220346079061010705202010520

170012205009903601050210780440

BиA

По строкам группируются данные о доходах трех компаний, по столбцам – по регионам продаж. Рассчитайте матрицу приростов доходов за период с 2001 по 2003 г. и матрицу, характеризующую средние размеры приростов доходов компании холдинга за год.

Page 363: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

363

4. Тарифы (ден. ед.) перевозки единицы некоторого товара с трех фабрик четырем базам определяются матрицей

=

1722146812814791510

S

Себестоимость единицы товара на первой фабрике – 40 ден. ед., на второй – 38 ден. ед. и на третьей – 41 ден. ед. Запишите матрицу Р издер-жек производства размером 3x4, элементы которой группируются по стро-кам и столбцам так же, как и в S. Определите матрицу К совокупных из-держек на производство и транспортировку товара.

5. Предприятие производит продукцию двух видов и использует сы-рье двух типов. Нормы затрат сырья на единицу продукции каждого вида заданы матрицей:

=

5132

A ,

у которой по строкам указано количество (у. е.) сырья, расходуемого на производство единицы продукции I и II вида. Стоимость (ден. ед.) едини-цы сырья каждого типа задана матрицей В = [70 30]. Каковы общие затра-ты предприятия на производство 100 у.е. продукции I вида и 150 у.е. II ви-да?

6. Предприятие производит продукцию трех видов и использует сы-рье двух типов. Нормы затрат сырья (у. е.) на единицу продукции каждого вида заданы матрицей:

=

431312

A

Стоимость (ден. ед.) единицы сырья каждого типа задана матрицей В = [10 15]. Каковы общие затраты предприятия на производство 100 у.е. продукции I вида, 200 и 150 у.е. продукции II и III видов соответственно?

7. Предприятие выпускает 3 вида изделий, используя при этом сырье 3 типов. Нормы расхода сырья по видам изделий указаны в таблице.

Тип сы-

рья Норма расхода сырья на 1 изде-

лие по видам 1 2 3

I 4 5 6 II 1 2 3 III 0 1 4

Требуется определить объем выпуска продукции каждого вида, если из-вестно, что запас сырья I типа составляет 5500 единиц, II типа – 2050 еди-

Page 364: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

364

ниц, III типа – 1400 единиц. Указанные запасы сырья должны быть исполь-зованы полностью.

III. Выполните по вариантам следующие задания на решение си-стем уравнений.

Задания

1. Составить математическую модель в виде системы уравнений. 2. Решить ее средствами Microsoft Excel. 3. Вариант задания выбрать по номеру в списке. Вариант 1 Расценки на проведение работ для каждого вида услуг приведены в

таблице.

Вид работ

Нормативы по видам оборудования, ден.ед. Полные затраты

на услуги, ден.ед.

меха-ниче-ское

теп-ловое

энерге-тиче-ское

Техническое обслуживание 5 1 2 77

Транспортные услуги 4 3 6 132

Капитальный ремонт 12 23 18 536

Найдите расчетные объемы работ (у.е.), которые смогут окупить затраты на услуги.

Вариант 2 За 16 м материи 1-го сорта и 20 м материи 2-го сорта заплатили 62

ден. ед. Если бы материю покупали не в магазине, а на фабрике, произво-дящей эту ткань, то за эту же покупку заплатили бы на 18 ден. ед. меньше, так как на фабрике цена материи 1-го сорта на 25 % меньше, чем в мага-зине, 2-го сорта – меньше на 33% . Сколько стоит 1 м ткани каждого сорта в магазине?

Вариант 3

Page 365: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

365

Предприятие выпускает три вида продукции, используя сырье трех типов. Характеристики производства описаны в следующей таблице.

Тип сы-рья

Нормы расхода по видам изделий, у. е.

Запас сырья,

у.е. 1 2 3 1 6 4 5 2400 2 4 3 1 1450 3 5 2 3 1550

Найдите объем выпуска продукции каждого вида при заданных запа-

сах сырья. Вариант 4 Предприятие выпускает три вида продукции, используя сырье трех

типов. Характеристики производства описаны в следующей таблице.

Тип сы-рья

Нормы расхода по видам изделий, у. е.

Запас сырья,

у.е. 1 2 3

1 8 12 16 1800 2 14 21 13 2700 3 9 11 19 2000

Найдите объем выпуска продукции каждого вида при заданных запасах сырья.

Вариант 5 Иванов, Петров и Сидоров купили продукты трех видов соответ-

ственно в количестве 2, 5 и 4 кг; 6, 2 и 3 кг; 1,4 и 7 кг. Иванов уплатил 27 ден. ед., Петров – 23,5 ден. ед. и Сидоров – 34 ден. ед. Определите цены этих продуктов.

Вариант 6 Бригада, которая состоит из пяти рабочих 4-го разряда, трех рабочих

5-го разряда и четырех рабочих 6-го разряда, за смену изготовляет продук-цию в объеме 59 единиц. После того как двое рабочих 4-го разряда и один 6-го разряда были отправлены на уборку, объем изготовленной за смену продукции составил 45 единиц. Когда же из отпуска вернулись трое рабо-чих 5-го разряда и один 4-го разряда, а двое рабочих 6-го разряда ушли в

Page 366: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

366

отпуск, бригада за смену стала изготавливать 52 единицы продукции. Найдите производительности труда за смену рабочих 4-го, 5-го и 6-го раз-рядов.

Вариант 7 Иванов, желая увеличить свои сбережения, размещает денежные

средства во вклады в трех банках, предлагающих разные условия, в том числе разные годовые проценты по вкладам. В первом банке он разместил 1/3 сбережений размером 6000 ден. ед., во втором банке – 1/2, а оставшуюся часть – в третьем банке. К концу года сумма этих вкладов возросла до 7250 ден. ед. Если бы первоначально 1/6 сбережений была размещена в первом банке, 2/3 – во втором банке, а 1/6 – в третьем банке, то через год сумма вклада составила бы 7200 ден. ед. Если бы 1/2 сбережений была положена в первый банк, 1/6 – во второй банк, 1/3 – в третий банк, то сумма вкладов через год составила бы вновь 7250 ден. ед. Какой процент по вкладам был установлен каждым банком?

Вариант 8 Швейная фабрика в течение трех дней производила изделия трех ви-

дов. Объемы выпуска продукции за три дня и денежные затраты на произ-водство за эти дни даны в следующей таблице.

День Объем выпуска продук-

ции, единиц Затраты, тыс. ден.

ед. 1-й вид 2-й вид 3-й вид Первый 50 10 30 176

Второй 35 25 20 168

Третий 40 20 30 184

Найдите себестоимость единицы продукции каждого вида. Вариант 9 Предприятие выпускает три вида продукции с использованием трех

типов сырья. Характеристики производства содержатся в следующей таб-лице.

Тип сы-рья

Нормы расхода по видам продукции, у.е./изд.

Запасы сырья,

у.е. 1-й вид 2-й вид 3-й вид

Page 367: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

367

1 5 12 7 2350

2 10 6 8 2060

3 9 11 4 2270

Найдите объем выпуска продукции каждого вида при заданных запасах сырья.

Page 368: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

368

Лабораторная работа №8. «Экономические расчеты и оптимизационные задачи в Excel»

Необходимые теоретические сведения:

Решение оптимизационных задач

Задача об оптимальном производстве красок

Рассмотрим следующую задачу планирования производства. Не-большая фабрика выпускает 2 типа красок: для внутренних нужд (I) и наружных работ (Е). Продукция обоих видов поступает в оптовую прода-жу. Для производства используются два исходных продукта – А и В. Мак-симально возможные запасы этих продуктов составляют 6 т и 8 т соответ-ственно, Расходы А и В на 1 т соответствующих красок приведены в табл. 8.1.

Таблица 8.1. Исходные данные задачи о производстве красок

Исходный продукт

Расход исходных продуктов (в тоннах) на тонну краски Максимально

возможный запас, т краска Е краска I

А 1 2 6

В 2 1 8

Изучение рынка сбыта показало, что суточный спрос на краску I никогда не превышает спроса на краску Е более чем на 1 т. Кроме того, установле-но, что спрос на краску I никогда не превышает 2 т в сутки. Оптовые цены одной тонны красок равны: 3000 руб. для краски Е и 2000 руб. для краски I.

Какое количество краски каждого вида должна производить фабри-ка, чтобы доход от реализации продукции был максимальным?

Для решения этой задачи необходимо сначала построить математи-ческую модель. Процесс построения модели можно начать с ответа на сле-дующие вопросы:

− Для определения каких величин строится модель? Другими сло-вами, что является переменными модели?

− В чем состоит цель, для достижения которой из множества всех допустимых значений переменных выбираются оптимальные?

− Каким ограничениям должны удовлетворять неизвестные?

Page 369: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

369

В нашем случае фабрике необходимо спланировать объем производства красок так, чтобы максимизировать прибыль. Поэтому переменными яв-ляются

− хI суточный объем производства краски I; − xE суточный объем производства краски E.

Суммарная суточная прибыль от производства хI краски I и хЕ краски Е равна: z = 3000 хI + 2000 xE Целью фабрики является определение среди всех допустимых значений хI и xE таких, которые максимизируют суммарную прибыль, т. е. целевую функцию z.

Перейдем к ограничениям, которые налагаются на xI и xE. Объем производства красок не может быть отрицательным. Следовательно,

хЕ, xI ≥0. Расход исходного продукта для производства обоих видов красок не пре-восходить максимально возможный запас данного исходного продукта. Таким образом,

xE + 2xI ≤6, 2хЕ + xI ≤8.

Кроме того, ограничения на величину спроса на краски имеют вид: xI – xE ≤1, xI ≤2.

Таким образом, математическая модель данной задачи имеет следующий вид: Максимизировать: z = 3000хЕ + 2000хI, при ограничениях:

xE + 2xI ≤6, 2хЕ + xI ≤8. xI – xE ≤1, xI ≤2. хЕ, xI ≥0

Заметим, что данная модель является линейной, т. к. целевая функция и ограничения линейно зависят от переменных. Перейдем к вводу исходных данных на рабочем листе для решения задачи о красках. Для этого:

1. Отведите ячейки A3 и В3 под значения переменных хЕ и xI со-ответственно (рис. 5.1).

2. Введите в ячейку С4 функцию цели =3000*АЗ+2000*ВЗ

Page 370: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

370

3. Введите в ячейки диапазона А7:А10 левые части ограничений, а в ячейки диапазона В7:В10 соответствующие правые части ограничений: Ячейка Формула Ячейка Значение А7 =АЗ+2*ВЗ В7 6 А8 =2*АЗ+В3 В8 8 А9 =ВЗ-А3 В9 1 А10 =ВЗ В10 2

Рис. 8.1. Диапазоны, отведенные под переменные, целевую функцию и ограничения в

задаче о производстве красок Решим задачу при помощи средства Поиск решения. Оно является одной из надстроек Excel. Если в меню Сервис отсутствует команда Поиск ре-шения, для ее установки необходимо выбрать команду Сервис – Надстройки. На экране отобразится диалоговое окно Надстройки. В списке Список надстроек выберите Поиск решения и нажмите кнопку ОК. Переходим к нахождению оптимального производства красок.

1. Выберите команду Сервис – Поиск решения. На экране отобра-зится диалоговое окно Поиск решения (рис. 8.2).

Page 371: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

371

Рис. 8.2. Поиск решения после заполнения полей для задачи производства красок

2. Нажмите кнопку Параметры. На экране отобразится диалоговое

окно Параметры поиска решения. В диалоговом окне Параметры поиска решения можно изменять условия и варианты поиска решения ис-следуемой задачи, а также загружать и сохранять оптимизируемые модели. Значения и состояния элементов управления, используемые по умолчанию, подходят для решения большинства задач. В нашем конкретном случае установите флажок Линейная модель, а остальные значения, которые ис-пользуются по умолчанию, можно оставить так, как они и есть. Нажмите кнопку ОК. На экране опять отобразится окно Поиск решения.

3. Нажмите кнопку Выполнить. На экране отобразится окно Резуль-таты поиска решения (рис. 8.3).

4. После нажатия кнопки ОК, результаты будут внесены в рабочий лист.

Рис. 8.3. Оптимальное решение задачи о производстве красок

Задача об оптимальном планировании штатного расписания

Page 372: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

372

Рассмотрим задачу оптимального планирования штатов. Авиакомпа-нии требуется определить, сколько стюардесс следует принять на работу в течение шести месяцев при условии, что каждая из них, прежде чем при-ступить к самостоятельному выполнению обязанностей стюардессы, должна пройти предварительную подготовку. Потребности в количестве летного времени известны и приведены в табл. 8.2.

Таблица 8.2. Потребности в стюардессо-часах в задаче об оптимальном планировании штатного расписания

Месяц Потребность, с.-ч. Месяц Потребность, с.-ч. Январь 8000 Апрель 10000

Февраль 9000 Май 90000 Март 8000 Июнь 12000

Подготовка стюардессы к выполнению своих обязанностей на регу-

лярных авиалиниях занимает один месяц. Следовательно, прием на работу должен, по крайней мере, на месяц опережать "ввод стюардессы в строй". Кроме того, каждая обучаемая стюардесса должна в течение месяца, отве-денного на ее подготовку, пройти 100-часовую практику непосредственно во время полетов. Таким образом, за счет каждой обучаемой стюардессы в течение месяца освобождается 100 ч. рабочего времени, отведенного для уже обученных стюардесс.

Каждая полностью обученная стюардесса в течение месяца может иметь налет до 150 ч. Авиакомпания в начале января уже имеет 60 опыт-ных стюардесс. При этом ни одну из них не снимают с работы. Установле-но также, что приблизительно 10% обученных стюардесс увольняются по собственному желанию по семейным или другим обстоятельствам.

Опытная стюардесса обходится авиакомпании в $800, а обучаемая – в $400 в месяц. Необходимо спланировать штат авиакомпании, минимизи-рующий издержки за отчетные шесть месяцев.

Для данной задачи также можно выписать математическую модель, но ее удобнее проанализировать в более развернутой форме. А именно:

1. Отведите диапазон ячеек В3:В8 под число новых стюардесс, при-нимаемых на работу с января по июнь (рис. 5.9).

2. В ячейку В2 введем число работающих стюардесс в декабре. 3. В ячейках диапазона D3:D8 будем вычислять число постоянно ра-

ботающих стюардесс в текущем месяце. Для этого: • в ячейку D3 введите формулу

=В2; • в ячейку D4 введите формулу

=D3+0.9*B3;

Page 373: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

373

• выберите ячейку D4, расположите указатель мыши на ее марке-ре авзаполнения и протяните его вниз на диапазон D5:D8. Теперь, в ячей-ках диапазона D3:D8 будем вычислять число постоянно работающих стю-ардесс в текущем месяце.

Рис. 8.4. Исходные данные задачи о штатном расписании

4. В ячейках диапазона ЕЗ:Е8 вычислим налет по месяцам. Для это-

го: • введите в ячейку Е3 формулу

=D3*$G$12+B3*$F$12 где в ячейки F12 и G12 введен допустимый налет обучаемой и работающей стюардессы.

• выберите ячейку Е3, расположите указатель мыши на ее маркере авзаполнения и протяните его вниз на диапазон Е4:Е8. Теперь, в ячейках диапазона ЕЗ:Е8 будет вычисляться налет по месяцам.

5. В ячейках диапазона F3:F8 вычислим затраты по месяцам. Для этого:

• введите в ячейку F3 формулу =D3*$E$12+B3*$D$12 где в ячейки D12 и Е12 введены зарплата обучающейся и рабо-тающей стюардессы;

• выберите ячейку F3, расположите указатель мыши на ее марке-ре авзаполнения и протяните его на диапазон F4:F8.

6. Осталось только вычислить суммарные затраты за планируемый период. Для этого в ячейку F9 введите формулу =CYMM(F3:F8). Теперь все готово для решения задачи о составлении штатного расписания при помощи средства Поиск решения.

1. Выберите команду Сервис – Поиск решения.

Page 374: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

374

2. На экране отобразится диалоговое окно Поиск решения. За-полните диалоговое окно Поиск решения, как показано на рис. 8.4.

Результаты расчета оптимального штата стюардесс приведены на рис. 8.5.

Рис. 8.5. Найденное решение задачи о штатном расписании

Транспортная задача

Рассмотрим еще один пример применения средства Поиск решения. Фирма имеет 4 фабрики и 5 центров распределения ее товаров. Фабрики располагаются в Денвере, Бостоне, Нью-Орлеане и Далласе с производ-ственными возможностями соответственно 200, 150, 225 и 175 единиц про-дукции ежедневно. Распределительные центры располагаются в Лос-Анджелесе, Далласе, Сент-Луисе, Вашингтоне и Атланте с потребностями в 100, 200, 50, 250 и 150 единиц продукции ежедневно, соответственно. Хранение на фабрике не поставленной в центр распределения единицы продукции обходится в $0,75 в день, а штраф за просрочку поставки зака-занной потребителем в центре распределения единицы продукции, но там не находящейся, равен $2,5 в день. Стоимость перевозки единицы продук-ции с фабрик в пункты распределения приведена в табл. 8.3.

Page 375: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

375

Таблица 8.3. Транспортные расходы 1

Лос-Ан-

джелес

2 Дал-лас

3 Сент-Луис

4 Вашингшинг-

тон

5 Ат-

ланта

Производ-ство

1 Денвер 1,5 2 1,75 2,25 2,25 200 2 Бостон 2,5 2 1,75 1 1,5 150 3 Нью-Орлеан 2 1,5 1,5 1,75 1,75 225 4 Даллас 2 0,5 1,75 1,75 1,75 175 Потребность 100 200 50 250 150

Необходимо так спланировать перевозки, чтобы минимизировать

суммарные транспортные расходы. Для решения данной задачи построим ее математическую модель.

Неизвестными здесь являются объемы перевозок: Пусть хij – объем перево-зок с i-ой фабрики в j-ый центр распределения. Функцией цели являются суммарные транспортные расходы, т. е.

∑∑= =

=4

1

5

1i jijij xcz

где сij – стоимость перевозки единицы продукции с с i-ой фабрики в j-ый центр распределения. Кроме того, неизвестные должны удовлетворять сле-дующим ограничениям:

− неотрицательность объема перевозок; − т. к. модель сбалансирована, то вся продукция должна быть выве-

зена с фабрик, и потребность всех центров распределения должна быть полностью удовлетворена.

Таким образом, мы имеем следующую модель:

минимизировать ∑∑= =

=4

1

5

1i jijij xcz

при ограничениях:

0

],4;1[

],5;1[

,

5

1

,

4

1

∈=

∈=

=

=

ij

ij

ij

ji

ij

x

iax

jbx

где аi – объем производства на i-ой фабрике; bj – спрос в j-ом центре рас-пределения. Выполните следующую подготовительную работу для решения транс-портной задачи с помощью средства Поиск решения (рис. 8.6).

1. Введите в ячейки диапазона В3: F6 стоимости перевозок.

Page 376: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

376

2. Отведите ячейки диапазона В8:F11 под значения неизвестных (объемов перевозок).

3. Введите в ячейки диапазона Н8:Н11 объемы производства на фабриках.

4. Введите в ячейки диапазона В13:F13 потребность в продукции в пунктах распределения.

Рис. 8.6. Исходные данные для транспортной задачи

5. В ячейку В16 введите функцию цели =СУММПР0ИЗВ(ВЗ:F6;В8:F11) 6. В ячейки диапазонов G8:G11 введите формулы, вычисляющие

объемы производства на фабриках, в ячейки диапазона B12:F12 объемы доставляемой продукции в пункты распределения. А именно: Ячейка Формула Ячейка Формула G8 =CУMM(B8:F8) B12 =СУММ(В8:В11) G9 =CУMM(B9:F9) C12 =СУММ(С8:С11) G10 =CУMM(B10:F10) D12 =CУMM(D8:D11) G11 =CУMM(B11:F11) E12 =СУММ(Е8:Е11) F12 =CУMM(F8:F11)

7. Выберите команду Сервис – Поиск решения и заполните диалого-вое окно Поиск решения, как показано на рис. 8.7.

8. Нажмите кнопку Выполнить. Средство Поиск решения найдет

Page 377: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

377

оптимальный план поставок продукции и соответствующие ему транс-портные расходы (рис. 8.8).

Рис. 8.7. Заполненное диалоговое окно Поиск решения для транспортной задачи

Page 378: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

378

Рис. 8.8. Оптимальное решение транспортной задачи

Задача о назначении

В данном разделе продемонстрируем, как средство Поиск решения

позволяет решать задачу о назначении. В нашем конкретном случае задача о назначении формулируется

следующим образом. Имеются четыре рабочих и четыре вида работ. Стои-мости Сij выполнения i-ым рабочим j-ой работы приведены в таблице, где под строкой понимается рабочий, а под столбцом – работа:

Page 379: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

379

Стоимость выполнения работ

Рабочие

1 4 6 3 9 10 7 9 4 5 11 7 8 7 8 5

Виды работ

Необходимо составить план выполнения работ таким образом, чтобы все работы оказались выполненными, каждый рабочий был загружен толь-ко на одной работе, а суммарная стоимость выполнения всех работ была минимальной.

Замечание. Данная задача является сбалансированной, т. е. число работ совпадает с числом рабочих. Если задача несбалансированна, то пе-ред началом решения ее необходимо сбалансировать, введя недостающее число фиктивных строчек или столбцов с достаточно большими штраф-ными стоимостями работ.

Для решения данной задачи сначала построим ее математическую модель. Обозначим символом Хij переменную, имеющую только два допу-стимых значения: 0 или 1. Такие переменные называются двоичными. Причем, будем считать, что:

− Хij = 1, если i-ым рабочим выполняется j-ая работа; − Хij = 0, если i-ым рабочим не выполняется j-ая работа. Тогда математическую модель задачи о назначении можно сформу-

лировать следующим образом: минимизировать

∑∑= =

=4

1

4

1i jijij xcz

при ограничениях

].4;1[],4;1[};1,0{

],4;1[,1

],4;1[,1

4

1

4

1

∈∈∈

∈=

∈=

=

=

jix

ix

jx

ij

jij

iij

Для решения этой задачи с помощью средства Поиск решения необ-ходимо выполнить некоторые предварительные действия:

1. В ячейки диапазона А2: D5 введите стоимости работ. 2. Отведите ячейки диапазона F2:I5 под неизвестные. 3. Введите в ячейку J1 функцию цели, вычисляющую стоимость

работ:

Page 380: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

380

=СУММПРОИЗВ(А2:D5; F2:I5) 4. В ячейки диапазонов J2:J5 и F6:I6 введите формулы, задающие

левые части ограничений и представленные в следующей ниже таблице.

Ячейка Формула Ячейка Формула J2 =CYMM(F2:I2) F6 =CYMM(F2:F5) J3 =СУMM(F3:I3) G6 =СУММ(G2:G5) J4 =CYMM(F4:I4) H6 =СУММ(Н2:Н5) J5 =CУMM(F5:I5) I6 =СУММ(12:15)

Рис. 8.9. исходные данные задачи о назначении и заполненное диалоговое окно Поиск

решения

Page 381: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

381

Рис. 8.10. Оптимальное решение задачи о назначении

Теперь все готово для поиска решения при помощи средства Поиск

решения. 1. Выберите команду Сервис – Поиск решения и заполните диало-

говое окно Поиск решения, как показано на рис. 8.9. 2. Нажмите кнопку Выполнить. Средство Поиск решения найдет

оптимальный план назначений на работы (рис. 8.10).

Расходы на маркетинг и рекламу

Условие задачи: каким должны быть расходы на маркетинг и рекла-му, чтобы годовой бюджет стал равным 500000 долл. При стоимости каж-дого проекта 50000 долл.?

Создадим следующую таблицу: Стоимость

производства Накладные

расходы Маркетинг Реклама Стоимость

проекта Проект 1 21427 4000 5357 3214 33998 Проект 2 23747 4000 5937 3562 37246 Проект 3 23840 4000 5960 3576 37376 Проект 4 25555 4000 6389 3833 39777 Проект 5 24144 4000 6036 3622 37802 Проект 6 23162 4000 5790 3474 36426 Проект 7 28156 4000 7039 4223 43418 Проект 8 23413 4000 5853 3512 36778 Проект 9 21219 4000 5305 3183 33707 Проект 10 24875 4000 6219 3731 38825

Годовой бюджет 375353

Page 382: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

382

Ограничения:

Стоимость проекта равна 50000 Расходы на маркетинг (не менее, чем) 6000

Годовой бюджет не должен превышать 500000 Стоимость каждого проекта рассчитывается как сумма Стоимости произ-водства, Накладных расходов, Маркетинга, Рекламы. Годовой бюджет ра-вен сумме Стоимостей всех проектов. Скопируем таблицу на другой лист книги и выполним команду Сервис – Поиск решения. В диалоговом окне установим ограничения, как показано на рис. 8.11. После этого нажмем кнопку Выполнить. Результат решения задачи приведен на рис. 8.12.

Page 383: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

383

Рис. 8.11. Исходные данные к задаче и задание ограничений

Page 384: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

384

Рис. 8.12. Решение задачи с помощью Поиска решения

Задания

I. Оптимизационные задачи

Предлагается десять вариантов однотипных задач со следующими

формулировками. 1. Транспортная задача. Имеются n пунктов производства и m пунк-

тов распределения продукции. Стоимость перевозки единицы продукции с i-ого пункта производства в j-ый центр распределения Сij приведена в таб-лице, где под строкой понимается пункт производства, а под столбцом – пункт распределения. Кроме того, в этой таблице в i-ой строке указан объ-ем производства в i-ом пункте производства, а в j-ом столбце указан спрос в j-ом центре распределения. Необходимо составить план перевозок по до-ставке требуемой продукции в пункты распределения, минимизирующий суммарные транспортные расходы.

Page 385: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

385

2. Задача о назначении. Имеются n рабочих и m видов работ. Стои-мость Сij выполнения i-ым рабочим j-ой работы приведена в таблице, где под строкой понимается рабочий, а под столбцом – работа. Необходимо составить план работ так, чтобы все работы были выполнены, каждый ра-бочий был занят только на одной работе, а суммарная стоимость выполне-ния всех работ была бы минимальной.

3. Линейная оптимизационная задача.

Номер варианта выполняемого задания совпадает с номером маги-странта по списку (если номер по списку >10, то отнять от номера число 10).

Вариант 1 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

1 3 4 5 20 5 2 10 3 30 3 2 1 4 50 6 4 2 6 20

Объемы по-требления 30 20 60 15

2. Задача о назначении.

Стоимость выполнения работ

Рабочие 3 6 2 5 11 1 2 7 11 3 5 12 11 9 1 2 4 2 10 5

Виды работ 3. Предприятие электронной промышленности выпускает две модели

радиоприемников, причем каждая модель производится на отдельной тех-нологической линии. Суточный объем производства первой линии – 60 из-делий, второй линии – 75 изделий. На радиоприемник первой модели рас-ходуются 10 однотипных элементов электронных схем, на радиоприемник второй модели – 8 таких же элементов. Максимальный суточный запас ис-пользуемых элементов равен 800 единицам. Прибыль от реализации одно-го радиоприемника первой и второй моделей равна $30 и $20 соответ-ственно. Определить оптимальный суточный объем производства первой и второй моделей.

Page 386: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

386

Вариант 2 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

2 7 7 6 20 1 1 1 2 50 5 5 3 1 10 2 8 1 4 20 3 2 1 5 17

Объемы по-требления 40 30 20 20

2. Задача о назначении.

Стоимость выполнения работ Рабочие 1 3 6 5 7

5 2 7 8 3 3 5 1 9 2 6 4 2 10 5

Виды работ 3. Процесс изготовления двух видов промышленных изделий состо-

ит в последовательной обработке каждого из них на трех станках. Время использования этих станков для производства данных изделий ограничено 10 ч в сутки. Найти оптимальный объем производства изделий каждого вида.

Изделие Время обработки одного изделия, мин

Удельная прибыль, S Станок 1 Станок 2 Станок 3

1 10 6 8 2

2 5 20 15 3

Page 387: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

387

Вариант 3 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

6 3 4 5 20 5 2 3 3 70 3 4 2 4 50 5 6 2 7 30

Объемы по-требления 15 30 80 20

2. Задача о назначении.

Стоимость выполнения работ Рабочие 9 4 8 5 7

1 2 9 8 3 3 8 1 9 2 3 4 2 4 5

Виды работ 3. Фирма имеет возможность рекламировать свою продукцию, исполь-

зуя местные радио- и телевизионную сеть. Затраты на рекламу в бюджете фир-мы ограничены $1000 в месяц. Каждая минута радиорекламы обходится в $5, а минута телерекламы – в $100. Фирма хотела бы использовать радиосеть, по крайней мере, в два раза чаще, чем сеть телевидения. Опыт прошлых лет пока-зал, что объем сбыта, который обеспечивает каждая минута телерекламы, в 25 раз больше сбыта, обеспечиваемого одной минутой радиорекламы. Опреде-лить оптимальное распределение ежемесячно отпускаемых средств между радио- и телерекламой.

Вариант 4 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

5 1 7 6 30 1 5 8 1 40 5 6 3 3 10 2 5 1 4 18 3 7 9 1 10

Объемы по-требления 20 40 30 20

2. Задача о назначении.

Page 388: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

388

Стоимость выполнения работ

Рабочие 8 6 2 5 5 2 9 8 3 8 1 9 1 4 2 3

3 7 10 5 Виды работ

3. Фирма производит два вида продукции – А и В. Объем сбыта

продукции вида А составляет не менее 60% общего объема реализации продукции обоих видов. Для изготовления продукции А и В использует-ся одно и тоже сырье, суточный запас которого ограничен величиной 100 кг. Расход сырья на единицу продукции А составляет 2 кг, а на единицу продукции В 4 кг. Цены продукции А и В равны $20 и $40 соответственно. Определить оптимальное распределение сырья для изготовления продук-ции А и В.

Вариант 5 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

3 9 4 5 40 1 8 5 3 10 7 2 1 4 30 2 4 10 6 20

Объемы по-требления 50 10 35 10

2. Задача о назначении.

Стоимость выполнения работ Рабочие 10 8 6 2 7

6 2 9 8 3 3 7 1 10 5 9 10 2 3 4

Виды работ 3. Фирма выпускает ковбойские шляпы двух фасонов. Трудоемкость

изготовления шляпы фасона 1 вдвое выше трудоемкости изготовления шляпы фасона 2. Если бы фирма выпускала только шляпы фасона 1, су-точный объем производства мог бы составить 60 шляп. Суточный объем сбыта шляп обоих фасонов ограничен диапазоном от 50 до 100 штук. При-

Page 389: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

389

быль от продажи шляпы фасона 1 равна $8, а фасона 2 – $5. Определить, какое количество шляп каждого фасона следует изготавливать, чтобы мак-симизировать прибыль.

Вариант 6 1. Транспортная задача.

Стоимость перевозки единицы про-дукции

Объемы производства

6 1 3 1 20 3 4 5 8 30 5 9 3 2 20 2 4 8 4 20 3 2 1 5 17

Объемы по-требления 50 30 20 20

2. Задача о назначении.

Стоимость выполнения работ Рабочие 9 3 2 7

5 4 9 8 7 8 1 10 1 9 10 3

2 7 8 5 Виды работ

3. Изделия четырех типов проходят последовательную обработку на двух станках. Время обработки одного изделия каждого типа на каждом из станков:

Станок Время обработки одного изделия, ч

Тип 1 Тип 2 Тип З Тип 4

1 2 3 4 2

2 3 2 1 2

Затраты на производство одного изделия каждого типа определяются как величины, прямо пропорциональные времени использования станков (в машино-часах). Стоимость машино-часа составляет $10 и $15 для станка 1 и 2 соответственно. Допустимое время использования станков для обра-ботки изделий всех типов ограничено следующими значениями: 500 ма-

Page 390: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

390

шино-часов – для станка 1 и 380 машино-часов для станка 2. Цены изделий типов 1, 2, 3 и 4 равны $65, $70, $55 и $45 соответственно. Составить план производства, максимизирующий чистую прибыль.

Вариант 7 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

5 9 4 5 30 1 5 5 6 20 2 2 10 4 30 3 7 2 6 40

Объемы по-требления 20 50 20 35

2. Задача о назначении.

Стоимость выполнения работ Рабочие 9 4 6 2 10

6 2 10 8 4 3 7 1 10 5 7 10 5 3 9

Виды работ 3. Завод выпускает изделия трех моделей (I, II и III). Для их изго-

товления используются два вида ресурсов (А и в), запасы которых состав-ляют 4000 и 6000 единиц. Расходы ресурсов на одно изделие каждой моде-ли:

Ресурс

Расход ресурса на одно изделие данной мо-дели

I II III

А 2 3 5

В 4 2 7

Трудоемкость изготовления изделия модели I вдвое больше, чем из-делия модели II, и втрое больше, чем изделия модели III. Численность ра-бочих завода позволяет выпускать 1500 изделий модели I. Анализ условий сбыта показывает, что минимальный спрос на продукцию завода составля-ет 200, 200 и 150 изделий моделей I, II и III соответственно. Однако соот-

Page 391: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

391

ношение выпуска изделий моделей I, II и III должно быть равно 3:2:5. Удельная прибыль от реализации изделий моделей I, II и III составляет $30, $20 и $50 соответственно. Определить выпуск изделий, максимизиру-ющий прибыль.

Вариант 8 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

7 1 3 2 30 8 4 5 8 20 5 2 3 7 10 5 5 8 4 27 1 9 7 5 30

Объемы по-требления 30 40 50 10

2. Задача о назначении.

Стоимость выполнения работ Рабочие 10 3 2 4

5 9 10 8 7 8 1 9 11 10 9 12

2 7 8 10 Виды работ

3. Требуется распределить имеющиеся денежные средства по четы-рем альтернативным вариантам. Игра имеет три исхода. Ниже приведены размеры выигрыша (или проигрыша) на каждый доллар, вложенный в со-ответствующий альтернативный вариант, для любого из трех исходов. У игрока имеется $500, причем, использовать в игре их можно только один раз. Точный исход игры заранее неизвестен, и, учитывая эту неопределен-ность, игрок решил распределить деньги так, чтобы максимизировать ми-нимальную отдачу от этой суммы.

Исход Выигрыш или проигрыш на каждый доллар, вложен-ный в данный вариант

1 2 3 4 1 -3 4 -7 15 2 5 -3 9 4 3 3 -9 10 -10

Page 392: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

392

Вариант 9 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

7 9 1 5 20 2 7 5 6 30 3 5 10 8 40 3 7 4 5 30

Объемы по-требления 40 30 30 42

2. Задача о назначении.

Стоимость выполнения работ Рабочие 5 4 12 2 10

6 5 10 8 4 3 7 11 10 8 10 1 5 11 9

Виды работ 3. Небольшая фирма выпускает два типа автомобильных деталей.

Она закупает литье, подвергаемое токарной обработке, сверловке и шли-фовке. Данные, характеризующие производительность станочного парка фирмы:

Станки Деталь А, шт./ч Деталь В, шт./ч Токарный 25 40

Сверлильный 28 35 Шлифовальный 35 25

Каждая отливка, из которой изготавливают деталь А, стоит $2. Стоимость отливки для детали В – $3. Продажная цена деталей равна соответственно $5 и $6. Стоимость часа станочного времени составляет по трем типам ис-пользуемых станков $20, $14 и $17.5. Предполагая, что можно выпускать для продажи любую комбинацию деталей А и В, нужно найти план выпуска продукции, максимизирующий прибыль.

Вариант 10 1. Транспортная задача.

Стоимость перевозки единицы про-

дукции Объемы производства

Page 393: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

393

5 9 3 10 10 3 10 5 9 30 7 2 3 8 20 8 5 11 2 32 5 9 10 5 20

Объемы по-требления 50 10 30 10

2. Задача о назначении. Стоимость выполнения работ

Рабочие 5 12 2 7 10 9 7 12 7 8 11 9 2 10 9 13

12 7 8 3 Виды работ

3. Фирма выпускает ковбойские шляпы двух фасонов. Трудоемкость изготовления шляпы фасона 1 вдвое выше трудоемкости изготовления шляпы фасона 2. Если бы фирма выпускала только шляпы фасона 1, су-точный объем производства мог бы составить 60 шляп. Суточный объем сбыта шляп обоих фасонов ограничен диапазоном от 50 до 100 штук. При-быль от продажи шляпы фасона 1 равна $8, а фасона 2 – $5. Определить, какое количество шляп каждого фасона следует изготавливать, чтобы мак-симизировать прибыль.

II. Оптимизация инвестиционного портфеля (для всех маги-

странтов) Решите задачу формирования оптимального инвестиционного порт-

феля для условий, заданных в Таблице. Таблица

Актив Доходность Срок вы-купа

Надежность Сумма вло-жений

Прибыль

A 6,0% 2008 4 B 7,5% 2004 3 C 5,5% 2005 5 D 9,0% 2013 2 E 7,0% 2003 3 F 6,5% 2006 4

ИТОГО Общая сумма

вложений Общая при-быль портфеля

В НАДЕЖНЫХ АКТИВАХ Сумма в надежных активах

В ДОЛГОСРОЧНЫХ АКТИВАХ Сумма в дол-госрочных

Page 394: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

394

активах ДОХОДНОСТЬ ПОРТФЕЛЯ Доходность

портфеля Задайте произвольные значения столбца Сумма вложений. Рассчи-

тайте значения столбца Прибыль как произведение Доходности и Суммы вложений. С помощью функции СУММ() рассчитайте общую сумму вложений в портфель и общую прибыль портфеля.

С помощью функции СУММЕСЛИ() рассчитайте значение суммы в надежных активах и суммы в долгосрочных активах. Надежным считается актив, у которого значение Надежности не менее 4. Долгосрочным счита-ется актив, Срок выкупа по которому наступает позднее 2007 года.

Рассчитайте в процентах Доходность портфеля как отношение Об-щей прибыли портфеля к Общей сумме вложений.

Выполните команду Сервис – Надстройки, среди доступных ин-струментов выберите Поиск решения.

Выполните команду Сервис – Поиск решения. В качестве целевой ячейки выберите Общую прибыль портфеля, установите ее равной мак-симальному значению. Выберите столбец, содержащий значения Суммы вложений в каждый актив в качестве ячеек для изменения.

Добавьте следующие ограничения: − Общая сумма вложений не превышает 200 000. − Сумма вложений в каждый актив – положительное число. − Сумма вложений в каждый актив не превышает четверти от

Общей суммы вложений. − Сумма в надежных активах составляет не менее 2/3 от Общей

суммы вложений. − Сумма в долгосрочных активах составляет не менее половины

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

и проанализируйте найденное решение.

Page 395: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

395

Лабораторная работа №9. «Финансовый анализ и построение отчетных ведомостей»

Задания

Теоретический материал, необходимый для выполнения лаборатор-

ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В..

Выполнить задания 1-9 в соответствии с номером варианта (но-

мер варианта выбирается по номеру магистранта в списке). 1. Вас просят дать в долг Р руб. и обещают вернуть Р1 руб. через

год, Р2 руб. – через два года и т.д. Рn руб. – через n лет. При какой годовой процентной ставке эта сделка имеет смысл? Вариант n Р Р1 Р2 Р3 Р4 Р5

1 3 17 000 5000 7000 8000

2 4 20 000 6000 6000 9000 7000

3 5 22 000 5000 8000 8000 7000 5000

4 3 30 000 5000 10 000 18 000

5 4 35 000 5000 9000 10 000 18 000

6 5 21 000 4000 5000 8000 10 000 11 000

7 3 25 000 8000 9000 10 000

8 4 31 000 9000 10 000 10 000 15 000

9 5 32 000 8000 10 000 10 000 10 000 11 000

10 3 36 000 10 000 15 000 21 000

2. Вас просят дать в долг Р руб. и обещают возвращать по А руб. в течение n лет. При какой годовой процентной ставке эта сделка имеет смысл? Вариант n Р А

1 7 170 000 30 000

2 8 200 000 31 000

3 9 220 000 33 000

4 10 300 000 34 000

5 11 350 000 41 000

6 7 210 000 32 000

Page 396: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

396

3. Вычислить ежегодные платежи на примере ссуды Р руб. под го-

довую ставку i% срок n лет.

Вариант n Р i

1 7 170 000 5

2 8 200 000 6

3 9 220 000 7

4 10 300 000 8

5 11 350 000 9

6 7 210 000 10

7 8 250 000 11

8 9 310 000 12

9 10 320 000 13

10 11 360 000 14

4. Вы берете в долг Р руб. под годовую ставку i% и собираетесь вы-плачивать по А руб. в год. Сколько лет займут эти выплаты?

5. Составить отчетную ведомость реализации товаров n магазинами

с месяца А по месяц В, структура которой приведена ниже.

7 8 250 000 37 000

8 9 310 000 40 000

9 10 320 000 35 000

10 11 360 000 41 000

Вариант P A i

1 170 000 31 000 3

2 200 000 32 000 4

3 220 000 33 000 5

4 300 000 34 000 6

5 370 000 41 000 7

6 210 000 32 000 8

7 260 000 37 000 9

8 310 000 40 000 10

9 320 000 35 000 4

10 360 000 41 000 5

Page 397: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

397

Вариант А В n

1 май декабрь 5

2 июнь Январь 4

3 июль октябрь 5

4 август январь 6

5 сентябрь декабрь 7

6 октябрь март 8

7 ноябрь март 9

8 декабрь июль 10

9 январь июль 6

10 февраль август 5

Примерная структура отчетной ведомости 6. Вы берете в долг Р руб. под годовую ставку i% и собираетесь от-

давать по А руб. в год. Сколько лет займут выплаты?

Вариант 1 2 3 4 5 6 7 8 9 10

А 200 190 178 164 146 243 320 423 521 711

n 1000 1700 3100 5900 6190 6509 6860 7246 7670 8138

i% 2 3 4 2 2 3 4 5 6 7 7. Вы собираетесь вкладывать по А руб. в течение n лет при годовой

ставке i%. Сколько денег будет на счету через n лет?

Вариант 1 2 3 4 5 6 7 8 9 10

Выручка сети магазинов в млн. руб.

Мага-зин Июнь Июль Август

Сум-марная

выручка

Ме-сто

Сред-няя

выруч-ка

Доля Диапа-зон

Колиличе-

че-ство

1 324 435 534 1293 6 431,00 12% 1000 0 2 435 645 354 1434 5 478,00 13% 1500 2 3 532 623 451 1606 4 535,33 15% 2000 1 4 723 634 751 2108 2 702,67 20% 3 5 536 734 876 2146 1 715,33 20% 6 834 811 435 2080 3 693,33 19%

Итого: 3384 3882 3401 10667

Page 398: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

398

А 200 190 178 164 146 243 320 423 521 711

n 10 11 12 13 14 8 9 10 11 12

i% 2 3 4 2 2 3 4 5 6 7 8. Определить процентную ставку для n годичного займа в Р руб. с

ежегодной выплатой в А руб.

Вари-ант 1 2 3 4 5 6 7 8 9 10

А 200 190 178 164 146 243 320 423 521 711

Р 1000 1700 3100 5900 6190 6509 6860 7246 7670 8138

n 2 3 4 2 2 3 4 5 6 7 9. Составьте таблицу начисления премии по итогам работы сети n

магазинов с месяца А по месяц В по следующему правилу:

• если продукции продано не меньше чем на С руб., то комиссион-ные составляют i%;

• за первое место дополнительно начисляется j1%, за второе место – j2% и т.д., за k-е место дополнительно начисляется jk%.

Вари-ант С i j1 j2 j3 j4 n A B

1 23 000 1 3 1,5 7 Май Июль

2 44 000 2 4 2 6 Июнь Август

3 65 000 3 5 2,5 1,25 5 Июль Ноябрь

4 86 000 4 6 3 1,5 0,75 6 Август Февраль

5 107 000 5 7 3,5 1,75 0,88 7 Май Декабрь

6 128 000 1 3 1,5 0,75 0,38 8 Октябрь Январь

7 149 000 2 4 2 1 0,50 10 Ноябрь Май

8 170 000 3 5 2,5 1,25 0,63 9 Декабрь Май

9 191 000 4 6 3 1,5 5 Январь Май

10 212 000 5 7 3,5 6 Февраль Июнь

Page 399: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

399

ЛАБОРАТОРНЫЕ РАБОТЫ ДЛЯ МАГИСТРАНТОВ СПЕЦИАЛЬНОСТИ

«ЮРИСПРУДЕНЦИЯ»

Лабораторная работа №4. «Microsoft Excel. Базовые операции»

Теоретический материал, необходимый для выполнения лаборатор-

ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

Задания

1. Задача из области криминологии. Описание задачи. Особый интерес для применения уголовного права представляют ин-

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

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

В 1996 году введена категоризация преступлений, когда все деяния, предусмотренные УК, в зависимости от характера и степени общественной опасности, делятся на 4 категории:

− преступления небольшой тяжести; − преступления средней тяжести; − тяжкие преступления; − особо тяжкие преступления.

Их разграничение формализовано по максимальным мерам наказа-ния, предусмотренным УК. К первой категории относятся деяния, за со-вершение которых наказание не превышает 2 лет лишения свободы, ко второй – 5 лет, к третьей – 10 лет, к четвертой свыше 10 лет лишения сво-боды. Если исходить из меры максимальных сроков, то для четвертой кате-гории это будет 20 лет. Переименовав годы в баллы, можно получить еди-ный для всей страны нормативный критерий оценки различных преступле-ний по степени их общественной тяжести. Это будет их индивидуальным индексом.

Для расчета индекса тяжести преступлений используется следующая формула:

∑∑=

Тб

ТТт п ВП

ВПИ

**

Page 400: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

400

где ПТ – количество преступлений некоторого вида за текущий период; ВТ – баллы тяжести преступлений; Пб – количество преступлений некоторого вида за базовый период. Использование индекса тяжести преступлений Итп для простран-

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

Постановка задачи. Пусть в городе N в 1998 году было совершено:

− умышленных убийств – 30; − изнасилований – 15; − хулиганств - 200; − разбоев - 40; − краж – 100.

Пусть в 1997 году было совершено : − умышленных убийств – 25; − изнасилований – 25; − хулиганств - 250; − разбоев - 30; − краж – 150.

Баллы тяжести преступлений: − для умышленных убийств – 20; − для изнасилований – 10; − для хулиганств – 5; − для разбоев – 20; − для краж 10.

Выполнить следующие задания: 1) Подсчитать индекс тяжести преступлений в 1998 году (по отноше-

нию к 1997 году), заполнив следующую таблицу:

Вид пре-ступ-ления

Баллы Число пре-

ступл. в 1997 г.

Число преступл. в 1998 г.

ПТ*ВТ в 1998 г.

Пб*ВТ

в 1997 г.

ИТОГО: ххх ххх ххх ххх

Page 401: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

401

Итп=…

2) Отформатировать построенную таблицу. 3) Результат сохранить в файле с именем «Криминология». 2. Задача «Динамика преступности». Описание задачи. Динамика преступности – это комплексный качественно-

количественный показатель. Она отражает изменение преступности во времени. Во времени изменяется как состояние (уровень) преступности (количественный показатель), так и ее структура (качественный показа-тель). За временной интервал обычно принимается год. Но изменения пре-ступности могут отслеживаться и по пятилетиям, что сглаживает ее дина-мику, по месяцам и даже по дням, что дает возможность выявить все ее ко-лебания. Выбор интервала зависит от цели и характера исследования пре-ступности.

Динамика уровня преступности, выраженного в абсолютных числах зарегистрированных преступлений, чаще всего задается в виде статистиче-ского временного ряда, например, по годам. Приведем реальные цифры числа преступлений в России:

1991 год – 2 167 964 преступления; 1992 год – 2 760 652 преступления; 1993 год – 2 779 614 преступлений; 1994 год – 2 632 708 преступлений; 1995 год – 2 755 669 преступлений; 1996 год – 2 625 081 преступление; 1997 год – 2 397 311 преступлений; 1998 год – 2 581 940 преступлений. Сопоставление по годам этих абсолютных данных, взятых в сравне-

нии с показателями предыдущего года, свидетельствует о том, что в 1992 году преступность увеличилась на 592 688 преступлений, в 1993 году – на 38 962 преступления, в 1994 году – сократилась на 166 906 деяний, в 1995 году – вновь увеличилась на 122 961 преступление, в 1996 году – сократи-лась на 130 588 преступлений, в 1997 году – на 227 770, а в 1998 году – возросла на 184 625 деяний. В целом же зарегистрированная преступность за 1991 – 1998 годы возросла на 413 976 деяний.

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

Однако динамика преступности в таком виде рассматривается редко: абсолютные показатели громоздки, их сопоставление по годам требует со-

Page 402: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

402

ответствующих вычислений, они минимально наглядны. Поэтому динами-ка уровня преступности, как правило, выражается в относительных показа-телях, в %, рассчитанных либо к первому, как его называют базовому, году (неподвижная база), либо к предыдущему году (цепной способ, подвижная база). Такая динамика, выраженная в %, более наглядна и понятна. Она также может быть проиллюстрирована графически.

Выполнить следующие задания: 1) Переименовать «Лист 1» в «Абсолютные_цифры». 2) По данным, приведенным в разделе «Описание задачи», на листе

«Абсолютные_цифры» составить таблицу «Динамика уровня преступности в России за 1991 – 1998 годы, выраженного в абсолютных числах»:

Годы Число

преступлений Прирост (снижение)

преступности к предыд. году

… … …

Итого: ххх ххх 3) Отформатировать составленную таблицу. 4) Переименовать «Лист 2» в «Относительные_цифры». 5) На листе «Относительные_цифры» построить таблицу «Динамика

уровня преступности в России в 1991 – 1998 годах, выраженного в относи-тельных показателях»:

Годы Преступность к 1991 году, %

Преступность к предыд. году, %

Темпы прироста (снижения)

… … … …

Указания. a) Значения в столбце "Преступность к 1991 году, %" вычисляются с

использованием значений в таблице, содержащейся на листе «Абсолют-ные_цифры». При этом текущее значение числа преступлений делится на значение числа преступлений в 1991 году и умножается на 100%.

b) Значения в столбце «Преступность к предыд. году, %» вычисля-ются с использованием значений в таблице, содержащейся на листе «Абсо-лютные_цифры». При этом текущее значение числа преступлений делится на значение числа преступлений в предыдущем году и умножается на 100%.

c) Значения в столбце «Темпы прироста (снижения)» вычисляются как разность соответствующих значений столбца «Преступность к предыд. году, %» и 100%.

Page 403: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

403

6) Отформатировать построенную таблицу. 7) Сохранить результат в файле с именем «Динами-

ка_преступности». 3. Задача «Преступность и судимость». Описание задачи. Осуждение виновного является предпоследним этапом уголовного

правосудия, если включать в него отбывание наказания. Число лиц, факти-чески совершивших преступления, выявленных органами правоохраны, преданных суду и осужденных, проходя через систему правосудия, убыва-ет от стадии к стадии, оставаясь в числе нераскрытых преступлений, в чис-ле освобожденных от ответственности по нереабилитирующим основаниям и даже в числе оправданных. Количественное уменьшение лиц при про-хождении через "фильтр" правосудия составляет суть коэффициента убы-вания, характеризуя, с одной стороны, уровень гуманности, с другой – уро-вень эффективности системы уголовной юстиции. Чем меньшее количе-ство лиц (конечно, до оптимального предела) из числа выявленных право-нарушителей осуждается к реальному уголовному наказанию, особенно к лишению свободы, тем гуманнее и более индивидуализировано правосу-дие. И, наоборот, чем больше лиц из числа фактически совершивших пре-ступления будет привлечено к уголовной ответственности и осуждению, тем неотвратимее, результативнее работает система уголовной юстиции.

В 50 – 60-е годы вопреки здравому смыслу число выявленных право-нарушителей было выше уровня учтенных преступлений, а число осуж-денных приближалось к числу выявленных лиц. Все признаки «сверхвысо-кой эффективности» были налицо, но по сути это никак не могло быть со-гласовано не только с гуманностью, но и с законностью. В последние годы картина иная: между уровнями учтенной преступности, выявленных пра-вонарушителей и осужденных образовались большие расхождения («нож-ницы»), свидетельствующие о низкой эффективности. Хотя это еще не означает, что отечественное правосудие стало более гуманным.

В течение 1961 – 1982 годов в СССР (период застоя) не происходило резких криминологически значимых изменений, преступность и судимость увеличивались постепенно и почти равномерно. Корреляция между ними была близка к прямой полной зависимости. Они различались лишь по при-росту. Среднегодовой темп прироста преступности был 3,05%, а судимости – 1,75%. Это увеличивало «ножницы» между их динамическими кривыми. В 1961 году «доля» судимости в «структуре» преступности составляла 91,1%, а в 1982 – 69,4%.

Андроповская требовательность к правоохранительным органам привела к всплеску учтенной преступности (+21,7%). Качнулась в этом же направлении и судимость (+6,5%), но в три раза меньше, так как раскрыва-емость возросшей преступности не увеличилась.

Page 404: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

404

Горбачевская перестройка, начавшаяся с волюнтаристской борьбы с пьянством (1986 – 1987 годы) и непросчитанных политических изменений, увеличила "ножницы" между преступностью и судимостью: преступность после некоторого спада в период борьбы с пьянством стала расти, а суди-мость продолжала снижаться. Темпы их прироста (снижения) соответ-ственно были в 1987 году -9,5 и -25,5, в 1988 году +3,8 и –25,5, в 1989 году +31,8 и +0,8%. Доля судимости в структуре преступности в этом году сни-зилась до самой низкой величины (27,3%).

К концу существования СССР уровни преступности, выявленных правонарушителей и осужденных существенно разошлись. Если в 1961 го-ду они соотносились как 100 (преступность): 111,1 (выявленные правона-рушители): 91,1 (судимость), то в 1991 году – 100: 46,1: 28,5. Условно при-нимая процент выявленных правонарушителей и осужденных за некие ин-дикаторы социально-правового контроля над преступностью, можно ска-зать, что он снизился более чем в три раза.

Выполнить следующие задания: 1. Заполнить таблицу «Соотношение уровней зарегистрированных

преступлений, выявленных правонарушителей и осужденных в России в 1985– 1997 годах»:

Годы

Заре

гист

р.

прес

тупл

ения

Выявленные право-нарушители

Осужденные

Абс. число

% к престу- плениям

Абс. число

% к престу- плениям

% к право- наруши-

телям 1985 1416935 1154496 837310 1986 1338424 1128439 797286 1987 1185914 969338 580074 1988 1220361 834673 427039 1989 1619181 847577 436988 1990 1839451 897229 537643 1991 2167964 956258 593823 1992 2760652 1148962 661392 1993 2799614 1262735 792410 1994 2632708 1441562 924754 1995 2755669 1595501 1035807 1996 2625081 1618394 1111097 1997 2397311 1372161 1007776

2. Отформатировать таблицу. 3. Сохранить результат в файле с именем «Преступность и суди-

мость».

Page 405: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

405

Лабораторная работа №5. «Построение диаграмм и графиков в Microsoft Excel»

Теоретический материал, необходимый для выполнения лаборатор-

ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

Задания 1. Для таблицы, сформированной в задании 1 лабораторной работы

№4 и сохраненной в файле «Криминология», построить сравнительную цилиндрическую диаграмму числа различных видов преступлений в 1997 и 1998 годах.

2. а) Для первой таблицы, сформированной в задании 2 лаборатор-ной работы №4 и сохраненной в файле «Динамика преступности», по дан-ным ее первого и второго столбцов построить сравнительную диаграмму (объемную гистограмму); вставить заголовок к ней; изменить цвет стенок координатной плоскости.

b) Для первой таблицы, сформированной в этом же задании, по дан-ным ее первого и третьего столбцов построить график, отражающий дина-мику уровня преступности в 1991 – 1998 годах.

с) Для второй таблицы, сформированной в этом же задании, постро-ить пирамидальную диаграмму по данным ее первого, второго и третьего столбцов.

3. Для таблицы, сформированной в задании 3 лабораторной работы №4 и сохраненной в файле «Преступность и судимость», по данным ее первого, второго, третьего и пятого столбцов построить графики, отража-ющие динамику основных криминологических показателей в России за 1985 – 1997 годы. Изменить на каждом графике маркеры значений данных и установить для каждого графика свою толщину линии.

Page 406: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

406

Лабораторная работа№6. «Microsoft Excel. Вычисления в таблицах»

Теоретический материал, необходимый для выполнения лаборатор-

ной работы, содержится в пособии «Табличный процессор Microsoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведения», автор Борздова Т.В.

Задания

Заполните таблицу данными в соответствии с вариантом задания (по

номеру в списке группы) и выполните расчеты в ней. К данным не отно-сится выделенная цветом нижняя строка.

В столбцах “Изменения в %” задать процентный формат для пред-ставления данных. Результаты вычислений должны совпадать с некоторы-ми величинами, указанными в столбцах “Изменения в %”.

Вариант 1 Шрифт текста в таблице Harrington, размер 12; используется тип ли-

ний границ двойные и пунктирные с точкой.

Page 407: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

407

Вариант 2 Шрифт текста в таблице Berlin Sans FB, размер 12; используется тип

линий границ двойные, обычные и пунктирные с двумя точками.

Вариант 3 Шрифт текста в таблице Tempus Sans ITC, размер 12; используется

тип линий границ двойные и пунктирные с точкой.

Вариант 4

Page 408: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

408

Шрифт текста в таблице Berlin Sans FB, размер 12; используется тип линий границ сплошная толстая и пунктирная.

Вариант 5 Шрифт текста в таблице Arial Narrow, размер 12; используется тип

линий границ двойные, сплошные толстые и обычные.

Page 409: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

409

Вариант 6 Шрифт текста в таблице Times New Roman, размер 12; используется

тип линий границ точечные и пунктирные с двумя точками.

Вариант 7 Шрифт текста в таблице Times New Roman, размер 12; используется

тип линий границ обычные тонкие, синие двойные, фиолетовые пунктир-ные и косые красные пунктирные.

Page 410: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

410

Вариант 8 Шрифт текста в таблице Times New Roman, размер 12; используется

тип линий границ обычные толстые, мелкие пунктирные и обычные тон-кие.

Вариант 9 Шрифт текста в таблице Baskerville Old Face, размер 12; использует-

ся тип линий границ обычные толстые и тонкие, пунктирные с двумя точ-ками, голубые двойные.

Page 411: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

411

Вариант 10 Шрифт текста в таблице MV Boli, размер 12; используется тип линий

границ косые пунктирные и обычные тонкие.

Вариант 11 Шрифт текста в таблице Raavi, размер 12; используется тип линий

границ обычные тонкие и толстые и пунктирные с точкой.

Page 412: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

412

Вариант 12 Шрифт текста в таблице Mistral, размер 12; используется тип линий

границ двойные зеленые, обычные тонкие и толстые.

Вариант 13 Шрифт текста в таблице Book Man Old Style, размер 12; использует-

ся тип линий границ обычные толстые и точечные.

Page 413: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

413

Вариант 14 Шрифт текста в таблице Lucida Sans Typewriter, размер 12; использу-

ется тип линий границ обычные и двойные красные.

Вариант 15

Page 414: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

414

Шрифт текста в таблице Sylfaen, размер 12; используется тип линий границ двойные зеленые, косые пунктирные и обычные.

Page 415: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

415

Лабораторная работа№7. «Совместное использование приложений

Microsoft Word и Microsoft Excel»

Задания

1. Построить в текстовом редакторе Microsoft Word таблицу по предлагаемому образцу (включая название и примечание).

Установить для таблицы следующие параметры форматирования: Шрифт Times New Roman, 12 pt, обычный, межстрочный интервал оди-нарный, без отступа. Заголовок размещается над таблицей, по центру, шрифт Arial, 12pt, полужирный без отступа, регистр как в предложении. В правом верхнем углу размещается слово «Таблица 1», 12 pt, светлый кур-сив. Название граф оформляются шрифтом 10 pt. Содержание таблицы центрируется по вертикали и горизонтали.

Таблица 1 Статистические данные о работе хозяйственного суда г. Минска за 1-ый квартал

2004 года (в сравнении с аналогичным периодом предшествующих лет)3

Категория споров Годы

2002

2003

2004

Имущественные споры 898 1512 1863

Неимущественные споры 112 138 146

Дела об экономической несо-стоятельности 268 92 117

Дела об экономических право-нарушениях, влекущих кон-

фискацию имущества - 39 56

2. По данным о работе хозяйственного суда г. Минска за 1-ый квар-

тал 2004 года (см. задание 1.) построить круговую трехмерную диаграмму, отображающую структуру рассмотренных споров. Для выполнения зада-ния использовать Microsoft Graph.

Установить для диаграммы следующие параметры форматирования. Заголовок "Структура споров, рассмотренных хозяйственным судом г.

3 Использованы данные, размещенные на сайте хозяйственного суда г. Минска

http://ncpi.gov.by/hozsud/

Page 416: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

416

Минска в 1-м квартале 2004 года" размещается по центру. Легенда распо-лагается слева.

На диаграмме указать процентные доли отдельных категорий спо-ров.

3. По данным о работе хозяйственного суда г. Минска (см. задание

1) построить в Microsoft Excel электронную таблицу. Вставить в полученную таблицу новые столбцы «Удельная доля ка-

тегории споров в 2002 (2003, 2004) году» и «Изменение удельной доли ка-тегории споров по сравнению с 2002 (2003) годом».

Рассчитать значения: 1. Для столбцов «Удельная доля категории споров в 2002 (2003,

2004) году» – процент, который занимала конкретная категория хозяй-ственных споров в общем числе рассмотренных в указанный год дел. Отобразить его с точностью до сотых долей процента

2. Для столбцов «Изменение удельной доли категории споров по сравнению с 2002 (2003) годом» – изменение процентной доли каждой ка-тегории споров в 2002-2003 и 2003-2004 годы соответственно. Отобразить ее с точностью до десятых долей процента.

При наличии положительной динамики в столбцах «Изменение удельной доли категории споров по сравнению с 2002 (2003) годом» выде-лить числа в ячейках красным цветом, при наличии отрицательной дина-мики – синим цветом (при помощи условного форматирования).

4. По данным о работе хозяйственного суда г. Минска за 1-ый квар-

тал 2004 года (см. задание 3) построить в Microsoft Excel график, отобра-жающий изменения доли имущественных споров, неимущественных спо-ров, дел об экономической несостоятельности.

5. Постановлением Совета Министров Республики Беларусь от 26

марта 2003 г. № 402 "О ставках государственной пошлины и предоставле-нии дополнительных льгот по ее уплате" установлено, что размер государ-ственной пошлины с исковых заявлений имущественного характера, пода-ваемых в хозяйственные суды, зависит от цены иска.

При цене иска до 1000 базовых величин размер государственной пошлины составляет 5% от цены иска, но не менее 1 базовой величины. При цене иска от 1000 до 10000 базовых величин размер государственной пошлины составляет 5% от 1000 базовых величин + 3% от суммы, превы-шающей 1000 базовых величин. При цене иска свыше 10000 базовых вели-чин размер государственной пошлины составляет 1% от цены иска, но не менее суммы, предусмотренной для цены иска от 1000 до 10000 базовых величин.

Page 417: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

417

А. Нарисовать в текстовом редакторе Microsoft Word блок-схему ал-горитма расчета государственной пошлины с исковых заявлений имуще-ственного характера, подаваемых в хозяйственные суды.

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

С. Рассчитать размер государственной пошлины с искового заявле-ния имущественного характера, подаваемого в хозяйственный суд г. Мин-ска, при цене иска 1 930 000 000 белорусских рублей и размере базовой ве-личины 19000 белорусских рублей. Каким образом изменится размер госу-дарственной пошлины, если размер базовой величины повысится до 19500 белорусских рублей?

Page 418: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

418

Лабораторная работа№8. «Информационно-поисковые системы по законодательству

Республики Беларусь»

К раткие теоретические сведения

В Республике Беларусь распространением правовой информации в форме компьютерных информационно-поисковых систем (ИПС) занима-ются несколько организаций ("Эталон" – Национальный центр правовой информации, "КонсультантПлюс" – ООО "ЮрСпектр", "Эксперт" – ОДО "Экспертцентр", "ЮСИАС" – ИПА "Регистр"). Банки данных указанных информационных систем формируются на основании одного источника – Эталонного банка данных правовой информации Республики Беларусь. Однако каждый производитель использует свою собственную программ-ную оболочку, а также включает в систему дополнительные информаци-онные ресурсы. Поэтому ИПС по законодательству Республики Беларусь, выпущенные различными организациями, могут несколько отличаться по порядку работы с ними и информационному наполнению. Приведенные ниже справочные материалы касаются продуктов семейства "Эталон", а также некоторых особенностей работы с системами "КонсультантПлюс".

После запуска Информационно-поисковой системы (ИПС) "Эталон" открывается главное окно программы (Рис. 8.1).

Рис. 8.1. Главное окно ИПС "Эталон – Беларусь"

В верхней части окна находится главное меню программы, включа-ющее команды для работы с документами, со списками документов, для поиска документов, для настройки рабочего окна программы, для упоря-дочения открытых окон программы и для вызова справочной информации. Ниже располагаются панели инструментов с кнопками для быстрого вызо-ва наиболее распространенных команд. Для включения и выключения па-

Page 419: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

419

нелей инструментов используются команды подменю "Панели" меню "Вид".

Структурным элементом банка данных правовых актов выступает документ, который имеет ряд реквизитов: вид акта, орган, дата и номер принятия, название, дата ввода в действие и др. Поисковая система позво-ляет из общего массива выбирать документы, которые отвечают опреде-ленным условиям (обладают соответствующими реквизитами).

Рабочее окно ИПС "Эталон" содержит вкладки: − "Список документов" – документы, обнаруженные по поисковому

запросу. − "Карточка документа" – электронная карточка, содержащая рек-

визиты выбранного документа. Карточка документа выступает "образом документа" для поисковой системы.

− "Текст документа" – текст выбранного документа (правового ак-та).

После запуска программы в левом нижнем углу в свернутом состоя-нии находятся окна "Единый правовой классификатор" и "Словарь ключе-вых слов".

В ИПС "КонсультантПлюс" банки данных правовой информации объединены единой программной оболочкой. При запуске предлагается выбрать раздел, с которым пользователь собирается работать. Раздел "За-конодательство" содержит банки данных "КонсультантПлюс: Беларусь" и "КонсультантПлюс: БеларусьСтолицаОбласти". Имеется возможность проводить поиск как по обоим банкам данных, так и одному из них. Рабо-чее окно "КонсультантПлюс" содержит вкладки:

− "Карточка поиска" – форма для составления поискового запроса. − "Справочная информация" – доступ к дополнительным информа-

ционным ресурсам. − "Новости и обзоры" – доступ к обзорам новинок законодательства

и публикациям на правовую тематику. − "Папки" – доступ к созданным пользователем папкам. − "Закладки" – перечень созданных пользователем закладок. При-

менение закладок эффективно при работе с правовыми актами значительного объема.

− "История" – список предыдущих поисковых запросов. В ситуациях, когда требуется найти конкретный правовой акт, целе-

сообразно применять поиск по реквизитам документа. Для поиска документа необходимо сформировать поисковый запрос

– совокупность условий, которым должны отвечать документы, отбирае-мые из общего банка данных. Для вызова диалогового окна "Поиск доку-ментов" используется команда "Поиск документов" меню "Поиск" либо клавиша F4. Диалоговое окно "Поиск документов" (Рис. 8.2) содержит

Page 420: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

420

набор полей, в которые вводятся условия поиска. Каждое из полей соот-ветствует определенному реквизиту документа. Значения этих полей и об-разуют поисковый запрос. Все поля заполнять не обязательно.

Рис. 8.2. Диалоговое окно "Поиск документа"

Многие поля снабжены специальным словарем поисковых терминов, который содержит перечень возможных значений реквизита. Пользователь выбирает необходимый вариант из списка возможных значений. Вызов словаря осуществляется кнопкой с изображением двух стрелок, которая располагается справа от поля. При соответствующих настройках програм-мы словарь поисковых терминов вызывается автоматически при попытке ввести запрос. Диалоговое окно словаря "Справочник органов принятия" изображено на Рис. 8.3.

Page 421: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

421

Рис.8. 3. Диалоговое окно "Справочник органов принятия"

Перечень всех возможных значений реквизита документа содержит-ся в левом окне ("Справочник"). Для включения в поисковый запрос необ-ходимо выделить одно из значений, а затем нажать кнопку с изображением стрелки. Значение реквизита появится в окне "Запрос". Запрос может со-держать несколько возможных значений, связанных между собой логиче-скими условиями ("И", "ИЛИ", "НЕ"). Логические условия задаются в диа-логовом окне с помощью флажков "или", "и", "отрицание".

Логические условия могут устанавливаться и между различными поля-ми поискового запроса (Рис. 8.2). В диалоговом окне "Поиск документа" также можно определить, следует ли искать все документы, действующие или только недействующие правовые акты.

В ситуации, когда точные реквизиты документа не известны, но можно предположить, какие слова и словосочетания содержатся в его названии, целесообразно использовать поиск по названию документа. Для этого заполняется поле "Название" диалогового окна "Поиск документа". Поле "Название" снабжено словарем поисковых терминов, который со-держит все слова, употребляемые в названиях правовых актов. Его вызов осуществляется аналогично другим словарям поисковых терминов.

Имеется возможность работать в двух режимах поиска в названии:

Page 422: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

422

1. "Слова на расстоянии" – отбираются документы, названия кото-рых содержат определенные слова в пределах заданного числа слов.

2. "Слова с логическими операциями" – отбираются документы, названия которых содержат слова, связанные логическими условиями ("и", "или", "не").

При поиске в названии каждое слово выбирается по отдельности. Не рекомендуется вводить окончания слов. Лучше их заменять символом "*", который служит эквивалентом любого числа знаков. Желательно включить опцию "Словарь" диалогового окна "Поиск по названию".

Когда необходимый правовой документ обнаружен, с ним можно ра-ботать как с текстом: сохранять в текстовый файл, копировать в буфер об-мена, копировать в текстовый редактор.

Для сохранения документа в текстовый файл используется команда "Сохранить как" меню "Документ" или контекстного меню. В появившем-ся диалоговом окне следует указать, что сохраняется в отдельный файл: основные реквизиты документа, карточка документа, текст всего докумен-та или выделенный фрагмент документа.

Для копирования в текстовый редактор используется команда "Ко-пировать в редактор" меню "Документ" или контекстного меню. В по-явившемся окне необходимо выбрать, куда следует копировать текст: в новый документ или в один из открытых в текстовом редакторе докумен-тов.

Информация о нормативно-правовых актах, устанавливающих пра-вовое положение публичных центров правовой информации областей Рес-публики Беларусь, содержится в банке данных правовых актов органов местного управления и самоуправления. В ИПС "КонсультантПлюс" вы-бор банков данных осуществляется в нижней части рабочего окна. ИПС "Эталон" имеет отдельные версии для международных, республиканских и региональных правовых актов.

Ограничить круг поиска отдельным регионом Республики Беларусь, можно выбрав органы принятия правового акта только требуемого регио-на.

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

Для поиска по ключевым словам заполняется соответствующее поле диалогового окна "Поиск документа". Поле "Ключевые слова" снабжено словарем поисковых терминов. Его вызов осуществляется аналогично дру-гим словарям поисковых терминов. Словарь ключевых слов, в котором

Page 423: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

423

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

В ситуациях, когда необходимо подобрать документы, относящиеся к определенной области правового регулирования, целесообразно исполь-зовать поиск по рубрикам документа (по правовому рубрикатору). Рубри-катор ИПС по законодательству Республики Беларусь основан на Едином правовом классификаторе Республики Беларусь. Он охватывает весь мас-сив документов и упорядочивает их в иерархическую структуру согласно отраслям и подотраслям законодательства. Нижний уровень этой структу-ры занимают конкретные правовые акты.

Вызов Единого правового классификатора осуществляется командой "Единый правовой классификатор" меню "Поиск". В появившемся окне в виде папок отображается верхний иерархический уровень. Открывая пап-ки, имеется возможность спускаться к более низкому уровню (уточнять область поиска).

Для выбора необходимых документов используется команда "Поме-тить документ" меню "Документ". Отдельный список из помеченных до-кументов создается командой "Список в новое окно" меню "Список" или контекстного меню.

Вызов правового классификатора из диалогового окна "Поиск доку-мента" осуществляется аналогично словарям поисковых терминов. В диа-логовом окне "Формирование запроса по рубрикатору" необходимо вы-брать требуемую рубрику.

Полученный список документов может быть упорядочен по виду ак-та, дате, номеру и органу принятия. Для этого используется команда "Сор-тировать список" меню "Список". В появившемся диалоговом окне выби-раются поля и порядок сортировки списка: по возрастанию либо по убыва-нию. Для сортировки могут быть выбраны несколько полей. В таком слу-чае документы будут сначала упорядочены по первому из выбранных по-лей, а затем (в пределах образовавшихся групп) – по следующему.

Подборку документов по определенной тематике можно сохранить в виде списка. Для этого используется команда "Сохранить список" меню "Список". В появившемся диалоговом окне необходимо указать название нового списка документов и определить, какие документы включаются в список: все, помеченные пользователем, или только текущий. В дальней-шем для вызова пользовательского списка документов используется ко-манда "Открыть список" меню "Список".

В ИПС "КонсультантПлюс" для сохранения пользовательской под-борки документов применяются папки. Для занесения документа в папку выполняется команда "Занести в папку выбранные документы" меню "До-кументы" либо команда контекстного меню. В появившемся диалоговом

Page 424: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

424

окне "Занести в папку" можно указать папку, в которую следует поместить документ, либо создать новую папку. Для вызова пользовательской папки используется вкладка "Папки" рабочего окна.

В ситуации, когда известны слова, которые обязательно содержатся в тексте нормативного правового акта целесообразно применять поиск по тексту документа. Для поиска по тексту не рекомендуется использовать широко распространенные слова и выражения. Данный вид поиска может занимать значительный промежуток времени.

При формировании поискового запроса для поиска по тексту исполь-зуются те же приемы, что при поиске по названию.

При работе с ИПС "Эталон" для поиска взаимосвязанных докумен-тов эффективно использование междокументальных связей. Они делятся на две группы: прямые (акты, на основании которых принят документ; ак-ты, которые изменены либо отменены документом и т.п.) и обратные (ак-ты, принятые в развитие документа, изменяющие либо дополняющие до-кумент и т.п.) Для поиска по междокументальным связям используются меню "Прямые связи" и "Обратные связи" панели инструментов "Междо-кументальные связи". Таким образом, достаточно обнаружить один из пра-вовых актов, устанавливающих размер базовой величины, и затем исполь-зовать его связи с другими аналогичными правовыми актами.

В ИПС "КонсультантПлюс" помимо банков данных правовых актов имеется ряд информационных ресурсов справочного характера. Они поз-воляют оперативно получать информацию правового и экономического характера, в том числе и о динамике размера минимальной заработной платы и базовой величины. Для доступа к разделу справочной информации необходимо активизировать вкладку "Справочная информации" рабочего окна. Переход к ней возможен также через меню "Вид".

Все понятия, разъяснение которых дается в нормативных правовых актах, в ИПС "Эталон" содержатся во встроенном словаре. Для его вызова используется команда "Словарь юридических терминов" меню "Поиск".

В ИПС "КонсультантПлюс" аналогичный информационный ресурс со-держится в пункте "Словари" раздела "Справочная информация".

Задания

1. Найти текст Постановления Комитета по архивам и делопроизвод-ству при Совете министров Республики Беларусь от 24.07.2003 года N 27 "Об утверждении Инструкции по оформлению документов с использова-нием компьютерных технологий в республиканских органах государствен-ного управления и иных государственных организациях, подчиненных Правительству Республики Беларусь".

Сохранить в файл-отчет карточку документа.

Page 425: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

425

2. Найти текст нормативно-правового акта, которым утверждена

Государственная программа информатизации Республики Беларусь на 2003 - 2005 годы и на перспективу до 2010 года "Электронная Беларусь". Сохранить в файл-отчет текст документа.

3. Найти текст нормативно-правового акта, устанавливающего пра-

вовое положение публичных центров правовой информации Гродненской области. Сохранить в файл-отчет карточку документа.

4. Используя Единый правовой классификатор, найти нормативно-

правовые акты, регламентирующие распространение правовой информа-ции в Республике Беларусь. Отобрать из них только действующие, упоря-дочить их по органу принятия. Создать список (папку) с найденными ак-тами. Включить в файл-отчет список документов, содержащий их основ-ные реквизиты.

5. Установить фамилию, имя и отчество лица, занимавшего долж-

ность Министра труда Республики Беларусь 7 января 2001 года. Указать в файле-отчете основные реквизиты и фрагменты текста правовых актов, использованные при выполнении задания.

6. При расследовании уголовного дела в отношении директора ООО

"Иванов и компания", возбужденного по ст. 243 Уголовного кодекса Рес-публики Беларусь ("Уклонение от уплаты налогов") установлено, что сум-ма неуплаченных налогов составила: в феврале 2004 года – 4.700.000 руб-лей, в марте - 5.000.000 рублей, в апреле - 5.000.000 рублей и в мае 3.500.000 рублей. По какой части ст. 243 должны быть квалифицированы действия директора? Указать в файле-отчете основные реквизиты и фраг-менты текста правовых актов, использованные при выполнении задания.

7. Найти легальное определение термина "электронный документ".

Включить в его файл-отчет с указанием основных реквизитов нормативно-го правового акта.

Page 426: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

426

Лабораторная работа №9. «Правовые ресурсы сети Интернет»

Краткие теоретические сведения

Национальный правовой Интернет-портал (www.pravo.by, www.zakon.by) является основным государственным информационным ре-сурсом глобальной компьютерной сети Интернет в области права и право-вой информатизации. Он обеспечивает концентрацию и систематизация информации и знаний по вопросам права и правовой информатизации, своевременное обеспечение граждан, государственных органов и иных ор-ганизаций полной и достоверной правовой информацией, а также коммен-тариями и другими правовыми аналитическими материалами. Основу ин-формационного содержания Национального правового Интернет-портала составляет правовая информация. Здесь же размещается научно-практическая, учебная, справочная и иная информация в области права и правовой информатизации. Состав основных информационных ресурсов портала определяется координационным советом, созданным при Нацио-нальном центре правовой информации Республики Беларусь.

Для быстрого ознакомления со структурой и содержанием правовых информационных ресурсов портала целесообразно обратиться к разделу "Карта портала".

Одним из правовых информационных ресурсов, размещенных на Национальном правовом Интернет-портале Республики Беларусь, является Интернет-версия компьютерного банка данных проектов законов Респуб-лики Беларусь. Она включает тексты законопроектов (в том числе проек-тов кодексов), внесенных на рассмотрение в Палату представителей Наци-онального собрания Республики Беларусь.

Компьютерный банк данных проектов законов Республики Беларусь доступен в разделе "Правовая информация". Поиск по банку данных осу-ществляется по следующим реквизитам: вид документа, название и текст проекта правового акта, дата его регистрации. Список документов, сфор-мированный по поисковому запросу, позволяет перейти к тексту законо-проекта и к карточке законопроекта. Карточка содержит сведения о субъ-екте, представившем законопроект, рубрике законопроекта по Единому правовому классификатору, ключевых словах, а также о прохождении за-конопроектом стадий законотворческого процесса.

При планировании поиска информации в сети Интернет прежде все-го следует определить, какого рода информационный ресурс может ее со-держать. Для поиска информационных ресурсов могут использоваться ка-талоги ресурсов (универсальные и специализированные), поисковые ма-шины, ссылки, размещенные на сайтах аналогичной тематики.

Page 427: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

427

Правовая информация многих государств размещена на Интернет-ресурсах, аналогичных отечественному Национальному правовому Интер-нет-порталу. Разработкой и поддержкой данных ресурсов занимаются как государственные органы, так и коммерческие организации, занимающиеся распространением правовой информации. Доступ к правовой информации, содержащейся на данных ресурсах, может быть организован на платной (полностью либо частично) либо бесплатной основе. Правовая информа-ция представляется на государственном языке, кроме того, может суще-ствовать версия ресурса на русском (в странах СНГ), английском либо ином иностранном языке.

Национальный правовой Интернет-портал в разделе "Справочная информация" содержит каталог ссылок на правовые Интернет-ресурсы как Республики Беларусь, так и зарубежных государств. Организация инфор-мации в них подобна той, которая используется на Национальном портале.

Данные о динамике размера минимальной заработной платы и базо-вой величины можно получить из версии Эталонного банка данных право-вой информации, размещенной на Национальном правовом Интернет-портале, либо информационно-поисковой системы по законодательству.

Сведения о курсах иностранных валют размещены на сайте Нацио-нального банка Республики Беларусь.

Замечание. Информация о курсах иностранных валют, размещенная на официальном сайте Национального банка Республики Беларусь, не мо-жет являться источником доказательств по уголовному делу. К материалам уголовного дела следует приобщить официальный документ.

Библиографическое описание электронного информационного ре-сурса4 включает: основное заглавие, сведения, относящиеся к заглавию, сведения об ответственности, обозначение ресурса, место издания, дата, режим доступа. При описании документа на русском языке применяются русскоязычные термины и определения, при описании на иностранном языке – на английском.

Условная схема библиографического описания электронных публи-каций в Интернете.

1-3 автора: ФИО автора (ов). Основное заглавие [Электрон. ресурс]: Уточняющее заглавие. – Место издания, дата. – Режим доступа.

Без автора: Основное заглавие [Электрон. ресурс]: Сведения, отно-сящиеся к заглавию / Сведения об ответственности. – Место издания, дата. – Режим доступа.

4 Справочные материалы к данному заданию подготовлены на основании работы Гусе-вой Н.А. Библиографическое описание электронных ресурсов: рекомендации и приме-ры // Атэстацыя. - № 8. - 2002. - С. 54-56.

Page 428: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

428

Аналитическое описание статьи из сборника или электронного жур-нала: ФИО автора (ов). Заглавие // Название журнала или сборника [Элек-трон. ресурс]. – Год. – Том (выпуск, номер). Режим доступа.

Примеры библиографического описания электронных публикаций в Интернете.

Тиковенко А. Международное и национальное право: проблемы вза-имодействия // Юстиция Беларуси [Электрон. ресурс]. – 2002. – №3. Режим доступа: http://justbel.by.ru/2002-3/art20.htm.

Trotter H. The Ancient Doctrine of Trespass to Web Sites // Journal of online law [Electronic resource]. – 1996. – Art. 7. – Mode of access: http://www.wm.edu/law/publications/jol/95_96/hardy.html.

Задания

1. Определить, какие правовые информационные ресурсы размеще-

ны на Национальном правовом Интернет-портале Республики Беларусь (www.pravo.by / www.zakon.by). В файл-отчет включить таблицу, состоя-щую из столбцов "Интернет-адрес ресурса", "Наименование ресурса", "Краткое описание ресурса".

2. Определить, какие проекты кодексов Республики Беларусь разра-

батываются в настоящее время. В файл-отчет вставить карточку одного из проектов кодексов.

3. Найти легальное определение термина "информация о личности" в

законодательстве Украины. Включить его в файл-отчет с указанием основ-ных реквизитов нормативного правового акта и Интернет-адреса.

4. 15 января текущего года в ходе разбойного нападения на гр-на

Литвы А. преступники завладели 1340 литовскими литами, 1135 евро, 190 долларами США. Используя правовые информационные ресурсы Интерне-та, определить, не является ли размер похищенного крупным либо особо крупным. В файле-отчете указать Интернет-адреса ресурсов и привести фрагменты текстов, использованные при выполнении задания.

Page 429: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

429

ЛАБОРАТОРНЫЕ РАБОТЫ ДЛЯ МАГИСТРАНТОВ СПЕЦИАЛЬНОСТИ

«ПСИХОЛОГИЯ»

Лабораторная работа №4. «Microsoft Excel. Базовые операции»

Основные теоретические сведения, необходимые для выполнения

лабораторной работы содержатся в пособии «Табличный процессор Mi-crosoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведе-ния», автор Борздова Т.В.

Задания

I. Задача «Индивидуальный фактор в контексте проблем клиен-та».

Описание задачи. Под индивидуальностью принято понимать совокупность качеств и

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

Рассмотрим, например, феномен пола и психосоциальные проблемы клиента. Согласно исследованиям мужчины значительно чаще, чем жен-щины кончают жизнь самоубийством. Ниже приведены цифры, отражаю-щие динамику уровня самоубийств на 100 тыс. человек среди мужчин и женщин в СССР:

1965 год – 28 000 мужчин и 8 000 женщин; 1970 год – 40 000 мужчин и 9 000 женщин; 1975 год – 43 000 мужчин и 10 000 женщин; 1980 год – 45 000 мужчин и 11 000 женщин; 1984 год – 50 000 мужчин и 12 000 женщин; 1986 год – 30 000 мужчин и 9 500 женщин; 1988 год – 32 000 мужчин и 9 500 женщин; 1989 год – 34 000 мужчин и 9 500 женщин; 1990 год – 36 000 мужчин и 9 500 женщин. По данным Всемирной организации здравоохранения алкоголизмом

чаще страдают мужчины, чем женщины. Однако если разрыв между муж-чинами и женщинами в начале века составлял 1:10, то в конце века он сни-

Page 430: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

430

зился до 1:5. Следующие данные показывают тенденцию заболеваний населения алкоголизмом (на 100 тыс. человек):

1980 год – 140 000 человек; 1991 год – 80 000 человек; 1992 год – 70 000 человек; 1993 год – 110 000 человек; 1994 год – 125 000 человек. В практике социальной работы специалистам приходится сталки-

ваться с кризисами в различных возрастных группах. Однако наибольшую актуальность имеют проблемы людей пожилого возраста. Демографиче-ские данные в России и за рубежом говорят о тенденции роста числа людей старшего поколения; тем не менее в обществе наблюдаются тенденции дискриминации человека по возрасту. Насилие над пожилыми людьми – одна из самых больших проблем социальной работы. Согласно зарубеж-ным исследованиям, люди преклонного возраста подвергаются различным видам насилия, среди которых плохой уход, физическое, психологическое, моральное насилие, угрозы, оскорбления и др. Процентное соотношение типологии плохого обращения с пожилыми людьми в США и Англии представляют следующие данные:

США АНГЛИЯ

Физическое насилие 2% 2% Словесное насилие 1,1% 5% Плохой уход 0,4% 0,2% Финансовое насилие 1,3% 0,2%

Выполнить следующие задания: 1. Присвоить "Листу 1" имя "Самоубийства". 2. По приведенным выше данным составить на листе "Самоубийства"

таблицу, отражающую динамику уровня самоубийств в СССР среди муж-чин и женщин:

Год Число само-

убийств сре-ди мужчин

Число само-убийств сре-ди женщин

Доля самоубийств среди муж-

чин

Доля само-убийств сре-ди женщин

1965 …

Всего: … … 3. В построенной таблице подсчитать общее число самоубийств сре-

ди мужчин и женщин, а также долю самоубийств среди мужчин и среди

Page 431: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

431

женщин, выраженную в % (как отношение значения числа самоубийств к значению общего количества самоубийств).

4. Присвоить "Листу 2" имя "Алкоголизм". 5. По приведенным при описании задачи данным на листе "Алкого-

лизм" построить таблицу, отражающую динамику заболевания населения СССР алкоголизмом:

Год Число забо-

левших Доля забо-

левших Часть от 100

тыс. чел. 1980 …

Всего: … 6. В построенной таблице подсчитать общее число заболевших алко-

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

7. Присвоить "Листу 3" имя "Пожилые_люди". 8. По данным, приведенным при описании задачи, на листе "Пожи-

лые_люди" построить таблицу, отражающую процентное соотношение ти-пологии плохого обращения с пожилыми людьми, следующего вида:

Вид плохого обращения США(%) Англия(%)

Физическое насилие 2 2 …

9. Результат сохранить в файле с именем "Индивидуальный фак-

тор".

II. Задача «Клиент и проблемы психического здоровья». Описание задачи. Значительную группу среди клиентов, нуждающихся в помощи со-

циальных работников, составляют люди, неврозы у которых вызваны пси-хотравмирующими ситуациями. Такими ситуациями могут быть, напри-мер, высказывание негативных слов в их адрес или определенные действия медперсонала; сомнения, связанные с правильностью постановки диагноза и опасностью своей болезни. В результате исследований, проведенных в России, были выделены основные семейно-бытовые и производственные психотравмирующие ситуации. Данные по ним представлены в следующей ниже таблице (данные приведены на 1000 пациентов).

Page 432: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

432

Типы психотравмирующих ситуаций Число больных

Абсолютные числа %

1. Семейно-бытовые: − смерть и тяжелые заболевания

близких 75

− материальные затруднения 42 − ссоры супругов с родителями 20 − плохие взаимоотношения между

супругами 160

− ссоры 51 − нелюбовь одним из супругов дру-

гого 24

− измена 26 − разрыв семейных связей 30 − ревность 9

2. Производственные: − напряженный характер работы 77

− служебные неприятности 37 − неудовлетворенность работой 11 − неправильное увольнение 9 − угроза наказания за правонаруше-

ния 7

− перевод на нижеоплачиваемую ра-боту

9

ИТОГО: Выполнить следующие задания: 1. Подсчитать сумму значений в столбце 2 (значение "ИТОГО"). 2. Подсчитать значения в столбце 3 (вычисляются как отношение со-

ответствующего значения в столбце 2 к значению "ИТОГО" в столбце 2). 3. Отформатировать значения в столбце 3, выбрав для них процент-

ный формат. 4. Результат сохранить в файле с именем “Психическое здоровье”. III. Задача «Выбор в действии». Описание задачи. Цель методики – изучение и оценка межличностных отношений в

группе детей дошкольного возраста. Данная методика является одним из детских вариантов социометрической методики. Процедура ее проведения следующая.

Каждому ребенку в изучаемой группе дается по три привлекатель-ных, желаемых предмета. Это могут быть игрушки, картинки, конфеты и др. Ребенок получает инструкции следующего содержания: "Оцени эти три

Page 433: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

433

предмета по степени их привлекательности, по тому, насколько другие де-ти хотели бы их иметь у себя. На первое место поставь наиболее желатель-ный для детей предмет, на второе – чуть менее желательный, а на третье – оставшийся. Теперь выбери из своей группы трех детей, которым ты хотел бы подарить эти предметы, назови их и отдай им эти предметы. Самый привлекательный предмет ты должен отдать тому, кого любишь больше всех, чуть менее привлекательный – тому, кто у тебя стоит на втором ме-сте, а последний – тому, кого по симпатиям к нему ты поставил бы на тре-тье место".

После того, как все дети раздадут имеющиеся у них предметы това-рищам по группе, экспериментатор определяет кто, сколько и какие пред-меты получил.

В соответствии с количеством полученных предметов определяется социометрический статус ребенка в группе при помощи следующей фор-мулы:

%100*1−

=n

KC

где С – статус ребенка в группе; K – количество привлекательных предметов, полученных ребенком

от товарищей по группе; n – количество детей в тестируемой группе. Оценка результатов.

10 баллов – показатель С равен 100%; 8-9 баллов - показатель С находится в пределах от 80 до 99%; 6-7 баллов - показатель С находится в пределах от 60 до 79%; 4-5 баллов - показатель С находится в пределах от 40 до 59%; 2-3 балла - показатель С находится в пределах от 20 до 39%; 0-1 балл - показатель С находится в пределах от 0 до 19%. Выполнить следующие задания: 1. Составить таблицу следующего вида:

Фамилия K C Количество баллов

Набоков 93 Киселев 41 Кошкин 87 Юрков 99

Page 434: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

434

2. Заполнить третий столбец, используя приведенную выше форму-

лу. 3. Сохранить результат в файле с именем "Выбор в действии".

Page 435: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

435

Лабораторная работа №5. «Построение диаграмм и графиков с помощью Microsoft Excel»

Основные теоретические сведения, необходимые для выполнения

лабораторной работы содержатся в пособии «Табличный процессор Mi-crosoft Excel. Учебное пособие в 2-х частях. Часть 1. Теоретические сведе-ния», автор Борздова Т.В.

Задания

1. Для первой таблицы, сформированной в задании I лабораторной

работы №4 и сохраненной в файле "Индивидуальный фактор": а) построить сравнительную пирамидальную диаграмму по данным

ее первого, второго и третьего столбцов; b) построить отдельные круговые диаграммы на отдельных листах по

данным первого и четвертого столбцов и по данным первого и пятого столбцов.

2. Для второй таблицы, сформированной в задании I лабораторной работы №4 и сохраненной в файле "Индивидуальный фактор":

а) построить график по данным ее первого и второго столбцов; b) построить круговую диаграмму на отдельном листе по данным ее

первого и третьего столбцов; c) построить точечную диаграмму по данным ее первого и четверто-

го столбцов. 3. Для третьей таблицы, сформированной в задании I лабораторной

работы №4, построить сравнительные графики.

Page 436: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

436

Лабораторная работа №6. «Статистическая обработка экспериментальных данных»

Основные теоретические сведения, необходимые для выполнения

лабораторной работы содержатся в пособии «Основы статистического ана-лиза и обработка данных с применением Мicrosoft Ехсеl», автор Борздо-ва Т.В.

Задания

I. Выполните упражнения 1-26. 1. Построить эмпирические функции распределения (относительные

и накопленные частоты) для роста (в см) группы из 20 мужчин: 181, 169, 178, 178, 171, 179, 172, 181, 179, 168, 174, 167, 169, 171, 179, 181, 181, 183, 172, 176.

2. Найти распределение по абсолютным частотам для следующих результатов тестирования в баллах: 79, 85, 78, 85, 83, 81, 95, 88 и 97 (ис-пользуйте границы интервалов 70, 79, 89).

3. Постройте эмпирические функции распределения (абсолютные и накопленные частоты) успеваемости в группе из 20 студентов: 4, 4, 5, 3, 4, 5, 4, 5, 3, 5, 3, 3, 5, 4, 5, 4, 3, 5, 3, 5.

4. Найти среднее значение и стандартное отклонение результатов бега на дистанцию 100 м у группы студентов: 12,8; 13,2; 13,0; 12,9; 13,5; 13,1.

5. Найти выборочные среднее, медиану, моду, дисперсию и стан-дартное отклонение для следующей выборки: 26, 35, 29, 27, 33, 35, 30, 33, 31, 29.

6. Построить функцию, наилучшим образом отражающую данную зависимость:

х 1,0 1,5 3,0 4,5 5,0 у 1,25 1,4 1,5 1,75 2,25

7. В 80-е годы уровень дефицита бюджета в СССР и США склады-вался следующим образом:

Страна 1980 1981 1982 1983 1984 1985 1986 1987 1988

СССР США

2,9 2,8

2,3 2,6

3,1 4,1

2,2 6,3

2,0 5,0

2,7 5,4

6,5 5,3

8,0 3,4

9,1 3,2

Построить функции, наилучшим образом отражающие зависимости дефицита бюджета от времени в обеих странах.

8. Количество вложенных в производство средств и полученная в ре-зультате прибыль соотносятся следующим образом:

Page 437: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

437

х 1,6 2,0 2,5 3,0 4,0 7,0 у 8,5 9,0 11,0 13,0 22,0 70,0

Записать аналитическую зависимость между х и у. Проанализировать полученный ответ. Каковы перспективы предприятия? Какая будет при-быль, если вложить 10,0 единиц? Сколько надо вложить средств, чтобы по-лучить прибыль 100,0 единиц?

9. Застройщик оценивает стоимость группы небольших офисных зданий в традиционном деловом районе. Оценку цены офисного здания в заданном районе застройщик предполагает осуществлять на основе следу-ющих переменных: у – оценочная цена здания под офис, х1 – общая пло-щадь в квадратных метрах, х2 – количество офисов, х3 – количество вхо-дов, х4 – время эксплуатации здания в годах. Предполагается, что суще-ствует линейная зависимость между каждой независимой переменной (x1, х2 х3 и х4) и зависимой переменной (y), то есть ценой здания под офис в данном районе. Застройщик наугад выбирает 11 зданий из имеющихся 1500 и получает следующие данные:

x1 x2 x3 x4 y 2310 2 2 20 142 000 2333 2 2 12 144 000 2356 3 1,5 33 151000 2379 3 2 43 150 000 2402 2 3 53 139 000 2425 4 2 23 169 000 2448 2 1,5 99 126 000 2471 2 2 34 142 900 2494 3 3 23 163 000 2517 4 4 55 169 000 2540 2 3 22 149 000

Здесь «полвхода» (1/2) означает вход только для доставки корре-спонденции. Найти параметры аппроксимирующего уравнения.

С помощью функции ТЕНДЕНЦИЯ определить оценочную стои-мость здания под офис в том же районе, которое имеет площадь 2500 квад-ратных метров, три офиса, два входа, зданию 25 лет.

10. Найти наиболее популярный туристический маршрут из четырех реализуемых фирмой (моду), если за неделю последовательно были реали-зованы следующие маршруты (приводятся номера маршрутов): 1, 3, 3, 2, 1, 1, 4, 4, 2, 4, 1, 3, 2, 4, 1, 4, 4, 3, 1, 2, 3, 4, 1, 1, 3.

11. В рабочей зоне производились замеры концентрации вредного вещества. Получен ряд значений (в мг/м3): 12, 16, 15, 14, 10, 20, 16, 14, 18, 14, 15, 17, 23, 16. Необходимо определить основные выборочные характе-ристики.

Page 438: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

438

12. Определить, лежит ли значение 19 внутри границ 95%-ного дове-рительного интервала выборки 2, 3, 5, 7, 4, 9, 6, 4, 9, 10, 4, 7, 19.

13. Определите с уровнем значимости α = 0,05 максимальное откло-нение среднего значения генеральной совокупности от среднего выборки 3, 4, 4, 2, 5, 3, 4, 3, 5, 4, 3, 5, 6.

14. Найти соответствие экспериментальных данных нормальному за-кону распределения для следующей выборки весов детей (кг): 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27.

15. Даны результаты бега на дистанцию 100 м в секундах в двух группах студентов. Студенты первой группы в течение года посещали фа-культативные занятия по физкультуре. Определить, достоверны ли отли-чия по результатам бега в этих группах.

Посещавшие факультатив Не посещавшие 12,6 12,8 12,3 13,2 11,9 13,0 12,2 12,9 13,0 13,5 12,4 13,1

16. В ходе социологического опроса на вопрос о перенесенном в дет-стве заболевании ответы распределились следующим образом:

Да Нет Не помню Мужчины 58 11 10 Женщины 35 25 23

Есть ли достоверные отличия в ответах женщин и мужчин? 17. Приведены данные ежемесячной результативности (количество

голов) футбольной команды в двух сезонах Месяц 3 4 5 6 7 8 9 10 11 2008 г. 3 4 5 8 9 1 2 4 5 2009 г. 6 19 3 2 14 4 5 17 1

Определить, есть ли статистические различия в ежемесячной резуль-тативности команды в рассматриваемых сезонах?

18. Определить, достоверны ли различия в количестве приобретае-мых туристских путевок семейными парами и отдельными туристами.

Количество приобретаемых путевок Месяцы 1 2 3 4 5 6 Пары 67 75 58 89 96 94 Одиночки 43 56 78 87 85 90

Page 439: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

439

19. В таблице приведены результаты группы студентов по скорост-ному чтению до и после специального курса по быстрому чтению.

Студент 1 2 3 4 5 6 7 8 9 10 До курса 86 83 86 70 66 90 70 85 77 86

После 82 79 91 77 68 86 81 90 85 94 Произошли ли статистически значимые изменения скорости чтения у

студентов? 20. Определить, влияет ли фактор образования на уровень зарплаты

сотрудников в гостинице на основании следующих данных: Образование Зарплата сотрудника высшее 3200 3000 2600 2000 1900 1900 среднее спец. 2600 2000 2000 1900 1800 1700 среднее 2000 2000 1900 1800 1700 1700

21. Определить, имеется ли взаимосвязь между рождаемостью и смертностью (количество на 1000 человек) в Санкт-Петербурге:

Годы Рождаемость Смертность 1991 9,3 12,5 1992 7,4 13,5 1993 6,6 17,4 1994 7,1 17,2 1995 7,0 15,9 1996 6,6 14,2

22. Определить, имеется ли взаимосвязь между годовым уровнем ин-

фляции (%), ставкой рефинансирования (%) и курсом доллара (руб./$), по следующим данным ежегодных наблюдений:

Уровень инфляции

Ставка рефинан-сирования

Курс $

84 85 6,3 45 55 14 56 65 20 34 40 28 23 28 29

23. Построить зависимость зарплаты (руб.) от возраста сотрудника

гостиницы по следующим данным:

Page 440: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

440

Возраст Зарплата 20 800 50 2500 45 2500 40 2000 25 1200 30 1800

24. Построить зависимость жизненной емкости легких в литрах (Y)

от роста в метрах (X1) и возраста в годах (Х2) для группы мужчин:

X1 X2 Y 1,85 18 5,4 1,8 25 65,7 1,75 20 4,8 1,7 24 5,1 1,68 21 4,5 1,73 19 4,8 1,77 22 5,11 1,81 23 5,6 1,76 18 4,7

25. Определить должное значение жизненной емкости легких для

мужчины возраста 22 лет и роста 183 см из регрессионного уравнения, по-лученного в предыдущем упражнении.

26. Имеются данные о цене на нефть x (ден. ед.) и индексе акций нефтяных компаний у (усл. ед.):

x y

17,28

537 17,05 534

18,30 550 18,80 555 19,20 560 18,50 552

Построить зависимость индекса акций нефтяных компаний от цены

на нефть.

Page 441: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

441

II. Уравнение регрессии

Построить линейную модель для двух наблюдаемых величин (напри-мер, объем реализованных подержанных автомобилей фирмой за указан-ное число недель) в соответствии с номером варианта.

Вариант 1

Неделя 1 2 3 4 5 6 7 8 Количество

9 15 24 29 38 46 52 58

Вариант 2

Неделя 1 2 3 4 5 6 7 8 9 10 11 Количество

15 22 26 33 40 45 51 58 63 69 78

Вариант 3

Неделя 1 2 3 4 5 6 7 8 9 Количество

14 23 30 39 45 54 63 70 78

Вариант 4

Неделя 1 2 3 4 5 6 7 8 Количество

12 18 25 32 40 46 53 60

Вариант 5

Неделя 1 2 3 4 5 6 7 8 9 Количество

10 18 22 28 34 39 46 51 54

Вариант 6

Неделя 1 2 3 4 5 6 7 8 9 10 11 Количество

12 17 23 30 35 40 48 54 59 65 72

Page 442: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

442

Вариант 7

Неделя 1 2 3 4 5 6 7 8 9 Количество

12 21 30 36 44 54 61 70 78

Вариант 8

Неделя 1 2 3 4 5 6 7 8 9 Количество

7 17 19 28 35 42 41 52 57

Вариант 9

Неделя 1 2 3 4 5 6 7 8 9 10 Количество

9 16 20 27 34 39 44 52 58 64

Вариант 10

Неделя 1 2 3 4 5 6 7 8 Количество

13 19 26 30 37 44 49 55

Page 443: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

443

3. РА ЗДЕ Л К ОН Т РОЛ Я ЗН А Н И Й ПЕРЕЧЕНЬ ПРИМЕРНЫХ ТЕМ ВЫПУСКНЫХ РАБОТ

Для магистров специальности

«Управление в социальных и экономических системах» 1. Электронные платежные системы: классификация и сравнитель-

ные характеристики. 2. Автоматизированные информационные технологии в учете де-

нежных средств. 3. Провайдеры услуг Интернет в Беларуси: сравнительные харак-

теристики. 4. Инструменты поиска информации в Интернет. 5. Информационное обеспечение и механизм работы электронных

денег. 6. Информационное обеспечение предприятия. 7. Автоматизация процесса оценочной деятельности. 8. Компьютерные модели оценки и анализа рисков. 9. Автоматизация банковской деятельности. Банковские системы. 10. Системы автоматизации валютных операций. 11. Системы автоматизации бухгалтерского учета. 12. Системы автоматизации в управленческих средах. 13. Интеллектуальные системы и технологии в экономике. 14. Использование компьютерных программ для анализа финансо-

вого состояния организации. 15. Компьютерные и информационные технологии бухгалтерского

учета. 16. Компьютерные технологии в системе маркетинга. 17. Программное обеспечение проведения банковских платежей. 18. Использование информационных технологий в бизнес-

проектировании. 19. Использование информационных технологий в инвестиционном

проектировании. 20. Использование пакета Microsoft Excel при прогнозировании

экономических процессов. 21. Web-тестирование в дистанционном обучении. 22. Web-тестирование при аттестации персонала. 23. Разработка и дизайн Web-сайта. 24. Использование информационных технологий в управлении пер-

соналом. 25. Автоматизированные системы управления образовательным

учреждением. 26. Видео-телеконференции в системе дистанционного обучения.

Page 444: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

444

27. Информационные системы и базы данных для коммерческих предприятий.

28. Методы и принципы защиты информации. 29. Проблемы защиты информации при использовании Интернет–

технологий. 30. Интернет-магазины Беларуси: оценка дизайна, системы достав-

ки, организации платежей. 31. Безопасность электронной торговли: стандарты и протоколы. 32. Баннер как основной носитель Интернет-рекламы. 33. Способы распространения рекламной информации в Интернете:

e-mail-рассылки, телеконференции. 34. Спам: история возникновения, методы борьбы. 35. Web-сайт как объект и субъект рекламной деятельности.

Для магистров специальности «Юриспруденция»

1. Правовые автоматизированные информационные системы. 2. Справочно-правовые системы. 3. Правовые информационные системы для нужд судебной прак-

тики. 4. Информационно-компьютерное обеспечение деятельности орга-

нов внутренних дел. 5. Правовое регулирование на информационном рынке. 6. Информация как объект гражданских прав предпринимателя. 7. Правовая информатика и информационное право. 8. Справочно-правовые системы на белорусском рынке. 9. Законодательно-правовые базы и их анализ. 10. Использование информационных технологий в анализе эконо-

мических преступлений. 11. Информационные технологии в юриспруденции. 12. Использование компьютерных технологий в деятельности орга-

нов внутренних дел. 13. Автоматизированные информационные технологии формирова-

ния, обработки и представления данных в налоговой службе. 14. Информатизация в юриспруденции: правовой режим информа-

ционных ресурсов. 15. Правовые и этические вопросы рекламной деятельности в Сети. 16. Статистическое наблюдение как метод сбора первичной право-

вой информации.

Для магистров специальности «Психология» 1. Информационные технологии в социальной сфере. 2. Влияние компьютерных сетей на человека.

Page 445: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

445

3. Зависимость от компьютерной виртуальной реальности. 4. Зависимость от виртуальной реальности компьютера – новый

вид зависимого поведения. 5. Компьютерные игры и безопасность личности. 6. Компьютеры как средство общения людей. 7. Интернет-общение: типы, особенности, причины. 8. Использование информационных технологий при оценке психо-

логического состояния человека. 9. Использование программных продуктов в обучении детей до-

школьного возраста. 10. Использование программных продуктов в обучении детей

школьного возраста. 11. Использование информационных технологий в сфере реабили-

тации. 12. Социологические исследования и современные информацион-

ные технологии. 13. Информационные технологии в работе с трудными подростка-

ми. 14. Компьютерные игры: за и против. 15. Компьютерные книги: за и против. 16. Психодиагностика и компьютерные технологии. 17. Информационные технологии и их роль в быту. 18. Информационные технологии в дошкольном образовании. 19. Информационные технологии в образовательном процессе

средней школы. 20. Информационная безопасность и защита информации в соци-

альной сфере. 21. Анализ социальных проблем региона с помощью информацион-

ных компьютерных технологий. 22. Интеллектуализация информационных систем социального

назначения. 23. Основные программные средства обработки социальных дан-

ных. 24. Возможности использования в социальной сфере средств

отображения и наглядного представления данных. 25. Использование информационных технологий для прогнозиро-

вания социальных процессов. 26. Информационные технологии в сфере труда и занятости. 27. Информационные технологии в сфере социальной защиты насе-

ления. 28. Информационные технологии в сфере социального страхования

населения.

Page 446: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

446

29. Виртуальная реальность и ее психологическое воздействие. 30. Информационно-психологическая безопасность личности: ос-

новные виды и методы информационно-психологического воздействия на человека.

31. Информационно-коммуникационные технологии для детей с за-держкой психического развития.

32. Программное обеспечение для детей с задержкой психического развития.

33. Педагогико-эргономическая оценка качества компьютерных информационно-образовательных сред.

Для магистров специальности «Искусствоведение» 1. Офис дизайн-студии на базе свободного программного обеспече-

ния. 2. Использование программных комплексов при проектировании

архитектурных сооружений. 3. Подготовка оригинал-макетов полиграфической продукции к оф-

сетной печати. 4. Использование программных комплексов при проектировании

изделий промышленного дизайна. 5. Разработка оптимальной компьютерной системы для дизайн-

студии. 6. Специализированные устройства ввода информации. 7. Аппаратное обеспечение компьютера для дизайнера. 8. Подготовка оригинал-макета дизайна сайта. 9. Использование цифровой фототехники в дизайнерской практике. 10. Дизайн-студия на платформе Apple, преимущества и недостатки. 11. Удаленная работа в сфере дизайна. 12. Системы автоматизированного проектирования в дизайнерской

практике. 13. Линейка программных продуктов Adobe Creative Suite как ком-

плексное решение для дизайн-студии. 14. Сравнительная характеристика популярных систем трехмерного

моделирования. 15. Работа дизайнера в сфере разработки спецэффектов и анимации. 16. Использование программных комплексов в дизайне … (автомо-

билей, одежды, квартиры и др.) 17. Использование программных комплексов при проектировании

офисных помещений. 18. Использование программных комплексов в архитектуре. 19. Разработка оптимальной компьютерной системы для дизайн-

студии.

Page 447: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

447

4. В С П ОМ ОГ А Т Е Л Ь Н Ы Й РА ЗДЕ Л У Ч Е Б Н А Я П РОГ РА М М А ДИ С Ц И П Л И Н Ы

«ОС Н ОВ Ы И Н Ф ОРМ А Ц И ОН Н Ы Х Т Е Х Н ОЛ ОГ И Й » ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

Учебная программа по дисциплине «Основы информационных тех-нологий» предназначена для студентов высшего образования второй сту-пени (магистратура) специальности 1-21 80 14 Искусствоведение, 1-23 80 03 Психология, 1-24 80 01 Юриспруденция, 1-26 80 01 Управление в соци-альных и экономических системах. Данная дисциплина относится к обще-образовательным и предусматривает сдачу кандидатского зачета (диффе-ренцированного зачета). Программа по дисциплине подготовлена для сту-дентов заочной формы получения высшего образования второй ступени (магистратура).

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

Цель дисциплины – подготовка слушателей к использованию совре-менных информационных технологий как инструмента для решения на высоком уровне научных и практических задач в своей предметной обла-сти.

Задачи дисциплины: • изучение технического и программного обеспечения современ-

ных информационных технологий; • освоение основных приемов работы на персональных компьюте-

рах, в локальных сетях и в основных службах сети Интернет; • овладение методами и средствами решения задач в своей пред-

метной области на базе использования информационных технологий; • развитие навыков самостоятельной работы в части освоения но-

вых информационных технологий и средств вычислительной техники. В ходе освоения программы дисциплины «Основы информационных

технологий» магистры должны приобрести следующие академические компетенции:

• знания в области современных информационных технологий и умения использовать их при решении задач научно-исследовательской, научно-педагогической, учебно-методической, экспертно-аналитической,

Page 448: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

448

организационно-управленческой, практической и инновационной деятель-ности;

• навыки исследовательской и самостоятельной работы; • навыки, связанные с использованием технических средств,

управлением информацией и работой с компьютером; • способность на протяжении жизни самостоятельно обучаться,

обеспечивая личностное и профессиональное саморазвитие. Изучение дисциплины будет способствовать формированию таких

социально-личностных компетенций, как: • анализировать информацию и принимать решения по проблемам,

возникающим в профессиональной деятельности; • обладать коммуникативными способностями для работы в меж-

дисциплинарных сообщении и международном окружении; • иметь навыки социального взаимодействия. Освоение дисциплины «Основы информационных технологий» спо-

собствует приобретению профессиональных компетенций магистрантов, в частности, следующих:

• знать основные информационные технологии в своей предметной области;

• знать основы сетевых технологий и сервисов сети Интернет, уметь находить необходимую информацию в глобальной сети Интернет;

• иметь представление о современных операционных системах и инструментальных пакетах программ;

• иметь навыки работы с основными программными продуктами информационных технологий: текстовыми, графическими и табличными процессорами, базами данных, средствами подготовки презентаций;

• иметь представление о проблемах защиты информации в компь-ютерах и компьютерных сетях;

• иметь представление об основных методах математического мо-делирования и оптимизации при решении прикладных задач в различных предметных областях.

В результате изучения учебной дисциплины магистранты должны: знать: • терминологию и понятия, используемые в современных инфор-

мационных технологиях; • основные принципы работы компьютеров и компьютерных сетей; • назначение и особенности функционирования программного

обеспечения; • основные приемы работы на персональных компьютерах; • основы сетевых технологий и сервисов сети Интернет, уметь

находить необходимую информацию в глобальной сети Интернет;

Page 449: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

449

уметь: • работать на персональном компьютере под управлением опера-

ционных систем семейства Microsoft Windows; • работать с основными программными продуктами информацион-

ных технологий: текстовыми, графическими и табличными процессорами, базами данных, средствами подготовки презентаций, сетевыми клиентски-ми программами;

• работать в локальных, корпоративных и глобальных компьютер-ных сетях;

• использовать для решения задач в своей предметной области ме-тоды и средства, предоставляемые информационными технологиями;

иметь представление: • о проблеме защиты информации в компьютерах и компьютерных

сетях; • о современных операционных системах и инструментальных па-

кетах программ в своей предметной области; • иметь четкое представление об информационных технологиях в

своей предметной области и направлениях их развития. Дисциплина «Основы информационных технологий» взаимосвязана

с такими учебными дисциплинами как «Экономическая теория», «Микро-экономика», «Безопасность жизнедеятельности человека», «Макроэконо-мика».

В соответствии с учебными планами по специальности 1-21 80 14 Искусствоведение, 1-23 80 03 Психология, 1-24 80 01 Юриспруденция, 1-26 80 01 Управление в социальных и экономических системах дисциплина изучается на 1 курсе в 1-ом семестре магистрантами заочной формы по-лучения образования и рассчитана на 108 академических часов, из них 72 аудиторных часа: лекции – 40 часов, лабораторных занятий – 32 часа; форма текущей аттестации – дифференцированный зачет в 1-ом семестре с подготовкой и защитой выпускной работы.

Page 450: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

450

СОДЕРЖАНИЕ УЧЕБНОГО МАТЕРИАЛА

Тема 1. Современные информационные технологии Понятие информации. Классификация и виды информационных тех-

нологий и информационных систем. История, современное состояние и перспективы развития вычислительной техники. Элементная база, архи-тектура, основные технические параметры, производительность.

Операционные системы. Назначение, классификация, современное состояние, знакомство с возможностями и работа в современной операци-онной системе.

Языки и технологии программирования. История развития языков программирования. Сравнительная характеристика, назначение и возмож-ности современных языков (Basic, Pascal, Delphi, C++, Java, C#…). Общая характеристика технологии программирования. Процедурное, объектно-ориентированное и логическое программирование.

Тема 2. Основные программные средства информационных тех-

нологий Программное обеспечение. Текстовые редакторы – Блокнот,

WordPad, Word, PageMaker и др., их возможности и назначение. Графические редакторы. Векторная графика и растровые изображе-

ния. Способы хранения и обработки графической информации. Редакторы PhotoShop, CorelDraw и др. Их возможности.

Электронные таблицы Excel. Назначение, возможности. Сервисные инструментальные средства: файловые менеджеры, архи-

ваторы, электронные словари и переводчики (PROMT, Google Translator, гибритные системы, ABBYY Lingvo и др.), программы распознавания тек-ста: структура систем оптического распознавания текстов, FineReader.

Системы математических вычислений MathCad, MathLab. Назначе-ние, возможности, примеры применения.

Система подготовки презентаций. Назначение, возможности. Работа в MS PowerPoint.

Тема 3. Сетевые технологии и Интернет Модель структуры протоколов связи: прикладной уровень, уровень

представления, сеансовый уровень, транспортный уровень, сетевой уро-вень, канальный уровень, физический уровень.

Компьютерные сети. Internet, Интранет, Экстранет, корпоративная информационная сеть. Архитектура и принципы работы сети Интернет. Протоколы Internet (TCP и UDP). Основные сервисы Internet (DNS, FTP, HTTP, SNMP, POP3, SNTP).

Page 451: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

451

Скриптовые языки программирования (JavaScript, Perl). Языки раз-метки (HTML, XML).

Инструментальные средства создания web-серверов и web-сайтов (PHP, Delphi for PHP, ASP .NET). Основы web-дизайна.

Тема 4. Системы управления базами данных Проектирование баз данных. Трехуровневая модель организации баз

данных. Системы управления базами данных. Структура данных, модели данных, создание базы данных и таблиц.

Общая характеристика некоторых баз данных: Access, Oracle, MySQL, Foxpro, dBase, SQL Server и др. Основы языка SQL и построение SQL-запросов.

Тема 5. Защита информации Методы и средства защиты информации. Основные составляющие

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

Тема 6. Математическое моделирование и численные методы Понятие модели, математической модели и моделирования. Класси-

фикация математических моделей и требования к ним. Аналитическое моделирование. Имитационное моделирование. Эко-

номико-математическое моделирование. Погрешность исходных данных. Статистическая обработка результатов исследования, основные по-

нятия математической статистики, основные методы статистического ана-лиза. Компьютерные программы для статистического анализа.

Тема 7. Методы оптимизации и системы поддержки принятия

решений Понятие оптимизации и математическая модель оптимизационных

задач. Классификация математических моделей и задач оптимизации. Примеры оптимизационных задач.

Методы решения оптимизационных задач: методы безусловной оп-тимизации, методы условной оптимизации, вариационные задачи и их решения.

Системы поддержки принятия решений. Экспертные системы, назначение, архитектура, отличительные особенности. Классификация и обзор экспертных систем. Правовые экспертные системы.

Page 452: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

452

УЧЕБНО-МЕТОДИЧЕСКАЯ КАРТА

Ном

ер р

азде

ла, т

емы

Название раздела, темы

Кол-во аудиторных часов

Кол

ичес

тво

часо

в У

СР Форма

контроля знаний

Лек

ции

Пра

ктич

ески

е за

няти

я С

емин

арск

ие

заня

тия

Лаб

орат

орны

е за

няти

я И

ное

1 2 3 4 5 6 7 9 1 Современные информационные тех-

нологии 4 2

1.1 Вычислительная техника, информация, информационные технологии и информационные системы

2

1.2 Операционные системы 2 2

Выполнение индивидуаль-ных заданий

1.3 Языки и технологии программирования 2 2 Основные программные средства ин-

формационных технологий 10 12

2.1 Текстовые и графические редакторы 2 4

Выполнение индивидуаль-ных заданий

2.2 Электронные таблицы. 2 2

Выполнение индивидуаль-ных заданий

2.3 Сервисные инструментальные средства 2 2

Выполнение индивидуаль-ных заданий

2.4 Системы математических вычислений 2 2

Выполнение индивидуаль-ных заданий

2.5 Система подготовки презентаций 2

Выполнение индивидуаль-ных заданий

3 Сетевые технологии и Интернет 6 4 3.1 Модель структуры протоколов связи 2 3.2 Компьютерные сети. Интернет

2 Выполнение

индивидуаль-ных заданий

3.3 Архитектура и принципы работы сети Интернет 2

3.4 Основные сервисы Internet 2

Выполнение индивидуаль-ных заданий

Page 453: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

453

3.5 Скриптовые языки программирования. Языки разметки

2

3.6 Инструментальные средства создания web-серверов и web-сайтов 2

4 Системы управления базами данных 4 4 4.1 Системы управления базами данных.

Структура данных, модели данных, со-здание базы данных и таблиц

2

4.2 Общая характеристика некоторых баз данных и систем управления 2 2

Выполнение индивидуаль-ных заданий

4.3 Основы языка SQL и построение SQL-запросов 2

Выполнение индивидуаль-ных заданий

5 Защита информации 4 2 5.1 Методы и средства защиты информации.

Защита от несанкционированного досту-па к данным.

2

5.2 Электронный документооборот. Цифро-вая электронная подпись 2

Выполнение индивидуаль-ных заданий

5.3 Организационно-правовые аспекты за-щиты информации и авторское право 2

6 Математическое моделирование и численные методы 6 4

6.1 Понятие модели, математической модели и моделирования. Классификация мате-матических моделей и требования к ним

2

6.2 Аналитическое и имитационное модели-рование 2

6.3 Экономико-математическое моделирова-ние и погрешность моделирования 2 2

Выполнение индивидуаль-ных заданий

6.4 Методы математической статистики 2

Выполнение индивидуаль-ных заданий

7 Методы оптимизации и системы под-держки принятия решений 6 4

7.1 Понятие оптимизации и математическая модель оптимизационных задач. Класси-фикация математических моделей и за-дач оптимизации

2

7.2 Примеры оптимизационных задач 2

Выполнение индивидуаль-ных заданий

7.3 Методы решения оптимизационных за-дач 2 Выполнение

индивидуаль-

Page 454: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

454

ных заданий 7.4 Система поддержки принятия решений 2 7.5 Экспертные системы: понятие, назначе-

ние, архитектура, отличительные осо-бенности, примеры.

2

ИНФОРМАЦИОННО-МЕТОДИЧЕСКАЯ ЧАСТЬ

№ п/п Наименование темы

Количество аудиторных часов

Само-стоя-

тельная работа лекции лабораторные

занятия

1 Современные информационные техноло-гии 4 2 6

2 Основные программные средства инфор-мационных технологий 10 12 4

3 Сетевые технологии и Интернет 6 4 6

4 Системы управления базами данных 4 4 4

5 Защита информации 4 2 6

6 Математическое моделирование и чис-ленные методы 6 4 4

7 Методы оптимизации и системы под-держки принятия решений 6 4 6

Итого: 108 40 32 36

Page 455: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

455

С П И С ОК РЕ К ОМ Е Н ДУ Е М ОЙ Л И Т Е РА Т У РЫ Основная литература

1. Морозевич, А. Н. Информатика / А. Н. Морозевич, А. М. Зеневич. – Мн.: Высшая школа, 2006. – 285 с.

2. Акулов, О. А. Информатика: базовый курс: учебник для студен-тов высших учебных заведений, бакалавров, магистров по направлению «Информатика и вычислительная техника» / О. А. Акулов, Н. В. Медведев. – М.: Омега-Л, 2009. – 574 с.

3. Острейковский, В. А. Информатика / В. А. Острейковский. – М.: Высшая школа, 2009. – 510 с.

4. Гордеев, А. Операционные системы. Учебник для ВУЗов / А. Гордеев. – СПб.: Питер, 2009. – 416 с.

5. Стоцкий, Ю. А. Microsoft Office 2010 / Ю. А. Стоцкий, А. Васи-льев, И. Телина. – СПб.: Питер, 2011. – 425 с.

6. Олифер, В. Г. Компьютерные сети. Принципы, технологии, про-токолы / В. Г. Олифер, Н. А. Олифер. – СПб.: Питер, 2010. – 960 с.

7. Кузнецов, М. В. Практика создания Web-сайтов / М. В. Кузнецов, И. В. Симдянов. – 2-е издание. – СПб.: БХВ-Петербург, 2009. – 1264 с.

8. Сеннов, А. С. Access 2010. Учебный курс / А. С. Сеннов. – СПб.: Питер, 2010. – 288 с.

9. Алан Бьюли. Изучаем SQL / Алан Бьюли. – Изд. Символ-Плюс, 2007. – 312 с.

10. Информационные системы и технологии в экономике и управле-нии: Учеб. пособие для вузов / О.П. Ильина; В.В.Трофимов; Под ред. В.В. Трофимова. – М., Высшая школа, 2007.

11. Борздова, Т. В. Основы информационных технологий : учеб. по-собие для магистрантов / Т. В. Борздова. – Минск : ГИУСТ БГУ, 2012. – 108 c.

12. Борздова, Т. В. Основы статистического анализа и обработка данных с применением Мicrosoft Ехсеl :учеб. пособие / Т. В. Борздова. – Минск : ГИУСТ БГУ, 2011. – 75 c.

13. Шаньгин, В. Защита компьютерной информации. Эффективные методы и средства // В. Шаньгин. – Изд. МКД Пресс, 2010. – 544 с.

14. Калинкин, Н. Н. Численные методы / Н. Н. Калинкин – М.: Наука, 1978. – 512 с.

15. Банди, Б. Методы оптимизации. Вводный курс / Б. Банди. – М.: Мир, 1989. – 277 с.

16. Черноруцкий, И. Г. Методы принятия решений / И. Г. Черноруц-кий. – СПб.: БХВ-Петербург, 2005. – 416 с.

Page 456: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

456

17. Железко, Б.А., Информационно-аналитические системы под-держки принятия решений / Б.А. Железко, А.Н. Морозевич; под ред. А.Н. Морозевича. – Минск: НИУ, 2006.

Дополнительная литература 1. Борздова, Т. В. Компьютерные информационные технологии

[Электронный ресурс] : учеб.-метод. комплекс / Т. В. Борздова, В. П. Киреенко, Н. Н. Поснов ; ГИУСТ БГУ, Каф. управления недвижимо-стью. – Электрон. текстовые дан. – Минск : ГИУСТ БГУ, 2014. – 671 с. : ил. – Библиогр.: с. 669–671. – Режим доступа: http://elib.bsu.by/handle/123456789/ 103910. – Загл. с экрана. – №005119092014. Деп. в БГУ 19.09.2014.

2. Киреенко, В. П. Текстовый процессор Microsoft Word 2010 [Элек-тронный ресурс] : учебное пособие / В. П. Киреенко, Т. В. Борздова ; ГИУСТ БГУ, каф. управления недвижимостью. – Электрон. текстовые дан. – Минск : ГИУСТ БГУ, 2016. – 132 с. : ил. – Библиогр.: с. 132. – Режим до-ступа: http://elib.bsu.by/handle/123456789/149531. – Загл. с экрана. – № 003006042016. Деп. в БГУ 06.04.2016.

3. Киреенко, В. П. Система управления базами данных Microsoft Access. Методические рекомендации / В. П. Киреенко, Н. Н. Поснов. – Минск: ГИУСТ БГУ, 2013, 100 с.

4. Батин, Н. В. Основы информационных технологий: учеб.-метод. пособие / Н. В. Батин [и др.], под общ. ред. В. В. Шкурко. – Мн.: Институт подготовки научных кадров Национальной академии наук Беларуси, 2008. – 253 с.

5. Трофимов, В. В. Информатика / В. В. Трофимов и др. / под ред. В. В. Трофимова. – М.: Юрайт: Высшее образование, 2010. – 910 c.

6. Колосов, С. В. Программирование в среде Delphi / С. В. Колосов. – Мн.: БГУИР, 2005. – 166 с.

7. Дьяконов, В. MathCad 8-12 для всех / В. Дьяконов. – М.: СОЛОН-Пресс, 2005. – 632 с.

8. Потемкин, В. Г. MATLAB 6: Среда проектирования инженерных приложений / В. Г. Потемкин. – М.: Диалог-МИФИ, 2003. – 444 с.

9. Леонтьев, В. Microsoft Office 2016. Новейший самоучитель / В. Леонтьев. – Эксмо, 2016. – 368 с.

10. Уокенбах, Дж. Microsoft Excel 2013. Библия пользователя / Дж. Уокенбах, пер. с англ. – М.: Вильямс, 2014 – 928 с.

11. Соломенчук, В. Интернет: краткий курс / В. Соломенчук. – СПб.: Питер, 2000. – 288 с.

12. Барсуков, В. С. Безопасность: Технологии, средства, услуги / В. С. Барсуков. – М.: КУДИЦ-ОБРАЗ, 2003. – 496 с.

13. Ливак, Е. Н. Защита информации: учебное пособие в 4 частях / Е. Н. Ливак. – Гродно: ГрГУ, 1998. – 200 с.

Page 457: ОГЛАВЛЕНИЕ - simst.bsu.by · PDF file1.4.4 Процедурное, объектно-ориентированное и логическое программирование

457

14. Алексеев, В.М. Оптимальное управление / В.М.Алексеев, В.М.Тихомиров, С.В.Фомин. – М.: Наука, 1980. – 429 с.

15. Конюховский, П.В. Экономическая информатика / Д.Н. Колесов; под ред. П.В. Конюховского – СПб.: Питер, 2011.

16. Гришин, В.Н. Информационные технологии в профессиональной деятельности: Учебник / В.Н. Гришин, Е.Е. Панфилова. – М.: ИД ФОРУМ, НИЦ ИНФРА-М, 2013. – 416 c.

17. Исаев, Г.Н. Информационные технологии: Учебное пособие / Г.Н. Исаев. – М.: Омега-Л, 2013. – 464 c.

18. Максимов, Н.В. Современные информационные технологии: Учебное пособие / Н.В. Максимов, Т.Л. Партыка, И.И. Попов. – М.: Фо-рум, 2013. – 512 c.

19. Федотова, Е.Л. Информационные технологии и системы: Учебное пособие / Е.Л. Федотова. – М.: ИД ФОРУМ, НИЦ ИНФРА-М, 2013. – 352 c.

20. Хлебников, А.А. Информационные технологии: Учебник / А.А. Хлебников. – М.: КноРус, 2014. – 472 c.

21. Информационные системы и технологии: Научное издание. / Под ред. Ю.Ф. Тельнова. – М.: ЮНИТИ, 2016. – 303 c.

Нормативно-правовые документы 1. Об информации, информатизации и защите информации: Закон

Республики Беларусь, 10.11.2008 N 455-З // Национальный реестр право-вых актов Республики Беларусь. – 2008. – N 279. – 2/1552.

2. Указ Президента Республики Беларусь от 01.02.2010 № 60 «О ме-рах по совершенствованию использования национального сегмента сети Интернет».

3. Закон Республики Беларусь «О внесении дополнений и измене-ний в Закон Республики Беларусь «О средствах массовой информации» от 20 декабря 2014 г. № 213-З.

4. Об электронном документе: Закон Республики Беларусь от 10 ян-варя 2000 г. № 357-З (с изм. и доп. От 20.07.2006 г.) // Эталон – Беларусь [Электронный ресурс] / Нац. центр правовой информ. Респ. Беларусь. – Минск, 2012.

5. Закон Республики Беларусь «Об авторском праве и смежных пра-вах» от 11.08.1998 г. № 370–ХII.

6. Закон Республики Беларусь «О средствах массовой информации» от 17 июля 2008 г. № 427-З.

Интернет ресурсы 1. Компьютерная литература: http://www.taurion.ru/ 2. Работа в офисе: http://bookwebmaster.narod.ru/office.html 3. Учебники, справочники и самоучители: http://the-textbook.at.ua/index/0-90