Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Федеральное агентство по образованию

Владивостокский государственный университет экономики и сервиса

МЕТРОЛОГИЯ И КАЧЕСТВО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Учебная программа дисциплины

по направлению подготовки

230200.62 Информационные системы

Владивосток

Издательство ВГУЭС

2014

ББК **.**

Учебная программа по дисциплине «Метрология и качество программного обеспечения» составлена в соответствии с требованиями ГОС ВПО. Предназначена для студентов направления 230200.62 Информационные системы

Составитель: , доцент, кафедра информационных систем и прикладной информатики

Утверждена на заседании кафедры ИСПИ от 01.01.2001 г., протокол № 9

Утверждена на заседании Учёного совета института ИИБС от 01.01.2001г., протокол № 7

© Издательство Владивостокского
государственного университета
экономики и сервиса, 2014

ВВЕДЕНИЕ

Контроль за производственным процессом разработки программ и его результатами является ключевым видом деятельности на современном предприятии, производящем программное обеспечение на заказ. В силу специфики такого продукта, как программное обеспечение, для оценки эффективности процесса и качества конечного продукта применяются особые методы. Комплекс мероприятий, направленных на количественную оценку эффективности работы компании, называется программой измерений компании. Программа измерений выполняется как в рамках отдельных проектов, осуществляемых компанией, так и в рамках определённых видов деятельности компании. На крупных предприятиях программа измерений осуществляется специальным отделом по обеспечению качества (SQA – Software Quality Assurance team).

НЕ нашли? Не то? Что вы ищете?

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

Вышеизложенные положения о специфике разработки программных средств и были положены в основу программы дисциплины «Метрология и качество программного обеспечения»

1.  ОРГАНИЗАЦИОННО-МЕТОДИЧЕСКИЕ УКАЗАНИЯ

1.1  Цели освоения учебной дисциплины

Целью изучения дисциплины "Метрология и качество программного обеспечения" является теоретическая и практическая подготовка студентов в области программирования в такой степени, чтобы они могли выбирать необходимые подходы для организации программирования как производственного процесса и осуществлять эффективный контроль за данным процессом с точки зрения обеспечения максимального качества разрабатываемых программных средств в различных разрезах. Основные задачи изучения дисциплины:

·  формирование у студентов знаний о сущности измерений, сопутствующих разработке программ;

·  ознакомление с базовыми приёмами и методами осуществления программы измерений в производственном процессе программирования;

·  выработка практических навыков правильных оценок качества программного обеспечения;

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

1.2 Перечень компетенций, приобретаемых

при изучении дисциплины

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

- основные метрики, связанные с обеспечением процесса разработки программного обеспечения;

- основные подходы к обеспечению и оценке качества программного обеспечения.

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

- анализировать и разрабатывать производственный процесс разработки программного обеспечения;

- обосновывать выбор метрик, сопровождающих процесс разработки программного обеспечения;

- реализовывать разработанную программу измерений;

- вырабатывать рекомендации по изменению производственного процесса с целью повышения качества программного обеспечения;

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

1.3 Основные виды занятий и особенности их проведения

Объем и сроки изучения дисциплины:

Для студентов четвертого курса направления «Информационные системы» и курс читается в весеннем семестре в объеме 136 учебных часов, из них аудиторных – 51 час. На самостоятельное изучение дисциплины студентам выделяется 85 часов. Итоговая аттестация по курсу — экзамен.

1.4 Виды контроля и отчетности по дисциплине

Контроль успеваемости студентов осуществляется в соответствии с рейтинговой системой оценки знаний студентов.

Текущий контроль предполагает:

- проверку уровня самостоятельной подготовки студента при выполнении индивидуального задания;

- опросы и дискуссии по основным моментам изучаемой темы.

Промежуточный контроль предусматривает:

- проведение контрольных работ по блокам изученного материала;

- тестирование остаточных знаний (предварительные аттестации).

Итоговый контроль знаний студентов осуществляется при проведении экзамена в форме компьютерного тестирования.

2.  СТРУКТУРА И СОДЕРЖАНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ

2.1 Темы лекций

Тема 1. Критерии качества программного обеспечения.

Теоретические аспекты обеспечения качества программных средств. Критерии качества программного обеспечения: сложность, корректность, надёжность, трудоёмкость.

Тема 2. Метрическая теория программ и процесса их разработки

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

Тема 3. Вычислительная сложность

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

Тема 4. Корректность программ

Понятия формальной, детерминированной, стохастической, динамической, корректности программ. Корректность и тестирование. Понятие об экстремальном программировании. Эталоны, методы измерений и проверки корректности.

Тема 5. Надежность программ

Теоретические аспекты обеспечения надёжности программ, методы оценки надёжности. Надёжность и тестирование. Основные подходы количественной оценки надёжности программ.

Тема 6. Внешнее описание программных средств

Понятие внешнего описания, его назначение и роль в обеспечении качества программного средства. Определение требований к программному средству. Спецификация качества программного средства. Основные примитивы качества программного средства. Функциональная спецификация программного средства. Контроль внешнего описания. Роль внешнего описания в обеспечении качества.

Тема 7. Архитектура программных средств

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

Тема 8. Практические аспекты обеспечения качества программ при написании кода. Стандарты программирования

Обеспечение стандартами процесса разработки программных средств. Характеристика методов оценки качества программного средства с точки зрения его аттестации.

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

Тема 1. Описание процесса разработки в терминах понятий жизненного цикла

Тема 2. Анализ сложности алгоритмов

Тема 3. Моделирование метрик процесса разработки

Тема 4. Моделирование метрик, связанных с качеством

Тема 5. Разработка внешнего описания программных средств

Тема 6. Анализ стандартов разработки программ на языках высокого уровня

Тема 7. Разработка тестов

Тема 8. Тестирование и моделирование метрик процесса тестирования

3.  МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ИЗУЧЕНИЮ КУРСА

3.1.  Перечень и тематика самостоятельных работ студентов по дисциплине

1.  Доклад на тему «Источники ошибок в программных средствах»

2.  Доклад на тему «Критерии качества программных средств»

3.  Доклад на тему «Модели жизненного цикла разработки программных средств»

4.  Доклад на тему «Основные метрики процесса эффективности процесса разработки ПО»

5.  Доклад на тему «Стандарты и хорошие практики кодирования на языках высокого уровня»

6.  Доклад на тему «Принципы организации и проведения инспекций рабочих продуктов»

7.  Доклад на тему «Модель зрелости организации СММ»

8.  Доклад на тему «Программистский жаргон, связанный с разработкой ПО»

3.2.  Контрольные вопросы для самостоятельной оценки качества освоения учебной дисциплины

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. Понятие языково-ориентированной инструментальной среды программирования

28. Понятие компьютерной технологии программирования.

29. Понятие инструментальной системы технологии программирования.

30. Понятие языково-зависимой инструментальной системы технологии программирования

31. Модель перевода и источники ошибок при разработке программных

средств.

32. Специфические особенности разработки программных средств.

33. Жизненный цикл программного средства.

34. Определение требований к программному средству.

35. Спецификация качества программного средства

36. Функциональная спецификация программного средства.

37. Контроль внешнего описания программного средства.

38. Табличный подход к спецификации семантики функций. Метод таблиц решений.

39. Основные классы архитектур программных средств.

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

41. Методы разработки структуры программ.

42. Метод целенаправленной конструктивной реализации.

43. Структурное программирование и пошаговая детализация. Понятие о псевдокоде.

44. Правила для установления свойств составного и условного операторов. Доказать.

45. Инвариант цикла. Правило для установления свойств оператора цикла. Доказать.

46. Понятие о завершаемости выполнения программы. Правило для установления завершаемости выполнения цикла.

47. Заповеди отладки программных средств.

48. Автономная отладка и тестирование программного средства.

49. Комплексная отладка и тестирование программного средства.

50. Обеспечение устойчивости программного модуля.

51. Обеспечение защиты от влияния «чужих» программ.

52. Обеспечение защиты от несанкционированного доступа к программным средствам и защиты от взлома защиты.

53. Обеспечение легкости применения программного средства.

54. Обеспечение эффективности программного средства.

55. Обеспечение сопровождаемости программного средства.

56. Виды документов программного средства.

57. Структура управления разработкой программного средства.

58. Особенности внешнего описания программных средств при объектном подходе к разработке.

59. Инструментальные среды разработки и сопровождения программных средств. Принципы их классификации.

60. Инструментальные системы технологии программирования и их общая архитектура.

3.3.  Методические рекомендации по организации СРС

Для студентов в качестве самостоятельной работы предполагается подготовка докладов и сообщений, выполнения домашних заданий, групповая работа над заданиями по решению учетных задач в КИС.

3.4.  Рекомендации по работе с литературой

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

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

4.  УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ

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

1.  Ф. Крачтен. Введение в RATIONAL UNIFIED PROCESS. – М.: Изд. Дом «Вильямс», 2008.

2.  М. Бен-Ари. Языки программирования. Практический сравнительный анализ. – М.: Мир, 2010.

3.  -Посадов. Конфигурации программ. Рецепты безболезненных изменений. – М.: «Малип», 1994.

4.  , Е. Н Филиппов. Мобильность программ и данных в открытых информационных системах. - М.: Научная книга, 2007.

5.  . Введение в технологию программирования (конспект лекций). - М.: "ДИАЛОГ-МГУ", 2008.

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

1.  Б. Боэм, Дж. Браун, Х. Каспар и др. Характеристики качества программного обеспечения. - М.: Мир, 1981. - С. 61-87.

2.  Г. Майерс. Надежность программного обеспечения. - М.: Мир, 1980. - С. 78-91.

3.  . Управление разработкой программных средств. Методы, стандарты, технология. – М.: Финансы и статистика, 1993.

4.1.  Полнотекстовые базы данных – нет

4.2.  Интернет-ресурсы

1. Система управления проектами JIRA http://www. /software/jira/overview/project-management

2. Система поддержки процесса разработки ПО JIRA https://confluence. /display/JIRA051/JIRA+Documentation;jsessionid=FCC3DEBD3524635FF141B22CE738AA16

5.  МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ

а) программное обеспечение: MS Office, языки программирования

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

6.  СЛОВАРЬ ОСНОВНЫХ ТЕРМИНОВ

Ошибка (software error) — в программе имеется ошибка, если она не выполняет того, что разумно ожидать от нее пользователю.

Дефект программы (defect) - не соответствие программы своей функциональной спецификации.

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

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

Легкость применения - это характеристики ПС, которые позволяют минимизировать усилия пользователя по подготовке исходных данных, применению ПС и оценке полученных результатов, а также вызывать положительные эмоции определенного или подразумеваемого пользователя.

Эффективность - это отношение уровня услуг, предоставляемых ПС пользователю при заданных условиях, к объему используемых ресурсов.

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

Мобильность - это способность ПС быть перенесенным из одной среды (окружения) в другую, в частности, с одного компьютера на другой.