Модульное тестирование
Модульное тестирование - процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы.
Цель модульного тестирования — изолировать отдельные части программы и показать, что по отдельности эти части работоспособны.
Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это позволяет достаточно быстро проверить, не привело ли очередное изменение кода к регрессии, то есть к появлению ошибок в уже оттестированных местах программы, а также облегчает обнаружение и устранение таких ошибок.
20.Интеграционное тестирование
Интеграционное тестирование — одна из фаз тестирования программного обеспечения, при которой отдельные программные модули объединяются и тестируются в группе.
Обычно интеграционное тестирование проводится после модульного тестирования и предшествует системному тестированию.
Интеграционное тестирование в качестве входных данных использует модули, над которыми было проведено модульное тестирование, группирует их в более крупные множества, выполняет тесты, определённые в плане тестирования для этих множеств, и представляет их в качестве выходных данных и входных для последующего системного тестирования.
Целью интеграционного тестирования является проверка соответствия проектируемых единиц функциональным. Тестирование этих проектируемых единиц — объединения, множества или группы модулей — выполняется через их интерфейс, с использованием тестирования «чёрного ящика».
21.Системное тестирование
Системное тестирование — это тестирование программного обеспечения (ПО), выполняемое на полной, интегрированной системе, с целью проверки соответствия системы исходным требованиям. Системное тестирование относится к методам тестирования чёрного ящика, и, тем самым, не требует знаний о внутреннем устройстве системы.
Основной задачей системного тестирования является проверка как функциональных, так и не функциональных требований к системе в целом. При этом выявляются дефекты, такие как неверное использование ресурсов системы, непредусмотренные комбинации данных пользовательского уровня, несовместимость с окружением, непредусмотренные сценарии использования, отсутствующая или неверная функциональность, неудобство использования и т.д. Для минимизации рисков, связанных с особенностями поведения системы в той или иной среде, во время тестирования рекомендуется использовать окружение максимально приближенное к тому, на которое будет установлен продукт после выдачи.
Можно выделить два подхода к системному тестированию:
-на базе требований
Для каждого требования пишутся тестовые случаи (test cases), проверяющие выполнение данного требования.
-на базе случаев использования
На основе представления о способах использования продукта создаются случаи использования системы (Use Cases). По конкретному случаю использования можно определить один или более сценариев. На проверку каждого сценария пишутся тест кейсы (test cases), которые должны быть протестированы.
22.Эффективность и оптимизация программы
Оптимизация программы - преобразования, которые позволяют сделать ее более эффективной, т.е. сделать ее более экономной по памяти и/или более быстрой по выполнению тех же функций, что и до оптимизационного преобразования.
Два частных критерия оптимизации - время выполнения программы и объем используемой ею памяти. Известно, что сокращение времени выполнения программы, как правило, можно добиться за счет увеличения объема используемой памяти и наоборот.
Существуют два подхода к оптимизации программ: чистка и перепрограммирование. Оба подхода имеют как достоинства, так и недостатки:
Первый подход заключается в исправлении очевидных небрежностей в исходной программе
Второй подход состоит в переделке исходной программы.
В каждом конкретном случае повышение эффективности программы зависит от ряда факторов, таких, как стоимость улучшения программы, частота ее использования, относительная скорость выполнения различных операций в машине, от способа компилирования различных операций и т.п.
23.Перечислить виды программных документов
К программным относят документы, содержащие сведения, необходимые для разработки, сопровождения и эксплуатации программного обеспечения.
основные программные документы:
Спецификация должна содержать перечень и краткое описание назначения всех файлов программного обеспечения
Ведомость держателей подлинников должна содержать список предприятий, на которых хранятся подлинники программных документов.
Текст программы должен содержать текст программы с необходимыми комментариями.
Описание программы должно содержать сведения о логической структуре и функционировании программы.
Ведомость эксплуатационных документов должна содержать перечень эксплуатационных документов на программу
Формуляр должен содержать основные характеристики программного обеспечения, комплектность и сведения об эксплуатации программы.
Описание применения должно содержать сведения о назначении программного обеспечения, области применения, применяемых методах, классе решаемых задач, ограничениях для применения, минимальной конфигурации технических средств.
Руководство системного программиста должно содержать сведения для проверки, обеспечения функционирования и настройки программы на условия конкретного применения.
Руководство программиста должно содержать сведения для эксплуатации программного обеспечения.
Руководство оператора должно содержать сведения для обеспечения процедуры общения оператора с вычислительной системой в процессе выполнения программного обеспечения.
Описание языка должно содержать описание синтаксиса и семантики языка.
Руководство по техническому обслуживанию должно содержать сведения для применения тестовых и диагностических программ при обслуживании технических средств.
Программа и методика испытаний должны содержать требования, подлежащие проверке при испытании программного обеспечения, а также порядок и методы их контроля.
Пояснительная записка должна содержать информацию о структуре и конкретных компонентах программного обеспечения, в том числе схемы алгоритмов, их общее описание, а также обоснование принятых технических и технико-экономических решений. Составляется на стадии эскизного и технического проекта.
Прочие документы могут составляться на любых стадиях разработки
24.Пояснительная записка
Пояснительная записка должна содержать всю информацию, необходимую для сопровождения и модификации программного обеспечения: сведения о его структуре и конкретных компонентах, общее описание алгоритмов и их схемы, а также обоснование принятых технических и технико-экономических решений.
Содержание пояснительной записки по стандарту должно выглядеть следующим образом:
• введение;
• назначение и область применения;
• технические характеристики;
• ожидаемые технико-экономические показатели;
• источники, используемые при разработке.
В разделе Введение указывают наименование программы и документа, на основании которого ведется разработка.
В разделе Назначение и область применения указывают назначение программы и дают краткую характеристику области применения.
Раздел Технические характеристики должен содержать следующие подразделы:
• постановка задачи, описание применяемых математических методов и допущений и ограничений, связанных с выбранным математическим аппаратом;
• описание алгоритмов и функционирования программы с обоснованием принятых решений;
• описание и обоснование выбора способа организации входных и выходных данных;
• описание и обоснование выбора состава технических и программных средств на основании проведенных расчетов или анализов.
В разделе Ожидаемые технико-экономические показатели указывают технико-экономические показатели, обосновывающие преимущество выбранного варианта технического решения.
В разделе Источники, использованные при разработке, указывают перечень научно-технических публикаций, нормативно-технических документов и других научно-технических материалов, на которые есть ссылки в исходном тексте.
Пояснительная записка составляется профессионалами в области разработки программного обеспечения и для специалистов того же уровня квалификации.
25. РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
Появление такого документа явилось следствием широкого распространения персональных компьютеров, работая на которых пользователи совмещают в своем лице трех указанных специалистов.
Составление документации для пользователей имеет свои особенности, связанные с тем, что пользователь, как правило, не является профессионалом в области разработки программного обеспечения.
Рекомендации по написанию подобной программной документации:
• учитывайте интересы пользователей - руководство должно содержать все инструкции, необходимые пользователю;
• излагайте ясно, используйте короткие предложения;
• избегайте технического жаргона и узкоспециальной терминологии, если все же необходимо использовать некоторые термины, то их следует пояснить;
• будьте точны и рациональны - длинные и запутанные руководства обычно никто не читает, например, лучше привести рисунок формы, чем долго ее описывать.
Руководство пользователя, как правило, содержит следующие разделы:
• общие сведения о программном продукте;
• описание установки;
• описание запуска;
• инструкции по работе (или описание пользовательского интерфейса);
• сообщения пользователю.
Раздел Общие сведения о программе обычно содержит наименование программного продукта, краткое описание его функций, реализованных методов и возможных областей применения.
Раздел Установка обычно содержит подробное описание действий по установке программного продукта и сообщений, которые при этом могут быть получены.
В разделе Запуск, как правило, описаны действия по запуску программного продукта и сообщений, которые при этом могут быть получены.
Раздел Инструкции по работе обычно содержит описание режимов работы, форматов ввода-вывода информации и возможных настроек.
Раздел Сообщения пользователю должен содержать перечень возможных сообщений, описание их содержания и действий, которые необходимо предпринять по этим сообщениям.
26. РУКОВОДСТВО СИСТЕМНОГО ПРОГРАММИСТА
По ГОСТ 19.503-79 руководство системного программиста должно содержать всю информацию, необходимую для установки программного обеспечения, его настройки и проверки работоспособности. Кроме того, как указывалось выше, в него часто включают и описание необходимого обслуживания, которое раньше приводилось в руководстве оператора (ГОСТ 19.505-79) и/или руководстве по техническому обслуживанию (ГОСТ 19.508-79). В настоящее время данную схему используют для составления руководства системному администратору.
Руководство системного программиста должно содержать следующие разделы:
• общие сведения о программном продукте,
• структура,
• настройка,
• проверка,
• дополнительные возможности,
• сообщения системному программисту.
Раздел Общие сведения о программе должен включать описание назначения и функций программы, а также сведения о технических и программных средствах, обеспечивающих выполнение данной программы (например, объем оперативной памяти, требования к составу и параметрам внешних устройств, требования к программному обеспечению и т. п.).
В разделе Структура программы должны быть приведены сведения о структуре программы, ее составных частях, о связях между составными частями и о связях с другими программами.
В разделе Настройка программы должно быть приведено описание действий по настройке программы на условия практического применения.
В разделе Проверка программы должно быть приведено описание способов проверки работоспособности программы, например контрольные примеры.
В разделе Дополнительные возможности должно быть приведено описание дополнительных возможностей программы и способов доступа к ним.
В разделе Сообщения системному программисту должны быть указаны тексты сообщений, выдаваемых в ходе выполнения настройки и проверки программы, а также в ходе ее выполнения, описание их содержания и действий, которые необходимо предпринять по этим сообщениям.