1) Как вы думаете, панель поиска должна быть видна поверх моей таблицы результатов?
Простая панель поиска, такая как основной поиск Google, может находиться на странице результатов, поскольку она компактна. Это позволяет пользователю повторить поиск по другим критериям, не тратя время на переход к новой странице или окну. Расширенный поиск намного более громоздкий, поэтому существует более важный компромисс между легким доступом к результатам (на меньшей панели) и легким доступом к повторному поиску, поэтому вам необходимо оценить частоту повторного поиска пользователей по сравнению с работой, которую они выполняют с Результаты. Например, если повторный поиск происходит в 50% случаев, но включение панели расширенного поиска на странице результатов требует дополнительной прокрутки в 75% случаев, вашим пользователям будет лучше без панели расширенного поиска в результатах. Как правило, расширенный поиск не должен отображаться на странице «Результаты», если задача не состоит в том, чтобы по-настоящему исследовать данные.
Другая проблема с панелью поиска в верхней части результатов заключается в том, что делать, если результаты не соответствуют критериям (например, если пользователь изменяет критерий после отображения результатов, но перед повторным нажатием кнопки «Поиск»). С помощью расширенного поиска пользователям гораздо проще забыть или не заметить, изменили ли они критерий или нет, а затем запутаться в том, какие критерии действуют для результатов. Помещение расширенного поиска на отдельной странице предотвращает это, хотя существуют и другие способы избежать этой проблемы, если расширенный поиск находится на странице результатов (например, с помощью мгновенного применения «граненого» поиска).
В любом случае на странице результатов должны отображаться критерии, используемые при поиске.
2) Как вы думаете, лучше ли позволить пользователю нажимать «расширенный» для получения дополнительных критериев?
Для большинства приложений баз данных пользователи определенной группы (например, должности) имеют от 2 до 5 определенных наборов критериев поиска, которые позволяют им выполнять большую часть своей работы (например, поиск заказов, сделанных между двумя пользователями). предоставленные даты), иногда включая критерии, которые даже имеют определенные значения критериев (например, поиск всех заказов с ожидающим статусом). В этой ситуации пользователи будут быстрее и меньше всего будут запутаться, если у вас есть кнопка «Дополнительно» для специального поиска, в то время как поиск по умолчанию имеет элементы управления, адаптированные для этих конкретных поисков. По умолчанию используется расширенный поиск, только если ваши пользователи будут в основном проводить поисковые поиски ad hoc.
3) Как бы вы организовали критерии?
Если есть определенные критерии, которые используются особенно часто, то они обрабатываются с помощью Базового поиска, как описано для 2, поэтому преимущество сортировки критериев в расширенном поиске по частоте незначительно. Пользователям просто трудно найти критерий, который они ищут. Как правило, вы можете полагаться на пользователей, имеющих в виду определенное именованное поле, поэтому сортируйте критерий по алфавиту или, если пользователи знакомы со страницей результатов и ее поля расположены в соответствии с тем, как думают пользователи, используйте тот же порядок. как используется для столбцов результатов.
4) Где мне поставить кнопку «Поиск»?
Кнопка поиска в идеале всегда должна быть видна. Лучшее решение состоит в том, чтобы иметь все критерии на прокручиваемой панели с кнопкой вне панели. Помещение кнопки сверху и снизу - обычная, но хитрая альтернатива. Я бы не назвал это общими критериями, потому что если ваши пользователи перешли с базового на расширенный поиск, они, вероятно, не используют общие критерии. Подумайте no Кнопка поиска, если вы можете сохранить время отклика менее 500 мс, вместо этого предоставляя мгновенное применение, как в Vista.
5) Как создать приятный поисковый интерфейс?
Для поиска по нескольким критериям на основе поля существует два основных варианта:
а. ФормаВсе поля с местом для ввода значений критериев для каждого поля. Проблема в том, что поля с установленными значениями могут прокручиваться вне поля зрения, и пользователи, возможно, забыли, что они установили значение. Таким образом, вы хотите сохранить это как можно более компактным. См. Главу «Улучшение извлечения данных» в «О лице 2.0» Алана Купера для одного подхода. Рядом с кнопками поиска вы можете также предоставить сводную строку выбранных критериев, которую пользователь может проверить. Щелкнув по каждому критерию в строке, пользователь может перейти к критериям его изменения.
б. Пользователь выбирает из списка полей, которые будут использоваться в критериях, а затем устанавливает значения для критериев в консолидированном расположении. Основная задача здесь - минимизировать количество «накладных» кликов для выбора поля. В идеале список полей всегда доступен, и одним щелчком мыши выбирается поле, помещается его в консолидированное местоположение и помещается курсор в элемент управления значениями, что-то вроде, показанное в http://www.zuschlogin.com/content/blogimages/37/FindAdvanced.gif, только для поиска, а не поиска. (По произвольному соглашению «Поиск» очень отличается от «Поиск» для пользователей; «Поиск» выделяет вещи на текущей странице, соответствующие заданным критериям, в то время как Поиск извлекает вещи, соответствующие заданным критериям)
Обе эти схемы связывают критерий для каждого поля с помощью логических AND и ограничены в соединениях между базовыми таблицами базы данных, но это, вероятно, удовлетворит практически всех ваших пользователей. Если задачи требуют более сложных объединений и логических комбинаций, изучите графические схемы запросов (например, Badre AN, Catarci T, Massari A и Santucci G 1996. Сравнительная простота использования диаграмм и пиктограмм языка запросов. В J. Kennedy & P Barclay (Eds) Интерфейсы к базам данных (IDS-3): Материалы 3-го Международного семинара по интерфейсам к базам данных, Университет Нейпир, Эдинбург, 8-10 июля) и Проект запроса на примере.