Лекция: Использование пакета руководств Microsoft Solution Framework

Microsoft Solution Framework (MSF) — пакет руководств по эффективному проектированию, разработке, внедрению и сопровождению информационных систем. Особенностью Microsoft Solution Framework считается высокий уровень гибкости и отсутствия жестких процедур, что позволяет решать широкий круг проблем, появляющихся при разработке и внедрении информационных систем.

Считается, что для внедрения и разработки различного программного обеспечения не существует единой оптимальной методологии. MSF ориентирован, в первую очередь, на оптимальное управление процессом разработки и внедрения. Главными принципами MSF можно назвать:

Производительность: Сделать команду разработчиков более производительной за счёт хорошо налаженного управления процесса разработки.

Интегрируемость: Решения и управление представлены инструментальными средствами, посредством плавной интеграции любых наборов инструментальных средств, справки и содержания MSF. Все эти элементы легко обновляются через MSDN.

Расширяемость: Процесс управления и справка полностью настраиваемы в пределах MSF, что позволяет разработчикам либо выбрать предустановленный подход (быстрый или более структурированный подход, каждый из которых включает в себя наборы предложенных сценариев), либо определить свой собственный подход, используя эти сценарии.

MSF состоит из двух моделей и трех дисциплин. Они подробно описаны в 5 whitepapers:

— модели:

o модель проектной группы;

o модель процессов;

— дисциплины:

o дисциплина управление проектами;

o дисциплина управление рисками;

o дисциплина управление подготовкой.

Модели

Модель процессов

Модель процессов MSF представляет общую методологию разработки и внедрения IT решений. Тремя особенностями модели процессов MSF являются:

— Подход, основанный на фазах и вехах.

— Итеративный подход.

— Интегрированный подход к созданию и внедрению решений.

Эта модель сочетает в себе свойства двух стандартных производственных моделей: каскадной и спиральной. Цикл спиральной модели разработки разделён на последовательные бизнес — процессы. При этом функциональность программного продукта наращивается поэтапно (версионно). На первом этапе создается первая версия продукта, включающая базовую функциональность. В следующих версиях происходит увеличение функциональности в соответствии с требованиями бизнеса.

Все виды ограничений, накладываемые на проект, образуют треугольник приоритетов в MSF.

После достижения равновесия в этом треугольнике изменение на любой из его сторон для поддержания баланса требует модификаций на другой (двух других) сторонах и/или на изначально измененной стороне.

Нахождение верного баланса между ресурсами, временем разработки и возможностями – ключевой момент в построении решения, должным образом отвечающего нуждам заказчика.

Треугольник приоритетов является основой для матрицы компромиссов (project tradeoff matrix) – заранее утвержденных представлений о том, какие аспекты процесса разработки будут четко заданы, а какие будут согласовываться или приниматься как есть.

Зафиксировать приоритеты в проектной документации можно с помощью простых текстовых оборотов: «Зафиксировав ресурсы, мы согласовываем календарный график и принимаем результирующий объем функциональности решения» или «Зафиксировав объем функциональности решения, мы согласовываем затрачиваемые ресурсы и принимаем результирующие сроки» и т.п. В дальнейшем возврат к приоритетам может сильно помочь при нахождении компромисса внутри проектной группы

Модель процессов описывает общую методологию разработки и внедрения информационных систем и включает в себя:

— стадию разработки концепции проекта,

— стадию разработки плана проекта,

— разработку решения,

— внедрения релизов,

— тестирование.

Также в модель процессов входит подготовка документации и обучение пользователей работе с новым программно – аппаратным обеспечением.

Вехи — ключевые точки, которые определяют промежуточный или конечный результат, который может быть оценен и проанализирован. Считается, что ключевые точки проекта могут изменяться в соответствии с требованиями к проекту.

MSF предполагает создание «живой документации», которая изменяется по мере эволюции проекта. На этапе разработки концепции документация распространяется исключительно среди членов проектных групп. По мере подключения дополнительных специалистов к реализации проекта они получают возможность ознакомиться с проектной документацией и внести изменения в часть документов, попадающих в их зону ответственности. Измененная документация попадает на проверку всем заинтересованным сторонам и описанный процесс повторяется.

Создание базовых версий программных продуктов позволяет членом команды начать разработку в максимально короткие сроки. При этом необходимо «как можно чаще собирать текущие версии всех компонентов решения для проведения тестирования и анализа». Большие проекты рекомендуется разделять на множество маленьких. Каждый локальный проект разрабатывается и тестируется отдельной командой.

При использовании подхода Microsoft для разработки программного обеспечения необходимо использовать процесс управления конфигурациями (configuration management). Данный процесс обеспечивает мониторинг за состоянием различных версий программного продукта и его документации. Следует отметить, что управление конфигурациями в Microsoft Solution Framework, не имеет ни какого отношения к схожему по названию процессу из Microsoft Operations Framework.

Microsoft Solution Framework — закрывает весь процесс разработки решения и включает пять основных фаз, «каждая фаза заканчивается главной вехой, результаты которой становятся видимыми за пределами проектной команды». Фазами являются:

— Выработка концепции (Envisioning) описывает процесс создания проектной группы, выработка высокоуровневого взгляда на цели и условия проекта. По завершению этой фазы определяются общие задачи проекта, описывается требуемая функциональность, ограничения по времени.

— Планирование (Planning) описывает набор работ по составлению планов проекта. Происходит подготовка спецификаций, разработка дизайна, оценка проектных затрат и сроков разработки. Функциональные спецификации и календарный план — график проекта необходимы для определения жестких рамок проекта.

— Разработка (Developing) включает процесс подготовки определенной версии программного продукта и документации к нему. Следует отметить, что некоторая часть этой работы может быть выполнена на фазе стабилизации программного продукта.

— Стабилизация (Stabilizing) обеспечивает тестирование программного продукта. В соответствии с моделью команд MSF тестированием и разработкой не могут заниматься одни и те же специалисты. На данном этапе тестировщики выполняют поиск ошибок, а проектная группа занимается их устранением.

— Внедрение (Deploying) включает установку всех компонентов решения и их запуск в эксплуатацию. После приемки программного продукта в эксплуатацию ответственность переходит от проектной группы к службе поддержки программного продукта. Следует отметить, что при возникновении проблем с программным продуктом, проектная группа может принимать участие в их устранении.

 

 

Модель проектной группы

Модель проектной группы описывает состав распределенной команды разработчиков, определяет ролевые функции, их области компетенции и зоны ответственности. В соответствии с MSF проектные группы строятся, как небольшие команды, члены которых распределяют ответственность между собой.

Успешное использование модели проектной группы MSF основывается на ряде ключевых концепций (key concepts):

1. команда соратников;

2. сфокусированность на нуждах заказчика;

3. нацеленность на конечный результат;

4. установка на отсутствие дефектов;

5. стремление к самосовершенствованию;

6. заинтересованные команды работают эффективно.

еще рефераты
Еще работы по информатике