УЗНАЙ ЦЕНУ

(pdf, doc, docx, rtf, zip, rar, bmp, jpeg) не более 4-х файлов (макс. размер 15 Мб)


↑ вверх
Тема/ВариантВерификация и валидация программных продуктов
ПредметИнформационные технологии
Тип работыконтрольная работа
Объем работы17
Дата поступления12.12.2012
690 ₽

Содержание

Содержание: 1 ВВЕДЕНИЕ 3 2 КАЧЕСТВО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 5 3 ПРОЦЕССЫ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММ 6 4 ВЕРИФИКАЦИЯ 8 4.1 Методы верификации 9 4.2 Сертификация Red Hat Linux в России 11 5 ЗАКЛЮЧЕНИЕ 15 6 СПИСОК ЛИТЕРАТУРЫ 17

Введение

1 ВВЕДЕНИЕ Различные производители программного обеспечения могут сопровождать свою продукцию следующими словами - «Наша компания гарантирует работу данного программного продукта 30 дней со дня установки программы». С точки зрения пользователя такая «гарантия» бесполезна и означает только то, что по истечении 30 дней производитель отказывается нести какую-либо ответственность за ошибки в программном продукте. Проблема ошибок в программном обеспечении сегодня стоит как нельзя остро. Времена, когда программы, выходившие на рынок, были весьма небольшими и писались одним-двумя программистами, да и сами пользователи персональных компьютеров вполне могли самостоятельно писать небольшие программы – давно прошли. На сегодняшний день производство программного обеспечения поставлено на поток. В связи с постоянно растущим числом пользователей персональных компьютеров растет и рынок программного обеспечения. Различных фирм предоставляющих услуги по написанию программного кода – десятки тысяч. Разумеется, это приводит к конкуренции в среде написания программного кода. И даже если рассматривать всемирно известные программные продукты такие, как, например, Microsoft Office, которыми, как кажется на первый взгляд, пользуется весь мир – то и у таких продуктов существуют конкурирующие разработки, не уступающие по удобству и скорости работы. Также, нельзя не упомянуть тот факт, что с каждым годом мощность компьютеров возрастает, и - как следствие – возрастает техническая сложность программного обеспечения, его объем и функциональность. Все это в совокупности не может не влиять на растущее количество ошибок программном коде. В качестве небольшого примера, можно привести случай с одним из ранних процессоров компании Intel («прошивка» центрального процессора тоже является своеобразным программным обеспечением): «Первые процессоры 386DX имели ошибку, которая, иногда, приводила к неверным результатам при работе с 32-разрядными числами в таких программах, как OS/2 2.x, UNIX/386, или Windows в расширенном режиме. Ошибка приводила к тому, что система зависала. Вследствие некоторых проблем, в том числе из-за отсутствия 32-битных операционных систем устранить ошибку удалось лишь в апреле 1987 года» [5]. Дальнейшая история утверждает, что количество известных ошибок в последующих процессорах фирмы Intel стало исчисляться десятками и сотнями, в результате чего, компания отказалась от своей первоначальной идеи – отзывать продукцию, содержащую ошибки, поскольку это просто привело бы компанию к банкротству. В качестве подтверждения факта наличия ошибок в программах можно привести шутливые аксиомы одного из ранних советских программистов М.Р. Шура-Буры: а) В каждой программе есть ошибка. б) Если в программе нет ошибок, значит, в исходном алгоритме есть ошибка. Эти аксиомы нашли подтверждение и у других, зарубежных ученых. Смысл, который можно из них вынести, такой: любое программное обеспечение, в силу своей сложности, содержит ошибки – критические, способные нанести вред пользователю, и не критические; с первыми из них нужно бороться. К чему и призывает, например, лидер информационной службы General Motors Тони Скотт: «В интервью еженедельнику eWeek Скотт призывает поставщиков программных продуктов предоставлять гарантию, ограждающую потребителей от любых ошибок, которые могли бы нанести ущерб их организациям. В таком случае поставщик будет нести ответственность за поставку программы с известными ошибками, например, в системе безопасности, которые впоследствии приведут к отказу компьютеров потребителя или причинению вреда его продуктам» [6]. Улучшение этой ситуации будет выгодно не только пользователям программного обеспечения, но и производителям. Стоимость некоторых ошибок бывает слишком велика, чтобы ими пренебрегать. «По данным американского Национального института стандартов и технологии (NIST), ошибки в программном обеспечении только экономике США ежегодно обходятся в 60 млрд. долл.» [6]. В случае общемирового рынка это число еще больше. Разумеется, исправление ситуации с ошибками в программном обеспечении особенно выгодно и необходимо для программ, которые используются в правительственных, государственных и военных организациях, а также там, где необходимо сохранение информации конфиденциально. Решение проблемы с ошибками может привести к появлению более качественного и, что более важно, проверенного и подтвержденного компетентными органами на отсутствие критических уязвимостей программного обеспечения. 2 КАЧЕСТВО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Прежде чем говорить о программных продуктах, их тестировании и соответствии их каким-либо критериям качества нужно дать несколько определений – что такое программные продукты и что такое качество. Согласно [1], «программный продукт - набор машинных программ, процедур и, возможно, связанных с ними документации и данных». Понятно, что наиболее критичным в этом списке с точки зрения возникающих ошибок является «набор машинных программ». «Качество - совокупность свойств и характеристик продукции или услуги, которые придают им способность удовлетворять обусловленные или предполагаемые потребности» [4]. Требования к продукции могут быть выполнены благодаря разработке системы качества: «Система качества - совокупность организационной структуры, методик, процессов и ресурсов, необходимых для всеобщего управления качеством» [4]. Все это применимо и к программному обеспечению как к продукции. Действительно, программные продукты, как и любая другая продукция, должны удовлетворять требованиям, предъявляемым к ним как к продукции. Программные средства должны уметь выполнять те действия, описанные в их ТЗ (техническом задании), сопровождаться документацией и обеспечивать надежность, в зависимости от области применения – как данных пользователя,

Литература

6 СПИСОК ЛИТЕРАТУРЫ 1. ГОСТ Р ИСО/МЭК 12207-99. Информационная технология. Процессы жизненного цикла программных средств. 2. ГОСТ Р ИСО/МЭК 12119-2000. Информационная технология. Пакеты программ. Требования к качеству и тестирование. 3. ГОСТ Р ИСО/МЭК 9126-93. Информационная технология. Оценка программного продукта. Характеристики качества и руководство по их применению. 4. ИСО 8402-86. Управление качеством и обеспечение качества. 5. Intel 80386 [Электронный ресурс]: Материал из Википедии — свободной энциклопедии. – Режим доступа: http://ru.wikipedia.org/wiki/Intel_80386, свободный 6. Вудкок, Джим. Первые шаги к решению проблемы верификации программ. [Электронный ресурс] / Д. Вудкок - Открытые системы #08/2006 — Электрон. журн. – Режим доступа: http://www.osp.ru/os/2006/08/3584577, свободный 7. Верификация программ с помощью моделей / А. Аграновский, В. Зайцев, Б. Телеснин, Р. Хади [Электронный ресурс] / - Открытые системы #12/2003 — Электрон. журн. – Режим доступа: http://www.osp.ru/os/2003/12/183691, свободный 8. Рузайкин Г.И. Программы и их модели [Электронный ресурс] / Г.И. Рузайкин - Открытые системы #11/2003 — Электрон. журн. – Режим доступа: http://www.osp.ru/os/2003/11/183642, свободный 9. Карбасов Д. Теоретические основы тестирования [Электронный ресурс] / Д. Карбасов, К. Пасевич – Электрон. текстовые дан – Режим доступа: http://software-testing.ru/lib/kubansoft/software-testing.htm, свободный 10. GNU General Public License [Электронный ресурс]: Материал из Википедии — свободной энциклопедии. – Режим доступа: http://ru.wikipedia.org/wiki/GNU_General_Public_License, свободный
Уточнение информации

+7 913 789-74-90
info@zauchka.ru
группа вконтакте