Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Данный класс программных средств, весьма представителен. Приведем характеристику некоторых продуктов, которые предлагает фирма Microsoft.




Макроассемблер MASM, обеспечивающий создание программ, быстро манипулирующих с данными большой размерности, поддерживающих различные форматы объектных файлов. Кроме того, можно создавать динамические библиотеки (DLL, VBX) для Microsoft Visual Basic, генерировать DOS-, Windows-приложения. Средства данного языка наиболее часто используются для разработки драйверов - специальных программ для эмуляции нестандартных устройств, подключаемых к компьютеру, различных преобразований форматов данных, поддержания интерфейсов доступа к данным в разнородных программных системах.

Компилятор Visual C++ for Windows Professional Edition 1.5 является системой программирования объектно-ориентированного типа, обеспечивающей просмотр иерархии классов объектов приложения (Source Browser), работу отладчика (Debugger), компилятора и др. В состав пакета входит библиотека классов MFC (Microsoft Foundation Classes Library), содержащая классы для реализации сложного пользовательского интерфейса, средства изготовления структуры пользовательского интерфейса (AppWizard), создания диалогов, меню, икон, растров, курсоров (Арр Studio), свойств новых интерфейсных классов, наследующих свойства классов MFC (Class Wizard). Компилятор полностью поддерживает стандарт OLE 2.0 системы Windows (см. ниже), ODBC (Open DataBase Connectivity) - для обеспечения доступа к данным в различных форматах, хранимых как в локальной базе данных, так и на сервере баз данных.

Visual Basic for Windows 4.0 -система программирования объектно-ориентированного типа, транслирующая команды по мере их ввода, позволяющая создавать и управлять множеством объектов (кнопками, флажками, комбинированными списками, окнами ввода, переключателями, линейками и т.п.), поддержку объектов OLE 2.0. Данный язык является языковой платформой приложений Microsoft Office (см. гл. 18) и имеет диалект Microsoft Basic for Application.

Microsoft IMSL Mathematical and Statistical Library -математическая и статистическая библиотеки набора функций и примеров их использования (более 1000), которые можно вызвать из программ, написанных на языке C++.

Средства поддержки проектов Microsoft Delta for Windows, используемые для независимой от всего проекта новой версии программного модуля, отслеживания новых версий, автоматической разноски изменений по копиям проекта программной системы.

Настольное приложение (desktop application) работает на пользовательском компьютере, причём такому приложению для работы обычно не нужен доступ в сеть. Примером такого приложения может служить любой текстовый или графический редактор, многие игры.

Для создания настольных приложений можно использовать такие технологии: C/C++, Delphi, C++ Builder, etc, Java, .NET/WPF, Adobe AIR

Существуют также:

Веб-приложение (web application)

Веб приложение состоит как минимум из двух частей: одна часть (серверная) работает на сервере в Сети, а другая (клиентская) - на компьютере пользователя, в браузере. В браузере отображается графический интерфейс приложения: кнопки, картинки, и так далее, а сервер занимается обработкой запросов клиентской части.

Примеры веб приложения - это любой веб-сайт. В зависимости от сложности, сайт может представлять собой как простой набор статических HTML файлов, так и программный продукт, например Drupal, "ВКонтакте", или Wordpress, серверная часть которых состоит из тысяч строк программного кода. Социальные сети, чаты - это всё веб-приложения.

Поскольку у клиентской и серверной частей веб-приложения совершенно разные задачи и возможности, на них используются различные технологии:

На сервере: PHP, Perl, SQL / MySQL, Java, .NET, Ruby, С/C++.

На клиенте: HTML, JavaScript, Adobe Flash, Microsoft Silverlight, WPF, Java (applet, JavaFX).

Мобильные приложения

Мобильными обычно называют те приложения, которые работают на сотовых телефонах и коммуникаторах. К ним относятся приложения для iPhone и Android. В таких устройствах, как правило, связь с Интернет всегда имеется, поэтому многие мобильные приложения являются клиентской частью для некоторого веб-приложения.

Для разработки мобильных приложений, в зависимости от устройства, на котором будет работать это приложение, используются такие технологии: J2ME, .NET Compact Framework, Android SDK, iPhone SDK, С/C++ ... и т.д.

Разумеется, такое деление на "классы" ни в коей мере не является исчерпывающим. Существуют различные комбинации одного-другого-третьего, программы на Brainfuck и многое другое.

ТЕМА 4. Человеко-компьютерное взаимодействие План лекции 1. Пользовательский интерфейс, как средство человеко-компьютерного взаимодействия. 2. Виды интерфейсов. 3. Этапы разработки пользовательского интерфейса. Тестирование интерфейсов. 4. Перспективы развития интерфейсов. 1. Пользовательский интерфейс, как средство человеко-компьютерного взаимодействия. Человеко-компьютерное взаимодействие (HCI) — это изучение, планирование и разработка взаимодействия между людьми (пользователями) и компьютерами. Интерфейс пользователя, он же пользовательский интерфейс (UI — англ. user interface) — разновидность интерфейсов, в котором одна сторона представлена человеком (пользователем), другая — машиной/устройством. Представляет собой совокупность средств и методов, при помощи которых пользователь взаимодействует с различными, чаще всего сложными, машинами, устройствами и аппаратурой Весьма часто термин применяется по отношению к компьютерным программам, однако под ним может подразумеваться набор средств, методов и правил взаимодействия любой системы, управляемой человеком Под совокупностью средств и методов интерфейса пользователя подразумеваются: Средства: · вывода информации из устройства к пользователю — весь доступный диапазон воздействий на организм человека (зрительных, слуховых, тактильных, обонятельных и т. д.) — экраны (дисплеи, проекторы) и лампочки, динамики, зуммеры и сирены, вибромоторы и т. д. и т. п. · ввода информации/команд пользователем в устройство — множество всевозможных устройств для контроля состояния человека — кнопки, переключатели, потенциометры, датчики положения и движения, сервоприводы, жесты лицом и руками, даже съём мозговой активности пользователя. По наличию тех или иных средств ввода, интерфейсы разделяются на типы — жестовый, голосовой, брэйн, и т. д., возможны смешанные варианты. Средства эти должны быть необходимыми и достаточными, быть удобными и практичными, расположенными и скомпонованными разумно и понятно, соответствовать физиологии человека, не должны приводить к негативным последствиям для организма пользователя (всё это входит в понятие эргономики). Методы: · набор правил, заложенных разработчиком устройства, согласно которым совокупность действий пользователя должна привести к необходимой реакции устройства и выполнения требуемой задачи — т. н. логический интерфейс. Правила эти должны быть достаточно ясны для понимания, естественны и легки для запоминания (всё это входит в понятие юзабилити) Увеличение в устройстве (при равной функциональности) средств ввода-вывода даёт упрощение построения методов управления и упрощение правил пользования, но зато приводит к сложности восприятия информации пользователем — интерфейс становится перегруженным. И наоборот — уменьшение средств отображения и контроля приводит к усложнению правил управления — каждый элемент несёт на себе слишком много функций. Потому проектировщики интерфейсов стараются принять компромиссное решение между этими двумя крайностями в каждом отдельном случае. 2. Виды интерфейсов. Разновидности · Визуальный интерфейс пользователя · Текстовый интерфейс пользователя (в частности, интерфейс командной строки) · Графический интерфейс пользователя · Оконный интерфейс · WIMP (графический интерфейс) · Web-ориентированный интерфейс · Индуктивный пользовательский интерфейс · Масштабируемый интерфейс пользователя · Тактильный интерфейс (Хаптика (англ.)) · Жестовый интерфейс · Голосовой интерфейс · Материальный интерфейс пользователя ПИ компьютерной программы Интерфейс пользователя компьютерного приложения включает: · средства отображения информации, отображаемую информацию, форматы и коды; · командные режимы, язык «пользователь — интерфейс»; · устройства и технологии ввода данных; · диалоги, взаимодействие и транзакции между пользователем и компьютером, обратную связь с пользователем; · поддержку принятия решений в конкретной предметной области; · порядок использования программы и документацию на неё. Пользовательский интерфейс часто понимают только как внешний вид программы. Однако, на деле пользователь воспринимает через него всю программу в целом, а значит, такое понимание является слишком узким. В действительности ПИ объединяет в себе все элементы и компоненты программы, которые способны оказывать влияние на взаимодействие пользователя с программным обеспечением (ПО), это не только экран, который видит пользователь. К этим элементам относятся: · набор задач пользователя, которые он решает при помощи системы; · используемая системой метафора (например, рабочий стол в MS Windows); · элементы управления системой; · навигация между блоками системы; · визуальный (и не только) дизайн экранов программы; · средства отображения информации, отображаемая информация и форматы; · устройства и технологии ввода данных; · диалоги, взаимодействие и транзакции между пользователем и компьютером; · обратная связь с пользователем; · поддержка принятия решений в конкретной предметной области; · порядок использования программы и документация на неё. Для упрощения восприятия функции программы пользователем при разработке пользовательского интерфейса желательно использовать метафоры. 3. Этапы разработки пользовательского интерфейса. Тестирование интерфейсов. Разработка пользовательского интерфейса является неотъемлемой частью любого проекта связанного с созданием программного обеспечения. Интерфейс пользователя является точкой взаимодействия человека и программы, зачастую имеющей сложную функциональность. От того насколько удобным будет разработанный интерфейс пользователя будет зависеть и успех продукта. Разрабатывая пользовательский интерфейс мы решаем, задачи связанные с управлением сложной функциональностью конечного продукта, стараясь сделать его простым и информативным, человечным. Задачи решаемые разработкой пользовательского интерфейса Разработка интерфейса пользователя ориентирована на решение следующих задач: · повышение эффективности работы пользователя, заключающейся в повышении скорости и простоты выполнения операций; · увеличение удовлетворенности работы пользователя, связанной с сокращением времени на обучение, уменьшением частоты использования справочной документации и обращением в службу поддержки, уменьшением общего числа пользовательских ошибок. Факторы влияния Дизайн пользовательского интерфейса является фактором, оказывающим влияние на на три основных показателя качества программного продукта: его функциональность, эстетику и производительность. Функциональность является фактором, на который разработчики приложений зачастую обращают основное внимание. Они пытаются создавать программы так, чтобы пользователи могли выполнять свои задачи и им было удобно это делать. Функциональность важна, но, тем не менее, это не единственный показатель, который должен учитываться в ходе разработки. Эстетичный внешний вид самого приложения и способа его представления (вплоть до упаковки) позволяет сформировать у потребителя положительное мнение о программе. Однако эстетические характеристики весьма субъективны и описать их количественно горздо труднее, чем функциональные требования или показатели производительности. Вся эстетика приложения зачастую сводится к простому выбору: соотносятся ли между собой используемые цвета, передают ли элементы интерфейса их назначение и смысл представляемых операций, что ощущает человек при использовании тех или иных элементов управления и насколько успешно он их использует. Производительность, а равно и надежность, также влияют на перспективу применения программы. Если приложение хорошо выглядит, имеет простое и удобное управление, но, к примеру, медленно прорисовывает экраны, регулярно «подвисает» на десяток-другой секунд или, того хуже, падает с критической ошибкой при некорректных действиях пользователя, у него, вероятно, будет мало шансов на длительную эксплуатацию. В свою очередь, быстрая и стабильная работа приложения могут отчасти компенсировать его не самый стильный дизайн или отсутствие каких-то вторичных функций. Примечание: Здесь и далее речь идет о дизайне, ориентированном на пользователя (UCD), если явно не сказано об иной методологии. Разработка интерфейса как процесс Для обеспечения успешной работы пользователя от дизайнера интерфейса требуется соблюдать баланс между вышеперечисленными факторами на протяжении всего жизненного цикла разработки приложения. Это достигается последовательной и тщательной проработкой деталей интерактивного взаимодействия на каждом из этапов разработки пользовательского интерфейса (рис. 1), включающих: 1. Проектирование o Функциональные требования: определение цели разработки и исходных требований. o Анализ пользователей: определение потребностей пользователей, разработка сценариев, оценка соответствия сценариев ожиданиям пользователей. o Концептуальное проектирование: моделирование процесса, для которого разрабатывается приложение. o Логическое проектирование: определение информационных потоков в приложении. o Физическое проектирование: выбор платформы, на которой будет реализован проект и средств разработки. 2. Реализация o Прототипирование: разработка бумажных и/или интерактивных макетов экранных форм. o Конструирование: создание приложения с учетом возможности изменения его дизайна. 3. Тестирование o Юзабилити-тестирование: тестирование приложения различными пользователями, в т.ч. и пользователями с ограниченными возможностями (Accessibility testing). Рис. 1. Этапы разработки пользовательского интерфейса Как и разработка приложения в целом, создание пользовательского интерфейса для него — процесс итеративный. Маловероятно, что такие этапы, как прототипирование, конструирование и тестирование интерфейса могут быть завершены за один проход. Поэтому, если в результате юзабилити-тестирования выявлены недоработки, то они, если это возможно, устраняются путем повторного конструирования, либо разрабатывается новый прототип интерфейса. В заключение, отметим необходимость особо тщательной проработки всех деталей будущего приложения на ранних стадиях (формирование требований, анализ пользователей, логический и концептуальный дизайн) проекта. Это позволит в дальнейшем сэкономить время и, следовательно, затраты на разработку программного продукта. Методы проведения тестирования пользовательского интерфейса Функциональное тестирование пользовательского интерфейса может проводиться различными методами - как вручную при непосредственном участии оператора, так и при помощи различного инструментария, автоматизирующего выполнение тестовых примеров. Рассмотрим эти методы более подробно. Ручное тестирование Ручное тестирование пользовательского интерфейса проводится тестировщиком-оператором, который руководствуется в своей работе описанием тестовых примеров в виде набора сценариев. Каждый сценарий включает в себя перечисление последовательности действий, которые должен выполнить оператор, и описание важных для анализа результатов тестирования ответных реакций системы, отражаемых в пользовательском интерфейсе. Типичная форма записи сценария для проведения ручного тестирования - таблица, в которой в одной колонке описаны действия (шаги сценария), в другой - ожидаемая реакция системы, а третья предназначена для записи того, совпала ли ожидаемая реакция системы с реальной и перечисления несовпадений (Таблица 1).
Таблица 1. Пример сценария для ручного тестирования пользовательского интерфейса
№ п/п Действие Реакция системы Результат
1 Щелкните на пиктограмме System и выберите пункт меню'System Management Applet'. Появится окно ввода логина и пароля Верно
2 Введите в появившееся окно ввода имя пользователя 'guest1' и пароль 'guest'. Затем нажмите кнопку 'Login'. Появится окно 'System Management Applet'. В верхнем правом углу должно быть выведено имя вошедшего пользователя guest1 Все опции в окне должны быть отключены (выведены серым цветом) Неверно Окно имеетназвание'SystemManagement Application'
3 Завершите сеанс работы с апплетом щелчком по пиктограмме 'Logout'. Окно 'System Management Applet' должно бытьзакрыто Верно

Ручное тестирование пользовательского интерфейса удобно тем, что контроль корректности интерфейса проводится человеком, т.е. основным "потребителем" данной части программной системы. К тому же при чисто косметических изменениях в интерфейсах системы, не отраженных в требованиях (например, при перемещении кнопок управления на 10 пикселей влево), анализ успешности прохождения теста будет выполняться не по формальным признакам, а согласно человеческому восприятию.

При этом ручное тестирование имеет и существенный недостаток - для его проведения требуются значительные человеческие и временные ресурсы. Особенно сильно этот недостаток проявляется при проведении регрессионного тестирования и вообще любого повторного тестирования - на каждой итерации повторного тестирования пользовательского интерфейса требуется участие тестировщика-оператора. В связи с этим в последнее десятилетие получили распространение средства автоматизации тестирования пользовательского интерфейса, снижающие нагрузку на тестировщика-оператора.










Последнее изменение этой страницы: 2018-05-10; просмотров: 305.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...