Опубликован: 27.06.2009 | Уровень: для всех | Доступ: платный
Лекция 4:

Модели процессов и команды методологии MSF

< Лекция 3 || Лекция 4: 1234 || Лекция 5 >

Ролевой кластер "Разработка"

Первостепенной задачей ролевого кластера "Разработка" является построение решения в соответствии со спецификацией. Ее выполнение означает создание решения, соответствующего ожиданиям заказчика и условиям, сформулированным в функциональной спецификации. Также данный ролевой кластер строго следует выработанной архитектуре и дизайну решения, которые совместно с функциональной спецификацией составляют сводное описание конечного продукта.

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

В качестве создателей решения разработчики осуществляют низкоуровневое проектирование решения и его элементов, оценивают трудозатраты на реализацию и затем осуществляют построение самого решения. Разработчики сами оценивают собственные затраты и отслеживают расписание, поскольку их повседневная деятельность сопряжена с различными нештатными ситуациями. Эта концепция называется оцениванием снизу вверх (bottom-up estimation) и является фундаментальной частью философии MSF. Цель данной концепции состоит в достижении большей обоснованности календарного плана и увеличении чувства ответственности тех, кто определяет сроки этого плана, и от чьей производительности зависит его выполнение.

Технологическое консультирование

  • Выполнение функций технологических консультантов.
  • Оценивание и верификация технологий.
  • Активное участие в создании и обсуждении функциональной спецификации.
  • Вклад в создание корпоративных стандартов разработки программного обеспечения.

Проектирование и осуществление реализации

  • Соотнесение архитектуры решения с архитектурой предприятия.
  • Создание и реализация логического и физического дизайна решения.

Разработка приложений

  • Программирование составляющих решения в соответствии с проектной документацией.
  • Анализ и обсуждение программного кода (code reviews) с целью обмена знаниями и опытом.
  • Осуществление тестирования модулей (unit testing) в соответствии с планом и в координации с ролевым кластером "Тестирование".

Разработка инфраструктуры

  • Создание составляющих решения в соответствии с проектной документацией.
  • Анализ и обсуждение программного кода с целью обмена знаниями и опытом.
  • Осуществление тестирования модулей в соответствии с планом и в координации с ролевым кластером "Тестирование".
  • Разработка скриптов автоматизации.
  • Создание внедренческой документации.

Ролевой кластер "Тестирование"

Задача ролевого кластера "Тестирование" (test) – одобрение выпуска продукта только лишь после того, как все дефекты выявлены и улажены. Любое программное обеспечение содержит дефекты. Но нужно обнаружить и уладить (address) все из них до того, как продукт выпущен. Улаживание дефекта может подразумевать различные решения, начиная от устранения и заканчивая документированием способов обхода дефекта (work-around). Поставка продукта с известным дефектом, но с описанием способов его обхода является более предпочтительной, чем поставка продукта с невыявленным дефектом, который в дальнейшем станет сюрпризом – как для проектной команды, так и для заказчика.

Чтобы достичь успеха, команда тестировщиков должна фокусироваться на определенных ключевых задачах. Они структурируются в виде трех областей компетенции.

Планирование тестов

  • Разработка методологии и плана тестирования.
  • Участие в установлении стандарта качества (quality bar).
  • Разработка спецификаций тестов.

Разработка тестов

  • Разработка и поддержка автоматизированных тестов (automated test cases), инструментов и скриптов.
  • Проведение тестов с целью определения состояния проекта.
  • Управление билдами (manage the build process).

Отчетность о тестах

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

Ролевой кластер "Удовлетворение потребителя"

Цель этого ролевого кластера (удовлетворение потребителя - user experience) – повышение эффективности использования продукта. Кластер состоит из шести областей компетенции: общедоступность (accessibility), интернационализация (internationalization), обеспечение технической поддержки (technical communications), обучение пользователей (training), удобство эксплуатации (usability) и графический дизайн (graphic design). В рамках каждой из своих областей компетенции ролевой кластер "Удовлетворение потребителя" имеет несколько зон ответственности, необходимых для потребительского успеха решения. Ниже следует их перечисление.

Общедоступность

Учет требований общедоступности (доступности для людей с недостатками зрения, слуха и т.п.) в дизайне решения.

Интернационализация

Улучшение качества и удобства эксплуатации решения в иноязычных средах.

Обеспечение технической поддержки

  • Проектирование и разработка документации для служб поддержки (настольные руководства сотрудников служб поддержки, базы знаний и т.д.)
  • Наполнение системы помощи.

Обучение пользователей

Выработка и реализация стратегии обучения пользователей.

Удобство эксплуатации (эргономика)

  • Сбор, анализ и приоритезация требований пользователей (user requirements).
  • Анализ и обсуждение дизайна продукта.
  • Разработка сценариев и примеров использования (usage scenarios and use cases).
  • Представление интересов потребителя в проектной группе.

Графический дизайн

Дизайн пользовательского интерфейса.

Ролевой кластер "Управление выпуском".

Цель этого ролевого кластера – беспрепятственное внедрение и сопровождение продукта. Эта роль служит связующим звеном между проектной группой и группами процессов сопровождения. Данный ролевой кластер включает в себя следующие области компетенции:

  • Инфраструктура (infrastructure)
  • Сопровождение (support)
  • Бизнес-процессы (operations)
  • Управление выпуском готового продукта (commercial release management).

"Управление выпуском":

  • выполняет посреднические функции между группами разработки и сопровождения;
  • выбирает инструментарий внедрения и способствует его автоматизации и оптимизации;
  • устанавливает операционные критерии готовности продукта к выпуску;
  • участвует в разработке дизайна, отвечая за управляемость (manageability), удобство сопровождения (supportability) и удобство внедрения (deployability) конечного продукта;
  • организует обучение персонала сопровождения;
  • подготавливает и создает систему сопровождения опытного внедрения (pilot deployment);
  • планирует и обеспечивает поточный выпуск продукта (deployment into production);
  • контролирует соответствие результатов стабилизации продукта критериям приемлемости.

Инфраструктура

  • Планирование инфраструктуры предприятия.
  • Координация использования помещений и кросс-географическое планирование (центры данных, лаборатории, филиалы и периферийные офисы).
  • Разработка правил и инструкций для согласованного управления инфраструктурой.
  • Обеспечение инфраструктурного обслуживания проектной группы (серверы, стандартные образы дисков для рабочих станций, установка программного обеспечения).
  • Организация снабжения проектной группы аппаратным и программным обеспечением.
  • Создание тестовых и испытательных сред (test and staging environments), воспроизводящих рабочую среду (production environment).

Сопровождение

  • Обеспечение связи и обслуживания заказчиков и потребителей.
  • Управление соглашениями об уровне услуг (SLA – service level agreement) и обеспечение их надлежащего исполнения.
  • Организация оперативного разрешения пользовательских проблем и нештатных ситуаций.
  • Предоставление команде разработчиков обратной связи.
  • Разработка процедур действия в нештатных ситуациях.

Бизнес-процессы

  • Управление учетными записями.
  • Поддержка средств обмена сообщениями, баз данных, телекоммуникаций и сетей.
  • Системное администрирование.
  • Управление брандмауэром (firewall); администрирование системы безопасности.
  • Обслуживание приложений.
  • Интеграция серверов.
  • Поддержка служб каталогов.

Управление выпуском готового продукта

  • Регистрационные коды продукта; процесс верификации регистрации.
  • Управление лицензиями.
  • Подготовка дистрибутивных комплектов.
  • Управление каналами дистрибуции продукта.
  • Печатные и электронные публикации.
< Лекция 3 || Лекция 4: 1234 || Лекция 5 >
Александр Пятницын
Александр Пятницын
Россия
Александр Сидоренок
Александр Сидоренок
Украина, Киев