Total View (Etnus LLC), Prism(Sun), p2d2(NAS Ames), Ladebug(Compaq), GDB(GNU), DBX(Sun)



· Метод отладки: интерактивная отладка.

· Эффект вмешательства: имеется. Остановка нитей/процессов нарушает стандартное расписание их выполнения.

· Гибкость: максимальна по определению.

· Удобство использования и простота изучения: от пользователя требуется самостоятельная установка точек останова, изучение состояния программы, ее перезапуск, изменение значений переменны и т.д. Обучение эффективному использованию может быть не простым.

· Языки программирования и операционные системы: Поддержка традиционных языков программирования и их параллельных расширений не представляет проблем. Наиболее развитые средства параллельной отладки разработаны для ОС Unix..

· Использование ресурсов: ресурсы ЭВМ используются эффективно, может потребовать много усилий со стороны человека.

· Локализация ошибок: класс ошибок достаточно широк, но их локализация сильно зависит от умения программиста.

· Успешность на рынке: широко используются. Total View и PDBX(IBM) используются на ASCI White.

 

Assure(Intel), DVM debugger(KIAM RAS), UMPIRE (LLNL)

· Метод отладки: динамический контроль.

· Эффект вмешательства: имеется, в процессе работы отладчик сохраняет данные и выполняет операции по идентификации ошибок.

· Гибкость: возможна, если после обнаружения ошибки отладчик переходит в интерактивный режим.

· Удобство использования и простота изучения: отладка полностью автоматическая. Обучиться использовать просто.

· Языки программирования и операционные системы: поддержка традиционных языков программирования, их параллельных расширений, операционных систем не представляет проблем.

· Использование ресурсов: отладка больших приложений может требовать больших объемов оперативной памяти и времени.

· Локализация ошибок: класс ошибок ограничен.

· Успешность на рынке: Assure встраивается в VTune Environment.

Выходят новые версии системы DVM, доступна в исходных кодах.

Umpire используется на ASCI White.

 

DejaVu (IBM)

· Метод отладки: record & replay

· Эффект вмешательства: имеется, при сохранении последовательности событий в программе.

· Гибкость: возможна, на втором этапе (replay).

· Удобство использования и простота изучения: отладка полностью автоматическая. Обучиться использовать просто.

· Языки программирования и операционные системы: реализован прототипный отладчик для многопоточных приложений написанных на Java.

· Использование ресурсов: требуется как минимум два прогона.

· Локализация ошибок: полезен для локализации трудновоспроизводимых ошибок.

· Успешность на рынке: примеры успешного использования можно найти в [16].

 

Guard (Monash University), DVM debugger (KIAM RAS), NASA/Ames support for debugging automatically parallelized programs

· Метод отладки: сравнительная отладка.

· Эффект вмешательства: имеется, при сравнении данных, нарушается планирование выполнения процессов/нитей.

· Гибкость: возможна, в случае реализации интерактивного метода отладки.

· Удобство использования и простота изучения: отладчик удобно и просто использовать, если он имеет графический интерфейс и средства визуализации различий в сравниваемых данных. Обучиться использовать просто.

· Языки программирования и операционные системы: проблем с поддержкой традиционных языков программирования, их параллельных расширений и операционных систем не выявлено.

· Использование ресурсов: возможно использование трассировки вместо выполнение программы.

· Локализация ошибок: класс локализуемых ошибок широк, возможны трудности с локализацией трудновоспроизводимых ошибок - дедлоков и эффектов состязаний - не при каждом запуске могут проявиться.

· Успешность на рынке: Guard, DVM - некоммерческие разработки. Прототипная поддержка для отладки полуавтоматически распараллеленных программ, разработана в NASA/Ames.

 

HOWCOME demonstrator, DD.py (Saarland University)

· Метод отладки: дельта отладка.

· Эффект вмешательства: отсутствует в случае перебора входных данных и строк исходного кода. Имеется при переборе возможностей планировки процессов/нитей.

· Гибкость: отсутствует.

· Удобство использования и простота изучения: пользователю достаточно указать параметры перебора. Обучиться использовать просто.

· Языки программирования и операционные системы: могут возникнуть проблемы с перебором планировки процессов.

· Использование ресурсов: неэффективно по времени - многократные запуски и/или перекомпиляция.

· Локализация ошибок: реально локализовать некоторые ошибки может быть сложно (например, из-за больших временных затрат)

методика не позволяет локализовать трудновоспроизводимые ошибки.

· Успешность на рынке: средства доступны для использования в Интернете.

 


Пользовательский интерфейс

 

В понятие пользовательского интерфейса (ПИ) входит не только, способ визуализации данных (трехмерные, анимированные изображения), но и способы взаимодействия пользователя с системой. Дизайн имеет подчиненное положение, его главная цель – облегчить использование системы [11].

Создание интерфейса

 

При создании пользовательского интерфейса первой решается задача: создать способ общения пользователя с компьютером (программой). Первое, на что следует обратить внимание при разработке, это то, для кого создается интерфейс. Здесь необходимо отличать профессиональных пользователей, от непрофессиональных. Профессиональный пользователь располагает достаточным объемом времени и достаточно мотивирован, чтобы освоить сколь угодно сложный и противоестественный интерфейс, особенно, если нет аналогичного средства с более удобным интерфейсом.

Рассмотрим кратко этапы разработки пользовательского интерфейса.

На первом этапе необходимо разработать метафору (интерпретацию). Способы взаимодействия с системой и изображения на экране должны вызывать у пользователя аналогии с реальной ситуацией. Например, оконный интерфейс – интерпретация рабочего стола с документами. Использование метафоры позволяет легче воспринимать и интерпретировать изображение на экране. Аналогия с реальной ситуацией избавляет пользователя от необходимости пользоваться справочной документацией.

Следующий этап – концептуальный дизайн интерфейса. На этом этапе происходит разработка основных интерфейсных элементов, способы изображения элементов и их групп, а также общего изобразительного стиля.

Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. Здесь термин "среда" применяется как обозначение типичной для поведения человека в различных средах связки "сигнал-действие".

Эта идея принадлежит психологу Гибсону [10]. Он утверждает, что восприятие человека основано на мотивации. То есть внимание человека в конкретный момент будет обращено именно на те окружающие его предметы, в которых у него на данный момент существует потребность.

Понятия среды и понятие метафоры близко связаны. Правильно разработанная интерфейсная среда позволяет пользователю быстрее освоить работу с интерфейсом. Выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса.

 


Дата добавления: 2019-07-15; просмотров: 173; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!