Изменить процесс
Большинство разработчиков программного обеспечения и технических руководителей делают то, что делают, потому что верят в процесс, однако при этом не считают процесс догмой. В них достаточно прагматизма, чтобы принять изменения, когда они увидят, насколько эффективно проектирование взаимодействия. По моим наблюдениям, наглядная демонстрация выгод проектирования вызывает у этих людей желание интегрировать проектирование в процесс разработки.
Разработчики программного обеспечения известны способностью менять свои убеждения. Конечно, они инженеры, их мышление навсегда останется инженерным, однако они воспринимают новые (и даже контрастирующие) подходы, если доказана эффективность этих подходов.
Двадцать лет назад в бизнесе программирования считалось нормальным, что разработчики самостоятельно тестировали свой код. Более того, программист мог естественным образом предполагать, что только он сам способен достаточно надежно протестировать собственный код, только он сам может знать обо всех слабых местах и пыльных углах, куда следует заглянуть.
Удивительно, но факт: в те времена все знали, что программисты, хотя им и приходилось заниматься тестированием, как один ненавидели это занятие и сожалели о потраченном на него времени и силах. Однако программисты выполняли работу по тестированию, поскольку честно верили в свою роль в процессе, как и в необходимость агрессивного тестирования.
В последние два десятилетия все в этой индустрии постепенно осознали, что эту часть работы могут выполнять подразделения профессиональных тестеров, освобождая от нее программистов. Поначалу программисты отнеслись к идее скептически, но затем оценили ее. Тестерам же, к нескончаемому удивлению большинства программистов, действительно нравилось тестирование. Они получали удовольствие, создавая новые и еще более изощренные инструменты для испытания продуктов, находя слабые места и пробелы, тестируя специальные и вероятные случаи. Конечно же, скрупулезное изучение продукта профессиональными тестерами намного лучше. Программисты обнаружили, что не просто избавились от большой и неприятной составляющей своей работы; теперь эта работа выполнялась более надежно, своевременно, более продуманно и организованно. Современная доктрина разработки программного обеспечения гласит, что правильное отношение числа тестировщиков к числу программистов – один к одному. Сегодня уже не найти программиста, который настаивал бы, что является лучшим тестером своего кода.
Мы увидим подобный постепенный переход, когда проектирование взаимодействия станет частью процесса разработки. Наибольшие дивиденды получат те последователи проектирования, которые раньше других начнут применять этот подход.
Цели у разработчиков программного обеспечения и проектировщиков взаимодействия общие: и те и другие хотят, чтобы продукт стал успешным. Просто их инструменты и термины для измерения успеха коренным образом различаются.
Если у программиста нет убедительных доказательств, он всегда отступает под защиту своей подготовки, опыта, интуиции. Интуиция подсказывает, что функций должно быть как можно больше. Опыт подсказывает, что нельзя позволять дилетантам вмешиваться в чувствительный, сложный, тонкий процесс разработки со всякими причудами и догадками. Подготовка подсказывает, что интерфейсы следует конструировать, основываясь на своих представлениях.
Проектировщик взаимодействия не может прямо критиковать эти мотивы. Разработчики мыслят слишком рационально, чтобы променять свой опыт на чужое мнение. Проектировщик должен показать им новый взгляд на проблему, должен показать им, что этот взгляд эффективен и совместим с уже существующими идеями.
Независимо от твердости позиции проектировщика взаимодействий, весьма маловероятно, что он обладает лучшим пониманием внутреннего устройства программы, чем программист. Иными словами, он не может смотреть на проблему глазами программиста. Чтобы добиться успеха, он должен иметь другую точку зрения.
Точность и полнота проектировочной спецификации – вот точка соприкосновения проектировщиков и программистов. Когда проектировщики дают абсолютно верные решения, программисты начинают доверять и полагаться на них.
* * *
В одном из номеров еженедельника «Business Week»[43] за 1998 год ведущий колонки Стивен Уайлдстром поднял тему раздраженных пользователей компьютеров. Ответы читателей поразили его полярностью мнений, их количеством, накалом страстей. Он сделал вывод:
У компьютерной индустрии множество озадаченных, раздраженных, несчастных клиентов. Это гораздо более серьезная угроза благосостоянию сектора высоких технологий, чем азиатский кризис, ошибка двухтысячного года и большинство других угроз.
Он процитировал весьма знакомые нам болезненные жалобы уцелевших: «Моя машина заставляет меня думать, что я идиот!» и такие же знакомые вопли апологетов: «Пользователи не знают, чего хотят, а когда знают, то каждый хочет своего. Пусть лучше читают руководства и изучают программы». Стивен завершил колонку так:
В этих излияниях чувств кое-кого не хватает. Мне написали инженеры, программисты, гуру юзабилити. Однако проектировщики продуктов и маркетологи, принимающие ключевые решения по аппаратной и программной части, подозрительно промолчали. Да у вас тут полно злых клиентов. Как вы собираетесь отвечать?
И действительно, как вы собираетесь отвечать?
[1] Компания Cooper Interaction Design.
[2] Aegis (англ. эгида) интегрирует системы обнаружения и боевые системы корабля с целью противостояния ракетным атакам. — Прим. перев.
[3] Честер Нимиц, командующий Тихоокеанским флотом США во время Второй мировой войны. — Прим. перев.
[4] В компьютерной индустрии термин «разработчик программного обеспечения» употребляется в качестве синонима термина «программист»; то же самое делаю и я в этой книге.
[5] «About Face: The Essentials of User Interface Design» (О лице: основы проектирования пользовательского интерфейса), IDG Books, Foster City CA, 1995, http:/www.cooper.com/about/face/about_about_face.html.
[6] В оригинале употребляется слово design, обозначающее, в том числе, процесс проектирования программных продуктов. — Примеч. науч. ред.
[7] Мне много раз говорили, что среди женщин эта функция пользуется спросом — как сдерживающее средство, помогающее противостоять преступникам на темных парковках, однако всякий раз это говорил технически подготовленный мужчина, который сам никогда не воспользовался бы этой кнопкой. К своему большому удивлению, недавно я прочел в Wall Street Journal о настоящем применении кнопки паники. В Йосемитском национальном парке дикий медведь пристал к одной семье на кемпинге. Он принялся тормошить автомобиль, пытаясь добраться до запертой внутри еды. Мать семейства нажала на кнопку паники, и сирена в конечном итоге отпугнула медведя. Возможно, имеет смысл назвать эту маленькую кнопку «Репеллент от медведей».
[8] Специалист по юзабилити (usability professional), или эргономист, и проектировщик взаимодействия (interaction designer) — разные люди. Подробно о различиях рассказано в главе 12 «В отчаянных поисках эргономики».
[9] Мы говорили, что хотим сделать «объединение в сети компьютеров Intel/Windows столь же простым, как объединение в сети компьютеров Macintosh». В то время Mac’и до смешного просто объединялись в сети посредством протокола AppleTalk. Тогда, как и сегодня, объединять ПК Wintel в сети было трудно.
[10] Некоторые программы дают пользователю возможность вручную создавать нити и управлять ими, однако лекарство оказывается хуже болезни. Этой возможностью непросто управлять, и нити общения по-прежнему считаются чем-то исключительным.
[11] В этом смысле я не лучше остальных программистов. В 1984 году я написал SuperProjects для Computer Associates, одну из первых программ управления проектами. Как и практически все другие программы, появившиеся позже, она полностью игнорировала вопросы взаимодействия нескольких проектов.
[12] Впрочем, в индустрии высоких технологий положение дел может измениться очень быстро. Я пишу эти строки весной 1998 года, в то время как Эрик Шмидт, новый президент Novell, начинает реанимировать компанию.
[13] В старой шутке говорится, что исследовательское подразделение Microsoft находится в Купертино. Это город в Кремниевой Долине, где расположен центр передовых технологий компании Apple.
[14] Несмотря на свою приверженность проектированию, я поддерживаю такую тактику. Обнаружив совершенно пустую рыночную нишу, я бы безжалостно и с максимальной скоростью старался ввести свой продукт в игру. Однако сразу же после выпуска первой версии я бы сосредоточил все усилия на создании очень хорошо спроектированной второй версии. Если этого не сделаю я, могу поспорить, что это сделают конкуренты.
[15] Как указывает Джеффри Мур в своей великолепной книге «Crossing the Chasm» (Пересекая бездну), дополнительные возможности привлекательны лишь для первых пользователей, но не для рынка в целом.
[16] Мишель Куин (Michelle Quinn) «Vanishing Act» (Волшебство исчезновения), журнал San Jose Mercury West от 15 марта 1998 года.
[17] Gerald Weinberg, «The Secrets of Consulting: A Guide to Giving & Getting Advices Successfully» (Секреты консультирования: Руководство по успешному применению советов), Dorset House, 1985.
[18] Речь идет о пакетиках, носимых в нагрудных карманах и предохраняющих рубашку от порчи в случае, если потечет ручка. Такие предохранители стали одним из символов культуры «ботаников» в начале второй половины XX века. — Прим. перев.
[19] Po Bronson «The First $20 Million Is Always The Hardest», Avon Books, New York, 1997.
[20] Ладно, сознаюсь: я пилот. В 1979 году типичный программист-фанатик Гари Килдалл взял меня на борт своего Piper Archer. Этот короткий полет посадил меня на иглу авиаполетов. Компьютерный программист во мне любит всю эту бессмысленную сложность.
[21] Другие названия — «крайние случаи», «специальные случаи», «граничные условия».
[22] Fred Moody «I Sing the Body Electronic», 1995, Viking, New York.
[23] Paul Glen «Leading Geeks: How to Manage and Lead the People Who Deliver Technology», 2003, John Wiley & Sons, New York.
[24] Из двух вариантов перевода «персона» и «персонаж» был выбран второй. Краткая справка: «персонаж» (франц. personnage, от лат. persona — личность, лицо) — действующее лицо пьесы (спектакля), сценария (кинофильма), романа и других художественных произведений. Второй термин ближе к функциональной смысловой нагрузке понятия и легче понимается неподготовленными лицами (программистами и руководителями). — Примеч. науч. ред.
[25] Конестога (Conestoga) — местность в Пенсильвании, где были созданы фургоны такого типа. — Прим. перев.
[26] Saul W. Gellerman «Motivation and Productivity», Amacom, New York, 1963.
[27] Byron Reevs, Clifford Nass «The Media Equation; How People Treat Computers, Television, and New Media Like Real and Places», Cambrige University Press, 1996.
[28] Steven Pinker «How the Mind Works», W.W. Norton & Company, 1997. Мне очень нравится эта великолепная, грамотная, увлекательная книга. Интересное чтение, открывающее глаза.
[29] Примечательным исключением из этого правила являются игры. Во многие игры стало бы скучно играть, если бы не скрытые факты, непонятные процессы и нечеткие цели.
[30] Robert X. Cringely «Accidental Empires, How the Boys of Silicon Valley Make Their Millions, Battle Foreign Competition, and Still Can’t Get a Date», Addison-Wesley, 1991.
[31] В переводе с английского слово «submit» имеет значения «подчиняться», «покоряться», а также «представлять на рассмотрение». В программах и на веб-сайтах речь идет о последнем, однако это значение не является для слова «submit» основным. — Прим. перев.
[32] Вообще-то, в полном наборе персонажей было больше, но Бетси и Эрни затмили всех.
[33] Создание сайтов — это программирование, и Бетси точно так же не способна сопротивляться очарованию повторного использования кода.
[34] Edward de Bono «Lateral Thinking, Creativity Step by Step» (Нестандартное мышление: Творчество шаг за шагом), 1970, Harper & Row, Publishers, New York.
[35] Как обычно, время и пикирующие цены на продукты из кремния значительно изменили поле битвы сканеров, но в 1997 году ситуация была именно такая.
[36] Частный детектив Магнум. — Примеч. перев.
[37] Как бы мне хотелось перепроектировать взаимодействие в этой мощной сложной программе! Примечание: по меньшей мере шесть человек, читавших рукопись, подчеркнули эту сноску и добавили комментарии вроде: «И мне тоже!» и «Пожалуйста, сделай это!»
[38] Pee Wee Herman — псевдоним американского комика Пола Ройбенса. — Примеч. ред.
[39] В английском варианте GUI (Graphical User Interface). — Примеч. науч. ред.
[40] Конкурс проводится уже семь лет и называется Windows World Open. Спонсируется компаниями Microsoft, Computer World и Ziff-Davis Events.
[41] В нумерации версий продуктов Microsoft совершенно нет логики. Windows 3.0 предшествовали по меньшей мере четыре значительных издания системы. Очевидно, что Windows 3.1 — радикально иной и улучшенной версии, содержащей массу серьезных изменений, следовало дать название Windows 4.0. Уверен, что маркетологи Microsoft дали этой версии номер 3.1 потому, что не хотели терять рыночную нишу, уже завоеванную «третьей версией».
[42] David Maister «Managing the Professional Service Firm», 1997, Free Press, New York.
[43] Stephen H. Wildstrom «They’re Mad as Hell Out There», Business Week, October 19, 1998.
Дата добавления: 2015-02-05 | Просмотры: 754 | Нарушение авторских прав
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 |
|