АВТОМАТИЗИРОВАННОГО ТЕСТИРОВАНИЯ



 

Объект исследования: система автоматизированного тетсирвоания.

Результаты, полученные лично автором: календарный план разработки системы автоматизированного тестирвоания.

 

Современный мир нуждается в сложных программных продуктах, обеспечивающих надёжную связь между человеком и компьютером во многих областях деятельности. Для быстрой и качественной проверки надёжности этих программных систем необходимы программные средства – системы автоматизированного тестирования программ. Существующие системы автоматизированного тестирования не позволяют обхватить весь спектр проблемы проверки надёжности программного обеспечения. Это является основанием для разработки универсальной системы автоматизированного тестирования приложений.

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

Так как система состоит из нескольких модулей, то неотъемлемой частью подготовки к реализации проекта является составление календарного плана проекта. Команда по разработке системы включает в себя аналитика, проектировщика, ведущего программиста, ведущего разработку ядра системы и контролирующего команду программистов, четырёх программистов и трёх специалистов по тестированию. Основная трудоёмкость проекта приходится на специалиста по внедрению, так как он выполняет несколько задач по внедрению и сопровождению программного продукта. Распределение времени проекта строится следующим образом: анализ требований – четыре дня, проектирование – 19 дней. Фаза выполнения включает в себя программирование (55 дней) и тестирование (13 дней).

На диаграмме Ганта (рис. 1) видно, что самая большая по продолжительности задача – задача написания программного кода проекта.

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

 

Рис. 1. Диаграмма Ганта проекта с выделением критического пути.

Проведенное планирование существенно уменьшит время разработки проекта.

Материал поступил в редколлегию 28.04.2017

УДК 004.651.54

А.В. Черкасова

Научный руководитель: доцент кафедры «Информатика и программное обеспечение», к.т.н., А.О. Трубаков

serkuk1@gmail.com

 

АНАЛИЗ ПРОИЗВОДИТЕЛЬНОСТИ ЛИНЕЙНОГО И ВИРТУАЛЬНОГО ХЕШИРОВАНИЯ ПРИ ЛИНЕЙНОМ РАСПРЕДЕЛЕНИИ ДАННЫХ

Объект исследования: линейное и виртуальное хеширования во внешней памяти.

Результаты, полученные лично автором: произведён анализ и сравнение линейного и виртуального хеширования при линейном распределении данных.

Хеширование - это преобразование массива входных данных произвольной длины в (выходную) битовую строку фиксированной длины, выполняемое определённым алгоритмом.

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

Для динамических хеш—структур существует много различных методов хеширования: спиральное, расширяемое, TRIE-хеширование, линейное и виртуальное. Именно два последних и рассмотрены мной.

При сравнении производительности линейного и виртуального хеширования при линейном распределении данных было выявлено, что на добавление элемента уходит одинаковое количество времени. Математическая сложность добавления: 2*l+3, где l - длина записи.

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

Перейдём к эффективности использования памяти. Следует отметить, что в линейном хешировании, количество пустых ячеек некритично - одна выделяется и сразу начинает заполняться. В виртуальном же хешировании выделенное множество ячеек будет некоторое время частично свободным, пока не будет заполнено данными (рис.1).

Рис.1. Сравнение эффективности использования памяти линейного и виртуального.

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

Материал поступил в редколлегию 28.04.2017

 


УДК 004.4

Ю.С. Шарова

Научный руководитель: доцент кафедры «Информатика и программное обеспечение», к.т.н., Д.Г. Лагерев

julishes@gmail.com

 


Дата добавления: 2018-10-27; просмотров: 258; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!