
- •Основы информатики и информационных технологий
- •Оглавление
- •Глава 8. Сети и сетевые технологии 112
- •Глава 9. Ащита информации 129
- •Предисловие
- •Раздел 1. Введение в информатику
- •Глава 1. Информатика и предмет ее исследования
- •Глава 2. Понятие информации
- •2.1. Определение и свойства информации
- •2.2. Особенности экономической информации
- •Глава 3. Роль информации в управлении
- •3.1. Одноконтурная схема управления экономическими системами
- •3.2. Информация и информационные системы в управлении
- •Глава 4. Кодирование и представление информации
- •4.1. Основные определения
- •4.2. Связь между системами счисления
- •4.3. Системы счисления, используемые в эвм
- •4.4. Внутреннее представление данных в памяти компьютера
- •4.4.1. Представление чисел
- •4.4.2. Представление текстовых данных
- •4.4.3. Представление мультимедийной информации
- •4.5. Представление данных во внешней памяти компьютера
- •Глава 5. Основы алгоритмизации
- •5.1. Определение и свойства алгоритмов
- •5.2. Основные этапы и методы разработки алгоритмов
- •5.3. Основные способы описания алгоритмов
- •Раздел 2. Основы информационных технологий
- •Глава 6. Аппаратное обеспечение вычислительных систем
- •6.1. Понятие архитектуры и принципы устройства вычислительных систем
- •6.2. Устройство персонального компьютера
- •6.2.1. Конфигурация персонального компьютера
- •6.2.2. Характеристики процессора
- •6.2.3. Организация памяти персонального компьютера
- •6.2.4. Устройства ввода/вывода
- •6.2.5. Внешние запоминающие устройства
- •6.3. Тенденции совершенствования архитектуры
- •Глава 7. Программное обеспечение
- •7.1. Понятие программы
- •7.2. Классификация программного обеспечения
- •7.3. Системное программное обеспечение
- •7.3.1. Операционные системы
- •Определение и функции операционных систем
- •Классификация операционных систем
- •Функция управления процессами
- •Управление основными ресурсами
- •Управление данными. Файловая система
- •Управление внешними устройствами и организация ввода/вывода
- •Интерфейс с пользователем
- •7.3.2. Операционные оболочки
- •7.3.3. Средства контроля и диагностики
- •7.3.4. Системы программирования
- •7.4. Системы управления базами данных
- •7.4.1. Основные понятия
- •7.4.2. Реляционный подход к управлению бд
- •«Магазины»
- •«Владельцы»
- •«Магазины-Владельцы»
- •«Поставки»
- •«Товар»
- •«Поставки»
- •7.4.3. Назначение и классификация субд
- •7.4.4. Средства описания и манипулирования данными в субд
- •7.4.5. Объектно-ориентированные субд
- •7.4.6. Категории пользователей
- •7.5. Прикладное программное обеспечение
- •Глава 8. Сети и сетевые технологии
- •8.1. Определение, назначение и классификация сетей
- •8.2. Способы передачи информации, коммутация и маршрутизация в сетях
- •8.3. Организация взаимодействия в сетях
- •8.4. Топология сетей и методы доступа
- •8.5. Глобальная сеть Internet
- •8.5.1. Идентификация компьютеров в сети
- •8.5.2. Услуги Internet
- •8.5.3. Всемирная паутина World Wide Web
- •8.5.4. Электронная почта
- •8.5.5. Навигационные средства для Internet
- •8.6. Корпоративные сети на основе технологий Internet
- •Глава 9. Защита информации
- •9.1. Информация как продукт
- •9.2. Концепция защищенной вс
- •9.2.1. Основные понятия
- •9.2.2. Этапы разработки системы защиты
- •9.2.3. Общая классификация вторжений и характеристика угроз
- •9.2.4. Система защиты
- •9.2.5. Защита объектов на регистрационном уровне и контроль доступа
- •9.3. Криптографические средства защиты информации
- •9.3.1. Основные понятия
- •9.3.2. Криптографические протоколы
- •9.3.3. Электронно-цифровые подписи и открытые сделки
- •9.3.4. Использование криптографической защиты в программных продуктах
- •9.3.5. Условия и ограничения использования криптографической защиты
- •9.4. Программные закладки и вирусы
- •9.5. Хакеры и проблема безопасности информационных систем
- •9.6. Защита информации от потери в результате сбоев
- •9.7. Правовая защита информации и программного обеспечения
- •Глава 10. Интегрированные пакеты прикладных программ офисного назначения
- •10.1. Общая характеристика офисных пакетов
- •10.2. Основы редактирования текстовых документов
- •10.3. Использование электронных таблиц
- •10.4. Системы электронного перевода
- •10.5. Системы оптического распознавания текстов
- •10.6. Интеграция систем распознавания текстов, компьютерного перевода и офисных пакетов
- •10.7. Электронные презентации
- •10.8. Графические редакторы
- •10.9. Правовые системы
- •10.10. Учетные системы
- •Глава 11. Системы аналитической обработки данных и искусственного интеллекта
- •11.1. Средства анализа данных математических пакетов
- •11.2. Введение в системы искусственного интеллекта
- •11.2.1. Основы экспертных систем
- •11.2.2. Представление и использование нечетких знаний
- •11.2.3. Нейронные системы и сети
- •11.2.4. Системы извлечения знаний
- •11.2.5. Инструментальные средства создания интеллектуальных приложений
- •Раздел 3. Современные информационные технологии в экономике и управлении
- •Глава 12. Основные понятия
- •Глава 13. Эволюция информационных технологий
- •Глава 14. Классификация информационных систем
- •Глава 15. Корпоративные системы
- •15.1. Типовые технические решения
- •15.2. Корпоративные информационные порталы
- •15.3. Серверы BizTalk как основа средств интеграции информационных систем
- •Глава 16. Методы и средства разработки информационных систем
- •16.1. Жизненный цикл информационных систем
- •16.1.1. Процессы жизненного цикла ис
- •16.1.2. Модели жизненного цикла
- •16.2. Методы и средства структурного анализа
- •16.3. Объектно-ориентированный подход к разработке информационных систем
- •16.4. Компонентно-ориентированные средства разработки ис
- •Глава 17. Стандарты создания информационных систем
- •17.1. Стандарты кодирования и представления информации
- •17.1.1. Единая система классификации и кодирования технико-экономической и социальной информации
- •17.1.2. Нормативная база системы классификации и кодирования
- •17.2. Унификация и стандартизация документов
- •17.3. Поддержка стандартов управления бизнес-системами
- •17.3.1. Информационные технологии и реинжиниринг
- •17.3.2 Описание стандарта mrp II
- •Стратегическое планирование
- •Бизнес-планирование
- •Планирование объемов продаж и производства
- •Планирование ресурсов
- •Главный план-график производства
- •Общее планирование мощностей
- •Mrp, или планирование потребностей в материалах
- •Crp, или планирование потребностей в мощностях
- •Drp, или планирование потребностей в распределении
- •Глава 18. Основы электронной коммерции
- •18.1. Этапы развития электронной коммерции
- •18.2. Секторы рынка электронной коммерции
- •18.3. Инструментарий электронной коммерции
- •18.4. Электронные платежные системы
- •Глава 19. Введение в мобильный бизнес
- •19.1. Возможности мобильного бизнеса
- •19.2. Обзор существующих технологий мобильного бизнеса
- •19.2.1. Терминальные устройства
- •19.2.2. Современные технологии построения цифровых каналов связи
- •19.2.3. Стандарты мобильного Internet
- •19.2.4. Проблемы мобильного Internet
- •19.2.5. Операционные системы для мобильных устройств
- •19.2.6. Средства разработки приложений мобильного бизнеса
- •Библиографический список
16.2. Методы и средства структурного анализа
Все методологии структурного анализа базируются на некоторых общих принципах.
Базовыми можно считать принцип «разделяй и властвуй» и принцип иерархического упорядочения. В соответствии с этими принципами трудные проблемы решаются путем последовательного разбиения их на множество меньших, относительно независимых задач, легких для понимания и решения; причем «понимаемость» проблемы повышается при организации ее частей в виде древовидных иерархических структур. То есть исследуемая система может быть понята и построена по уровням, каждый из которых добавляет новые детали.
Следует выделить также принципы
– абстрагирования (выделение существенных для решения задачи свойств системы и отвлечение от несущественных);
– «упрятывания» (скрывается несущественная для данного этапа и задачи информация);
– формализации (использование строгих методических подходов к решению);
– концептуальной общности (следование единой методологии на всех этапах разработки системы);
– полноты (контроль на присутствие «лишних» элементов);
– непротиворечивости (контроль за обоснованностью и согласованностью элементов);
– структурирования данных (данные должны быть структурированы и иерархически организованы);
– независимости данных (модели данных должны быть проанализированы и спроектированы независимо от процессов их логической обработки и от их физической структуры и распределения);
– доступа конечного пользователя (пользователь должен иметь средства доступа к данным, которые он может использовать непосредственно, без программирования).
Этими принципами следует руководствоваться при использовании любой методологии разработки информационной системы.
Для моделирования и структурного анализа используются различные средства, которые можно разбить на три группы, описывающие:
– функции, которые система должна выполнять;
– отношения между данными;
– зависящее от времени поведение системы.
Для решения этих задач наиболее часто используются следующие средства:
– диаграммы потоков данных (DFD – Data Flow Diagrams) совместно со словарями данных и спецификациями процессов;
– диаграммы «сущность–связь» (ERD – Entity–Relationship Diagrams);
– диаграммы переходов состояний (STD – State Transition Diagrams).
Все эти диаграммы дают возможность точно определить компоненты модели и связи между ними.
DF-диаграммы показывают внешние по отношению к системе, протекающим в ней процессам источники и стоки (т.е. адресатов) данных, определяют процессы (функции, выполняемые в системе) и группы элементов данных, связывающие один процесс с другим (потоки данных), а также идентифицируют хранилища данных, к которым осуществляется доступ. Каждый процесс может быть детализирован с помощью DFD следующего уровня.
Модель хранилища раскрывается с помощью ER-диаграммы. Содержимое каждого хранилища описывается также в словаре данных.
Если поведение системы зависит от времени, DF-диаграммы дополняются ST-диаграммами, показывающими, как меняется состояние системы во времени.
Потоки данных в DFD – это механизмы моделирования передачи информации в системе. Они обычно изображаются стрелками, показывающими направление передачи.
Назначение процесса в DF-диаграмме – продуцирование выходных потоков из входных при выполнении некоторого действия, задаваемого именем процесса.
Хранилища данных здесь – это накопители данных. Они позволяют определить данные, которые должны сохраняться между процессами. Это «срезы» потоков данных во времени.
На рис. 3.13 показана диаграмма банковской задачи обслуживания клиентов, имеющих кредитные карты (процесс «Обслужить»).
Для начала обслуживания клиент должен предоставить свою кредитную карту, с которой может быть считана информация (пароль, лимит денег и пр.), а также сообщить свои ключевые данные (пароль и запрос на обслуживание).
Процесс банковского обслуживания включает следующие шаги: передача сообщения, приглашающего клиента ввести ключевые данные; выдача денег и выписки по проведенному обслуживанию.
В процессе обслуживания происходит обмен данными с банковским компьютером (передаются данные по счету клиента в банке и протокол обслуживания).
DF-диаграммы являются удобным средством описания функционирования компонентов системы. Если поведение системы зависит от времени, определяется реакцией на определенные события, то для моделирования и документирования этих аспектов поведения системы используются диаграммы переходов (STD).
ST-диаграммы состоят из объектов, представляющих состояния и переходы. С помощью этих диаграмм можно моделировать последующее поведение системы на основе ее предыдущего поведения и текущего состояния. Моделируемая система в каждый момент времени находится ровно в одном состоянии. Возможные изменения состояния показываются переходами.
Начальное состояние – это узел, являющийся стартовой точкой для начального системного перехода. Для каждого состояния должна быть информация, позволяющая определить состояния, в которые система может перейти в зависимости от происходящих событий. Событие (или события) определяют условие, вызывающее переход. Кроме условия с переходом может быть связано действие (операция, которая выполняется при выполнении перехода, например, активизация указанного процесса).
Состояния в диаграмме представляются узлами, а переходы – дугами. Условия привязаны к дугам, а действия записываются под соответствующим условием. Упрощенная ST-диаграмма банковской задачи показана на рис. 3.14.
Таким образом описывается последовательность действий в процессе обслуживания клиента.
DF-диаграммы являются удобным средством описания функционирования компонентов системы и связей между ними, но они не содержат знаний о том, какая информация преобразуется процессами.
Словарь данных представляет собой определенным образом организованный список всех элементов данных системы с их точными определениями. Словарь гарантирует общее понимание всех входных и выходных потоков и компонентов хранилищ всеми категориями пользователей и разработчиков информационной системы (от системных аналитиков до программистов).
Для разработки моделей данных предназначены диаграммы ERD («сущность–связь»). ER-диаграммы обеспечивают стандартный способ определения данных и отношений между ними. С помощью этих диаграмм осуществляется детализация хранилищ данных проектируемой информационной системы, а также документируются объекты системы и способы их взаимодействия (важные для предметной области свойства объектов, их отношения с другими объектами).
ER-диаграммы включают несколько типов элементов.
Сущность – множество экземпляров реальных или абстрактных объектов (людей, событий, состояний и т.п.), обладающих общими атрибутами (характеристиками). Любой объект представляется только одной сущностью, которая должна быть уникальным образом идентифицирована (имя отражает класс объекта).
Отношение – это связь между двумя и более сущностями (например, имеет, определяет и т.п.).
Для обозначения этих элементов в ER-диаграмме используются специальные символы (символы ERD приведены в нотации Чена):
– независимая сущность, представляющая независимые данные, которые всегда присутствуют в системе. Отношения с другими сущностями могут отсутствовать;
– зависимая сущность, представляющая данные, зависящие от других сущностей в системе, поэтому она всегда должна иметь отношения с другими сущностями;
– ассоциированная сущность, представляющая данные, которые ассоциируются с отношениями между двумя и более сущностями;
– неограниченное (обязательное) отношение, которое существует всегда, пока существуют связанные им сущности;
– ограниченное (необязательное) отношение, представляющее собой условное отношение между сущностями;
– существенно-ограниченное отношение, используемое, когда соответствующие сущности взаимозависимы в системе.
Связи определяют требования, в соответствии с которыми сущности вовлекаются в отношения, т.е. связь соединяет сущность и отношение. Значение связи характеризует ее тип (выбирается, как правило, из следующего множества: «0 или 1», «0 или более», «1 или более», «p:q» (диапазон)). Пара значений связей, принадлежащих одному и тому же отношению, определяет его тип («один–к–одному», «один–ко–многим», «многие–ко–многим»).
На рис. 3.15 представлена упрощенная ER-диаграмма, демонстрирующая отношения между объектами банковской системы.
Каждая сущность обладает одним или несколькими атрибутами. Диаграммы атрибутов детализируют сущности, раскрывая ассоциированные с ними атрибуты.
Кратко описанные выше средства структурного системного анализа позволяют построить модель требований системы, которая состоит из множества взаимосвязанных диаграмм, словаря данных и текстов. Модель требований описывает, что должна делать проектируемая система без указаний того, как это должно быть реализовано.
На этапе проектирования строится модель реализации, описывающая, как система будет удовлетворять предъявленные к ней требования. Для построения этой модели разработчиками ПО используются различные средства структурного проектирования. На этом этапе уточняется построенная модель (подробно разрабатывается логика каждого процесса), проектируется физическая база данных, строится иерархия функций модулей, подлежащих программированию, оцениваются затраты на реализацию. Построенная модель в дальнейшем используется при программировании.
Существуют различные методологии анализа и проектирования, которые основаны на различных принципах, имеют определенные особенности. Различные методологии структурного анализа и проектирования могут использовать различные техники структурных диаграмм, таблицы, деревья решений, матрицы состояний и переходов, контекстные графы и т.п. и их комбинации. Например, для проектирования систем реального времени используются специальные типы структурных диаграмм, но многие из них являются вариациями (диалектами) описанных выше структурных диаграмм, используемых при проектировании информационных систем.
Одной из самых известных методологий анализа и проектирования информационных систем является методология SADT (Structured Analysis and Design Technique), введенная еще в 1973 г. Россом. SADT успешно использовалась в военных, промышленных и коммерческих организациях для решения различных классов задач (долгосрочное и стратегическое планирование, управление финансами и материально-техническим снабжением и др.).
Другой пример – DSSD (Data-Structured Systems Development) – методология, ориентированная на разработку систем со структурными данными.
Еще один пример известной методологии – методология Мартина предоставляет общую стратегию разработки информационных систем, фокусирующую внимание на стратегическом планировании и бизнес-процессах. Это инженерный подход к разработке информационных систем, обеспечивающий нисходящую пошаговую процедуру построения ИС, позволяющую работать с иерархическими структурами данных.
Выбор конкретной методологии анализа и проектирования зависит от типа разрабатываемой системы, области ее применения, используемых инструментальных средств. Но все они позволяют четко формализовать описание разрабатываемой системы, что делает следующие этапы разработки менее трудоемкими, поддающимися автоматизации.