
- •Критерии качества программного средства. Определение качества по в стандарте iso 9126. Многоуровневая модель качества по. Оценочные характеристики качества программного продукта
- •Жизненный цикл программного продукта, фазы жизненного цикла.
- •Этапы классического жизненного цикла, их содержание.
- •3 Билет
- •1.Фаза разработки, этапы процесса разработки.
- •2.Стратегии конструирования по: линейная, инкрементная, эволюционная
- •4 Билет
- •Стандарт iso/iec 12207-95: основные определения – система, модель жизненного цикла, квалификационные требования. Основные процессы, их содержание, работы и задачи процесса разработки.
- •5 Билет
- •Стандарт iso/iec 15504 (spice): оценка возможностей разработчика. Связь этого стандарта с моделью зрелости предприятия sei cmm. Ответ
- •6 Билет
- •Прогностические модели процесса разработки: каскадная, rad, спиральная. Ответ
- •7 Билет
- •8 Билет
- •11 Билет
- •Анализ предметной области: цели и задачи. Модели предметной области. Формальные определения. Классификация моделей.
- •Методология idef0, синтаксис idef0-моделей. Ответ
- •Idef0-модели состоят из трех типов документов:
- •12 Билет
- •Диаграммы потоков данных (dfd-диаграммы) и диаграммы потоков работ (idef3-диаграммы), их использование при моделировании предметной области.
- •13 Билет
- •Объектно-ориентированный анализ предметной области. Методика определения границ системы и ключевых абстракций. Пример проведения анализа. Функциональные и нефункциональные требования к системе.
- •14 Билет
- •Функциональные требования к системе. Способ их представления в виде uml-диаграммы. Пример диаграммы с использованием отношений «расширяет» и «включает».
- •Понятие прецедента и сценария
- •15 Билет
- •Концептуальная модель системы: концептуальные классы, системные события и системные операции. Способ их представления в виде uml-диаграмм. Пример концептуального описания прецедента.
- •16 Билет
- •Диаграммы взаимодействия как элементы концептуальной модели. Синтаксис диаграмм взаимодействия.
- •17 Билет
- •Проектирование программных средств. Цели и задачи этапа проектирования. Понятие модели проектирования, ее отличия от концептуальной модели. Стадии проектирования, их краткая характеристика.
- •18 Билет
- •Задачи, решаемые на стадии эскизного проектирования. Понятие архитектуры пс.
- •Проблема выбора архитектуры. Влияние архитектуры на качественные характеристики пс.(?)
- •19 Билет
- •Понятие модуля и модульного программирования. Преимущества модульного подхода к разработке по.
- •Модули как средство физического структурирования по. Свойства модулей.(?)
- •20 Билет
- •Задачи, решаемые на стадии детального проектирования. Цели и задачи проектирования пользовательского интерфейса. Ответ
- •21 Билет
- •Понятие шаблона. Классификация шаблонов. Стандарт описания шаблонов. Ответ
- •22 Билет
- •Идентификация методов программных классов. Диаграммы классов, способы отображения отношений ассоциации и зависимости. Пример диаграммы классов.
- •23 Билет
- •Тестирование и отладка программного средства. Стадии тестирования и их характеристика. Основные принципы тестирования. Тесты и тестовые наборы. Понятие тестового покрытия.
- •24 Билет
- •Отладочное тестирование.(?)
- •Соотношение структурного и функционального подходов. Примеры реализации.
- •25 Билет
- •Интеграционное тестирование. Виды интеграционного тестирования. Критерии полноты тестовых наборов.
- •Регрессионное тестирование. Критерии завершения отладочного тестирования.
- •26 Билет
- •1.Системное тестирование. Виды системного тестирования. Критерии полноты тестовых наборов Ответ
- •27 Билет
- •28 Билет
- •29 Билет
- •30 Билет
- •1.Понятие версии программного продукта и системы контроля версий. Модели версионирования, их сравнение.
- •31 Билет
- •32 Билет
- •33 Билет
- •34 Билет Документирование процесса разработки. Типы документов управления Ответ
- •35 Билет Документирование программного продукта. Документация сопровождения, ее назначение и состав. Пользовательская документация, ее назначение и состав. Ответ
28 Билет
Понятие автоматизированного тестирования. Автотесты. Достоинства и недостатки автоматизированного тестирования. Средства автоматизированного тестирования.
Ответы
Возрастание роли тестирования в процессе разработки ПО потребовало замены традиционного «ручного» тестирования автоматизированным, основанным на использовании специальных инструментальных средств
Основная идея автоматизированного тестирования заключается в использовании автотестов – записанных на специальных скриптовых языках действий по проверке качества программ
Современные средства автоматизации позволяют вести запись действий тестировщика и создавать заготовку для автотеста
Преимущества
Экономия времени – программа-робот гораздо быстрее перебирает тестовые варианты, чем любой человек
Исключение человеческого фактора – вероятность совершения ошибки при выполнении человеком рутинных операций достаточно высока
Отсутствие необходимости в графическом пользовательском интерфейсе – на ранних этапах развития программного продукта интерфейс, как правило, еще не согласован; это существенно также при тестировании обмена данными по протоколам
Наличие инструментария фиксации ошибок и результатов – это позволяет моделировать различные ошибочные ситуации, строить любые отчеты и диаграммы
Возможность эмулировать многопользовательскую работу – если рабочей нормой считается одновременное обращение к приложению нескольких тысяч пользователей, то средства автоматизации являются единственным способом решить проблему нагрузочного тестирования
Недостатки
Временные затраты на создание, поддержку и тестирование (!) тестов – автоматизированное тестирование всегда начинается с тестирования вручную, поскольку необходимо показать роботу, как, что и с чем он делает
Неприменимость к некоторым объектам, оцениваемым субъективно – с помощью автомата нельзя протестировать, например, эргономику интерфейса приложения
Необходимость программистских навыков у тестировщика – настоящая профессиональная автоматизация тестирования невозможна без работы непосредственно с кодом тестового скрипта
Чувствительность к среде, программному и аппаратному окружению тестируемого приложения - один и тот же тест одной и той же версии повторно может проходить совершенно иначе, чем в первый раз
Средства автоматизации
Чтобы робот-тестировщик мог выполнить необходимую работу, необходимо:
построить репозиторий с подробным описанием всех тестируемых объектов;
записать библиотеку функций, методов или элементарных действий с объектами (если не подходят стандартные методы);
создать скрипт, содержащий описание тестовых шагов, логики теста и глобальных переменных
29 Билет
Утилита модульного тестирования NUnit. Средства описания тестов. Утверждения, параметры утверждений.
Ответ
утилиты, позволяющие сразу запустить все тесты и увидеть результат
Одной из наиболее популярных из них является свободно распространяемая утилита nUnit
Основными элементами описания тестов являются утверждения(assertions) и директивы (directives)
Утверждения
Утверждения представляют собой гипотезы, высказываемые тестировщиком относительно результатов выполнения того или иного теста
Если гипотеза подтвердилась, то начинает выполняться следующий тест (либо тестирование завершается), иначе возникает ошибка
Все утверждения являются статическими методами класса Assert и, обычно, содержит два параметра – ожидаемый результат и действительный:
Assert.AssMethod(expected, actual);
Примеры утверждений:
Assert.AreEqual(expected, fMB1.Subtract(fMB2));
Assert.IsTrue(fMB1.Multiply(0).IsZero);
Assert.Greater( x, y );
StringAssert.IsMatch( “Hello!”, MyStr );
Однако для каждого метода существуют перегружаемые варианты, которые содержат дополнительные параметры, позволяющие сформировать строку сообщения