УТВЕРЖДАЮ Проректор-директор ИК ___________ А.В.Замятин «___»_____________2013 г. РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ ТЕХНОЛОГИЯ РАЗРАБОТКИ ПОЛЬЗОВАТЕЛЬСКИХ ИНТЕРФЕЙСОВ НАПРАВЛЕНИЕ ООП 230100 Информатика и вычислительная техника ПРОФИЛЬ ПОДГОТОВКИ Информационное и программное обеспечение систем управления КВАЛИФИКАЦИЯ (СТЕПЕНЬ) магистр БАЗОВЫЙ УЧЕБНЫЙ ПЛАН ПРИЕМА 2013 г. КУРС 2 СЕМЕСТР 3 КОЛИЧЕСТВО КРЕДИТОВ 4 кредита КОД ДИСЦИПЛИНЫ М2.В.6.2 Виды учебной деятельности Временной ресурс по очной форме обучения 24 24 48 96 144 Лекции, ч. Лабораторные занятия, ч. Аудиторные занятия, ч. Самостоятельная работа, ч. ИТОГО, ч. ВИД ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ экзамен, дифзачет КУРСОВОЙ ПРОЕКТ 3 семестр ОБЕСПЕЧИВАЮЩЕЕ ПОДРАЗДЕЛЕНИЕ кафедра АиКС ЗАВЕДУЮЩИЙ КАФЕДРОЙ АиКС ____________ д.т.н., профессор Г.П. Цапко РУКОВОДИТЕЛЬ ООП _______________ к.т.н., доцент Чередов А.Д. ПРЕПОДАВАТЕЛЬ _______________ к.т.н., доцент В.Н. Вичугов 2013 г. 1 1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ Дисциплина «Технология разработки пользовательских интерфейсов» является одной из дисциплин, на базе которых строится подготовка специалистов в области разработки и применения программного обеспечения средств вычислительной техники и автоматизированных систем. Целью данной дисциплины является знакомство с основными языками разработки пользовательских графических интерфейсов современных приложений и формирование знаний и навыков в области разработки интерфейсов на языках XUL и XAML. Указанные цели освоения дисциплины соответствуют целям (Ц1–Ц5) ООП. 2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ООП Дисциплина «Технология разработки пользовательских интерфейсов» (М2.В.6.2) входит в состав вариативной части профессионального цикла дисциплин учебного плана (М2.В). Для её успешного освоения необходимы базовые и специальные знания, полученные при изучении ООП бакалаврской подготовки по направлению «Информатика и вычислительная техника» и близких направлений. В рамках ООП «Информатика и вычислительная техника» данной дисциплине предшествуют знания, полученные при изучении дисциплин ПРЕРЕКВИЗИТОВ: Технология разработки программного обеспечения (М2.Б2), «Анализ банков данных (М1.В.2.5). КОРЕКВИЗИТЫ: Информационные технологии (М2.В.6.4), Проектирование программных приложений (М2.В.6.3). 3. РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ В соответствии с требованием ООП освоение дисциплины направлено на формирование у студентов следующих компетенций (результатов обучения), в т. ч. в соответствии с ФГОС (табл. 1). Таблица 1 Составляющие результатов обучения, которые будут получены при изучении дисциплины Результаты Составляющие результатов обучения обучения Код Знания Код Умения Код (компетенции из ФГОС) Р4 (ОК-4, З4.1.6 Языка разметки У4.1.6 Описывать В4.1.6 ПК-3, 4, 5,6) XUL для создания интерфейсы динамических приложений; пользовательских определять интерфейсов; внешний вид и 2 Владение опытом разработки кроссплатформенных расширений для браузера Mozilla Firefox на языке модели представления данных RDF; языка связок XBL; языков разметки XAML и SVG. поведение приложения; описывать пользовательские интерфейсы; добавлять в XAMLприложения векторные графические элементы. В результате освоения дисциплины достигнуты следующие результаты (табл. 2): студентами XUL; разработки пользовательских интерфейсов на языке XAML должны быть Таблица 2 Планируемые результаты освоения дисциплины № п/п Результат РД1 Знание языка разметки XUL для создания динамических пользовательских интерфейсов; модели представления данных RDF; языка связок XBL; языков разметки XAML и SVG. РД2 Умение описывать интерфейсы приложений; определять внешний вид и поведение приложения; описывать пользовательские интерфейсы; добавлять в XAML-приложения векторные графические элементы. РД3 разработки кросс-платформенных расширений для браузера Mozilla Firefox на языке XUL и разработки пользовательских интерфейсов на языке XAML В процессе освоения дисциплины у студентов развиваются следующие компетенции: 1. Универсальные (общекультурные) – способность использовать на практике умения и навыки в организации исследовательских и проектных работ, в управлении коллективом (ОК- 4 ФГОС); 2. Профессиональные: готовность разрабатывать и реализовывать планы информатизации предприятий и их подразделений (ПК-3); способность формировать технические задания и участвовать в разработке аппаратных и/или программных средств вычислительной техники (ПК-4); выбирать методы и разрабатывать алгоритмы решения задач управления и проектирования объектов автоматизации (ПК-5); применять современные технологии разработки программных комплексов с использованием CASE-средств, контролировать качество разрабатываемых программных продуктов (ПК-6). 3 4. СТРУКТУРА И СОДЕРЖАНИЕ ДИСЦИПЛИНЫ 4.1 Содержание разделов дисциплины: Раздел 1. Основы современных пользовательских интерфейсов (XAML, WPF) В данной теме рассматриваются понятия и основные составляющие современных технологий, методов и средств разработки пользовательских интерфейсов, таких как XUL, XAML, WPF, описывается их архитектура и синтаксис, рассказывается о преимуществах и недостатках, также представлены основные способы реализации. Рассматриваются практические задания по теме. Перечень лабораторных работ по разделу: ЛР № 1 «Введение в XAML и WPF». ЛР № 2 «Диспетчеры компоновки». СР 1. Зад 1. «Разработка приложения WPF в среде Microsoft Visual C# 2010 Express». Раздел 2. Графическая система Windows Presentation Foundation В данной теме подробно рассматривается графическая система WPF, ее основные классы, стили, элементы управления, триггеры, привязка данных. Перечень лабораторных работ по разделу: ЛР № 3 «Основные элементы управления WPF» ЛР № 4 «Привязка данных» ЛР № 5 «Использование стилей в WPF-приложениях» ЛР № 6 «Триггеры в WPF-приложениях» СР 3. Зад 3. «». Раздел 3. Разработка статических элементов интерфейса В данной теме подробно рассматриваются инструменты графической системы WPF для создания оригинальных статических элементов пользовательского интерфейса, таких как кисти, фигуры, пользовательские элементы и т.д. Перечень лабораторных работ по разделу: ЛР № 9 «Использование кистей в WPF-приложениях» ЛР № 10 «Использование фигур в WPF-приложениях» ЛР № 11 «Пользовательские элементы в WPF-приложениях» ЛР № 12 «Классы Path и Geometry. СР 3. Зад 3. «Разработайте WPF-приложение с двумя многострочными текстовыми полями, кнопками «Открыть», «Очистить», «Закрыть» и выпадающим списком для задания внешнего вида текстовых полей. Задайте 4 для текстовых полей одинаковый градиентный фон. Кнопка «Закрыть» должна быть доступна только в том случае, если в обоих текстовых полях нет текста. Задайте для кнопок различный внешний вид при наведении курсора и при нажатии на них. Внешний вид текстовых полей (тип шрифта, размер шрифта, цвет шрифта, форма ввода) должен меняться в зависимости от значения, выбранного в выпадающем списке». Раздел 4. Разработка динамических и анимационных элементов интерфейса В данной теме подробно рассматриваются средства графической системы WPF для создания оригинальных динамических элементов пользовательского интерфейса, таких как анимация, трансформация и т.д. Перечень лабораторных работ по разделу: ЛР № 7 «Анимация в WPF-приложениях» ЛР № 8 «Трансформация в WPF-приложениях» ЛР № 13 «Анимация на основе геометрического пути» СР 4. Зад 4. «Разработайте WPF-приложение «Текстовый редактор», включающее следующие элементы пользовательского интерфейса: блоки для ввода данных, кнопки. Блоки с многострочными текстовыми полями выводятся в нижней части интерфейса «полукругом». При выделении какого-либо блока (событие GotFocus) он плавно перемещается в центральную часть. При потере фокуса (событие LostFocus) блок возвращается в свое исходное состояние. Приложение не должно содержать код на языке C#. Проверьте, как будет происходить анимация кнопки, если геометрический путь будет содержать несколько фигур, не связанных между собою». 5. ОРГАНИЗАЦИЯ И УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ 5.1 Виды и формы самостоятельной работы Самостоятельная работа студентов включает текущую и творческую проблемно-ориентированную самостоятельную работу (ТСР). Текущая СРС заключается в проработке лекционного материала, подготовке к лабораторным и контрольным работам и включает: проработку лекционного материала; изучении теоретического материала к лабораторным занятиям, изучении тем, вынесенных на самостоятельную проработку, подготовку к контрольным работам. 5 Творческая проблемно-ориентированная самостоятельная работа (ТСР) направлена на развитие интеллектуальных умений, комплекса универсальных (общекультурных) и профессиональных компетенций, повышение творческого потенциала студентов и заключается в выполнении курсовой работы. Студентам необходимо разработать приложения на основе языков разметки XUL и XAML в соответствии с индивидуальным заданием. 5.2 Примеры заданий на курсовую работу Вариант 1 Разработать приложения на основе языков разметки XUL и XAML в соответствии со следующим заданием: Разработать редактор графиков, позволяющий пользователю выполнять следующие задачи: –задавать графики в виде последовательности точек; –задавать графики в виде последовательности чисел; –задавать графики в виде закономерности y=f(x), в которой пользователь может использовать круглые скобки, операции сложения, вычитания, умножения, деления, а также функции sin и cos; –задавать цвет, тип и толщину линий; –задавать цвет фона; –менять масштаб графиков; –сохранять текущее состояние в файл и восстанавливать текущее состояние из файла; –экспортировать графики в форматах jpg и png. Разработанные приложения должны корректно реагировать на все действия пользователя. Вариант 2 Разработать приложения на основе языков разметки XUL и XAML в соответствии со следующим заданием: Разработать приложение для отображения текущего времени в аналоговом и цифровом видах. Вид часов выбирается пользователем. Для аналоговых часов необходимо реализовать плавную анимацию часовых, минутных и секундных стрелок. Пользователь может перетаскивать стрелки курсором мыши в требуемое положение. Пользователь может выбирать цвет циферблата для аналоговых часов и размер шрифта для цифровых часов. Разработанные приложения должны корректно реагировать на все действия пользователя. Вариант 3 Разработать приложения на основе языков разметки XUL и XAML в соответствии со следующим заданием: 6 Разработать приложение для составления списка задач на день, неделю и месяц. Режим отображения выбирается пользователем. Необходимо реализовать следующие функции: –добавление новой задачи с указанием времени начала, времени завершения и приоритета; –изменение времени начала и завершения задачи в т.ч. посредством перетаскивания задачи курсором мыши; –отображение задач разным цветом в зависимости от приоритета задачи; –предупреждение пользователя о невыполненных задачах; –возможность удаления задач пользователем; –экспорт и импорт списка задач в XML-формате; –выбор режима отображения: день, неделя, месяц. Разработанные приложения должны корректно реагировать на все действия пользователя. 5.3 Контроль самостоятельной работы Результаты текущей самостоятельной работы студентов оцениваются на контрольных работах, а также при защите лабораторных работ. Творческая проблемно-ориентированная самостоятельная работа студентов оценивается при защите пояснительной записки к курсовой работе. 6. СРЕДСТВА ТЕКУЩЕЙ И ПРОМЕЖУТОЧНОЙ ОЦЕНКИ КАЧЕСТВА ОСВОЕНИЯ ДИСЦИПЛИНЫ Оценка качества освоения дисциплины производится по результатам следующих контролирующих мероприятий: Контролирующие мероприятия Результаты обучения по дисциплине Выполнение и защита отчетов по лабораторным РД2 – РД3 работам Контроль выполнения курсовой работы и её защита РД3 Контрольные работы РД1 – РД3 Проведение экзамена РД1 – РД3 Для оценки качества освоения дисциплины при проведении контролирующих мероприятий предусмотрены следующие средства: вопросы для контрольных работ; вопросы для экзамена. 6.1. Текущий контроль 7 Цель текущего контроля – проверить усвоение студентами теоретического и практического материала, излагаемого преподавателем. Текущий контроль изучения дисциплины состоит из следующих видов: контроль за своевременным и правильным выполнением лабораторных работ и сдачей отчетов; контроль усвоения теоретического материала – проведение контрольных работ. контроль усвоения теоретического материала – проведение контрольных работ. Контрольные проводятся в часы лекционных занятий, в письменной форме и включают задания по предыдущей лекции. Вопросы, вынесенные на контрольные работы, составлены лектором. По каждому варианту контрольной работы имеются 5-10 вопросов. 1. 2. 3. 4. 5. 6. 7. 8. Примерный перечень вопросов для контрольных работ: Основные принципы графической системы WPF. Сравнение XML и HTML. Сравнение XML и XAML. Сравнение XUL и XAML. Как осуществляется привязка данных в XAML-приложениях? Основные теги языков разметки (XML, XUL, XAML и HTML), которые используются для ввода данных. Классы для создания графических примитивов на языке XAML. Средства взаимодействия с пользователем в XAML-приложениях. 6.2. Итоговый контроль Итоговый контроль по дисциплине осуществляется по результатам выполнения лабораторных и индивидуальных работ и сдачи экзамена. Экзамен проводится в письменной форме и проверяется преподавателем. Примерный перечень экзаменационных вопросов: 1. 2. 3. 4. 5. 6. 7. 8. 9. Формат представления данных RDF. Основные особенности языка разметки XUL. Принципы разработки динамических пользовательских интерфейсов с использованием языка разметки XUL. Основные элементы управления языка XUL. Сравнение XUL и HTML. Добавление в XUL-приложение неинтерактивного текста, изображений и границ. Основные теги XUL, которые используются для ввода данных. Списки и деревья в языке разметки XUL. Основные особенности языка разметки XAML. 8 10. 11. 12. 13. 14. Рисование графических элементов на языке XAML. Взаимодействие с пользователем в XAML-приложениях. Анимация в XAML-графике. Представление текста в языке XAML. Язык разметки масштабируемой векторной графики SVG. 7. РЕЙТИНГ КАЧЕСТВА ОСВОЕНИЯ ДИСЦИПЛИНЫ Оценка качества освоения дисциплины в ходе текущей и промежуточной аттестации обучающихся осуществляется в соответствии с «Руководящими материалами по текущему контролю успеваемости, промежуточной и итоговой аттестации студентов Томского политехнического университета», утвержденными приказом ректора № 77/од от 29.11.2011 г. В соответствии с «Календарным планом изучения дисциплины»: текущая аттестация (оценка качества усвоения теоретического материала (ответы на вопросы и др.) и результаты практической деятельности (решение задач, выполнение заданий, решение проблем и др.) производится в течение семестра (оценивается в баллах (максимально 60 баллов), к моменту завершения семестра студент должен набрать не менее 33 баллов); промежуточная аттестация (экзамен, зачет) производится в конце семестра (оценивается в баллах (максимально 40 баллов), на экзамене (зачете) студент должен набрать не менее 22 баллов). Итоговый рейтинг по дисциплине определяется суммированием баллов, полученных в ходе текущей и промежуточной аттестаций. Максимальный итоговый рейтинг соответствует 100 баллам. В соответствии с «Календарным планом выполнения курсового проекта (работы)»: текущая аттестация (оценка качества выполнения разделов и др.) производится в течение семестра (оценивается в баллах (максимально 40 баллов), к моменту завершения семестра студент должен набрать не менее 22 баллов); промежуточная аттестация (защита проекта (работы)) производится в конце семестра (оценивается в баллах (максимально 60 баллов), по результатам защиты студент должен набрать не менее 33 баллов). Итоговый рейтинг выполнения курсового проекта (работы) определяется суммированием баллов, полученных в ходе текущей и промежуточной аттестаций. Максимальный итоговый рейтинг соответствует 100 баллам (при наличии курсового проекта). 9 1. 2. 3. 4. 8. УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ Основная литература: Платт, Дэвид С. Знакомство с Microsoft .NET : пер. с англ. / Д. С. Платт. — М. : Русская Редакция, 2001. — 219 с. : ил. — Предм. указ.: с. 211218. Рохилла, Сэнджив. Microsoft ADO.NET: разработка профессиональных проектов : пер. с англ. / С. Рохилла, С. Натан, С. Мэлхотра. — СПб. : БХВ-Петербург, 2003. — 768 с. Торстейнсон, Питер. Архитектура .NET и программирование на Visual C++ : пер. с англ. / П. Торстейнсон, Р. Оберг. — М. : Вильямс, 2002. — 654 с. Бучек, Грэг. ASP .NET : пер. с англ. / Г. Бучек. — СПб. ; Киев : Питер : BHV, 2002. — 512 с. Дополнительная литература: 1. Ноутон, Патрик. Java 2 : Руководство : пер. с англ. / П. Ноутон, Г. Шилдт. — СПб. : БХВ-Петербург, 2001. — 1072 с. 2. Шилдт, Герберт. С# : учебное пособие : пер. с англ. / Г. Шилдт. — СПб. : BHV, 2002. — 512 c. 3. Троелсен, Эндрю. C# и платформа .NET : пер. с англ. / Э. Троелсен. — СПб. : Питер, 2003. — 795 с. 4. Постолит, Анатолий Владимирович. Visual Studio .NET: разработка приложений баз данных / А. В. Постолит. — СПб. : БХВ-Петербург, 2003. — 544 с. 5. Шорт, Скотт. Разработка XML Web-сервисов средствами Microsoft. NET : пер. с англ. / С. Шорт. – СПб. : БХВ-Петербург, 2003. – 480 с. 1. 2. 3. 4. 5. Программное обеспечение и Internet-ресурсы: Среда разработки Microsoft Visual Studio Express Edition http://www.intuit.ru/department/se/basexaml/ http://www.intuit.ru/department/se/mozilla/ http://www.xul.ru/ http://www.realcoding.net/article/rubric/XAML 9. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ № п/п 1 2 Наименование (компьютерные классы, учебные Корпус, ауд., количество лаборатории, оборудование) установок Компьютерный класс. 22 ПК Intel(R) Core(TM)2 CPU 6420, г. Томск, пр.Ленина, 2, 2.13GHz, 2.14 ГГц, 2.00Гб ОЗУ учебный корпус №10, Среда разработки Microsoft Visual Studio Express Edition ауд.108, 109, 22 ПК. (бесплатная версия). 10 Программа составлена на основе Стандарта ООП ТПУ в соответствии с требованиями ФГОС по направлению и профилю подготовки 230100 Информатика и вычислительная техника, «Информационное и программное обеспечение систем управления» Программа одобрена на заседании кафедры АиКС (протокол № 1 от 11.09.2013) Автор доцент кафедры АиКС Вичугов Владимир Николаевич Рецензент доцент кафедры АиКС Кочегурова Елена Алексеевна 11