- •Глава 1. Технология программирования 4
- •Глава 2. Основы проектирования информационных систем 70
- •Глава 3. Обучающие и тестирующие системы 180
- •Введение
- •Технология программирования
- •Общие сведения о технологии программирования. Задачи технологии программирования
- •Базовые определения
- •Невозможность доказательства отсутствия программных ошибок
- •Надежность программной системы
- •Технология программирования как способ создания надежных программных систем
- •Этапы развития технологии программирования
- •Технология программирования и информатизация общества
- •Общие принципы разработки программных систем
- •Специфика разработки программных систем
- •Основные подходы при создании пс
- •Жизненный цикл программной системы
- •Понятие качества программной системы
- •Обеспечение надежности – основной критерий разработки программных систем
- •Методы борьбы со сложностью
- •Обеспечение точности перевода
- •Преодоление барьера между пользователем и разработчиком
- •Контроль принимаемых решений
- •Архитектура программной системы
- •Понятие архитектуры программной системы
- •Основные классы архитектур программных систем
- •Архитектурные функции
- •Тестирование и отладка программной системы
- •Основные понятия
- •-Принципы и виды отладки программной системы
- •Заповеди отладки программной системы
- •Автономная отладка программной системы
- •Комплексная отладка программной системы
- •Обеспечение функциональности и надежности программного средства
- •Функциональность и надежность как обязательные критерии качества программного средства
- •Обеспечение завершенности программного средства
- •Обеспечение точности программного средства
- •Обеспечение автономности программного средства
- •Обеспечение устойчивости программного средства
- •Обеспечение защищенности программных средств
- •Обеспечение качества программного средства
- •Общая характеристика процесса обеспечения качества программного средства
- •Обеспечение легкости применения программного средства
- •Обеспечение эффективности программного средства
- •Обеспечение сопровождаемости программного средства
- •Обеспечение мобильности
- •Литература
- •Основы проектирования информационных систем
- •Проектирование информационной системы. Понятия и структура проекта ис
- •Основные понятия и определения
- •Преимущества электронного документооборота
- •Области применения и примеры реализации информационных систем
- •Требования, предъявляемые к информационным системам
- •Жизненный цикл информационных систем
- •Этапы разработки автоматизированных информационных систем
- •Классификация информационных систем
- •Классификация автоматизированных информационных систем
- •Информационная модель и методы моделирования архитектуры проектируемой информационной системы
- •Методы проектирования информационных систем
- •Профили открытых информационных систем
- •Методологии, технологии и инструментальные средства проектирования
- •Модели структурного проектирования
- •Стандарт моделирования данных idef1x. Er-диаграммы
- •Моделирование данных. Диаграммы потоков данных
- •Моделирование данных. Методология функционального моделирования sadt
- •Case-средства проектирования информационных систем
- •Классификация case-средств
- •Рекомендации по применению case-систем
- •Объектно-ориентированные модели
- •Общая характеристика унифицированного языка моделирования uml
- •Проектирование ис с использованием uml
- •Методология rad
- •Разработка интерфейса ис
- •Литература
- •Обучающие и тестирующие системы
- •Терминология, принятая в данной области
- •История развития процесса создания терминологии и основные проблемы
- •Рекомендованные основные понятия
- •Характеристики электронного издания
- •Электронный учебник – новый жанр учебной литературы
- •Некоторые принципы, которыми следует руководствоваться при создании электронного учебника
- •Необходим ли электронный учебник?
- •Методическое обеспечение электронного учебника
- •Роль методического обеспечения
- •Требования к современному методическому обеспечению
- •Содержание методического комплекса
- •Некоторые вопросы стандартизации, оценки качества и сертификации учебных электронных ресурсов
- •Стандартизация в области образовательных технологий
- •Причины появления и назначение стандартов в области информационных технологий обучения
- •Спецификации ims
- •Спецификации ieee ltsc
- •Модель scorm
- •Метаданные
- •Определение метаданных
- •Роль метаданных
- •Технология создания локальных и сетевых электронных образовательных ресурсов – html
- •Введение
- •Что такое гипертекстовый документ
- •Действительные документы html
- •Html- редакторы
- •Первый документ html
- •Гиперссылки
- •Форматирование документа
- •Синтаксис гипертекстовой разметки
- •Каскадные таблицы стилей
- •Типы представления документов
- •Правила оформления документа
- •Чего надо стараться избегать
- •Публикация
- •Литература
-
Обеспечение точности программного средства
Обеспечение этого примитива качества связано с действиями над значениями вещественных типов (точнее говоря, со значениями, представляемыми с некоторой погрешностью). Обеспечить требуемую точность при вычислении значения той или иной функции значит получить это значение с погрешностью, не выходящей за рамки заданных границ. Видами погрешности, методами их оценки и методами достижения требуемой точности (приближенными вычислениями) занимается вычислительная математика. Здесь мы лишь обратим внимание на некоторую структуру погрешности: погрешность вычисленного значения (полная погрешность) зависит от:
-
погрешности используемого метода вычисления, в которую включается и неточность используемой модели;
-
неустранимой погрешности – погрешности представления используемых данных;
-
погрешности округления – неточности выполнения используемых в методе операций.
-
Обеспечение автономности программного средства
Вопрос об автономности программного средства решается путем принятия решения о возможности использования в разрабатываемом ПС какого-либо подходящего базового программного обеспечения. Надежность имеющегося в распоряжении разработчиков базового программного обеспечения для целевого компьютера может не отвечать требованиям к надежности разрабатываемого ПС. Поэтому от использования такого программного обеспечения приходиться отказываться, а его функции в требуемом объеме приходится реализовывать в рамках разрабатываемого ПС. Аналогичное решение приходится принимать при жестких ограничениях на используемые ресурсы (по критерию эффективности ПС). Такое решение может быть принято уже в процессе разработки спецификации качества ПС, иногда – на этапе конструирования ПС.
-
Обеспечение устойчивости программного средства
Этот примитив качества ПС обеспечивается с помощью так называемого защитного программирования. Вообще говоря, защитное программирование применяется при программировании модуля для повышения надежности ПС в более широком смысле. Как утверждает Майерс [2], «защитное программирование основано на важной предпосылке: худшее, что может сделать модуль, – это принять неправильные входные данные и затем вернуть неверный, но правдоподобный результат». Для того чтобы этого избежать, в текст модуля включают проверки его входных и выходных данных на их корректность в соответствии со спецификацией этого модуля, в частности, должны быть проверены выполнение ограничений на входные и выходные данные и соотношений между ними, указанные в спецификации модуля. В случае отрицательного результата проверки возбуждается соответствующая исключительная ситуация. Для обработки таких ситуаций в конец этого модуля включаются фрагменты второго рода – обработчики соответствующих исключительных ситуаций. Эти обработчики помимо выдачи необходимой диагностической информации, могут принять меры либо по исключению ошибки в данных (например, потребовать их повторного ввода), либо по ослаблению влияния ошибки (например, во избежание поломки устройств, управляемых с помощью данного ПС, при аварийном прекращении выполнения программы осуществляют мягкую их остановку).
Применение защитного программирования модулей приводит к снижению эффективности ПС как по времени, так и по памяти. Поэтому необходимо разумно регулировать степень применения защитного программирования в зависимости от требований к надежности и эффективности ПС, сформулированным в спецификации качества разрабатываемого ПС. Входные данные разрабатываемого модуля могут поступать как непосредственно от пользователя, так и от других модулей. Наиболее употребительным случаем применения защитного программирования является применение его для первой группы данных, что и означает реализацию устойчивости ПС. Это нужно делать всегда, когда в спецификации качества ПС имеется требование об обеспечении устойчивости ПС. Применение защитного программирования для второй группы входных данных означает попытку обнаружить ошибку в других модулях во время выполнения разрабатываемого модуля, а для выходных данных разрабатываемого модуля попытку обнаружить ошибку в самом этом модуле во время его выполнения. По существу, это означает частичное воплощение подхода самообнаружения ошибок для обеспечения надежности ПС. Этот случай защитного программирования применяется крайне редко только в том случае, когда требования к надежности ПС чрезвычайно высоки.