ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 22.04.2024

Просмотров: 161

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Скачано с сайта http://ivc.clan.su

Технология разработки программного обеспечения

Таблица 7-10. Роли и задачи проектной группы в начале итерации (продолжение)121

 

Дисциплина

Роль

Задачи

 

 

 

 

 

 

 

 

Управляющий

Определить управление конфигурацией,

 

 

Управление

конфигурацией

установить политику и создать план.

 

 

конфигурацией

Управляющий

 

 

 

и изменениями

контролем

Определить процесс контроля изменений.

 

 

 

за изменениями

 

 

 

 

 

 

 

 

Управление проектом

Руководитель

Создать примерные планы разработки,

 

 

проекта

оценить ход разработки проекта.

 

 

 

 

 

 

 

 

 

 

Управление средой

Системотехник

Оценить инструментальную поддержку.

 

 

 

 

 

 

Таблица 7-11. Роли и задачи проектной группы в ходе итерации

Дисциплина

Роль

Задачи

 

 

 

Бизнес-

Составитель

 

бизнес-

Детализировать отдельные бизнес-прецеденты.

моделирование

спецификаций

 

 

 

 

 

 

Управление

Составитель

Детализировать отдельные прецеденты.

требованиями

спецификаций

 

 

 

 

Анализ и

Разработчик

Выполнить детальный анализ и проектирование

проектирование

отдельных прецедентов.

 

 

 

 

 

 

Выполнить кодирование отдельного набора

Реализация

Разработчик

классов или отдельного набора операций клас-

 

 

са.

 

 

 

 

 

Автоматизировать части плана тестирования

Тестирование

Тестер

для регрессионного тестирования.

 

 

Управлять определѐнным набором тестов.

 

 

 

 

Технический писа-

 

 

тель

Создать детальные материалы,

 

Специалист по

Развѐртывание

чтобы гарантировать

обучению

 

успешное развѐртывание системы.

 

Специалист по

 

 

 

графике

 

 

 

 

 

Управляющий

Определить отдельные единицы,

Управление

состав конфигурации

конфигурацией

конфигурацией

и оценить конфигурацию.

 

и изменениями

 

 

Управляющий

Рассматривать запросы на изменения

 

контролем за изме-

и управлять изменениями.

 

 

 

Довбуш Г.Ф., ПГУПС, кафедра ИВС, 2010/2011


Скачано с сайта http://ivc.clan.su

Технология разработки программного обеспечения

122

 

нениями

Довбуш Г.Ф., ПГУПС, кафедра ИВС, 2010/2011

Скачано с сайта http://ivc.clan.su

Технология разработки программного обеспечения

Таблица 7-11. Роли и задачи проектной группы в ходе итерации (продолжение)123

Дисциплина

Роль

Задачи

 

 

 

 

 

Управление

Руководитель проекта

Создать план итерации и управлять риском.

 

проектом

 

 

 

 

 

 

 

 

Управление средой

Системотехник

Создать директивы по использованию

 

инструментальных средств.

 

 

 

 

 

 

 

 

8. ОРГАНИЗАЦИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Серьѐзные программные продукты редко разрабатываются одиночками. Обычно этим занимаются группы людей, иногда довольно многочисленные.

8.1. Группа проекта и роли участников группы

Проектная группа (development team) – сообщество работающих над проектом людей, объединѐнных с целью создания качественного программного продукта в ограниченные сроки в рамках отведѐнного бюджета.

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

8.1.1. Руководитель проекта – Program manager

Software development manager, Project manager, Producer

Руководитель проекта отвечает за разработку качественного продукта в срок и в рамках установленного бюджета.

Основные виды деятельности:

планирование работы и составление бюджета;

принятие критичных для хода проекта решений;

ведение графика проекта и обеспечение соблюдения сроков;

координирование работ (управление взаимоотношениями) в группе;

управление функциональными спецификациями (техническими заданиями).

8.1.2. Менеджер по маркетингу – Product manager

Product marketing manager

Менеджер по маркетингу отвечает за соответствие продукта фирменному стилю своей компании и за маркетинговую деятельность после выпуска.

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

Довбуш Г.Ф., ПГУПС, кафедра ИВС, 2010/2011


Скачано с сайта http://ivc.clan.su

Технология разработки программного обеспечения

124

8.1.3. Разработчик – Developer

 

Разработчиков, как правило, бывает несколько.

Разработчики отвечают за удовлетворѐнность заказчика.

8.1.3.1. Разработчик архитектуры – Architect

Архитектор отвечает за архитектуру продукта, которая понятна, проста, эффективна, надѐжна и поддаѐтся модификации.

Архитектура – это описание структуры ПС. При проектировании архитектуры определяют подсистемы, а также управление подсистемами и их взаимодействие.

Задачи архитектора:

определение общей архитектуры системы (кода и данных);

определение принципов обмена данными между связанными компонентами;

определение стратегии разработки повторно используемых компонент;

составление плана тестирования чѐрного ящика на самом верхнем уровне;

разработка тестов, проверяющих соответствие кода техническому заданию.

8.1.3.2. Аналитик предметной области – Software analyst

Subject matter

Аналитик отвечает за правильность понимания решаемых задач.

Задачи аналитика:

обеспечение связи между заказчиком и проектной группой;

понимание того, что хотят пользователи;

понимание того, как выразить желания пользователя в терминах, понятных участникам проектной группы;

разработка логики работы программного продукта;

составление рабочих спецификаций (детальных технических заданий).

8.1.3.3. Специалист по интерфейсу – User interface designer

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

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

8.1.3.4. Программист – Programmer

Программист отвечает за надѐжный и полный продукт.

Программисты занимаются разработкой определѐнной части продукта, которая относится к внутренней архитектуре.

Довбуш Г.Ф., ПГУПС, кафедра ИВС, 2010/2011


Скачано с сайта http://ivc.clan.su

Технология разработки программного обеспечения

125

Задачи программиста:

 

создание продукта, удовлетворяющего техническому заданию;

тестирование белого ящика (обеспечение качества кода);

обеспечение срока разработки кода;

обеспечение установки программного продукта.

8.1.4. Тестер – Tester

Тестер отвечает за согласованный и надѐжный продукт.

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

Задачи тестера:

разработка стратегии и плана тестирования каждого этапа жизненного цикла;

верификация на каждом этапе жизненного цикла (деталей продукта, используемой терминологии, функциональных спецификаций, кода, пользовательского интерфейса);

комплексное тестирование проекта;

документирование результатов тестирования.

8.1.5. Технический писатель – Writer

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

Задачи представителей группы документирования:

разработка документации (всевозможные инструкции и руководства), которая помогает сделать ПС понятным для пользователей и всех разработчиков;

ведение глоссария (определение единой терминологии);

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

8.1.6. Представитель группы технической поддержки – Logistic

Technical support

Логистик отвечает за гладкое внедрение продукта.

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

Задачи представителя группы технической поддержки:

обеспечение готовности заказчика к внедрению (контроль своевременности выполнения подготовительных работ, проверка наличия необходимой инфраструктуры);

администрирование локальной сети (если необходимо);

отслеживание запросов на расширение функциональных возможностей.

Довбуш Г.Ф., ПГУПС, кафедра ИВС, 2010/2011


Скачано с сайта http://ivc.clan.su

Технология разработки программного обеспечения

126

8.1.7. Другие специалисты

 

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

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

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

Модель группы проекта:

вводит понятие роли для всех участников группы;

даѐт чѐткое определение зон ответственности каждой роли;

определяет активность роли в течение всего жизненного цикла.

Модель построена вокруг идеи маленькой группы участников, работающих в тесной взаимосвязи, каждый из которых выполняет свои роли (рис. 8-1).

Рис. 8-1. Модель группы проекта

В модели определены шесть ролей:

1.Менеджер по маркетингу – Product manager.

2.Руководитель проекта – Program manager.

3.Разработчик – Developer.

4.Тестер – Tester.

5.Технический писатель – Writer.

6.Логистик – Logistic.

Характеристики группы проекта:

1.Общение каждого с каждым, причѐм каждый делает реальную работу.

2.Общие для всех членов группы цели и планы.

3.Каждый понимает как проблемы пользователя, так и проблемы разработчика.

4.Каждый несѐт ответственность за свою работу перед группой.

Довбуш Г.Ф., ПГУПС, кафедра ИВС, 2010/2011