Обзор методологии разработки программного обеспечения Microsoft Solutions Framework


The Presentation inside:

Slide 0

Обзор методологии разработки программного обеспечения Microsoft Solutions Framework Андрей А. Терехов Московское представительство Microsoft e-mail: [email protected]


Slide 1

План доклада Обзор MSF Модель команды MSF Модель процесса в MSF Дисциплина управления рисками Дисциплина управления проектами Дисциплина управления подготовкой Краткое сравнение с другими методологиями (RUP, CMM, …) Вопросы/ответы


Slide 2

Успешные проекты нечасты в ИТ Статистика по 30,000 проектам по разработке ПО в американских компаниях. Источник: The Standish Group International, Extreme Chaos, The Standish Group International, Inc., 2000 Успешные проекты – вовремя и в рамках бюджета был выполнен весь намеченный фронт работ. Проблемные – не уложились в сроки, перерасходовали бюджет и/или сделали не все, что требовалось. Проваленные – не были доведены до конца.


Slide 3

Эволюция MSF Причиной появления MSF стало осознание в Microsoft проблем в собственном процессе разработки ПО Первоначальная версия MSF увидела свет в 1994 г. В 2002 г. была опубликована последняя версия MSF (v3.0) MSF является частью более широкого набора методологий от Microsoft


Slide 4

MSF и MOF MSF = Microsoft Solutions Framework Подход Microsoft к управлению ИТ-проектами: Проекты разработки ПО Проекты развертывания инфраструктуры MOF = Microsoft Operations Framework Подход Microsoft к управлению ИТ-процессами (операциями) на предприятии


Slide 5

MSF и MOF Microsoft Operations Framework Microsoft Solutions Framework Эксплуатируем Внедряем Создаем Планируем


Slide 6

Структура MSF Модель Процессов Модель Проектной Группы Дисциплина управления Проектами ДВЕ МОДЕЛИ ТРИ ДИСЦИПЛИНЫ Дисциплина управления Рисками Дисциплина управления Подготовкой


Slide 7

Модель проектной группы Бизнес-приоритеты Маркетинг Представление интересов заказчика Планирование продукта Управление проектом Выработка архитектуры решения Контроль производственного процесса Административные службы Технологическое консультирование Проектирование и осуществление реализации Разработка приложений Разработка инфраструктуры Планирование тестов Разработка тестов Отчетность по тестам Инфраструктура Сопровождение Бизнес-процессы Управление выпуском готового продукта Обучение Эргономика Графический дизайн Интернационализация Обеспечение технической поддержки Общедоступность (обеспечение возможности работы для пользователей с ограниченными физическими возможностями)


Slide 8

Характеристики проектной группы MSF Команда соратников (команда равных) Наличие единого видения проекта (shared vision) Распределение ответственности при одновременной фиксации отчетности Нацеленность на необходимый заказчику конечный результат Наличие у сотрудников необходимых полномочий Открытое общение Установка на отсутствие дефектов Стремление к самосовершенствованию Гибкость и готовность к переменам Заинтересованность и энтузиазм


Slide 9

Замечание по терминологии Заинтересованные стороны (stakeholders) – лица либо организации, чьи интересы затрагиваются результатами проекта Спонсоры проекта (project sponsors) – лица либо организации, которые инициировали проект, выделяют для проекта ресурсы и утверждают его результаты. Иногда “project sponsor” переводится как “куратор проекта”


Slide 10

Масштабирование модели проектной группы В одном ролевом кластере может быть много людей Один человек может взять на себя несколько ролей Большие коллективы: Создаем группы направлений Создаем функциональные группы Малые коллективы: Используем таблицу совместимости ролей


Slide 11

Большой коллектив Управление программой Управление выпуском Управление продуктом Удовлетворение потребителя Разработка Тестирование Руководящая группа Разработка клиентских компонент (группа направления) Управление программой Удовлетворение потребителя Разработка Тестирование Разработка средств печати (группа направления) Управление программой Удовлетворение потребителя Разработка Тестирование Разработка средств обмена сообщениями (группа направления) Управление программой Удовлетворение потребителя Разработка Тестирование Удовлетворение потребителя (функциональная группа) Лидер группы


Slide 12

+ Допустимо ± Нежелательно - Нельзя Управление продуктом Управление программой Управление выпуском Управление продуктом Управление программой Разработка Тестирование Удовлетворение потребителя Управление выпуском Разработка Тестирование Удовлетворение потребителя Таблица совместимости ролей


Slide 13

Минимальный коллектив Управление выпуском


Slide 14

Модель процессов Планы проекта утверждены Разработка завершена Готовность решения утверждена Внедрение завершено Концепция проекта утверждена Выработка концепции Внедрение Разработка Планирование Стабилизация


Slide 15

Промежуточные вехи Планы проекта утверждены Разработка завершена Готовность решения утверждена Внедрение завершено Концепция проекта утверждена Тестирование приемлемости для потребителей завершено Верификация технологий осуществлена Базовая версия функциональной спецификации создана Базовая версия сводного плана проекта создана Базовая версия сводного календарного графика проекта создана Среды разработки и тестирования развернуты Внедренное решение стабилизировано Внедрение на местах завершено Ключевые компоненты развернуты Ядро проектной группы сформировано Черновой вариант концепции проекта составлен Концепция подтверждена Промежуточная версия 1 завершена Промежуточная версия 2 завершена Промежуточная версия N завершена


Slide 16

Итеративный подход Время Функциональность Минимизируем риски, разбивая большие проекты на несколько версий Версия 1


Slide 17

Для каждой фазы модели процессов MSF определяет: Что (какие артефакты) является результатом этой фазы Над чем работает каждый из ролевых кластеров на этой фазе


Slide 18

Дисциплина управления рисками Мы не боремся с рисками – мы ими управляем Итеративный процесс Осуществляется на протяжении всего проекта Базируется на посылке о присутствии рисков в любом проекте Нацелена на проведение профилактических мероприятий


Slide 19

Процесс управления рисками


Slide 20

Дисциплина управления проектами Проект (project) – ограниченная временными рамками деятельность, цель которой состоит в создании уникального продукта или услуги Управление проектами (project management) – это область знаний, навыков, инструментария и приемов, используемых для достижения целей проектов в рамках согласованных параметров качества, бюджета, сроков и прочих ограничений


Slide 21

Управление изменениями Фиксируется Согласовывается Принимается Ресурсы Возможности Время Мы не можем избежать изменений в проекте Но мы можем заранее договориться о приоритетах, которыми будем руководствоваться при реагировании на изменения Для этого используется матрица компромиссов


Slide 22

Управление ожиданиями заказчика Конус неопределенности показывает, как меняется точность оценок стоимости проекта по мере его осуществления. Важно, чтобы заказчик понимал это.


Slide 23

В MSF нет роли “менеджер проекта” на уровне всего проекта на уровне подгрупп Деятельность по управлению проектом распределяется между лидерами групп и ролевым кластером “Управление программой”


Slide 24

Определение Дисциплина управления подготовкой Знания, умения, способности Корректировка Оценивание Осмысление


Slide 25

MSF как концепция Например, для организации процесса производства ПО можно использовать MSF и при этом применять инструменты Borland Более того, MSF не навязывает даже конкретную методологию разработки программного обеспечения (как, например, RUP) MSF – это концепция (framework), применимая в самом широком наборе случаев


Slide 26

Доступность стандартов, знание которых требуется от ИТ-менеджера


Slide 27

MSF и ... PMI PMBOK Whitepaper “MSF and the Project Management Body of Knowledge” http://www.webster.edu/~dlorenc/PMPStudy/Library/MSFandthePMBOK.doc RUP Whitepaper “Microsoft Solutions Framework and The Rational Process” http://www.rational.com/media/whitepapers/msfratprcs.rtf CMM Whitepaper “Microsoft Solutions Framework and the Capability Maturity Model” http://www.aurelian.ro/MSF/RESOURCE_KIT-PAD/papers/MSFAndTheCapMaturityModel.doc Перечисленные документы ссылаются на предыдущие версии MSF, однако общую картину этот факт не меняет


Slide 28

Сравнение RUP, MSF и CDM


Slide 29

Материалы по MSF На английском языке http://www.microsoft.com/msf http://www.microsoft.com/traincert/mcp/msf MCT могут получить доступ к учебникам и презентациям курсов 1846 и 2710 через MCT Download Center: https://partnering.one.microsoft.com/mct Не MCT могут прослушать эти курсы в СТЕС. В стоимость курса входит комплект материалов На русском языке http://www.microsoft.com/rus/msf


Slide 30

Шаблоны и примеры документов Есть только на английском языке Шаблоны доступны бесплатно на http://download.microsoft.com Нужно сделать поиск по ключевому слову MSF Детальные примеры входят в студенческий комплект материалов курса 2710 В т.ч. UML диаграммы (промежуточные и окончательные версии)


Slide 31

Курс 1846 Microsoft Solutions Framework Essentials 3 дня, компьютеры не используются Изучаются все элементы MSF Великолепные деловые игры http://www.microsoft.com/traincert/syllabi/1846Afinal.asp


Slide 32

Курс 2710 Analyzing Requirements and Defining Microsoft .NET Solution Architectures 5 дней, компьютеры используются Подробно изучается фаза планирования для проектов разработки ПО (application development) http://www.microsoft.com/traincert/syllabi/2710bfinal.asp


Slide 33

Экзамен 74-100 Microsoft Solutions Framework Practitioner Endorsement Exam 70 вопросов 90 минут Проходной балл – 70% (49 вопросов) Язык - английский Не является частью программы MCP Можно сдавать только через Prometric http://www.2test.com В СНГ стоимость экзамена - $50, в США - $125 В мире сегодня – 266 MSF Practitioners В России – 4 На Украине – 2 http://www.microsoft.com/technet/itsolutions/tandp/innsol/banmsfpro/default.asp


Slide 34

Заключение MSF представляет собой обобщение опыта управления ИТ-проектами, накопленного в Microsoft MSF состоит из двух моделей и трех дисциплин, описание которых доступно на русском языке на сайте http://www.microsoft.com/rus/msf MSF – это набор рекомендаций, которые можно применять выборочным образом Наиболее революционная часть MSF – это модель команды равных


Slide 35


Slide 36

Дополнительные слайды


Slide 37

Как организовано обучение MSF преподают как минимум в 5-6 вузах СНГ студентам 3-6 курсов технических специальностей Аббревиатура MSF в названиях курсов обычно отсутствует “Системный анализ и проектирование информационных систем” “Управление проектами” ... Уже есть как минимум один пример базирующейся на MSF дипломной работы


Slide 38

Как организована практика Один или несколько небольших коллективов студентов, каждый из которых реализует свой проект В качестве заказчиков выступают кафедра, деканат или “дружественная” организация ПО для учета нагрузки преподавателей, посещаемости и успеваемости студентов и т.п. Работа и документооборот организуются по правилам MSF Два способа синхронизации лекций и практики лекции по MSF на тему или две опережают практические занятия лекции по MSF идут в одном семестре, практика – в следующем


Slide 39

На какие грабли наступали Механизм вовлечения “заказчика” в работу иногда оказывался недостаточно эффективен и исполнитель роли “заказчика” начинает уклоняться, не участвуя во всех этапах проекта . Студенты не всегда чувствуют, что предпосылкой для создания одних документов является готовность других, и, следовательно, в одну ночь все документы не сделаешь За разные документы отвечают разные люди Студенты нередко боятся писать понятные тексты, при составлении проектной документации используют многословные наукообразные трудночитаемые фразы Низкий уровень знания английского языка может создать проблемы при работе с шаблонами документов MSF Студенты, которые учатся ради зачета, а не ради знаний, могут плохо влиять на командный дух, понижая общий энтузиазм Таким студентам, наверное, проще сразу поставить зачет, чтобы не мешали... ;-))


Slide 40

Рекомендации Преподаватель должен быть Endorsed MSF Practitioner (экзамен 74-100) Преподаватель должен иметь практический опыт участия в разработке ПО большими коллективами Не имеет смысла пытаться учить студентов MSF, если нет возможности организовать закрепление материала на практике. Без практического опыта у студентов не сформируется понимание решаемых MSF производственных проблем, а ведь это – главная задача Оптимальный вариант получения опыта и применения знаний MSF – участие в реальном проекте во время производственной практики на реальном предприятии Начинать учить MSF необходимо с модели проектной группы, а не с модели процессов Нужно очень подробно разъяснять дисциплину управления рисками, возможно, стоит привлекать материал из PMBOK Лекции – плохой способ обучения MSF, нужны активные обсуждения, деловые игры, постоянный диалог с аудиторией


Slide 41

В вузах можно не только преподавать MSF, но и вести исследования ВОЗМОЖНЫЕ НАПРАВЛЕНИЯ ИССЛЕДОВАНИЙ: Использование и адаптация MSF для нестандартных и узкоспециальных проектов Проекты внедрения MSF Проекты локализации (не только ПО) Software outsourcing Разработка учебных курсов Совместное использование MSF и других подходов CDM, ГОСТы, etc. MSF и SPEM (Software Process Engineering Metamodel) http://www.omg.org/technology/documents/formal/spem.htm


×

HTML:





Ссылка: