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

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

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

Жанры: Бизнес литература, Программирование
Серии: -
Всего страниц: 11
ISBN: -
Год издания: 1999
Формат: Полный

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

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

( [email protected] )

Humans and Technology, Октябрь, 1999

Введение

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

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

Наиболее заметными исключениями из этого правила являются Джеральд Вайнберг (Gerald Weinberg [Wei]) и Том Демарко (Tom DeMarco [Dm]), чьи книги публикуются сейчас в юбилейных (!) изданиях. Их работы так популярны в нашей отрасли, что, казалось бы, они должны были только повысить интерес к этому предмету и вызвать активизацию исследований в этой области. Сейчас все большее количество консультантов начинает относиться к людям как к главному фактору в разработке ПО [B99] [Hi], однако, в целом, сообщество разработчиков программного обеспечения продолжает игнорировать тот факт, что именно человек должен быть центральной темой исследований. Это представляется мне серьезным упущением - все равно, что не принимать во внимание металлические перекрытия в стенах и жаловаться на плохую работу радиоприемника.

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

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

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

Чем же это отличается от того, что писали в "Peopleware" Демарко и Листер (Lister)? Они высказали мнение, что люди представляют собой важный фактор, и указали на некоторую специфику вопроса. Меня же интересует то, как групповые и индивидуальные особенности человека влияют на проектирование способов разработки ПО (иными словами, на методологии), в применении к различным группам, работающим над разными видами задач.

Мои идеи весьма сходны с теми, которые излагал Вайнберг в главе "Teaming" ("Работа в команде") своей книги "The Psychology of Computer Programming" ("Психология программирования"). Особенно все то, что касается противопоставления двух стилей руководства - управления задачами (task management) и управления поддержкой (maintenance management). Это весьма близко к тому, что пытаюсь получить я - некие характеристики и рекомендации, которые из них следуют. Вайнберг основывается на тех проектах, которые он исследовал в 60-е годы. Однако его выводы остаются справедливыми и полезными и сейчас, 30 лет спустя, что еще раз подтверждает стабильность и важность человеческого фактора в разработке ПО. Мне кажется, уже наступило время тщательно изучить подобные факторы, и начать относиться к следующим из них рекомендациям как к основам разработки ПО, а не открывать их для себя каждые 30 лет.

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

Путь ошибок трудных

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


Проблема 1. Людям, занятым в проекте, совершенно неинтересно изучать нашу систему.

Проблема 2. Они вполне могут обойтись и без методологов, и при этом успешно создавать программное обеспечение. Я ушел от формальных разработок, в то время как мои коллеги выдвинули новую идею: "Вся проблема - в обучении. Все будет хорошо , если мы дадим разработчикам необходимые математические знания гораздо раньше, еще в средней школе". Однако мое знание людей подсказывало, что такое желание неосуществимо. Не то, чтобы я ставил под сомнения очевидные преимущества формальной разработки ПО, просто я сомневался в нашей способности убедить 10 миллионов человек заняться математикой. Правильно было бы поставить вопрос следующим образом: "При каких обстоятельствах и для чего нужно включать в проект специалиста по формальной разработке?"


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

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


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

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


Рекомендуем почитать
Влюбленный Дед Мороз

Если к вам под Новый год является Дед Мороз, это вовсе не значит, что вы впали в детство. Это значит, что Деды Морозы существуют. И живут они среди нас с вами — только мы об этом не догадываемся. А в новогоднюю ночь они выходят к елке и исполняют желания — все, все, все! Вам, как и нашей героине Лилии, уже прилично за тридцать и вы перестали надеяться на взаимную любовь и семейное счастье? Тогда Дед Мороз идет к вам!


Роксолана. Страсть Сулеймана Великолепного

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


Автоматический тигр

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


Коровы не едят траву

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


Mojo. Как его получить, как его сохранить и как вернуть, если вы его потеряли

Моджо – это энергия созидания, творчества и позитива, которая ведет вас к победе, позволяет получать удовольствие от работы и жизни. Если у вас есть моджо – у вас все получается легко и просто, но стоит его потерять, как все валится из рук.Автор бестселлеров Маршалл Голдсмит предлагает вам простой и четкий план действий по повышению творческого потенциала и эффективности, основанный на четырех компонентах: идентичность, достижение, репутация, приятие.Эту умную, заставляющую размышлять книгу должен прочесть каждый, кто хоть раз почувствовал моджо и не хочет расставаться с этим чувством.


Wiki-правительство: Как технологии могут сделать власть лучше, демократию – сильнее, а граждан – влиятельнее

Появление Интернета и технологий совместной работы с информацией позволяет изменить работу существующих государственных институтов и создать новые механизмы решения задач как на местном, региональном, так и на общегосударственном уровне. Автор выдвигает идею создания wiki-правительства – новой культуры управления государством, заключающейся в привлечении к удаленной работе граждан, владеющих уникальными компетенциями и готовых предложить стране свои опыт и знания. Прообразом такой совместной работы выступает Peer-to-Patent – интерактивный проект, позволивший радикально изменить процесс патентования.


Правила Кавасаки. Жесткое руководство для тех, кто хочет оставить конкурентов позади

Вы придумали совершенно новый продукт и хотите немедленно выйти с ним на рынок? Сначала посмотрите на свой проект глазами первого маркетолога-евангелиста Apple, а ныне известного бизнесмена и венчурного инвестора Гая Кавасаки. Взгляд человека, который мгновенно отличает перспективный проект от неперспективного, позволит найти ошибки в вашем бизнес-плане и его реализации. В этой книге вы найдете советы, как планировать бизнес, кого брать в партнеры, как привлекать внешние инвестиции, каких сотрудников нанимать и как правильно увольнять, как строить маркетинг и многое другое.Это наиболее полная книга Гая Кавасаки на данную тему.


Приводим жизнь в порядок. Экспресс-курс по методике GTD

Эффективное использование времени и сил, пожалуй, главная проблема современного занятого человека. Дэвид Аллен, создатель легендарной системы Getting Things Done и автор бестселлеров «Как привести дела в порядок» и «Как поддерживать дела в порядке», выбрал делом своей жизни разработку методов повышения эффективности без стресса.Эта книга не только отличный старт для тех, кто только-только решил привести дела в порядок и напуган масштабом работ, но и для опытных пользователей GTD, которым нужно быстро проверить состояние дел и вовремя скорректировать курс.


Внутри Apple. Как работает одна из самых успешных и закрытых компаний мира

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


Игра на победу. Как стратегия работает на самом деле

Эта книга о бизнес-стратегии глазами человека, который кардинально изменил ситуацию в Procter& Gamble, вел компанию к успеху в течение первого десятилетия XXI века и готов повторить этот триумф сегодня, после возвращения на пост СЕО в 2013 году, а также глазами специалиста по вопросам стратегии, консультанта и коллеги известного руководителя. В книге содержится много ценной информации, раскрывающей все секреты двух выдающихся стратегов.