реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Испытания надёжности программы, Как он происхожит и есть ли спец. ПО для ...
Дон Амброзио
сообщение Mar 13 2008, 21:06
Сообщение #1


Местный
***

Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947



Интересует как происходят испытания программ на надёжность (именно программ, а не "железа", которым эта программа управляет) и есть ли какой-то спец софт для испытания программ.

Я, например, слышал, что СИ исходники можно "испытать" какой-то программой не помню как называется, вроде LIM...Не помню точно.. Т.е. даёшь этому LIM-у свой исходник и он начинает его тестить...

Существуют ли какие-то ГОСТ-ы или другие регламентирующие документы о том, как должны происходить испытания программног обеспечения на надёжность и по каким критериям ставят заключение надёжна программа или нет

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

Сообщение отредактировал Дон Амброзио - Mar 13 2008, 21:09


--------------------
После устранения бага в программе она стала работать....хуже
Go to the top of the page
 
+Quote Post
Дон Амброзио
сообщение Mar 15 2008, 23:42
Сообщение #2


Местный
***

Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947



Вот, например, какую структуру характеристик качества предлагает стандарт ИСО-9126 [7] (да и то, в качестве нормативного приложения, как пример, оговариваясь, что фирмы могут применять совершенно другие наборы характеристик, лишь бы они удовлетворяли общим требованиям стандарта):

Функциональность
Соответствие назначению
Точность
Способность взаимодействовать со средой
Соответствие нормам
Безопасность (защита от взлома данных и других преступных посягательств)
Надежность
Зрелость ("обкатанность")
Отказоустойчивость
Способность восстанавливаться после сбоев
Пригодность к использованию
Понимаемость
Изучаемость
Удобство и простота в работе
Эффективность
Быстродействие и время отклика
Потребление ресурсов
Сопровождаемость
Анализируемость (диагностика причин ошибок и сопоставление с исходным кодом)
Пригодность к изменениям
Стабильность
Тестируемость
Переносимость
Адаптируемость
Легкость инсталляции
Соответствие нормам по переносимости и инсталляции
Заменяемость (способность заменить аналоги?)


--------------------
После устранения бага в программе она стала работать....хуже
Go to the top of the page
 
+Quote Post
arttab
сообщение Mar 16 2008, 16:20
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371



я пишу для avr и тестирую прогу проходя по всем ветвям алгоритма с различными ситуациями.


--------------------
OrCAD, Altium,IAR, AVR....
Go to the top of the page
 
+Quote Post
sha161
сообщение Mar 17 2008, 07:26
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 51
Регистрация: 22-11-05
Пользователь №: 11 205



Есть еще такой ГОСТ Р ИСО/МЭК 12119-2000 Информационная технология. Пакеты программ. Требования к качеству и тестирование
Go to the top of the page
 
+Quote Post
Дон Амброзио
сообщение Mar 17 2008, 07:55
Сообщение #5


Местный
***

Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947



Список российских и основных международных стандартов по тестированию, оценке качества программных продуктов и смежным вопросам


А скачать кое что из приведённого списка можно тут

Сообщение отредактировал Дон Амброзио - Mar 17 2008, 07:58


--------------------
После устранения бага в программе она стала работать....хуже
Go to the top of the page
 
+Quote Post
Ильдус
сообщение Mar 22 2008, 20:21
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 230
Регистрация: 5-07-05
Пользователь №: 6 552



Цитата(Дон Амброзио @ Mar 14 2008, 00:06) *
Интересует как происходят испытания программ на надёжность (именно программ, а не "железа", которым эта программа управляет) и есть ли какой-то спец софт для испытания программ.

Показателя (численного) надёжности ПО не существует. Ошибка в ПО просто может быть. Для систем, отказ которых приводит к катастрофической ситуации , требуется резервирование (в гражданской авиации). При этом ПО резервов должны быть написаны независимыми группами программистов. Это требования квалификационных требований КТ178В (аутентичный перевод забугорного DO178B).
Go to the top of the page
 
+Quote Post
asonika
сообщение Mar 25 2008, 10:38
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 14-11-05
Из: Москва
Пользователь №: 10 827



Цитата
Показателя (численного) надёжности ПО не существует.

Ну, это не совсем так (вернее, совсем не ТАК!) Посмотрите ГОСТы Р серии 51901: «Менеджмент риска» (практически полный аналог стандартов МЭК начала 90-х годов прошлого века), а именно ГОСТ Р 51901.5-2005 (МЭК 60300-3-1:2003): «Менеджмент риска. Руководство по применению методов анализа надежности».

Сообщение отредактировал asonika - Mar 25 2008, 10:39


--------------------
Жаднов В.В.
Go to the top of the page
 
+Quote Post
Ильдус
сообщение Mar 25 2008, 19:03
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 230
Регистрация: 5-07-05
Пользователь №: 6 552



Цитата(asonika @ Mar 25 2008, 13:38) *
Ну, это не совсем так (вернее, совсем не ТАК!) Посмотрите ГОСТы Р серии 51901: «Менеджмент риска» ...

Можно определить к чему приведёт ошибка в ПО: катастрофической ситуации, аварийной ...
Но показателя (ЧИСЛЕННОГО) надёжности ПО не существует, т.е. невозможно ПРЕДсказать, например, что на миллион часов работы системы ошибка ПО проявится столько то раз. Или на сто страниц кода будет столько то ошибок.
Кстати, это справедливо вообще к ошибкам в проектировании.
Если я не прав, то подскажите Справочник, аналогичный Справочнику "Надёжность ЭРИ", для ПО.
Go to the top of the page
 
+Quote Post
Дон Амброзио
сообщение Mar 28 2008, 04:10
Сообщение #9


Местный
***

Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947



А никто не проходил сертификацию софта в ФСБ на отстутствие закладок? Опишите как она происходит


--------------------
После устранения бага в программе она стала работать....хуже
Go to the top of the page
 
+Quote Post
asonika
сообщение Mar 28 2008, 09:56
Сообщение #10


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 14-11-05
Из: Москва
Пользователь №: 10 827



Цитата(Дон Амброзио @ Mar 28 2008, 07:10) *
А никто не проходил сертификацию софта в ФСБ на отстутствие закладок? Опишите как она происходит

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


--------------------
Жаднов В.В.
Go to the top of the page
 
+Quote Post
i-mir
сообщение Apr 12 2011, 17:51
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 17-06-10
Из: Киев
Пользователь №: 57 986



Цитата(Дон Амброзио @ Mar 14 2008, 01:06) *
Я, например, слышал, что СИ исходники можно "испытать" какой-то программой не помню как называется, вроде LIM...Не помню точно.. Т.е. даёшь этому LIM-у свой исходник и он начинает его тестить...

Хотя ТС говорил об этом давно, но идея стоит того. Не совсем так правда, но вариант сравнительного анализа ПО существует. Можно и на количественные цифры выйти при оценке надежности ПО, но для этого прийдется писать "парсер-анализатор" исходника, и время вычислений зависит от размера исходника в степени. Интересно кто-либо сталкивался еще с таким?

Сообщение отредактировал i-mir - Apr 12 2011, 17:52
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 13 2011, 05:44
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Ильдус @ Mar 25 2008, 23:03) *
Но показателя (ЧИСЛЕННОГО) надёжности ПО не существует, т.е. невозможно ПРЕДсказать, например, что на миллион часов работы системы ошибка ПО проявится столько то раз. Или на сто страниц кода будет столько то ошибок.


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


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Ильдус
сообщение May 5 2011, 13:34
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 230
Регистрация: 5-07-05
Пользователь №: 6 552



Цитата(Oldring @ Apr 13 2011, 08:44) *
Можно, имея достаточную статистику исправленных ошибок и обнаруженных, но не исправленных.
Но тяжело: проект должен быть большим, чтобы выборка ошибок была представительная.

Не возможно. Ошибка в ПО может быть, и это не зависимо от количества обнаруженных ошибок, точно также, как может быть ошибка врача, шахматиста, сапёра... - и на старуху бывает проруха.

За бугром существует стандарт на создание ПО для гражданских самолётов DO-178B. У нас есть гармонизированный КТ-178В - Квалификационные требования. Эти документы определяют, как создавать и контролировать создание ПО с тем, что бы иметь удовлетворительную степень доверия к ПО. При этом оценку (не численную) делают эксперты EASA (Европейское Агенство по Авиационной Безопасности), у нас - АР МАК (Авиационный Регистр Межгосударственного Авиационного Комитета)

Для гражданских самолётов критические системы (способные привести к катастрофе) должны быть резервированы на разной элементной базе. Резервы разработаны независимыми разработчиками - схемная ошибка ни чем не отличается от ошибки в ПО. ПО должно быть разработано также независимыми разработчиками.

В авиации эти требования давно не обсуждаются, а выполняются.

Сообщение отредактировал Ильдус - May 5 2011, 13:39
Go to the top of the page
 
+Quote Post
i-mir
сообщение May 7 2011, 11:12
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 17-06-10
Из: Киев
Пользователь №: 57 986



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

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





Сообщение отредактировал i-mir - May 7 2011, 12:45
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 02:27
Рейтинг@Mail.ru


Страница сгенерированна за 0.01475 секунд с 7
ELECTRONIX ©2004-2016