Благодарности
Об авторе
Предисловие
Аутсорсинг и оффшоринг
Предоставление услуг по разработке программного обеспечения для аутсорсинговых проектов
Целевая аудитория
Глава 1. Введение в аутсорсинг
Определение аутсорсинга
Четыре типовых сценария аутсорсинга проектов
..Сценарий 1: разработка на площадке заказчика
..Сценарий 2: оффшорные проекты
..Сценарий 3: отдаленные подрядчики, та же страна
..Сценарий 4: несколько подрядчиков
Как Rational Unified Process связан со всем этим?
Резюме
Что дальше?
Глава 2. Обзор Rational Unified Process
Традиционный процесс разработки программного обеспечения
..Преимущества каскадного процесса
..Недостатки каскадного процесса
Введение в Rational Unified Process
..История
..Шесть лучших практик
..Фазы жизненного цикла RUP
Резюме
Что дальше?
Глава 3. Начало работы: запросы на предложения, предложения и контракты
Десять шагов процесса заключения договора
..Шаг 1: выпуск RFP
..Шаг 2: встречи и совещания по запросу
..Шаг 3: формирование группы по подготовке предложения
..Шаг 4: вопросы от претендентов
..Шаг 5: устные презентации
..Шаг 6: предоставление предложений в письменной форме
..Шаг 7: вопросы и ответы
..Шаг 8: передача ответов
..Шаг 9: лучшее и окончательное предложение
..Шаг 10: заключение контракта
Достоинства процесса заключения контракта
Что не так с процессом заключения контракта?
Как можно усовершенствовать процесс заключения контракта для систем ПО
..Предлагаемая поэтапная модель заключения контракта для малых проектов
..Поэтапная модель заключения контракта в проектах среднего и большого размера
..Преимущества поэтапной модели заключения контракта для больших контрактов
..Потенциальные недостатки поэтапной модели заключения контракта
Сложности управления проектами с фиксированной ценой
Контроль выполнения проекта
..Версии
Оценка трудоемкости проекта
Выбор подрядчика с опытом использования RUP
Что нужно вынести организации­нанимателю
Что нужно вынести подрядчику
Резюме
Что дальше?
Глава 4. Передовой опыт кадрового обеспечения проектного офиса организации­нанимателя
Определение ключевых ролей
..Руководитель проекта
..Ведущий представитель пользователей
..Архитектор проекта из PMO
..Внутренний лидер проекта
..Специалист по заключению контрактов
..Руководитель ИТ­подразделения
Особенности других ролей
..Разработка модели данных
..Разработка общего кода
Резюме
Что дальше?

Глава 5. Передовой опыт кадрового обеспечения проектной команды подрядчика
Основные принципы при наборе членов команды
Роли в команде разработчиков программного обеспечения у подрядчика
..Руководитель проекта
..Разработчик
..Архитектор
..Технический лидер
..Специалист по инструментальным средствам
..Аналитик требований
..Тестировщик
..Управление конфигурацией/QA
Передовой опыт руководства командой
Резюме
Что дальше?
Глава 6. Создание среды разработки программного обеспечения
Разрабатывать, покупать или брать взаймы
..Условно­бесплатное ПО
..Коммерческое ПО
..Собственное ПО
Управление требованиями
..Важные функции, которые должны присутствовать в инструменте управления требованиями
Управление запросами на изменение
..Возможности, которые должны быть реализованы в инструментах управления запросами на изменение
Инструменты управления конфигурацией
..Возможности, которые должны быть реализованы в инструментах управления конфигурацией
..Серверы для среды разработки программного обеспечения
Клиентские ПК
Передовой опыт внедрения новых инструментов
Резюме
Что дальше?
Глава 7. Начало: запуск проекта
Цели фазы «начало»
Артефакты, производимые в фазе «начало»
..Экономическое обоснование проекта
..Концепция проекта
..Список рисков проекта и план управления рисками
..Среда разработки программного обеспечения проекта
..Проектный план разработки программного обеспечения [Software Development Plan (SDP)]
..План итерации
..Процесс разработки
..Глоссарий по проекту
..Модель прецедентов использования
..Опциональные артефакты
«Гуманитарные» способности
..Создание представления о проекте
..Поддержка коммуникаций в проекте
Создание Web­сайта проекта
..Преимущества Web­сайтов проектов
..Предложения по содержанию Web­сайта проекта
..Другой передовой опыт для Web­сайта проекта
Что может пойти не так в фазе «начало»
Создание чувства причастности по отношению к проектному плану
Резюме
Что дальше?
Глава 8. Идентификация и управление рисками
Технические риски
..Управление техническими рисками
Политические риски
..Пример обнаружения политического риска
..Идентификация политических рисков
Риски финансирования
..Финансирование в государственных проектах
..Источники финансирования не всегда просто определить
Предпринимательские риски
Риски, связанные с зависимостью от внешних источников
..Пример управления зависимостью от вендора
..Риски, связанные с другими подрядчиками
Создание системы отслеживания рисков
..Характеристики системы отслеживания рисков
Резюме
Что дальше?
Глава 9. Обзор процесса управления требованиями
Определение заинтересованных лиц
Как добиться успеха в управлении требованиями
..Признак 1: постоянная доступность для подрядчика нужных заинтересованных лиц в организации­нанимателе
..Признак 2: тесные рабочие взаимоотношения с заинтересованными лицами
..Признак 3: правильный сбор, распределение и использование информации, получаемой от заинтересованных лиц
Соображения для оффшорных проектов и остальных проектов, разрабатываемых на большом расстоянии от заказчика
..Поиск возможностей взаимодействия
..Понимание культурных различий в оффшорных проектах
Моделирование бизнес­процесса
..Определение бизнес­моделирования
..Прецеденты использования: передовой опыт фиксирования бизнес­процессов и функциональных требований
..Переход к системным прецедентам использования
Когда процесс управления требованиями идет не так
..Вам говорят, что анализ требований уже завершен
..Отсутствие согласия по структуре бизнес­процессов в организации­нанимателе
..Уклонение от неограниченного роста количества требований или от «штамповки» требований
..Несколько подрядчиков и «забытые» заинтересованные лица
Резюме
Что дальше?
Глава 10. Итерации на фазе «проектирование»: движение к цели
Как вы можете определить, что проект готов к реализации?
..Оценка готовности проекта к реализации: контрольные списки
Планирование, выполнение и оценка итерации
..Насколько длинными должны быть итерации?
..Определение содержания итераций
..Планирование итераций фазы «реализация»
..Оценка результатов итерации
..Демонстрация результатов итерации
..Перегруппировка после демонстрации
Возвращение к контрактным проблемам
Характерные ошибки при использовании итеративной разработки в фазе реализации
..Ошибка 1. Начало фазы реализации до того момента, когда проект к этому готов
..Ошибка 2. Неподходящая продолжительность итераций
..Ошибка 3. «Бесцельные» итерации
..Ошибка 4. Проблема с запросами на изменение
..Ошибка 5. Попытка подробно распланировать все итерации заранее
..Эпизодические наблюдения из жизни команд разработчиков, использующих итеративные и каскадные методики
Резюме
Что дальше?
Глава 11. Тестирование
Чем затруднено тестирование в традиционных каскадных моделях жизненного цикла
Тестирование в итеративных моделях жизненного цикла
..Преимущества тестирования при итеративной разработке
..Подготовка к тестированию в итеративных моделях жизненного цикла
Различные типы тестирования
..Функциональное тестирование
..Блочное тестирование
..Тестирование надежности
..Тестирование производительности и работы в предельных режимах
..Другие типы тестирования
Другие лучшие практические подходы к тестированию
..Введение тестовой экспертизы в процесс cбора требований
..Держите участников тестирования в курсе происходящего
..Воспроизводите рабочую среду
..Тестирование – это часть поставляемого продукта
Заключительные мысли и рассуждения о кадровом обеспечении дисциплины тестирования
..Что если тестирование будет выполнять отдельная команда, возможно оффшорная?
..Плохо идет процесс тестирования?
Резюме
Что дальше?
Глава 12. Ввод системы в эксплуатацию
Вопросы кадрового обеспечения в фазе «внедрение»
Задачи проекта в фазе «внедрение»
..Развертывание первоначального работоспособного релиза
..Интерактивная справка
..Инсталляционные скрипты
..Запросы на изменение
..Миграция данных
..Тренинги
..Приемочное тестирование
Урегулирование ожиданий конечного пользователя в отношении продукта
..Определение групп пользователей для помощи при эксплуатационном развертывании
Резюме
Что дальше?
Глава 13. Вопросы эксплуатации и сопровождения системы
Приобретение услуг сопровождения
..Поддержка эксплуатации
..Другие передовые приемы в работе службы эксплуатации
Служба сопровождения
..Когда подрядчик сопровождения не совпадает с подрядчиком разработки
..Исправления в программном обеспечении
Резюме
Что дальше?
Глава 14. Эффективное использование консультантов
Укомплектование штата
Консультанты­эксперты
..Консультанты­эксперты от вендоров
..Консультант­эксперт по процессу из консалтинговой фирмы
Стоимость консультантов
Резюме
Что дальше?
Глава 15. Анализ результатов после окончания проекта
Определение анализа результатов
Источники информации для определения полученных уроков
..Зачем беспокоиться об анализе результатов?
..Сохранение усвоенных уроков в памяти организации
..Примеры трендов из дисциплины управления конфигурацией
..Сбор данных по проекту
..(Не)правильное использование метрик
Резюме
Приложение A
Общие ошибки при использовании RUP
Ошибка 1: Итерации с неподходящей длительностью
Ошибка 2: Итерации без ясной цели
Ошибка 3: Неправильный выбор проекта для первого применения RUP
Ошибка 4: Невыполнение интеграции запросов на изменения в итерации
Ошибка 5: Неумение приспособить RUP надлежащим образом
Ошибка 6: Неправильное применение тестирования в ходе итерации
Ошибка 7: Уверенность в идеальной реализации RUP с первого раза
Приложение В
Реализация двухэтапного процесса заключения контракта
Необходимые культурные изменения
Типы контрактов
Кто участвует в заключении договора на втором этапе?
Какие артефакты должны быть получены и сделаны доступными в течение первого этапа?
..Глоссарий
..Концепция
..Описание архитектуры программного обеспечения
..Набор бизнес­моделей и прецедентов использования системы
..Модели UML
..Набор дополнительных требований
..Исполняемые программы, созданные в итерациях
..Список рисков и история рисков
..Другая информация
Резюме