10.03.01 Б3.Б.10 Технологии и методы

advertisement
1.
аспорт программы дисциплины
1.1.
Область применения программы
Рабочая программа дисциплины является частью основной образовательной
программы высшего образования
10.03.01 «Информационная безопасность» в
соответствии с ФГОС ВПО по направлению подготовки 10.03.01 «Информационная
безопасность»
(квалификация (степень) «бакалавр»), утвержденным
Приказом
Министерства образования и науки Российской Федерации от 28 октября 2009 г. N 496.
1.2 Место дисциплины (модуля) в структуре основной образовательной
программы
Дисциплина Б3.Б.10 «Технологии и методы программирования» относится к
профессиональному циклу основной образовательной программы по направлению
подготовки 10.03.01 «Информационная безопасность» базовой части.
1.3 Цели и задачи дисциплины – перечень планируемых результатов
обучения по дисциплине (модулю), соотнесенных с планируемыми результатами
освоения: (в соответствии с ООП ВО)
Цель дисциплины – изучение парадигм и методов программирования,
ознакомление с методами разработки программ и основными приемами
программирования на языках высокого уровня (Visual C++) с помощью инструментов
визуальной разработки программ (MS Visual Studio) для овладения знаниями в области
программирования подсистем информационной безопасности объектов.
Задачи дисциплины:
- ознакомление с основными подходами к организации процесса разработки
программного обеспечения;
- обучение базовым структурам данных и основных алгоритмов сортировки и
поиска;
- освоение основных методов оценки вычислительной сложности алгоритмов.
- подбора адекватных задаче структур данных по обеспечению информационной
безопасности и их реализации на современных программных средствах.
Формируемые компетенции
Осваиваемые
знания,
умения, владения
Код
Наименование
Общекультурные компетенции (ОК)
ОК-11
способность к саморазвитию, З - современные средства разработки и
самореализации, приобретению анализа программного обеспечения на
новых знаний, повышению своей языках высокого уровня;
квалификации и мастерства
методы программирования и методы
разработки
эффективных
алгоритмов
решения прикладных задач
У - формализовать поставленную задачу;
выбирать необходимые инструментальные
средства для разработки программ в
различных операционных системах и средах
В - профессиональной терминологией;
основными подходами к организации
процесса разработки программного
обеспечения
профессиональные компетенции (ПК) по видам профессиональной деятельности
Проектно-технологическая деятельность:
ПК-10
способность
администрировать З - основы работы с объектами, файлами,
ПК-15
подсистемы
информационной библиотеками стандартных программ;
безопасности объекта
современные средства разработки и анализа
программного обеспечения на языках
высокого уровня;
базовые структуры данных;
оценки временной сложности работы
классических алгоритмов сортировки и
поиска
У - составлять, тестировать, отлаживать и
оформлять программы на языках высокого
уровня, включая объектноориентированные; разбивать решение
сложной задачи на последовательность
более простых задач;
В - профессиональной терминологией;
способами оценки сложности работы
алгоритмов;
основными подходами к организации
процесса разработки программного
обеспечения; навыками построения
вычислительных систем,
инструментальными средствами и
системами программирования для решения
профессиональных задач в области
информационной безопасности.
организационно-управленческая деятельность:
способность
применять З - современные средства разработки и
программные
средства анализа программного обеспечения на
системного,
прикладного
и языках высокого уровня; основные
специального назначения
структуры и инструментарий, которые
применяются в языках программирования
С\С++ (Win32, CLR);
методы программирования и методы
разработки эффективных алгоритмов
решения прикладных задач;
базовые структуры данных;
основные алгоритмы сортировки и поиска и
способы их эффективной реализации;
оценки временной сложности работы
классических алгоритмов сортировки и
поиска; основы работы с объектами,
файлами,
библиотеками
стандартных
программ
У - формализовать поставленную задачу;
выбирать необходимые инструментальные
средства для разработки программ в
различных операционных системах и
средах; определять структуры данных при
проектировании алгоритмов в процессе
решения задач; использовать библиотеки
С\С++; проектировать, разрабатывать и
отлаживать эффективные алгоритмы и
ПК-16
способность
использовать
инструментальные средства и
системы программирования для
решения профессиональных задач
ПК-17
способность
к
программной
реализации алгоритмов решения
типовых
задач
обеспечения
информационной безопасности
программы с использованием современных
технологий и концепций программирования
В - профессиональной терминологией;
основными подходами к организации
процесса разработки программного
обеспечения; навыками моделирования и
анализа вычислений, технологиями,
инструментальными средствами и
системами программирования для решения
профессиональных задач в области
информационной безопасности
З - современные средства разработки и
анализа программного обеспечения на
языках высокого уровня;
методы программирования и методы
разработки эффективных алгоритмов
решения прикладных задач;
базовые структуры данных;
основные алгоритмы сортировки и поиска и
способы их эффективной реализации;
оценки временной сложности работы
классических алгоритмов сортировки и
поиска; основные принципы различных
парадигм программирования.
У - формализовать поставленную задачу;
выбирать необходимые инструментальные
средства для разработки программ в
различных операционных системах и
средах; использовать библиотеки С\С++;
проектировать, разрабатывать и отлаживать
эффективные алгоритмы и программы с
использованием современных технологий и
концепций программирования
В - профессиональной терминологией;
способами оценки сложности работы
алгоритмов;
З - современные средства разработки и
анализа программного обеспечения на
языках высокого уровня;
методы программирования и методы
разработки эффективных алгоритмов
решения прикладных задач;
базовые структуры данных;
основные алгоритмы сортировки и поиска и
способы их эффективной реализации;
оценки временной сложности работы
классических алгоритмов сортировки и
поиска;
библиотеками
стандартных
программ
У - формализовать поставленную задачу;
составлять, тестировать, отлаживать и
оформлять программы на языках высокого
уровня, включая объектноориентированные; разбивать решение
сложной задачи на последовательность
более простых задач; использовать
библиотеки С\С++;
В - профессиональной терминологией;
способами оценки сложности работы
алгоритмов;
основными подходами к организации
процесса разработки программного
обеспечения; технологиями,
инструментальными средствами и
системами программирования для решения
профессиональных задач в области
информационной безопасности
1.4 Связь с другими дисциплинами учебного плана
Перечень действующих и предшествующих
дисциплин
Информатика, Основы информационной
безопасности, Аппаратные средства
вычислительной техники, Языки
программирования, Математика, Теория
вероятностей и математическая статистика,
Дискретная математика, Теория информации
Перечень последующих дисциплин, видов
работ
Программно-аппаратные средства защиты
информации,
Информационные
технологии,
Методы
разработки
защищенных программных систем, Защита
информационных
процессов
в
компьютерных системах, Программные
коды
деструктивного
воздействия,
Криптографические
методы
защиты
информации, Сети и системы передачи
информации.
2. Содержание дисциплины (модуля), способы и методы учебной деятельности
преподавателя
Методы обучения – система последовательных, взаимосвязанных действий,
обеспечивающих усвоение содержания образования, развитие способностей
обучающихся, овладение ими средствами самообразования и самообучения;
обеспечивают цель обучения, способ усвоения и характер взаимодействия преподавателя
и обучающегося; направлены на приобретение знаний, формирование умений, навыков, их
закрепление и контроль.
Монологический (изложение теоретического материала в форме монолога)
М
Показательный (изложение материала с приемами показа)
П
Диалогический (изложение материала в форме беседы с вопросами и ответами)
Д
Эвристический (частично поисковый) (под руководством преподавателя Э
обучающиеся рассуждают, решают возникающие вопросы, анализируют, обобщают,
делают выводы и решают поставленную задачу)
Проблемное изложение (преподаватель ставит проблему и раскрывает доказательно ПБ
пути ее решения)
Исследовательский (обучающиеся самостоятельно добывают знания в процессе И
разрешения проблемы, сравнивая различные варианты ее решения)
Программированный (организация аудиторной и самостоятельной работы ПГ
обучающихся осуществляется в индивидуальном темпе и под контролем специальных
технических средств)
Интерактивные технологии и инновационные методы (методы проблемного И
обучения, исследовательские методы, тренинговые формы, и др.).
И
Другой метод, используемый преподавателем (формируется самостоятельно), при
этом в п.п. 2.1.-2.4. дается его наименование, необходимые пояснения
Приведенные в таблице сокращения обозначения педагогических методов используются
составителем Рабочей программы для заполнения п.п. 2.1., 2.2. и 2.3. в столбце
«Методы».
2.1.
Аудиторные
семинарские)
занятия
(лекции,
лабораторные,
практические,
Модуль 1 «Развитие технологий и методов
программирования»
1-8
1-8
1-2
18
4
9
2
3-4
4
2
5-6
5
3
Лекции
Тема «Технология и методы программирования.
Основные понятия и подходы»
Технология программирования и основные этапы ее
развития. Проблемы разработки сложных программных
систем. Блочно-иерархический подход к созданию
сложных систем. Жизненный цикл и этапы разработки
программного
обеспечения.
Эволюция
моделей
жизненного цикла программного обеспечения. Ускорение
разработки программного обеспечения. Технология RAD.
Оценка качества процессов создания программного
обеспечения.
Тема «Определение требований к программному
обеспечению»
Классификация
программных
продуктов
по
функциональному признаку. Основные эксплуатационные
требования к программным продуктам. Предпроектные
исследования
предметной
области.
Разработка
технического
задания.
Принципиальные
решения
начальных этапов проектирования.
Тема «Проектирование программного обеспечения при
структурном подходе»
Разработка структурной и функциональной схем.
Использование метода пошаговой детализации для
Реализуемые
компетенции
Вид занятия, модуль, тема и краткое содержание
Методы
в том числе в
интерактивной
форме, час.
Кол. час
Неделя
Очная форма обучения
П,
Э,
ПБ,
ИИ,
ПГ
ПК10,
ПК15,
ПК16,
ПК17
П,
Э,
ПБ,
ИИ
ПК15
П,
Э,
ПБ,
ИИ
ПК10,
ПК15,
ПК16
П,
Э,
ПБ,
ИИ
ПК15,
ПК17
7-8
5
1-8
1-2
9
2
3-4
3
5-6
2
7-8
2
2
проектирования структуры программного обеспечения.
Проектирование структур данных. Проектирование
программного обеспечения, основанное на декомпозиции
данных. Case-технологии, основанные на структурных
методологиях анализа.
Тема «Проектирование программного обеспечения
при объектном подходе»
Разработка структуры программного обеспечения при
объектном подходе. Определение отношений между
объектами.
Уточнение
отношений
классов.
Проектирование классов. Компоновка программных
компонентов. Проектирование размещения программных
компонентов для распределенных программных систем.
Особенность
спиральной
модели
разработки.
Реорганизация проекта.
Лабораторные работы
Тема «Технология и методы программирования.
Основные понятия и подходы»
Разработка программы, сочетающей технологию
командной строки WINDOWS с технологиями файловых
потоков для подсчета количества символов в файлах,
перечисленных в командной строке.
Разработка программы, которая создает бинарный
файл, содержащий информацию о товаре (используя
структуру):
наименование,
цена,
вес,
применяя
манипуляторы для форматирования экранного вывода
информации из файла.
Разработка
проекта
CLR.
Windows
Forms
«Калькулятор».
Тема «Определение требований к программному
обеспечению»
Разработка проекта CLR. Windows Forms вычисления
факториала целого положительного числа, используя
рекурсию.
Разработка проекта CLR. Windows Forms перевода
Милей в километры (1 миля =1,609344 км).
Разработка проекта CLR. Windows Forms расчета
стоимости автомобиля в зависимости от выбранной
комплектации:
марка
машины
(ComboBox),
цвет
(RadioButton) и дополнительное оборудование (CheckBox).
Для отображения картинки необходимо использовать
компонент PictureBox.
Разработка проекта CLR. Windows Forms «Расчет
платежей по кредиту» (сумма кредита выплачивается
равными долями, а процент начисляется на сумму остатка
долга). Компоненты: ListView (для отображения результата
расчетов в виде таблицы).
Тема «Проектирование программного обеспечения при
структурном подходе»
Создание проекта «Электронный деканат» в нотации
IDEF0, DFD, IDEF3.
Тема «Проектирование программного обеспечения
П,
Э,
ПБ,
ИИ
ПК15,
ПК17
ПГ
ПК16,
ПК17
ПГ
ПК16,
ПК17
ПГ
ПК16,
ПК17
ПК-
ПГ
1-8
1-2
9
3
3-4
2
5-6
2
7-8
2
при объектном подходе»
Создание проекта «Туристическое агентство» в нотации
UML.
Практические занятия
Тема «Технология и методы программирования.
Основные понятия и подходы»
Основные команды по работе с файлами С/С++.
СLR.
Консоль.
Типы
данных.
Операторы
ввода/вывода (ReadKey, Write, WriteLine). Базовые
конструкции: if, for, foreach. KeyPress, ConsoleKey.
Обработка текста. Array. Сортировка. Обработка элементов
массива (одномерного, двумерного), свойство Length,
генерация случайных чисел, класс Random.
Тема «Определение требований к программному
обеспечению»
СLR. Консоль. Функции. Обращение, фактические,
формальные параметры, перегрузка.
Классы. Private, Public, Protected. Наследование.
Полиморфизм. Инкапсуляция
Тема «Проектирование программного обеспечения при
структурном подходе»
Создание проекта «Электронный деканат» в нотации
IDEF0, DFD, IDEF3.
Тема «Проектирование программного обеспечения
при объектном подходе»
Создание проекта «Туристическое агентство» в нотации
UML.
Модуль 2 «Практическое программирование С++ CLR»
9-18
9-18
9-11
18
5
9
2
12-
5
3
Лекции
Тема «Разработка пользовательских интерфейсов»
Типы пользовательских интерфейсов и этапы их разработки.
Психофизические особенности человека, связанные с
восприятием,
запоминанием
и
обработкой
информации.
Пользовательская и программная модели интерфейса.
Классификации диалогов и общие принципы их
разработки.
Основные
компоненты
графических
пользовательских интерфейсов. Реализация диалогов в
графическом
пользовательском
интерфейсе.
Пользовательские интерфейсы прямого манипулирования
и их проектирование. Интеллектуальные элементы
пользовательских интерфейсов.
Тема «Тестирование программных продуктов»
16,
ПК17
ПГ
ПК16,
ПК17
ПГ
ПК16,
ПК17
ПГ
ПК16,
ПК17
ПК16,
ПК17
ОК11,
ПК10,
ПК15,
ПК16
ПК17
ПГ
П,
Э,
ПБ,
ИИ,
ПГ
П,
Э,
ПБ,
ИИ
ОК11,
ПК15,
ПК16
П,
ПК-
14
1516
4
2
1718
4
2
9-18
9-11
9
3
1214
2
1516
2
1718
2
Виды контроля качества разрабатываемого программного
обеспечения. Ручной контроль программного обеспечения.
Структурное тестирование. Функциональное тестирование.
Тестирования модулей и комплексное тестирование.
Оценочное тестирование.
Тема «Отладка программного обеспечения»
Классификация ошибок. Методы отладки программного
обеспечения.
Методы
и
средства
получения
дополнительной информации. Общая методика отладки
программного обеспечения.
Тема «Составление программной документации»
Виды программных документов. Пояснительная записка.
Руководство пользователя. Руководство системного
программиста.
Основные
правила
оформления
программной документации.
Лабораторные работы
Тема «Разработка пользовательских интерфейсов»
Разработка проекта CLR. Windows Forms «Курс ЦБ»,
которая:
1) добавляет в первую экранную информацию о
текущем курсе доллара; если файла данных в каталоге
приложения нет, программа должна его создать; для ввода
даты используйте компонент DateTimePicker;
2) считывает из файла информацию о текущем курсе
доллара во вторую экранную форму по выделенному
диапазону дат (MonthCalendar) в список (ListBox);
3) отображает динамику изменения информации о
курсе доллара в виде графика, используя методы
DrawString, DrawRectangle, FillRectangle.
Разработка проекта CLR. Windows Forms «Браузер».
Компоненты: PictureBox (для отображения картинки,
желательно в формате GIF), WebBrowser (для работы с
http://), notifyIcon (для отображения Ярлыка программы на
панели задач - трэй), contextMenuStrip (для отображения
Меню на панели задач, вызываемого правой кнопкой мыши
по Ярлыку).
Тема «Тестирование программных продуктов»
Разработка
проекта
CLR.
Windows
Forms
«Телефонный справочник», взаимодействующего с базой
данных. Используйте компоненты: oleDbConnection (для
соединения с базой данных-сервером), oleDbDataAdapter
(для взаимодействия с базой данных через SQL-команды),
dataSet (для хранения информации, полученной из базы
данных), dataGridView (для отображения информации,
полученной из базы данных, а также для выполнения
операций редактирования, добавления и удаления записей).
Тема «Отладка программного обеспечения»
Отладка проекта «Телефонный справочник», написание
пользовательского меню, обработка исключений.
Э,
ПБ,
ИИ
15,
ПК16
П,
Э,
ПБ,
ИИ
ПК15,
ПК16
П,
Э,
ПБ,
ИИ
ПК15
ПГ
ПК16,
ПК17
ПГ
ПК16,
ПК17
ПГ
ПК16,
ПК17
ОК11
Тема «Составление программной документации»
ПГ
Написание программной документации для проекта
9
3
1214
2
1516
2
1718
2
«Телефонный справочник».
Практические занятия
Тема «Разработка пользовательских интерфейсов»
ПГ
CLR. Windows Forms. Элементы управления
ComboBox, RadioButton, CheckBox, PictureBox, ListView,
DateTimePicker; MonthCalendar, ListBox, PictureBox,
WebBrowser, notifyIcon, contextMenuStrip. Свойства,
методы, события.
Тема «Тестирование программных продуктов»
ПГ
CLR. Windows Forms. Элементы управления
oleDbConnection oleDbDataAdapter, dataSet, dataGridView.
Свойства, методы, события.
Тема «Отладка программного обеспечения»
ПГ
Отладка проектов, написание пользовательского меню,
обработка исключений.
Тема «Составление программной документации»
Написание программной документации для проектов.
Неделя
Кол. час
2.2 Внеаудиторная (самостоятельная) учебная работа обучающегося.
Очная форма обучения
Темы, разделы, вынесенные на самостоятельную подготовку,
вопросы и задания к практическим и лабораторным занятиям;
тематика реферативной работы, контрольных работ,
рекомендации по использованию литературы и ЭВМ и др.
1-8
19
1
ПГ
ПК16,
ПК17
ПК16,
ПК17
ПК16,
ПК17
ОК11
Форма
отчетности
9-18
9-11
3
Модуль 1 « Технология и методы программирования. Основные
понятия и подходы»
Понятие технологичности программного обеспечения
доклад
2
3
Модули и их свойства.
доклад
3
3
Нисходящая и восходящая разработка программного обеспечения.
Структурное и «неструктурное» программирование.
доклад
4
3
Средства описания структурных алгоритмов. Стиль
оформления программы
доклад
5
3
Эффективность и технологичность
доклад
6-8
4
918
9
17
Модуль 2 « Практическое программирование С++ CLR»
3
Программирование «с защитой от ошибок». Сквозной структурный
контроль. Классификация ошибок. Примеры
10
3
OLE-механизм в Visual C++. Внедрение.
доклад
11
3
OLE-механизм в Visual C++. Связывание.
доклад
Разработать программу-сервер: сканер портов. Можно использовать текстовый
различные библиотеки (winsock, windows, socket, netinet и др.)
отчет
доклад
1215
16
Разработать программу-браузер: история, поиск, функциональные текстовый
клавиши, обработка ошибок
отчет
Active X-элемент. Свойства, методы, события.
доклад
5
3
2.2 Интерактивные технологии и инновационные методы, используемые в
образовательном процессе
Основаны на использовании современных достижений науки и информационных
технологий. Направлены на повышение качества подготовки путем развития у
обучающихся творческих способностей и самостоятельности (методы проблемного
обучения, исследовательские методы, тренинговые формы, рейтинговые системы
обучения и контроля знаний и др.). Нацелены на активизацию творческого потенциала и
самостоятельности обучающихся и могут реализовываться на базе инновационных
структур (научных лабораторий, центов, предприятий и организаций и др.).
Наименование основных Краткое описание и примеры, использования в Часы
№ форм
модулях (темах), место проведения
1.
Компьютерные
симуляции
2.
Использование
информационных
ресурсов и баз данных
3.
Разбор конкретных
ситуаций
Результаты работы
студенческих
исследовательских групп
4.
№
1.
Все лабораторные работы выполняются в
компьютерных классах университета
(а.201-214, 301-302)
Использование справочной системы Библиотеки
MSDN, расположенной по адресу
http://msdn.microsoft.com/ru-ru/library/ms123401.aspx
(Режим доступа свободный)
Использование
материалов
размещенных
в
локальной сети I:\users\Жилина\ТиМП
Разработка программного кода на конкретных
примерах
Предоставление и защита отчетов о проделанной
работе индивидуально каждым обучающимся (после
изучения каждого Модуля)
3.
Средства обучения
3.1.
Информационно-методические источники
5
5
5
3
Перечень основной и дополнительной учебной литературы, необходимой для
освоения дисциплины (модуля), с указанием наличия в библиотеке;
перечень учебно-методического обеспечения (по всем видам работ)
1. Перечень основной учебной литературы
библиотека.
Методы
программирования.
Учебно- Электронная
http://biblioclub.ru/index.php?page=book&i
методический комплекс. [Электронный ресурс],d=90390. - неограниченный доступ для
М.: Евразийский открытый институт,2011, 319 c. зарегистрированных пользователей
2.
Методы программирования и информатика.
Лабораторный практикум. В 2-х ч. Часть I.
[Электронный ресурс],- Гродно: ГрГУ,2012, 54 c.
3.
Программирование на языке Си. Методические
рекомендации и задачи по программированию.
[Электронный
ресурс],Сибирское
университетское издательство,2003, 160 c.
Электронная
библиотека.
http://biblioclub.ru/index.php?page=book&i
d=134239. - неограниченный доступ для
зарегистрированных пользователей
Электронная
библиотека.
http://biblioclub.ru/index.php?page=book&i
d=57176. - неограниченный доступ для
зарегистрированных пользователей
1.
2.
3.
4.
5.
6.
7.
8.
1.
2. Перечень дополнительной учебной литературы (в т.ч. ресурсы сети «Интернет»)
2.1 Учебники и учебные пособия
Долженко, Алексей Иванович. Современные 70
технологии
программирования.
Разработка
приложений на базе WPF и Silverlight [Текст] :
учеб. для студентов вузов, обучающихся по напр.
080800 "Приклад. информатика (по обл.)" и др.
экон. спец. / А. И. Долженко ; Рост. гос. экон. унт (РИНХ). - Электрон. изд. - Ростов н/Д : Изд-во
РГЭУ (РИНХ), 2011. - 266 с. - 100 экз. - ISBN
978-5-7972-1779-4.
Карминский, Александр Маркович. Методология 1
создания информационных систем [Текст] : учеб.
пособие по дисц. спец. "Менеджмент орг." / А.
М. Карминский, Б. В. Черников. 2-е изд.,
перераб. и доп. - М. : ФОРУМ : ИНФРА-М, 2012.
- 320 с. : ил. - (Высшее образование). - 1000 экз. ISBN 978-5-8199-0494-7 (ФОРУМ). - ISBN 978-516-005195-6 (ИНФРА-М).
библиотека.
Информатика. Математическое и программное Электронная
http://biblioclub.ru/index.php?page=book&i
обеспечение. В 3-х ч. Ч. 1. Модели решения
d=143299. - неограниченный доступ для
функциональных и вычислительных задач. зарегистрированных пользователей
Учебное пособие. [Электронный ресурс],Воронеж:
Воронежская
государственная
лесотехническая академия,2007, 128 c.
библиотека.
Информатика. Математическое и программное Электронная
http://biblioclub.ru/index.php?page=book&i
обеспечение. В 3-х ч. Ч. 2. Технологии
d=143300. - неограниченный доступ для
программирования.
Учебное
пособие. зарегистрированных пользователей
[Электронный ресурс],- Воронеж: Воронежская
государственная лесотехническая академия,2007,
208 c.
Электронная
библиотека.
Программирование и основы алгоритмизации
http://biblioclub.ru/index.php?page=book&i
[Электронный ресурс]: учебное пособие /
d=142309. - неограниченный доступ для
В. К. Зольников, П. Р. Машевич,
зарегистрированных пользователей
В. И. Анциферова, Н. Н. Литвинов. - Воронеж:
Воронежская государственная лесотехническая
академия, 2011. - 341 с.
библиотека.
Долгов, А. И. Алгоритмизация прикладных задач Электронная
http://biblioclub.ru/index.php?page=book&i
[Электронный ресурс] : учебное пособие /
d=83142. - неограниченный доступ для
А. И. Долгов. - М.: Флинта, 2011. - 136 с. - 978-5- зарегистрированных пользователей
9765-0086-2.
библиотека.
Практическая криптография: алгоритмы и их Электронная
http://biblioclub.ru/index.php?page=book&i
программирование.
[Электронный
ресурс],d=117663. - неограниченный доступ для
М.:СОЛОН-ПРЕСС,2009, 256 c.
зарегистрированных пользователей
библиотека.
Информатика II. Основы алгоритмизации и Электронная
http://biblioclub.ru/index.php?page=book&i
программирования на языке C++. Учебноd=208651. - неограниченный доступ для
методическое пособие. [Электронный ресурс],- зарегистрированных пользователей
Томск: Эль Контент,2013, 160 c.
2.2. Перечень официальных, справочно-библиографических и специализированных
периодических изданий
6
Ваулина, Е.Ю.
Термины современной
информатики: программирование,
2.
3.
4.
5.
6.
7.
вычислительная техника, Интернет. Англорусский, русско-английский словарь [Текст]:
более 6000 слов, устойчивых словосочетаний и
сокр. / Е. Ю. Ваулина, В. Н. Рычков. - М.: Эксмо,
2007. - 640 с. - (Библиотека словарей).
Прикладная информатика [Текст]: справ.: учеб.
пособие для вузов : по направлению подгот.
бакалавров и магистров / под ред. В. Н.
Волковой, В. Н. Юрьева. - М.: Финансы и
статистика: ИНФРА-М, 2008. - 768 с.: ил. - 3000
экз. - ISBN 978-5-279-03056-9 (Финансы и
статистика).
Журнал: Информационно-управляющие системы
Журнал: Интернет-Маркетинг
Журнал: Нанотехнологии: наука и производство
Журнал: Программные продукты и системы
Системный администратор. 2014. [Электронный
ресурс] / М.: Синдикат 13
8.
Windows IT Pro/RE. 2013. [Электронный ресурс] /
М.: Открытые Системы
9.
Бизнес & Информационные технологии. 2014
[Электронный ресурс] / М.: Синдикат
10
Информационная безопасность. 2014.
[Электронный ресурс] / М.:ГРОТЕК
11
Компоненты и технологии. 2014. [Электронный
ресурс] / СПб:Файнстрит,2014.
12
Computerworld Россия. 2014. [Электронный
ресурс] / М.: Открытые Системы,2014
13
Коннект: мир информационных технологий.
2014. [Электронный ресурс] / М.: Сonnect! Мир
связи, 2014.
№
2
10
1
1
1
1
Электронная
http://biblioclub.ru.
доступ
для
пользователей
Электронная
http://biblioclub.ru.
доступ
для
пользователей
Электронная
http://biblioclub.ru.
доступ
для
пользователей
Электронная
http://biblioclub.ru.
доступ
для
пользователей
Электронная
http://biblioclub.ru.
доступ
для
пользователей
Электронная
http://biblioclub.ru.
доступ
для
пользователей
Электронная
http://biblioclub.ru.
доступ
для
пользователей
библиотека.
- неограниченный
зарегистрированных
библиотека.
- неограниченный
зарегистрированных
библиотека.
- неограниченный
зарегистрированных
библиотека.
- неограниченный
зарегистрированных
библиотека.
- неограниченный
зарегистрированных
библиотека.
- неограниченный
зарегистрированных
библиотека.
- неограниченный
зарегистрированных
1.
2.3. Перечень ресурсов информационно-телекоммуникационной сети «Интернет»
Режим
доступа
к
сайту:
MSDN [Электронный ресурс].
2.
RSDN [Электронный ресурс].
3.
Клуб программистов. [Электронный ресурс].
4.
Портал об автоматизированном тестировании ПО
[Электронный ресурс]
5.
Microsoft Solution Framework White Paper June
msdn.microsoft.com свободный.
Режим
доступа
к
сайту:
http://www.rsdn.ru/
свободный.
Режим
доступа
к
сайту:
http://programmersclub.ru/21/
свободный.
Режим доступа к сайту: http://automatedtesting.info/tools/performance-testing
свободный.
Режим
доступа
к
http://www.microsoft.com/msf/
сайту:
6.
Sun Microsystems. Java Language Specification,
7.
Object Management Group's Unified Modeling
Language
8. Центр образовательных ресурсов Microsoft
[Электронный
ресурс].
–
http://www.microsoft.com/rus/education/highereduc
ation/faculty/.
9. Информационно-коммуникационные технологии
в образовании [Электронный ресурс].
10 Интернет-Университет Информационных
Технологий [Электронный ресурс].
11 AlgoList – алгоритмы, методы, исходники
[Электронный ресурс].
12 Интерфейс. Портал по ИТ [Электронный ресурс].
13
1.
2.
Режим
доступа
к
сайту:
http://java.sun.com/j2se/ свободный.
Режим
доступа
к
сайту:
http://www.omg.org/uml/ свободный.
Режим
доступа
к
сайту:
http://www.microsoft.com/rus/education/hig
hereducation/ faculty/ resource-center.aspx
свободный
Режим
доступа
к
http://www.ict.edu.ru/ свободный.
сайту:
Режим
доступа
к
http://www.intuit.ru/ свободный.
сайту:
Режим
доступа
к
сайту:
http://algolist.manual.ru/ свободный.
Режим
доступа
к
сайту:
http://www.interface.ru/home.asp
свободный.
Режим доступа к сайту: http://citforum.ru/
свободный.
Сервер
информационных
технологий
[Электронный ресурс].
3.Перечень учебно-методического обеспечения по дисциплине (модулю)
I:\users\Жилина\ТиМП\Лекции.pdf
Курс лекций
I:\users\Жилина\ТиМП\Практикум.pdf
Лабораторный практикум
3.2
Материально-техническая база, необходимая для осуществления
образовательного процесса по дисциплине (модулю)
Минимально необходимый для реализации ООП перечень материальнотехнического обеспечения включает в себя: лекционные аудитории (оборудованные
видеопроекционным оборудованием для презентаций, средствами звуковоспроизведения,
экраном и имеющие выход в сеть Интернет), помещения для проведения семинарских и
практических занятий (оборудованные учебной мебелью), компьютерные классы и др. (в
соответствии с ФГОС и учебным планом)
№ ауд.
Наименование аудитории, кабинета,
лаборатории, основное оборудование,
стенды, макеты, компьютерная техника,
наглядные пособия и другие дидактические
материалы, обеспечивающие проведение
лабораторных и практических занятий,
научно-исследовательской работы
обучающихся с указанием наличия
Основное назначение
(опытное, обучающее,
контролирующее) и краткая
характеристика
использования при изучении
явлений и процессов,
выполнении расчетов.
№ 201-214,
301-302
№ 201-214,
301-302
аудитория,
оборудованная
мультимедийными
средствами обучения
компьютерный
класс,
оборудованный
мультимедийными средствами обучения.
№ 201-214,
301-302
Рабочие местом в компьютерном классе с выходом в
сеть Интернет
библиотека
рабочие места для
студентов, оснащенные
компьютерами с доступом к базам данных и сети
Интернет
№ 201-214,
301-302
Компьютерный класс с выходом в сеть Интернет
Обучающее – лекции/ Применяется
для демонстрации презентаций
Обучающее, контролирующее практические занятия. Применяется
для создания алгоритмов
Обучающее, контролирующее самостоятельная подготовка для
доступа к ресурсам Интернет
Обучающее самостоятельная
подготовка
Доступ
к
методическим
материалам: I:\users\Жилина\ТиМП
Контролирующее
–
текущий
контроль
успеваемости
и
промежуточная аттестация
Демонстрация
индивидуальных
отчетов по самостоятельной работе
4. Фонд оценочных средств текущего контроля успеваемости и промежуточной
аттестации
4.1 Оценочные средства текущего контроля успеваемости
№
1.
типовые задания, контрольные работы, тесты и другие методы контроля,
позволяющие оценить знания, умения и уровень приобретенных компетенций
(демонстрационный вариант)
Текущий контроль успеваемости
Контрольный опрос
1.
2.
3.
4.
5.
6.
7.
1.
2.
3.
4.
5.
6.
7.
По Модулю 1 «Развитие технологий и методов программирования»:
КО 1. (Контрольный письменный опрос № 1)
Вариант 1
Что называют подходом и чем подход отличается от метода?
Дайте определение понятию «сложная иерархическая система». Какой подход
используют при разработке таких систем? На каких характеристиках этих
систем он основан? В чем особенность данного подхода при разработке
программного обеспечения?
Что понимают под термином «жизненный цикл программного
обеспечения»? Какие основные процессы включают в это понятие?
Назовите основные модели жизненного цикла программного обеспечения. С
чем связано появление новых моделей?
Назовите основные составляющие любой CASE-технологии.
Что понимают под моделями
качества
процессов
разработки
программного обеспечения? Для чего они разработаны? Что гарантирует
сертификация качества процессов? Почему?
Уровни организации процесса разработки ПО ISO 9000.
Вариант 2
Что понимают под термином «технология программирования»?
Назовите основные периоды
истории
развития
технологии
программирования. Чем характеризуются эти периоды? Как изменялись
основные подходы и используемые средства?
Назовите основные этапы разработки программного обеспечения. Какие
основные задачи решаются на этих этапах?
Какие технологии называют CASE-технологиями? Почему?
Перечислите основные положения технологии RAD? Какие программные
системы нельзя разрабатывать с использованием этой технологии?
Что такое качество продукции? Приведите основные характеристика качества
программного средства.
Серия стандартов ISO 9000.
По Модулю 2 «Практическое программирование С++ CLR»
КО 2. (Контрольный письменный опрос № 2)
Вариант 1
1. Предпроектное проектирование. Цель, значение.
2. Понятие спецификации. Структурный анализ и проектирование.
3. Перечислите диаграммы UML.
4.
5.
6.
Перечислите отношения между классами.
Что Вы понимаете под компонентом.
Приведите пример диаграммы компонентов исполняемого файла на языке С++
(CLR).
Что является целью тестирования программ? Почему?
Какие подходы к тестированию вы знаете? В чем они заключаются?
Перечислите методы функционального тестирования и определите, в
каких случаях следует использовать каждый из них.
10. Почему
структурное
тестирование называют
«тестированием по
методу белого или прозрачного ящика»?
11. Чем нисходящее тестирование отличается от восходящего? Что понимают под
комплексным тестированием и чем оно отличается от тестирования компонент?
Когда можно прекращать тестирование компонентов?
12. Назовите основные типы ошибок. Как они проявляются при выполнении
программы?
13. Какие средства
получения дополнительной информации об ошибках
вы
знаете? Вспомните, какие ошибки вы искали дольше всего и
почему. В каких случаях дополнительная информация позволяет найти ошибку?
14. Что понимают под термином «диалог»? Сколько диалогов может
реализовывать программное обеспечение?
15. Предложите меню графического редактора. Сравните это меню с меню
известных вам графических редакторов. Проанализируйте отличия.
16. Перечислите
основные компоненты графических пользовательских
интерфейсов. В каких случаях используют каждый из них?
17. Какие интеллектуальные компоненты пользовательских
интерфейсов
существуют в настоящее время? Каковы их основные назначения? В каких случаях
их целесообразно применять?
7.
8.
9.
Вариант 2
1.
Техническое задание: основное содержание, разделы.
2.
Методология SADT.
3.
Язык UML.
4.
Что Вы понимаете под вариантом использования?
5.
Дайте определение класса и его составляющих.
6.
Приведите пример диаграммы компонентов исполняемого файла на языке
С++ (Win32).
7.
Перечислите известные вам виды контроля качества программного
обеспечения. На каких этапах применяют каждый их них?
8.
Почему функциональное тестирование называют «тестированием по методу
черного ящика»?
9.
Перечислите методы структурного тестирования и определите возможности
каждого из них. Какой метод структурного тестирования обеспечивает наибольшую
вероятность обнаружения ошибок?
10. Используя методы обоих подходов, сформируйте пакет тестов для
тестирования программы, вычисляющей действительные корни квадратного
уравнения. Какие методы вы использовали и почему?
11. Какой процесс называют отладкой? В чем его сложность?
12. Перечислите основные методы отладки. В чем заключается различие между
ними? Возьмите любую программу, содержащую ошибки, и попробуйте найти
ошибку, используя каждый из перечисленных методов. Какой метод для вас проще
и естественней и почему?
13. Назовите основные
типы интерфейсов. Чем характеризуется
2.
каждый из них? Какими средствами реализуется? Какие типы интерфейсов
являются основными в наше время?
14. Перечислите
психофизические
особенности
человека,
которые
необходимо учитывать при проектировании интерфейсов. Какие ограничения это
накладывает на интерфейс?
15. Назовите основные типы диалога и его формы. Какие модели
используют для описания диалогов? Что служит исходными данными для
проектирования диалогов?
16. Постройте граф диалога для простейшего графического редактора.
Почему он имеет такой вид? В каких ситуациях граф диалога имеет вид цепи или
дерева?
17. Предложите интерфейс прямого манипулирования для графического
редактора. В чем состоит основная
сложность проектирования таких
интерфейсов? В каких случаях их целесообразно использовать?
Практические задания, задачи
ПР 1. (Практическая работа №1)
1. Напишите программу, копирующую один файл в другой. Имена файлов
программа должна получать из командной строки. Если не удается открыть файл,
должно выдаваться соответствующее сообщение.
2. Напишите программу по переводу Фунты-килограммы (1 фунт = 0,45359 кг).
Вариант 2
1. Напишите программу, которая создает файл, содержащий информацию о
машинах. Структура файла: наименование, страна-производитель, год выпуска.
Выдать список машин, определенного года выпуска.
2. Напишите программу по переводу Акры-м2 (1 м = 0,0002471 акра).
3.
ПР 2. (Практическая работа № 2)
Вариант 1
Напишите программу «Учет лицензионного программного обеспечения»,
взаимодействующую с базой данных, реализуя отображение данных в режиме формы.
Организуйте запросы по выборке данных, группировке и поиску установленного ПО
конкретной группы назначения (системное, прикладное, специальное) за период
времени.
Вариант 2
Напишите программу «Журнал Windows», взаимодействующую с базой
данных, реализуя отображение данных в режиме формы. Организуйте запросы по
выборке данных, группировке и поиску определенной записи в Журнале конкретной
категории (сведение, уведомление, ошибка) за период времени.
Темы для самостоятельного изучения
1. RAD-технологии.
2. Модели качества программного обеспечения.
3. Оценка характеристик качества программных средств.
4. Платформа .Net. Назначение. Структура. Управляемый и неуправляемый код в
CLR.
5. .Net Framework.
6. Компоновка, упаковка приложений. JIT компилятор.
7. Обработка исключений.
8. «Сборка мусора». Очистка памяти. «Куча».
9. Методы защиты программ и данных.
10. Программирование в MS Office.
11. Технология Oracle.
12. Технология Borland.
Разработать проект программного приложения. Оформить проектную
документацию на него в соответствии. Разрабатываются 3 документа:
- техническое задание;
- описание программы;
- пояснительная записка.
Примерные темы программных систем для разработки программного
обеспечения:
1. Система тестирования студентов.
2. Система тестирования персонала.
3. Система учета рабочего времени.
4. Система управления сетью магазинов.
5. Интегрированная система безопасности.
6. Система автоматизированного управления и контроля компьютерным клубом.
7. Система контроля исполнения поручений.
8. Автоматизированная система документооборота.
9. Электронный архив документов.
10. Автоматизированная система «Складской учет».
При разработке учесть функции безопасности и администрирования
информационных систем.
4.2 Оценочные средства для промежуточной аттестации в форме экзамена
№
1.
типовые задания, тесты и другие методы контроля, позволяющие оценить знания,
умения и уровень приобретенных компетенций
Перечень заданий, практических задач
1. Вычисление высоты строки в миллиметрах по заданной высоте в пунктах.
Известно, что 1 пункт = 0,353 см.
2. Увеличение и уменьшение размеров объектов в процессе выполнения
программы.
3. Создайте на форме проект, показывающий по нажатию одной кнопки знак
дорожного движения и комментарий о его назначении (например, «Дорожный знак»,
соответствующая картинка и комментарий под ним «Проезд запрещен»).
4. Создайте на форме проект, выводящий по кнопке название государства –
«Россия» и по нажатию другой командной кнопки - флаг России.
5. Разработайте проект, в котором пользователь мог ввести название городаюбиляра, год его основания, текущий год. После нажатия командной кнопки должно
выйти поздравление: "Поздравляем жителей города N с Х-летием!!!"
6. Разработайте проект, который находит квадратный корень произведения
двух вещественных чисел и выводит результат на форму. Числа запрашиваются.
7. Запросите у пользователя валютный курс на сегодняшний день, затем
имеющуюся у него рублевую сумму и рассчитайте, сколько долларов и сколько евро
он может купить на эти деньги.
8. Дискета 3,5" вмещает 1,44 Мбайт. Рукопись содержит А страниц текста. На
каждой странице Y строк по Z символов в каждой. Сколько дискет потребуется для
записи рукописи? A, Y и Z запрашиваются.
9. Документ содержит текст из X строк по Т символов в каждой и точечную
черно-белую фотографию размером 10x15 см. Каждый квадратный сантиметр
содержит 600 точек, любая
точка описывается 4-мя битами. Каков общий
информационный объем документа в Кбайтах?
10. Жесткий диск пуст и имеет объем свободного пространства Г гигабайт, а)
Сколько книг, каждая из которых состоит из Д страниц, на каждой странице Е строк,
2.
в каждой строке Ж символов, можно записать на такой жесткий диск? б) Если
учесть, что каждая такая книга 3 см толщиной, то какой высоты в метрах будет
стопка, если все их сложить друг на друга?
11. Скорость передачи данных по локальной сети С миллионов бит в секунду.
Ученик качал игру Т минут. а) Сколько это гигабайт и сколько дискет по 1,5 Мбайта
можно заполнить таким объемом информации? б) Сколько денег (в рублях) придется
заплатить ученику за трафик, если первый 1 Гбайт не оплачивается, а все, что сверх
его — по Y копеек за 1 Мбайт.
12. Продав квартиру, вы получили 52000р и положили их в банк. Банк
начисляет 1% в первый месяц, а каждый следующий — тоже 1%, но уже с
получившейся суммы. Сколько денег будет в банке на вашем счету через год?
13. Запросите с клавиатуры три целых произвольных числа. Выведите на
форму их среднее значение, а также наибольшее и наименьшее числа.
14. Известно, что сторона квадрата равна а, радиус круга r. Выведите на форму
название и значение площади большей фигуры.
15. Составить простейший фрагмент игры «Кто хочет стать миллионером!».
Придумайте 5 любых вопросов и к каждому из них 4 варианта ответов. Программа
должна запросить имя игрока и желание сыграть. Если не желает, то прощаемся, если
желает играть, то предложить первый вопрос и варианты ответов. Запросить с
клавиатуры вариант ответа. В случае правильного ответа начисляем ему сто очков и
переходим ко второму вопросу. Если ответ не верен, то выражаем сожаление и
прощаемся. Первый вопрос – 100 очков, второй – 200, третий – 300, четвертый – 500,
пятый – 1000. если игрок правильно отвечает на все 5 вопросов, то поздравляем его,
сообщаем, где получить выигранную сумму и заканчиваем программу.
16. Заполните массив 20-ю случайными числами, лежащих в пределах от -50
до 20, выведите на форму их значения в строку, подсчитайте и выведите сумму этих
чисел, а также положительные и отрицательные элементы в отдельные столбики
17. Заполните массив 10 случайными числами, лежащих в пределах от 50 до
200, и вывести на форму их численные значения, подсчитать и вывести на форму
сумму этих чисел, а также найти минимальный элемент и его номер
18. Создать проект, в котором при вводе в текстовое поле нового заголовка и
при последующем щелчке по кнопке меняется заголовок окна и цвет формы.
19. Даны два случайных числа а и b, которые выводятся в соответствующие
текстовые поля на форме. С клавиатуры задается название арифметической операции,
которую надо выполнить над числами: сложение, вычитание, умножение, деление.
Необходимо создать программу, в которой в определенное текстовое поле
указывается символ операции, в соответствующее текстовое поле выдается результат
вычисления.
20. Составить программу для построения таблицы значений и графика
функции y = 1.2 Sin x при изменении x в диапазоне [-10, 10]. Результат вывести на
форму в виде графика.
Типовые компетентностно-ориентированные профессиональные задачи
1. Технология программирования и основные этапы ее развития.
2. Жизненный цикл и этапы разработки программного обеспечения.
3. Модели жизненного цикла программного обеспечения.
4. Технология RAD. Ускорение разработки программного обеспечения.
5. Основные качественные и экономические критерии программного
обеспечения. Серия стандартов ISO 9000.
6. Проектирование программного обеспечения при структурном подходе.
7. Унифицированный язык моделирования UML. Проектирование классов.
8. Разработка пользовательских интерфейсов.
9. Тестирование программных продуктов.
10. Отладка программного обеспечения.
11. Файловый ввод/вывод (Visual C++).
12. ConsoleApplication. Запись, чтение данных в консоли (Visual C+).
13. Среда разработки СLR (Visual C++). Особенности, возможности,
преимущества.
14. Приложение Windows Forms (СLR). Основные элементы управления
(Visual C+): Label, TextBox, Button, Chart.
15. Приложение Windows Forms (СLR). Основные элементы управления
(Visual C+): MenuStrip, ComboBox, RadioButton, CheckBox, PictureBox.
16. Приложение Windows Forms (СLR). Основные элементы управления
(Visual C+): ListView, ListBox, MonthCalendar, dateTimePicker, WebBrowser, notifyIcon,
contextMenuStrip
17. Приложение Windows Forms (СLR). Функции преобразования типов
данных, математические функции.
18. Приложение Windows Forms (СLR). Класс Forms, Timer. Класс
MessageBox.
19. Приложение Windows Forms (СLR). Диалоговые окна, меню и панели
инструментов (Visual C+).
20. Приложение Windows Forms (СLR). Работа с базой данных. Набор данных
DataSet (Visual C+), oleDbConnection, oleDbDataAdapter, dataGridView.
Критерии оценивания:
- 84-100 баллов (оценка «отлично») - изложенный материал фактически верен,
наличие глубоких исчерпывающих знаний в объеме пройденной программы дисциплины в
соответствии с поставленными программой курса целями и задачами обучения;
правильные, уверенные действия по применению полученных знаний на практике,
грамотное и логически стройное изложение материала при ответе, усвоение основной и
знакомство с дополнительной литературой;
- 67-83 баллов (оценка «хорошо») - наличие твердых и достаточно полных знаний в
объеме пройденной программы дисциплины в соответствии с целями обучения, правильные
действия по применению знаний на практике, четкое изложение материала, допускаются
отдельные логические и стилистические погрешности, обучающийся усвоил основную
литературу, рекомендованную в рабочей программе дисциплины;
- 50-66 баллов (оценка удовлетворительно) - наличие твердых знаний в объеме
пройденного курса в соответствии с целями обучения, изложение ответов с отдельными
ошибками, уверенно исправленными после дополнительных вопросов; правильные в целом
действия по применению знаний на практике;
- 0-49 баллов (оценка неудовлетворительно) - ответы не связаны с вопросами,
наличие грубых ошибок в ответе, непонимание сущности излагаемого вопроса, неумение
применять знания на практике, неуверенность и неточность ответов на дополнительные и
наводящие вопросы».
5.Дополнения и изменения в рабочей программе
Дисциплина Б3.Б.10 «Технологии и методы программирования»,
Направление подготовки 10.03.01 «Информационная безопасность»
квалификация (степень) «бакалавр»
Учебный план подготовки утвержден Ученым Советом Протокол № 7 от «25»
февраля 2014 г. на учебный год 2014/2015
Следующие записи относятся к п.п.
Автор
Зав. кафедрой
Принято УМУ__________________________________ Дата:________________
Download