Введение в программную инженерию. Учебное пособие
.pdf
Таблица 7.1 – Перечень базового блока естественнонаучных и специаль-
ных дисциплин
7.1 Характеристика дисциплин формирования общепрофессиональных
компетенций
Общепрофессиональные компетенции формируются при изучении базо-
вой части математических естественно-научных и специальных дисциплин.
Результаты изучения математических и естественно-научных дисциплин студент должен:
Знать:
-основы математического анализа;
-линейную алгебру;
-аналитическую геометрию;
-основы теории вероятностей и математической статистики;
-дискретную математику;
-математическую логику;
-теорию алгоритмов;
-вычислительную математику.
61
Уметь:
- применять математические методы и вычислительные алгоритмы для
решения практических задач, проектировать эксперимент и анализировать ре-
зультаты.
Владеть:
-методами построения математической модели профессиональных задач
исодержательной интерпретации полученных результатов.
7.2 Основное содержание базового блока математических и
естественно-научных дисциплин
В базовую часть математических и естественно-научных дисциплин вхо-
дят:
Математический анализ. Общая трудоемкость дисциплины составляет
10 з.е. (360 ч.), 1-2-ой семестры, 2-а экзамена.
Цель – формирование основных представлений в области математическо-
го анализа: теорию пределов и дифференциального исчисления, включая ис-
следование функций и построение их графиков; интегральное исчисления,
включая неопределенные интегралы, определенные интегралы, несобственные интегралы; основы дифференциального исчисления функций многих перемен-
ных; элементы теории функций и функционального анализа; теория функций комплексного переменного; последовательности и ряды; гармонический ана-
лиз; преобразование Лапласа.
Алгебра и геометрия. Общая трудоемкость дисциплины составляет 6 з.е.
(324 ч.), 1-2-ой семестры, зачет (1-ый семестр), экзамен (2-ой семестр).
Цель – формирование теоретических знаний в области современной ал-
гебры и геометрии, необходимых для использования в других математических дисциплинах, а также в решении различных прикладных задач программирова-
ния.
62
Основные разделы:
–векторная алгебра и аналитическая геометрия;
–основы теории матриц и систем линейных уравнений (включая опре-
делители);
– основы линейной алгебры (включая линейные пространства, евклидо-
вы пространства, квадратичные формы, линейные операторы);
– основы аналитической геометрии, многомерной евклидовой геомет-
рии, дифференциальную геометрию кривых и поверхностей, элементы тополо-
гий.
Теория вероятностей и математическая статистика. Общая трудоем-
кость дисциплины составляет 6 з.е. (216 ч.), 3-4-ый семестры, экзамен, зачет.
Случайная величина, ее функция распределения, математическое ожида-
ние и дисперсия. Распределение монотонной функции от случайной величины.
Системы случайных величин, условные плотности, зависимость и независи-
мость случайных величин, корреляционный момент. Закон больших чисел и центральная предельная теорема. Точечные и интервальные оценки случайных величин. Критерии проверки гипотез. Статические характеристики случайных процессов. Стационарный случайный процесс. Метод статистических испыта-
ний.
Дискретная математика. Общая трудоемкость дисциплины составляет 6
з.е. (216 ч.), 2-ой семестр, экзамен.
Множества и их спецификации: диаграммы Венна; отношения; свойства отношений; разбиения и отношение эквивалентности; отношение порядка;
функции и отображения; операции; основные понятия теории графов: марш-
руты; циклы; связность; планарные графы; переключательные функции
(ПФ): способы задания ПФ; специальные разложения ПФ; неполностью опре-
деленные (частные) ПФ; минимизация ПФ и неполностью определенных ПФ;
теорема о функциональной полноте; примеры функционально-полных базисов;
разрешимые и неразрешимые проблемы; схемы алгоритмов; схемы потоков данных.
63
Математическая логика и теория алгоритмов. Общая трудоемкость дисциплины составляет 4 з.е. (144 ч.), 3-ий семестр, дифференцируемый зачет.
Логика высказываний; логика предикатов; исчисления; непротиворечи-
вость; полнота; синтаксис и семантика языка логики предикатов. Клазуальная форма. Метод резолюций в логике предикатов. Принцип логического програм-
мирования. Темпоральные логики; нечеткая и модальные логики; нечеткая арифметика; алгоритмическая логика Ч. Хоара. Логика высказываний. Логиче-
ское следование, принцип дедукции. Метод резолюций. Аксиоматические си-
стемы, формальный вывод. Метатеория формальных систем. Понятие алгорит-
мической системы. Рекурсивные функции. Формализация понятия алгоритма;
Машина Тьюринга. Тезис Черча; Алгоритмически неразрешимые проблемы.
Меры сложности алгоритмов. Легко и трудноразрешимые задачи. Классы задач
P и NP. NP - полные задачи. Понятие сложности вычислений; эффективные ал-
горитмы. Основы нечеткой логики. Элементы алгоритмической логики.
Физика. Общая трудоемкость дисциплины составляет 9 з.е. (324 ч.), 1-2-
ой семестры, 2-а экзамена.
В дисциплине излагаются физические основы механики; колебания и волны; молекулярная физика и термодинамика; электричество и магнетизм; оп-
тика; атомная и ядерная физика; физический практикум.
Безопасность жизнедеятельности. Общая трудоемкость дисциплины составляет 3 з. е., 108 ч., 8-ой семестр, дифф. зачет.
Человек и среда обитания. Основы физиологии труда и комфортные условия жизнедеятельности в техносфере. Критерии комфортности. Негатив-
ные факторы техносферы, их воздействие на человека, техносферу и природ-
ную среду. Критерии безопасности. Опасности технических систем: отказ, ве-
роятность отказа, качественный и количественный анализ опасностей. Средства снижения травмоопасности и вредного воздействия технических систем. Без-
опасность функционирования автоматизированных и роботизированных произ-
водств. Безопасность в чрезвычайных ситуациях. Управление безопасностью жизнедеятельности. Правовые и нормативно-технические основы управления.
64
Системы контроля требований безопасности и экологичности. Профессиональ-
ный отбор операторов технических систем. Экономические последствия и ма-
териальные затраты на обеспечение безопасности жизнедеятельности. Между-
народное сотрудничество в области безопасности жизнедеятельности.
7.3 Основное содержание базового блока общепрофессиональных
(специальных) дисциплин
Результаты изучения специальных дисциплин формирования общепрофес-
сиональных компетенций студент должен:
Знать:
–основные факты, концепции, принципы и теории, связанные с инфор-
матикой;
– теоретические основы архитектурной и программной организации вы-
числительных и информационных систем;
–основы теории организации и применения баз данных;
–формальные методы, технологии и инструменты разработки про-
граммного продукта;
– концепции и стратегии архитектурного проектирования и конструиро-
вания программного продукта;
–основы верификации и аттестации программного обеспечения;
–концепции эволюционного развития программного обеспечения;
–концепции и реализации программных процессов;
–стандарты качества программных продуктов и процессов его обеспе-
чения;
– методы и средства обеспечения информационной безопасности про-
граммных систем.
Уметь:
– инсталлировать, тестировать, испытывать и использовать программ-
ные средства;
– настраивать конкретные конфигурации операционных систем;
65
–разрабатывать схемы баз данных;
–разрабатывать и специфицировать требования;
–конструировать ПО, разрабатывать основные программные документы;
–работать с современными системами программирования;
–оценивать бюджет, сроки и риски разработки программ.
Владеть:
– навыками работы в среде различных операционных систем и способа-
ми их администрирования;
–языками процедурного и объектно-ориентированного программирования;
–методами описания моделей баз данных в современных СУБД;
–методами и средствами разработки и оформления технической доку-
ментации.
В базовый блок общепрофессиональных дисциплин входят:
Информатика. Общая трудоемкость дисциплины составляет 5 з.е., 180
ч., 1 семестры, экзамен.
Излагаются понятие информатики. Место информатики в ряду других фундаментальных наук. Понятие информации и ее измерение. Количество и ка-
чество информации. Единицы измерения информации. Информация и энтро-
пия. Информационные технологии. Технические и программные средства ин-
формационных технологий. Основные виды обработки данных. Понятие и свойства алгоритма. Принцип программного управления. Функциональная и структурная организация компьютера. Каналы передачи данных и их характе-
ристики. Файлы данных. Файловые структуры. Носители информации и техни-
ческие средства для хранения данных. Позиционные системы счисления. Мето-
ды перевода чисел. Форматы представления чисел с плавающей запятой. Дво-
ичная арифметика. Коды: прямой, обратный, дополнительный, модифициро-
ванный. Выполнение арифметических операций с числами с фиксированной и плавающей запятой. Подготовка, редактирование и оформление текстовой до-
кументации, графиков, диаграмм и рисунков. Обработка числовых данных в электронных таблицах. Основы компьютерной коммуникации.
66
Алгоритмизация и программирование. Общая трудоемкость дисци-
плины составляет 10 з. е., 360 ч., 1-2 семестры, 2-а экзамена.
Основные этапы решения задач на ЭВМ; критерии качества программ;
диалоговые программы; дружественность, жизненный цикл программы; поста-
новка задачи и спецификация программы; способы записи алгоритма; програм-
ма на языке высокого уровня; стандартные типы данных; представление основ-
ных структур программирования: итерация, ветвление, повторение; процедуры;
типы данных, определяемые пользователем; записи; файлы; динамические структуры данных; списки: основные виды и способы реализации; программи-
рование рекурсивных алгоритмов; способы конструирования программ; мо-
дульные программы; основы доказательства правильности.
Теория автоматов и формальных языков. Общая трудоемкость дисци-
плины составляет 5 з.е. (180 ч.), 5-ый семестр, КР, дифф. зачет.
Автоматы и формальные языки; концепция порождения и распознавания;
классификация языков по Хомскому; порождающие грамматики; распознавате-
ли: машина Тьюринга, магазинный автомат, сеть Петри, конечный автомат;
коллективы автоматов; регулярные языки и конечные автоматы; абстрактный синтез; структурный синтез; состояния элементов памяти; кодирование состоя-
ний синхронного и асинхронного автомата; построение комбинационной схемы автомата; проблема отражения времени при проектировании: синхронные,
асинхронные и апериодические схемы; проблемы и перспективы автоматиза-
ции проектирования.
Основы теории формальных языков и грамматик; распознаватели и пре-
образователи: конечные автоматы и преобразователи, автоматы и преобразова-
тели с магазинной памятью; связь между грамматиками и автоматами; фор-
мальные методы описания перевода: СУ-схемы, транслирующие грамматики,
атрибутные транслирующие грамматики; алгоритмы синтаксического анализа для LL(K)-грамматик, LR(K)-грамматик, грамматик предшествования; включе-
ние семантики в алгоритмы синтаксического анализа.
67
Архитектура вычислительных систем. Общая трудоемкость дисципли-
ны составляет 5 з. е., 180 ч., 4 семестр, экзамен.
В рамках дисциплины студенты изучают принципы организации, про-
ектирования и производства современных электронных вычислительных ма-
шин и систем. Важное место в курсе занимает практическая работа студентов,
в ходе которой исследуются принципы работы современных электронных компонентов и микропроцессорных устройств. При изложении теоретического материала большое внимание уделяется современным устройствам и перспек-
тивным направлениям развития вычислительной техники. По окончании кур-
са студент должен уметь синтезировать, анализировать и моделировать узлы электронных вычислительных машин, создавать эффективные программы ра-
боты микропроцессоров и микроконтроллеров.
Основные характеристики, области применения ЭВМ различных классов;
функциональная и структурная организация процессора; организация памяти ЭВМ; основные стадии выполнения команды; организация прерываний в ЭВМ;
организация ввода-вывода; периферийные устройства; архитектурные особен-
ности организации ЭВМ различных классов; параллельные системы; понятие о многомашинных и многопроцессорных вычислительных системах (ВС).
Способы организации и типы ВС; параллельная обработка информации:
уровни и способы организации; реализация в многомашинных и многопроцес-
сорных ВС; операционные конвейеры; векторные, матричные, ассоциативные системы; однородные системы и среды; RISC-архитектуры; развитие архитек-
тур, ориентированных на языковые средства и среду программирования; осно-
вы метрической теории ВС; технология распределенной обработки данных.
Операционные системы. Общая трудоемкость дисциплины составляет 5
з.е. (180 ч.), 4-ый семестры, экзамен.
Назначение и функции операционных систем (ОС). Мультипрограммиро-
вание. Режим разделения времени. Многопользовательский режим работы. Ре-
жим работы и ОС реального времени. Универсальные операционные системы и ОС специального назначения. Классификация операционных систем. Модуль-
68
ная структура построения ОС и их переносимость. Управление процессором.
Понятие процесса и ядра. Сегментация виртуального адресного пространства процесса. Структура контекста процесса. Идентификатор и дескриптор процес-
са. Иерархия процессов. Диспетчеризация и синхронизация процессов. Понятия приоритета и очереди процессов. Средства обработки сигналов. Понятие собы-
тийного программирования. Средства коммуникации процессов. Способы реа-
лизации мультипрограммирования. Понятие прерывания. Многопроцессорный режим работы. Управление памятью. Совместное использование памяти. Защи-
та памяти. Механизм реализации виртуальной памяти. Стратегия подкачки страниц. Принципы построения и защита от сбоев и несанкционированного до-
ступа.
Теория вычислительных процессов. Общая трудоемкость дисциплины составляет 5 з.е. (180 ч.), 6-ый семестры, экзамен.
Семантическая теория программ; схемы программ, методы формальной спецификации и верификации; модели вычислительных процессов; взаимодей-
ствие процессов; протоколы и интерфейсы; асинхронные процессы; сети Петри:
принципы построения, алгоритмы поведения, способы реализации, области применения.
Базы данных и системы управления базами данных. Общая трудоем-
кость дисциплины составляет 5 з.е. (180 ч.), 5-ий семестр, КР, экзамен.
Назначение и основные компоненты системы баз данных; обзор совре-
менных систем управления базами данных (СУБД); уровни представления баз данных; понятия схемы и подсхемы; модели данных; иерархическая, сетевая и реляционная модели данных; схема отношения; язык манипулирования данны-
ми для реляционной модели; реляционная алгебра и язык SQL; проектирование реляционной базы данных, функциональные зависимости, декомпозиция отно-
шений, транзитивные зависимости, проектирование с использованием метода сущность - связь; изучение одной из современных СУБД по выбору; создание и модификация базы данных; поиск, сортировка, индексирование базы данных,
создание форм и отчетов; физическая организация базы данных; хеширован-
69
ные, индексированные файлы; защита баз данных; целостность и сохранность баз данных.
Технология разработки программного обеспечения. Общая трудоем-
кость дисциплины составляет 3 з.е. (108 ч.), 8-ий семестр, КР, экзамен.
Программные продукты (изделия); жизненный цикл ПО; метрология и качество ПО; критерии качества: сложность, корректность, надежность, трудо-
емкость; измерения и оценка качества ПО; процесс производства ПО: методы,
технология и инструментальные средства; тестирование и отладка; документи-
рование; проектирование программного обеспечения; технологический цикл разработки программных систем; коллективная работа по созданию программ;
организация процесса разработки и инструментальные средства поддержки; ав-
томатизация проектирования программных продуктов; принципы построения,
структура и технология использования САПР ПО.
Контрольные вопросы
1. Какие знания и умения приобретет бакалавр в результате изучения ма-
тематических дисциплин?
2.Какие знания и умения приобретет бакалавр в результате изучения естественно-научных дисциплин?
3.Какие знания и умения приобретет бакалавр в результате изучения специальных дисциплин?
4.Какие навыки формируются в результате изучения математических дисциплин?
5.Какие навыки формируются в результате изучения естественно-
научных дисциплин?
6. Какие навыки формируются в результате изучения специальных дис-
циплин?
7. Перечислите, какие дисциплины входят в базовую часть математиче-
ских дисциплин
8. Перечислите, какие дисциплины входят в базовую часть естественно-
70
