Министерство образования Республики Беларусь
Учреждение образования
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ"
ПРОГРАММА
вступительного экзамена в магистратуру по специальности
1-40 80 05 "Математическое и программное обеспечение вычислительных
машин, комплексов и компьютерных сетей" Минск 2011 Программа составлена на основании типового учебного плана по специальности 1-40 01 01 «Программное обеспечение информационных технологий».
СОСТАВИТЕЛИ:
Бахтизин В.В. - к.т.н., доцент, зав. кафедрой «Программное обеспечение информационных технологий».
РЕКОМЕНДОВАНА К УТВЕРЖДЕНИЮ:
Кафедрой ПОИТ учреждения образования «Белорусский государственный университет информатики и радиоэлектроники» (протокол № 24 от «25 » апреля 2011г.) Заведующий кафедрой ПОИТ Раздел 1. Языки программирования Основы алгоритмизации. Основы структурного программирования.Классификация языков программирования. Процедурно-ориентированное программирование. Машинно-ориентированное программирование.
Функциональное программирование. Логическое программирование.
Объектно-ориентированное программирование: классы, объекты, конструкторы и деструкторы, методы, свойства, наследование, виртуальные методы, шаблоны. Расширяемое программирование. Визуальное программирование. Компонентное программирование. Концепции объектноориентированного программирования в различных языках программирования.
Раздел 2. Структуры и алгоритмы обработки данных Построение и анализ алгоритмов. Основные абстрактные типы данных.
Списки, очереди, стеки, деки, отображения. Представление выражений в обратной польской записи. Хеш-таблицы. Деревья. Алгоритмы обхода деревьев. Прошивка деревьев. Построение кодов Хаффмана на основе деревьев. Деревья двоичного поиска. Красно-черные деревья. Графы.
Алгоритмы на графах. Алгоритмы обхода графов. Алгоритм Дейкстры.
Методы анализа алгоритмов. Алгоритмы «разделяй и властвуй».
Динамическое программирование. «Жадные» алгоритмы. Поиск с возвратом.
Алгоритмы локального поиска. Структуры данных и алгоритмы для внешней памяти.
Раздел 3. Операционные системы и системное программирование Назначение и функции операционной системы (ОС). Принципы построения ОС. Понятие процесса, потока, ресурса. Взаимодействие процессов. Управление ресурсами, проблема тупиков. Управление памятью.
Виртуальная память. Управление вводом-выводом. Управление файлами.
Современные ОС. Организация ОС UNIX. Архитектура и основные подсистемы Windows. Управление процессами в ОС Windows. Управление потоками в ОС Windows. Организация памяти в ОС Windows. Технология COM. Реестр ОС Windows. Архитектура и основные подсистемы.NET.
Принципы модульного программирования в среде.NET. Сборки платформы.NET. Общая система типов данных в среде.NET. Объектная модель в среде.NET и языке C#. Модели управления динамической памятью. Объекты в среде.NET. Ресурсы в среде.NET. Средства многопоточного программирования в среде.NET. Средства обобщенного программирования.
Интерфейсы в среде.NET. Технология WPF (Avalon). Технология.NET Remoting. Сервисно-ориентированная архитектура. Технология WCF (Indigo).
Раздел 4. Базы данных и системы управления базами данных Объект, модель, данные, знания, физическое представление. Модели представления данных. Языки описания и обработки данных. Нормализация отношений. Транзакции и целостность баз данных. Представление знаний.
Компиляторы SQL. Системы управления базами данных (СУБД) и «клиентсервер». Распределенные СУБД. Безопасность и надежность.
Администрирование.
Раздел 5. Компьютерные системы и сети Типы организации систем. Параллельные процессоры. Системы с операционным конвейером. Мультипроцессорные системы. Систолические структуры. Принципы конвейерной организации. Структурные конфликты и способы их минимизации. Конфликты по данным. Конфликты по управлению. Локальные и глобальные вычислительные сети. Трафик и пропускная способность. Понятие сетевого ресурса, клиента, сервера. Состав аппаратного оборудования сети. Разновидности физических сетевых топологий. Физическая среда передачи данных. Виды узлов сети. Логическая структура вычислительных сетей. Эталонная модель взаимодействия открытых систем (ISO/OSI). Функции отдельных уровней OSI. Физическая и логическая адресация в локальных и глобальных сетях. Сетевые протоколы.
Технология proxy-серверов. Служба передачи файлов FTP. Протокол HTTP.
Основы удаленного вызова процедур.
Раздел 6. Технологии разработки программного обеспечения Жизненный цикл (ЖЦ) программных средств (ПС): стратегии разработки ПС, модели ЖЦ, влияние модели ЖЦ на технологию разработки ПС. Структурный подход к проектированию ПС. Классические технологии проектирования программных средств: модульное проектирование, нисходящее проектирование, восходящее проектирование. Оценка эффективности структурного разбиения программ на модули. Современные структурные технологии разработки программных средств: методологии и нотации визуального моделирования и проектирования программных средств, функциональное моделирование (IDEF0), информационное моделирование (IDEF1), метод Джексона. Объектно-ориентированный подход к проектированию ПС. Унифицированный язык моделирования UML.
Построение диаграмм UML. Генерация программного кода в среде Rational Rose. Методология создания программного обеспечения с помощью Rational Unified Process.
Раздел 7. Надежность программного обеспечения Показатели надежности компьютерных систем. Анализ причин появления ошибок в программном обеспечении (ПО). Математические модели надежности ПО. Стандартизация оценки надежности ПО:
действующие стандарты, модели надежности ПО, подхарактеристики и метрики надежности ПО, методы оценки надежности ПО. Способы повышения надёжности ПО. Тестирование ПО: основные понятия, принципы организации тестирования, проектирование тестовых вариантов, структурные и функциональные методы тестирования ПО. Методика тестирования ПО: тестирование модулей, тестирование сборки (интеграции), тестирование правильности конечного программного продукта. Системное тестирование и его типы. Регрессионное тестирование.
СПИСОК ЛИТЕРАТУРЫ
1. Адаменко А., Кучуков А. Логическое программирование и Visual Prolog в подлиннике. – М., 2003.2. Анкудинов Г.И., Анкудинов И.Г., Стрижаченко А.И. Сети ЭВМ и телекоммуникации. Архитектура и сетевые технологии. Учебное пособие. – СПб, 2006.
3. Ахо А., Хопкрофт Д., Ульман Д. Структуры данных и алгоритмы. – М., 2003.
4. Бахтизин В.В., Глухова Л.А. Стандартизация и сертификация программного обеспечения. – Мн.: БГУИР, 2006.
5. Бахтизин В.В., Глухова Л.А. Технология разработки программного обеспечения. – Мн.: БГУИР, 2010.
функционального тестирования программного обеспечения и систем. – СПб, 2004.
7. Богданов А.В., Корхов В.В., Мареев В.В., Станкова Е.Н.
Архитектуры и топологии многопроцессорных вычислительных систем. – М., 2004.
8. Братко И. Алгоритмы искусственного интеллекта на языке PROLOG. – СПб, 2004.
9. Брауде Э. Технология разработки программного обеспечения. – СПб, 2004.
10. Будилов В. Интернет-программирование на Java. – М., 2003.
11. Буч Г. Объектно-ориентированный анализ и проектирование. – М., 1999.
12. Гарсия-Молина Г., Уидом Д., Ульман Д. Системы баз данных.
Полный курс. – М., 2003.
программирования. – СПб, 2003.
14. Голубь Н. Искусство программирования на Ассемблере. – СПб, 2006.
15. Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение. – СПб, 2002.
16. Гуров В.В., Чуканов В.О. Основы теории и организации ЭВМ. – М., 2006.
17. Деева Н.В. Архитектура ЭВМ и систем: Учебное пособие для студентов специальности «Информационные системы». – Новосибирск, 2002.
18. Дьяконов В.П. Вейвлеты. От теории к практике. – М., 2002.
Фундаментальные концепции менеджмента бизнес-приложений. – К., 2001.
20. Кочан С. Программирование на языке C. – СПб, 2006.
21. Лагари Н., Мунгале А. NET: сетевое программирование для профессионалов. – М., 2005.
22. Липаев В.В. Надежность программных средств. – М., 1998.
23. Одинцов И. Профессиональное программирование. Системный подход. – СПб, 2003.
24. Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. Учебник для вузов. – СПб, 2006.
25. Олифер В.Г., Олифер Н.А. Новые технологии и оборудование IPсетей. – СПб, 2000.
26. Олифер В.Г., Олифер Н.А. Сетевые операционные системы. – СПб, 2001.
27. Орлов С.А. Технологии разработки программного обеспечения:
Учебник для ВУЗов. – СПб, 2002.
28. Павловская Т. Паскаль. Программирование на языке высокого уровня. – СПб, 2004.
29. Половко А.М., Гуров С.В. Основы теории надежности. – СПб.:
БХВ-Петербург, 2006.
30. Роб П. Системы баз данных: проектирование, реализация и управление. – М., 2004.
31. Семенов Ю., Федотова Д., Чижик К. CASE-технологии: Практикум.
– СПб, 2003.
32. Снейдер Й. Эффективное программирование TCP/IP. – СПб, 2001.
33. Столингс В. Операционные системы. – М., 2002.
34. Столингс В. Основы защиты сетей. Приложения и стандарты. – М., 2002.
35. Уилсон С. Принципы проектирования и разработки программного обеспечения: Учебный курс. – СПб, 2003.
36. Ульман Д. Основы реляционных баз данных. – М., 2006.
37. Уэйт М., Прата С., Мартин Д. Язык Си. – М.: 2000.
38. Фаронов В. Delphi. Программирование на языке высокого уровня. – СПб, 2003.
39. Фаронов В. Программирование баз данных в Delphi 6. Учебный курс. – СПб, 2002.
40. Фаронов В.В. Турбо Паскаль. Учебное пособие. – СПб, 2007.
41. Фатрелл Р., Шафер Д., Шафер Л. Управление программными проектами: достижение оптимального качества при минимуме затрат. – М.:
Вильямс, 2003.
42. Шилдт Г. Самоучитель С++. – СПб, 2002.