2 1 Цель изучения дисциплины Целью изучения данной дисциплины является знакомство студентов с общими вопросами создания распределенных систем, рекомендациями по архитектуре сложных приложений. 1.1 Задача изучения дисциплины В конце курса студенты должны иметь представление о технологиях создания распределенных приложений, поддерживаемые платформой Microsoft .NET, понимать их особенности и взаимосвязь, уметь дать критерии выбора той или иной технологии при создании распределенных систем, показать границы их применимости. 1.2 В результате изучения дисциплины студент должен знать: Понятие распределенные системы, промежуточное программное, заимодействие компонент распределенной системы, распределенные события, транзакции, интерфейс программной компоненты, промежуточные среды COM+, ASP.NET, .NET Remoting Microsoft Message Queuing (MSMQ). 1.3 Пререквизиты Дисциплины, необходимые для изучения дисциплины «Технологии распределенных систем»: Операционные системы, Сетевые операционные системы, Компьютерные сети, Объектное программирование, Основы компонентного программирования, Инструментальные средства проектирования систем, Языки Интернет программирования. 1.4 Постреквизиты Дисциплины, в которых используются знания изучаемой дисциплины: Безопасность и управление доступом в информационных системах, Разработка и стандартизация программных средств и информационных технологий, Программное обеспечение автоматизированных информационных систем, Дипломное проектирование. 2 Система оценки знаний По кредитной технологии обучения для всех курсов и по всем дисциплинам в КазНТУ имени К.И.Сатпаева применяется рейтинговый контроль знаний студентов. Сведения об оценке знаний осуществляются по 3 балльно-рейтинговой системе в виде шкалы, где указываются все виды контроля. Каждый вид контроля, включая итоговый, оценивается по 100% шкале. Таблица 1 Распределение рейтинговых баллов по видам контроля Вариант № Вид итогового контроля Виды контроля 1 Экзамен, курсовой проект % Итоговый контроль Текущий контроль Рубежный контроль 100 100 100 Таблица 2 Календарный график сдачи всех видов контроля по дисциплине «Интернет - технологии» Недели 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Недельн 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ое количест во контроля Виды С Л С Л2 Л Л С Р Л С Л6 С Л7 С РК контроля Р 1 Р2 3 4 Р3 К 5 Р4 Р5 Р 1 6 Виды контроля: Л – лабораторная работа, КП – курсовой проект, СР - самостоятельная работа, РК – рубежный контроль. Таблица 3 Оценка знаний студентов Оценка Отлично Хорошо Удовлетворительно Неудовлетворительно Буквенный эквивалент В процентах % В баллах А АВ+ В ВС+ С СD+ D F 95-100 90-94 85-89 80-84 75-79 70-74 65-69 60-64 55-59 50-54 0-49 4 3,67 3,33 3,0 2,67 2,33 2,0 1,67 1,33 1,0 0 4 3 Содержание дисциплины 3.1 Тематический план курса Изучение дисциплины “Технологии распределенных систем” предполагает обязательные лекционные (1 кредит) и лабораторные занятия (1 кредит), самостоятельную работу студентов (СРС и СРСП). Тематический план дисциплины с указанием тем и количеством академических часов по всем видам занятий (по темам) приведен в следующей таблице. Таблица 4 Тематический план курса Количество академических часов Лабора Лекция СРСП СРС торные Наименование темы N 1 Введение в распределенные системы 1 2 2 2 Промежуточное программное обеспечение Типы архитектур распределенных систем Взаимодействие компонент распределенной системы Распределенные события, транзакции 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 8 Описание интерфейса программной компоненты Введение в промежуточную среду COM+ Языки XML – XSD, SOAP, WSDL 1 2 2 9 Промежуточная среда .NET Remoting 1 2 2 10 Microsoft Message Queuing (MSMQ) – промежуточная среда обмена сообщениями Использование среды COM+ в приложениях .NET Framework Промежуточная среда веб служб ASP.NET Создание веб-службы в среде .NET Framework 1 2 2 1 2 2 3 4 5 6 7 11 12 13 5 1 6 2 2 1 4 2 2 14 15 Обеспечение безопасности распределенных систем в .NET Framework Применение промежуточных сред Всего: 1 5 1 15 15 2 2 2 2 30 30 3.2 Название и содержание лекционных занятий Таблица 5 № Наименование темы Содержание Объем (час.) 1 Введение в распределенные системы. Дается представление о распределенных системах, компонентах распределенной системы. Формулируются требования к распределенным системам. Вводится понятие промежуточной среды. 2 2 Взаимодействие компонент распределенной системы Рассматриваются две модели взаимодействия распределенных компонент: использование сообщений и удаленный вызов. Описываются различные подходы использования удаленных объектов и удаленных событий. Рассматривается понятие распределенной транзакции. 2 3 Описание интерфейса программной компоненты Рассматривается понятие интерфейса компоненты, языков описания интерфейса и сообщений, передаваемых между программными компонентами. Описываются существующие спецификации данных языков. 2 4 Microsoft Message Queuing (MSMQ) Рассматривается система фирмы Microsoft для обмена сообщениями между программами. Приводятся примеры применения среды MSMQ при использовании .NET Framework 2.0. Даются рекомендации по использованию систем обмена 2 6 сообщениями системах. в распределенных 5 Промежуточная среда COM+ и служба Enterprise Services Рассматривается промежуточная среда COM+, предназначенная для использования удаленных объектов, созданных с применением неуправляемого кода. Приводится схема взаимодействия сред COM+ и .NET. Даются примеры, иллюстрирующие основные преимущества от применения среды COM+ при программировании с .NET Framework. Даются рекомендации по использованию COM+ в распределенных системах. 2 6 Промежуточная среда веб служб ASP.NET. Дается введение в веб службы. Рассматривается архитектура ASP.NET как среды фирмы Microsoft для создания веб служб. Описывается использование расширений ASP.NET. Приводятся примеры реализации собственных расширений веб служб. Даются рекомендации по использованию веб служб в распределенных системах. 2 7 Промежуточная среда .NET Remoting Рассматривается промежуточная среда .NET Remoting, примеры ее использования и модификации архитектуры данной среды. Даются рекомендации по применению .NET Remoting в распределенных приложениях. 2 8 Обеспечение безопасности распределенных систем в .NET Framework Приводится классификация подходов к обеспечению безопасности распределенных систем, описываются возможные решения по обеспечению безопасности для распределенных систем, использующих .NET Framework. 2 7 9 Применение промежуточных сред Дается итоговое сравнение описанных в курсе технологий и описывается их возможное применение в распределенных системах. Итого: 1 15 3.3 Название, содержание и количество часов лабораторных занятий Таблица 6 № Наименование темы Содержание Объем (час.) Создайте приложение ASP.NET, которое бы при обращении к нему выводило надпись "Привет, мир!" Создание Web-приложения и настройка Web-формы. Добавление команд трассировки. Включение трассировки на уровне приложения. Просмотр сообщений трассировки. 2 1 Создание простого приложения ASP.NET 2 Создание и применение внешних сборок в приложениях ASP.NET 2.0 3 Создание и Создание Web-приложения. применение Web-служб Реализация проверки вводимых в приложениях значений ASP.NET 2.0 2 4 Обработка событий Создание Web-приложения и на сервере главной формы. Создание пользовательского элемента управления и применение его на главной форме. Обеспечение взаимодействия между пользовательским элементом управления и главной формой: 2 8 2 5 Создание web – служб 1. Изучить основные принципы средствами Microsoft создания Web-сервисов. Visual Studio.NET 2. Создать web-сервис, который будет использовать XML документ в качестве источника данных. То есть создать Web- сервис, возвращающий обычный набор данных содержащий информацию, взятую из XML-файла. 3. Дополнить созданный webсервис процедурой позволяющей сохранять данные в XML файле. 4. Создать клиентское приложение. 2 6 Работа с базой данных при помощи объекта SQLDataSource 2 7 Изучение использование ASMX и WCF Изучить возможности приложения ASP.NET при обращении к базе данных локального сервера SQL Server. и Создание Web-службы средствами служб ASP.NET 2.0, файлы .ASMX. Создание Web-службы. Итого: 3.6 3 15 Название темы и количество часов СРС Таблица 7 № 1 2 3 4 5 6 Задание Определение распределенной системы. Компоненты распределенной системы . Понятие промежуточной среды Service Oriented Architecture (SOA) - технология разработки распределенных систем Модели взаимодействия компонент распределенной системы. Часть 1. Модели взаимодействия компонент распределенной системы. Часть 2. Описание интерфейса программной компоненты 9 Объем (час.) 2 2 2 2 2 2 SOAP: язык сообщений распределенной системы Структура WSDL (WEB Services Description Language) документа 8 Framework .Net - единый каркас среды разработки приложений 9 Message Queuing (MSMQ) – промежуточная среда обмена сообщениями 10 Промежуточная среда COM+ и служба Enterprise Services 11 Использование среды COM+ в приложениях .NET Framework 12 Промежуточная среда веб служб ASP.NET Архитектура ASP.NET 13 Описание веб службы ASP.NET 14 Промежуточная среда .NET Remoting 15 Обеспечение безопасности распределенных систем Итого 7 2 2 2 2 2 2 2 2 2 30 3. 7 Название темы и количество часов СРСП Таблица 8 № 1 2 3 4 5 6 7 8 9 10 11 12 Задание Объем (час.) Определение распределенной системы. Компоненты распределенной системы . Понятие промежуточной среды Service Oriented Architecture (SOA) - технология разработки распределенных систем Модели взаимодействия компонент распределенной системы. Часть 1. Модели взаимодействия компонент распределенной системы. Часть 2. Описание интерфейса программной компоненты 2 SOAP: язык сообщений распределенной системы Структура WSDL (WEB Services Description Language) документа Framework .Net - единый каркас среды разработки приложений Message Queuing (MSMQ) – промежуточная среда обмена сообщениями Промежуточная среда COM+ и служба Enterprise Services 2 Использование среды COM+ в приложениях .NET Framework Промежуточная среда веб служб ASP.NET Архитектура 2 10 2 2 2 2 2 2 2 2 2 ASP.NET 13 Описание веб службы ASP.NET 14 Промежуточная среда .NET Remoting 15 Обеспечение безопасности распределенных систем Итого 3.9 2 2 2 30 Таблица проведения занятий Таблица 9 № Дата Время 1 2 3 Наименование тем 1 4 Лекции Введение в распределенные системы 2 3 4 5 6 7 8 Промежуточное программное обеспечение Типы архитектур распределенных систем Взаимодействие компонент распределенной системы Распределенные события, транзакции Описание интерфейса программной компоненты Введение в промежуточную среду COM+ Языки XML – XSD, SOAP, WSDL 9 10 Промежуточная среда .NET Remoting Microsoft Message Queuing (MSMQ) – промежуточная среда обмена сообщениями Использование среды COM+ в приложениях .NET Framework Промежуточная среда веб служб ASP.NET Создание веб-службы в среде .NET Framework Обеспечение безопасности распределенных систем в .NET Framework Применение промежуточных сред Лабораторные работы Создание простого приложения ASP.NET 11 12 13 14 15 1 2 Создание и применение внешних сборок в приложениях ASP.NET 2.0 3 Создание и применение приложениях ASP.NET 2.0 11 Web-служб в 4 Обработка событий на сервере 5 Создание web – служб средствами Microsoft Visual Studio.NET 6 Работа с базой данных при помощи объекта SQLDataSource 7 Изучение и использование служб ASMX и WCF 4 Учебно-методические материалы по дисциплине Список основной литературы 1 Э. Таненбаум, М. ван Стеен. «Распределенные системы. Принципы и парадигмы». СПб.: Питер, 2003 2 Gustavo Alonso, Fabio Casati, Harumi Kuno, Vijay Machiraju. «Web Services. Concepts, Architectures and Applications». Springer-Verlag, 2004. 3 А. А. Цимбал, М. Л. Аншина. "Технологии создания распределенных систем. Для профессионалов". СПб.: Питер, 2003. 4 Ф. Бернштейн. "Middleware: модель сервисов распределенной системы". Открытые системы, Системы управления базами данных, № 2, 1997 Список дополнительной литературы 5 Натания Питс. "XML за рекордное время", М.: "Мир", 2000 6 Эрик Ньюкомер. "Веб-сервисы. Для профессионалов", СПб.: Питер, 2003 7 А. А. Цимбал. "Технология CORBA для профессионалов". СПб.: Питер, 2001. 8 И. Ш. Хабибуллин. "Создание распределенных приложений на Java 2". СПб.: БХВ-Петербург, 2002. 9 http://www.intuit .ru 10 www.microsoft.com/web/downloads/platform.aspx Microsoft Web Platform Installer 11 http://VisualStudio2008.ru 12 http://microsoft.com/express/ru/vwd/ 13 http://www.asp.net/mvc/gallery 14 http://www.asp.net/mvc 12 СОДЕРЖАНИЕ 1 1.1 1.2 1.3 1.4 2 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 4 Цель изучения дисциплины Задача изучения дисциплины В результате изучения дисциплины студент должен знать Пререквизиты Постреквизиты Система оценки знаний Содержание дисциплины Тематический план курса Содержание и количество часов лекционных занятий Содержание и количество часов лабораторных занятий Тематика курсовой работы (проектов) Порядок выполнения и требования к выполнению курсовой работы (проекта) Название темы и количество часов СРС Название темы и количество часов СРСП Таблица проведения занятий Учебно-методические материалы по дисциплине 13 3 3 3 3 3 5 5 6 8 9 9 10 11 11 12