- •Алан Купер Психбольница в руках пациентов
- •Содержание
- •Часть I. Компьютерная безграмотность 27
- •Глава 1. Загадки века информации 27
- •Глава 2. Когнитивное сопротивление 44
- •Часть II. Масштабные издержки 68
- •Глава 3. Пустая трата денег 68
- •Глава 4. Танцующий медведь 89
- •Об авторе
- •Благодарности
- •Предисловие научного редактора
- •Предисловие
- •Введение Книга-обоснование
- •Инженер, сведущий в бизнесе, либо бизнесмен, сведущий в технологии
- •ЧастьI. Компьютерная безграмотность Глава 1. Загадки века информации Что получится, если скрестить компьютер с самолетом?
- •Что получится, если скрестить компьютер с фотокамерой?
- •Что получится, если скрестить компьютер с будильником?
- •Что получится, если скрестить компьютер с автомобилем?
- •Что получится, если скрестить компьютер с банком?
- •Компьютер позволяет легко попасть в беду
- •Коммерческое программное обеспечение тоже страдает
- •Что получится, если скрестить компьютер с военным кораблем?
- •Техноярость
- •Индустрия в «несознанке»
- •Мотивы создания этой книги
- •Глава 2. Когнитивное сопротивление
- •Поведение, не связанное с физическими силами
- •Проектирование1- слово емкое
- •Отношения между программистами и проектировщиками
- •Большинство программ проектируются случайным образом
- •Проектирование «взаимодействия» против проектирования «интерфейса»
- •Отличительные черты продуктов, основанных на программном обеспечении
- •Танцующий медведь
- •Стоимость дополнительных возможностей программного обеспечения
- •Апологеты и уцелевшие
- •Наша реакция на когнитивное сопротивление
- •Демократизация власти потребителя
- •Виноват пользователь
- •Программный апартеид
- •ЧастьIi. Масштабные издержки Глава 3. Пустая трата денег
- •Управление, ориентированное на крайние сроки сдачи
- •Что такое «готово»?
- •Закон Паркинсона
- •Продукт, вечно не готовый к выпуску
- •Поздний выпуск - не беда
- •Торг за набор функций
- •Кто главный? Программисты
- •Возможности не всегда нужны
- •Итерации и миф о непредсказуемости рынка
- •Скрытые издержки некачественного программного обеспечения
- •Дороже разработки по обходится только разработка плохого по
- •Стоимость возможностей
- •Издержки прототипирования
- •Глава 4. Танцующий медведь
- •Если это проблема, то почему ее до сих пор не решили?
- •Жертва бытовой электроники
- •Чем плохи почтовые клиенты
- •Чем плохи программы для планирования
- •Чем плохи календари
- •Массовая веб-истерия
- •Что не так с программным обеспечением?
- •Программы забывают
- •Программы ленивы
- •Программы скупы на информацию
- •Программы не гибки
- •Программы возлагают вину на пользователей
- •Программы не несут ответственности
- •Глава 5. Нелояльность клиентов
- •Привлекательность
- •Одно сравнение
- •Время выхода на рынок
- •ЧастьIii. Как есть суп вилкой Глава 6. Психбольница в руках пациентов
- •Вождение на заднем сиденье
- •Подготовка катастрофы
- •Компьютеры против людей
- •Учим собак быть кошками
- •Глава 7. НоmoLogicus
- •Авиационный тест
- •Психология программистов
- •Программисты пожертвуют простотой ради контроля
- •Программисты обменяют успех на понимание
- •Программисты сосредотачиваются на исключительных ситуациях
- •Программисты ведут себя грубо и прямолинейно
- •Глава 8. Отмирающая культура
- •Культура программирования
- •Повторное использование кода
- •Общепринятая культура
- •Культура программирования в Мicrоsоft
- •Культурная изоляция
- •Шкурный интерес
- •Дефицитный образ мыслей
- •Обесчеловечивает процесс, а не технология
Дороже разработки по обходится только разработка плохого по
Программисты стоят дорого, а программисты, сидящие без дела в ожидании завершения проектирования, крайне раздражают руководителей. Глупо же, думает руководитель, что программисты сидят и ждут, хотя могли бы программировать. Заставить программистов работать до завершения этапа проектирования - ложная экономия. Когда появляется программный код, процесс уже не остановить, поэтому проектировщики вынуждены реагировать на потребности программистов, а должно быть наоборот. И вправду, глупо заставлять своих программистов ждать, а ведь очень просто сделать так, чтобы они не сидели без дела - надо, чтобы проектировщики взаимодействия планировали следующий продукт или релиз параллельно с созданием текущего продукта или релиза.
В долгосрочной перспективе беспорядочное программирование обойдется: дороже, чем полное отсутствие программирования. Эта истина настолько противоречит здравому смыслу, что большинство руководителей никак ее не воспринимает. Когда код написан, очень трудно его выбросить. Подобно писателям, влюбленным в свою прозу, программисты привязываются к своим алгоритмам на эмоциональном уровне. Модификация программы на полуслове вносит беспорядочность в процесс разработки и вредит коду. Руководителю еще труднее выбросить код, потому что он дорого заплатил за его создание и хорошо понимает, что замена обойдется еще дороже.
Если проектирование не предшествует программированию, вряд ли оно окажет какое-либо влияние. Один руководитель сказал мне: «Наши люди уже пишут код, и я не собираюсь их останавливать». Эти ковбои думают: «Пока мы будем лететь к земле, я успею сшить парашют». Отважное заявление, однако, мне не довелось видеть ему подтверждения.
Не имея результатов серьезного этапа проектирования, программисты непрерывно экспериментируют со своими программами в поисках лучших решений. Они действуют так же расточительно, как плотник, распиливающий доски «на глаз», пока не зашьет дыру в стене.
Свойства неизмеримости и неосязаемости программного обеспечения препятствуют точной оценке его масштабов и завершенности. Добавьте любовь программиста к своему ремеслу и вы поймете, что проекты неизбежно распухают в объеме и времени. Программируя подобным образом, мы всегда будем получать сюрпризы, пока не начнем правильно устанавливать промежуточные сроки и определять, где мы находимся.
Стоимость возможностей
В эпоху информации дороже всего обходится не создание чего-либо, а потерянная возможность создать это. Создание провального продукта означает, что вы не создали успешный. Если для создания хорошего продукта потребовалось в течение трех лет выпускать по одной его версии, значит, за три года вы не создали три хороших продукта. Основной бизнес компании Novell - сети, но она же пыталась открыто состязаться с Мiсrоsоft в области офисных приложений. Попытки пробиться на этот рынок обошлись Novell очень и очень недешево, однако самой серьезной потерей стала потеря лидерства на сетевом рынке. Деньги - ничто в сравнении с исключительной возможностью момента.
Компания Netscape утратила лидирующие позиции на рынке броузеров точно таким же образом, а именно когда решила состязаться с Мiсrоsоft в сегменте операционных систем.
Каждый разработчик продуктов, основанных на кремнии, должен оценить и изучить самые важные цели своих пользователей и стойко сосредоточиться на достижении этих целей. Слишком уж легко поддаться соблазну многочисленных возможностей в области высоких технологий и упустить главный шанс. Программисты, независимо от их интеллекта, деловой хватки, преданности и добрых намерений, прислушиваются к несколько иным мотивам и способны легко отвлечь предприятие от правильных целей.