Нижегородский государственный университет им. Н.И. Лобачевского Факультет вычислительной математики и кибернетики

advertisement
Нижегородский государственный университет
им. Н.И. Лобачевского
Факультет вычислительной математики и кибернетики
Учебный курс «Технологии программирования.
Курс на базе Microsoft Solutions Framework (MSF)»
Мееров И.Б., Сысоев А.В., Козинов Е.А.
При поддержке компании Microsoft®
(победитель конкурса Software Engineering Contest-2006)
Нижний Новгород, 2006г.
Актуальность курса...
Доля успешных проектов в области IT невелика *
2001
28%
2003
Провалены
23%
2000
31%
1994
0%
Испытали большие проблемы
35%
Успешные
28%
46%
40%
1995
2004
49%
28%
1998
31%
33%
26%
27%
53%
* - по данным The Standish Group International,
"CHAOS 2005", "Extreme Chaos", "Chaos Report", 1994-2004
16%
100%
2
Актуальность курса...
В 2004 году
на разработку программных средств
ушло около
3 700 000 000$
Индустрия нуждается в повышении доли
успешных проектов. Как этого добиться?
• Новые технологии.
• Квалифицированные кадры.
3
Актуальность курса
• Необходимо учить не только технологиям
разработки программ, но и принципам и
технологиям командной работы.
• Акцент все больше смещается от талантливых
программистов-одиночек к грамотным
командным «бойцам».
• Закончивший ВУЗ студент должен уметь
органично влиться в коллектив разработчиков.
• Для формирования подобных навыков
необходима теоретическая подготовка,
подкрепленная практикой командной работы.
4
Цель курса
• Цель данного курса состоит в изучении
основных путей организации и проведения
успешных проектов в области разработки
программного обеспечения на базе
принципов Microsoft Solutions Framework
(MSF).
• Важная роль отводится практической
составляющей курса – работе в небольших
командах.
5
Методы достижения цели
• Рассмотрение технологических основ процесса
разработки программного обеспечения.
• Изучение основ унифицированного языка UML
для визуального моделирования элементов
предметной области в рамках проектирования
программной системы и ее основных компонентов.
• Получение практического опыта работы в команде
из 5-7 человек с применением методологии MSF.
• Приобретение и развитие навыков анализа,
проектирования, документирования и разработки
программных комплексов средней сложности.
6
Место курса в учебном плане ВМК ННГУ
• Основные параметры:
–
–
–
–
2-ой курс, 4-ый семестр;
16 часов лекции;
16 часов семинары;
32 часа лабораторные работы.
CS103
CS101
CS102
Элементы
SE201
7
Характеристика курса...
• Данный курс читается на 2 курсе и является
вводным.
• Опирается на изучение курсов
– Основы программирования;
– Объектно-ориентированное программирование;
– Алгоритмы и структуры данных.
• Базовая методология – MSF 4.0 for Agile
software development.
• Ориентация на разработку ПО в небольших
командах.
8
Характеристика курса...
• Лекционная часть:
– Введение (лекция 1)
• понятие программного обеспечения;
• проблема роста сложности разработки
качественного продукта в заданные сроки в
соответствии с имеющимся бюджетом;
• основные технологии программирования как
средства борьбы со сложностью.
9
Характеристика курса...
• Лекционная часть:
– Первый раздел курса (лекция 2)
• Обзор некоторых понятий и принципов
программной инженерии.
• В частности разбирается понятие
программной инженерии, процесса, модели
процесса разработки ПО.
• Рассматриваются классические модели
процесса.
1
0
Характеристика курса...
• Лекционная часть:
– Второй раздел курса (лекции 3-4)
• Принципы объектно-ориентированного анализа
и проектирования ПО при помощи UML.
• Обзор принципов объектного подхода.
• Важные аспекты повторного использования.
• Элементы языка UML.
• Применение UML для визуализации
проектирования лекционных примеров из
читаемого параллельно курса CS103 «Алгоритмы
и структуры данных».
1
1
Характеристика курса...
• Лекционная часть:
– Третий раздел курса (лекции 5-8)
• Методология разработки программных
решений Microsoft Solutions Framework 4.0.
• История MSF.
• Основные принципы MSF.
• Модель проектной группы. Роли и фазы MSF.
Через все фазы проводится лекционный пример –
разработка системы бронирования билетов
для аэропорта
1
2
Характеристика курса...
• Семинары:
– 8 семинаров на закрепление лекционного
материала.
– Разбор учебного примера.
– Изложение и анализ учебных задач.
Разбиение на студентов на команды.
– Практическое освоение принципов MSF.
Командная работа.
1
3
Характеристика курса...
• Лабораторные работы:
– Командная работа – проектирование и
разработка решения.
– Тестирование, отладка.
– Создание документации.
– Сдача продукта заказчику (в роли
заказчика может выступать
преподаватель).
1
4
Характеристика курса
• Отличительные особенности:
– Командная работа.
– Упор на практику.
– Привлечение магистрантов,
специализирующихся в области Software
Engineering в качестве одной из ролей в
проектных группах.
– Сдача результата «заказчику» - преподавателю.
– Изменение требований в процессе работы.
1
5
Комплект поставки
•
•
•
•
•
•
•
Программа курса
Программа лабораторного практикума
Лекции (материалы + презентации)
Семинары (презентации)
Шаблоны документов MSF (материалы, рус.)
Постановки учебных задач
Учебный пример (коды, документация –
заполненные шаблоны)
• Презентация курса
1
6
Контакты
• Сайт курса:
http://www.software.unn.ru/msf
• Пишите нам на
mib@uic.nnov.ru
syav2@uic.nnov.ru
1
7
Download