Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения - [7]

Шрифт
Интервал

Летом 1996 года небольшую группу программистов ознакомили с методологией PSP. Несмотря на то, что все были настроены относительно обучения весьма положительно, сразу после его окончания новая методология стала использоваться все меньше и меньше. Вскоре никто из тех, кто специально обучился этой методологии, не использовал ее в работе. Когда этих людей спросили, почему они не используют PSP, ответ был практически один и тот же: "PSP - очень строгая методология, поэтому если никто не требует от меня отчета, мне проще работать по-старому".

Чтобы такого не случилось, в методологиях, требующих высокой дисциплины, должны существовать некие регулирующие элементы, которые заставляли бы людей быть более последовательными. В методологии "Cleanroom" есть правило, запрещающее компиляцию, которое подкреплено определенным способом управления. Для Extreme Programming необходим "наставник" ("coach"), который следит за соблюдением всех предписаний этой методологии. В PSP такие функции не были предусмотрены, поэтому неудивительно, что группа разработчиков из нашего примера перестала ей пользоваться - у этой методологии просто не было никакой структуры поддержки. Предполагается, что эти факторы будут предусмотрены в TSP [Web].

Однако, несмотря на все это, существуют люди, которые могут на протяжении длительного времени делать свою работу последовательно и дисциплинированно (это лишний раз показывает, насколько все мы отличаемся друг от друга). Иногда для того, чтобы повлиять на дисциплинированность группы достаточно поменять ее руководителя. Спасибо Трюгве Реенскаугу (Trygve Reenskaug) за историю, которая прекрасно показывает, как стиль управления влияет на личные качества:

Недалеко отсюда был маленький галантерейный магазинчик, жуткое место. Товар в беспорядке, продавщицы полируют ногти или болтают по телефону, на покупателей никто не обращает внимания. Вскоре он закрылся, и на том же месте открылся другой магазин. О, тут дела пошли по-другому! Этот магазин был чистый, аккуратный, продавщицы всегда предупредительны… Только вот странное дело - продавщицы ведь были те же самые!

На самом деле хорошо известно, что личный стиль руководителя имеет огромное значение. Году в 1997 те, кто работал над проектом Chrysler Comprehensive Compensation [C3] узнали это на собственном опыте. Сначала основными принципами разработки были "думать наперед", "нечеткое, но растяжимое планирование" и "программный код - личное дело разработчика". Затем вся команда перестроилась (главной движущей силой этих перемен был Кент Бек (Kent Beck)), и основными принципами стали "делайте все простым и понятным, потом можно внести необходимые дополнения", "весь код должен быть общедоступным, и любая пара программистов может вносить в него любые изменения". Таким образом, одни и те же люди смогли принять совершенно новые для себя принципы работы и пройти путь от полного беспорядка, отсутствия коммуникации и невыполнения обязательств по поставкам к последовательному применению новой высокодисциплинированной методики и регулярному выполнению обязательств в течение трех лет работы.


Чувство гражданского долга и способность ориентироваться в ситуации


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


как правило, человек имеет чувство гражданского долга,

человек предпочитает брать инициативу в свои руки,

человек хорошо ориентируется в окружающей обстановке. Когда я провожу опрос по какому-нибудь проекту, я всегда спрашиваю людей, что, по их мнению, привело к конечному успеху работы. Чаще всего я получаю один и тот же ответ: "В ключевой момент разработки несколько человек взяли на себя инициативу и сделали все от них зависящее, чтобы выполнить проект". Вот один из таких типичных ответов, который опубликован NASA в работе "Deorbit flight software lessons learned" ("Уроки, полученные в результате работ над программным обеспечением для увода космических кораблей с орбиты") [NASA]:

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

Поработав вместе над проектом целый год, вся команда приобрела хорошие знания в предметной области, а также в методах и средствах разработки. Создание атмосферы дружбы и взаимопомощи среди разработчиков способствовало их взаимному обучению и всячески поощряло его. Готовность членов команды заниматься любым и всеми аспектами проекта многократно оказывалась бесценным подспорьем в работе… (курсив мой, А.К.)

…такая команда будет необходима в дальнейшем и данному отделу, и всему агентству".

Что заставило людей вести себя таким образом? Одна из возможных причин - чувство гражданского долга.

Может быть, наши проекты чаще заканчивались бы успехом, если бы мы просто старались усилить "чувства общности интересов и гражданского долга" в команде разработчиков. Впрочем, я не хочу сказать, что это основная моя рекомендация, потому что в среднем эти чувства и так хорошо развиты, и плохие руководители не упускают случая, чтобы этим воспользоваться (см, к примеру, "Death March" [Yo]).


Еще от автора Алистэр Коуберн
Каждому проекту своя методология

Как только мы пытаемся разобраться, "из чего же состоит методология", сразу становится понятно, что методологий должно быть много. При этом для каждого конкретного проекта "оптимальной" будет одна какая-то методология. Более того, все люди обладают разными склонностями, которые обусловлены их жизненным опытом, страхами и принципами. При выборе методологии особое внимание нужно уделять трем основным факторам: размеру команды разработчиков, критичности проекта для компании и его приоритетности. Помимо этого, на результат будут оказывать влияние как культурные ценности команды, так и индивидуальные характеристики ее членов.


Парное программирование: преимущества и недостатки

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


Рекомендуем почитать
Рок-презентация: как придать своему выступлению страсть и экспрессию

Каждому из нас время от времени приходится выходить на публику, чтобы донести до нее свои идеи. Это может быть питч, презентация, рабочее совещание или беседа с боссом. Добавьте рока в свои выступления – сделайте их динамичными и запоминающимися!Найджел Барлоу, ведущий мировой специалист в области инноваций, разработал оригинальную методику привлечения и удержания внимания: несколько выверенных ярких аккордов – и вот уже аудитория настроена на нужную волну и готова ловить каждое ваше слово. А теперь пора «зажигать»!«Книга адресована тем, кто презентует свои идеи и хочет, чтобы слушатели усвоили эти идеи как можно лучше.


Money. Неофициальная биография денег

В этой книге Феликс Мартин спорит с самым распространенным взглядом на происхождение денег – с тем, что они появились как средство обмена одних товаров на другие.Отталкиваясь от максимы «Меньше всего о воде знает рыба», он считает, что «ведущие экономисты мира» страдают непозволительной узостью взгляда и просто «не видят за деревьями леса». Анализируя значительный исторический материал (от Древней Месопотамии до наших дней, включая опыт Афин, Спарты, средневековых Англии и Франции и даже Советского Союза), Мартин приходит к выводу, что деньги – это в первую очередь социальная технология, своего рода регулятор общественных связей, и основное их предназначение – сглаживать и устранять конфликты.


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

Ведущеее международное пособие! Самое актуальное издание классического учебника ‒ Марк Джонстон и Грэг Маршалл продолжают традиции мастерства, заложенные Черчиллем, Фордом и Уокером. Классика, полностью адаптированная к современной практике управления продажами.В новом издании вас ожидают:[ul]актуальный набор практических инструментов по управлению отделом продаж;примеры из современной практики управления продажами;разбор вопросов лидерства, технологий, инноваций, этики и глобального бизнеса;разные подходы к коммуникации в сфере продаж.[/ul].


Одиссея писателя: Как найти вдохновение и соблюсти дедлайн

Когда перед вами стоит задача написать что-то длиннее одного предложения, самое сложное – не вдохновение. Гораздо труднее заставлять себя регулярно садиться и писать, пока желанное произведение не будет готово. Писать, несмотря на лень, сомнения, горе-советчиков, собственный перфекционизм и отговорки.Кендра Левин, лайф-коуч и литературный редактор, в книге «Одиссея писателя» научит вас, как пройти весь непростой путь от идеи до готового текста. Вы получите удовольствие от процесса, не потеряв при этом связь с внешним миром, а заодно откроете новые грани собственного таланта.


Индустрия счастья. Как Big Data и новые технологии помогают добавить эмоцию в товары и услуги

«Индустрия счастья» – блестящий взгляд на реалии современности. Компании, анализирующие подтекст наших твитов, сканирование эмоций с лица в общественных местах. Это всё очень увлекательно и позволяет задуматься: почему наше счастье – такая полезная информация для крупных организаций?


Третья волна интернета. Какими качествами должен обладать предприниматель будущего

Прямо сейчас мы становимся свидетелями эпохи, когда интернет становится неотъемлемой частью продуктов и услуг. В самое ближайшее время фраза «интернет отключен» будет звучать так же нелепо, как «электричество недоступно». А современным предпринимателям придется приспосабливаться к новым реалиям, одновременно адаптируя свои продукты и переосмысливая все сферы деятельности, ведь для достижения успеха привычные сценарии развития, принятые во время так называемой второй волны, окажутся неэффективными. Книга «Третья волна интернета» частично посвящена воспоминаниям о прошлом, частично – планам на будущее, а частично – это манифест о бескорыстном трудолюбии человека.