Тестирование программных продуктов
Характеристика процесса, подтверждающего правильность программы и демонстрирующего отсутствие ошибок. Рассмотрение основных определений в сфере тестирования. Определение сути аспекта последовательности слияния всех модулей в систему или программу.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 21.03.2015 |
Размер файла | 195,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
При оценке уровня завершенности испытаний ПС и достоверности полученных результатов часто возникают серьезные затруднения. Отметим следующие из них:
1) большинство ПС являются уникальными и либо не имеют аналогов для сравнения характеристик, либо имеют аналоги, характеристики которых неизвестны;
2) отсутствие общепринятых показателей, а также методов расчета требуемых и фактических значений приводит к тому, что в ТЗ на разработку ПС требования к характеристикам ПС либо фактически отсутствуют (в количественном выражении), либо не претендуют на полноту.
Рассмотрим пути решения проблемы оценки завершенности испытаний ПС. Но прежде всего обратим внимание на необходимость тщательного документирования процесса испытания. Такое документирование следует начать с момента приобретения ПС свойства работоспособности и вести его непрерывно до момента передачи ПС в промышленную эксплуатацию.
Опыт создания отечественных систем реального времени подтверждает необходимость ведения одного или двух журналов. В одном из них следует регистрировать все эксперименты с ПС, а в другом--обнаруженные ошибки (проблемы) и ход их устранения. Периодически составляют отчеты об испытаниях за определенный период времени. Для ведения журналов необходимо тщательно разработать инструкции, в которых установить общие правила заполнения журналов, в том числе единые правила присвоения регистрационных номеров ошибкам, индексации типов ошибок, классификации ошибок и т. п. В журналах следует предусмотреть отдельные разделы, в которых при необходимости будут даваться подробные комментарии к ошибкам и способы их устранения.
Не всякую ошибку можно быстро идентифицировать, поэтому в стандарте IEEE 829--1983 рекомендовано документировать в виде отчетов тест-инцидент все нестандартные события, происходящие во время испытания и требующие дополнительного анализа. Рекомендуется следующая структура этого отчета: идентификатор отчета тест-инцидент, аннотация, описание инцидента, влияние инцидента на последующий ход испытания. Последние два раздела являются основными. Описание инцидента должно включать следующие элементы: входные данные, ожидаемые и фактические результаты, отклонение от нормы, дата и время испытания, шаг процедуры испытания, среда функционирования, результаты попыток повторения условий эксперимента, испытатели, наблюдатели-регистраторы.
Регистрация экспериментов и ошибок (инцидентов), периодическая обработка данных и анализ результатов позволяют контролировать испытания и управлять этим процессом. Сама процедура регистрации может быть разной, важно лишь предотвратить потерю ценной информации при минимальных трудозатратах на сбор и обработку данных. Данное условие можно обеспечить только путем максимальной автоматизации всех процессов.
Критерий интенсивности обнаружения ошибок. Если считать, что во время одного эксперимента обнаруживается не более одной ошибки и каждая ошибка до начала следующего эксперимента устраняется, то можно предположить, что при благоприятном ходе отладки и испытания кривая зависимости: N = 1 -- п/К, где п -- количество обнаруженных и устраненных ошибок; К. -- . количество экспериментов, будет асимптотически стремиться к единице (кривая 1 на рис. 17). Кривая 2 свидетельствует о неблагополучном ходе процесса.
Тогда в качестве критерия прекращения испытаний можно принять, например, следующее условие: N > 0,95 при обнаружении в последних двухстах экспериментах не более трех несущественных ошибок.
Идея выбора такого критерия основана на том, что частота обнаружения ошибок, выраженная отношением п/К, по мере увеличения количества экспериментов должна уменьшаться и к моменту завершения испытаний принять значение, близкое к нулю. Следует иметь в виду, что оценка уровня завершенности испытаний по этому показателю будет достоверной лишь в том случае, если каждый эксперимент проводится в новых условиях и испытатели стремятся обнаружить ошибки, а не доказать их отсутствие. Если же программу проверяют при одних и тех же или близких условиях, то довольно быстро получают кривую вида 1, которая не свидетельствует ни о полноте, ни о глубине проверки программ, ни об отсутствии в ней ошибок.
Критерий заданного значения средней наработки на отказ (критерий Дж. Д. Муса). Сделано два предположения. 1. Суммарное количество обнаруженных и устраненных дефектов в про
грамме (под дефектом понимается любая причина неудовлетворенности свойствами программы) описывается показательной функцией времени функционирования
- исходное количество дефектов в программе; - общее количество дефектов, которое может проявиться за время эксплуатации ПС; -- средняя наработка на отказ в начале испытаний;
С--коэффициент сжатия тестов. Коэффициент С1 тогда, когда абсолютная реактивность программы при прогоне тестов или статистических испытаниях отличается от абсолютной реактивности при работе программы в реальных условиях. Если, например, за один час испытаний моделируется управляемый процесс, происходящий в реальных условиях в течение десяти часов, то коэффициент сжатия С принимается равным 10.
Скорость обнаружения и устранения дефектов, измеряемая относительно времени функционирования программы, пропорциональна интенсивности отказов. Коэффициент пропорциональности B=n/m называется коэффициентом уменьшения дефектов.
Количество зарегистрированных отказов т зависит от суммарного времени функционирования программы следующим образом:
Значение средней наработки на отказ также зависит от суммарного времени функционирования:
Если в ходе испытания обнаруженные ошибки устраняются, то текущее значение средней наработки на отказ будет увеличиваться. Таким образом, в качестве критерия завершенности испытания можно принять достижение требуемого (заданного) значения средней наработки на отказ Tо. Тогда, определяя периодически текущее значение средней наработки на отказ по этой формуле , можно при планировании дальнейшего хода испытания рассчитать требуемое время для дальнейшего прогона программы по формуле
При планировании отладки и испытания ПО следует учитывать влияние следующих факторов: 1) скорости выявления дефектов; 2) скорости устранения дефектов; 3) удовлетворенности машинным временем. Первый фактор зависит от укомплектованности и квалификации испытателей, второй--от укомплектованности и квалификации группы программистов отладчиков, третий -- от фондовооруженности (технической оснащенности) разрабатывающей (испытывающей) организации.
На начальной стадии отладки программы интенсивность выявления дефектов высока. Программисты-отладчики перегружены работой, приходится даже прерывать тестовые прогоны, делать перерывы в испытаниях. На заключительной стадии интенсивность обнаружения дефектов низкая, но остро ощущается необходимость в машинном времени. Испытатели перегружены в подготовке все новых и новых тестовых исходных данных, в то время как у программистов-отладчиков работы может быть мало.
СТЕНДЫ ОТЛАДКИ И ИСПЫТАНИЯ ПРОГРАММ.
Идея имитационного моделирования положена в основу создания комплексных имитационно-моделирующих испытательных стендов, используемых для отладки и испытания сложных систем управления в реальном масштабе времени.
Комплексный имитационно-моделирующий испытательный стенд (КИМИС) представляет собой совокупность средств испытываемой системы и их моделей, модели внешней среды и программ обработки результатов моделирования, функционально объединенных на основе испытываемого программного комплекса. Комплексные имитационно-моделирующие испытательные стенды используются при полигонных испытаниях сложных систем.
Общая идея создания КИМИС основана на том, что для испытания (исследования) ПС, реализованного непосредственно на управляющей ЭВМ, необходимо моделировать управляемый процесс и имитировать поступление в ЭВМ информации об этом процессе. Испытываемое ПС безразлично к непосредственным источникам информации. Важно лишь, чтобы вся информация была распределена по реальным физическим каналам ЭВМ и временным тактовым интервалам, а также соответствовала заданному (ожидаемому) диапазону условий внешней среды. Сопряжение моделей с реальными средствами системы необходимо для оценки результатов моделирования путем их сравнения с реальными данными. Использование в составе КИМИС непосредственно самого ПС, а не его модели, позволяет получить более достоверные результаты при моделировании и избежать больших дополнительных трудозатрат на разработку модели ПС.
Для создания КИМИС, помимо основной ЭВМ, на которой реализуется испытываемое ПС, используют ЭВМ примерно такой же производительности для реализации комплекса моделей соответствующего назначения. Первую ЭВМ (ВС) обычно называют технологической, вторую--инструментальной. Инструментальная ЭВМ и программное обеспечение образуют КИМИС. Такие КИМИС являются кроссовой системой (КРОСС-КИМИС). Моделируемые (имитируемые) на инструментальной ЭВМ данные передаются в технологическую ЭВМ, где и обрабатываются как реальные данные. Программное обеспечение КИМИС может быть реализовано и на технологической ЭВМ (Резидент-КИМИС). Но такой вариант используется сравнительно редко из-за дефицита памяти и производительности в технологических (управляющих) ЭВМ.
Автоматизированный технологический комплекс (АТК) состоит из элементов следующих типов: управляемый технологический агрегат (УТА), автоматизированная система управления технологическим процессом (АСУ ТП), датчики информации (ДИ) о состоянии управляемого процесса. На вход АТК поступает объект обработки (00), на выход--результат обработки (РО). Если прекратить доступ информации в ЭВМ от реальных физических объектов АТК, а вместо нее вводить адекватную ин формацию, имитируемую по КИМИС на инструментальной ЭВМ , то процесс функционирования ПО АСУ ТП будет адекватен реальному. Оператор УТА в принципе может участвовать в обеих режимах.
Программное обеспечение КИМИС в общем случае состоит из следующих подсистем: моделирования, анализа результатов испытания, регистрации событий (документирования), планирования и управления и базы данных (рис. 20). В состав подсистемы моделирования входят: модель заявок на обработку (МЗ), модель объекта обработки (МОО); модели датчиков информации (МДИ); имитатор помех (ИП); модель управляемого технологического агрегата (МТА).
Модель заявок имитирует поток заявок на обработку (например, поток слябов) исходя из плановых и производственных соображений
В соответствии с заданным приоритетом или случайным образом выбирается 00, принимаемый на обслуживание, из совокупности 00, имитируемой МЗ, и его характеристики. Модели датчиков информации являются информационными моделями конкретных типов датчиков информации, используемых в системе управления АТК. Они имитируют выдачу текущих координат характеризующих состояние технологического процесса. Модель управляемого технологического агрегата (например, прокатного стана) имитирует управляемый технологический процесс (например, прокатки стали) с выдачей соответствующей информации об этом процессе. Имитатор помех в соответствии с заданными вероятностными характеристиками имитирует воздействие случайных факторов на элементы моделируемой системы и управляемый процесс. При этом используется датчик случайных чисел, позволяющий реализовать процедуру “розыгрыш”.
Таким образом, подсистема моделирования, имитируя технологический процесс в управляемом агрегате, обеспечивает воспроизведение потока входной информации в управляющую ЭВМ, адекватного этому потоку в реальных условиях эксплуатации АТК.
Имитируемый поток входной информации подается' на вход испытываемого ПО АСУ и инициирует его функционирование, результатом которого является поток выходной (управляющей) информации, выдаваемый на УТА или его модель. Образуется замкнутый контур управления, адекватный контуру управления в реальном ДТК.
Основными компонентами подсистемы анализа результатов испытаний являются: программа выборки результатов преобразования входных данных, программы формирования эталонных значений для анализа правильности результатов, программа сравнения фактических результатов с эталонными и оценки их приемлемости (правильности).
Подсистема регистрации событий обеспечивает документирование хода испытаний и регистрацию всех тех характеристик, которые могут быть полезны как для определения значений показателей качества испытываемого ПС, так и для оценки эффективности и состояния самого процесса испытаний.
Подсистема планирования и управления на основе анализа состояния испытаний, полученных результатов, проверенных путей граф-схемы испытываемого ПС и поступающих заданий от программистов-испытателей осуществляет планирование экспериментов и подготовку соответствующих исходных данных для подсистемы моделирования. На эту же подсистему возлагается координация действий (инициализация) всех элементов КИМИС.
Достоинства КИМИС очевидны. Его использование позволяет осуществлять комплексную стыковку объектов испытываемой системы и проверку принципов управления задолго до создания всех элементов системы (элемент системы, разработка которого не завершена, заменяется моделью). Применение моделирования позволяет разнообразить условия испытания и сэкономить материальные ресурсы. Комплексные испытательные моделирующие стенды можно использовать не только для испытания программ, но и для отработки взаимодействия всех элементов системы.
Сопряжение реальных средств испытываемой системы с их моделями позволяет разнообразить условия испытания и провести полунатурные эксперименты. Можно, например, проверить работу автоматизируемого технологического агрегата, моделируя поведение объекта обработки или, наоборот, промоделировать работу технологического агрегата при работе с реальным объектом обработки. Такие вариации позволяют, с одной стороны, проверять адекватность моделей своим оригиналам и тем самым
убеждаться в достоверности результатов статистических испытаний, а, с другой стороны, использовать КИМИС на самых ранних этапах разработки опытного образца ПС для выбора и апробации наилучших проектных решений.
СЕРТИФИКАЦИЯ ПРОГРАММНЫХ ПРОДУКТОВ. СТАНДАРТИЗАЦИЯ СИСТЕМ КАЧЕСТВА.
В начале 70-х годов многие специалисты пришли к выводу о необходимости широкого распространения индустриальных (инженерных) методов в области построения программ (см, § 1.1). Индустриальные методы базируются на строгой регламентации и автоматизации технологических процессов. Таким образом, стандартизация и в области построения программ стала жизненной необходимостью.
В рамках Единой Системы Программной Документации (ЕСПД) разработано и введено в действие около тридцати стандартов, упорядочивающих разработку программной документации. Многие виды стандартов для программной продукции еще не разработаны (общие технические требования, общие технические условия, технические условия на виды ПП, номенклатура показателей качества, методы выполнения отдельных видов работ в технологических процессах, порядок проведения этих работ и др.).
При разработке ПМК системы УК ПП приняты следующие исходные положения:
1) разработка ПП осуществляется в соответствии с действующими стандартами, техническими условиями, ТЗ или иными заменяющими его документами, содержащими требования к качеству ПП, установленные на основании анализа требований конкретного и (или) потенциального пользователя к потребительским свойств данного вида ПП;
2) качество ПП обеспечивается преимущественно в процессе его разработки; по завершению каждого этапа разработки проекта должен проводиться документированный, систематический и критический анализы результатов разработки;
3) за качество разрабатываемой ПП ответственность несет разработчик, поставляемой -- поставщик;
4) руководство организации -- разработчика несет ответственность за определение политики в области качества и за решения, касающиеся разработки, внедрения и ведения системы качества;
5) управление качеством ПП основывается прежде всего на стимулировании заинтересованности разработчиков и поставщиков в обеспечении высокого качества ПП, повышении профессионализма:
6) для обеспечения требуемого качества ПП управление качеством осуществляется на всех стадиях и этапах жизненного цикла ПП, начиная с самых ранних;
7) в разрабатывающей организации должны быть определены система качества (управляющие органы и лица, несущие ответственность за качество), а также политика в области качества ПП; ответственность и полномочия за каждый вид деятельности, влияющей на качество ПП; определение обязанностей и полномочий должно обеспечивать достижение поставленных целей на заданном уровне эффективности;
8) управление качеством ПП базируется на контроле качества в процессе разработки;
9) все формализуемые функции, процедуры и операции по управлению качеством в конечном счете должны быть переданы ЭВМ и реализованы на ней в виде инструментальных программ;
10) в идейном (концептуальном) плане инструментальные программы и методики, входящие в состав ПМК, должны представлять единое целое, согласующееся с принятой технологией программирования и являющееся составной частью этой технологии;
11) в составе ПМК подсистемы У К ПП можно выделить базовую (условно постоянную) и переменную части. Базовая часть-ПМК разрабатывается как типовое проектное решение с использованием принципов модульной структуры и может быть использована в различных организациях, независимо от ведомственной принадлежности и собственной специфики. Переменная часть-ПМК учитывает специфику разрабатывающей организации, структуры и задач подсистемы УК ПП. Она создается в конкретной организации путем настройки базовой части ПМК и разработки новых, недостающих частей подсистемы УК ПП;
12) все компоненты базовой части ПМК должны обладать свойствами автономности (независимости) разработки, настройки и применения. Однако наибольший эффект должен достигаться от комплексного использования всех компонентов ПМК.
Основными методами стандартизации УК ПП в разрабатывающей организации являются: систематизация и классификация: типизация и унификация; регламентирование.
Систематизация и классификация направлены на упорядочение элементов управления (ГКК, СКК и др.), установление их прав и обязанностей, а также взаимодействия между ними.
Типизация и унификация направлены на выявление и формирование сходных компонентов программ и программных комплексов по профилю организации, па создание библиотек унифицированных компонентов, средств генерации программ из этих компонентов, интерфейсных соглашении.
Регламентирование направлено на упорядочение организационных и технологических процедур по обеспечению требуемого уровня качества на всех стадиях жизненного цикла ПП.
В США, например, в середине 80-х годов введены в действие следующие стандарты: ANSI/IEEE “Спецификация требований к ПО” (Guide to Software Requirements Specifications); “Планирование управления конфигурацией ПО” (Software Configuration Management Plans); “Документирование тестов ПО” (Software Test Documentation); “Планирование уровня качества ПО” (Software Quality Assurance Plan?). В качестве проектов апробируются и другие стандарты, в том числе “Справочник гарантии качества”, “Классификация отказов, сбоев и ошибок ПО”.
При организации управления качеством ПП многие полезные рекомендации можно заимствовать из соответствующих стандартов по управлению качеством промышленной продукции.
В 1987 г. утверждено пять международных стандартов ISO, устанавливающих требования к системам обеспечения качества продукции на предприятиях: “Стандарты по управлению качеством и обеспечению качества. Руководство для выбора и применения” (ISO 9000); “Система качества. Модели обеспечения качества при проектировании, разработке, производстве, монтаже и обслуживании” (ISO 900S); “Система качества. Модели обеспечения качества при производстве и монтаже” (ISO 9002); “Система качества. Модели обеспечения качества в процессе контроля и испытания готовой продукции” (ISO 9003); “Управление качеством и элементы системы качества. Основные направления” (ISO 9004).
КЛАССИФИКАЦИЯ ПОКАЗАТЕЛЕЙ КАЧЕСТВА
Под показателем качества программной продукции в соответствии с ГОСТ 15467--79 следует понимать количественную характеристику одного или нескольких свойств продукции, составляющих ее качество, рассматриваемую применительно к определенным условиям ее создания и эксплуатации. Свойство продукции -- это объективная особенность, которая может проявиться при создании или эксплуатации продукции. В определении понятия “Показатель качества” слова “Количественная характеристика” не следует понимать в буквальном смысле. При определении значений показателей качества успешно могут применяться и нечисловые характеристики, хотя в общем случае наличие строго количественных, числовых характеристик предпочтительней.
Показатели качества программной продукции в зависимости от характера решаемых задач по оценке качества продукции можно классифицировать по следующим признакам: характеризуемые свойства; способ выражения; количество характеризуемых свойств; место применения в процедуре оценки; стадии определения значений показателей.
По способу выражения различают показатели, выраженные в натуральных единицах, и показатели, выраженные в стоимостных единицах. В качестве натуральных единиц обычно используют единицы физических величин (килограммы, метры, секунды и т. п.), а также баллы и безразмерные единицы. ПС являются информационными объектами. Какими-либо собственными физическими свойствами они не обладают, поэтому единицы физических величин в традиционном виде при определении значений показателей качества ПС почти не применяются, за исключением единиц времени. Но как составной элемент системы обработки данных ПС вносит определенную долю погрешности в точность выходных результатов. Эта погрешность может измеряться в единицах преобразуемых физических величин. Вместе с тем в программировании широко используют такие натуральные единицы, как бит, байт, условная машинная команда, строка текста и т. п. Стоимостные единицы применяют при определении значений экономических показателей качества программной продукции.
По количеству характеризуемых свойств различают единичные и комплексные показатели. Единичные показатели качества характеризуют одно из свойств ПС, комплексный--несколько. Комплексные показатели могут быть групповыми, обобщенными или интегральными.
В зависимости от места применения в процедуре оценки уровня качества ПС различают базовые и относительные показатели. Базовым значением показателя качества продукции называют значение показателя, принятое за основу при сравнительной оценке качества продукции. Относительное значение показателя качества продукции представляет собой отношение фактического значения показателя качества оцениваемой продукции к базовому значению этого показателя.
По стадии определения значений показателей качества различают прогнозируемые, проектные, производственные и эксплуатационные показатели. Прогнозируемыми показателями оперируют на стадиях выполнения научно-исследовательских работ и составления ТЗ на разработку ПС, т. е. на тех стадиях, когда нет еще ни детального проекта ПС, ни, тем более, самого ПС. Значения прогнозируемых показателей в основном определяют на основе интуиции и опыта аналогичных разработок, поэтому эти показатели носят субъективный характер.
Значения проектных показателей определяют на основе анализа проектов ПС (эскизного, технического, рабочего), а также путем испытания опытного образца ПС. Эти показатели носят более объективный характер. Степень их достоверности зависит от эффективности используемых инструментальных средств анализа и испытания.
Производственные показатели мало отличаются от проектных, особенно если изготовление ПС сводится к простому копированию. Если же копированию предшествуют операции сборки или генерации ПС, то производственные показатели качества таких ПС могут существенно отличаться от проектных.
Значения эксплуатационных показателей определяют по результатам промышленной эксплуатации ПС. При соблюдении определенных правил сбора и обработки данных о качестве ПС в процессе эксплуатации эксплуатационные показатели дают наиболее объективную и достоверную оценку. Только по этим показателям можно произвести действительную оценку научно-технического уровня и качества ПС.
ВЫБОР НОМЕНКЛАТУРЫ ПОКАЗАТЕЛЕЙ КАЧЕСТВА
Выбор номенклатуры показателей качества программной продукции заключается в установлении перечня наименований характеристик свойств продукции, определяющих качество данного вида продукции и обеспечивающих возможность полной и достоверной оценки ее уровня качества. Порядок выбора номенклатуры показателей качества программной продукции должен устанавливаться с учетом специфики этой продукции. Выбор номенклатуры показателей качества конкретного ПС зависит от вида (группы) ПС, цели применения и стадии определения показателей.
Для каждого вида (группы), а иногда и конкретного ПС устанавливают свою номенклатуру показателей качества, учитывающую специфику назначения п условий применения. Номенклатура показателей качества для каждого подкласса, группы и вида ПС оформляется в виде таблиц применяемости показателей качества. Помимо перечня рекомендуемых и обязательных показателей качества для данного подкласса (вида, группы) ПС, в таблицах применяемости следует указывать и коэффициенты (параметры) весомости (значимости) каждого из показателей. Определение коэффициентов весомости показателей качества -- наиболее существенная и трудная задача выбора номенклатуры показателей качества. В принципе при решении этой задачи можно использовать либо метод стоимостно-регрессионных зависимостей, либо метод предельных номинальных значений. Но их использование затруднено из-за отсутствия необходимых исходных данных. Поэтому на практике наиболее распространен экспертный метод определения коэффициентов весомости.
Таблицы применяемости являются руководящим или справочным материалом для выбора рабочей номенклатуры показателей качества конкретного ПС. Рабочая номенклатура ПС устанавливается с учетом назначения и условий использования ПС; результатов анализа требований пользователя (заказчика), поставленных задач управления качеством; состава, структуры и специфики характеризуемых свойств.
Цели применения номенклатуры показателен качества устанавливают в соответствии с задачами управления качеством программной продукции. Такими целями, в частности, могут быть следующие: составление технического задания па разработку ПС; составление технических условии на ПС; заполнение карты технического уровня; установление контролируемых показателей при проектировании ПС; установление контролируемых показателей при опытной эксплуатации ПС; аттестация ПС по категориям качества.
Стадии определения значении показателей качества соответствуют стадиям жизненного цикла ПС.
При выделении свойств и соответствующих показателей качества ПС необходимо руководствоваться следующими основными принципами :
выделение групп свойств должно производиться по четко определенным признакам;
свойства, входящие в одну группу, должны, как правило, взаимно исключать друг друга и быть независимыми. Если свойства зависят друг от друга, то в методиках определения значении показателей качества должны быть даны четкие указания по исключению многократного (неоднократного) влияния одного и того же свойства на обобщенную оценку качества ПС;
всякая исходная номенклатура показателей должна быть открытой, т. е. должна допускать возможность внесения мне исключения из нее отдельных элементов. Это требование обусловлено, с одной стороны, недостаточным опытом оценки качества программной продукции, а с другой,--большим разнообразием ПС и условий их применения;
для каждого из выделенных свойств должна существовать возможность выражения их в шкалах “лучше -- хуже”, “больше -- меньше”;
в группу следует включать свойства, необходимые и достаточные для определения соответствующего сложного свойства;
формулировка свойств должна быть однозначной;
совокупность свойств, характеризующих качество оцениваемого ПС, должна быть упорядочена по определенному правилу в виде многоуровневой иерархической структуры -- дерева свойств;
дерево свойств должно отражать все основные особенности использования н функционирования ПС;
выбранные показатели качества должны быть скоррелнрованны с соответствующими свойствами ПС. Это значит, что между каждым из выделенных свойств и характеризующими его показателями должно быть установлено однозначное соответствие. Установление такого соответствия позволяет вместо дерева свойств использовать дерево показателей качества программной продукции;
показатели качества, характеризующие свойства ПС, должны способствовать обеспечению соответствия качества ПС требованиям со стороны их пользователей и учитывать современные достижения науки и техники. Для выполнения этого принципа часто необходимо проводить специальные исследования, так как в общем случае между показателями качества могут возникать серьезные противоречия, а улучшение одного показателя может привести к ухудшению другого.
Для проверки работоспособности выбранной системы показателей качества необходимо устанавливать степень корреляции каждого рассматриваемого показателя с качеством ПС, полезность показателя, возможность количественного представление и автоматической оценки показателя. В частности, оценку полезности каждого из выбранных показателей для конкретных ПС рекомендуется производить по следующей шкале:
5--крайне важно, чтобы данный показатель имел высокое значение;
4--важно, чтобы данный показатель имел высокое значение;
3--хорошо бы иметь высокое значение данного показателя;
2-- в некоторой степени полезно иметь высокое значение данного показателя;
1--при низких значениях данного показателя ощутимых потерь нет,
Около 50 % частных показателей можно определить автоматически с помощью ЭВМ, 25 % --с помощью компаратора. Таким образом, оценка около 75 % показателей может быть формализована. Оценка 20 % показателей может быть произведена только квалифицированным специалистом. Большинство показателей устанавливают путем статического анализа программ и лишь около 5 % -- в процессе динамических испытаний (Данные соответствуют положению в этой области в 80-е годы).
Следует иметь в виду, что оценка качества, а следовательно, к выбор показателей качества сложных многофункциональных программных комплексов типа операционных систем, систем управления базами данных, пакетов прикладных программ и так далее имеет свои особенности. Каждая функция таких ПС реализуется программным путем, задающим определенный технологический процесс преобразования входных данных в выходные. Известны цель этого процесса и потребность в нем, Для того чтобы удовлетворить эту потребность, ПС должна обладать определенными свойствами. Причем свойства ПС, удовлетворяющие потребности в одной функции, могут существенно отличаться от свойств ПС, необходимых для реализации другой функции. Поэтому степень удовлетворения потребности в выполнении каждой из функций ПС в общем случае характеризуется своими показателями или, по крайней мере, параметрами весомости показателей. Возникает необходимость выбора показателей и определения их весомости для оценки качества (эффективности) реализации каждой из основных функций ПС. Попытка выбора единой номенклатуры показателей качества оказывается, как правило, безрезультатной. В этом можно легко убедиться на примере оценки качества операционных систем (ОС) ЭВМ. На ОС ЭВМ возлагаются следующие функции: управление данными, заданиями, вводом-выводом; обслуживание библиотек пользователей;
трансляция и редактирование программ; протоколирование состояний и событий; перезапись и сортировка информации и др. Очевидно, что требования, например, к трансляторам существенно отличаются от требований к ПС протоколирования событий как по своему перечню, так и по весомости каждого из показателей. В свою очередь различие требований обусловливает необходимость использования различных показателей качества, характеризующих потребительские свойства программ, реализующих эти функции.
ГРУППЫ ПОКАЗАТЕЛЕЙ КАЧЕСТВА
Любому классу продукции присущи определенные свойства, характерные для данного класса. В свою очередь каждый подкласс, группа, вид этой продукции имеет частные свойства, отличающие изделия одной классификационной группировки от другой. Рассмотрим формирование номенклатуры показателей качества, характеризующей общие свойства класса программной продукции. Эта номенклатура может быть использована в качестве исходной при выборе рабочей номенклатуры показателей качества любого конкретного ПС. Номенклатуры показателей качества всегда имеют иерархическую структуру. Их формирование начинается с выделения групп верхнего уровня иерархии, а затем номенклатуры детализируются вплоть до получения единичных показателей. Выделение групп показателей качества является важной и сложной задачей формирования номенклатуры показателей качества. Неудачное комплектование групп может привести к усложнению взаимосвязей между группами и отдельными показателями, а также сделать номенклатуру показателей качества малоконструктивной.
Известно, что для оценки качества промышленной продукции используют следующие группы показателей: назначения; экономичного использования сырья, материалов, топлива, энергии; надежности; эргономичности; эстетичности; технологичности; патентно-правовые; унификации и стандартизации; экологичности; безопасности.
Все эти показатели можно использовать и при оценке качества ПП. По в силу особенностей ПП некоторые группы показателей при оценке ее качества применять нецелесообразно (неконструктивно). К таким показателям относят показатели экологичности, безопасности.
Экологические показатели и показатели безопасности нехарактерны для ПП, так как программные изделия непосредственно не могут оказывать вредных воздействий ни на окружающую среду, ни на здоровье человека. В принципе, такие воздействия возможны в тех случаях, когда ПИ используют в качестве элементов управляющих объектов, например в АСУ. В этом случае вырабатываемые ЭВМ по определенному алгоритму управляющие воздействия могут вызвать и неблагоприятные экологические последствия, и быть опасными для человека. Но это уже косвенное воздействие через управляющие органы и исполнительные механизмы автоматизированных технологических комплексов (АТК). Они учитываются как соответствующие показатели AT К. Патентно-правовые показатели программной продукции не могут быть использованы до тех пор, пока вопросы патентно-правовой защиты этой продукции не будут решены в законодательном (юридическом) плане. Относительно надежности программной продукции существует много противоречивых мнений. Вместе с тем большинство специалистов единодушны в мнении о том, что природа надежности программных и технических средств различна. Для программной продукции малопродуктивными являются такие показатели надежности, как долговечность, сохраняемость, ремонтопригодность. Источниками низкой надежности ПС в основном являются ошибки в программах, внесенные на стадии проектирования и невыявленные при отладке и испытаниях. Заслуживает внимания мнение американского специалиста Фокса Д., который считает, что использование термина “надежность программного обеспечения” наносит вред, так как способствует неправильному пониманию природы программного обеспечения . Вместе с тем следует учитывать тот факт, что при анализе некоторых свойств ПП, проявляющихся при ее функционировании, приходится пользоваться категориями надежности (работоспособность, отказ, сбой, восстановление и др.). Поэтому в номенклатуре показателей качества ПП признано целесообразным выделять в отдельную группу показатели, характеризующие свойства ПП, близкие по своим внешним проявлениям показателям надежности аппаратуры. Эта группа названа показателями надежности функционирования. Таким образом, в базовой номенклатуре показателей качества ПП на верхнем уровне выделяем следующие показатели: назначения, надежности функционирования, эргономичности, технологичности, унификации и стандартизации. Качество ПП в основном формируется в процессе создания продукции и в значительной мере зависит от эффективности структурных (конструктивных) решений. Поэтому на этом же уровне в отдельную группу выделим структурные показатели. Показатели назначения, надежности функционирования, эргономичности и технологичности характеризуют свойства ПП, проявляющиеся в процессе ее использования (эксплуатации). По этому признаку их можно считать эксплуатационными. Структурные показатели и показатели унификации и стандартизации характеризуют свойства структуры (конструкции) ПС, их можно объединить в одну группу конструктивных показателей. По отношению к группе эксплуатационных показателей эта группа носит вспомогательный характер. Достижение определенного уровня значений этих показателей не может служить самоцелью, это лишь средство (путь) обеспечения требуемых значений одного или нескольких показателей, относящихся к основной группе -- группе эксплуатационных показателей.
Размещено на Allbest.ru
...Подобные документы
Этапы технологического процесса разработки программных продуктов, их жизненный цикл. Общая характеристика языков программирования. Виды ошибок и принципы тестирования программ. Установление прав собственности на продукт посредством лицензий и контрактов.
презентация [1,9 M], добавлен 01.05.2011Экономика тестирования. Режим проверки программы на ошибки в режиме "черного" и "белого ящика". Принципы ее проведения. Философия тестирования. Пошаговая, восходящяя, нисходящяя проверка модулей. Метод "большого скачка". Модифицированный метод сандвича.
презентация [585,4 K], добавлен 19.09.2016Тестирование как процесс выполнения программы с намерением найти ошибки. Шаги программы при тестировании, его оценка и значение. Роль информационных потоков тестирования, оценивания и отладки. Особенности структурного и функционального тестирования.
презентация [574,8 K], добавлен 22.03.2014Процессы тестирования: общее понятие, история, философия. Главные особенности интеграции модулей. Испытание программных продуктов: цель и особенности, технологическая схема, планирование и оценка завершенности. Кoмплeксный имитaциoннo-мoдeлирующий стeнд.
курсовая работа [37,2 K], добавлен 21.07.2012Этапы тестирования при испытаниях надежности программных средств. Комплексирование модулей и отладка автономных групп программ в статике без взаимодействия с другими компонентами. Испытания главного конструктора. Жизненный цикл программного средства.
презентация [339,6 K], добавлен 22.03.2014Создание сетевой системы тестирования с целью автоматизации процесса контроля знаний, оценивания результатов и создания тестовых заданий. Файлы проекта и их назначение. Описание алгоритмов и модулей программы. Работа с сетью, руководство пользователя.
контрольная работа [928,3 K], добавлен 23.12.2012Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.
курсовая работа [365,0 K], добавлен 18.05.2013Назначение и архитектура экспертных систем, их применение в сфере образования. Экспертные системы тестирования, принципы их функционирования. Инструментальные средства создания приложения и разработка программы тестирования. Описание программы, листинг.
дипломная работа [706,4 K], добавлен 07.05.2012Тестирование как составляющая часть процесса отладки программного обеспечения, его роль для обеспечения качества продукта. Обнаружение ошибок в программах, выявление причин их возникновения. Подходы к формулированию критериев полноты тестирования.
курсовая работа [1,6 M], добавлен 20.12.2012Создание программы для автоматизации продаж программных продуктов, ведение базы данных по клиентам, формирование отчетов по реализованным товарам и вырученным средствам. Алгоритмизация задачи. Аномалии и защитное программирование. Тестирование и отладка.
курсовая работа [2,9 M], добавлен 17.07.2014Разработка программы для тестирования студентов в интегрированной среде разработки Lazarus. Создание формы, отображение графического изображения, выхода, ответа, завершения теста. Процесс выбора ответа студентом. Исходный вид программы тестирования.
курсовая работа [388,4 K], добавлен 23.12.2014Описание процесса разработки информационной системы. Анализ тестирования и выявления ошибок разработанного модуля. Обследование объекта автоматизации и оформление документации по эксплуатации программы. Сущность экспортирования и импортирования данных.
отчет по практике [1,3 M], добавлен 20.05.2017Структурные подразделения и отделы организации, ее технические программные средства. Разработка приложений обработки данных на ассемблере, языке программирования высокого уровня. Тестирование и оптимизация программных модулей. Разработка документации.
отчет по практике [175,0 K], добавлен 30.09.2022Неразрешимость проблемы тестирования программного обеспечения. Виды и уровни тестирования. Стратегии восходящего и нисходящего тестирования. Методы "белого" и "черного" ящика. Автоматизированное и ручное тестирование. Разработка через тестирование.
курсовая работа [112,2 K], добавлен 22.03.2015Выполнение отладки программных модулей с использованием специализированных программных средств. Тестирование, оптимизация кода модуля. Реализация базы данных в конкретной системе управления. Анализ проектной и технической документации на уровне компонент.
дипломная работа [5,0 M], добавлен 08.06.2017Сущность тестирования и отладки, методика выявления ошибок в программном обеспечении. Практика отладки приложений в среде Delphi, системы управления версиями приложения и отслеживания ошибок. Применение точек остановки и модификация локальных переменных.
курсовая работа [303,4 K], добавлен 19.01.2016Характеристика алгоритмов и программных реализаций поведения агентов в двумерной среде. Исследование разработки структур данных и знаний. Особенность создания интерфейса и карты лабиринта. Экспериментальное тестирование и отладка модулей программы.
дипломная работа [2,4 M], добавлен 12.08.2017Изучение различных видов тестирования программного обеспечения. Выявление в программной системе скрытых дефектов до того, как она будет сдана заказчику. Тестирование методом черного ящика. Требования, предъявляемые к процессу тестирования больших систем.
курсовая работа [3,0 M], добавлен 19.11.2009Блок-схема модулей программы. Главная цель бизнеса ООО "Регион". Протокол тестирования продукта. Руководство пользователя программы. Расчет цены предложения и минимального количества копий тиражирования. Образец отчета "Книга продаж", листинг программы.
дипломная работа [1,0 M], добавлен 18.09.2014История развития и виды тестирования программного обеспечения. Инсталляционное, регрессионное, конфигурационное, интеграционное, локализационное, модульное тестирование. Методы сокращения трудоемкости модульного тестирования разрабатываемого приложения.
курсовая работа [309,5 K], добавлен 16.12.2015