Диаграмма снабжается примечаниями в виде синтаксических правил и ограничений внешней среды и затем преобразуется в таблицу решений с ограниченным входом. Каждый столбец таблицы соответствует будущему тесту.
Последовательность применения метода:
¨ Первый шаг: разбить внешние спецификации на отдельные функции, комбинаторные свойства которых и должны тестироваться;
¨ Второй шаг: проанализировать спецификации в поисках всех явных и неявных ситуаций (условия на входе) и эффектов (действия на выходе). Лучше всего делать это, подчёркивая каждую ситуацию и каждый эффект, по мере того как они встречаются при чтении спецификаций. Все ситуации и эффекты нумеруются произвольным образом.
¨ Третий шаг: нарисовать функциональную диаграмму. Ситуации изображаются в виде вершин на левом краю листа бумаги, а эффекты – на правом.
¨ Четвёртый шаг: преобразовать диаграмму в таблицу решений с ограниченным выходом. Для этого нужно выбрать некоторый эффект и записать все комбинации ситуаций, которые его вызывают, затем выписать также состояния всех остальных эффектов при этих комбинациях ситуаций.
Целью тестирования модуля является нахождение несоответствия между логикой и сопряжениями модуля, с одной стороны, и его внешними спецификациями (описанием функций, входных и выходных дынных, внешних эффектов), с другой стороны. Процесс проектирования тестов для модуля состоит из следующих четырех шагов:
¨ Руководствуясь внешними спецификациями модуля, были подготовлены тесты для каждой ситуации и каждой возможности, для каждой границы областей допустимых значений всех входных данных, областей изменения данных, для всех недопустимых условий.
¨ Был проверен текст программы, чтобы убедиться, что все условные переходы были выполнены в каждом направлении. (Текст программы определялся с использованием созданного логического анализатора).
¨ Для циклов модулей были проведены тесты, соответствующие пути без выполнения тела циклов, с его однократным выполнением и максимальным числом повторений.
¨ Был проверен текст программы на её чувствительность к отдельным особым значениям входных данных и были добавлены соответствующие тесты.
Следует отметить, что компиляцию модуля также можно рассматривать как часть процесса тестирования, поскольку компилятор обнаруживает большинство синтаксических ошибок, а также некоторые семантические и логические ошибки.
В результате реализации данного типа тестирования было зафиксировано, что все условные переходы выполняются в каждом направлении, не происходит “зацикливания” в модуле при граничных значениях индексов циклов, также как и не обнаружено сбоев в работе модуля при невыполнении тела какого-либо из циклов, система реагирует на граничные значения водимых данных корректно.
5.4.5. Комплексное тестирование.
Комплексное тестирование – процесс поисков несоответствия системы ее исходным целям [11]. Это наиболее творческий из всех видов тестирования. Оно состоит из следующих шагов:
¨ Тестирование стрессов. Распространенный недостаток больших систем в том, что они функционируют как будто бы нормально при слабой или умеренной нагрузке, но выходят из строя при большой нагрузке и в стрессовых ситуациях реальной среды. Тестирование стрессов представляет попытки подвергнуть систему крайнему “давлению”.
Для проведения тестов осуществлялось большое количество запросов к БД (20 запросов). В результате теста не было зафиксировано никаких отклонений в работе программы, но было отмечено определенное замедление работы БД с запросами.
¨ Тестирование объёма. В то время как при тестировании стрессов делается попытка подвергнуть систему серьёзным нагрузкам в короткий интервал времени, тестирование объема представляет собой попытку предъявить системе большие объёмы данных (максимальный объм базы данных, 2 Мб) в течение более длительного времени.
Для проведения тестов создавалась БД как можно больших размеров, создавались очереди документов, выводимых на печать, использовались граничные значения числовых форматов. В результате теста также не было зафиксировано отклонений в работе программы, обработка запросов БД осуществлялась с незначительным замедлением.
¨ Тестирование конфигурации. Многие системы обеспечивают работу различных конфигураций аппаратуры и ПО. Число таких конфигураций часто слишком велико, но необходимо проверить хотя бы максимальную и минимальную конфигурации. Система была проверена со всеми аппаратными устройствами, с которыми она может осуществлять работу (гибкие накопители данных, принтеры).
При работе с разными типами накопителей данных (НГМД, НЖМД) не было обнаружено ошибок, за исключением малой информативности ошибок возникающих при некорректной работе с НГМД.
¨ Тестирование защиты. Так как внимание к вопросам сохранения секретности в сегодняшнем автоматизированном обществе возрастает, к большинству систем предъявляются определенные требования по обеспечению защиты от несанкционированного доступа. Цель тестирования защиты – нарушить секретность в системе.
В результате проведения теста было зафиксировано, что пользователь не имеющий доступа к системе проникнуть в нее не может.
¨ Тестирование производительности. Требования к производительности и эффективности (время ответа для различных нагрузок и различных конфигураций) – важная часть проектов систем. По сравнению с другими типами комплексного тестирования системы о тестировании производительности известно очень много, этой проблеме посвящена монография[22].
Для проведения данного теста были использованы персональные компьютеры различной конфигурации (ЭВМ на базе Intel 486, Pentium 100, Cyrix 350). В результате проведения теста была зафиксирована корректная работы системы, но необходимо отметить, что работа на ПК на базе Intel 486 не рекомендуется, хотя и возможна.
5.5. Выводы по тестированию ПО.
На основание проведения вышеперечисленных тестов (см. приложение B, C) можно заключить, что:
¨ Созданная система выполняет все функции, указанные в ТЗ.
¨ При аварийном отключении сохраняет максимально возможное количество данных.
¨ Система способна работать на ПК различной конфигурации, в том числе и минимальной.
¨ Система отвечает поставленным требованиям по защите от несанкционированного доступа.
¨ Система корректно осуществляет свою работу при работе с большими объемами данных (при макимальном объеме БД – 2 Мб) и при большом количестве запросов(20 запросов).
6. Разработка бизнес-плана автоматизированной справочно-информационной системы “Учет поставок”.
Разработанная АСИС предназначена для контроля и учета поставок на предприятие любой формы собственности, занимающимся любым видом деятельности связанной с поставками на предприятие. Данная система позволит автоматизировать процесс учета поставок и обрабатывать данные с большой скоростью, поскольку она разработана под современную электронно-вычислительную технику. Данный аспект обеспечивает пользователю удобный интерфейс и простоту в использовании.
Для возможности работы с данным программным продуктом необходима ПЭВМ на базе процессора Intel Pentium 100 и выше, со свободным дисковым пространством не менее 10 Mb, оперативной памятью – 16 Mb. ПЭВМ на которой будет эксплуатироваться предоставляемая АСИС должна быть обеспечена операционной системой Windows 95 или системами совместимыми с ней, а также сервером базы данных InterBase.
Стоимость разработанной АСИС 629,02 грн.
Затраты на тиражирование и адаптацию 20,6 грн.
Предположительное число продаж 470 копий, в том числе:
155 в первый год;
200 во второй год;
115 в третий год.
Стоимость одной копии 64,73 грн.
При данной стоимости одной копии затраты на разработку АСИС окупятся при реализации 10 копий, что обеспечивает рентабельность разработанной АСИС.
6.1. Описание автоматизированной справочно-информационной системы.
Характеристики программного продукта. АСИС “Учет поставок” предназначена для осуществления контроля за поставками на предприятие и для их учета. Работать с АСИС рекомендуется директору предприятия или начальнику цеха (для осуществления контроля поставок), либо ответственному по поставкам (для учета поставок). Используя АСИС “Учет поставок” на предприятии достигается эффективность в их проведении, что обеспечивается:
¨ Возможностью создания печатных документов (договора с поставщиками, заказы и заявки на поставку продукции);
¨ Высокой скоростью обработки данных о процессе поставок;
¨ Определением задолженности по оплате за выполненный заказ;
¨ Определением оптимального счета-фактуры и выдачи рекомендации по возможному поставщику данной продукции;
В таблице 6.1 приведены основные характеристики АСИС: