Прототипирование пользовательских интерфейсов
Графические интерфейсы пользователя в настоящее время являются стандартом для интерактивных систем. Усилия, вкладываемые в определение, проектирование и реализацию такого интерфейса, составляют значительную часть стоимости разработки приложения. Как отмечается в главе 15, разработчики не должны навязывать пользователям свою точку зрения на проектируемый интерфейс. Пользователи должны принимать активное участие в процессе проектирования интерфейса. Такой взгляд на разработку интерфейса привел к подходу, названному проектированием, ориентированным на пользователя (user-centred design) [258], который основан на прототипировании интерфейса и участии пользователя в процессе его проектирования. В этом аспекте прототипирование – необходимая часть процесса проектирования пользовательского интерфейса. Из-за динамической природы пользовательских интерфейсов текстовых описаний и диаграмм недостаточно для формирования требований к интерфейсу. Поэтому эволюционное прототипирование с участием конечного пользователя – единственный приемлемый способ разработки графического интерфейса для программных систем. Генераторы интерфейсов – это графические системы проектирования экранных форм, где интерфейсы компонуются из элементов типа меню, полей, пиктограмм и кнопок, которые, в свою очередь, можно просто выбрать из меню и поместить в экранную форму. Как уже упоминалось, системы этого типа – необходимая часть систем программирования баз данных. В книге [316] рассмотрен ряд таких систем. Генераторы интерфейсов создают хорошо структурированную программу, сгенерированную по спецификации интерфейса. Миллионы людей сегодня имеют доступ к Web-броузерам. Они поддерживают язык разметки гипертекста HTML, который позволяет создавать пользовательские интерфейсы. Кнопки, поля, формы и таблицы могут быть включены в Web-страницы так же, как и средства мультимедиа. Сценарии обработки событий и данных, связанные с объектами интерфейса, могут выполняться или на машине Web-клиента, или на Web-сервере.
Из-за широких возможностей Web-броузеров и мощности языка HTML в настоящее время все больше пользовательских интерфейсов строятся как Web-ориентированные. Как показано в главе 26, посвященной наследуемым системам, такие интерфейсы – принадлежность не только новых систем; они заменяют интерфейсы, построенные на текстовых формах, в широком круге наследуемых систем. Для Web-ориентированных интерфейсов прототипы можно создавать с помощью стандартных редакторов Web-страниц, которые, по существу, строят пользовательские интерфейсы. Объекты на Web-странице определяются, как и связанные с ними операции, с помощью встроенных средств языка HTML (например, связывание с другой страницей) или с помощью языка Java либо сценариев. КЛЮЧЕВЫЕ ПОНЯТИЯ
• Прототип системы разрабатывается для того, чтобы дать конечным пользователям конкретное представление о возможностях системы. Прототип помогаете разработке системных требований. • Поскольку возрастают требования к скорости разработки программного обеспечения, прототапирование становится все более используемой методикой разработки малых и среднего размера систем, особенно бизнес-системы. • Экспериментальные прототипы используются только для формирования системных требований. В эволюционном прототипировании прототип проходит через несколько версий к окончательному варианту системы. • При экспериментальном прототипировании сначала разрабатываются части системы, которые понятны менее всего; в эволюционном прототипировании сначала части системы, которые понятны лучше всего.
• В прототипировании важна быстрая разработка прототипа системы. Чтобы быстро создать прототип, не учитываются некоторые функциональные возможности системы или ослабляются нефункциональные требования, такие как быстродействие и надежность. • Методы прототипирования включают использование языков очень высокого уровня, языков программирования баз данных и построение прототипа из пригодных для повторного использования компонентов. • Пользовательские интерфейсы должны разрабатываться с использованием прототипов, поскольку их невозможно точно определить только с помощью статической, модели, должны быть включены в процесс оценки и разработки прототипа интерфейса. Упражнения 8.1. Исследуйте возможность прототипирования в процессе разработки программного обеспечения в вашей организации. Напишите отчет для вашего менеджера, показывая классы проектов, где должно использоваться прототипирование, и рассчитайте ожидаемые затраты и выгоды от использования прототипирования. 8.2. Объясните, почему для разработки больших систем рекомендуется экспериментальное прототипирование. 8.3. Какие особенности языков, подобных Smalltalk и Lisp, способствуют поддержке быстрого прототипирования? 8.4. В каких обстоятельствах вы рекомендовали бы прототипирование как средство обоснования системных требований? 8.5. Опишите трудности, которые могут возникнуть при прототипировании встроенных компьютерных систем реального времени. 8.6. Спроектируйте программную систему преобразования требований в формальную спецификацию. Прокомментируйте преимущества и недостатки следующих стратегий разработки такой системы. • Разработайте экспериментальный прототип с помощью языка, подобного Smalltalk. Оцените этот прототип, затем сделайте обзор требований. Разработайте конечную систему, используя язык С. • Разработайте систему согласно существующим требованиям, используя язык Java, и затем модифицируйте ее, чтобы адаптировать к изменениям требований пользователя. • Разработайте систему, используя эволюционное прототипирование, с помощью языка типа Smalltalk. Измените прототип в соответствии с новыми пользовательскими запросами.
8.7. Обсудите прототипирование на основе повторного использования компонентов и опишите проблемы, которые могут при этом возникнуть. Как наиболее эффективно определить пригодные для повторного использования компоненты? 8.8. Каковы преимущества и недостатки использования механизма OLE для быстрой разработки приложений? 8.9. Благотворительная организация попросила вас создать макет системы, которая следила бы за всеми получаемыми ими пожертвованиями. Эта система должна сохранять имена и адреса жертвующих, их интересы, пожертвованную сумму и дату пожертвования. Если пожертвование достигает определенной суммы, жертвующий может добавить условия к пожертвованию (например, пожертвование должно быть израсходовано на определенный проект), система должна следить за такими пожертвованиями и за тем, как они были израсходованы. Обсудите, как использовать прототип системы, имея в виду, что системой будут пользоваться как постоянные работники благотворительной организации, так и добровольцы. Многие из добровольцев – пенсионеры, которые имеют малый опыт работы с компьютером или вовсе не имеют такого опыта. 8.10. Вы разработали экспериментальный прототип системы для заказчика, который его полностью удовлетворил. Заказчик утверждает, что нет необходимости разрабатывать конечную систему, а вы можете поставить прототип, и предлагает за это хорошую цену. Вы знаете, что в будущем могут быть проблемы с сопровождением системы. Обсудите, что вы ответите этому заказчику.
Читайте также: Принципы проектирования интерфейсов пользователя Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|