- •Составные части технологии программирования (тп). Отличие тп от методологии программирования и программной инженерии.
- •Технология быстрой разработки приложений (rad). Основные принципы и особенности.
- •Иерархия понятий в технологии программирования.
- •Определение понятия «предметная область». В чем заключается принцип концептуализации предметной области.
- •Особенности современных программных систем как объектов разработки. Проблемы разработки сложных программных систем.
- •Общие принципы разработки сложных программных систем. Признаки сложных программных систем.
- •Показатели качества программных систем.
- •Основные подходы к созданию сложных программных систем (структурный и объектный).
- •Структурный подход к разработке программных систем.
- •2) Объектный подход к разработке программных систем.
- •Основные этапы жц: Требования к по.
- •Основные этапы жц: Проектирование по.
- •Основные этапы жц: Конструирование по.
- •Основные этапы жц: Тестирование по.
- •Основные этапы жц: Сопровождение по.
- •1. Технические вопросы:
- •Жизненный цикл (жц) программных систем: определение, стандарты и проблемы.
- •Основные процессы жизненного цикла по.
- •Модель жизненного цикла по: Каскадная модель разработки по.
- •Модель жизненного цикла по: Спиральная модель разработки по.
- •Другие типы моделей жизненного цикла (V-образная, инкрементная, быстрого прототипирования).
- •Модели организации команд: Административная модель. Модель хаоса. Модель открытой архитектуры.
- •Модель проектной группы msf for Agile Software Development: Основные принципы построения команды.
- •Модель проектной группы msf. Ролевые группы и роли.
Модель проектной группы msf for Agile Software Development: Основные принципы построения команды.
Microsoft Solution Framework включает в себя модель проектной группы и принципы, положенные в основу построения команды.
Методология MSF считает, что успешная работа команды над проектом зависит от ее структуры и распределения зон ответственности ролевых групп внутри команды.
Ключевые концепции построения команды в MSF:
Концентрация на нуждах заказчика (понимание бизнес-задач заказчика, стремление к их решению со стороны команды, активное участие заказчика в проектировании решения и получение его отзывов в ходе процесса разработки)
Нацеленность на конечный результат (получению конечного результата проекта уделяется больше внимания, чем процессу его достижения)
Установка на отсутствие дефектов (стремление к высочайшему уровню качества)
«Проектная группа - команда равных» (равноправное положение каждой из ролей)
Стремление к самосовершенствованию (приверженность идее неустанного саморазвития посредством накопления опыта и обмена знаниями, проведение открытых обсуждений состояния проекта и доброжелательный, но объективный анализ)
Модель проектной группы msf. Ролевые группы и роли.
За успех проекта ответственна вся команда, каждая из ее ролевых групп, определяемых моделью, ассоциирована с одной из целей и работает над ее достижением.
MSF for Agile Software Development выделяет 7 ролевых групп:
Управление программой (program management);
Управление продуктом (product management);
Управление выпуском (release operations);
Архитектура продукта (architecture);
Разработка (development);
Тестирование (test);
Удовлетворение потребителя (user experience);
и 6 ролей:
менеджер проекта (project manager) (ролевая группа «Управление программой») – отвечает за соблюдение ограничений проекта, его основная задача – вести процесс разработки так, чтобы нужный продукт был выпущен в нужное время, координирует деятельность всех членов группы, должен полностью понимать все модели и процессы, повышающие эффективность труда;
бизнес-аналитик (business analyst) или менеджер продукта (ролевые группы «Управление продуктом» и «Удовлетворение потребителя») - отвечает за удовлетворение требований заказчика. Представляет интересы заказчика в группе разработчиков и команды у заказчика. Менеджер продукта совместно с менеджером проекта должны прийти к компромиссному решению относительно функциональных возможностей продукта, сроков его разработки и финансирования проекта, так называемый треугольник ограничений проекта (Время, Деньги, Качество).
релиз-менеджер (release manager) или логистик (ролевая группа «Управление выпуском») – отвечает за простоту развертывания и постоянное сопровождение; обязан разбираться в инфраструктуре продукта и требованиях к его сопровождению; должен уметь координировать установку программного обеспечения и оценить ее результаты; должен уметь устанавливать и настраивать пользовательские системы;
архитектор (archrect) (ролевая группа «Архитектура») – отвечает за разработку дизайна проекта (продукта); входит в группу разработчиков, но на нем лежит ответственность за принятие проектных решений;
разработчик (developer) (ролевая группа «Разработка») – отвечает за реализацию системы и разрабатывает комплект проектной документации; отвечают за низкоуровневое проектирование и оценку затрат на реализацию продукта. Сами оценивают сроки выполнения своей работы. Такая концепция MSF – создание графиков ответственного за выполнение конкретного участка членами команды – называется составлением расписания «снизу-вверх».
тестер (tester) (ролевая группа «Тестирование») отвечает за выявление и устранение проблем (дефектов) не только на уровне кода продукта, но и его спецификации и документацию к нему. При этом испытание продукта происходит в реальных условиях.
