Открыто

Тестирование программного обеспечения [2021] [Высшая инженерная школа СПбПУ] [Н. Андреева, Е. Галимова, С. Городецкая, Ю. Заковряшин, М. Мещеряков]

Тема в разделе "Курсы по программированию", создана пользователем Toxich, 11 дек 2020.

Цена: 90000р.-90%
Взнос: 8187р.

Основной список: 12 участников

Резервный список: 5 участников

  1. 11 дек 2020
    #1
    Toxich
    Toxich ЧКЧлен клуба
    Тестирование программного обеспечения [2021]
    Высшая инженерная школа СПбПУ (Санкт-Петербургский Политехнический Университет)
    Наталья Андреева, Екатерина Галимова, Светлана Городецкая, Юрий Заковряшин, Максим Мещеряков, Александр Щукин, Ян Юшин


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

    Программа направлена на формирование знаний, умений и навыков в области оценки качества работы программного обеспечения.

    1. Основные термины и понятия из области разработки программного обеспечения;
    2. Структуру процесса разработки программного обеспечения;
    3. Цели, задачи и основные результаты составляющих процесса разработки программного обеспечения
    4. Основные виды деятельности, которые осуществляются в процессе разработки программного обеспечения;
    5. Основные роли в процессе разработки программного обеспечения, их особенности и основные требования к исполнителям этих ролей;
    6. Основные особенности, преимущества и ограничения, а также критерии применимости различных технологий разработки программного обеспечения;
    7. Критерии применимости различных технологий разработки программного обеспечения;
    8. Цели и задачи процесса тестирования;
    9. Типовую структуру и основные составляющие процесса тестирования;
    10. Основные термины и понятия, связанные с процессом тестирования;
    11. Основные виды деятельности, осуществляемые в процессе тестирования;
    12. Основные роли участников процесса тестирования, их обязанности и основные требования к ним;
    13. Основные виды стандартной документации, их назначение и структуру;
    14. Основные методы тестирования, а также их основные особенности;
    15. Общие принципы тестирования документации;
    16. Основы функционального и не функционального тестирования;
    17. Основы организации и проведения процесса тестирования;
    18. Основные принципы разработки и оптимизации схемы тестирования;
    19. Основные виды инструментов, применяемых для поддержки процесса тестирования и сопровождения жизненного цикла дефектов;
    20. Основные практические приёмы проведения функционального и нефункционального тестирования.
    21. Основные термины и понятия, связанных с процессом оптимизации тестирования;
    22. Общие подходы к оптимизации процесса тестирования, их преимущества и ограничения;
    23. Основные методы сокращения объема тестирования;
    24. Общие методы сокращения сроков тестирования;
    25. Основные принципы организации процесса автоматизации тестирования;
    26. Общую методику выбора и внедрения средств автоматизации тестирования;
    27. Основные риски автоматизации.

    Тема 1. Теоретические основы информатики и программирования.
    1.1 Программное и аппаратное обеспечение ЭВМ
    1.2 Языки программирования: уровень и тип языка программирования, характеристики.
    1.3 Характеристики разрабатываемой программы.
    1.4 Основные принципы обработки команд программы исполнителем (компьютером).
    Тема 2. Информация и данные.
    2.1 Информация и данные.
    2.2 Устройство памяти и переменные.​

    Практические занятия:
    Решение практических задач по теме системы счисления, объявления переменных.
    Тема 3. Алгоритмы и их представление.
    3.1 Основные термины и определения.
    3.2 Алгоритм и программа.

    Практические занятия:
    Решение практических задач по темам создание и тексто-графическое представление алгоритмов, объявление алгоритмов.
    Тема 4. Базовые техники разработки программного обеспечения.
    4.1 Язык программирования и его атрибуты.
    4.2 Комментарии.
    4.3 Переменные.
    4.4 Оператор.

    Практические занятия:
    Объявление переменных, техника написания программного кода.
    Тема 5. Базовые операции с переменными.
    5.1 Оператор присваивания.
    5.2 Типы переменных Типы переменных и их характеристики.
    5.3 Константы Понятие константы.
    5.4 Указатель или ссылка на переменную.

    Практические занятия:
    Формирование выражений с использованием математических, логических, строковых операций, приоритет операций.
    Тема 6. Оператор условия и оператор выбора.
    6.1 Оператор условия.
    6.2 Оператор выбора.

    Практические занятия:
    Приоритет операций, применение операторов условия, выбора.
    Тема 7. Операторы цикла.
    7.1 Оператор цикла с предусловием и постусловием.
    7.2 Оператор цикла со счетчиком Цикл со счетчиком.

    Практические занятия:
    Применение операторов цикла.
    Тема 8. Процедурный подход в программировании.
    8.1 Декомпозиция задачи. Декомпозиция задачи на подзадачи.
    8.2 Виды подпрограмм и их использование и объявление.

    Практические занятия:
    Разработка подпрограмм, декомпозиция задачи.
    Тема 9. Разработка функций.
    9.1 Разработка функций.
    9.2 Использование аргументов.

    Практические занятия:
    Разработка функций, передача аргументов в функцию.
    Тема 10. Организация данных в программе. Массивы.
    10.1 Роль организации данных в программе..
    10.2 Понятие массива.
    10.3 Массивы одномерные и многомерные.
    10.4 Понятие индекса и элемента массива.
    10.5 Подсчет объема памяти занимаемой массивом.
    10.6 Типовые задачи с массивами: доступ к элементу, обход элементов, инициализация элементов

    Практические занятия:
    Объявление массивов, алгоритмы работы с массивами
    Тема 11. Структура.
    11.1 Пользовательский тип данных (структура).
    11.2 Объявление и использование пользовательского типа.
    11.3 Совместное использование пользовательских типов данных и массивов.

    Практические занятия:
    Объявление структур, алгоритмы работы со структурами
    Тема 12. Обработка текстовой информации.
    12.1 Представление текстовой информации.
    12.2 Понятие строка.
    12.3 Различные способы организации строковых данных.
    12.4 Работа с отдельными символами.
    12.5 Наиболее употребительные функции для работы со строками.

    Практические занятия:
    Алгоритмы работы со строками.
    Тема 13. Использование интегрированной среды разработки.
    13.1 Базовые операции.
    13.2 Получение справки.

    Практические занятия:
    Использование средств MS Visual Studio.
    Инструменты отладки и получение справки.
    Тема 14. Разработка проектов с использованием Windows Forms.
    14.1 Разработка пользовательского интерфейса программы
    14.2 Использование форм для разработки пользовательского интерфейса.
    14.3 Добавление элементов управления. Понятие объекта и класса.
    14.4 Настройка свойств, использование методов, обработка событий.

    Практические занятия:
    Разработка проекта с использованием оконного интерфейса.
    Тема 15. Использование системы контроля версий.
    15.1 Использование системы контроля версий
    15.2 Понятие системы контроля версий.
    15.3 Репозиторий.
    15.4 Запись изменений.
    15.5 Основы ветвления.
    15.6 Основы слияния.
    15.7 Выполнение задачи в системе контроля версий.

    Практические занятия:
    Использование системы контроля версий.
    Тема 16. Итоговоая аттестация
    Тема 1. Информационные системы с базами данных.
    1.1 Концепция баз данных и СУБД.
    1.2 Введение в модели данных.
    Тема 2. Основы методологии проектирования БД.
    2.1 Предметная область базы данных и ее модели.
    2.2 Основы методологии проектирования БД.
    2.3 Модели данных.
    2.4 Инфологическое проектирование баз данных.
    Тема 3. Реляционная модель данных и основы реляционной алгебры.
    3.1 Терминология и основы реляционной алгебры.
    3.2 Типы отношений.
    3.3 Ключи.
    3.4 Функциональные зависимости.
    Тема 4. Основы языка SQL.
    4.1 Введение в язык SQL.
    4.2 Основные возможности языка.
    4.3 Стандартизация языка SQL.
    4.4 Использование языка SQL.
    Тема 5. Использование инструкций DDL.
    5.1 Объекты базы данных.
    5.2 Создание, изменение и удаление таблиц.
    5.3 Определение характеристик столбцов.
    Тема 6. Инструкции DML и манипулирование данными.
    6.1 Типы операций манипулирования данными.
    6.2 Использование операторов INSERT, UPDATE и DELETE.
    Тема 7. Основные инструкции DQL. Извлечение данных из нескольких таблиц. Использование подзапросов и SET-операторов.
    7.1 Извлечение данных.
    7.2 Фильтрация и сортировка данных в выборке.
    7.3 Типы объединений.
    7.4 Использование объединений.
    7.5 Использование подзапросов.
    7.6 Использование операторов работы с множествами (SET-операторов).
    Тема 8. Создание отчётов, содержащих агрегированные данные.
    8.1 Типы групповых функций.
    8.2 Создание и фильтрация групп.​
    Тема 1. Основные понятия и определения
    1.1. Цель и задачи курса.
    • Основные термины и понятия.
    • Цель и задачи курса.
    • Обзор рассматриваемых тем.
    • Ожидаемые результаты.
    • Основные понятия: информационно-вычислительная (компьютерная) система, программное обеспечение, программный проект, программный продукт.
    • Основные характеристики программного продукта.
    • Круг лиц, заинтересованных в реализации проекта.
    • Жизненный цикл программного продукта.
    • Стандарт жизненного цикла программного продукта.
    1.2. Технологии промышленной разработки программного обеспечения
    • Определение технологии промышленной разработки программного продукта.
    • Общий процесс разработки программного продукта.
    • Обзор основных составляющих процесса разработки программного продукта.
    • Классические модели разработки программных продуктов: каскадная модель, итерационная модель, инкрементальная модель, эволюционная модель.
    • Унифицированный процесс разработки (USDP). Обзор гибких (Agile) технологий разработки программных продуктов
    Тема 2. Разработка требований к ПП
    2.1. Процесс разработки требований
    • Определение термина «требование к программному продукту».
    • Цель и задачи процесса разработки требований.
    • Необходимость разработки требований.
    • Виды требований.
    • Уровни требований.
    • Общая структура процесса разработки требований
    2.2. Выявление требований
    • Цель и задачи процесса выявления требований.
    • Основные источники требований.
    • Классы пользователей.
    • Глоссарий предметной области.
    • Выявление сущностей предметной области, её операций и атрибутов.
    • Основные методы выявления требований.
    2.3. Анализ требований
    • Цель и задачи процесса анализа требований.
    • Систематизация и классификация требований.
    • Приоритеты требований. Достоверность требований.
    • Вероятность изменения требований.
    • Основные атрибуты требований.
    • Матрица зависимостей требований.
    • Документирование требований.
    2.4. Сопровождение требований
    • Цель и задачи процесса сопровождения требований.
    • Причины и источники изменения требований.
    • Реализация изменений требований.
    Практические занятия
    1. Выявление требований к программному продукту
    2. Анализ требований к программному продукту
    Тема 3. Проектирование ПП
    3.1. Процесс проектирования
    • Цель и задачи процесса проектирования программного продукта.
    • Необходимость проектирования программного продукта.
    • Основные объекты проектирования.
    • Структура процесса проектирования.
    • Архитектурное проектирование.
    • Детальное проектирование.
    • Основные результаты проектирования.
    • Документирование результатов проектирования.
    3.2. Общие приёмы проектирования
    • Составление словаря предметной области и словаря системы.
    • Выбор архитектуры системы.
    • Определение ролей и обязанностей компонентов системы.
    • Разработка интерфейсов системы.
    Тема 4. Реализация ПП
    4.1. Процесс реализации
    • Цель и задачи реализации программного продукта.
    • Типовая структура процесса реализации программного продукта.
    • Планирование процесса реализации.
    • Управление процессом реализации.
    • Анализ результатов реализации.
    • Определение требований качества.
    • Основные артефакты реализации.
    4.2. Основные технологии реализации
    • Основные модели реализации.
    • Стиль программирования.
    • Стандарт кодирования.
    • Разработка «снизу-вверх».
    • Разработка «сверху-вниз».
    • Инспектирование кода.
    • Документирование исходного кода.
    Тема 5. Сопровождение ПП
    5.1. Процесс сопровождения
    • Цель и задачи процесса сопровождения программного продукта.
    • Типовая структура процесса сопровождения программного продукта.
    • Планирование и управление процессом сопровождения ПП.
    • Анализ результатов сопровождения.
    • Основные метрики процесса сопровождения.
    • Качество сопровождения.
    • Стандарты сопровождения.
    5.2. Основные технологии сопровождения ПП
    • Виды работ по сопровождению ПП.
    • Исправление дефектов.
    • Выявление новых требований.
    • Рефакторинг. Реинжениринг.
    Тема 6. Итоговая аттестация
    6.1. Итоговый обзор
    • Заключительный обзор рассмотренных тем.
    • Порядок сдачи зачёта.
    • Оценка результатов.Зачёт по курсу
    Тема 1. Общие понятия и определения
    1.1 Вводные замечания
    1.2 Краткое введение в технологии разработки программного обеспечения
    1.3 Тестирование как часть процесса разработки программных продуктов
    1.4 Тестирование как специальность
    Тема 2. Методология тестирования
    2.1 Общая методика тестирования. Обзор методов тестирования
    2.2 Метод тестирования «белого ящика»
    2.3 Метод тестирования «черного ящика»
    2.4 Схема тестирования

    Практические работы:
    1. Пример тестирования «белым ящиком»
    2. Пример тестирования «черным ящиком»
    Тема 3. Тестирование документации
    3.1 Вводные положения
    3.2 Тестирование требований к программному продукту
    3.3 Тестирование исходного кода программы
    3.4 Тестирование структур данных

    Практические работы:
    1. Разработка спецификации теста и проведение тестирования требований.
    2. Разработка спецификации теста и проведение тестирования исходного кода
    3. Разработка спецификации теста и проведение тестирования формата файла
    Тема 4. Основы функционального тестирование
    4.1 Функциональное тестирование как отдельный вид тестирования
    4.2 Общие приёмы и схемы функционального тестирования

    Практические работы:
    1. Разработка спецификации теста и проведение тестирования функциональности приложения
    Тема 5. Основы нефункционального тестирования
    5.1 Основные виды нефункционального тестирования
    5.2 Общие приёмы и схемы нефункционального тестирования

    Практические работы:
    Разработка спецификации теста и проведение тестирования приложения на удобство использования
    Тема 6. Документирование процесса тестирования
    6.1 Общие цели и задачи документирования процесса тестирования
    6.2 Основные виды документов
    6.3 Другие виды документов

    Практические работы:
    1. Разработка проекта теста;
    2. Разработка спецификации теста;
    3. Разработка отчёта о проведении теста;
    4. Разработка описания дефекта.
    Итоговая аттестация
    Тема 1. Общая практика тестирования
    1.1. Задачи и особенности курса. Основные термины и понятия.
    1.2. Технологии тестирования
    1.3. Планирование работ и разработка тестов
    1.4. Выполнение тестов и анализ результатов тестирования
    Тема 2. Инструменты тестирования
    2.1. Обзор вспомогательных интсрументов тестирования
    2.2. Общая поддержка процесса тестирования
    2.3. Поддержка процесса тестирования
    2.4. Сопровождение жизненного цикла дефекта

    Практические работы:
    1. Создание тестового плана. Определение задач тестирования. Определение ролей участников процесса тестирования
    2. Специкация теста. Спецификация тестовой процедуры
    3. Выполнение теста и фиксация его результатов
    Тема 3. Разработка схемы тестирования
    3.1. Назначение и использование схемы тестирования
    3.2. Разработка схемы тестирования
    3.3. Документирование схемы тестирования

    Практические работы:
    1. Составление схемы тестирования
    Тема 4. Практические методы тестирования
    4.1. «Классический» подход к тестированию
    4.2. «Гибкое» тестирование
    4.3. Разработка на основе тестирования
    4.4. Некоторые приёмы функционального тестирования
    4.5. Тестирование пользовательского интерфейса
    4.6. Тестирование сетевого взаимодействия
    4.7. Тестирование взаимодействия с базами данных и файлового ввода/вывода
    4.8. Тестирование веб-приложений и веб-служб
    4.9. Тестирование производительности и нагрузочное тестирование

    Практические работы:
    1. Пример «классического» проведения тестирования
    2. Пример тестирования по технологии «гибкого тестирования»
    3. Разработка и документирование теста в рамках разработки на основе тестирования
    4. Пример разработки и выполнения функционального теста
    5. Пример разработки и выполнения теста удобства использования
    6. Пример разработки и выполнения теста взаимодействия с базой данных
    7. Пример разработки и выполнения теста для веб-приложения
    8. Пример разработки и выполнения нагрузочного теста
    Итоговая аттестация
    Тема 1. Вводные замечания
    1.1. Процесс оптимизации тестирования
    1.2. Определение цели и задачи оптимизации
    Тема 2. Оптимизация управления
    2.1. Постановка задачи оптимизации управления тестированием
    2.2. Основные методы оптимизации процесса управления тестированием

    Практические работы
    1. Вычисление метрик процесса управления.
    Тема 3. Сокращение объема тестирования
    3.1. Объём тестирования
    3.2. Основные методы сокращения объема тестирования

    Практические работы
    1. Выделение классов эквивалентности
    2. Выделение критичной функциональности
    3. Разработка и оптимизация схемы тестирования
    Тема 4. Сокращение сроков тестирования
    4.1. Тестовый цикл
    4.2. Основные методы сокращения сроков тестирования

    Практические работы
    1. Предварительная подготовка к тестированию
    2. Сокращение сроков тестирования за счёт инверсии зависимостей
    3. Пример применения технологии «быстрого тестирования».
    Тема 5. Организация процесса автоматизации тестирования
    5.1. Организация процесса автоматизации тестирования
    5.2. Основные направления автоматизации
    5.3. Обзор некоторых инструментов автоматизации тестирования
    Тема 6. Реализация процесса автоматизации тестирования
    6.1. Подготовка к автоматизации процесса тестирования
    6.2. Автоматизация процесса тестирования
    6.3. Автоматизация тестов
    6.4. Комплексная автоматизация процесса тестирования

    Практические работы
    1. Измерение простейших метрик процесса тестирования
    2. Формализация тестовой процедуры
    3. Пример разработки и выполнения автоматического теста
    4. Разработка требований к автоматизированной тестовой платформе
    5. Методика выбора инструмента автоматизации
    Итоговая аттестация

    Продажник
     
    1 человеку нравится это.
  2. Последние события

    1. allioha
      allioha не участвует.
      8 ноя 2023
    2. kaban66
      kaban66 не участвует.
      11 мар 2023
    3. Просветленный
      Просветленный участвует.
      9 июн 2022
    4. kaban66
      kaban66 участвует.
      17 фев 2022

Поделиться этой страницей