Программа дисциплины Управление качеством программного обеспечения для направлений 080700. 62 Бизнес-информатика - umotnas.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
Программа дисциплины Технологии экстремального программирования для... 1 178.32kb.
Программа дисциплины Культурология для направления 080700. 62 «Бизнес-информатика»... 1 190.36kb.
Бизнес-информатика степень (квалификация) — магистр бизнес-информатики... 1 255.43kb.
Программа дисциплины Управление данными для направления 080500. 8 1436.15kb.
Программа дисциплины «Управление данными» 1 328.64kb.
Рабочая программа учебной дисциплины «Всеобщее управление качеством»... 1 138.76kb.
Программа дисциплины Информационные технологии управления знаниями... 1 212.85kb.
Программа дисциплины " Технологии экстремального программирования"... 1 139.73kb.
Программа дисциплины и управление жизненным циклом для направления... 1 332.6kb.
Программа дисциплины Распределенные информационные системы для направления... 1 219.99kb.
Программа дисциплины «Теоретическая информатика» 1 97.94kb.
Постановлением Госатомнадзора России от 21 декабря 1999г. №4 Введены... 1 213.39kb.
Викторина для любознательных: «Занимательная биология» 1 9.92kb.

Программа дисциплины Управление качеством программного обеспечения для направлений - страница №1/1




Правительство Российской Федерации
Нижегородский филиал

Федерального государственного автономного образовательного учреждения высшего профессионального образования
"Национальный исследовательский университет
"Высшая школа экономики"



Программа дисциплины
Управление качеством программного обеспечения
для направлений 080700.62 Бизнес-информатика,

010500.62 Прикладная математика и информатика

подготовки бакалавра

Авторы программы:

Крюков А.К., к.ф.-м.н., alkryukov@gmail.com

Моренов А.Ю., oleg.morenov@gmail.com

Пряхин И.В., igor.pryakhin@gmail.com

Одобрена на заседании кафедры информационных систем и технологий

«___»_____________2012г.

Зав. кафедрой Бабкин Э.А.


Рекомендована секцией УМС «Информатика» «___»_____________2012г.

Председатель Визгунов А.Н.


Утверждена УМС НИУ ВШЭ – Нижний Новгород «___»_____________2012г.

Председатель Петрухин Н.С. _________________________________

Нижний Новгород, 2012

Настоящая программа не может быть использована другими подразделениями университета и другими вузами без разрешения кафедры-разработчика программы.

1Область применения и нормативные ссылки


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

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

Программа разработана в соответствии с:


  • ГОС ВПО по направлению подготовки - Прикладная математика и информатика, а также ГОС ВПО по направлению подготовки - бизнес-информатика.

2Цели освоения дисциплины


Целями освоения дисциплины управление качеством программного обеспечения являются разработка методов и механизмов мониторинга и оценки качества процессов производственной деятельности, связанной с созданием и использованием ИС, а также разработка и внедрение процессов управления качеством производственной деятельности, связанной с ПО.

3Компетенции обучающегося, формируемые в результате освоения дисциплины


В результате освоения дисциплины студент должен:

  • Знать этапы и процессы промышленного создания программного обеспечения, факторы, влияющие на качество создаваемой информационной системы, виды тестирования на различных этапах создания ПО, различные методики тестирования и методики оценки качества конечной информационной системы.

  • Уметь правильно выбирать стратегию тестирования создаваемого программного обеспечения, определять набор инструментальных средств необходимых на этапе создания информационной системы для обеспечения контроля качества на всех этапах разработки.

  • Иметь навыки (приобрести опыт) работы с инструментальными средствами совместной разработки и контроля версий создаваемого программного обеспечения, средствами контроля качества исходного кода, средствами контроля обнаруженных дефектов, средствами автоматизации тестирования различных типов программных продуктов, построения тестовых планов и отчетов по результатам тестирования.


4Место дисциплины в структуре образовательной программы


Для направлений бизнес-информатика и прикладная математика и информатика настоящая дисциплина является факультативом.

Для освоения учебной дисциплины, студенты должны владеть следующими знаниями и компетенциями:



  • Языки и методы программирования

  • Операционные системы

  • Компьютерные сети

Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин:

  • Менеджмент и управление проектами в сфере ИТ

5Тематический план учебной дисциплины







Название раздела

Всего часов

Аудиторные часы

Самостоя­тельная работа

Лекции

Семинары

Практические занятия

1

Введение в цикл разработки ПО.

2

2










2

Введение. Основные определения и идеология.

6

2







4

3

Процесс тестирования. Дефекты.

10

2




4

4

4

Цикл разработки и этапы тестирования.

8

2




2

4

5

Методики тестирования

8

2




2

4

6

Виды тестирования

6

2




0

4

7

Планирование тестирования

6

2




0

4

8

Основы разработки тестовых сценариев

8

2




2

4

9

Тестирование GUI.

10

2




4

4

10

Основы тестирования производительности

6

2




0

4

11

Тестирование безопасности

6

2




0

4

12

Основы автоматизация тестирования

12

2




6

4

13

Автоматизация тестирования по типам приложений

12

2




6

4

14

Оценка качества тестирования

8

2




2

4




Итого

108

28




28

52



6Формы контроля знаний студентов


Тип контроля

Форма контроля

1 год

Параметры

1

2




Текущий

Контрольная работа

4

7


Планы и результаты тестирования подготовленных на практических занятиях программ

Эссе




7

2-3 тыс.слов

Итоговый

Зачет






8

Подготовленная стратегия и конкретный план тестирования написанной ранее курсовой работы



6.1Критерии оценки знаний, навыков


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

Оценки по всем формам текущего контроля выставляются по 10-ти балльной шкале.


7Содержание дисциплины


Тема 1. Введение в цикл разработки ПО

  • Понятие производственного цикла программного обеспечения

  • Понятие качества продукта

  • Проблема обеспечения качества ПО

  • Примеры известных ошибок


Тема 2. Введение. Основные определения и идеология

  • Тестирование как способ повышения качества ПО

  • Понятие тестирования

  • Цели тестирования

  • Краткая история тестирования

  • Основные заблуждения о тестировании (простота, что-то можно и не тестировать, бессистемный случайный процесс, разработчики не должны разбираться в тестировании …)


Тема 3. Процесс тестирования. Дефекты.

  • Определение процесса тестирования и его место в производственном процессе

  • Составляющие процесса тестирования: изучение требований, планирование, создание тестовых документов: (тестовый план, спецификация), исполнение, анализ тестовых результатов

  • Основы построения тестовой стратегии

  • Тестовая система. Критерии выбора тестовых систем.

  • Понятие дефекта. Жизненный цикл дефекта.

  • Классификация ошибок

  • Понятия приоритета, критичности

  • Требования к хорошему описанию дефекта. Примеры хороших и плохих дефектов.

  • Средства работы с дефектами. Пример - Bugzilla



Тема 4. Цикл разработки и этапы тестирования

  • Цикл разработки ПО с основными вехами(milestones)

    • Модель PLC (Waterfall)

    • Модель Agile

  • План обеспечения качества (Quality plan)

  • Этапы тестирования.

    • Unit тестирование ( + рассказать о инспекциях кода)

    • Check-in тестирование

    • Интеграционное тестирование

    • Регрессионное тестирование

    • Верификация и QA тестирование

    • Валидация продукта

    • User Testing

    • Beta Programs

    • Post-release тестирование


Тема 5. Методики тестирования

  • Методы тестирования:

    • Черный ящик. Преимущества и недостатки

    • Белый ящик. Преимущества и недостатки

    • Серый ящик

  • Позитивные тесты

  • Негативные тесты

  • Понятие покрытия. Способы измерения покрытия


Тема 6. Виды тестирования

  • Функциональное тестирование

  • Стресс тестирование

  • Тестирование производительности

  • Тестирование безопасности

  • Тестирование совместимости

  • Тестирование локализации и интернационализации


Тема 7. Планирование тестирования

  • Разработка стратегии тестирования

  • Определение предмета тестирования

  • Определение способа тестирования

  • Тестовая среда (Test Environment)

  • Нештатные состояния среды выполнения

  • Разработка плана тестирования


Тема 8. Основы разработки тестовых сценариев

  • Требования к хорошему тесту (определены входные, выходные данные, воспроизводимость).

  • Классы эквивалентности

  • Граничные значения

  • Примеры неудачных тестовых сценариев

  • Примеры хороших тестовых сценариев


Тема 9. Тестирование GUI.

  • Особенности тестирования

  • Функциональное тестирование

  • Тестирование удобства интерфейса пользователя (Usability Testing)

  • Инструменты

  • Тестирование специальных возможностей (Accessibility Testing)


Тема 10. Основы тестирования производительности

  • Основные проблемы при тестировании производительности

  • Методы тестирования производительности

  • Способы устранения разброса значений

  • Тестирование деградации производительности

  • Инструменты


Тема 11. Тестирование безопасности

  • Зачем необходимо тестирование безопасности

  • Отличие от других видов тестирования (функциональности, стабильности, …)

  • Анализ угроз

  • Декомпозиция системы. Определение точек входа.

  • Типовые уязвимости

  • Инструменты


Тема 12. Основы автоматизация тестирования

  • Зачем нужна автоматизация?

  • Возможности автоматизации тестирования

  • Задачи тестирования, где желательно использовать автоматизацию. Задачи, где автоматизация бессильна или невыгодна

  • Примеры средств автоматизации тестирования


Тема 13. Автоматизация тестирования по типам приложений

  • Command line

  • GUI

    • Координатный метод

    • Распознавание образов

    • Распознавание элементов управления

    • Использование accessibility механизмов

  • Web


Тема 14. Оценка качества тестирования

  • Отчет о результатах тестирования

  • Тестовые метрики.

  • Оценка эффективности тестов

  • Критерии выпуска продуктов, связанные с тестированием



8Порядок формирования оценок по дисциплине


Преподаватель оценивает работу студентов на семинарских и практических занятиях: активность студентов при выполнении поставленных практических заданий. Правильность решения поставленных для самостоятельного решения практических задач. Оценки за работу на семинарских и практических занятиях преподаватель выставляет в рабочую ведомость. Результирующая оценка по 10-ти балльной шкале за работу на семинарских и практических занятиях определяется перед промежуточным или итоговым контролем - Оаудиторная.

Преподаватель оценивает самостоятельную работу студентов: Оценки за самостоятельную работу студента преподаватель выставляет в рабочую ведомость. Результирующая оценка по 10-ти балльной шкале за самостоятельную работу определяется перед промежуточным или итоговым контролем – Осам. работа.


Накопленная оценка за текущий контроль учитывает результаты студента по текущему контролю следующим образом:

Онакопленная = 0,3·Отекущий + 0,3·Оаудит.работа + 0,4·Осам. работа

где Отекущий = 0,5·Ок/р + 0,5·Оэссе
Результирующая оценка за итоговый контроль в форме зачета выставляется по следующей формуле, где Озачет – оценка за работу непосредственно на зачете:
Оитоговый = 0,4·Озачет + 0,6·Онакопленная

Способ округления оценок – арифметический.

В диплом ставится оценка за итоговый контроль, которая является результирующей оценкой по учебной дисциплине.

9Оценочные средства для текущего контроля и аттестации студента

9.1Тематика заданий текущего контроля


Примерные вопросы/ заданий для контрольных работ:

  1. Определение дефекта

  2. Виды тестирования

  3. Жизненный цикл дефекта

  4. Этапы тестирования

  5. Классы эквивалентности

  6. Сценарии тестирования

  7. Инструменты автоматизации тестирования

10Учебно-методическое и информационное обеспечение дисциплины

10.1Базовые учебники


Майерс Г. Сандлер К., Баджет Т. Искусство тестирования программ, 3-е издание. - М.: Вильямс, 2012.

10.2Основная литература


Салливан Э. Время – деньги. Создание команды разработчиков программного обеспечения. - М.: Русская Редакция, 2002

Lee Copeland, A Practitioner's Guide to Software Test Design, Artech House, 2004.


http://books.google.com/books?id=dMX_C8z9PfMC



10.3Дополнительная литература


Jez Humble, David Farley, Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation, Addison-Wesley, 2010

Канер Сэм, Фолк Д., Нгуен Е.К. Тестирование программного обеспечения. Фундаментальные концепции менеджмента бизнес-приложений – К. ДиаСофт, 2001.



10.4Источники в Интернете:


Michael Bolton, Develop Sense: Project Estimation and Black Swans (Part 5): Test Estimation

http://www.developsense.com/blog/2010/10/project-estimation-and-black-swans-part-5-test-estimation/

Joel Spolsky, Joel on Software: Top Five (Wrong) Reasons You Don't Have Testers



http://www.joelonsoftware.com/articles/fog0000000067.html

Joel Spolsky, Joel on Software: The Joel Test: 12 Steps to Better Code



http://www.joelonsoftware.com/articles/fog0000000043.html

Как Google тестирует ПО



http://habrahabr.ru/post/135776/

http://googletesting.blogspot.com/

http://habrahabr.ru/hub/testing/

http://www.intuit.ru/department/se/testing/

http://software-testing.ru/

http://www.devcomplexsoft.ru/tseli-i-etapy-testirovaniya-programm_item175.html

http://www.protesting.ru/testing/testtypes.html

http://www.protesting.ru/testing/levels/integration.html

http://www.intuit.ru/department/se/testing/5/2.html

http://software.intel.com/ru-ru/blogs/2010/02/05/2003055

http://www.ict.edu.ru/ft/005645/62322e1-st09.pdf

10.5Программные средства


Для успешного освоения дисциплины, студент использует следующие программные средства:

  • MS Visual Studio 2010, Subversion, Tortoise SVN, BugZilla, Selenium, AutoIT.



11Материально-техническое обеспечение дисциплины


Персональные компьютеры на базе процессоров не ниже Intel Core 2 Duo c 2Gb RAM и HDD 200Gb с установленной ОС Microsoft Windows 7 и MS Visual Studio 2010, Для совместной работы необходим сервер Microsoft Windows 2008.

Авторы программы Крюков А.К.

Моренов А.Ю.

Пряхин И.В.