Главная » Просмотр файлов » Лекции. Тестирование ПО (all in one)

Лекции. Тестирование ПО (all in one) (1186159), страница 3

Файл №1186159 Лекции. Тестирование ПО (all in one) (Лекции) 3 страницаЛекции. Тестирование ПО (all in one) (1186159) страница 32020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

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

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

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

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

Конечно, чаще возникают мелкие ошибки, не приводящие ксерьезным последствиям. Зависимость между количеством ошибок и размером ихпоследствий подчиняется закону Ципфа (Zipf) [9] — количество случающихся сбоевпримерно обратно пропорционально величине наносимого ими ущерба.Далее описывается несколько примеров ошибок в программном обеспечении, имевшихсерьезные последствия.•Ошибка в системе управления космическим аппаратом Mariner 1 [10].Эта ошибка привела к уничтожению одного из первых кораблей, направлявшегося кВенере, через несколько минут после запуска 22 июля 1962 года.В ходе полета антенна связи вышла из строя, связь со службой управления былапотеряна, и управление полетом взял на себя бортовой компьютер. Однако в одной изформул для расчета положения было забыто усреднение скорости по несколькимпоследовательным измеренным значениям — в результате небольшие колебанияскорости, связанные с неточностью измерительной аппаратуры, стали рассматриватьсясистемой как серьезные, она стала предпринимать «корректирующие» действия, врезультате чего корабль сошел с курса и был уничтожен.•Ошибка в программном обеспечении, управляющем аппаратом радиационной терапииTherac-25 [11].За 1985-1987 годы зафиксировано 6 инцидентов со смертельным исходом, связанных сего работой.

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

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

При эксплуатационномтестировании она не была обнаружена, поскольку операторы тогда еще не научилисьпереключать режимы достаточно быстро.•Ошибка в системе управления космическим аппаратом Фобос 1 [12].Привела к потере связи с кораблем, уже находившимся на пути к Марсу, 2 сентября 1988года. Корабль перестал ориентироваться в пространстве, не смог сориентироватьсолнечные батареи и израсходовал аккумуляторы, поскольку были отключенынавигационные приборы для определения положения относительно Солнца.Команда отключения приборов была в тестовой подпрограмме, использовавшейся наЗемле для проверки работоспособности отдельных систем, удалить этот код не успелиперед вылетом, поскольку он был записан в памяти, предназначенной только для чтения,а для ее замены требовалось существенное время.

Казалось, однако, что в ходе полетаэта программа никогда не будет вызвана. Но при передаче команд по корректировкекурса 29 августа 1988 года была допущена ошибка — пропущен один символ, чтопривело к выполнению этой тестовой программы.Другой корабль этой серии, Фобос 2, был также потерян из-за какой-то ошибки всистеме управления 27 марта 1989 года, уже на орбите вокруг Марса.•25 февраля 1991 года во время Первой войны в Персидском заливе американскаясистема ПВО Patriot не смогла сбить иракскую ракету Скад, которая в результате попалав барак американской армии, убив 28 человек и ранив около ста [13].Причиной промаха Patriot, как выяснилось, было накопление ошибок округления завремя работы системы. Время в ней измерялось в десятых долях секунды, а числа былипредставлены в 24-битном двоичном формате с плавающей точкой.

При представлении1/10 как двоичной дроби с 24-мя цифрами возникает небольшая ошибка.В рассматриваемом случае система Patriot работала без перезагрузки около 100 часов. Заэто время накопление погрешности определения времени дало ошибку около 1/3секунды. Поскольку ракета Скад летит со скоростью 1700 м/с, ошибка в 1/10 секундыпри расчете ее траектории уже не дает возможности ее сбить.•Многочисленные ошибки в системе управления двигателями и навигационной системесчитаются наиболее вероятной причиной катастрофы вертолета Chinook ZD 576 [14],произошедшей 2 июня 1994 года на мысе Кинтайр.

В этой катастрофе погибли 25экспертов и высокопоставленных сотрудников отдела разведки Великобритании вСеверной Ирландии, что на значительное время парализовало работу этого отдела.•Ошибка в системе управления ракеты Ариан-5 привела к ее уничтожению при первомзапуске этой ракеты 4 июня 1996 года [15].Долгое время эта ошибка, приведшая к убыткам в размере 500 миллионов долларовСША, считалась самой дорогостоящей ошибкой в программной системе.Ошибка состояла в том, что без изменений использовался модуль расчета траектории изсистемы управления ракетой Ариан-4.

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

Характеристики

Тип файла
PDF-файл
Размер
2,8 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее