И. Соммервилл - Инженерия программного обеспечения (1133538), страница 81
Текст из файла (страница 81)
До некоторой степени разработка такого ПО противоречит объектно.ориентированному цолходу, при котором метолы, аыполнлемыс пал данными, должны быть определены самииш данными. Однако в пашем случае предполагается, что разработчик объелтов всегда знает наилучший способ представления данных; хотя это, конечно, не всегда так. Часто определить наилучший способ представления данных конкретного типа довольно трудно, в такол> случае объектные структуры пс должны быть "жесткими". После того как представление данных в системс отделено от самих данных, изменения а представлении данных иа экране пользователя происхолят без изменения саь>ой систе. <р«. эб.чЭ.
и. '" зф-- Риг. ! Э..Э. П/>г>Эги>иамниг динных 15. Проектирование интерфейса пользователя 311 Подход "модель-представление-контроллер" (МПК), представленный' на рис. 15.4. получил первоначальное применение в языке Вшайгайг как эффективный способ поддержки различных представлений данных [150]. Пользователь может взаимодействовать с каждым типом представления. Отображаемые данные инкапсулироваиы в объекты модели.
Калгдый объект модели может иметь несколько отдельных объектов представлений, где каждое представление — это разные отображения модели. Я уже иллюстрировал этот подход в предыдущей главе, где рассматривалнсь объектно-ориентированные структуры приложений. Ввод данных пользоеатеееы Знп н обнов ваде Рнс. ! 5. 4 Модель МПК взяимодейсн>ния с яаныоннн>слсь> Каждое представление имеет связанный с ним обьект контроллера, который обрабатывает введенные пользователем данные и обеспечивает взаимодействие с устройсгвал>и.
Такая модель может представить числовые данные, например, в виде диаграмм или таблиц. Модель можно редактировать, изменяя значения в таблице или параметры диаграммы. Такой подход рассмотрен в главе 14 при описании паттерпа Обозреватель (раздел 14,3), Чтобы найти наилучшее представление информации, необходимо зпат>ь с какими данн ымн работают пользователи и каким образом онн примец>иотся в системе. Прнниман рея>ение по представлению данных, разработчик должен учитывать ряд факторов. 1. Что нужно пользователю — точныс значения данных или соотношен>ш между зна- ченияии? 2.
Насколько быстро б)оуг происходить изменения значений данных? Нужно ли не- медленно показывать пользователю изменение значений? 5. Должен ли пользователь предпринимать какие-либо действил в ответ на изменение лаппых? 4. 11ужно ли пользователю взаимодействовать с отображаемой информацией посред. ствол> интерфейса с прямым манипулированием? 5. Инх]юрмация должна отображаться в тскстовол> (описательно) или числовом фор- мате> Важны лн относитсльныс значения элементов данных.. Если данные не изменяются в течение сеанса работы с системой, их можно представить либо в графическом, либо в текстовом виде, в зависимости от типа приложении. Текстовое предо>ввлсинс данных занимает на экране мало ьюсга, ио в таком случае данные нельзя охватить одним взглядом.
С помощью разных стилей представлении нсизменлсмыс данные следует оч- 512 тдасть 1П. Проектирование делить ог динамически измснпю>цнхсл данных. Например, статические данные можно выделитьь особым шрифтом. подчеркнуть особым цветом либо обозначить никто>рампами. Если трсбустсл точнав цифровзл информация и данные нзмсплютсл относительно медленно, их можно отображать в текстовом виде. Там, где данные изменяются быстро, обычно используется графическое прсдставлснис. В качестве примера рассмотрим систему, которая помесячно записывает и подбивает итоги по данным продаж пекой компании. На рис, 15.5 видно, что одни н тс жс данные можно представ>ггь в вндс текста и в графическом виде.
0 Япа фаа Март Апр Май Июнь Рис. ! 5.5. Лльпп рпп т или ие лредпппппеи>ш дпп них Менеджерам, изучаюпьпь> данные о продажах, обычно больше нужны тенденции изл>с. пенна нлн аномальныс данные, чем их точныс значения. Графическое представление этой информации в виде гистограммы позволяет выделить аномальные данные за март и май, значительно отличающиеся от остальных данных.
Как видно из рис. 15.5, данные в текстовом представлении занимают мспьшс места, чем в графическом. Динамичсскис пзмспспнл числовых данных лучше отображать графически, используя аналоговые представления. Постоянно пзмснлющпсся цифровые экраны сбивают пользов»- тслсй с толку, ш>скольку точпыс зпачспня данных быстро нс воспринимаются. Графическое ».>п>б>ражснис д.шпых орн псобходнл>ости можн>э дополнить точными значениями.
Различные способы прсдставпснил изменяющихся числовых данных показаны на рис. 15.6. Нспрсрь>впыс аналоговые отображения помогают наблюдателю оценить относитсльныс зпачсппя данных. На рпс. 15>.7 числовые значения тсмпсратуры и давления приблизительно одинаковы. Но прп графическом отображснин видно, что значение температуры близко к максимальному, в то время как значспнс давления нс достигло даже 25% от максимума.
Обычно, кроме текущего значения, наблюдателю требуется знать максимальные (нли мини>>альма>с) возможныс значения. Оп должен в уме вычисллть относительное состояние считываемых даш>ых. Дополнительное время, нсобходил>ос для расчетов, может привести к оп>нбкам оператора в стрссговых ситуациях, когда возникают проблемы и на дисплее отображаются аномальныс данныс.
! б. Проектирование интерфейса пользователи ЗИ 20 0 !0 Цнфербнат со стрелкой Крутееае днатрамма Термометр Гориаонтэньнан линейка Рнс.!5.6. Способы иРвдсвиюввиня динамически нзненяющттхгя числовых дпииых Рнс. 15. 7. РРпфичвсхов ядвдсиювивиив дпииыя иоипзывпюоавв значения ио овтиошви и ю и м тким ильи ым При представлении точных буквеннощифровых данных для выделения особой информации можно использовать графические элементы. Вместо обычной строки двиньте лучше поместить в прямоугольник илн отметить пиктограммой (рнс.
10.8). Прямоугольник с сообщением помещается поверх текущего экрана, тем самым привлекая к нему внимание пользователя. тГ„"="ЪчтЪФГ%6т-. '!б'свч~"ч(1фФвчтй""':амазон', 7""' ' ' """ ' " '"''™ Рис. 15.8 Выдглгттивбуивгииоеифровых данных Выделение информации с помощью графических элементов можно также использовать для привлечения внимания к изменениям, происходлщилт в разных частях экрана. Но, если изменсннл происходят очень быстро, не гледует использовать графические элементы, поскольку быстрые изменения моттг привести к наложению экранов, что сбивает с толку и раздражает пользователей.
При представлении больших объемов данных можно использовать разные приемы визуализации, которые указывают на родственные элементы данных. Разработчики интерфейсов должны помнить о возможностях визуализации, особенно если интерфейс системы должен отобрюкать физические сущности (объекты]. Вот несколько примеров визуализации данных. 814 Расть 1П. Проектирование 1. Отображение метеорологических данных, собранных нз разных источников, в виде мстсорологичсских карт с изобарами, воздушными фронтами и т.п. 2. Графичсскос отоб>ражсиис состояния тслсфонной сети в виде связанного миожс. от на уазов.
3. Визуализация состояния химического процссса с показом давлений и температур в группе связанных мсжд> собой резервуаров и труб. 4. Молсль молекулы и лзаинпулировапнс сю а трехмерном пространство посредством систсл>ы виртуальной реальности. 5. Отображсиис множества >ус>зстраинц в впдс дерева гипертекстовых ссылок ]208]. В книге (81б] содержится хорошее описание различных подхзздов к визуализации. '!'ам жс прслставлсиы разлнчныс классы визуализации, часто использусмыс пз практике. В частности, к цнм относится визуализация данных с использованием двух- и трсхмсрных дсрсвьсв и сотой.
Болынипство пз пнх свнзапы с отображенном болыпих объслюв данных, управляемых компьютером. %ниболее широко визуализашш применяется н интерфейсах для представления некоторых физических структур, например мояскулярной структ>ры лекарства, тслскоммш>нкационных остей и т.п. Трсхмсрныс прсдставлсшзя, для создания которых используется специальное оборудование вирзуалыюй реальности, являются особенно эффективным способом визуализации. 15.3.1. Использование в интерфейсах цвета Во всех интерактивных системах, нсзависпмо от их назначения, поддерживаются цветные экраны, поэтам» в пользовательских интерфейсах часто используютсл различныс цвета.
В некоторых системах цвета применяют в основном для выделения определенных элементов (например, в текстовых редакторах для выдслсния фрагментов текста»: в дру. гих системах (таких, ю>к системы автоматического просктированил» цвстамп обозначают разпыс уровни проектов. Правильное использование цветов делает интерфейс пользователя более >добным для понимания и управления, Вместе с тем использование цветов может быть неправильным, в рсзультатс чего создаются интсрфсйсы, которые визуально неприглядны и даже прово.