Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
090102_Методы программирования.doc
Скачиваний:
8
Добавлен:
09.11.2019
Размер:
353.28 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА

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

высшего профессионального образования

"МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ПУТЕЙ СООБЩЕНИЯ»

(МИИТ)

СОГЛАСОВАНО: УТВЕРЖДАЮ:

Директор ИУИТ

Вакуленко С.П.

___________________ __________________________

Зав.кафедрой_______________ «___» _____________ 20__ г.

(подпись, ф.и.о)

«___» _____________ 20__ г.

Кафедра Математического обеспечения автоматизированных систем управления

Автор Малинский Станислав Вальтерович

Учебно-методический комплекс по дисциплине Методы программирования Специальность 090102 Компьютерная безопасность

Утверждено на заседании

Учебно-методической комиссии института

Протокол №________

«____» _______________ 2011 г

Председатель УМК Ларина Т.Б.

_____________

Утверждено на заседании кафедры

Протокол №_______

«___» _____________ 2011 г.

Зав. кафедрой Доенин В.В.

_____________

Москва 2011 г.

Автор-составитель:

Малинский Станислав Вальтерович, к.Т.Н., доцент, доцент кафедры

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

Учебно-методический комплекс по дисциплине «Методы программирования» составлен в соответствии с требованиями Государственного образовательного стандарта высшего профессионального образования по специальности 090102 «Компьютерная безопасность».

Дисциплина входит в федеральный цикл общепрофессиональных дисциплин и является обязательной для изучения

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА

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

высшего профессионального образования

"МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ПУТЕЙ СООБЩЕНИЯ»

(МИИТ)

СОГЛАСОВАНО: УТВЕРЖДАЮ:

Директор ИУИТ

Вакуленко С.П.

___________________ __________________________

Зав.кафедрой_______________ «___» _____________ 20__ г.

(подпись, ф.и.о)

«___» _____________ 20__ г.

Кафедра Математического обеспечения автоматизированных систем управления

Автор Малинский Станислав Вальтерович

Рабочая учебная программа по дисциплине Методы программирования Специальность 090102 Компьютерная безопасность

Утверждено на заседании

Учебно-методической комиссии института

Протокол №________

«____» _______________ 2011 г

Председатель УМК Ларина Т.Б.

______________

Утверждено на заседании кафедры

Протокол №_______

«___» _____________ 2011 г.

Зав. кафедрой Доенин В.В.

_______________

Москва 2011 г.

Цели и задачи изучения дисциплины

Дисциплина "Методы программирования" имеет целью обучить студентов принципам построения и анализа алгоритмов, оценки качества программного обеспечения, способствовать развитию логического мышления, формированию научного мировоззрения и прививать склонность к творчеству.

Задачи дисциплины - дать основы:

  • структур данных;

  • оценки сложности работы алгоритма;

  • оценки качества программных средств;

  • методов (алгоритмов) сортировки и поиска;

  • методов имитационного моделирования;

  • методов тестирования и отладки программных средств;

  • методов разработки и построения надежных программных средств

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

  • технологии разработки программного обеспечения

Требования к уровню освоения дисциплины

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

Иметь представление:

  • о структурах данных;

  • о способах оценки сложности работы алгоритмов;

  • о способах оценки качества программных средств;

  • о возможности модификации алгоритмов с учетом конкретных практических задач;

  • о методах разработки, тестирования и отладки надежных программных средств

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

  • технологии разработки программного обеспечения

Знать:

  • основные характеристики качества программных средств;

  • основные метрики для оценки сложности программных средств;

  • методы (алгоритмы) сортировки и поиска информации;

  • методы тестирования и отладки программных средств;

  • методы повышения надежности программных средств;

  • особенности каскадной и спиральной моделей ЖЦ ПО

  • основные стандарты, регламентирующие различные аспекты ЖЦ ПО

Уметь:

  • сформулировать задачу и использовать для ее решения известные методы;

  • применять полученные знания к различным предметным областям;

Иметь навыки:

  • написания и отладки программ обработки многомерных массивов;

  • написания и отладки программ, реализующих алгоритмы сортировки и поиска;

  • написания и отладки программ, реализующих численные методы решения широкого класса задач (экстраполяция и интерполяция, интегрирование, решение уравнений и др.) ;

  • оценки метрологических характеристик разработанных программ;

  • применения методов повышения надежности программных средств

  • оценки и выбора конкретной модели ЖЦ ПО.

Объем дисциплины и виды учебной работы

Форма обучения: очная

Семестр: 4, 5

Вид учебной работы

Количество часов

Всего по уч.плану

В т.ч. по семестрам

1

2

Аудиторные занятия:

102

60

42

лекции

51

34

17

практические

занятия

34

17

17

индивидуальные

занятия

17

9

8

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

78

40

38

ВСЕГО ЧАСОВ НА ДИСЦИПЛИНУ

180

100

80

Текущий контроль (количество и вид текущего контроля)

Контр. раб. №№1,2

Курсовая работа (курсовой проект)

Не предусмотрена

Не предусмотрена

Виды промежуточного контроля

(экзамен, зачет)

зачет

экзамен

Содержание курса

Раздел 1. Методы, алгоритмы и программы

Тема 1. Программирование и методы программирования.

Содержание темы: Программирование. Алгоритмы и их свойства (массовость, результативность, дискретность). Операторы и операнды. Определения понятий и их взаимосвязь. Данные и информация. Структуры данных. Элементы, одномерные, двумерные и многомерные массивы.

Тема 2. Практическое программирование.

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

Тема 3. Простейшие программы.

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

Тема 4. Методы сортировки .

Содержание темы: методы сортировки (пузырька, перестановок и пр.) и их применение в практических задачах. Алгоритмы. Программы.

Раздел 2. Метрики ПО и их использование при сравнении методов,

алгоритмов и программ

Тема 5. Метрики ПО .

Содержание темы: основные метрики ПО: размер программы, объем программы, сложность потока управления, сложность потока данных, интеллектуальность ПО.

Тема 6. Применение метрик при анализе ПО .

Содержание темы: практические приемы оценки и содержательного анализа метрик ПО. Необходимые практические договоренности при вычислении метрик. Применение метрик при сравнении различных вариантов ПО.

Раздел 3. Стандартные приемы программирования при решении практических задач

Тема 7. Вычисление суммы и произведения элементов массива .

Содержание темы: организация вычисления суммы и произведения элементов одномерного массива; организация вычисления суммы и произведения элементов одномерного массива, удовлетворяющих заданным условиям, применение изученных схем при вычислении суммы и произведения элементов числового ряда. Оценка метрологических характеристик написанных программ.

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

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

Тема 9. Построение моделей методом наименьших квадратов

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

Тема 10. Численное интегрирование

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

Тема 11. Численные методы решения уравнений

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

Раздел 4. Методы решения задач с многомерными массивами

Тема 12. Методы обработки двумерных и многомерных массивов

Содержание темы: двумерные и многомерные массивы в научных исследованиях. Стандартные приемы анализа элементов массивов при решении задач поиска максимума, сортировки, выбора элементов по заданным условиям. Разработка алгоритмов и программ

Тема 13. Операции с матрицами.

Содержание темы: двумерные и многомерные массивы и их обработка. Сложение и умножение матриц.. Разработка алгоритмов и программ, реализующих сложение и умножение матриц. Оценка метрологических свойств программ.

Тема 14. Методы решения системы линейных уравнений

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

Раздел 5. Имитационное моделирование

Тема 15. Случайные величины и процессы

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

Тема 16. Имитационное моделирование производственных процессов

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

Тема 17. Имитационное моделирование ПО

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

Раздел 6. Тестирование , отладка и проектирование программных средств

Тема 18. Контроль, тестирование и отладка ПО

Содержание темы: понятия «контроль», «тестирование» и «отладка». Опытная и промышленная эксплуатация ПО. Виды контроля ПО: визуальный, статический, динамический. Тестирование: функциональное и структурное. Анализ и синтез.

Тема 19. Проектирование ПО.

Содержание темы: Технология программирования. Методология программирования. Жизненный цикл ПО. Модели жизненного цикла ПО. Документирование разработки ПО. Системная архитектура ПО. Функциональная структура ПО. Стандарты, регламентирующие различные аспекты ЖЦ ПО ( ISO/IEC 12207, ISO/IEC 15288, ISO/IEC 15504, IEEE 1074-1997)

Тема 20. Качество ПО и его оценка.

Содержание темы: Понятие «качество» и его определения (по ГОСТ 28195 и ГОСТ Р ИСО/МЭК 9126). Критерии качества ПО. Функциональность, надежность, легкость применения, эффективность, сопровождаемость, мобильность ПО. Основные атрибуты для каждой из характеристик качества ПО. Применение оценок качества ПО при сравнении различных вариантов ПО.

Тема 21. Модульное программирование.

Содержание темы: Понятие «модуль». Основные атрибуты модуля. Классы прочности модулей: прочность по совпадению, прочность по логике, прочность по классу, процедурно-прочный модуль, коммуникационно-прочный модуль, информационная прочность, функциональная прочность. . Сцепление модулей: сцепление по содержимому, сцепление по общей области, сцепление по управлению, сцепление по формату, сцепление по данным. Принципы Хольта.