страница 1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Похожие работы
|
Программа дисциплины " Технологии экстремального программирования" для направления - страница №1/1
Правительство Российской Федерации Государственный университет – Высшая школа экономики Факультет Бизнес Информатика Отделение Программная Инженерия Программа дисциплины “Технологии экстремального программирования” для направления 080700.62 - «Бизнес-информатика» подготовки бакалавра Автор программы Рекомендована секцией УМС по бизнес-информатике Председатель Г.А. Левочкина ________________________________ «_____» __________________ 2008 г. факультета Бизнес-информатики Ученый секретарь В.А. Фомичев «_____» __________________ 2008 г. Одобрена на заседании кафедры Архитектуры программных систем Зав. кафедрой С.В.Назаров _________________________________ «____»_____________________ 2008 г. Москва Пояснительная запискаАвтор программы:профессор, к.т.н. А.А.Кириченко Общие сведения об учебном курсе:дисциплина читается студентам бакалаврской программы «Технологии экстремального программирования» на Отделении Программная Инженерия факультета бизнес-информатики ГУ-ВШЭ. Она входит в блок специальных дисциплин, определяющих бакалаврскую программу, и читается в первом и во втором модулях третьего учебного года. Количество кредитов – 5. Продолжительность курса составляет 28+20 аудиторных учебных часов, в том числе: 24 часа лекционных занятий, 24 часа практических занятий, и 114 часов самостоятельной работы. Рубежный контроль – домашнее задание, контрольная работа и экзамен по окончанию второго модуля. Требования к студентам:освоение курса предполагает предварительное знакомство студентов с содержанием учебной дисциплины: “Объектно-ориентированный анализ и программирование”. Цель курса:дать систематизированное представление о современном комплексе задач, методов и стандартах экстремального программирования. Аннотация:Технологии экстремального программирования – это дисциплина, относящаяся к разделу «Технология программирования», но программирования в экстремальных условиях, т.е. в условиях недостатка времени, крайне ограниченных ресурсов, отсутствия у проектировщиков пространства для манёвра в отношении функциональности создаваемых программных средств, и др. Эдвард Йордон в книге «Путь камикадзе» экстремальное программирование приравнивает к работе над “безнадёжным” проектом, вероятность провала которого превышает 50%. Служба Microsoft Consulting Services провела анализ результатов выполнения большого количества своих программных проектов. Оказалось, что вероятность провала программных проектов довольно велика. Только 24% проектов можно признать в той или иной степени успешными, 26% не были завершены, а остальные 50% столкнулись с большими проблемами, например, бюджет был превышен вдвое или затрачено в 1,5 раза больше времени. Практика показывает, что для успешного выхода из экстремальной ситуации надо увеличить скорость и качество разработки программ. Для этого надо уметь работать в команде, программировать на различных алгоритмических языках, владеть современным инструментарием для создания программ, знать и уметь применять на практике различные системы и технологии программирования, уметь строить системы опережающего тестирования и владеть средствами автоматизации этой работы, иметь навыки отладки программ. Умение работать в команде предусматривает наличие знаний:
Владение инструментарием для создания программ предусматривает
что создаёт предпосылки для
Умение тестировать и отлаживать программы, использовать средства автоматизации тестирования и отладки так же способствуют сокращению времени разработки программных проектов. Основными разделами дисциплины являются:
Учебные задачи курса:в результате прохождения учебного курса студенты должны:
Тематический план учебной дисциплины
Базовый учебник (и) или ридер (ы)Книги: 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#. М., Кудиц-образ, 2003. 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. Формы контроляОценка знаний предусматривает традиционные аудиторные и внеаудиторные формы контроля уровня обученности студентов. Итоговая оценка (зачет) по учебной дисциплине складывается из следующих элементов: аудиторная контрольная работа по теме 1 (45мин.); домашнее контрольное задание; экзамен. Оценка за дисциплину определяется как средневзвешенная оценка по десятибальной шкале Оит по формам работы и корректируется с учётом активности студента на занятиях. Вклад в итоговую оценку различных форм контроля:
Оит = 0.3*O1 + 0.3*Oдз+0,4Э При выставлении итоговой оценки Оит за дисциплину средневзвешенная оценка округляется до большего целого, если дробная часть оценки не ниже 0.5, в противном случае оценка округляется до меньшего целого. При выставлении итоговой оценки (ОИТ5) по 5-балльной шкале используется решающее правило:
при обнаружении в самостоятельной письменной работе студента факта плагиата в отношении данного студента будут применены меры согласно документу: “Порядок применения дисциплинарных взысканий при нарушениях академических норм в написании письменных учебных работ в ГУ-ВШЭ” (документ размещен на http://www.hse.ru/infopage/documents1.shtml#9). Содержание программыТема 1. Технологические процессы и принципы программирования в экстремальных условиях Введение в дисциплину: жизненный цикл и технологии разработки программного обеспечения, стандартные (классические) технологические процессы и модели разработки программного обеспечения, типичные проблемы разработки программного обеспечения, особенности и область применимости технологий экстремальной разработки. Технологические процессы и модели экстремальной разработки программного обеспечения, формирование команды и организация деятельности команды заказчика и команды программистов. Методические основы экстремальной разработки: принципы и методы (практики) экстремальной разработки. Инструментальные средства разработки: программные средства и языки, программирование в .NET Framework и технологии MSDN. Компонентное программирование. Сборки. Комплексирование программных средств. Литература: [1] главы 18 - 24, [2] главы 3, 5, 8, 12, 17 – 19, 22, [3] главы 1-10, [5] главы 1, 4. Тема 2. Технологии проограммирования. Технологии ХР, гибкого моделирования, унифицированного процесса разработки. Технология асинхронного программирования. Стратегическое и тактическое планирование: концептуализация программы и игра в планирование, предоставление оценок, планирование версии (релиза) и план итераций разработки, планирование и распределение задач, виды планов. Управление разработкой. Разработка программного кода: простое проектирование, парное программирование и коллективное владение кодом; сборка программы, стандарты кодирования, рефакторинг. Средства планирования и управления: организационные и инструментальные средства, методики оценки трудозатрат. Литература: [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 . Тематика заданий по различным формам текущего контроляПримерные вопросы для контрольных работ и тестов
Тема домашней работы: “Планирование и реализация версий ХР-проекта.» Примечание: для каждой работы предусматривается свой набор пользовательских историй. Вопросы для оценки качества освоения дисциплины
Автор программы: ____________________/Кириченко А.А./ |
|