| Благодарности | 15 |
| Предисловие | 17 |
| |
| РАЗДЕЛ 1. На пути к практичному ПО |
| |
| Глава 1. Практичное программное обеспечение: удобство, |
простота и пользовательские интерфейсы | 22 |
| |
| Повышение практичности | 22 |
Homo Habilis — Человек умелый | 24 |
Качество использования | 25 |
Экономика практичности | 28 |
Сбыт информационных продуктов | 31 |
| Достижение практичности | 32 |
Тестирование, тестирование и ещё раз тестирование | 32 |
Популярный стиль | 35 |
Постройте заново | 35 |
Обратите на это внимание | 37 |
Мнение экспертов | 37 |
| Меняющийся контекст | 38 |
| |
| Глава 2. Встроенная практичность: проектирование, |
ориентированное на практичность | 40 |
| |
| Сопряжение с пользователями | 40 |
| Элементы практичного подхода | 42 |
Основные принципы | 43 |
Модели и моделирование | 43 |
Процессы разработки | 43 |
Итеративное улучшение | 44 |
Оценка качества | 44 |
| Управление моделями | 44 |
Привлекательность абстракций | 45 |
Вернёмся к сущности | 47 |
Архитектура интерфейсов | 48 |
Плюрализм взглядов | 48 |
Обобщение и упрощение | 52 |
| Координируем действия | 53 |
Гибкость процесса | 56 |
Порядок и хаос | 57 |
| |
| Глава 3. О принципах: правила и принципы практичного |
проектирования | 60 |
| |
| Проектирование как диалог | 60 |
| Правила и принципы | 64 |
| Правила практичности | 65 |
Правило первое: доступность | 66 |
Правило второе: эффективность | 68 |
Правило третье: продвижение вперёд | 68 |
Правило четвёртое: поддержка | 69 |
Правило пятое: контекст | 70 |
| Принципы проектирования пользовательского интерфейса | 71 |
Структурный принцип | 71 |
Принцип простоты | 74 |
Принцип видимости | 76 |
Принцип обратной связи | 78 |
Принцип толерантности | 80 |
Принцип повторного использования | 83 |
| Другие правила | 85 |
| Детали, детали и еще раз детали | 86 |
| |
| РАЗДЕЛ 2. Основополагающие модели |
практического проектирования |
| |
| Глава 4. Пользователь и окрестности. Путь к пониманию |
пользователей и их ролей | 90 |
| |
| О пользователях и их деятельности | 90 |
| Настоящие пользователи и другие | 91 |
Эрзац пользователя | 91 |
Заместители пользователя | 93 |
Информанты и истолкователи | 94 |
Косвенные источники | 96 |
| Модели пользовательских ролей | 100 |
Моделирование ролей | 102 |
Центральные роли | 105 |
| Карты пользовательских ролей | 106 |
Сходство | 107 |
Классификация | 108 |
Композиция | 108 |
| Пользовательские роли в действии | 108 |
| Структурированные модели пользовательских ролей | 112 |
Ролевые контексты | 113 |
Создание структуры | 117 |
Продвижение | 118 |
| |
| Глава 5. Работа над структурой: модели задач, представленные |
сущностными моделями use case | 120 |
| |
| Работа, работа и ещё раз работа | 120 |
| Моделирование задач | 122 |
От сценариев к моделям use case | 123 |
Сущностные элементы use case | 125 |
Уровни абстракции и обобщения | 128 |
| Карты элементов use case | 132 |
Специализация | 132 |
Расширение | 134 |
Композиция | 135 |
Сходство | 137 |
Центральные элементы use case | 138 |
| Создание сущностных моделей use case | 139 |
Идентификация элементов use case | 139 |
Пользователи и элементы use case | 140 |
Создание описаний элементов use case | 141 |
| Приложение | 143 |
| |
| Глава 6. Архитектура интерфейса: содержимое и навигация | 147 |
| |
| Рабочее место | 147 |
| Содержимое интерфейса | 149 |
Модели содержимого | 149 |
Списки содержимого | 153 |
Задание контекста | 154 |
Инструменты и материалы | 155 |
Процесс моделирования содержимого | 156 |
| Карты навигации по контекстам | 158 |
Представления: поведенческое, архитектурное и последовательное | 159 |
Применения карт навигации | 160 |
| Применение | 165 |
| |
| РАЗДЕЛ 3. Разработка визуальных компонентов |
| |
| Глава 7. Проектирование диалога: разметка и коммуникативный |
аспект | 170 |
| |
| От абстракции к выражению | 170 |
| Каналы связи | 170 |
Слово | 171 |
Яркие интерфейсы | 174 |
Знаки и символы | 176 |
Озвучим интерфейс | 178 |
| Экранное пространство | 179 |
Технологический процесс работы | 180 |
Распределение информации | 183 |
Визуальная структура | 184 |
| |
| Глава 8. Практическая компонентология: выбор |
и проектирование видимых элементов | 187 |
| |
| Купить или создать самому? | 187 |
| Значки как средство коммуникации | 188 |
Проектирование значков | 188 |
Семиотика | 190 |
Организация панелей инструментов | 191 |
| Меню | 193 |
Организация меню | 194 |
Доступ с помощью клавиатуры | 198 |
Контекстные меню | 201 |
Экспресс-меню | 202 |
| Подбираем элементы выбора | 203 |
Один из нескольких | 204 |
Несколько из нескольких | 206 |
Особые случаи | 207 |
Меню как компоненты выбора | 209 |
| |
| Глава 9. Новаторские интерфейсы: творческий подход |
к разработке интерфейсов и собственные компоненты | 210 |
| |
| Творческая инженерия | 210 |
К чему новаторство? | 211 |
Проявления новаторских идей | 213 |
| Процесс новаторства | 215 |
Итеративное новаторство | 215 |
Проектирование по антидихотомическому принципу | 216 |
Думать! | 217 |
Радикальное развитие | 218 |
| Инструктивные интерфейсы | 220 |
Средства и ограничения | 223 |
Устойчивость визуальных объектов | 226 |
Идиоматические расширения | 229 |
Движущиеся интерфейсы | 230 |
| Прикладное новаторство | 232 |
Работа над скроллингом | 232 |
Перегрузка | 234 |
| |
| РАЗДЕЛ 4. Завершение проектирования |
| |
| Глава 10. Моделирование решений: модели реализации |
и прототипы | 238 |
| |
| Забавы | 238 |
| Прототипы и их создание | 239 |
Архетипы прототипов | 239 |
Пассивные прототипы | 241 |
Активные прототипы | 242 |
Создание прототипов интерфейсов | 244 |
| Отображение моделей | 245 |
Контексты интерфейсов | 246 |
Содержимое интерфейса | 251 |
Композиция интерфейса | 253 |
| Модели реализации в деле | 254 |
Проектирование апплета: первая попытка | 254 |
Проектирование апплета: вторая попытка | 256 |
| |
| Глава 11. Помоги, если можешь: проектирование |
справочных систем и сообщений | 259 |
| |
| Даже экспертам нужна помощь | 259 |
| Элементы use case для справочных систем | 260 |
Элементы help | 261 |
Организация справочных систем в соответствии с элементами use case | 264 |
| Способы представления и методы доступа | 265 |
Вывод справочной информации | 265 |
Доступ к справочным системам | 268 |
| Специальные методы и модальности | 271 |
Звуки и другие развлечения | 271 |
Самоучители | 273 |
Компьютерные волшебники | 274 |
| Помогающий стиль | 277 |
Элементы стиля справочных файлов | 279 |
Сравнение документации и справочных систем | 281 |
Эффективная помощь | 282 |
| Полезные сообщения | 284 |
Сообщения и среда их передачи | 284 |
Модели сообщений | 286 |
Предотвращение ошибок | 290 |
Борьба с навязчивостью | 292 |
Пишем сообщения | 293 |
| |
| Глава 12. Поддержим бывших новичков: развитие паттернов |
применения | 296 |
| |
| Уже не новичок | 296 |
| Лыжный спорт как метод познания интерфейсов | 298 |
| Прогрессивное использование | 299 |
Паттерн «Работа новичка» | 300 |
Паттерн «Работа среднего пользователя» | 300 |
Паттерн «Работа профессионала» | 301 |
Профили применения | 302 |
| Поддерживающие интерфейсы | 303 |
Средства обучения | 304 |
Средства эволюции | 307 |
Средства производства | 310 |
| Проектирование прогрессивного использования | 312 |
Отображение комбинаций быстрого вызова | 313 |
Помощь в эволюционном процессе | 314 |
Адаптируемые и адаптивные интерфейсы | 316 |
Непрерывная настройка | 318 |
Особенности доступа | 324 |
| Прикладное прогрессивное использование | 327 |
| |
| Глава 13. Практика привязывания операционного контекста | 329 |
| |
| Контекст, исключающий звуки | 329 |
| Операционное моделирование | 330 |
| Адаптация к среде | 331 |
| Привязка контекста | 332 |
Профиль обязанностей | 333 |
Профиль взаимодействий | 334 |
Информационный профиль | 337 |
| Профиль окружающей среды | 340 |
Профиль ограничений оборудования | 342 |
Профиль операционного риска | 344 |
| Применяем контекст | 346 |
Система приёма заказов на продукцию DimTel | 347 |
Система анализа портфеля инвестиций Banklnvest | 348 |
| |
| Глава 14. Старые игры на новом поле: специальные приложения, |
специальные решения | 350 |
| |
| Снова тема и вариации | 350 |
| Практичный Web-дизайн | 350 |
Профиль предназначений | 351 |
Популярность | 353 |
Тоже, но другое | 354 |
Всемирная скорбь Всемирной паутины | 358 |
| Прикладные мудрости Web-технологий | 363 |
ЧаВо | 364 |
Как это делается в Qublt | 366 |
Изменённая модель | 372 |
| Приложения для встроенных систем | 373 |
Программное и аппаратное обеспечение | 374 |
Проблемы интерфейсов | 375 |
Создание моделей для встроенных систем | 377 |
Встроенные интерфейсы | 380 |
| Другие специальные интерфейсы | 388 |
Звучащие интерфейсы | 388 |
Звонок в службу техподдержки | 389 |
| |
| Глава 15. Прикладное практичное проектирование: TeleGuida | 391 |
| |
| Растём и расширяемся | 391 |
| Предметная область | 391 |
| Накопление требований | 393 |
Продвигаемся | 396 |
| Пользователи и применения TeleGuida | 399 |
Пользовательские роли для TeleGuida | 399 |
Сущностные элементы use case для TeleGuida | 404 |
Сущностные описания для TeleGuida | 409 |
| К прототипу TeleGuida | 412 |
Контентная модель TeleGuida | 412 |
Карта навигации для TeleGuida | 415 |
Визуальное проектирование для TeleGuida | 416 |
| |
| РАЗДЕЛ 5. Оценка и совершенствование |
| |
| Глава 16. С каждым разом всё лучше: инспектирование |
и рецензирование | 424 |
| |
| Оценка практичности | 424 |
Экспертная оценка | 425 |
Рецензирование партнёром | 427 |
Рецензирование пользователем | 428 |
Тесты и измерения | 430 |
Инспектирование | 430 |
| Методы инспектирования | 432 |
Эвристическая оценка | 432 |
Когнитивный сквозной контроль | 433 |
Плюралистический сквозной контроль практичности | 433 |
| Совместные инспектирования практичности | 434 |
Задачи | 435 |
Дефекты практичности | 436 |
Сосредоточиваемся | 437 |
Роли при инспектировании | 439 |
Процесс инспектирования | 443 |
| Тематическое инспектирование | 447 |
Инспектирование согласованности | 447 |
Инспектирование соответствия | 449 |
| |
| Глава 17. Языком цифр: измерения практичности в действии | 451 |
| |
| Купить, чтобы сравнить | 451 |
| Измерение качества | 452 |
Метрики: употребление и злоупотребление | 452 |
Метрики предпочтений | 454 |
Метрики производительности | 456 |
Предсказывающие метрики | 457 |
| Метрики проектирования пользовательского интерфейса | 457 |
Что измерять? | 457 |
Критерии измерений | 459 |
Набор основных метрик практичности | 461 |
Сущностная эффективность | 462 |
Согласованность задач | 465 |
Наблюдаемость задач | 468 |
Единообразие компоновки | 470 |
Визуальная связность | 473 |
Применение метрик на практике | 477 |
| |
| Глава 18. Оценка тестирования: лабораторное и полевое |
тестирование практичности | 479 |
| |
| Тестирование в зеркале истории | 479 |
| Тестируем, тестируем, тестируем | 481 |
Теория планировки лабораторий | 481 |
В поля! | 484 |
Бета-тестирование | 485 |
| Проведение тестирования | 487 |
Чрезмерное влияние | 488 |
Поговори со мною | 489 |
До и после | 491 |
Измерение производительности | 492 |
| Тактика тестирования | 494 |
Планирование целей | 495 |
Подбор пользователей | 496 |
Тесты | 497 |
| Тестирование: за и против | 498 |
| |
| РАЗДЕЛ 6. Организация и руководство |
| |
| Глава 19. Последний шаг: кодирование, реализация |
интерфейсов | 502 |
| |
| Объекты и интерфейсы | 502 |
Объекты для реализации | 503 |
Объектно-ориентированные пользовательские интерфейсы | 504 |
Внешние объекты | 505 |
Архитектура объектов | 507 |
| Ускоренная разработка | 509 |
Концентрическая разработка | 509 |
Архитектурная итерация | 510 |
| Визуальная разработка визуального дизайна | 512 |
Моделировать или нет | 514 |
| |
| Глава 20. Используем пользователя: роль пользователя |
в процессе разработки | 517 |
| |
| Используем или злоупотребляем? | 517 |
Пользователи в процессе разработки | 518 |
Пользователь и практичное проектирование | 520 |
| Поговорим о требованиях | 521 |
Базовые требования | 523 |
| Обратимся к истокам | 525 |
Лицом к лицу | 525 |
Механика встречи | 526 |
Наблюдаем за работой | 528 |
| Используем пользователя | 529 |
Оправдываем ожидания | 530 |
Наводим порядок | 531 |
Пользователи и прототипы | 533 |
| Совместное сущностное моделирование | 534 |
Объединяем усилия | 535 |
От СПП к ССМ | 536 |
Действующие лица и исполнители | 537 |
Обзор деятельности | 539 |
Сеанс формирования | 539 |
Сеанс моделирования | 541 |
Сеанс рецензирования | 542 |
| |
| Глава 21. Подведём итог: практичность в широком контексте | 545 |
| |
| Организационные элементы | 545 |
| Стандарты и руководства по стилям | 547 |
Меняем стандарты | 547 |
Практичные стандарты практичности | 549 |
Отклонения от стандартов | 550 |
| Конкурирующие заинтересованные лица | 551 |
На рынок! | 551 |
Рыночные исследования | 552 |
Рынки и применение | 553 |
Когда покупатель не прав | 555 |
| Эксперты и экспертиза | 556 |
| Соответствие культур | 558 |
Интегрируем практичность | 562 |
Запоздалые лекарства | 564 |
Некоторые истины | 565 |
| |
| ПРИЛОЖЕНИЯ |
| |
| Приложение А. Рекомендуемая литература | 568 |
| |
| Приложение Б. Одиннадцать способов сделать ПО |
более практичным | 570 |
Общие принципы практичности ПО | 570 |
Пять правил практичности | 570 |
Шесть принципов практичности | 570 |
| |
| Приложение В. Глоссарий | 572 |
| |
| Приложение Г. Бланки для практичного проектирования | 578 |
| |
| Приложение Д. Субъективная оценка практичности ПО (SUSS) | 582 |
| |
| Библиография | 584 |
| |
| Алфавитный указатель | 589 |