Время — деньги. Создание команды разработчиков программного обеспечения
Время — деньги. Создание команды разработчиков программного обеспечения читать книгу онлайн
В этой книге ветеран индустрии программных средств Эд Салливан делится найденными в результате нелёгкого труда принципами, приёмами и методиками разработки коммерческого ПО. В книге раскрыты фундаментальные принципы, позволяющие выпускать качественные программы в срок в любых обстоятельствах. Вы узнаете о реальном опыте успешной разработки коммерческого ПО в начинающей компании, о том, как выбрать нужных специалистов, инструментальные средства разработки, настроить технологию, планировать и выполнять проект, своевременно обнаруживая и решая возникающие проблемы.
Книга состоит из 15 глав и предметного указателя.
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
По завершении бета-тестирования важно проанализировать, что прошло хорошо, а что — нет. В рамках этого анализа нужно оценить работу самих бета-тестеров. Необходимо выделить и поощрить тех, кто вовремя предоставлял ценную информацию. Если какие-либо тестеры вообще не предоставили никакой информации, от их услуг лучше отказаться, чтобы освободить место для новых участников.
Менеджер бета-тестирования
Курирует бета-тестирование и управляет её исполнением. Поскольку программы бета-тестирования зачастую масштабны и сложны, эту работу должен выполнять штатный специалист. Это может показаться чересчур для такой работы, но с учётом ценности хорошо проведённого бета-тестирования, все затраты должны оправдаться с лихвой. В компетенцию менеджера бета-тестирования входит следующее:
• Определение целей и задач
Менеджер бета-тестирования должен следить за тем, что для программы бета-тестирования определены цели, профиль клиента, масштаб и продолжительность.
• Набор бета-тестеров
Менеджер бета-тестирования должен следить, чтобы к моменту выпуска бета-версии было набрано достаточно бета-тестеров, готовых принять участие в испытаниях программы. Очевидно, что любая задержка с набором достаточного числа бета-тестеров уменьшит объём и снизит качество получаемой информации.
• Распространение ПО
Менеджер бета-тестирования составляет и реализует план распространения ПО среди бета-тестеров как через Интернет, так и на физических носителях. Он должен обеспечить быструю и эффективную передачу ПО каждому бета-тестеру. Если решено распространять программы через сеть, надо убедиться в наличии линий связи и серверов, необходимых для поддержки большого числа одновременных обращений бета-тестеров. Если для распространения ПО выбран физический носитель, необходимо обеспечить достаточные производственные мощности для своевременного распространения ПО.
• Распространение сведений о состоянии бета-тестирования
Менеджер является информационным центром, снабжающим всех бета-тестеров сведениями о состоянии программы бета-тестирования. В частности, он объявляет начало и конец бета-тестирования, а также сообщает о новом доступном ПО. Он также является связующим звеном между бета-тестерами и группой создателей продукта, обеспечивая обмен важными сведениями, включая изменения в плане программы бета-тестирования, появление обновлений ПО, исправлений критических ошибок и передачу специальных запросов на отзывы.
• Управление результатами бета-тестирования
От менеджера во многом зависит успех программы бета-тестирования. Почти сразу после её начала он должен обзвонить бета-тестеров, чтобы проверить, получили ли они ПО и, если да, начали ли работать с ним. Менеджер бета-тестирования должен следить за успехами каждого бета-тестера и обязательно стимулировать отстающих, чтобы они установили ПО и приступили к работе.
• Завершение программы бета-тестирования
Менеджер должен так провести свёртывание бета-тестирования, чтобы не разочаровать тестеров, ещё не закончивших работу с продуктом. Менеджер запрашивает у тестеров их окончательные идеи, комментарии и сообщения об ошибках, а также обеспечивает их своевременное получение.
• Поощрение бета-тестеров
Бета-тестеры — чрезвычайно ценные участники проекта. Хороших тестеров необходимо поощрять, плохих — исключать из программы.
Общие проблемы и решения
Далее обсуждается ряд типичных проблем и вопросов, возникающих при использовании описываемых здесь методик, а также их решения.
Набор бета-тестеров требует времени, как и подписание соглашения о неразглашении коммерческой тайны. Набор непременно нужно начинать задолго до готовности бета-версии программы. Для программы, в которой участвует 200 бета-тестеров, я рекомендую оставлять 60-90 дней.
Не забывайте, что бета-тестеры заняты своими делами не меньше вас и могут приступить к оценке ПО с опозданием. В общем случае эту проблему можно решить тремя способами. Во-первых, если продукт сложен и для его установки нужны значительные ресурсы, можно послать к бета-тестерам своих людей, чтобы они помогли установить и запустить ПО для тестирования. Во-вторых, можно предположить, что до трети бета-тестеров не смогут начать тестирование вовремя или вообще откажутся от него. Поэтому следует включить в программу дополнительных бета-тестеров, чтобы компенсировать их возможный недостаток и не допустить задержки. В-третьих, следует непременно связываться с каждым бета-тестером лично (если можно, по телефону), чтобы следить за их успехами в начале проекта и составить представление об их возможности участвовать в программе бета-тестирования.
Как я говорил в главе 1, выпуск каждой бета-версии знаменует завершение крупного промежуточного этапа в работе над проектом. Таким образом, прежде чем рассылать бета-версию бета-тестерам, нужно завершить период стабилизации и интеграции. Этот период (обычно 1-2 недели) используется для тестирования, исправления ошибок и решения серьёзных проблем. Качество ПО должно быть достаточным для работы на местах бета-тестирования. До выпуска продукта во внешний мир надо подумать о проведении внутренних испытаний, о которых пойдёт речь в главе 14. Бета-версия — это ещё не окончательная версия ПО, однако изложенные в этой главе концепции помогут извлечь пользу даже из неё.
Для нормального проведения бета-тестирования нужна подходящая программная и аппаратная инфраструктура. Скажем, для управления поступающей от бета-тестеров информацией, статусом соглашений о неразглашении коммерческой тайны, оценки работы бета-тестеров скорее всего потребуется специальная программа. Нельзя недооценивать объём информации, с которым придётся работать.
Самой большую пользу от бета-тестирования представляет информация, которую оно позволяет получить. Процедуры передачи, обработки и продвижения информации должны быть чёткими и понятными. Для поддержки бета-тестирования обязательно нужны компетентные и хорошо обученные специалисты. Также необходимо оставаться в контакте с бета-тестерами в течение всего процесса бета-тестирования.
Для бета-тестирования должно быть выделено достаточно времени. Начав его в понедельник, не надейтесь закончить его в пятницу, если рассчитываете на хорошие результаты.
Как я уже говорил, ценность программы бета-тестирования определяется числом отзывов, которые она помогает собрать. Если отзывов слишком мало, нужно собрать их. Звоните и спрашивайте, установили ли тестеры программу и успешно ли они с ней работают. Пишите по электронной почте, чтобы убедиться, что у всех бета-тестеров всё идёт нормально. Анкеты также помогают собрать сведения, позволяющие решать проблемы и следить, чтобы реализация проекта шла по намеченному пути.