Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения - [10]
Изменение привычек . Самая трудная вещь на свете из всего, что я знаю - это заставить человека изменить свои привычки. При этом люди меняют привычки почти спонтанно, если изменить их систему ценностей. За 20 лет работы я видел, как это делали (преднамеренно и сознательно) раза два, и скажу, что это впечатляет.
"Маленькие головы" . Даже от опытных проектировщиков постоянно слышишь: "Я могу удерживать в голове только небольшую долю всей информации". Существует несколько способов ведения документации, которые призваны облегчить подобные задачи, однако ни один из них пока не объединяет в себе использование рабочих артефактов, созданных с "невысокой степенью точности", и активную межличностную коммуникацию.
Я уверен, что существуют и другие свойства человеческой натуры, которые оказывают сильное влияние на процесс разработки ПО, а также на те рекомендации, которые должны давать мы, методологи. Я описал здесь только те, которые в настоящее время сам использую в работе.
Заключение
Основные свойства человеческой натуры имеют первостепенное значение для разработки ПО, а не второстепенное, как принято считать. Следовательно, главной задачей наших исследований должно быть изучение влияния человеческого фактора на процесс разработки. Я предлагаю сделать эту тему основной в области программных разработок на ближайшие 20-50 лет.
В этой статье я привел несколько характерных особенностей человеческой натуры, которые играют существенную роль при разработке методологии.
Во-первых, мы, люди, весьма сильно реагируем на временную синхронизацию и модальности коммуникации. Я считаю, что физическая досягаемость собеседнику и удобство общения имеют здесь решающее значение.
Во-вторых, люди непостоянны. Я считаю, что все методологии, требующие от своих последователей строгой дисциплины, будет сложно осуществлять на практике.
В-третьих, все люди разные, причем не только в зависимости от времени, но и в зависимости от группы, в которой находятся. Сейчас при разработке методологий культурные различия не учитываются, однако это необходимо исправить в ближайшее время.
В-четвертых, люди имеют чувство гражданского долга, хорошо ориентируются в ситуации и берут инициативу в свои руки. Именно из этих качеств и складывается наиболее частая причина успешного завершения работы над проектом: "В ключевой момент разработки несколько человек..".
Человеческой непоследовательности противостоят такие положительные качества, как способность к общению и ориентации в текущей ситуации. Я склонен полагать, что в методологии можно с успехом использовать различные артефакты, выполненные с невысокой степенью точности (разработчики будут восполнять пробелы в процессе коммуникации). Это предположение подтверждается архивами уже завершенных проектов (его можно считать верным при условии наличия необходимой квалификации, как у разработчиков, так и у руководителей).
В названии статьи я называю людей "компонентами". Именно это принято делать в работах, посвященных проектированию процессов и методологий. Ошибкой в таком подходе является то, что "люди", в отличие от "компонентов" весьма изменчивые и нелинейные, причем каждый человек в случае успеха или неудачи ведет себя уникальным образом. Эти факторы имеют первоочередное значение, ими нельзя пренебрегать. Неспособность создателей процессов и методологий принимать их во внимание приводит, как мы это нередко видим, к разнообразным неожиданностям в реализации проекта.
И последнее. Я надеюсь, мне удалось показать, что нам категорически не хватает исследований на эту тему. Может быть теперь, читая статью, которую я написал 30 лет спустя вслед за Вайнбергом, исследователи примут мой вызов. С моей точки зрения, особенно нужны психологические и этнографические исследования, в процессе которых можно будет выявить другие важнейшие факторы, о которых я здесь не упоминаю.
Библиография
[B87] Beck, K. and Cunningham, W., "A laboratory for teaching object-oriented thinking", Proceedings of the OOPSLA Conference, 1987, ACM Sigplan Oct., 1987, pp.1-7.
[B99] Beck, K., Extreme Programming Explained: Embrace Change, Addison Wesley Longman, 1999.
[Br] Britcher, R., The Limits of Software, Addison Wesley, 1999.
[Ch] Christensen, M., et al. , "The M.A.D. experience: multiperspective application development in evolutionary prototyping", in the ECOOP'98 proceedings, Lecture Notes in Computer Science, Vol. 1445, Goos, G., Hartmanis, J, van Leeuwen, J., eds., 1998, pp. 13-41.
[Ci] Citrin, W., Cockburn A., von Kaenel, J., Hauser, R., "Using formalized temporal message-flow diagrams," Software Practice and Experience, 1995.
[Co94] Cockburn A., "In search of methodology," Object Magazine, July 1994.
[Co95] Cockburn A., "Unraveling incremental development," Object Magazine, Jan. 1995.
[Co98] Cockburn A., Surviving Object-Oriented Projects, Addison Wesley, 1998.
[Co98p] Cockburn A., Position statement for "Software development and process" panel, ECOOP '98, online at http://members.aol.com/acockburn/papers/Ecoop98panel.htm
[Co00]Cockburn A., Crystal(Clear): A human-powered software development methodology for small teams, Addison Wesley, in prep. Online at http://members.aol.com/humansandt/crystal/ clear.
![Каждому проекту своя методология](/build/oblozhka.dc6e36b8.jpg)
Как только мы пытаемся разобраться, "из чего же состоит методология", сразу становится понятно, что методологий должно быть много. При этом для каждого конкретного проекта "оптимальной" будет одна какая-то методология. Более того, все люди обладают разными склонностями, которые обусловлены их жизненным опытом, страхами и принципами. При выборе методологии особое внимание нужно уделять трем основным факторам: размеру команды разработчиков, критичности проекта для компании и его приоритетности. Помимо этого, на результат будут оказывать влияние как культурные ценности команды, так и индивидуальные характеристики ее членов.
![Парное программирование: преимущества и недостатки](/build/oblozhka.dc6e36b8.jpg)
Парное, или совместное, программирование является процессом создания программного обеспечения двумя программистами, работающими бок о бок за одним компьютером. С помощью опросов и специальных экспериментов авторы этой статьи исследовали положительные и отрицательные стороны такого стиля работы. Они обнаружили, что при парном программировании время разработки увеличивается на 15%, но при этом улучшается дизайн системы, уменьшается количество дефектов, снижается риск, связанный с занятостью в проекте определенных сотрудников, растет технический уровень команды, улучшается взаимодействие и коммуникация, а кроме того, сам процесс работы в целом доставляет гораздо больше удовольствия.
![Mind hacking. Как перенастроить мозг за 21 день](/storage/book-covers/1e/1eb3cfe67d0bfc05367d1b2c6d2bf0baa6cb376d.jpg)
Можно ли подчинить себе разум и управлять им, словно компьютером? Известный писатель и предприниматель Джон Харгрейв уверен, что да! Он разработал трехнедельную программу, которая позволит стать настоящим хакером своего собственного мозга. Как и программное обеспечение, разум можно взломать – и перенастроить его на нужный лад, чтобы стать успешнее, здоровее, спокойнее и счастливее. А оригинальные рекомендации автора и его неподражаемый юмор сделают процесс «взлома» невероятно увлекательным!
![Как управлять интеллектуалами. Я, нерды и гики](/storage/book-covers/de/de783551c45e4f0f5440746fd207a2877edfdabd.jpg)
Проект-менеджерам (и тем, кто мечтает стать начальником) посвящается.Писать тонны кода сложно, а управлять людьми еще сложнее! Так что вам просто необходима эта книга, чтобы научиться делать и то, и другое. Можно ли объединить прикольные истории и серьезные уроки? Майклу Лоппу (также известному в узких кругах как Рэндс) это удалось. Вас ждут выдуманные истории о выдуманных людях, обладающих невероятно полезным (хотя и выдуманным) опытом. Именно так Рэндс делится своим разнообразным, порой странным опытом, полученным за годы работы в крупных IT-корпорациях: Apple, Pinterest, Palantir, Netscape, Symantec и др.
![Обновить страницу. О трансформации Microsoft и технологиях будущего от первого лица](/storage/book-covers/9e/9ea89ed266938e8fa46a58b4b82217763d8a4ebb.jpg)
CEO Microsoft Сатья Наделла рассказывает историю компании, личную историю и делится размышлениями о технологиях, которые скоро преобразят мир. Это книга для всех, кого интересует история крупнейшей технологической корпорации XX века и кого волнует будущее цифрового мира. На русском языке публикуется впервые.
![Не бесите меня!](/storage/book-covers/ac/ac7e413bb8a4d38a7909618862837759573c38fe.jpg)
Вы работаете в команде или возглавляете ее? Тогда вы наверняка не раз задавались вопросом, как наладить эффективное общение членов команды, которое повысит ее способность решать рабочие задачи. И правильно делали. Ученые доказали, что квалификация сотрудников — еще не все, решающее значение для успеха коллектива имеют личные отношения внутри него. Эта книга посвящена технике построения этих отношений. Минимум историй, только работающие алгоритмы и технологии, которые гарантированно помогут вам «прокачать» мощный ресурс эффективности ваших коллег — и вашей собственной.
![PIXAR. Перезагрузка. Гениальная книга по антикризисному управлению](/storage/book-covers/dd/dd7226a949fe5ab7026975a5ec7600a6dd0419b3.jpg)
Сложно найти человека, который не смотрел мультики компании Pixar. Но как крошечная рекламная студия превратилась в гиганта киноиндустрии? Это история о сильных людях и волевых решениях, о выборе и об абсурдных спорах, позволивших истории случиться. Она о том, как грамотное управление и контроль над ситуацией могут противостоять любым рискам. Благодаря этой книге вы узнаете, что стало движущей силой Pixar и как ей удалось справиться с многочисленными трудностями.
![Менеджер Мафии. Руководство для корпоративного Макиавелли](/storage/book-covers/36/369e64fdba44b79b53e25b0dd87ef5ee82c8178f.jpg)
Старейший в мире и лучше всего организованный конгломерат раскрывает свои тайны менеджмента перед всеми, кто готов ими воспользоваться. В отличие от других бизнес-пособий, данная книга избавлена от теоретического пустословия и представляет вниманию читателей философию лидерства, на которой основана и в соответствии с которой на протяжении многих веков успешно управляется Империя мафии, неуклонно раздвигающая свои границы. Для широкого круга читателей.