Что такое «готово»?
Имея на руках конкретное описание завершенного программного продукта, мы можем сравнить наше творение с этим описанием и понять, готов ли продукт.
Существует два типа описаний. Мы можем создать подробное и полное вещественное описание продукта либо описать, какой реакции конечного пользователя на наш продукт необходимо добиться. Скажем, в традиционной архитектуре чертежи являются первым типом. Если же планируется создание фильма или нового ресторана, описание сосредотачивается на ощущениях, которые мы хотели бы передать своим клиентам. Для продуктов, основанных на программном обеспечении, обязательно использовать комбинацию обоих типов.
К сожалению, большинство программ не имеет точных описаний. Зато каждая характеризуется длинным перечнем функций, похожим на перечень ингредиентов. Магазинная корзина с мукой, сахаром, молоком и яйцами - совсем не то же самое, что пирог. Пирог получается лишь тогда, когда выполнены все инструкции рецепта, и результат выглядит как знакомый нам пирог, обладает таким же запахом и вкусом.
Обладая нужными ингредиентами, но не знанием о пирогах и выпечке, эрзац-повар будет впустую ковыряться на кухне безо всякой гарантии результата. Если мы потребуем, чтобы пирог был готов к шести часам, добросовестный повар, разумеется, принесет нам блюдо в назначенное время. Но будет ли эта стряпня пирогом? Мы знаем лишь, что продукт появится во время, а вот хорош ли он будет, остается тайной.
На традиционных строительных работах мы понимаем, когда работа завершена, потому что знаем, как выглядит «сделанная» работа. Мы знаем, что здание завершено, потому что выглядит и функционирует точно так, как задано в чертежах. Если срок сдачи объекта - первое июня, то наступление июня не всегда означает, что здание готово. Степень завершенности здания может быть определена лишь его сравнением с планом.
Без чертежей строители программ не могут четко осознавать, что делает продукт «завершенным», поэтому они выбирают возможную дату завершения и, когда она наступает, объявляют, что продукт готов. Уже первое июня, следовательно, продукт готов. «В тираж» - говорят они, и срок сдачи становится единственным признаком завершенности проекта.
Программисты и бизнесмены не дураки и не бестолочи, поэтому продукт не будет идти совершенно вразрез с реальностью. Он будет работать хорошо, без сбоев, и обладать достойным набором возможностей. Продукт будет работать достаточно хорошо в руках людей, глубоко заинтересованных в его хорошей работе. Не исключено даже, что продукт подвергался тестированию на практичность и удобство применения (юзабилити-тестированию). При этом посторонних людей просили поработать с продуктом под внимательным наблюдением специалистов по юзабилити (Usability Professionals)1. Но даже будучи весьма разумными, эти предосторожности не позволяют ответить на фундаментальный вопрос: станет ли продукт успешным?
- Алан Купер Психбольница в руках пациентов
- Содержание
- Часть 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
- Культурная изоляция
- Шкурный интерес
- Дефицитный образ мыслей
- Обесчеловечивает процесс, а не технология