Утверждаю
Вид материала | Рабочая программа |
- Утверждаю утверждаю, 21.26kb.
- «утверждаю» «утверждаю», 262.03kb.
- Утверждаю утверждаю, 393.06kb.
- «Утверждаю» «Утверждаю» Председатель Совета доу заведующий мдоу №25, 113.74kb.
- Кикбоксинг против наркомании и детской преступности «Утверждаю» «Утверждаю», 78.29kb.
- Утверждаю: утверждаю, 156.74kb.
- «утверждаю» «утверждаю» Председатель республиканского Директор маоудод «цдтт №5» совета, 42.86kb.
- Утверждаю» «Утверждаю», 163.81kb.
- «Динамо», 49.89kb.
- Утверждаю: утверждаю: Председатель Глава администрация оо «Гомельский рыболовный клуб», 78.23kb.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Томский государственный университет
Факультет прикладной математики и кибернетики
УТВЕРЖДАЮ
Декан факультета прикладной математики и кибернетики, профессор
_________А.М. Горцев
" " 2011 г.
Рабочая программа дисциплины
«Введение в технологии распределенных вычислений»
Направление подготовки: 010400 – Прикладная математика и информатика
Квалификация выпускника: Бакалавр
Форма обучения: очная
Томск
2011 г.
1. Цели освоения дисциплины:
Целью дисциплины является ознакомление студентов с основными технологиями построения распределенных вычислительных систем. В рамках курса решаются следующие задачи: усвоение современных технологий распределенных вычислений, приобретение навыков проектирования распределенных систем.
2. Место дисциплины в структуре ООП бакалавриата
Дисциплина по выбору для студентов 4 года обучения, читается в 8 семестре (вариативная часть профессионального цикла).
Для успешного освоения дисциплины студент должен иметь предварительную подготовку по дисциплинам: дискретная математика, основы информатики, языки и методы программирования, системное и прикладное программное обеспечение, базы данных, вычислительные сети.
Данная дисциплина необходима для изучения следующих дисциплин: инженерия программного обеспечения
3. Компетенции обучающегося, формируемые в результате освоения дисциплины
Способность владения навыками работы с компьютером как средством управления информацией (ОК-11); способность работать с информацией в глобальных компьютерных сетях (ОК-12); способность использовать в научной и познавательной деятельности, а также в социальной сфере профессиональные навыки работы с информационными и компьютерными технологиями (ОК-14); способность работы с информацией из различных источников, включая сетевые ресурсы сети Интернет, для решения профессиональных и социальных задач (ОК-15).
Способность приобретать новые научные и профессиональные знания, используя современные образовательные и информационные технологии (ПК-2); способность понимать и применять в исследовательской и прикладной деятельности современный математический аппарат (ПК-3); способность осуществлять целенаправленный поиск информации о новейших научных и технологических достижениях в сети Интернет и из других источников (ПК-6); способность решать задачи производственной и технологической деятельности на профессиональном уровне, включая: разработку алгоритмических и программных решений в области системного и прикладного программирования (ПК-9); способность применять в профессиональной деятельности современные языки программирования и языки баз данных, операционные системы, электронные библиотеки и пакеты программ, сетевые технологии (ПК-10).
В результате освоения дисциплины обучающийся должен:
• Знать: основные технологии построения распределенных систем: начиная от процедурных подходов, проходя через объектные и заканчивая компонентными моделями; базовые шаблоны проектирования распределенных систем.
• Уметь: применить изученные методы и алгоритмы на практике в процессе разработки реальных программных систем.
• Владеть: практическими навыками работы с современными системами проектирования и разработки распределенных систем.
4. Структура и содержание дисциплины
Общая трудоемкость дисциплины составляет 2,6 зачетных единиц 94 часа.
4.1. Распределение часов курса по темам и видам работ
№№ п/п | Раздел дисциплины | Семестр | Неделя семестра | Виды учебной работы (в часах) | Формы текущего контроля успеваемости Форма промежуточной аттестации | |||
Лекции | Практические занятия | Лабораторные работы | Самостоятельная работа | |||||
1. | Подходы к построению распределенных систем – общий обзор | 8 | 1 | 2 | | | | Тест |
2. | RPC | 8 | 2 | 2 | | | | Тест |
3. | CORBA | 8 | 2-3 | 4 | | | | Тест |
4. | RMI | 8 | 4 | 2 | | | | Тест |
6 | EJB | 8 | 4-5 | 4 | | | | Контрольная работа |
7 | .NET Remoting | 8 | 5-6 | 4 | | 8 | 12 | Тест |
8 | Шаблоны проектирования распределенных систем | 8 | 7-8 | 6 | 8 | | 13 | Зачет |
Итого | | | | 24 | 8 | 8 | 25 | 29 |
4.2. Перечень разделов курса
Тема 1. Подходы к построению распределенных систем – общий обзор. История распределенных вычислений. Основные принципиальные схемы построения распределенных систем: псевдораспределенные системы, системы распределенного доступа к БД, системы, основанные на очередях сообщений, мониторы транзакций, системы распределенных объектов, мониторы компонентных транзакций.
Тема 2. Remote Procedure Call. Общие принципы организации удаленного вызова: введение в процедурный IDL. Понятия маршаллинга и демаршаллинга. Понятия клиентского и серверного стабов.
Тема 3. Common Object Request Broker Architecture. Общие принципы организации взаимодействия объектов в распределенной среде. Введение в объектный IDL. Понятие объектной ссылки. Понятие жизненного цикла CORBA-объекта. Введение в объектные адаптеры.
Тема 4. Remote Method Invocation. Основные понятие RMI. Интерфейсы Java. Уровни архитектуры RMI. Стабы и скелетоны в RMI.
Тема 5. Enterprise Java Beans. Мониторы компонентных транзакций на примере J2EE. Типы бинов. Удаленные и локальные интерфейсы. EJB-контейнеры.
Тема 6. .NET Remoting. Введение в .NET. Понятие виртуальной машины и управляемого кода. Домены и контексты приложения. Границы Remoting. Дистанцируемые и недистанцируемые типы. Передача объектов по ссылки и по значению. Режимы активации объектов в .NET Remoting. Каналы в .NET Remoting. Управление жизненным циклом объектов (лицензии и спонсоры)
Тема 7. Шаблоны проектирования распределенных систем. Архитектурные шаблоны, шаблоны организации бизнес-логики, шаблоны организации источников данных
4.3. Лабораторный практикум/практикум на ЭВМ
Тема 1. Организация удаленного взаимодействия в рамках технологии .NET Remoting.
Тема 2. Работа с XML из .NET приложений
Тема 3. Работа с базами данных из .NET приложений
Тема 4. Реализация системы расчета скидок в розничной торговой сети в рамках трехзвенной архитектуры (клиент – сервер приложений - СУБД) с использованием технологии .NET Remoting
4.4. Практические занятия
Тема 1. Проектирование трехзвенной архитектуры (клиент – сервер приложений - СУБД) применительно к технологии .NET Remoting. Предметные области индивидуальны для каждого студента
4.5. Курсовой проект (курсовая работа)
Курсовой проект не предусмотрен.
5. Образовательные технологии
В рамках данного курса предусмотрены активные и интерактивные формы проведения занятий (компьютерные симуляции, деловые и ролевые игры, разбор конкретных ситуаций) Также предусмотрены встречи с представителями российских и зарубежных компаний, государственных и общественных организаций, мастер-классы экспертов и специалистов.
Удельный вес занятий, проводимых в интерактивных формах, составляет не менее 40% аудиторных занятий. Занятия лекционного типа для соответствующих групп студентов составляют не более 40% аудиторных занятий.
6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины
Все необходимое учебно-методическое обеспечение по дисциплине представлено в печатном или электронном виде в библиотеке ТГУ, а также в электронном виде в сети Интернет на сайте кафедры программирования или ИДО ТГУ.
В конце 8 семестра сдается зачет.
6.1. Примерный перечень вопросов к экзамену:
- Распределенные системы: терминология и задачи. Архитектуры. Промежуточное ПО.
- Псевдо-MiddleWare (CGI, ISAPI, ASP/JSP, Servlets)
- RPC
- Системы прозрачного доступа к БД.
- MOM
- TP
- CTM
- Средства интеграции распределенных объектов
- CORBA
- RMI
- EJB
- .NET Remoting
- Расслоение системы по уровням
- Базовые типоые решения
- Паттерны организация бизнес-логики
- Паттерны организации источников данных
- Взаимное отображение объектов и реляционных структур
7. Учебно-методическое и информационное обеспечение дисциплины
а) Основная литература:
- М. Фаулер "Архитектура корпоративных программных приложений", М.: Вильямс, 2007.
- А. Цимбал “Технология CORBA для профессионалов”, Спб.: Питер
- Debu Panda, Reza Rahman, Derek Lane, “EJB 3 in Action”, 2007
- William Grosso, Java RMI , O'Reilly 2001
- Скотт Маклин, Джеймс Нафтел, Ким Уильямс, “Microsoft .NET Remoting”, 2003
- Ingo Rammer, “Advanced .NET Remoting (C# Edition)”
8. Материально-техническое обеспечение дисциплины
8.1. Требования к аудиториям (помещениям, местам) для проведения занятий
Стандартно оборудованные лекционные аудитории. Для проведения лабораторных занятий – компьютерные классы. А также аудитории для проведения интерактивных лекций: видеопроектор, экран настенный, др. оборудование.
8.2. Требования к специализированному оборудованию
Рабочие места преподавателя и студентов должны быть оснащены оборудованием не ниже: Pentium |||-800/ОЗУ-256 Мб / Video-32 Мб / HDD 80 Гб / СD-ROM – 48x / Network adapter – 10/100/ Мбс / SVGA – 15”.
8.3. Требования к специализированному программному обеспечению
При использовании электронных учебных пособий каждый обучающийся во время занятий и самостоятельной подготовки должен быть обеспечен рабочим местом в компьютерном классе с выходом в Интернет и корпоративную сеть факультета. Лаборатории (компьютерные классы) должны быть обеспечены необходимым комплектом лицензионного программного обеспечения.
Программа составлена в соответствии с требованиями ФГОС ВПО с учетом рекомендаций и ПрООП ВПО по направлению подготовки 010400 – Прикладная математика и информатика
Автор: ст. преподаватель А.А. Мирютов
Рецензент: к.т.н., доцент, Ю.В. Седов
Программа одобрена на заседании ученого совета ФПМК
от “____” ___________ 2011г, протокол № ____.