Модели и алгоритмы тестирования программных средств на основе их стратифицированного описания
Диссертация
Достижение цели работы предполагает решение следующих задач: анализ существующих моделей надежности ПО на предмет возможности их применения в реальном производственном процессе ПОразработка стратифицированной (базовой) модели ПО на основе анализа существующих моделей надежности ПО и подходов к ее обеспечениюразработка диагностической модели ПО, описывающей процесс и инструментарий обеспечения… Читать ещё >
Содержание
- Глава 1. Сравнительный анализ моделей надежности ПО
- 1. 1. Анализ существующих моделей надежности ПО
- 1. 1. 1. История развития исследований надежности ПО
- 1. 1. 2. Понятие надежности ПО
- 1. 1. 3. Классификация моделей надежности ПО
- 1. 2. Анализ недостатков существующих моделей надежности ПО
- 1. 2. 1. Недостатки моделей подсчета количества ошибок в программах
- 1. 2. 2. Недостатки вероятностного подхода
- 1. 3. Анализ моделей ПО
- 1. 3. 1. UML модели
- 1. 3. 2. Графо-матричные модели ПО
- 1. 3. 3. Автоматные модели ПО
- 1. 4. Анализ систем тестирования ПО
- 1. 4. 1. UniTesK
- 1. 4. 2. IBM Rational
- 1. 1. Анализ существующих моделей надежности ПО
- 2. 1. Необходимые сведения из теории иерархических многоуровневых систем
- 2. 2. Анализ этапов жизненного цикла ПО
- 2. 2. 1. Этап определения требований ПО
- 2. 2. 2. Этап проектирования ПО
- 2. 2. 3. Этап конструирования (кодирования) ПО
- 2. 2. 4. Этап тестирования ПО
- 2. 3. Построение стратифицированной (базовой) модели ПО
- 2. 4. Метрики надежности ПО
- 2. 5. Пример стратифицированного описания программы
- 2. 5. 1. Спецификация требований
- 2. 5. 2. Спецификация разработчика
- 2. 5. 3. Программный код
- 3. 1. Необходимые сведения из теории множеств
- 3. 1. 1. Соответствия и бинарные отношения
- 3. 1. 2. Операции над соответствиями
- 3. 2. Анализ стратегии тестирования ПО
- 3. 3. Диагностическая модель ПО
- 3. 4. Пример использования диагностической модели ПО
- 3. 4. 1. Набор тестов, покрывающий требования спецификации
- 3. 4. 2. Расчет метрик
- 3. 4. 3. Особенности автоматизации тестирования
- 4. 1. Назначение автоматизированной системы тестирования ПО
- 4. 2. Структура автоматизированной системы тестирования ПО
- 4. 2. 1. Общая характеристика
- 4. 2. 2. Модуль автоматических тестов
- 4. 2. 3. Модуль планирования запусков
- 4. 2. 4. База данных результатов тестов
- 4. 2. 5. Модуль генерации отчетов
- 4. 2. 6. WEB интерфейс
- 4. 2. 7. Алгоритм работы автоматизированной системы тестирования ПО
- 4. 3. Практические результаты
- 4. 3. 1. Краткое описание производимого программного продукта
- 4. 3. 2. Результаты применения автоматизированной системы тестирования ПО
Список литературы
- Андерсон, Р. Доказательство правильности программ Текст./ Р. Андерсон- пер. с англ. — М.: Мир, 1982. — 168 с.
- Аржененко, А.Ю. Применение теории вопросников к тестированию программ Текст./ А.Ю. Аржененко- М.: Мир, 1980.
- Блау, С.А. Эффективность тестирования структуры программных модулей Текст./ С. А. Блау, В. В. Липаев, Б. А. Позин // Автоматика и телемеханика. 1984. — № 4. — С. 139−148.
- Блау, С.А. Анализ планов тестирования программных модулей с учетом нереализуемых маршрутов Текст./ С. А. Блау, Б. А. Позин // Программирование. 1988. — № 4. — С. 26−34.
- Бардзинь, Я.М. Построение полной системы примеров для проверки корректности программ Текст./ Я. М. Бардзинь, Я. Я. Бичевский, А. А. Калнынш // Ученые записки. Латв. Гос. ун-та. 1974. — т.210. -С.17−34.
- Боэм, Б. Характеристики качества программного обеспечения Текст./ Б. Боэм, Дж. Браун, X. Каспар и др.- пер. с англ. М.: Мир, 1981.-208 с.
- Бичевский, Я.Я. Развитие методов символического тестирования программ Текст./ Я. Я. Бичевский, Ю. В. Борзов // Автоматика и телемеханика. -1982. № 2. — С. 93−102.
- Борзов, Ю.В. Тестирование программ с использованием символического исполнения Текст./ Ю. В. Борзов // Программирование. 1980. — № 1. — С. 51−59.
- Борзов, Ю.В. Система символического тестировании ПЛ/1 -программ Текст./ Ю. В. Борзов, Г. Э. Дишлерс, И. Э. Медведис, Г. Б. Уртанс // Управляющие системы и машины. 1986. — № 6.- С. 75−79.
- Безбородов, Ю.М. Индивидуальная отладка программ Текст./ Ю.М. Безбородов- -М. :Наука, 1982. 192 с.
- Гласс, Р. Руководство по надежному программированию Текст./ Р. Гласс- пер. с англ, под ред. В. М. Рабиновича. М.: Финансы и статистика, 1982. — 256 с.
- Гаганов, П.Г. Динамика процесса отладки больших управляющих систем Текст./ П. Г. Гаганов, В. В. Липаев, В. Н. Просвирин // Управляющие системы и машины. 1975. — № 1, — С. 19−28.
- Гаганов, П.Г. Характеристики ошибок в процессе разработки комплексов программ Текст./ П. Г. Гаганов, В. В. Липаев // Программирование. 1975. — № 2. — С. 36−41.
- Гаганов, П.Г. Анализ ошибок в сложных программах систем управления объектами Текст./ П. Г. Гаганов, В. В. Липаев, В. Н. Просвирин, В. Н. Волков // Управляющие системы и машины.- 1973. № 3. — С.31−38.
- Дал, У. Структурное программирование Текст./ У. Дал, Э. Дейкстра, К. Хоор. Серия: Математическое обеспечение ЭВМ. Пер. с англ. М.: Мир, 1975. — 247 с.
- Дробушевич, Л.Ф. Оценка структурной сложности программ Текст./ Л. Ф. Дробушевич // Программирование. 1987. — № 1. — С. 81−90.
- Дробушевич, Л.Ф. Метод оценки топологической сложности программ Текст./ Л. Ф. Дробушевич // Управляющие системы и машины. 1988. — № 4. — С. 69−74.
- Зелковиц, М. А. Принципы разработки программного обеспечения Текст./ М. А. Зелковиц, Шоу, Дж. Гэннон.- Пер. с англ. М.: Мир, 1982.-368 с.
- Зиглер, К. Методы проектирования программных систем Текст./ К. Зиглер- Пер. с англ. М.: Мир, 1985. — 328 с.
- Иыуду, К.А. Тестирование программы на основе минимального покрытия ее графа Текст./ К. А. Иыуду, Н. М. Арипов // Управляющие системы и машины. 1985. — № 4. — С. 69−71.
- Иыуду, К.А. Автоматизация генерации путей для тестирования программ, записанных на Фортране Текст./ К. А. Иыуду, Н. М. Арипов // Программирование. 1986. — № 2. — С. 24−31.
- Кашков, В.Л. Средства поддержки структурного тестирования программ Текст./ В. Л. Кашков, В. А. Шимаров // Управляющие системы и машины. 1986. — № 2. — С. 54−59.
- Правильщиков, П.А. Построение тестов для программ Текст./ П. А. Правильщиков // Автоматика и телемеханика. 1977. — № 5. -С. 147−161.
- Пархоменко, П.П. Теория вопросников (обзор) Текст./ П. П. Пархоменко // Автоматика и телемеханика. 1970. — № 4. — С. 140−152.
- Позин, Б.А. Метод структурного построения тестов для отладки управляющих программ Текст./ Б. А. Позин // Программирование. -1980.- №−2.-С. 62−68.
- Просвирин, В.Н. Статистическая процедура определения продолжительности тестовых испытаний управляющих программ Текст./ В. Н. Просвирин // Управляющие системы и машины. -1977. № 5. С. 54−57.
- Риндфлайт, Д. Отладка программ в системах 360/370 на основе дампов памяти ОС Текст./ Д. Риндфлайт. М.: Машиностроение, 1982. — 144 с.
- Ерофеев, В.И. Средства отладки программ в ОС ЕС ЭВМ Текст./ В. И. Ерофеев и др. М.: Статистика, 1979. — 245с.
- Сагу нов, В. И. Диагностирование кратных ошибок в программных модулях Текст./ В. И. Сагунов // Программирование. 1988, — № 4. -С. 34−38.
- Торопов, Д.И. О построении тестирующих маршрутов программы Текст./ Д. И. Торопов // Управляющие системы и машины. 1987. — № 6. — С. 74−77.
- Уртанс, Г. Б. Функции путей программы Текст./ Г. Б. Уртанс // Программирование. 1987. — № 4. — С. 69−78.
- Шимаров, В.А. Об одном методе тестирования программы на основе минимального покрытия ее графа Текст./ В. А. Шимаров // Управляющие системы и машины. 1988. — № 5. — С. 51−53.
- Шимаров, В.А. Средства поддержки структурного тестирования программ Текст./ В. А. Шимаров // Управляющие системы и машины. 1988. — № 2. — С. 54−59.
- Коростиль, Ю.М. Комплекс программ для диагностирования программных модулей микропроцессорных систем Текст./ Коростиль Ю. М., Гуляев В. А. // Управляющие системы и машины. 1988. -№ 3.- С. 55−58.
- Гаркавенко, С.И. Определение всех путей в ориентированном ациклическом графе Текст./ С. И. Гаркавенко, JI.C. Бердникова (Ломакина) // Кибернетика. 1979. — № 4. — С. 49−52.
- Глушков, В.М. Технология программирования и проблемы ее автоматизации. Текст./ В. М. Глушков, И. В. Вельбицкий // Управляющие системы и машины. 1976. — № 6. — С. 81−86.
- До л бак, Л. В. Методика отладки и испытаний управляющих алгоритмов и программ АСУ Текст./ Л. В. Долбак // Программирование. 1984. — № 3. — С. 62−69.
- Ермаков, Г. В. Тестирование MIXAL-программ с помощью символического исполнения Текст./ Г. В. Ермаков // Программирование. 1988. — № 5. — С. 12−18.
- Катков, В. JI. Система автоматизации тестирования MIXAL-программ Текст./ В. Л. Катков, Г. В. Ермаков // Программирование.- 1985. -№ 3.- С. 50−58.
- Косяченко, С.А. Использование сетей Петри для локализации ошибок в процессе системной отладки комплексов программ Текст./ С. А. Косяченко, В. В. Дульба, Л. Г. Мамиконов, Е. Б. Соколова //Автоматика и телемеханика. 1988. — № 5. -С. 165−177.
- Колякин, Ю.Д. Отладка программного обеспечения в диалоговой многотерминальной системе Текст./ Ю. Д. Колякин // Управляющие системы и машины. 1983. — № 2. — С. 56−60.
- Липаев, В.В. Прогнозирование рациональной длительности отладки больших управляющих систем Текст./ В. В. Липаев, П. Г. Гаганов, В. Н. Просвирин // Управляющие системы и машины.- 1975.-№−4.-С. 8−14.
- Липаев, В.В. Тестирование программ Текст./ В. В. Липаев. М.: Радио и связь, 1986. — 296 с.
- Липаев, В.В. Качество программного обеспечения Текст./ В. В. Липаев. М.: Финансы и статистика, 1983. — 263 с.
- Липаев В.В. Отладка систем управляющих алгоритмов ЦВМ реального времени Текст./ В. В. Липаев. М.: Сов. радио, 1974. — 326 с.
- Пархоменко, П.П. Основы технической диагностики Текст./ П. П. Пархоменко, Е. С. Согомонян. М.: Энергоатомиздат, 1981.- 320 с.
- Пархоменко, П.П. Диагностирование программного обеспечения Текст./ П. П. Пархоменко, П. А. Правильщиков // Автоматика и телемеханика. 1980. -№ 4. — С. 117−141.
- Alfotd, M.W. A requirements engineering methodology for real-time processing requirements Текст./ M.W. Alfotd // IEEE Trans. Software Engng, v.3. 1977.-№ 1, pp. 60−69.
- Panzl, D.J. Automatic software test drivers Текст./ D.J. Panzl // Computer. 1978. — № 4. — p. 44−50.
- Goodenough, J.B. Toward a theory of test data selection Текст./ J.B. Goodenough // IEEE Trans. Software Engng, v. SE-1. 1975. — № 2.- pp. 156−173.
- Akiyama, F. An Example of Software System Debugging Текст./ F. Akiyama // IFIP Conference Proceeding. 1971. — pp. 31−42.
- Boehm, B.W. McClean R.K., Urfrig D.B. Some experience with automated aids to the design of larg-scale reliable software Текст./ B.W. Boehm, R.K. McClean, D.B. Urfrig // IEEE Trans. Software Engng, v. 1. — 1975.-№ 2.-pp. 125−153.
- Schneidewind, N.F. Analysis of error processes in computer software Текст./ N.F. Schneidewind // Proc. Int. Conf. Reliable Software, Los Angeles, Calif. 1975. — pp. 337−376.
- Shoomon, M. L Types, distribution end test end correction times for programming errors Текст./ M.L. Shoomon, M.I. Bolsky // Proc. Int. Conf. Reliable Software, Los Angeles, Calif. 1975. — pp. 347−357.
- Endres, A. An analysis of errors and their causes in system programs Текст./ A. Endres // Proc. Int. Conf. Reliable Software, Los Angeles, Calif. 1975. — pp. 327−336.
- Youngs, E.A. Human errors in programming Текст./ E.A. Youngs // Int. J. Man-Mach. Stud., v.6. № 3. — 1974. — pp. 361−376.
- Thayer, R.H. Software reliability a method that works. Текст. / R.H. Thayer, E.S. Hinton // AFIPS Conf. Proc., v.44, Montvale, N.Y., — 1975.-pp. 877−883.
- Rubey, R.J. A equatitative aspect of software validation. Текст. / R.J. Rubey, J.A. Dana, P.W. Biche // IEEE Trans. Software Engng, v. SE-1, 1975. — № 2, — pp. 150−155.
- Nelson, E.C. Software reliability FPC-5. Текст./ E.C. Nelson // Int. Symp. Fault-Toler. Comput., Paris, 1975. — pp. 24−28.
- Ramamoorthy, C.V. On the automated generation of program test data./ C.V. Ramamoorthy, S.B.F. Ho, W.T. Chen // IEEE Trans. Software Eng. v. SE-2, 4. 1976. — pp. 293−300.
- Howden W.E. Reliability of the path analysis testing strategy. Текст. // IEEE Trans. Software Eng, v. SE-2, 1976. — № 3, — pp. 208−215.
- Howden W.E. Symbolic Testing and the DISSECT Symbolic Evolution System. Текст. // IEEE Trans. Software Engng, v. SE-2, — 1977. № 3, — pp. 266−279.
- De Millo R.A. Hints on test data selection: help for the practicing programmer. Текст. // Computer. 1978. — № 4, — pp. 34−41.
- Miller W., Spooner, D.L. Automatic Generation of floating-point test data Текст. // IEEE Trans. Software Engng, v. SE-2, 1976. — № 3, -pp. 208−215.
- Watson, A.H., McCabe T.J. Structured Testing: A Testing Methodology Using the Cyclomatic Complexity Metric Текст. / NIST Special Publication 500−235. // Ed. by Wallace D.R. Gaithersburg, National Institute of Standards and Technology, 1996. — 123 p.
- Пальчун, Б.П. Оценка надежности программного обеспечения Текст. / Б. П. Пальчун, P.M. Юсупов- СПб.: Наука, 1994.
- Тейер, Т. Надежность программного обеспечения Текст. / Т. Тейер, М. Лигов, Э. Нельсон- М.: Мир, 1981.-325 с.
- Фокс, Дж. Программное обеспечение и его разработка Текст. / Дж. Фокс- пер. с англ. М.: Мир, 1985. — 368 с.
- Соммервилл И. Инженерия программного обеспечения Текст. / И. Соммервилл- пер. с англ. М.: Вильяме, 2002. — 634 с.
- Турский В. Методология программирования Текст. / В. Турский- Пер. с англ. Н. А. Черемных и И. В. Шитовой- Под ред. А. П. Ершова. М.: Мир, 1981.-266 с.
- Липаев, В.В. Обеспечение качества программных средств. Методы и стандарты Текст. / В. В. Липаев. М.: СИНТЕГ, 2001. -380 с.
- Липаев, В.В. Обеспечение качества крупномасштабных программных средств. Методы и стандарты Текст. /В.В. Липаев. М.: СИНТЕГ, 2003. — 520 с.
- Липаев, В.В. Надежность программных средств Текст. / В. В. Липаев. М.: СИНТЕГ, 1998. — 232 с.
- Майерс, Г. Надежность программного обеспечения Текст. / Г. Майерс. М.: Мир, 1980. — 360 с.
- Майерс, Г. Искусство тестирования программ Текст. / Г. Майерс. -М.: Финансы и статистика, 1982. 178 с.
- Haag, S. Quality Function Deployment. Usage in Software Development Текст. / S. Haag, H.K. Raja, L.L. Sekade // Comm. of ACM.- 1998.-NI.-p. -39.
- Musa J.D. More Reliable Software Faster and Cheaper Электронный ресурс. // stickyminds.com: сайт.-URL: http://www.stickyminds.com/sitewide.asp?Function=edetail&ObjectTyp e=ART&ObjectId=3384 (дата обращения 01.03.2009)
- Goel, A.L. Software reliability models& Assumptions, Limitations and Applicability Текст. / A.L. Goel // IEEE Trans. № 2. -pp. 1411−1423.
- Jelinski, Z. Software reliability research Текст. / Z. Jelinski, P. Moranda // Statistical computer performance evaluation W. Freiberger, Ed. Academic Press. 1972. — № 20. — pp. 465−484.
- Shick, G.J. An analysis of computing software reliability models Текст. / G.J. Shick, R.W. Wolverton // IEEE Tras. Software Eng.- V. SE-4. № 2. — 1978. — pp. 104−120.
- Романюк, С. Г. Оценка надежности программного обеспечения Электронный ресурс./ С. Г. Романюк // Открытые системы сайт. -URL: http://www.osp.ru/os/1994/04/178 540/ (дата обращения 14.03.2008).
- UML Электронный ресурс. // Википедия сайт. URL: http://ru.wikipedia.org/wiki/UML (дата обращения 25.10.2009).
- Сагунов, В.И. Контролепригодность структурно-связанных систем Текст. / В. И. Сагунов, JI.C. Ломакина, М.: Энергоатомиздат, 1990.- 112 с.
- Поликарпова, Н. Автоматное программирование Текст. / Н. Поликарпова, А. Шалыто, С-Пб.: Питер. — 2009. — 176 с.
- UnitTESK Электронный ресурс. // UnitTESK сайт. URL: http://www.unitesk.ru/ (дата обращения 03.09.2009).
- IBM Rational Unified Process Электронный ресурс. // CM Consult сайт.-URL:http://cmcons.com/tech rational/ibm rational unified process rup/ (дата обращения 23.11.2009).
- Месарович, M. Теория иерархических систем Текст. / М. Месарович, Д. Мако, И. Такахара- пер. с англ. М.: Мир, 1973.- 340 с.
- Вигерс, К.И. Разработка требований к программному обеспечению Текст. / К. И. Вигерс, М.: Русская редакция, 2004.- 576 с.
- Francisco, А. С. An Object Oriented tool for Tracing Requirements Текст. / A. C. Francisco Pinheiro, Joseph A. Goguen // «Software», — 1996,-№ 3.-pp. 21−27.
- Белоусов, А.И. Дискретная математика Текст. / А. И. Белоусов, С.Б. Ткачев- Математика в техническом университете- Выпуск XIX-- М.: Издательство МГТУ им. Н. Э. Баумана, 2004. 744 с.
- Могилевский, В.Д. Основы теории систем. Учебное пособие. Часть 1. Текст. / В. Д. Могилевский М.: МИРЭА. — 1997.-76 с.
- Прангишвили, И.В., Системный подход и общесистемные закономерности Текст./ И. В. Прангишвили. М.: СИНТЕГ. — 2000. -528 с.
- Шнейдерман, Б. Психология программирования Текст. / Б. Шнейдерман- М.: Радио и связь, 1984. — 304 с.
- ГОСТ 28 195–89. Оценка качества программных средств. Общие положения. Текст. Введ. 01.07.1990. — М.: Изд-во стандартов, 2001.-IV, 31 с.
- ГОСТ Р ИСО/МЭК 9126−93. Информационная технология. Оценка программной продукции. Характеристики качества и руководства по их применению. Текст. Введ. 01.07.1994. — М.: Изд-во стандартов, 2001. — IV, 12 с.
- ГОСТ Р ИСО/МЭК 12 207−99. Информационная технология. Процессы жизненного цикла программных средств. Текст. Введ. 01.07.2000. — М.: Изд-во стандартов, 2001. — IV, 12 с.
- Хомяков, П.М., Системный анализ: Краткий курс лекций Текст. / Под ред. В. П. Прохорова. Изд. 2-е, стереотипное. М.: КомКнига. -2007.-216 с.
- Волкова, В.Н. Основы теории систем и системного анализа Текст. / В. Н. Волкова, А. А. Денисов. С-Пб.: СПБГТУ. — 1997.- 510 с.
- Жарко, Е.Ф. Проблемы управления качеством программного обеспечения Текст. / Е. Ф. Жарко // Труды 2-й Межд. Конф. «Идентификация систем и задачи управления (SICPRO'03)». — С. 887 924.
- Жоголев Е.А. Введение в технологию программирования (конспект лекций) Текст. / Е. А. Жоголев. М.: «ДИАЛОГ-МГУ», 1994.- 150 с.
- Волков, В.Г. Автоматизированная система тестирования программных средств Текст. / В. Г. Волков, Л. С. Ломакина // Труды
- НГТУ. Системы обработки информации и управления. -Н. Новгород: НГТУ.-2005.-Т. 54.-Вып. 12. С. 111−115.
- Волков, В.Г. Структурно-статистические методы обеспечения контролепригодности программных систем Текст. / В. Г. Волков, JI.C. Ломакина и др. // Отчет по НИР НГТУ. Н. Новгород, per. номер 01.2005.1 015 от 05.02.2005. — 83 с.
- Волков, В.Г. Тестирование программных средств Текст. / В. Г. Волков, Л. С. Ломакина и др. // Отчет по НИР НГТУ. -Н. Новгород, per. номер 01.2007.1 986 от 14.02.2007. 81 с.
- Волков, В.Г. Инженерия программного обеспечения Текст. / В. Г. Волков, JI.C. Ломакина // Мат. VII Междунар. молодеж. науч-техн. конф. «Будущее технической науки». Н. Новгород, 16 мая 2008 г. Н. Новгород: НГТУ, 2008. — С. 352−353.