воскресенье, 1 июля 2012 г.

Впечатления от "Психбольницы" Алана Купера.


Начало книги, отзывы рецензии и прочее - мотивируют ее не читать :)
Я довольно долго и мучительно пыталась понять, зачем нужна реклама книги когда я ее уже начала читать? Но видимо это выше моего понимания. А начиная с первой главы книга меня покорила. Я читала ее по несколько глав в течении двух месяцев, и хочу перечитать через пол года.
Простые истины плавающие на поверхности книги - они умудрялись все это время быть где то на задворках сознания. Примеров в книге не много, но они точно показывают что лучшее для пользователя это простота взаимодействия, а не много "гиканутая" много-функциональность. А еще лучше - идеальный баланс между этими двумя параметрами.
Многое описано с точки зрения человека который знает что такое процесс разработки, и знает где там подводные камни. Несмотря на то, что я тестировщик, мне многое знакомо и более чем интересно.
По главам:
1.1. "Что получится если скрестить ... с компьютером?". Подставьте что хотите, но получите компьютер. Интересно хорошо это или плохо? С точки зрения автора плохо, слишком много мишуры "зашоривающей" реально необходимый функционал. 
1.2. "Когнитивное сопротивление". Пример швейцарского ножа: когнитивное сопротивление отсутствует, мы видимо и предполагаем как он работает вне зависимости от его внутренней архитектуры. Аппологеты и уцелевшие, те кто мыслит как создатели продукта, и те кто мыслит иначе. Во текущих реалиях внушается, что во всем виноваты сами пользователи.
2.3. "Управление, ориентированное на крайние сроки сдачи". Закон Паркинсона, готовность продукта, торги за функции и многие другие реалии разработки описаны в этой главе. 
2.4. "Танцующие медведи. Чем плохи и в чем виновны программы". Грешки программ: забывчивость, леность, скупость и неинформативность, отсутствие гибкости, не несут ответственности и во всем винят пользователей. 
2.5. "Отсутствие лояльности клиентов и чем это грозит". Примеры компаний Novell, Мiсrоsоft, Apple и Wintel. Фантастические финансовые вложения, отсутствие аналогов и крупных конкурентов на рынке приводит кампанию в ловушку "самолюбия" и не умения критически оценивать свои промахи. 
3.6. "Нечего думать - трясти надо!" В разрез с поговоркой "Что посеешь то и пожнешь". Какова цель продукта, почему планировать нужно заранее.
3.7. "Авиационный тест". На самом деле это просто показательный пример того, как устроено большинство вещей в нашей жизни: либо мы берем на себя роль пилота и сами ведем самолет, управляя этой сложной машиной и неся ответственность за происходящее, либо мы садимся в комфортабельное кресло и ждем когда нас отвезут в нужное место. Здесь важно подчеркнуть, что пилоты в данном случае программисты, а пользователи пассажиры. 
3.8. "Культура программирования". Повторное использование кода, шаблоны, связь программиста и его детища. Индивидуальность кода и сострадание к загруженным процессорам.
3.9. "Персонажи". Одна из самых актуальных глав в моем видении этой книги. Очень советую прочитать хотя бы выборочно. Скорее всего после того, как перечитаю, составлю отдельно конспект этой главы в разрезе применимости моей среды.
3.10. "Результат и достижение цели". Задачи - они не цели, персонаж существует, потому что у него есть цели, а цели существуют, чтобы придавать смысл персонажу. А как все это сделать хорошо и красиво - это задача, часть технологии производства. Личные, практические и ложные цели пользователей. 
Вежливость программного обеспечения складывается из: интереса к пользователю, уважительного отношения, обходительности, разумности, предвидения потребностей пользователя, отзывчивости, отсутствия требований от пользователя решения системных ошибок, нахождения в курсе происходящего, проницательности, уверенности в себе, сосредоточенности, покладистости, удовлетворения от работы с ней, чувства доверия.
3.11. "Сценарии и адаптирующийся интерфейс". О вечных средняках на примере продукта Logitech Scanman (по для работы со сканером).
3.12. "Юзабилити тестирование". Интеграция юзабилити тестирования и отличие его от проектирования взаимодействия. Пример про наждачную бумагу "если вы делаете стул - она поможет сделать его гладким, но она не сделает из него стол". А так же почему красивое оформление (дизайн) сложного продукта не делает его более желанным. Стратегия Мiсrоsоft основанная на изморе, и почему мелким компаниям так лучше не делать. 
3.13. "Кто должен влиять на продукт". Менеджер, маркетолог или сам клиент? Почему губительно влияние клиента на разработку? Потому что ему плевать на интересы компании, и он не представляет что именно он хочет и как это делать.  Где искать ответы для построения идеального продукта: Прогнозирование, Принятие ответственности, Затраты времени, Удержание управления, Поиск основы, Семь раз отмерь и Документирование.
3.14. "Пример из жизни: Sun Healthcare Systems, Inc.". Позитивная и мотивирующая заключительная глава.