Методы и способы идентификации сбоев и ошибок презентация

1. Методы и способы идентификации сбоев и ошибок

2.

Международный стандарт ANSI/IEEE-729-83
разделяет все ошибки в разработке программ на
следующие типы.
• Ошибка (error) — состояние программы, при
котором выдаются неправильные результаты,
причиной которых являются изъяны (flaw) в
операторах программы или в технологическом
процессе ее разработки, что приводит к
неправильной
интерпретации
исходной
информации, следовательно, и к неверному
решению.

3.

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

4.

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

5. Ошибки на этапах процесса тестирования.

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

6. Рассмотрим процесс тестирования, исходя из рекомендаций стандарта ISO/IEC 12207, и приведем типы ошибок, которые обнаруживаются

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

7. Процесс проектирования

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

8.

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

9. Этап кодирования

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

10. Процесс тестирования.

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

11. Процесс сопровождения.

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

Скачать материал

ПРИЧИНЫ И СПОСОБЫ ВЫЯВЛЕНИЯ ПРОГРАММНЫХ СБОЕВМДК.03.01 «Техническое обслужива...

Скачать материал

  • Сейчас обучается 29 человек из 22 регионов

  • Курс добавлен 15.05.2023
  • Сейчас обучается 425 человек из 69 регионов

  • Сейчас обучается 27 человек из 19 регионов

Описание презентации по отдельным слайдам:

  • ПРИЧИНЫ И СПОСОБЫ ВЫЯВЛЕНИЯ ПРОГРАММНЫХ СБОЕВМДК.03.01 «Техническое обслужива...

    1 слайд

    ПРИЧИНЫ И СПОСОБЫ ВЫЯВЛЕНИЯ ПРОГРАММНЫХ СБОЕВ
    МДК.03.01 «Техническое обслуживание и ремонт компьютерных систем и комплексов»

  • К программным неисправностям можно отнести любой сбой в приложениях, операцио...

    2 слайд

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

  • Явные признаки программных сбоев:Частое зависание приложения
Медленная загруз...

    3 слайд

    Явные признаки программных сбоев:
    Частое зависание приложения
    Медленная загрузка операционной системы
    Появление ошибок при загрузке операционной системы
    Невозможность запуска приложений

  • Основные причины возникновения ошибок:Несовершенство программного обеспечения...

    4 слайд

    Основные причины возникновения ошибок:
    Несовершенство программного обеспечения
    Несовершенство операционной системы
    Отсутствие нужных ресурсов
    Ошибки в реестре
    Вирусы, троянские кони и «черви»
    Ограничения операционной системы
    Использование устаревшего оборудования
    Неверные настройки операционной системы
    Ошибки драйверов
    Разгон компьютера

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

    5 слайд

    Для выявления причин программных неисправностей требуется диагностика и оптимизация операционной системы.
    Оптимизация ОС – это совокупность действий по изменению настроек системы, ведущая к увеличению производительности этой системы
    Диагностика – это тщательное тестирование всех компонентов компьютера с целью выяснения соответствия их характеристик заявленных производителем, а так же определением реальной производительности и сравнения этих показателей с эталоном оборудования
    Для предотвращения и устранения программных неисправностей существует ряд утилит, таких как: WhatlsHang, AppCrashView, Startup Booster, AntiFreeze, Norton Ghost, Ashampoo UnInstaller, WinRescue XP, SystemCare, Glary Utilities, Ccleaner, FixWin, Wise Care 365, Bug Doctor

  • WhatIsHang - утилита для обнаружения и отображения программного обеспечения и...

    6 слайд

    WhatIsHang — утилита для обнаружения и отображения программного обеспечения или процесса, который тормозит работу системы и приводит к «зависанию» пользовательского интерфейса. Большая часть отображаемой информации предназначена для пользователей со знанием программирования под Windows. Однако, WhatIsHang также показывает списки строк и DLL-файлы, отвечающих за появление проблемы, что может помочь пользователям, которые не имеют навыков программирования, понять и преодолеть причины проблемы и восстановить нормальную работу.
    Утилита WhatlsHang

  • Утилита AppCrashViewAppCrashView это небольшая утилита для Windows Vista и Wi...

    8 слайд

    Утилита AppCrashView
    AppCrashView это небольшая утилита для Windows Vista и Windows 7, которая отображает подробную информацию о всех авариях приложений, произошедших в вашей системе. Аварийная информация извлекается из .wer файлов, созданных компонентом WER (Windows Error Reporting, компонент создает отчеты об ошибках) операционной системы Windows. Этот .wer файл создается каждый раз, когда произошла авария. AppCrashView также позволяет вам легко сохранять аварийный список в текстовый файл, CSV, HTML, XML файл. Системные требования. На данный момент, эта утилита работает только на Windows Vista, Windows 7 и Windows Server 2008, просто потому, что более ранние версии Windows не сохраняют информацию об аварии в .WER файлы. Приложение AppCrashView не требует установки или дополнительных DLL файлов. Для того, чтобы начать использовать его, просто запустите исполняемый файл — AppCrashView.exe. Главное окно содержит две панели. На верхней панели отображается список всех аварий, найденных в вашей системе, в то время как нижняя панель отображает содержание аварийного файла, который вы выбираете на верхней панели.

  • Утилита Startup BoosterStartup Booster - программа для повышения скорости заг...

    10 слайд

    Утилита Startup Booster
    Startup Booster — программа для повышения скорости загрузки, оптимизации работы операционной системы и очистки её от ненужных данных. Startup Booster распределит приоритеты программ при загрузке системы, очистит реестр от ошибок и удалит ненужные файлы с дисков.
    Возможности:
    • Менеджер автозапуска программ, который исправит ошибки, возникающие при автозагрузке, тем самым уменьшая время загрузки вашей системы, а также программа обнаруживает подозрительные программы (вирусы и другое вредоносное ПО), которые могут загружаться при запуске системы.
    • Очистка системы от ошибок и неправильных или ненужных записей в реестре Windows.
    • Очистка от ненужных или устаревших файлов (временный файлы, временные интернет-файлы).
    • Оптимизация системы, с помощью настройки параметров реестра.
    • Рекомендации по настройки BIOS.

  • Утилита AntiFreezeМенеджер для работы с зависшими приложениями. AntiFreeze по...

    12 слайд

    Утилита AntiFreeze
    Менеджер для работы с зависшими приложениями. AntiFreeze поможет вам в том случае, когда ни одно приложение не откликается на ваши действия, только мышка все еще продолжает перемещаться по экрану. Такое может произойти, когда на компьютере работают одновременно слишком много программ, и они забирают всю память и ресурсы компьютера. Часто даже невозможно при это запустить менеджер задач. AntiFreeze в это время сидит в системном трее и ждет, когда будет нажата комбинация клавиш ALT+CTRL+WIN+HOME. После этого утилита «усыпит» запущенные приложения, кроме самых важных, что позволит вам закрыть программы, из-за которых возникли проблемы.

  • Утилита Norton GhostNorton Ghost - Разработанная компанией Symantec программа...

    14 слайд

    Утилита Norton Ghost
    Norton Ghost — Разработанная компанией Symantec программа Norton Ghost включает развитые возможности архивации и восстановления данных для персональных компьютеров.
    Пользователи в состоянии защитить свои данные, сделав резервную копию содержимого жесткого диска, при этом перезагрузка Windows не требуется. Процедура добавочной архивации дает возможность экономить время пользователя и место на жестком диске. Можно даже выполнять архивацию автоматически. Все это позволяет быстро восстанавливать отдельные файлы, выбранные папки или содержимое всего жесткого диска.

  • Утилита Ashampoo UnInstaller Ashampoo UnInstaller —  утилита, которая предост...

    19 слайд

    Утилита Ashampoo UnInstaller 
    Ashampoo UnInstaller —  утилита, которая предоставляет пользователям мощный и простой в использовании инструмент для очистки и оптимизации операционной системы Windows. Программа была создана германской частной компанией Ashampoo.
    Утилита не является кроссплатформенным программным обеспечением и работает только на компьютерах под управлением операционной системы Microsoft Windows.

  • Утилита WinRescue XPWinRescue XP – это программа, основной функцией которой я...

    22 слайд

    Утилита WinRescue XP
    WinRescue XP – это программа, основной функцией которой является полное восстановление операционной системы Windows XP в случае её непредвиденного отключения. Помимо этого WinRescue XP способна защищать систему от возможных сбоев и, при необходимости, очищать реестр. Единственным её недостатком является то, что программа предусмотрена только для работы с Windows XP. Но для других операционных систем существуют отдельные разновидности версий этой программы, созданных специально для работы с ними.

  • Утилита Advanced System CareAdvanced SystemCare - бесплатный пакет всевозможн...

    24 слайд

    Утилита Advanced System Care
    Advanced SystemCare — бесплатный пакет всевозможных утилит для оптимизации, настройки, исправления ошибок и повышения общей производительности вашей операционной системы.
    Программа проводит анализ системы, после чего производит оптимизацию системной конфигурации, в том числе изменяет настройки безопасности на оптимальные, очищает от шпионского и рекламного ПО, исправляет ошибки в системном реестре,  удаляет временные и ненужные файлы, а также следы путешествия по интернет, оптимизирует параметры интернет-соединения, производит дефрагментацию жесткого диска и системного реестра, позволяет управлять автозагрузкой и многое другое.

  • Утилита Glary Utilities Glary Utilities - мощный комплекс служебных программ...

    26 слайд

    Утилита Glary Utilities
     Glary Utilities — мощный комплекс служебных программ и утилит, предназначенный для поддержания в рабочем состоянии, ускорения работы, обслуживания и защиты Вашего компьютера. Glary Utilities позволяют Вам очистить обычные и системные файлы от всякого мусора, такого как некорректные записи системного реестра и временные файлы интернета (встроенная поддержка на уровне плагинов более 45 внешних программ). Вы можете также управлять дополнениями браузера и удалять их, анализировать использование дискового пространства и находить дубликаты файлов.

  • Утилита CCleanerCCleaner - программа для удаления из системы не используемых...

    29 слайд

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

  • Утилита FixWinFixWin - небольшая полезная утилита, способная избавить пользов...

    31 слайд

    Утилита FixWin
    FixWin — небольшая полезная утилита, способная избавить пользователя от большинства распространенных проблем в операционных системах Windows Vista и Windows 7, как например отсутствующая иконка корзины на рабочем столе, сбои в настройках и интерфейсе браузера Internet Explorer, сетевых соединений, Windows Media Player и Media Center, блокировка вирусами диспетчера задач, редактора реестра, консоли управления компьютером и многое другое. FixWin 
    включает в себя решение около 50 различных проблем. 
    Перед началом использования утилита предлагает создать точку восстановления системы. Программа не требует установки.

  • Утилита Wise Care 365Сейчас существует множество всевозможных программ и набо...

    34 слайд

    Утилита Wise Care 365
    Сейчас существует множество всевозможных программ и наборов для очистки системы. Такие программы зачастую повышают ее производительность, но, как правило, приводят к появлению системных ошибок. Исключением является утилита Wise Care 365 Free. Данное решение умеет не только выполнять стандартные операции, такие как удаление «мусорных» файлов, работа с системными процессами, службами и папкой автозагрузки, но также предлагает пользователю ряд других полезных возможностей. Среди них: инструмент для оптимизации оперативной памяти, приложение, которое оценивает скорость загрузки системы, а также предлагает возможные пути ее ускорения и многое другое.
       При первом запуске Wise Care 365 Free самостоятельно проверит вашу систему и предложит произвести ряд настроек, которые положительно скажутся на ее работе. Если функционала программы вам показалось недостаточно, то можете загрузить дополнительные утилиты разработчика. Ссылки на них вы найдете в соответствующей вкладке главного окна интерфейса Wise Care 365 Free.

  • Утилита BUG DOCTORBug Doctor - полезная программа, которая способна находить...

    36 слайд

    Утилита BUG DOCTOR
    Bug Doctor — полезная программа, которая способна находить и исправлять скрытые баги и ошибки на вашем ПК, что позволит оптимизировать и увеличить общую производительность системы до 300%! По статистике практически на всех компьютерах (93,7%) имеют место поврежденные или потенциально опасные файлы, которые содержат 150 и более различных проблем и ошибок. Bug Doctor легко устранит все эти и многие другие ошибки. Кроме того, пользователей программы несомненно порадует приятный графический интерфейс и удобное меню навигации.

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 276 092 материала в базе

  • Выберите категорию:

  • Выберите учебник и тему

  • Выберите класс:

  • Тип материала:

    • Все материалы

    • Статьи

    • Научные работы

    • Видеоуроки

    • Презентации

    • Конспекты

    • Тесты

    • Рабочие программы

    • Другие методич. материалы

Найти материалы

Другие материалы

  • 12.12.2016
  • 1337
  • 0
  • 12.12.2016
  • 512
  • 7
  • 12.12.2016
  • 515
  • 0
  • 12.12.2016
  • 492
  • 0
  • 12.12.2016
  • 493
  • 0

«Информатика», Босова Л.Л., Босова А.Ю.

  • 12.12.2016
  • 327
  • 0

Вам будут интересны эти курсы:

  • Курс повышения квалификации «Развитие информационно-коммуникационных компетенций учителя в процессе внедрения ФГОС: работа в Московской электронной школе»

  • Курс профессиональной переподготовки «Информационные технологии в профессиональной деятельности: теория и методика преподавания в образовательной организации»

  • Курс повышения квалификации «Использование компьютерных технологий в процессе обучения в условиях реализации ФГОС»

  • Курс повышения квалификации «Введение в программирование на языке С (СИ)»

  • Курс профессиональной переподготовки «Математика и информатика: теория и методика преподавания в образовательной организации»

  • Курс повышения квалификации «Специфика преподавания дисциплины «Информационные технологии» в условиях реализации ФГОС СПО по ТОП-50»

  • Курс повышения квалификации «Современные языки программирования интегрированной оболочки Microsoft Visual Studio C# NET., C++. NET, VB.NET. с использованием структурного и объектно-ориентированного методов разработки корпоративных систем»

  • Курс повышения квалификации «Применение интерактивных образовательных платформ на примере платформы Moodle»


1


Лекция 2. ИСТОЧНИКИ ОШИБОК В ПРОГРАММНЫХ СРЕДСТВАХ


2


Учебные вопросы 1. Интеллектуальные возможности человека 2. Неправильный перевод как причина ошибок в программных средствах 3. Модель перевода. 4. Основные пути борьбы с ошибками


3


Вопрос 1.


4


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


5


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


6


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


7


Способность человека к перебору связана с возможностью последовательного переключения внимания с одного предмета на другой, позволяя узнавать искомый предмет. Эта способность весьма ограничена — в среднем человек может уверенно (не сбиваясь) перебирать в пределах 1000 предметов (элементов). Человек должен научиться действовать с учетом этой своей ограниченности.


8


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


9


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


10


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


11


При разработке ПС мы не всегда можем уверенно знать о всех связях между ее элементами из-за возможных ошибок. Поэтому полезно уметь оценивать сложность системы по числу ее элементов: числом потенциальных путей взаимодействия между ее элементами, т.е. n!, где n число ее элементов. Систему назовем малой, если n 7. При n=7 имеем промежуточный класс систем. Малая система всегда проста, а большая может быть как простой, так и сложной. Задача технологии программирования научиться делать большие системы простыми.


12


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


13


Вопрос 2.


14


При разработке и использовании ПС многократно осуществляется преобразование (перевод) информации из одной формы в другую: 1. Заказчик формулирует свои потребности в ПС в виде некоторых требований. 2. Исходя из этих требований, разработчик создает внешнее описание ПС, используя при этом спецификацию (описание) заданной аппаратуры и, возможно, спецификацию базового программного обеспечения. 3. На основании внешнего описания и спецификации языка программирования создаются тексты программ ПС на этом языке. 4. По внешнему описанию ПС разрабатывается также и пользовательская документация. 5. Текст каждой программы является исходной информацией при любом ее преобразовании, в частности, при исправлении в ней ошибки. 6. Пользователь на основании документации выполняет ряд действий для применения ПС и осуществляет интерпретацию получаемых результатов.


15


Грубая схема разработки и применения ПС


16


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


17


Вопрос 3.


18


Процесс перевода информации из представления A в представление B.


19


Основные шаги перевода: он получает информацию, содержащуюся в представлении A, с помощью своего читающего механизма R; он запоминает полученную информацию в своей памяти M; он выбирает из своей памяти преобразуемую информацию и информацию, описывающую процесс преобразования, выполняет перевод и посылает результат своему пишущему механизму W; с помощью этого механизма он фиксирует представление B.


20


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


21


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


22


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


23


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


24


Вопрос 4.


25


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

Слайд 3

Каналы передачи данных не всегда надежны, да и

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

само оборудование обработки информации работает со сбоями.
По этой

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

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


Слайд 4
Чтобы найти ошибку, к сообщению добавляют контрольную сумму

Чтобы найти ошибку, к сообщению добавляют контрольную сумму (checksum). В простом случае это сумма всех

(checksum).
В простом случае это сумма всех байтов сообщения.

Например:
Сообщение: 12 34 56
Контрольная сумма: 12+34+56=102
После передачи в это сообщение

могут быть внесены помехи, например: искаженное сообщение 12 36 56 и контрольная сумма 102
Если теперь сложить байты сообщения, результат не совпадет с контрольной суммой. Программа может сделать вывод, что данные были повреждены, и принять меры (например, еще раз запросить пакет или выдать сообщение, что он поврежден.


Слайд 5
Чем плоха контрольная сумма
Во-первых, если просто складывать байты,

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

то старшие биты будут изменяться реже, чем младшие. То

есть, если мы складываем
12 34 56, контрольная сумма 102
12 34

56 23, контрольная сумма 125
12 34 56 23 45, контрольная сумма 170

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

12 34 56, контрольная сумма 102
56 12 34, контрольная сумма 102


Слайд 6
Расстояние Хэмминга
Пусть А и Б две двоичные

Расстояние Хэмминга Пусть А и Б две двоичные кодовые последовательности равной длины. Расстояние Хэмминга между

кодовые последовательности равной длины. Расстояние Хэмминга между двумя этими

кодовыми последовательностями равно числу символов, которыми они отличаются. Например, расстояние

Хэмминга между кодами 00111 и 10101 равно 2.

Для детектирования ошибок в n битах, схема кодирования требует применения кодовых слов с расстоянием Хэмминга не менее N+1, а для исправления ошибок в N битах необходима схема кодирования с расстоянием Хэмминга между кодами не менее 2N+1.


Слайд 7
Широко распространены коды с одиночным битом четности
К

Широко распространены коды с одиночным битом четности К каждым М бит добавляется 1 бит, значение

каждым М бит добавляется 1 бит, значение которого определяется

четностью (или нечетностью) суммы этих М бит. Так, например, для

двухбитовых кодов 00, 01, 10, 11 кодами с контролем четности будут 000, 011, 101 и 110. Если в процессе передачи один бит будет передан неверно, четность кода из М+1 бита изменится.

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


Слайд 8
Штрих-коды (barcode).
Банка консервированной кукурузы, на которой написан

Штрих-коды (barcode). Банка консервированной кукурузы, на которой написан штрих-код:
 
 5 998483 710125Это код EAN-13

штрих-код:

5 998483 710125
Это код EAN-13 (тринадцать цифр). Правило для

его проверки такое: сложить цифры на четных позициях, умножить сумму

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

9 + 8 + 8+ 7 + 0 + 2 = 34
5 + 9 + 4 + 3 + 1 + 1 + 5 = 28
34 * 3 + 28 = 130, делится на 10
А чтобы это условие выполнялось, последнюю цифру, 5, делают контрольной суммой.


Слайд 9
Простой, короткий и быстрый (примерно в 10 раз

Простой, короткий и быстрый (примерно в 10 раз быстрее CRC) способ подсчета контрольной суммы Берем

быстрее CRC) способ подсчета контрольной суммы
Берем по 4

байта из файла, и делаем с ними логическую операцию XOR.

То, что получится в результате, — контрольная сумма.
В этой контрольной сумме все байты используются полностью, среди них нет более значимых или менее значимых. Теоретическая вероятность того, что контрольная сумма окажется правильной для испорченного файла — 1 шанс на 2 ^ 32.
Контроль по четности достаточно эффективен для выявления одиночных и множественных ошибок в условиях, когда они являются независимыми.


Слайд 10
CRC
cyclic redundancy code, циклический избыточный код — способ

CRC cyclic redundancy code, циклический избыточный код — способ цифровой идентификации некоторой последовательности данных, который заключается

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

контрольного значения её циклического избыточного кода.

Простая формула: CRC = сообщение

% полином


Слайд 11
CRC
Циклический избыточный контроль (Cyclic Redundancy Check, CRC)

CRCЦиклический избыточный контроль (Cyclic Redundancy Check, CRC) является в настоящее время наиболее популярным методом

является в настоящее время наиболее популярным методом контроля в

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

широко применяется при записи данных на диски и дискеты). Метод основан на рассмотрении исходных данных в виде одного многоразрядного двоичного числа. Например, кадр стандарта Ethernet, состоящий из 1024 байт, будет рассматриваться как одно число, состоящее из 8192 бит. В качестве контрольной информации рассматривается остаток от деления этого числа на известный делитель R.
Обычно в качестве делителя выбирается семнадцати- или тридцати трехразрядное число, чтобы остаток от деления имел длину 16 разрядов (2 байт) или 32 разряда (4 байт). При получении кадра данных снова вычисляется остаток от деления на тот же делитель R, но при этом к данным кадра добавляется и содержащаяся в нем контрольная сумма.


Слайд 12
Алгоритм CRC

Алгоритм CRC базируется на свойствах деления с

Алгоритм CRC
 Алгоритм CRC базируется на свойствах деления с остатком двоичных многочленов, то есть является

остатком двоичных многочленов, то есть является по сути остатком

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

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


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

Операция деления на примитивный полином эквивалентна следующей схеме: Пусть выбран примитивный полином, задающий цикл де

Пусть выбран примитивный полином, задающий цикл де Брейна 0010111001011100…

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

данных, а нижние строки — смещения на 0,1,2 бит цикла де Брейна

Тогда контрольная сумма будет равна операции XOR тех столбцов, над которыми в верхней строке расположена 1. В этом случае, 010 xor 101 xor 011 xor 111 xor 110 = 101 (CRC).


Слайд 14
При «правильном» выборе порождающего многочлена (делителя), остатки от

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

деления на него будут обладать нужными свойствами
хорошей

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

Второе обеспечивается тем, что

степень порождающего многочлена обычно пропорциональна длине байта или машинного слова (например 8, 16 или 32).


Слайд 15
Формализованный алгоритм расчёта CRC16

Для получения контрольной суммы, необходимо

Формализованный алгоритм расчёта CRC16
 Для получения контрольной суммы, необходимо сгенерировать полином. Основное требование к полиному:

сгенерировать полином. Основное требование к полиному: его степень должна

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

бит полинома обязательно должен быть равен «1».
Из файла берется первое слово. В зависимости от того, равен ли старший бит этого слова «1» или нет, выполняем (или нет) операцию XOR на полином. Полученный результат, вне зависимости от того, выполнялась ли операция XOR, сдвигаем на один бит влево (то есть умножаем на 2). После сдвига (умножения) теряется старый старший бит, а младший бит освобождается (обнуляется). На место младшего бита загружается очередной бит из файла. Операция повторяется до тех пор, пока не загрузится последний бит файла. После прохождения всего файла, в слове остается остаток, который и является контрольной суммой.


Слайд 16
Используя описанную выше возможность замены полинома на бинарную

Используя описанную выше возможность замены полинома на бинарную последовательность,
 рассмотрим алгоритм подсчета контрольной суммы CRC8:

последовательность,
рассмотрим алгоритм подсчета контрольной суммы CRC8: Исходный

массив данных: 1001 0110 0100 1011.
Порождающий многочлен: 1101 0101.


Слайд 17
В Ethernet Вычисление crc производится аппаратно.
Реализация аппаратного

В Ethernet Вычисление crc производится аппаратно. Реализация аппаратного расчета CRC для образующего полинома B(x)= 1

расчета CRC для образующего полинома
B(x)= 1 + x2

+ x3 +x5 + x7.
В этой схеме входной код

приходит слева.


Слайд 18
Эффективность CRC для обнаружения ошибок на многие порядки

Эффективность CRC для обнаружения ошибок на многие порядки выше простого контроля четности.В настоящее время стандартизовано

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

образующих полиномов. Для оценочных целей можно считать, что вероятность невыявления

ошибки в случае использования CRC, если ошибка на самом деле имеет место, равна (1/2)r, где r — степень образующего полинома.
CRC-12 x12 + x11 + x3 + x2 + x1 + 1
CRC-16 x16 + x15 + x2 + 1
CRC-CCITT x16 + x12 + x5 + 1


Слайд 21
Коды Рида-Соломона были предложены в 1960 Ирвином Ридом

Коды Рида-Соломона были предложены в 1960 Ирвином Ридом (Irving S. Reed) и Густавом Соломоном (Gustave

(Irving S. Reed) и Густавом Соломоном (Gustave Solomon), являвшимися

сотрудниками Линкольнской лаборатории
Популярным кодом Рида-Соломона является

RS(255,223) с 8-битными символами. Каждое кодовое слово содержит 255 байт, из которых 223 являются информационными и 32 байтами четности.
Декодер может исправить любые 16 символов с ошибками в кодовом слове: то есть, ошибки могут быть исправлены, если число искаженных байт не превышает 16.


Слайд 22
Коррекция ошибок
Процедура коррекции ошибок предполагает два совмещенных процесса:

Коррекция ошибокПроцедура коррекции ошибок предполагает два совмещенных процесса: обнаружение ошибки и определение места (идентификация сообщения

обнаружение ошибки и
определение места (идентификация сообщения и позиции

в сообщении).
После решения этих двух задач, исправление тривиально –

надо инвертировать значение ошибочного бита.

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


Слайд 23

Код Хэмминга представляет собой блочный код, который позволяет

Код Хэмминга представляет собой блочный код, который позволяет выявить и исправить ошибочно переданный бит в

выявить и исправить ошибочно переданный бит в пределах переданного

блока. Обычно код Хэмминга характеризуется двумя целыми числами, например, (11,7)

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


Слайд 24

Например, пусть возможны следующие правильные коды (все они,

Например, пусть возможны следующие правильные коды (все они, кроме первого и последнего, отстоят друг от

кроме первого и последнего, отстоят друг от друга на

расстояние 4):
00000000
11110000
00001111
11111111
При получении кода 00000111 можно предположить, что

правильное значение полученного кода равно 00001111. Другие коды отстоят от полученного на большее расстояние Хэмминга.


Слайд 25
В общем случае код имеет N=M+C бит
Пусть

В общем случае код имеет N=M+C бит Пусть М=4, а N=7, тогда слово-сообщение будет иметь

М=4, а N=7, тогда слово-сообщение будет иметь вид: M4,

M3, M2, C3, M1, C2, C1. Теперь попытаемся вычислить значения

С1, С2, С3. Для этого используются уравнения, где все операции представляют собой сложение по модулю 2:
С1 = М1 + М2 + М4
С2 = М1 + М3 + М4
С3 = М2 + М3 + М4
Для определения того, доставлено ли сообщение без ошибок, вычисляем следующие выражения (сложение по модулю 2):
С11 = С1 + М4 + М2 + М1
С12 = С2 + М4 + М3 + М1
С13 = С3 + М4 + М3 + М2
С11С12С13 Значение
1 2 4 Позиция бит
0 0 0 Ошибок нет
0 0 1 Бит С3 не верен
0 1 0 Бит С2 не верен
0 1 1 Бит М3 не верен
1 0 0 Бит С1 не верен
1 0 1 Бит М2 не верен
1 1 0 Бит М1 не верен
1 1 1 Бит М4 не верен


Слайд 26
Циклические коды BCH
(Bose-Chadhuri-Hocquenghem).
Пусть общее число бит

Циклические коды BCH 
 (Bose-Chadhuri-Hocquenghem). Пусть общее число бит в блоке равно N, из них

в блоке равно N, из них полезную информацию несут

в себе K бит, тогда в случае ошибки, имеется возможность

исправить m бит. Таблица содержит зависимость m от N и K для кодов ВСН.
Общее число бит N Число полезных бит М Число исправляемых бит m
31 26 1
21 2
16 3
63 57 1
51 2
45 3
127 120 1
113 2
106 3


Слайд 27
Процент обнаруживаемых ошибок
Число полезных бит М

Процент обнаруживаемых ошибокЧисло полезных бит М  Число избыточных бит (n-m)

Число избыточных бит (n-m)

6 7 8
32 48% 74% 89%
40 36% 68% 84%
48 23% 62% 81%


Слайд 28
Рассмотрим пример передачи кода буквы s = 0x073

Рассмотрим пример передачи кода буквы s = 0x073 = 1110011 с использованием кода Хэмминга (11,7).

= 1110011 с использованием кода Хэмминга (11,7).
Позиция бита:

11 10 9 8 7 6 5 4

3 2 1
Значение бита: 1 1 1 * 0 0 1 * 1 * *
11 =1011 10 =1010 09 =1001 05 =0101 03 =0011 контр.сумма=1110
Приемник получит код
Позиция бита: 11 10 9 8 7 6 5 4 3 2 1
Значение бита: 1 1 1 1 0 0 1 1 1 1 0
Просуммируем снова коды позиций ненулевых битов и получим нуль.
11 =1011 10 =1010 09 =1001 08 =1000 05 =0101 04 =0100 03 =0011 02 =0010 сумма =0000


Слайд 29
Коды Рида – Соломона недвоичные циклические коды, позволяющие

Коды Рида – Соломона недвоичные циклические коды, позволяющие исправлять ошибки в блоках данных. Элементами кодового

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

не биты, а группы битов (блоки). Очень распространены коды Рида-Соломона,

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

Код RS(255,223) может исправить до 16 ошибок в символах. В худшем случае, могут иметь место 16 битовых ошибок в разных символах (байтах). В лучшем случае, корректируются 16 полностью неверных байт, при этом исправляется 16 x 8=128 битовых ошибок.


Слайд 30
Циклы де Брейна названы по имени голландского математика

Циклы де Брейна названы по имени голландского математика Н. Г. де БрeйнаЦиклы де Брейна названы

Н. Г. де БрeйнаЦиклы де Брейна названы по имени

голландского математика Н. Г. де Брeйна (англ.Циклы де Брейна названы по

имени голландского математика Н. Г. де Брeйна (англ.) (англ.Циклы де Брейна названы по имени голландского математика Н. Г. де Брeйна (англ.) (англ. Nicolaas Govert de BruijnЦиклы де Брейна названы по имени голландского математика Н. Г. де Брeйна (англ.) (англ. Nicolaas Govert de Bruijn), который рассматривал их в 1946 году

Примеры циклов де Брейна для k= 2 с периодом 2, 4, 8, 16:
01 (содержит подпоследовательности 0 и 1)
0011 (содержит подпоследовательности 00, 01, 11, 10)
00010111 (000, 001, 010, 101, 011, 111, 110, 100)
0000100110101111


Слайды и текст этой презентации

Слайд 1

Описание слайда:

Виды ошибок и способы их устранения
Выполнила:Коровкина Мария
Группа 2/15



Слайд 2

Описание слайда:

Выделяют три типа ошибок: ошибки компиляции, ошибки времени выполнения и логические ошибки.


Слайд 3

Описание слайда:

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


Слайд 4

Описание слайда:

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


Слайд 5

Описание слайда:

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


Слайд 6

Описание слайда:

В процессе устранения логических ошибок можно выделить три этапа:
1. установление факта существования ошибки;
2. локализация ошибки;
3. устранение ошибки.


Слайд 7

Описание слайда:

1. статическая (ручная) проверка, которая заключается в анализе программы без выполнения ее на ЭВМ;
2. тестирование — прогон на ЭВМ.
Оба метода требуют наборов тестовых данных, которые должны подбираться параллельно с разработкой алгоритма. В число наборов тестовых данных рекомендуется включить несколько типичных, среди них должны быть корректные и некорректные данные. Тестовые данные должны охватывать предельные случаи. Если в программе есть разветвления, то необходимы наборы тестовых данных для каждой ветви. Если в программе есть циклы, то данные нужно подобрать так, чтобы цикл выполнялся минимально и максимально возможное число раз.


Слайд 8

Описание слайда:

При отладке программ для практического использования нужно подобрать дополнительные тестовые данные:
1. Получить реальные данные у потенциального пользователя.
2. Породить случайным образом наборы тестовых данных.


Слайд 9

Описание слайда:

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


Слайд 10

Описание слайда:

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


Слайд 11

Описание слайда:

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


Слайд 12

Описание слайда:

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


Слайд 13

Описание слайда:

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


Понравилась статья? Поделить с друзьями:
  • Метро ласт лайт ошибка при запуске
  • Методы защиты информации от ошибок пользователя
  • Метро ласт лайт ошибка msvcp110 dll
  • Методом проб и ошибок я научился
  • Метро ласт лайт ошибка 0xc000007b