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



Выполнение функций технологических консультантов.

Оценивание и верификация технологий.

Активное участие в создании и обсуждении функциональной спецификации.

Вклад в создание корпоративных стандартов разработки программного обеспечения.

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

Соотнесение архитектуры решения с архитектурой предприятия.

Создание и реализация логического и физического дизайна решения.

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

Программирование составляющих решения в соответствии с проектной документацией.

Анализ и обсуждение программного кода (code reviews) с целью обмена знаниями и опытом.

Осуществление тестирования модулей (unit testing) в соответствии с планом и в координации с ролевым кластером “Тестирование”.

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

Создание составляющих решения в соответствии с проектной документацией.

Анализ и обсуждение программного кода с целью обмена знаниями и опытом.

Осуществление тестирования модулей в соответствии с планом и в координации с ролевым кластером “Тестирование”.

Разработка скриптов автоматизации.

Создание внедренческой документации.

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

Область компетенции “Технологическое консультирование” (technology consulting) служит ресурсом разрешения технических проблем. Выполняя роль технологических консультантов, разработчики должны предоставлять необходимую информацию для проектирования, оценки и верификации технологий; проводить предварительные исследования с целью минимизации рисков.

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

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

Область компетенции “Проектирование и осуществление реализации” (implementation architecture and design) связана с набором задач, относящихся к определению архитектуры решения и его проектированию.

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

MSF предлагает трехуровневый процесс проектирования: концептуальный дизайн (conceptual design), логический дизайн (logical design) и физический дизайн (physical design). “Управление программой” и “Управление продуктом” совместно осуществляют концептуальный дизайн. Он включает в себя сценарии использования (user scenarios), высокоуровневый анализ требований к удобству эксплуатации (usability), концептуальное моделирование данных и начальный выбор используемых технологий. Разработчики же занимаются логическими и физическими аспектами дизайна решения. Данная деятельность требует адекватных технологических знаний и умения определить влияние того или иного технологического выбора на создаваемое решение.

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

Область компетенции “Разработка приложений” (application development) связана с задачами разработки программных приложений в рамках проекта. Главные цели этой области компетенции – создание составляющих решения в соответствии с проектной документацией, проведение тестирования модулей, исправление дефектов, выявленных в процессе тестирования и осуществление интеграции всех компонент в окончательный продукт.

Разработчики вносят свой вклад в выработку стандартов и досконально следуют им в процессе работы над решением. Они также осуществляют анализ и обсуждение программного кода (code reviews), чтобы оценить качество проделанной работы. Проведение такого анализа позволяет членам проектной группы делиться накопленными знаниями и опытом, воплощая в жизнь фундаментальный принцип MSF – извлечение уроков на уровне команды. От разработчиков требуется проведение надлежащего тестирования модулей (unit testing) и адекватное документирование этого процесса. Такая работа осуществляется в тесной связи с ролевым кластером “Тестирование”, который планирует и производит независимую оценку качества решения.

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

Область компетенции “Разработка инфраструктуры” (infrastructure development) связана с задачами разработки системной инфраструктуры и инфраструктуры программного обеспечения, входящего в состав решения. Системная инфраструктура включает в себя сетевую инфраструктуру, клиентские и серверные компьютеры и все сопутствующие компоненты. Инфраструктура программного обеспечения включает в себя операционные системы клиентов и серверов, а также программные продукты, обеспечивающие необходимые сервисы (например, службы каталогов, системы обмена сообщениями, базы данных, интеграция приложений предприятия, администрирование системы, администрирование сети и т.д.).

Команда разработчиков создает инфраструктуру в соответствии с проектной документацией. Это включает в себя настройку технологических средств решения, как например, настройку сети и систем “клиент-сервер”. Составляющие инфраструктуры подвержены влиянию требований к приложениям и наоборот. Например, если критическими факторами являются надежность и производительность, может быть необходимым использование кластеризации (clustering) и балансирования загрузки (load‑balancing) серверов. Операционные системы и системные продукты, в среде которых будет использоваться решение, должны быть соответствующим образом установлены, сконфигурированы и оптимизированы. По окончании проведения необходимого тестирования и стабилизации компоненты инфраструктуры внедряются на широкой основе. Это внедрение осуществляется ролевым кластером “Управление выпуском”, который обеспечивает удовлетворение требований к инфраструктуре решения.

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

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

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

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

Разработка методологии и плана тестирования.

Участие в установлении стандарта качества (quality bar).

Разработка спецификаций тестов.

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

Разработка и поддержка автоматизированных тестов (automated test cases), инструментов и скриптов.

Проведение тестов с целью определения состояния проекта.

Управление билдами (manage the build process).

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

Доведение до сведения проектной группы информации о качестве продукта.

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

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

Данная область компетенции (планирование тестов – test planning) ролевого кластера “Тестирование” формулирует методологию нахождения и урегулирования проблем качества продукта.

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

Существенная часть работы данной области компетенции заключается в участии в выработке требуемого уровня качества (quality bar) продукта. Эта деятельность включает в себя предоставление проектной группе метрик контроля качества и критериев успешности решения.

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

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

Эта область компетенции (разработка тестов – test engineering) ответственна за предусмотренные планом тестирования мероприятия, направленные на нахождение и урегулирование всех проблем качества создаваемого продукта. В их числе – работа по созданию и поддержке тестовых сценариев (test cases), разработка средств, скриптов и документации процесса тестирования, управление ежедневными билдами (daily builds), проведение на них тестов с целью четкого определения уровня завершенности продукта.

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

Данная область компетенции (отчетность о тестах – test reporting) снабжает проектную группу информацией о текущих изъянах в решении, также как и о достигнутых успехах. Благодаря этому проектная группа имеет четкую картину текущего состояния разработки.

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

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

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

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

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

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

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


Дата добавления: 2019-01-14; просмотров: 209; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!