Читаем Как тестируют в Google полностью

Ни один проект не получит ресурсы тестирования просто так. Команды разработки обращаются к тестировщикам за помощью, убеждая их в том, что проект по-настоящему интересен и перспективен.


Структура команды

Разработчики часто глубоко погружены в код, который пишут, и сосредоточены на одной фиче продукта или даже ее части. Они принимают все решения исходя из локальной пользы, воспринимая продукт очень узко. Хороший разработчик в тестировании должен делать ровно наоборот: смотреть на продукт широко и держать в голове общую картину продукта, со всеми его фичами. Более того, он должен понимать, что разработчики приходят, делают свою работу и уходят, а продукт должен продолжать жить дальше.

Проектам типа Gmail или Chrome суждено пройти через много версий. Над ними будут трудиться сотни разработчиков. Представим, что разработчик присоединился к команде на третьей версии продукта. Если этот продукт хорошо задокументирован и пригоден к тестированию, если у него есть стабильный работоспособный механизм автоматизации тестов, если есть процессы, по которым легко добавить новый код, — считайте, что те ранние разработчики в тестировании сработали хорошо.

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

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

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

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


Проектная документация

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

Очень хорошо, если разработчики в тестировании присоединяются к проекту на раннем этапе. Тогда они сделают важную работу, которая заметно повлияет на результаты. Если они правильно разыграют карты, то упростят жизнь участников проекта, ускорив ход работы. У разработчиков в тестировании есть очень важное преимущество в команде: по сравнению с другими инженерами они обладают самым широким представлением о продукте. Хороший разработчик в тестировании добавляет свою ценность к работе узкоспециализированных разработчиков и влияет на весь проект в целом, а не просто пишет код. Не разработчики, а именно разработчики в тестировании обычно выявляют общие схемы для повторного использования кода и взаимодействия компонентов. Оставшаяся часть этого раздела как раз и рассказывает о том, какую ценную работу могут выполнять разработчики в тестировании на ранней стадии проекта.


На заметку

Цель разработчика в тестировании на ранней стадии — упростить жизнь других участников проекта, ускорив выполнение работы.

Перейти на страницу:

Похожие книги

Оптимизация BIOS. Полный справочник по всем параметрам BIOS и их настройкам
Оптимизация BIOS. Полный справочник по всем параметрам BIOS и их настройкам

Прочтя эту книгу, вы узнаете, что представляет собой BIOS, какие типы BIOS существуют, как получить доступ к BIOS и обновлять ее. Кроме того, в издании рассказано о неполадках в работе BIOS, которые приводят, например, к тому, что ваш компьютер не загружается, или к возникновению ошибок в BIOS. Что делать в этот случае? Как устранить проблему? В книге рассказывается об этом и даже приводится описание загрузки BIOS во флэш-память.Также вы научитесь использовать различные функции BIOS, узнаете, как оптимизировать их с целью улучшения производительности и надежности системы. Вы поймете, почему рекомендуемые установки являются оптимальными.После прочтения книги вы сможете оптимизировать BIOS не хуже профессионала!Книга предназначена для всех пользователей компьютера – как начинающих, которые хотят научиться правильно и грамотно настроить свою машину, используя возможности BIOS, так и профессионалов, для которых книга окажется полезным справочником по всему многообразию настроек BIOS. Перевод: А. Осипов

Адриан Вонг

Зарубежная компьютерная, околокомпьютерная литература / Программирование / Книги по IT
Цифровой журнал «Компьютерра» № 160
Цифровой журнал «Компьютерра» № 160

ОглавлениеКолонкаПочему Челябинский метеорит привёл к такому количеству пострадавших? И можно ли избежать повторения? Автор: Евгений ЗолотовО (не)эффективном управлении, конфликте интересов на разных уровнях иерархии и Невидимой Ноге Автор: Дмитрий ШабановРеволюция делегированных услуг Автор: Сергей ГолубицкийМистика Дропбокса или как посредственному облаку удается снимать сливки с рынка Автор: Сергей ГолубицкийЧто может рассказать шЦфеср от Apple о тонких материях виртуально-финансового бытия Автор: Сергей ГолубицкийСвидетельствует ли скандал с диссертациями о моральном разложении научного сообщества Автор: Дмитрий ВибеГлоток свободы в последний раз (опыт джейлбрейка evasi0n iPhone 5 и new iPad) Автор: Сергей ГолубицкийДомашняя архитектура: Как в квартирах и гаражах самозарождаются компьютерные системы Автор: Михаил ВаннахБуревестник Литрес или уроки катабазиса от метафоры с булкой к гражданской войне Автор: Сергей ГолубицкийПоиски Астарота, или Почему космическим кораблям необходимо бороздить просторы Вселенной Автор: Василий ЩепетнёвIT-рынокКак быть с корпоративным консерватизмом, если государство «принуждает» к инновациям Автор: Вадим Сухомлинов, руководитель направления стратегического развития бизнеса Intel в России и странах СНГWebKit в «Опере»: какое будущее ждёт независимый браузер Автор: Андрей ПисьменныйRIOT: «Google для шпионов» от компании Raytheon Автор: Юрий ИльинВалентин Макаров: Что нужно ИТ-отрасли от государства? Автор: Валентин Макаров Президент НП РУССОФТБыть или не быть Microsoft Office для Linux Автор: Максим ПлаксаДесять предшественников iPad: планшеты от 1968 до 2000 Автор: Андрей ПисьменныйПромзонаДизайнеры шутят: квадратные куриные яйца, рыбы с проушиной под крючок и прочие радости ГМО Автор: Николай МаслухинПреобразование энергии: концепт термоэлектрического зарядного устройства, работающего от тепла люминесцентных ламп Автор: Николай МаслухинФутуристический концепт: Airblow 2050 – зонт образца 2050-го года Автор: Николай МаслухинСамый практичный дизайн: мальчику создали кисть руки при помощи 3D-принтера Автор: Николай МаслухинMobile«Сумму» ничего не ждёт, а LTE-конкурс не отменят Автор: Максим БукинVertu станет «сенсорником» под Android Автор: Максим БукинОстаться должен только один: что не поделили Apple, Samsung и Nokia Автор: Олег ПарамоновТерралабОбзор интерактивного дисплея Wacom Cintiq 24HD touch Автор: Юрий ИльинТехнологииДесять способов избавиться от ненужного астероида Автор: Андрей ПисьменныйСкрытая угроза: почему мы игнорируем метеориты, падение которых может привести к катастрофе Автор: Олег ПарамоновКто ограбил Volksbank и почему взломщики в кино так жутко не похожи на настоящих? Автор: Евгений ЗолотовКогда сотрутся границы между игровыми движками и «серьёзной» анимацией Автор: Юрий ИльинНа пороге пятого поколения вычислительной техники: какие изменения ждут завтрашние ПК Автор: Олег ПарамоновДвигатели для покорения космоса: краткая история смелых проектов и перспективные разработки Автор: Андрей ВасильковВ Южной Корее городской электротранспорт получит бесконтактную зарядку Автор: Андрей ВасильковТише едешь — дальше будешь, или Почему не спешат 3D-принтеры? Автор: Евгений ЗолотовПроект Human Brain: попытка смоделировать работу мозга на суперкомпьютере стоимостью в миллиард евро Автор: Андрей ВасильковБатарейка тяжёлая! Как и можно ли вообще отключить главный тормоз высоких технологий? Автор: Евгений ЗолотовАнатолий Левенчук о конференции по робототехнике в Сколково Автор: Анатолий Левенчук, президент TechInvestLab.ruИнновацииО новом московском интеракториуме и о том, как «примирить» технарей с лириками Автор: Дмитрий Климов, основатель проекта «Флуоресцентный Наноскоп»Как будет «khren'» по-английски, или Простые проекты Ильи Биллига Автор: Денис ВикторовПровал как топливо успеха: почему китайцы поступают правильно, финансируя лженаучный двигатель? Автор: Евгений ЗолотовСистема образования США отстала от потребностей новой экономики. Обама объявил «редизайн» Автор: Денис ВикторовBloomberg присудило России 14-е место среди инновационных стран – справедливо! Автор: Константин Синюшин, директор и со-основатель the Untitled venture companyСтуденческие стартапы: а может быть, деньги — не главное? Автор: Денис ВикторовКак стартапу выбрать акселератор? Автор: Артур Баганов, генеральный директор GTI Labs, сооснователь Alliance of Angels«Дай миллион, дай миллион!» Автор: Дмитрий Калаев, управляющий партнер RedButton Capital

Журнал «Компьютерра»

Зарубежная компьютерная, околокомпьютерная литература