Рабочая программа дисциплины «Философия» для подготовки бакалавров по направлению 231000 «Программная инженерия»



страница5/6
Дата01.06.2016
Размер1 Mb.
ТипРабочая программа
1   2   3   4   5   6

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Безопасность жизнедеятельности»

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

по направлению 231000 «Программная инженерия»

(аннотация)
Цели освоения дисциплины

Дисциплина "Безопасность жизнедеятельности" предназначена для студентов

четвертого курса, обучающихся по направлению 231000 «Программная инженерия».

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


Общая трудоемкость дисциплины составляет 5 зачетных единиц, 180_ часов.
Содержание дисциплины

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

Физиология труда и комфортные условия жизнедеятельности. Физический и умственный труд. Методы оценки тяжести труда. Энергетические затраты человека при различных видах деятельности.

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

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

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

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

ситуаций.

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


РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Объектно-ориентированное программирование»

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

по направлению 231000 «Программная инженерия»

(аннотация)
Цели освоения дисциплины

Дисциплина "Объектно-ориентированное программирование" предназначена для студентов второго курса, обучающихся по направлению 231000 «Программная инженерия». Целью изучения дисциплины является обучение студентов методике разработки программных средств с использованием технологии объектно-ориентированного программирования (ООП).


Общая трудоемкость дисциплины составляет 6 зачётных единиц, 216 часов.
Содержание дисциплины

Тема 1.Объектно-ориентированное программирование.

Тема 2.Основные понятия дисциплины. Основные положения объектного подхода к разработке программ, принципы объектного подхода, абстрагирование, устойчивость. Понятие объекта и класса. Инкапсуляция и спецификация правил доступности элементов класса. Конструкторы и деструкторы. Наследование. Иерархия классов. Одиночное и множественное наследование. Способы реализации множественного наследования, их достоинства и недостатки. Отношения между классами. Полиморфизм. Ранее и позднее связывание. Управление последовательностью действий в объектно-ориентированной программе. Объект и процесс. Инициализация и взаимодействие объектов и процессов. Сообщения. Реализация механизмов посылки сообщений. Примеры функционирования объектно-ориентированной программы.

Тема 3.Введение в объектно-ориентированный анализ и проектирование. Системный анализ. Принципы объектно-ориентированного анализа и их обсуждение. Основные определения: система, домен, подсистема, элемент, связи, среда. Структура системы, декомпозиция, иерархия элементов. Процессы в системе и потоки информации. Исследование действий. Построение моделей доменов и подсистем, связей и взаимодействия подсистем, взаимодействия объектов, событий, процессов, потоков данных, действий. Описание классов и их взаимосвязей. Динамика поведения объектов, диаграммы перехода состояний. Диаграммы объектов. Видимость и синхронизация объектов, временные диаграммы. Диаграмма процессов. Обработка исключительных ситуаций.

Тема 4.Классы. Способы реализации инкапсуляции. Определение класса. Личная и общая части определения класса. Функции-элементы класса и функции-друзья. Объекты класса. Создание и уничтожение объектов класса. Конструкторы и деструкторы. Интерфейс и реализация контейнерных классов для моделирования структур данных. Статические члены объектов класса. Вложенные и локальные классы. Примеры описания и использования классов.

Тема 5.Наследование классов. Базовый и производный классы. Функции-элементы и функции-друзья. Правила доступа к элементам производного класса. Конструкторы и деструкторы. Иерархия классов. Одиночное и множественное наследование. Виртуальные базовые классы. Особенности доступа при множественном наследовании. Правила преобразования указателей. Виртуальные функции. Таблицы виртуальных функций. Распределение таблиц виртуальных функций в многофайловых программах. Чистые виртуальные функции и абстрактные базовые классы. Полиморфные контейнерные классы, итераторы и аппликаторы. Абстрактные и конкретные контейнерные классы. Виды классов: конкретный тип, абстрактный тип, узловой класс, интерфейсный класс и другие. Инициализация объектов. Отличия инициализации от присваивания. Инициализация баз и членов. Полный объект конечного производного класса.

Тема 6.Обработка исключительных ситуаций. Анализ различных моделей обработки исключительных ситуаций. Стандартные средства контроля подтверждений. Проверка предусловий и постусловий, вычисления инвариантов. Контроль асинхронных событий. Реализация модели обработки синхронных ситуаций с завершением. Возбуждение ситуации, Описание блоков с контролем и реакций на ситуации. Система классов для описания исключительных ситуаций.

Тема 7.Шаблоны проектирования.

Тема 8.Введение в шаблоны проектирования. Шаблон проектирования. Шаблоны проектирования в схеме MVC. Описание шаблонов проектирования. Классификация шаблонов проектирования. Подходы к решению задач с помощью шаблонов проектирования. Выбор шаблона проектирования.

Тема 9.Шаблоны для распределения обязанностей (GRASP). Обязанности и методы. Обязанности и диаграммы взаимодействий. Шаблон Information Expert. Шаблон Creator. Шаблон Low Coupling. Шаблон High Cohesion. Шаблон Controller.

Тема 10.Порождающие шаблоны. Шаблон Abstract Factory. Шаблон Builder. Шаблон Factory Method. Шаблон Prototype.

Тема 11.Шаблоны поведения. Шаблон Chain of Responsibility. Шаблон Command. Шаблон Interpreter. Шаблон Iterator. Шаблон Mediator. Шаблон Memento. Шаблон Observer. Шаблон State. Шаблон Strategy. Шаблон Template Method. Шаблон Visitor.

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Системное программирование»

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

по направлению 231000 «Программная инженерия»

(аннотация)
Цели освоения дисциплины

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

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

Объект изучения дисциплины «Системное программирование» – современные операционные системы ЭВМ и другие виды системного программного обеспечения.


Общая трудоемкость дисциплины составляет 4 зачетных единицы, 144 часа.
Содержание дисциплины

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

Архитектура операционной системы. Элементы операционной системы. Структура современных операционных систем.

Управление процессами и потоками. Многозадачность. Мультипрограммирование. Планирование выполнения процессов. Диспетчеризация процессов реального времени. Потоки: планирование и диспетчеризация. Управления процессором. Понятия «процесс» и «нить», «поток». Системные часы и таймеры. Виртуальное адресное пространство процесса, его сегментация. Планировщики и диспетчеры. Операции, выполняемые над процессами и потоками. Тупики, условия возникновения, предупреждение и обходы. Невытесняющие и вытесняющие алгоритмы планирования. Алгоритмы, основанные на квантовании, приоритетах и смешанные.

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

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

Управление данными. Управление вводом-выводом. Многослойная организация программного обеспечения ввода-вывода. Драйверы устройств. Файловая система. Логическая организация файловой системы: цели и задачи, типы файлов. Иерархическая структура файловых систем. Атрибуты файлов. Монтирование. Логическая организация файла: неструктурированные файлы, файлы с записями фиксированной и переменной длины, индексированные файлы. Организация обмена данными между процессами с помощью механизма конвейеров. Физическая организация файловой системы: диски, разделы, секторы и кластеры.

Системные программы. Системы программирования. Формальные грамматики и языки. Классификация Хомского грамматик и языков. Трансляция. Этапы, фазы процесса трансляции. Проходы компилятора. Анализ программ: лексический, синтаксический, семантический. Синтез программ: генерация и оптимизация кода. Системные программы. Утилиты. Интерпертаторы. Ассемблеры. Макрогенераторы. Макроассемблеры. Загрузчики. Отладчики.



РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Основы построения трансляторов»

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

по направлению 231000 «Программная инженерия»

(аннотация)
Цели освоения дисциплины

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

Студент должен уметь разрабатывать лексические анализаторы; разрабатывать как однопроходные, так и однопроходные синтаксические анализаторы; применять методы обработки и нейтрализации синтаксических ошибок; применять методы статического семантического анализа для проверки типов и контекстно-зависимых условий; разрабатывать генераторы промежуточного представления программы, основанные на атрибутных грамматиках и атрибутных трансляциях; применять методы машинно-независимой оптимизации кода; разрабатывать генераторы кода целевой машины; применять методы машинно-зависимой оптимизации кода.
Общая трудоемкость дисциплины составляет 8 зачетных единиц, 288 часов.
Содержание дисциплины

Введение. Задача компиляции, требования к компиляторам. Основные фазы компиляции: построения абстрактного синтаксического дерева (front-end), машинно-независимая оптимизация, машинно-зависимая оптимизация, генерация объектного кода (back-end). Выявление ошибок в процессе компиляции и сообщения о них. Неформальный язык описания алгоритмов оптимизации (ICAN - Informal Compiler Algorithm Notation).

Внутренние представления компилируемой программы. Исходный, целевой (объектный) и промежуточные языки. Абстрактное синтаксическое дерево как промежуточное представление высокого уровня. Трехадресный код ("четверки") как промежуточные представления среднего и низкого уровней. Атрибуты. Граф потока управления. Граф потока данных. Граф зависимостей.

Построение абстрактного синтаксического дерева (AST). Синтаксически управляемый анализ исходной программы: лексический анализатор (сканер), синтаксический анализатор (парсер). Нисходящий (LL(1)) и восходящий (LR(1)) синтаксический анализ. Таблица символов: принципы ее организации и работы с ней. Анализ контекстных условий и вычисление атрибутов.

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

Анализ потока управления. Построение графа потока управления для процедуры. Базовые блоки. Свойства графа потока управления: доминирование, алгоритмы обхода, остовое дерево, классификация дуг графа потока управления. Некоторые вспомогательные функции, определенные на графе потока управления. Выделение сильно связанных компонент. Интервалы и сводимость. Структурный анализ. Дерево управления.

Анализ потока данных. Определение связей по данным между базовыми блоками. Необходимые сведения из теории решеток: определение решетки, решеточные операции частичного порядка, функции на решетках, монотонность, неподвижные точки, функции потока. Представление программы в статической форме с однократным присваиванием значений (SSA). Построение UD- и DU-цепочек и сети. Уточнение результатов структурного анализа.

Анализ псевдонимов. Проблемы, связанные с обработкой элементов структур, элементов массивов и данных, доступных по указателям. Понятие псевдонима. Псевдонимы в языках программирования. Обнаружение и распространение псевдонимов.

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

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

Анализ и оптимизация циклов. Вынесение инвариантных вычислений за цикл. Выявление индуктивных переменных. Исключение индуктивных переменных. Исключение избыточных проверок условий окончания цикла. Разворачивание циклов.

Построение промежуточного представления низкого уровня. Распределение памяти. Распределение регистров. Методы раскраски графов и их использование для оптимального распределения регистров. Другие подходы к проблеме распределения регистров. Планирование кода.

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

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

Генерация объектного кода. Синтаксически-управляемый генератор Грехема-Гленвиля. Технология -burg: поиск термов путем сличения с образцом. Метод переписывания термов. Генераторы генераторов кода.

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



РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Системы и технологии поддержки принятия решений»

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

по направлению 231000 «Программная инженерия»

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

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

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

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

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



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

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

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

общие вопросы построения корпоративных информационных систем с функциями поддержки принятия управленческих решений;

технология хранилищ данных;

технология OLAP-анализа;

технология Data Mining;

методы генерации и оценки управленческих решений.
Общая трудоемкость дисциплины составляет 4 зачетных единицы, 144 часа.
На лабораторном практикуме студенты самостоятельно изучают методические рекомендации к лабораторным работам, осваивают инструментальные программные средства моделирования информационных систем, разработки хранилищ данных, OLAP-приложений.

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Функциональное и логическое программирование»

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

по направлению 231000 «Программная инженерия»

(аннотация)
Целью дисциплины является формирование и закрепление системного подхода при разработке программ с применением языков функционального и логического программирования (ФЛП).

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

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

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

знать: системы разработки программ с использованием языков функционального и логического программирования, методы программирования с использованием языков ФЛП, разработка программ с применением языков ФЛП;

уметь: обосновать выбор языка (языка функционального или логического программирования) для решения конкретных задач; разрабатывать и тестировать программы с применением программных средств, используемых в современных языках ФЛП.

Дисциплина включает следующие разделы. Функциональное программирование: введение; основные понятия; базовые функции языка Lisp; определение функций; управляющие структуры; рекурсия; функции более высокого порядка; внутреннее представление списков; макросы; массивы; входные и выходные потоки. Логическое программирование: подходы к программированию на языке Пролог; синтаксис языка Пролог; унификация; рекурсивные процедуры; операторы; списки; средства управления ходом выполнения программы.

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

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

«Защита информации»

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

по направлению 231000 «Программная инженерия»

(аннотация)
Цели освоения дисциплины

Дисциплина "Защита информации" предназначена для студентов третьего курса,

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

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


Общая трудоемкость дисциплины составляет 5 зачетных единиц, 180 часов.
Каталог: sites -> edu.sfu-kras.ru -> files
files -> Дисциплины Современные проблемы науки и образования
files -> Дисциплины Современные проблемы науки и образования
files -> Дисциплины «История» Общая трудоемкость изучения дисциплины составляет 3 зач ед. ( 108 часов). Цели и задачи дисциплины
files -> «Философия образования и науки» Цели и задачи дисциплины: Цель
files -> Дисциплины «История» Общая трудоемкость изучения дисциплины составляет 3 зач ед. ( 108 часов). Цели и задачи дисциплины
files -> Федеральное государственное автономное образовательное
files -> Программа 080200. 68. 00. 18 Управление конфликтом
files -> Дисциплины Безопасность жизнедеятельности Общая трудоемкость изучения дисциплины составляет 5 зачетных единиц (180 часов). Цели и задачи дисциплины
files -> 2 з е.*36=72 час. Цели и задачи дисциплины
files -> Дисциплины Философия Общая трудоемкость изучения дисциплины составляет 4 зачетных единицы ( 144 часа)


Поделитесь с Вашими друзьями:
1   2   3   4   5   6


База данных защищена авторским правом ©psihdocs.ru 2017
обратиться к администрации

    Главная страница