Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Адаптация метода модульного тестирования для экспертной оценки качества разработки инновационных программных продуктов

Адаптация метода модульного тестирования для экспертной оценки качества разработки инновационных программных продуктов


Развитие экономики знаний и внедрение в повседневную практику во всех сферах жизнедеятельности общества современных информационно-коммуникационных технологий (ИКТ) повлекло за собой появление новых и более эффективных методов сбора, хранения, обработки, передачи и представления информации, используемой в сфере экономики для управления производственно-хозяйственной деятельностью разного рода предприятий [1,12,15]. Характерной тенденцией современного этапа развития мировой экономики стала разработка проектов и программ создания инновационной продукции, услуг и технологий нового поколения [5,8,14,16,18]. Применяются они и в управленческой деятельности отечественных предприятий для создания современных инновационных программных продуктов (ИПП). При этом под ИПП понимается информационный продукт, представленный в цифровой форме и включающий в себя логически структурированное содержание предметной области знаний, объединяющей некую совокупность решаемых задач, а также информационное наполнение и метаданные по отдельным задачам и их разделам, программное обеспечение (ПО), необходимые для использования ИПП в процессе управления [16]. Основой ИПП являются структурированное содержание предметной области, модульная структура информационного наполнения, использование современных средств ПО.

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

В традиционном понимании определение качественного уровня разработки ИПП как информационного продукта представляет собой всесторонний анализ группой специалистов (экспертов в конкретной области знаний) его основных свойств и рабочих характеристик на предмет их соответствия установленным требованиям или стандартам качества. Для проведения такой экспертизы привлекаемые специалисты должны обладать исчерпывающими познаниями в конкретной предметной области. Отсюда можно заключить, что определение качественного уровня разработки ИПП представляет собой специальное исследование, для проведения которого должны использоваться современные научные достижения, позволяющие получать достоверные научно обоснованные и легко сопоставимые результаты по конкретным свойствам и рабочим характеристикам того или иного ИПП [7,9,14,17,19].

Информатизация мировой и отечественной экономических систем существенным образом меняет роль и значение экспертизы в деятельности предприятий, управление которой осуществляется при помощи ИПП. Институт экспертной оценки качества начинает играть существенную роль в обосновании управленческих решений. Именно поэтому необходимость определения качественного уровня разработки ИПП в настоящее время не вызывает сомнений. Более того, экспертная функция становится одной из важнейших и общепризнанных не только в науке, но и в практической производственно-хозяйственной деятельности многих предприятий [2,13,19,20,22,23].

Повышение роли и значения определения качественного уровня разработки ИПП объективно определяется двумя взаимосвязанными факторами. Во-первых, повышением демократизации управления предприятиями во всех сферах экономики, которая проявляется в расширении участия их сотрудников в процессах выработки и принятия соответствующих управленческих решений. А во-вторых, повышением рисков принятия неадекватных управленческих решений, которые могут привести к негативным финансово-экономическим последствиям для развития предприятий [11].

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

Большинство современных ИПП представляют собой достаточно крупные и объемные продукты, содержащих в себе от 20 до 50 и более взаимосвязанных модулей, в которых представлено логически структурированное содержание предметной области знаний, объединяющей некую совокупность решаемых задач, а также информационное наполнение и метаданные по отдельным задачам и их разделам. Для проведения экспертизы такого рода продуктов целесообразно адаптировать инструментарий ряда существующих методов экспертизы, позволяющего определенным образом структурировать не только сам процесс получения экспертных оценок качественного уровня разработки ИПП в целом, но и его отдельных составляющих - модулей. В качестве такого методического подхода нами выбран инструментарий метода модульного тестирования [3,10].

Модульное тестирование как инструментарий экспертной оценки современных ИПП представляет собой процесс тестирования отдельных модулей, увязанных при помощи различного программного обеспечения (ПО) в единый информационный продукт. Таким образом, процесс модульного тестирования предполагает не тестирование сложного ИПП сразу в целом, а предварительную экспертную оценку его составляющих - отдельных модулей. И только на основе полученных результатов формируется итоговая оценка качественного уровня разработки ИПП. Возможность практического применения такого подхода подтверждается следующими доводами:

1) поскольку небольшие программные блоки (модули ИПП) легче тестировать, то можно значительно повысить эффективность всего процесса экспертной оценки качественного уровня разработки ИПП;

2) существенно облегчаются точная локализация обнаруженных ошибок и отладка программ, поскольку всегда точно известно в каком из модулей была найдена ошибка;

3) применение инструментария модульного тестирования позволяет одновременно тестировать несколько модулей ИПП и, тем самым, обеспечивает возможность ускорения всего процесса определения качественного уровня разработки ИПП.

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

Инструментарий модульного тестирования основан на использовании двух источников информации: спецификации модуля ИПП и исходный код его ПО.

Поскольку в спецификации модуля, как правило, описаны его назначение, а также состав входных и выходных параметров, то в качестве основного метода модульного тестирования преимущественно используется метод "белого" ящика. Это связано с тем, что при определении качественного уровня разработки ИПП в целом эффективность применения данного метода значительно снижается по причине роста объемов и сложности структурных взаимосвязей логически структурированного содержания предметной области знаний. Кроме того, на последующих этапах экспертной оценки качественного уровня разработки ИПП выявляются уже не чисто ошибки в ПО, а ошибки, связанные с несоответствием ПО ожиданиям пользователей и др. Поэтому практическая реализация инструментария модульного тестирования заключается в использовании на начальных этапах проведения экспертизы метода "белого ящика", посредством которого можно оценить логику ПО модуля ИПП. На последующих этапах применяются методики экспертной оценки качественного уровня разработки модуля ИПП по принципу "черного ящика", позволяющие выявить несоответствия выполняемых модулем ИПП функций требованиям, указанным в его спецификации [4,6].

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

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

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

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

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

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

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

- во-первых, эффективность критерия комбинаторного покрытия условий значительно превосходит другие критерии;

- во-вторых, ни один из критериев покрытия логики структурных взаимосвязей содержания предметной области знаний не может применяться в качестве единственного метода экспертной оценки ПО модуля ИПП.

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

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

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

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

По результатам проведенных исследований можно сделать ряд выводов. Они представлены ниже.

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

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

3. При инкрементном тестировании существенно упрощается отладка ПО модулей ИПП за счет раннего выявления ошибок. В случае неинкрементного тестирования выявить ошибки в ПО модулей ИПП невозможно до того момента, пока все модули не будут интегрированы в единый продукт.

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

5. Неинкрементное тестирование требует меньшего расхода машинного времени за счет использования меньшего количества машинных команд. Однако этот достоинство инкрементного тестирования нивелируется отсутствием машинного времени, затрачиваемого на разработку большого количества драйверов и заглушек, используемых при неинкрементном тестировании.

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

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

Литература

1. Барановская Т.П., Лойко В.И., Семенов М.И., Трубилин И.Т. Информационные системы и технологии в экономике. - М.: Финансы и статистика, 2003. - 416 с.

2. Барановская Т.П., Симонян Р.Г., Вострокнутов А.Е. Теория систем и системный анализ (функционально-структурное моделирование). - Краснодар: КубГАУ, 2011. - 230 с.

3. Бейзер Б. Тестирование черного ящика. Технология функционального тестирования программного обеспечения и систем. Пер. с англ. - СПб.: ПИТЕР, 2004. - 173 с.

4. Блэк Р. Ключевые процессы тестирования. Пер. с англ. - М.: ЛОРИ, 2006. - 257 с.

5. Жилякова Е.В., Хрусталёв Е.Ю. Инструментарий экспертизы инициативных научных исследований (на примере конкурсов РГНФ) // Концепции, 2008, № 2 (20), с. 58 - 71.

6. Канер С., Фолк Д., Нгуен Е. Тестирование программного обеспечения. Пер. с англ. - М.: ДиаСофт, 2001. - 324 с.

7. Ларин С.Н., Жилякова Е.В. Методы, состав показателей и алгоритм проведения экспертной оценки качества инновационных программных продуктов // Инновационная наука, 2015, вып. № 4-1, с.73-76.

8. Ларин С.Н., Ильменская Е.М., Хрусталёв Е.Ю. Теоретико-методологические основы информационно-аналитической системы управления знаниями об инновационном развитии экономики / Препринт WP/2011/05. - М.: МАОН, 2011. - 73 с.

9. Липаев В.В. Качество программных средств. - М.: Янус-К, 2002. - 400 с.

10. Липаев В.В. Тестирование компонентов и комплексов программ. Учебник. - М.: СИНТЕГ, 2010. - 260 с.

11. Липаев В.В. Экономика производства программных продуктов. - М.: СИНТЕГ, 2011. - 358 с.

12. Лойко В.И. Алгоритмы структуры данных ЭИС. - Краснодар: КубГАУ, 2007. - 168 с.

13. Неволин И.В., Хрусталев О.Е., Хрусталев Ю.Е. Методология оценки финансовой значимости и реализуемости инновационных проектов создания интеллектуальной продукции // Финансовая аналитика: проблемы и решения, 2013, № 11, с. 39 - 45.

14. Нестеров А.В. Основы экспертно-исследовательской деятельности. - М.: Изд. дом ВШЭ, 2009. - 163 с.

15. Семенов М.И., Трубилин И.Т., Лойко В.И., Барановская Т.П. Архитектура компьютерных систем и сетей. - М.: Финансы и статистика, 2003. - 256 с.

16. Стебеняева Т.В., Юдинова В.В., Юрятина Н.Н. Управление экспертной оценкой качества инновационных программных продуктов на основе выявления ошибок при их тестировании // Materiбly XI mezinбrodnн vмdecko - praktickб konference "Dny vмdy - 2015". - Dнl 2. Ekonomickй vмdy.: Praha. Publishing House "Education and Science" s.r.o - 112 stran. С. 75-82. [Электронный ресусрс]. URL: http://www.ukrnauka.ru/2015_DN/2015-03-27_ A4_tom-2.pdf.

17. Стрельникова И.А. Хрусталёв О.Е. Особенности и оценка реализуемости инвестиционных проектов создания наукоемкой инновационной продукции // Экономический анализ: теория и практика, 2014, № 21, с. 40 - 50.

18. Хрусталёв Е.Ю., Ильменская Е.М. Методы оценки и стимулирования научно-исследовательских проектов и программ // Экономический анализ: теория и практика, 2014, № 17, с. 2 - 12.

19. Хрусталёв Е.Ю., Ильменская Е.М. Экспертно-аналитический анализ и методы стимулирования фундаментальных и прикладных научных исследований // Аудит и финансовый анализ, 2012, № 2, с. 158 - 169.

20. Хрусталёв О.Е., Хрусталёв Ю.Е. Инструментальные методы оценки реализуемости наукоемкого инвестиционного проекта // Экономический анализ: теория и практика, 2011, № 27, с. 8 - 18.

21. ISO 25000:2005 ТО. - Руководство для применения новой серии стандартов по качеству программных средств на базе обобщения стандартов ISO 9126:1-4: 2002 и ISO 14598: 1-6:1998-2000. - 120 с.

22. Development of Professional Expertise. Toward Measurement of Expert Performance and Design of Optimal Learning Environments / Edited by K. Anders Ericsson. Cambridge University Press, New York, USA, 2009. - 153 p.

23. The Cambridge Handbook of Expertise and Expert Performance. / Edited by K. Anders Ericsson, Neil Charness, Paul J. Feltovich, Robert R. Hoffman. Cambridge University Press, New York, USA, 2006. - 267 p.

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
 
Предметы
Агропромышленность
Банковское дело
БЖД
Бухучет и аудит
География
Документоведение
Естествознание
Журналистика
Информатика
История
Культурология
Литература
Логика
Логистика
Маркетинг
Математика, химия, физика
Медицина
Менеджмент
Недвижимость
Педагогика
Политология
Право
Психология
Религиоведение
Социология
Статистика
Страховое дело
Техника
Товароведение
Туризм
Философия
Финансы
Экология
Экономика
Этика и эстетика
Прочее