- •230400 «Информационные системы и технологии»
- •6 Декабря 2011 г., протокол № 4
- •Оглавление
- •Глава 1. Теория информационных процессов и систем 10
- •Глава 2. Информационные технологии 95
- •Глава 3. Архитектура информационных систем 126
- •Глава 4. Технологии программирования 150
- •Глава 5. Управление данными 239
- •Глава 6. Технологии обработки информации 315
- •Предисловие
- •Глава 1. Теория информационных процессов и систем
- •1.1. Информационные системы. Основные понятия и определения.
- •1.2. Системообразующие свойства информационных систем
- •1.3. Свойства и закономерности систем
- •1.4.Системный подход и системный анализ
- •1.5. Моделирование информационных систем
- •1.5.1. Основные понятия
- •1.5.2. Классификация методов моделирования
- •1.5.3. Математическое моделирование
- •1.6. Теория принятия решений
- •3. Неопределённость наших знаний об окружающей обстановке и действующих в данном явлении факторах (неопределённость природы).
- •4. Неопределённость действий активного или пассивного партнёра или противника.
- •1.7. Информационные процессы
- •Контрольные вопросы
- •Глава 2. Информационные технологии
- •2.1. Состав, структура, принципы реализации и функционирования информационных технологий
- •2.2. Базовые и прикладные информационные технологии
- •Прикладные программные средства включают:
- •2.3. Инструментальные средства информационных технологий
- •Контрольные вопросы
- •Глава 3. Архитектура информационных систем
- •3.1. Классификация информационных систем
- •3.2. Структура, конфигурация информационной системы
- •3.2.1. Информационное обеспечение
- •Классификаторы создаются для решения следующих основных задач:
- •3.2.2. Математическое и программное обеспечение
- •К средствам математического обеспечения относятся:
- •К средствам программного обеспечения (по) относятся:
- •3.2.3. Организационное обеспечение
- •3.2.4. Правовое обеспечение
- •3.2.5. Техническое обеспечение
- •3.3. Процесс разработки информационных систем
- •3.3.1. Выработка или выбор парадигмы программирования
- •3.3.2. Моделирование бизнес-процессов
- •3.3.3. Анализ требований, предъявляемых к ис
- •3.3.4. Разработка архитектуры
- •3.3.5. Кодирование
- •3.3.6. Тестирование информационной системы
- •3.3.7. Документирование
- •3.3.8. Внедрение информационной системы
- •3.3.9. Сопровождение информационной системы
- •Контрольные вопросы.
- •Глава 4. Технологии программирования
- •4.1. Основные понятия программного обеспечения
- •Категории специалистов, занятых разработкой и эксплуатацией программ
- •4.2. Характеристики программного продукта
- •4.3. Жизненный цикл программного продукта
- •4.4.Защита программных продуктов
- •4.5. Классы программных продуктов
- •4.6. Инструментарий технологии программирования
- •4.7. Классификация методов проектирования программных продуктов
- •4.8. Этапы создания программных продуктов
- •1. Составление технического задания на программирование
- •2. Разработка технического проекта
- •3. Создание рабочей документации (рабочий проект)
- •4. Ввод в действие
- •4.9. Структура программных продуктов
- •4.10. Структурное проектирование и программирование
- •4.11. Модульная структура программных продуктов
- •4.12. Алгоритмы
- •4.13. Классификации языков программирования и примеры языков
- •4.13.2. Основы функционального программирования с использованием языка lisp Основные свойства функциональных языков программирования
- •Распространенные языки функционального программирования
- •Основные структуры данных и базовые функции по работе с ними в среде Лисп
- •Контрольные вопросы
- •Глава 5. Управление данными
- •5.1. Основы управления данными
- •5.1.1. Информация, данные и знания.
- •5.1.2.Функции управления
- •5.2.Банки данных в информационных системах.
- •5.2.1.Концепция баз данных
- •5.2.2.Файловые системы и базы данных
- •5.2.4.Классификация банков данных
- •5.3.Моделирование и модели данных
- •5.3.1.Уровни моделирования
- •5.3.2.Виды моделей
- •5.3.3.Модели данных
- •5.3.4.Иерархическая модель данных
- •5.3.5.Сетевая модель данных
- •5.3.6.Реляционная модель данных
- •5.3.7.Постреляционная модель представления данных
- •5.3.8.Многомерные модели представления данных
- •5.3.9.Объектно-ориентированные модели представления данных
- •5.4.Проектирование базы данных
- •5.4.1.Основы реляционной алгебры
- •5.4.2.Инфологический подход к проектированию баз данных
- •5.4.3.Модель «сущность—связь»
- •5.4.4.Переход к реляционной модели данных
- •5.4.5.Пример проектирования реляционной бд средствами субд Access
- •5.5.Субд в архитектуре «клиент-сервер»
- •5.5.1.Открытые системы
- •5.5.2.Клиенты и серверы локальных сетей
- •5.5.3.Системная архитектура «клиент-сервер»
- •5.5.4.Серверы баз данных
- •5.6.Реляционный язык sql
- •Структура sql
- •Контрольные вопросы
- •Глава 6. Технологии обработки информации
- •6.1. Основные виды и процедуры обработки информации
- •6.1.1. Виды обработки информации
- •6.1.2. Основные процедуры обработки данных
- •6.2. Системы поддержки принятия решений (сппр)
- •6.2.1. Условия принятия решений
- •6.2.2. Решение задач с помощью искусственного интеллекта
- •6.2.3. Процесс выработки решения на основе первичных данных
- •6.2.4. Типы информационных систем поддержки принятия решений
- •6.2.5. Реализация процесса принятия решений
- •6.2.6. Средства разработки информационных приложений
- •6.3. Концепция хранилищ и витрин данных, достоинства и недостатки
- •6.3.1. История создания концепции хранилищ данных
- •6.3.2. Причины создания концепции хранилищ данных
- •6.3.3. Факторы и технологии складирования данных
- •6.3.4. Концепция хранилищ данных
- •6.3.5. Взаимное соотношение концепции хранилищ данных и концепций анализа данных
- •6.3.6. Реализации хранилищ данных
- •6.3.7. Субд для аналитических систем
- •6.3.8. Витрины данных
- •6.4. Искусственный интеллект и интеллектуальные системы
- •6.4.1. Цели и задачи искусственного интеллекта
- •6.4.2. Направление исследований в области искусственного интеллекта
- •6.4.3. Структура интеллектуальной системы
- •6.4.4. Разновидности интеллектуальных систем
- •Контрольные вопросы
- •Глава 7. Интеллектуальные системы и технологии
- •7.1. Теория и технологии искусственного интеллекта
- •7.2. Математическое описание экспертной системы, логический вывод
- •7.3. Искусственные нейронные сети
- •7.4. Расчётно-логические системы, системы с генетическими алгоритмами
- •(Начало цикла)
- •Создание начальной популяции
- •Размножение (Скрещивание)
- •Мутации
- •Применение генетических алгоритмов
- •7.5. Мультиагентные системы
- •Контрольные вопросы
- •Глава 8. Инструментальные средства информационных систем
- •8.1. Состав и структура инструментальных средств информационных систем
- •8.2. Тенденции развития инструментальных средств информационных систем
- •8.3. Операционные системы инструментальных средств информационных систем
- •8.4. Технические средства инструментальных средств информационных систем
- •Классификация технических средств инструментальных средств информационных систем.
- •Контрольные вопросы
- •Глава 9. Инфокоммуникационные системы и сети
- •9.1. Модели и структура информационных сетей Классическая модель построения инфокоммуникационных систем
- •9.2. Информационные ресурсы сетей
- •По способу представления:
- •По национально-территориальному признаку:
- •9.3. Теоретические основы современных информационных сетей
- •Контрольные вопросы
- •Глава 10. Методы и средства проектирования информационных систем и технологий
- •10.1. Технология проектирования информационных систем. Этапы проектирования
- •10.2. Методы проектирования информационных систем
- •10.3. Средства проектирования ис
- •Контрольные вопросы
- •Список литературы
- •143 Хорошилов а.В. Селетков с.Н. Днепровская н.В. Управление информационными ресурсами.
3.3.8. Внедрение информационной системы
Внедрение информационной системы – процесс настройки программного обеспечения ИС под определённые условия использования, а также обучения пользователей работе с ИС.
При внедрении ИС требуется действие в трех следующих плоскостях работ.
Первая из них – это выделение критических, с точки зрения общего результата, процедур в деятельности организации. Когда набор таких процедур определён, необходимо в первую очередь использовать ИТ-решение для автоматизации операций внутри именно этих процедур. Таким образом, разработанное ИТ-решение автоматически становится жизненно важным и востребованным для организации, а также будет обеспечена публичность процесса внедрения.
Вторая плоскость работ – это по своей сути расширение нормативной базы организации путем включения в нее регламентов, описывающих порядок выполнения процедур автоматизируемых процессов. В противном случае есть опасность возникновения рассогласования между автоматизированными процедурами и остальными процессами организации.
Третья – это выполнение работ по общей стандартизации существующей деятельности организации, когда выделяются лучшие практики выполнения процедур и включаются в ИТ-решение по принципу наибольшей полезности для большинства участников. Процент таких процедур относительно общего объёма автоматизации может быть невелик, но это придает процессу построения решения вес в организации за счёт увеличения его «полезности».
3.3.9. Сопровождение информационной системы
Сопровождение программного обеспечения – процесс улучшения, оптимизации и устранения дефектов ИС после передачи в эксплуатацию. Сопровождение ИС – это одна из фаз жизненного цикла ИС, следующая за фазой передачи ИС в эксплуатацию. В ходе сопровождения в систему вносятся изменения, с тем, чтобы исправить обнаруженные в процессе использования дефекты и недоработки, а также для добавления новой функциональности, с целью повысить удобство использования (юзабилити) и применимость ИС.
Опыт показывает, что около 2/3 жизненного цикла информационных систем занимает сопровождение. Следовательно, при разработке ИС необходимо учитывать такую характеристику программного продукта, как сопровождаемость, позволяющую минимизировать усилия по внесению в него изменений для устранения ошибок, модификации в соответствии с изменяющимися потребностями пользователей и т. д.
Контрольные вопросы.
1. Перечислите принципы классификации информационных систем.
2. Охарактеризуйте понятие «Структура информационной системы».
3. Что такое «схемы информационных потоков».
4. Назовите виды программного обеспечения.
5. Определите группы документации, необходимые для представления информационной системы.
Глава 4. Технологии программирования
4.1. Основные понятия программного обеспечения
Возможности компьютера как технической основы системы обработки данных связаны с используемым программным обеспечением (программами).
Программа {program, routine) – упорядоченная последовательность команд (инструкций) компьютеру для решения задачи.
Программное обеспечение (sowtware) – совокупность программ обработки данных и необходимых для их эксплуатации документов.
Программы предназначены для машинной реализации задач. Термины задача и приложение имеют очень широкое употребление в контексте информатики и программного обеспечения.
Задача {problem, task) – проблема, подлежащая решению. Приложение {application) – программная реализация на компьютере решения задачи.
Таким образом, задача означает проблему, подлежащую реализации с использованием средств информационных технологий, а приложение – реализованное на компьютере решение задачи. Приложение, являясь синонимом слова «программа», считается более удачным термином и широко используется в информатике.
Термин задача употребляется также в сфере программирования как единица работы вычислительной системы, требующая выделения вычислительных ресурсов (процессорного времени, основной памяти и т. п.). Существует большое число разнообразных классификаций задач. С позиций специфики разработки и вида программного обеспечения будем различать два класса задач – технологические и функциональные.
Технологические задачи ставятся и решаются при организации технологического процесса обработки информации на компьютере. Технологические задачи являются основой для разработки сервисных средств программного обеспечения в виде утилит, сервисных программ, библиотек процедур и др., применяемых для обеспечения работоспособности компьютера, разработки других программ или обработки данных функциональных задач.
Функциональные задачи требуют решения при реализации функций управления в рамках информационных систем предметных областей. Например, управление деятельностью торгового предприятия, планирование выпуска продукции, управление перевозкой грузов и т. п. Функциональные задачи в совокупности образуют предметную область и полностью определяют её специфику.
Предметная (прикладная) область (application domain) – совокупность связанных между собой функций, задач управления, с помощью которых достигается выполнение поставленных целей.
Процесс создания программ представлен на рис. 4.1.
Рис. 4.1. Схема процесса создания программ
Постановка задачи (problem definition) – это точная формулировка решения задачи на компьютере с описанием входной и выходной информации. Постановка задачи – обобщенный термин, который означает определённость содержательной стороны обработки данных. Постановка задачи связана с конкретизацией основных параметров её реализации, определением источников и структурой входной и выходной информации, определяемых требованиями заказчика.
К основным характеристикам функциональных задач, уточняемым в процессе её формализованной постановки, относятся:
цель или назначение задачи, её место и связи с другими задачами;
условия решения задачи с использованием средств вычислительной техники; содержание функций обработки входной информации при решении задачи;
требования к периодичности решения задачи;
ограничения по срокам и точности выходной информации;
состав и форма представления выходной информации; источники входной информации для решения задачи;
пользователи задачи (кто осуществляет её решение и пользуется результатами решения).
Выходная информация может быть представлена в виде документов, сформированных кадров на экране монитора, файла базы данных, выходного сигнала устройству управления (рис. 4.2).
Входная информация по задаче определяется как данные, поступающие на вход задачи и используемые для её решения. Входной информацией служат первичные данные документов ручного заполнения, информация, хранимая в файлах базы данных, результаты решения других задач в виде отдельных файлов, входные сигналы от датчиков (рис. 4.2). Обычно постановка задач выполняется в едином комплексе работ по созданию структуры внутримашинной базы данных, проектированию форм и маршрутов движения документов, изменению организации управления в рамках предметной области.
Алгоритм – система точно сформулированных правил, определяющая процесс преобразования допустимых исходных данных (входной информации) в желаемый результат (выходную информацию) за конечное число шагов.
Рис 4.2. Входная и выходная информация при решении задачи
Алгоритм решения задачи имеет ряд обязательных свойств:
дискретность – разбиение процесса обработки информации на более простые этапы (шаги выполнения), выполнение которых компьютером или человеком не вызывает затруднений;
определённость алгоритма – однозначность выполнения каждого отдельного шага преобразования информации;
выполнимость – конечность действий алгоритма решения задач, позволяющая получить желаемый результат при допустимых исходных данных за конечное число шагов;
массовость – пригодность алгоритма для решения определённого класса задач.
В алгоритме отражаются логика и способ формирования результатов решения с указанием необходимых расчётных формул, логических условий, соотношений для контроля достоверности выходных результатов. В алгоритме обязательно должны быть предусмотрены все ситуации, которые могут возникнуть в процессе решения комплекса задач.
Алгоритм решения комплекса задач и его программная реализация тесно взаимосвязаны. Специфика применяемых методов проектирования алгоритмов и используемых при этом инструментальных средств разработки программ может повлиять на форму представления и содержание алгоритма обработки данных.
Для решения задач могут использоваться алгоритмы, заложенные в готовых программных продуктах – пакетах прикладных программ. В этом случае осуществляется адаптация типовых алгоритмов к условиям конкретного применения, во всех остальных случаях разрабатываются оригинальные алгоритмы и программы реализации комплекса задач.
Программирование (programming) – теоретическая и практическая деятельность, связанная с созданием программ.
Программирование является собирательным понятием и может рассматриваться и как наука, и практическая деятельность, на этом основан научно-практический подход к разработке программ.
Программа – результат интеллектуального труда, для которого характерно творчество. В любой программе присутствует индивидуальность её разработчика, программа отражает определённую степень искусства программиста. Вместе с тем программирование предполагает и рутинные работы, которые могут и должны иметь строгий регламент выполнения и соответствовать стандартам.
Программирование базируется на комплексе научных дисциплин, направленных на исследование, разработку и применение методов и средств разработки программ (специализированного инструментария создания программ). При разработке программ используются ресурсоёмкие и наукоёмкие технологии, высококвалифицированный интеллектуальный труд.
Программирование – это развитая отрасль производственной деятельности, связанная со значительными затратами материальных, трудовых и финансовых ресурсов. В связи с ростом потребности в разнообразных программах обработки данных весьма актуален вопрос применения эффективных технологий программирования и их перевода на промышленную основу. Это означает:
стандартизованность, тиражируемость и воспроизведение различными разработчиками методов программирования;
внедрение прогрессивных инструментальных средств разработки программ;
использование специальных методов и приёмов организации работ по разработке программ.