Главная Другое
Экономика Финансы Маркетинг Астрономия География Туризм Биология История Информатика Культура Математика Физика Философия Химия Банк Право Военное дело Бухгалтерия Журналистика Спорт Психология Литература Музыка Медицина |
страница 1
Правительство Российской Федерации Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "Высшая школа экономики" Факультет Бизнес-информатики Программа дисциплины Технологии экстремального программирования
для направления/ специальности 080700.62 Бизнес-информатика подготовки бакалавра Автор программы: Кириченко Александр Аполлонович, кандидат технических наук, профессор. a-kiri@km.ru Одобрена на заседании кафедры Архитектуры программных систем «___»____________ 20 г Зав. кафедрой Назаров Станислав Викторович
Москва, 2012 Настоящая программа не может быть использована другими подразделениями университета и другими вузами без разрешения кафедры-разработчика программы. 1Область применения и нормативные ссылкиНастоящая программа учебной дисциплины устанавливает минимальные требования к знаниям и умениям студента и определяет содержание и виды учебных занятий и отчетности. Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направления 080700.62 «Бизнес-информатика» подготовки бакалавра, изучающих дисциплину "Технологии экстремального программирования". Программа разработана в соответствии с: ФГОС по направлению 080700.62 «Бизнес-информатика» подготовки бакалавра. 2Цели освоения дисциплиныТехнологии экстремального программирования – это дисциплина, относящаяся к разделу «Технология программирования», но программирования в экстремальных условиях, т.е. в условиях недостатка времени, крайне ограниченных ресурсов, отсутствия у проектировщиков пространства для манёвра в отношении функциональности создаваемых программных средств, и др. Эдвард Йордон в книге «Путь камикадзе» экстремальное программирование приравнивает к работе над “безнадёжным” проектом, вероятность провала которого превышает 50%. Служба Microsoft Consulting Services провела анализ результатов выполнения большого количества своих программных проектов. Оказалось, что вероятность провала программных проектов довольно велика. Только 24% проектов можно признать в той или иной степени успешными, 26% не были завершены, а остальные 50% столкнулись с большими проблемами, например, бюджет был превышен вдвое или затрачено в 1,5 раза больше времени. Практика показывает, что для успешного выхода из экстремальной ситуации надо увеличить скорость и качество разработки программ. Для этого надо уметь работать в команде, программировать на различных алгоритмических языках, владеть современным инструментарием для создания программ, знать и уметь применять на практике различные системы и технологии программирования, уметь строить системы опережающего тестирования и владеть средствами автоматизации этой работы, иметь навыки отладки программ. Целями освоения дисциплины "Технологии экстремального программирования" являются поиск, сбор, обработка, анализ и систематизация информации о способах увеличения скорости и качества разработки программ в экстремальных условиях; знакомство со способами и особенностями работы в команде; освоение современного инструментария для создания программ и проектирования систем опережающего тестирования; и таким образом – приобретения навыков, необходимых для решения проблем в экстремальных условиях.
3Компетенции обучающегося, формируемые в результате освоения дисциплиныВ результате освоения дисциплины студент должен:
- основные технологии программирования; - современные модели, ключевые концепции и технологии ускорения разработки программных систем; - различные подходы к инженерному проектированию и решению общих и специфических проблем в экстремальных условиях.
- применять математические методы и инструментальные средства для исследования объектов профессиональной деятельности; - уметь использовать имеющиеся математические и программные инструментальные средства для обработки, анализа и систематизации информации по теме исследования; - программировать с использованием программных средств, написанных на разных языках.
- различными методами и инструментальными средствами разработки программ; - методами управления процессами создания и использования информационных сервисов; В результате освоения дисциплины студент осваивает следующие компетенции:
4Место дисциплины в структуре образовательной программыНастоящая дисциплина относится к профессиональному циклу дисциплин и блоку дисциплин, обеспечивающих базовую (общепрофессиональную) подготовку. Изучение данной дисциплины базируется на следующих дисциплинах:
Для освоения учебной дисциплины, студенты должны владеть следующими знаниями и компетенциями:
Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин:
5Тематический план учебной дисциплины
6Формы контроля знаний студентов
Оценка знаний предусматривает традиционные аудиторные и внеаудиторные формы контроля уровня обученности студентов. Итоговая оценка (зачет) по учебной дисциплине складывается из следующих элементов: аудиторная контрольная работа по теме 1 (45мин.); домашнее контрольное задание; тест на зачете (30мин.). 6.1Критерии оценки знаний, навыковПри выставлении итоговой оценки Оит за дисциплину средневзвешенная оценка округляется до большего целого, если дробная часть оценки не ниже 0.5, в противном случае оценка округляется до меньшего целого. При выставлении итоговой оценки (ОИТ5) по 5-балльной шкале используется решающее правило:
при обнаружении в самостоятельной письменной работе студента факта плагиата в отношении данного студента будут применены меры согласно документу: “Порядок применения дисциплинарных взысканий при нарушениях академических норм в написании письменных учебных работ в ГУ-ВШЭ” (документ размещен на http://www.hse.ru/infopage/documents1.shtml#9). 7Содержание дисциплиныТема 1. Технологические процессы и принципы программирования в экстремальных условиях Введение в дисциплину: жизненный цикл и технологии разработки программного обеспечения, стандартные (классические) технологические процессы и модели разработки программного обеспечения, типичные проблемы разработки программного обеспечения, особенности и область применимости технологий экстремальной разработки. Технологические процессы и модели экстремальной разработки программного обеспечения, формирование команды и организация деятельности команды заказчика и команды программистов. Методические основы экстремальной разработки: принципы и методы (практики) экстремальной разработки. Инструментальные средства разработки: программные средства и языки, программирование в .NET Framework и технологии MSDN. Компонентное программирование. Сборки. Комплексирование программных средств. Литература: [1] главы 18 - 24, [2] главы 3, 5, 8, 12, 17 – 19, 22, [3] главы 1-10, [5] главы 1, 4. Тема 2. Технологии программирования. Технологии ХР, гибкого моделирования, унифицированного процесса разработки. Технология асинхронного программирования. Стратегическое и тактическое планирование: Технологические особенности создания объектно-ориентированных программ. ХP, концептуализация программы и игра в планирование, предоставление оценок, планирование версии (релиза) и план итераций разработки, планирование и распределение задач, виды планов. Управление разработкой. Разработка программного кода: простое проектирование, парное программирование и коллективное владение кодом; сборка программы, стандарты кодирования, рефакторинг. Средства планирования и управления: организационные и инструментальные средства, методики оценки трудозатрат. Литература: [1], главы 11-12; глава 31; [ 2 ], часть 3.; [3] глава 2,14, приложение А. Тема 3. Тестирование, отладка, автоматизация программирования. Отладка и тестирование. Особенности отладки и тестирования синхронных и асинхронных программ. Средства MSDN для отладки и тестирования. Трассировка асинхронных программ. Тестирование ХР-проекта и выпуск готового продукта: опережающая разработка тестов, модульные (unit) и приемочные тесты, автономное и комплексное тестирование, выпуск релиза. Создание серии итераций. Прототипирование разработки. Разработки тестов: методы разработки, разработка модульных и приемочных тестов, содержание программы и методики испытаний. Программная реализация модулей и автономное тестирование, кодирование модулей и использование unit-тестов, сборка программы. Комплексное тестирование и выпуск версии. Средства, облегчающие тестирование и отладку программ. Принципиальная возможность и накопленный опыт автоматизации программирования. Перспективы развития экстремального программирования. Литература: [1] гл. 25– 32, [2] гл. 17 – 19, 21, [3], гл. 13, 14 - 22 ; [4], гл. 13 . 8Образовательные технологииВ основе обучения лежит выполнение специального исследовательского проекта, направленного на разработку архитектуры асинхронной объектно-ориентированной программы на языке C#. В процессе выполнения проекта особое внимание обращается на поиск наилучших путей выполнения задачи, нахождение обходных путей. Этим достигается заинтересованность в качестве работы, в реализации новых идей и достижении правильных результатов. В качестве способа организации совместной работы в группе студентам предлагается работать в режиме «парного программирования». Использование современных подходов к изучению материалов, контролю и оцениванию достижений студентов (дважды за модуль проводится компьютерное тестирование, для подготовки к занятиям используются файлы с раздаточными материалами к лекциям, и обучающий тест), обеспечивает объективность и надежность, заинтересованность в качестве работы, в новых идеях и достигнутых результатах. 9Оценочные средства для текущего контроля и аттестации студентаПримерные вопросы для контрольных работ и тестов
Вопросы для оценки качества освоения дисциплины
10Порядок формирования оценок по дисциплинеОценка за дисциплину определяется как средневзвешенная оценка по десятибальной шкале Оит по формам работы и корректируется с учётом активности студента на занятиях. Вклад в итоговую оценку различных форм контроля:
Оит = 0.3*O1 +0,4*Oдз+0.3*От1 11Учебно-методическое и информационное обеспечение дисциплины11.1Основная литература1. Бек К. Экстремальное программирование: разработка через тестирование. Библиотека программиста. – СПб.: Питер, 2003. – 224 с.: ил. ISBN 5-8046-0051-6. Главы 1 – 32. 2. Амблер С. Гибкие технологии: экстремальное программирование и унифицированный процесс разработки. Библиотека программиста. – СПб.: Питер, 2005. – 412 с.: ил. ISBN 5-94723-545-5. Главы 1 - 30. 3. Вендров А.М. Проектирование программного обеспечения экономических информационных систем: Учебник. - 2-е изд., перераб. и доп. - М.:Финансы и статистика, 2006.-544с.: ил. Главы 1, 4, 5, 7. 4. Кириченко А.А. Комплексирование программных средств: использование в C#-программах системы команд и программ ОС Windows. Монография. М: ООО ИПЦ Маска, 2010-126с. ISBN 978-5-91146-546-9.
11.2Дополнительная литература5. Кулямин В.В. Технологии программирования. Компонентный подход. М., Бином, 2007, www.intuit.ru. 6. Кариев Ч.А. Разработка Windows-приложений на основе Visual C#. М., Бином, 2007, www.intuit.ru. 7. Кен Ауер, Рой Миллер. Экстремальное программирование: постановка процесса. С первых шагов и до победного конца..- Спб.: Питер, 2004.-368с., ISBN 5-318-00132-7. Главы 10-14. 8. Астелз , Дэвид ; Миллер. Гренвил; Новак. Мирослав. Практическое руководство по экстремальному программированию.: Пер. с англ.-М.: Издательский дом “Вильямс”, 2002.-320с.. ISBN 5-8459-0329-7. Главы 1-18. 12Материально-техническое обеспечение дисциплиныДля проведения занятий необходимы:
Автор: А.А.Кириченко Смотрите также: Программа дисциплины Технологии экстремального программирования для направления/ специальности 080700. 62 Бизнес-информатика подготовки бакалавра
175.83kb.
1 стр.
Программа дисциплины Технология экстремального программирования для направления 080700. 62 Бизнес-информатика подготовки бакалавра
78.43kb.
1 стр.
Программа дисциплины " Технологии экстремального программирования" для направления 080700. 62 «Бизнес-информатика» подготовки бакалавра
133.07kb.
1 стр.
Программа дисциплины Культурология для направления 080700. 62 «Бизнес-информатика» подготовки бакалавра
191.06kb.
1 стр.
Программа дисциплины Экономическая история для направления 080700. 62 «Бизнес-информатика» подготовки бакалавра
182.75kb.
1 стр.
Программа дисциплины Высокопроизводительные вычисления для направления 080500. 62 «Бизнес-информатика» подготовки бакалавра
233.52kb.
1 стр.
Программа дисциплины «Теория организации»
275.53kb.
1 стр.
Программа дисциплины Электронная коммерция и бизнес для направления 080500. 68 «Бизнес-информатика»
131.28kb.
1 стр.
Программа дисциплины Моделирование процессов и систем для направления 080500. 62 «Бизнес информатика» подготовки бакалавра
91.46kb.
1 стр.
Программа дисциплины Операционная система unix для направления 010400. 62 Прикладная математика и информатика подготовки бакалавра
201.94kb.
1 стр.
Программа дисциплины "Крупная корпорация как субъект публичной политики. Корпоративное гражданство" для направления
365.99kb.
4 стр.
Программа дисциплины Введение в программирование для направления 080500. 62 Бизнес-информатика подготовки бакалавра 211.28kb.
1 стр.
|