Разработка методики количественной оценки "анализируемости" программных продуктов тема диссертации и автореферата по ВАК РФ 05.13.17, кандидат технических наук Стружков, Сергей Александрович
- Специальность ВАК РФ05.13.17
- Количество страниц 167
Оглавление диссертации кандидат технических наук Стружков, Сергей Александрович
Введение.
Глава 1. Анализ проблемы оценки качества программного обеспечения.
Основные понятия и определения предметной области.
Состояние проблемы.
Определение понятия качества.
Международные стандарты оценки качества ПС.
Характеристики качества ПС.
Метрики характеристик качества ПС.
Цена качества.
Постановка задачи диссертационного исследования.
Выводы по главе 1.
Глава 2. Разработка методики количественной оценки а - анализируемости программных продуктов.
Метрический анализ программного кода.
Запутывания программного кода (обфускация).
Анализ метрик программного кода, запутывающих преобразований, анализируемости и их взаимного влияния.
Методика количественной оценки а — анализируемости программных продуктов.
Формализация и определение понятия а - анализируемость.
Требования к методике.
Разработка методики.
Разработка распознавателя.
Выводы по главе 2.
Глава 3. Разработка программного комплекса для количественной оценки а — анализируемости программных продуктов на основе разработанной методики, методов и алгоритмов.
Алгоритм функционирования программного комплекса.
Разработка программного комплекса.
Функциональные возможности разработанной системы.
Выводы по главе 3.
Глава 4. Применение разработанных методик, методов, алгоритмов и программного комплекса для решения практических задач.
Проведение эксперимента.
Цели и задачи эксперимента.
Условия проведения эксперимента.
Ход и результаты эксперимента.
Анализ результатов эксперимента.
Возможные применения результатов диссертации.
Выводы по главе 4.
Рекомендованный список диссертаций по специальности «Теоретические основы информатики», 05.13.17 шифр ВАК
Методики и алгоритмы для оценки надежности программного обеспечения систем тренажеров2011 год, кандидат технических наук Суслин, Антон Александрович
Алгоритмы и методы комплексной количественной оценки качества систем2003 год, кандидат технических наук Лисецкий, Юрий Михайлович
Методы оценки трудоемкости разработки программного обеспечения корпоративных информационных систем2006 год, кандидат технических наук Меламед, Александр Яковлевич
Модели и методики оценки качества прикладных программных систем2006 год, кандидат технических наук До Хонг Куанг
Разработка метода и алгоритмов тестирования знаний на основе интеллектуальной обработки ответов испытуемого на естественном языке2006 год, кандидат технических наук Белов, Евгений Александрович
Введение диссертации (часть автореферата) на тему «Разработка методики количественной оценки "анализируемости" программных продуктов»
Актуальность работы.
В настоящее время наблюдается лавинообразный рост количества используемых программных продуктов. Программные продукты присутствуют во всё больших областях человеческой деятельности, многие аспекты которой уже не мыслимы без современных технических устройств, с программным управлением.
С ростом числа современных технических средств, с ростом возможностей программного обеспечения растет зона его ответственности и уровень доверия к нему. Уже в настоящее время человек доверяет программным продуктам решать довольно важные задачи, часто связанные со здоровьем, безопасностью, жизнью людей. При решении задач такого рода качество этих программных продуктов должно находиться на должном уровне, а для достижения необходимого уровня качества программного продукта необходим очень жесткий управленческий контроль, причем контроль на всех этапах его жизненного цикла. Для успешного контроля качества необходимы формализованные, количественные оценки показателей качества ПО. В связи с этим все более актуальной является: во-первых, проблема количественной оценки качества программных продуктов, и, во-вторых, получения формализованного и количественного описания показателей качества программного обеспечения.
Цель и задачи.
Целью диссертационного исследования является разработка методики количественной оценки одного из показателей качества программных продуктов - «анализируемости».
Для достижения поставленной цели необходимо решить следующие задачи:
• На основе анализа состояния вопроса в области оценивания и контроля «анализируемости» программных продуктов выявить основные недостатки существующих подходов.
• Дать точное, формализованное определение характеристике качества программного продукта - «анализируемо сть».
• Разработать методику анализа программного кода на предмет анализируемости, позволяющую получать объективную, количественную оценку показателя качества «анализируемость» в соответствии с поставленными требованиями, ограничениями, назначением и специфическими особенностями продукта.
• Разработать распознаватель программного кода по показателю качества «анализируемость», обладающий способностью к распознаванию «нового» программного кода, т.е. обладающий способностью к обобщению.
• Сформировать набор метрик программного кода, по возможности, полно оценивающих показатель качества «анализируемость».
• Сформировать набор тестовых «запутывающих преобразований» непосредственно влияющих на «анализируемость» программного кода и провести исследование влияния их на метрики программного кода.
• Получить аналитическое представление «анализируемости» программного кода.
• Разработать комплекс алгоритмов, реализующих автоматизированное решение задачи оценки показателя качества «анализируемость».
• Разработать программный комплекс реализующий алгоритмы количественной оценки а - анализируемости посредством диалога с пользователем.
• Обосновать эффективность предложенной методики количественной оценки «анализируемости» программных продуктов.
Объектом исследования является программный продукт, а именно его исходный программный код.
Предметом исследования является количественная оценка показателя качества «анализируемость».
Похожие диссертационные работы по специальности «Теоретические основы информатики», 05.13.17 шифр ВАК
Идентификация свойств стохастических информационных потоков: на примере выявления стегосообщений в графических файлах2011 год, кандидат технических наук Колесова, Наталья Александровна
Создание прототипа интегрированного пакета оценки трудоемкости программного обеспечения1995 год, кандидат технических наук Токарев, Михаил Валентинович
Методы разработки и контроля качества программных средств обработки и анализа изображений2006 год, кандидат технических наук Балыков, Евгений Александрович
Разработка и исследование измерительных процессоров алгоритмических языков программирования2000 год, кандидат технических наук Остроухова, Светлана Николаевна
Методы и средства интегральной оценки тестированности программного проекта, позволяющие управлять процессом разработки тестов1998 год, кандидат технических наук Пинаев, Дмитрий Владимирович
Заключение диссертации по теме «Теоретические основы информатики», Стружков, Сергей Александрович
Выводы по главе 4
• Поставлены цели и сформулированы задачи проведения эксперимента.
• В соответствие с методикой количественной оценки а -анализируемости произведен отбор данных для тестирования распознавателя, произведены все необходимые действия для подготовки данных.
• Произведена количественная оценка а — анализируемости на тестовых 1111.
• Произведен анализ полученных результатов и сделан вывод об эффективности предложенной методики оценки а — анализируемости.
• Выявлен набор метрик позволяющих адекватно оценить показатель качества «анализируемость» на языке программирования Java 1.4. На тестовых ПП из 44 измеряемых метрик 98% «анализируемости» составляют лишь 15 метрик программного кода, остальные 29 метрики составляют 2 % «анализируемости».
• Получено аналитическое представление «анализируемости» программного кода:
• Предложены возможные варианты использования результатов диссертационного исследования.
Заключение
Показано, что выполненное исследование позволило получить ряд новых научно-технических результатов, имеющих существенное значение для количественного оценивания качества программных продуктов, здесь же сформулированы основные результаты и выводы диссертации:
• На основании проведенного анализа состояния вопроса, в области оценивания и контроля «анализируемости» программных продуктов, выявлены основные недостатки существующих подходов, при анализе которых стала очевидна необходимость в формализованном определении «анализируемости», что и было сделано при помощи введения понятия а - анализируемости и его формализованном определении.
• Разработана методика оценки программного кода на предмет «анализируемости», позволяющая получать объективную количественную оценку показателя качества «анализируемость» в соответствии с поставленными требованиями, ограничениями, назначением и специфическими особенностями продукта.
• Разработан распознаватель программного кода по показателю качества «анализируемость», обладающий способностью к распознаванию «нового» программного кода, т.е. обладающий способностью к обобщению.
• Предоставлен инструмент, позволяющий на языке программирования Java версии 1.4 выявлять метрики в наибольшей степени влияющие на «анализируемость» 1111. Установлено, что для тестовых ПП из 44-х измеряемых метрик 98% «анализируемости» составляют лишь 15 метрик программного кода, остальные 29 метрики составляют лишь 2% «анализируемости».
• Сформирован набор «запутывающих преобразований» для языка программирования Java версии 1.4, оказывающих влияние на «анализируемость» программного кода. Произведено исследование влияния «запутывающих преобразований» на метрики программного кода, что позволяет сформировать инструментарий для исследования свойств программных кодов и его использования при построении распознавателя а — анализируемости.
• Аналитическое представление «анализируемости» программного кода дает возможность при проектировании программных продуктов задавать количественные характеристики свойств продукта.
• Разработан комплекс алгоритмов, реализующий автоматизированное решение задачи количественной оценки показателя качества «анализируемость», на их основе разработан программный комплекс, реализующий количественную оценку а - анализируемости посредством диалога с пользователем.
• Проведенное имитационное моделирование показывает удовлетворительную сходимость результатов экспертной оценки «анализируемости» и а - анализируемости, измеренной по разработанной методике.
Список литературы диссертационного исследования кандидат технических наук Стружков, Сергей Александрович, 2009 год
1. Большой Российский энциклопедический словарь. М.: Изд-во Большая Российская энциклопедия, 2007 г.
2. ГОСТ 28806-90. Качество программных средств. М.: Изд-во стандартов, 1991 г.
3. ГОСТ Р ИСО/МЭК 9126 93. Информационная технология. Оценка программной продукции. Характеристики качества и руководство по их применению. М.: Изд-во стандартов, 1994 г.
4. Крайер Э. Успешная сертификация на соответствие нормам ИСО серии 9000: Пер. с нем. М.: Изд-во ИЗДАТ, 1999 г.
5. Липаев В.В. Оценка качества программных средств. Сетевой журнал — 2002 г., №3 Электронный ресурс. Режим доступа: http://www.setevoi.rU/cgi-bin/text.pl/magazines/2002/3/52, свободный.
6. Липаев В.В. Стандартизация характеристик и оценивания качества программных средств Приложение к журналу «Информационные технологии», 2001 г., № 4.
7. Липаев В.В. Методы обеспечения качества крупномасштабных программных средств. М.: Изд-во Синтег, 2003 г.
8. Липаев В.В. Выбор и оценивание характеристик качества программных средств. М.: Изд-во Синтег, 2001г.
9. Douglas L. Java Control Flow Obfuscation. A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science in Computer Science. University of Auckland. June 3, 1998 r.
10. Романов В. Ю. Статический анализ программ. Метрики для измерения качества программного обеспечения. Электронный ресурс. Режим доступа:http://old.master.cmc.msu.ru/romanov/russian/pub/MartinMetrics.html, свободный.
11. Christian С., Ginger М., Michael S. An Empirical Study of Java Bytecode Programs Электронный ресурс. Режим доступа: ftp://ftp.cs.arizona.edu/reports/2004/TR04-ll.pdf, свободный.
12. Christian С., Clark Т., Gregg М. Dynamic Graph-Based Software Watermarking Электронный ресурс. Режим доступа: ftp://ftp.cs.arizona.edu/reports/2004/TR04-08.pdf, свободный.
13. Christian С., Kelly Н. The Obfuscation Executive Электронный ресурс. -Режим доступа: ftp://ftp.cs.arizona.edu/reports/2004/TR04-03.pdf, свободный.
14. Christian С., Clark Т., Douglas L. Manufacturing Cheap, Resilient, and Stealthy Opaque Constructs. Электронный ресурс. Режим доступа:http://www.cs.arizona.edu/~collberg/Research/Publications/CollbergThombors onLow98a/A4.pdf, свободный.
15. Lai H. A comparative survey of Java obfuscators available on the Internet. Электронный ресурс. Режим доступа:http://www.cs.auckland.ac.nz/~cthombor/Students/hIai/hongying.pdf, свободный.
16. Чернов А. В., Анализ запутывающих преобразований программ. Труды Института Системного программирования РАН Электронный ресурс. -Режим доступа: http://www.citforum.ru/security/articles/analysis, свободный.
17. Лифшиц Ю. Запутывание (обфускация) программ. Обзор. 19 декабря 2004 г. Электронный ресурс. Режим доступа: http://logic.pdmi.ras.ru/~yura/papers/lifshits2005obfuscation, свободный.
18. Уоссермен Ф. Нейрокомпьютерная техника: Теория и практика. Перевод на русский язык, Ю. А. Зуев, В. А. Точенов, М.: Изд-во Мир, 1992 г.
19. Яхъяева. Г. Э. Нечеткие множества и нейронные сети. М.: Изд-ва БИНОМ. Лаборатория знаний, Интернет-университет информационных технологий. 2008 г.
20. Kevin S. Applying Neural Networks: A practical Guide. Publisher: Morgan Kaufmann; 1996 r.
21. Терехов А. А., Туньон В. Современные модели качества программного обеспечения. BYTE/Россия, 1999 г., №12.
22. Аншина М. Страсти по качеству. Открытые системы 1998 г., № 6. Электронный ресурс. - Режим доступа: http://www.osp.rU/os/l 998/06/179607/, свободный.
23. Jeffrey V., Software Quality's Eight Greatest Myths. IEEE Software -September/October 1999 r.
24. IEEE Std 982.1 2005 IEEE Standard Dictionary of Measures of the Software Aspects of Dependability. ISBN: 0-7381-4846-6. Publication Date: 2006 r.
25. IEEE Std 1012-1998 IEEE Standard for Software Verification and Validation. ISBN: 0-7381-0196-6. Publication Date: 20 Jul 1998 r.
26. IEEE Standard for Software Verification and Validation Supplement to 10121998 - Content Map to IEEE 12207.1. ISBN: 0-7381-1425-1. Publication Date: 21 Dec 1998 r.
27. Сборник действующих международных стандартов ИСО серии 9000. Т. 1, 2, 3. М.: Изд-во ВНИИКИ, 1998 г.
28. John J. Marciniak, Encyclopedia of Software Engineering, 2 Volume Set, 2nd Edition. ISBN: 978-0-471-37737-5. Publication Date:January 2002 r.
29. Глудкин О.П., Горбунов H.M., Гуров А.И., Зорин Ю.В. Всеобщее управление качеством: Учебник для вузов. М.: Изд-во Радио и связь, 1999 г.
30. Гличев А.В. Основы управления качеством продукции. М.: Изд-во МАИ, 1998 г.
31. Кулямин В. В. Технологии программирования. Компонентный подход Лекция 5. Качество ПО и методы его контроля Электронный ресурс. -Режим доступа: http://panda.ispras.ru/~kuliamin/sdt-course.html, свободный.
32. Роберт У. Себеста Основные концепции языков программирования. Concepts of Programming Languages. — 5-е изд. — М.: Изд-во Вильяме, 2001 г.
33. Гради Буч, Объектно-ориентированный анализ и проектирование с примерами приложений на С++. М.: Изд-во Бином, 1998 г.
34. Антошина И.В., Домрачев В.Г., Ретинская И.В. Основные тенденции оценивания качества программных средств. Качество, инновации, образование №4, 2002 г.
35. Воробьев В.И., Копыльцов А.В., Пальчук Б.П., Юсупов P.M. Методы и модели оценивания качества программного обеспечения. С-Пб.: Изд-во СПИИРАН 1992 г.
36. The International Obfuscated С Code Contest. Электронный ресурс. -Режим доступа: http://www.ioccc.org, свободный.
37. Вайнштейн В., Македонский М., Попов А. Управление качеством в процессах разработки программного обеспечения. Компьютера 2003 г. №4.
38. Wheeler Sh., Duggins Sh., Improving Software Quality. ACM Proceedings of the 36th Annual Conference on South-East Regional Conference, April 1998 r.
39. Eric В. Baum, David Н., What Size Net Gives Valid Generalization, MIT Press Cambridge, MA, USA, Neural Computation Spring 1989, Vol. 1, No. 1.
40. Изосимов A.B., Рыжко А.Л., Метрическая оценка качества программ, М.: Изд-во МАИ, 1989 г.
41. Холстед М.Х. Начала науки о программах. М.: Изд-во Финансы и статистика 1981 г.
42. John С. Munson. Software Engineering Measurement. Auerbach Publications. Publication Date: 2003 r.
43. Chidamber S.R., Kemerer C.F. A Metric Suite for Object Oriented Design. IEEE Transactions on Software Engineering vol. 20, no. 6. Publication Date: 1994 r.
44. Горбань A.H. Обучение нейронных сетей. M.: Изд-во СП Параграф, 1990 г.5 4. Благо датских В.А., Волнин В.А., Поскакалов К.Ф. Стандартизация разработки программных средств. М.: Изд-во Финансы и статистика, 2006 г.
45. Макконнелл С. Совершенный код. Мастер класс., пер. с англ., М: Изд-во Русская редакция, 2007 г.
46. Стружков С.А. Практическое применение методики количественной оценки «анализируемости» программных продуктов. Труды всероссийской научно-практической конференции «Транспорт России: проблемы и перспективы». М., 2009 г.
47. Стружков С.А. Проблема формализации базовых показателей качества программного обеспечения на примере «сопровождаемости». Труды всероссийской научно-практической конференции «Транспорт России: проблемы и перспективы». М., 2008 г.
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.