на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Разработка графического интерфейса DVM-системы
Диаграмма 1

Диаграмма 2

В модели описано наличие анализатора ошибок, однако, в связи с тем, что его функциональность, на данный момент до конца не определена,
анализатор в модели описан в виде заглушки, принимающей от системы список ошибок, и общающийся с пользователем посредством команд «запросить информацию об ошибке», «выдать информацию об ошибке». При уточнении требований к анализатору, и при необходимости построить графический интерфейс его включающий, данная формальная модель подскажет где и как разместить обращения к нему. В модели же, анализатор представлен вариантом использования ErrorAnalize. Кроме того, модель унифицирует команды одного смысла, заданные для программ написанных на языке C-DVM и Fortran-DVM. Это сделано для того, чтобы значительно упростить построение интерфейса - при одинаковом «смысле» команды и заданных параметрах интерфейс способен сам построить правильное обращение к DVM-системе.

Теперь рассмотрим модель детально. Модель разбита на абстрактные классы. Каждому варианту использования соответствует один CONTROL (управляющий) класс, и два BOUNDARY (граничных) класса. BOUNDARY классы - это абстракции, принимающие входные данные у пользователя или передающие эти данные DVM-системе. Граничные классы модели, связывающие актора (пользователя) и управляющие классы, соответствуют графическим компонентам интерфейса, таким как ока, поля для ввода текста, кнопки, меню, переключатели выбора и т.д. Граничные классы взаимодействующие с CONTROL'ами и самой системой, являются описанием вызова нужной командной строки из интерфейса. Управляющие же классы принимают от граничных выбранные пользователем параметры и строят на их основе правильную dvm-команду, передавая затем ее «вторым» граничным классам. Такие же два граничных класса предусмотрены для анализатора ошибок. Независимо от конечной реализации интерфейса, построенной на основе этой модели, эти классы, и связанные с ними диаграммы взаимодействия (поясняющие как и в каком порядке происходит обработка событий в интерфейсе) и кооперативные диаграммы (раскрывающие связи компонентов интерфейса между собой), останутся базой для его построения, которое сведется к итеративному наращиванию модели. Примеры диаграмм взаимодействия и кооперативных диаграмм приведены в приложении.(диаграммы 3-16). Все эти диаграммы описывают абстрактную модель, которая может служить основой для любой реализации интерфейса для DVM-системы, обеспечивая выполнение пяти требований к интерфейсу. То есть, такая модель .делает доступными все точки входа в систему. Она предполагает проверку параметров команд, до их запуска на выполнение, она предлагает основу для построения инструмента, работающего с ошибками, и способна снизить суммарную стоимость владения системой из-за четкого разделения вариантов использования, то есть из-за стиля интерфейса, предлагающего подсказки при вводе параметров команд.

Глава 4. Графический интерфейс DVM-системы - ГРИФ

Как устроен ГРИФ

На основе модели графического интерфейса
DVM-системы, я разработала интерфейс ГРИФ. (Его название - аббревиатура ГРафический ИнтерФейс.). Эта программа отвечает требованиям к интерфейсу, которые диктует DVM-система на сегодняшний день. Поскольку, не все требования учтенные в абстрактной модели, представляется возможным ваполнить на настоящей стадии развития DVM-системы, то некоторые из них не были выполнены. Это относится к требованиям: открыть в интерфейсе для пользователя все точки входа и проверять все вводимые пользователем значения параметров. И то и другое отклонения от модели обусловлено тем, что некоторые инструменты системы сейчас претерпевают значительные изменения. Улучшение этих инструментов затрагивает и возможности пользователя управлять ими, и как следствие, влияет на интерфейс. По этой причине, интерфейс, реализованный мною, не содержит компонентов, связанных с анализатором производительности и предиктором.

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

Интерфейс написан на языке программирования JAVA. В прошлом, мной был написан интерфейс отладчика DVM-системы в среде Delphi, на языке Object Pascal, и этот опыт подсказал, что когда возникнет необходимость создавать интерфейс всей системы, его нужно будет создать платформо-независимым. Так как сама DVM-система может работать под операционными системами семейства Windows95/NT и Unix, то хотелось бы ожидать не меньшей преносимости и от интерфейса. А так как интерфейс может включать в себя и некоторые инструменты анализа (как то простейший анализ ошибок выдаваемых при отладке), то отношение «хотелось бы», имеет смысл заменить на «должно».

Интерфейс разрабатывался отдельно от самой системы, воспринимая ее как внешний набор команд. Это дает возможность дополнять интерфейс в связи с развитием системы, не изменяя его основы. При появлении новых функций в
DVM-системе разработчикам будет достаточно вставить необходимые для передачи данных компоненты, и вписать несколько строчек кода в уже существующий, без риска повредить его целостность и нарушить работу. Кроме того, как уже говорилось, такое разделение интерфейса и системы, для которой он написан, оставляет «пространство» для проверки данных, получаемых от пользователя. То есть, в систему попадают только те данные, которые соответсвуют ее ограничениям. Неправильно заданный параметр, не повлияет на работу системы, поскольку просто в нее не попадет.

Стиль интерфейса ГРИФ более прост, чем у стандартных Windows приложений, но это было сделано специально, чтобы при запуске его на разных платформах, разница во внешнем виде была не существенна.

В ГРИФ встроен, специально для него написанный, текстовый редактор, что повысило эффективнось работы с системой. Теперь пользователь, получивший сообщение об ошибке, находящейся в его коде, не должен открывать имеющиеся в его распоряжении инструментальные средства разработки программ, а может редактировать исходный код сразу. Тем более это удобно тем, что в данный графический интерфейс встроены средства анализа ошибок. То есть, при выполнении какой-либо команды, приводящей к появлению ошибок, их список тут же предъявляется пользователю, и интерфейс предлагает простую и удобную навигацию по ним. При выборе пользователем любой ошибки из списка, ГРИФ демонстрирует место ее возникновения в исходном коде или трассировке. Естественно, исправить ее сразу же, и повторить операцию приведшею к ее возникновению, удобнее делать не переключаясь между разными не синхронизированными программами. В ГРИФ все это делать легко и удобно.

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

ГРИФ содержит маленькое новшество - Лог-инспектор. Это небольшое окно, в котором последовательно отражается информация о каждом обращении к системе и ее реакциях. Такой Лог регистрирует события, и может быть сохранен. Он может быть очень полезен при возникновении ошибок, в поведении системы, играя роль журнала, записи которого, помогут воспроизвести точно такую же ситуацию еще раз.

Таково общее описание этого интерфейса. Ниже приведено детальное.

Детальное описан
ие графического интерфейса ГРИФ

Графический интерфейс ГРИФ, состоит из 13 файлов
с исходным кодом, написанных на языке JAVA и содержащих 52 класса.Всего код ГРИФ'а занимает порядка 5000 строк, что вызвано, в основном, сногочисленными проверками параметров на соответствие. В откомпилированном виде интерфейс мал (200K).

При первом запуске на машине, ГРИФ запрашивает у пользователя информацию местоположении DVM-системы в памяти. Пользователь указывает путь в стандартном диалоговом окне выбора файла, и система хранит его в создаваемом специально для этого фойле - «info.inf». При дальнейших вызовах интерфейса, он будет знать путь команд DVM.

В начеле работы, интерфейс представлен одним маленьким окном в верхней левой части экрана, которое содержит стандартное меню. Пункты это меню :

· Files - набор команд для открытия существующих или создания новых исходных кодов программ и логов;

· Compile - вызов компилятора.

· Debug - общий пункт меню для разных команд отладки.

· Manuals - пункт позволяющий выбрать и открыть руководства по DVM-системе

· Exit.

Также при начале работы открывается пустое окно Лог-инспектора и пустое окно для вывода списка ошибок.

Вызов компилятора работает следующим образом:

· Система предлагает пользователю выбрать файл с расширением cdv, fdv или hpf.

· Затем, если пользователь сделал выбор, открывается окно для ввода опций DVM-конвертора.

· Интерфейс не позволяет пользователю ввести противоречивые параметры, храня информацию о их возможных сочетаниях.

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

· Для того чтобы узнать где возникла ошибка, пользователь должен выделить мышью строку с сообщением о ней, и нажать кнопку Show error. В окне показывающем код, строка, в которой возникла ошибка, выделится цветом.

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

Например, если пользователь хочет произвести отладку программы с помощью метода сравнения трассировок, то произойдет следующее:

· Пользователь введет параметры.

· Интерфейс, проверив их, передаст системе команды на создание последовательного и параллельного отладочного варианта программы.

·
Команды на накопление эталонной трассировки и сравнение результатов выполнения .

· При обнаружении ошибок, они будут предъявлены в окне ошибок. Окно логов сохранит все переданные системе команды по отдельности.

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

Таким образом, GRIF расширил возможности самого понятия - интерфейс, и привнес немного новой функциональности в систему.

Заключение

В рамках этой дипломной работы была построена формальная модель графического интерфейса
DVM-системы. Это модель несет в себе свойства обеспечивающие соблюдение основных требований к интерфейсу DVM-системы. Разработка временных интерфейсов удовлетворяющих данной модели, позволит создавать удобные, эффективные и легко-изменяемые оболочки.

На основе данной модели был построен графический интерфейс к
DVM-системе, удовлетворяющий всем требованиям, стоящим перед ним на нынешнем этапе развития системы. Этот интерфейс позволяет повысить эффективность работы с DVM-системой, и снизить ее суммарную стоимость владения.

В дальнейшем, при появлении необходимости совершенствовать интерфейс, разработчики могут дополнить существующий, руководствуясь формальной моделью, гарантирующей соблюдение всех требований.

Приложение

Диаграммы 3 - 4:
диаграмма взаимодействия и кооперативная диаграмма для варианта использования FullDebug

Диаграммы 5 - 10: диаграммы взаимодействия и кооперативные диаграммы для варианта использования Debug

Диаграммы 11 - 12: диаграмма взаимодействия и кооперативная диаграмма для варианта использования dvmCSDEB-dvmCPDEB

Диаграммы 13 - 14: диаграмма взаимодействия и кооперативная диаграмма для варианта использования dvmCompile(CDV)

Диаграммы 15 - 16: диаграмма взаимодействия и кооперативная диаграмма для варианта использования dvmErr

Список литературы

1. Документация к системе DVM. http://www.keldysh.ru/dvm

2. Коновалов Н. А., Крюков В. А., Погребцов А. А., Сазанов Ю. Л. C-DVM язык разработки мобильных параллельных программ.- М.: Препринт ИПМ им. М.В.Келдыша РАН, 1997. - №86. - 37 с.

3. Konovalov N. A., Krukov V. A., Mihailov S. N. and Pogrebtsov A. A. Fortran DVM - a Language for Portable Parallel Programs Development // Proceedings of Software For Multiprocessors and Supercomputers: Theory, Practice, Experience

4. Крюков В. А., Удовиченко Р. В. Отладка DVM-программ. - М.: Препринт ИПМ им. М.В.Келдыша РАН, 1999. - №56. - 26 с.

5. В.Е.Денисов, В.Н.Ильяков, Н.В.Ковалева, В.А.Крюков. "Отладка эффективности

DVM-программ". Препринт ИПМ им. М.В.Келдыша РАН №74, 199 8

6. Gay S. Horstmann, Gary Cornell. “Fundamentals of JAVA”. Sun Microsystems Press.

7. Кендалл Скотт. «UML. Основные концепции.». Издательский дом Вильямс.

8.  Крюков В.А. «Разработка параллельных программ для вычислительных кластеров и сетей.» . журнал - Информационные технологии и вычислительные системы.

Страницы: 1, 2, 3



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.