автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Концептуальное моделирование программного обеспечения графических систем

кандидата технических наук
Щекин, Сергей Валерьевич
город
Санкт-Петербург
год
1999
специальность ВАК РФ
05.13.11
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Концептуальное моделирование программного обеспечения графических систем»

Оглавление автор диссертации — кандидата технических наук Щекин, Сергей Валерьевич

ВВЕДЕНИЕ

1.СТАНДАРТИЗАЦИЯ ГРАФИЧЕСКИХ БИБЛИОТЕК И СРЕДСТВА ПРОЕКТИРОВАНИЯ ГРАФИЧЕСКИХ ПРИЛОЖЕНИЙ

1.1 .Графические библиотеки и графические стандарты

1.2.Высокоуровневые библиотеки графических объектов

1.3.Средства проектирования графических приложений на основе интерпретируемых языков

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

1.5.Поддержка ранних этапов проектирования графических приложений.

Выводы

2. КОНЦЕПТУАЛЬНАЯ МОДЕЛЬ ПРЕДМЕТНОЙ ОБЛАСТИ

2.1 .Схема модели предметной области и модель атрибутов

2.2.Мод ели графических атрибутов и ресурсов

2.3.Предопределенные типы объектов

2.4.Шаблон модели предметной области

2.5.Правила задания отношений следования в регулярной КМ

2.6.Правила задания и наследования графических атрибутов и ресурсов в регулярной концептуальной модели

2.7.Концептуальная модель с регулярной структурой графических атрибутов.

Корректность атрибутов изображений регулярной КМ

2.8.КМ с регулярной структурой графических ресурсов.

Корректность графических ресурсов регулярной КМ

2.9.Правила выбора имен экземпляров и типов объектов КМ.

2.10.Полнота декомпозиции объектов КМ и выполнимость процессов.

Выводы

3. НАСТРОЙКА МОДЕЛИ НА ГРАФИЧЕСКИЙ СТАНДАРТ

3.1 .Язык настройки на графический стандарт

3.2. Преобразование модели для настройки на графическую библиотеку

3.3.Алгоритмы корректировки связей объектов и восстановления регулярности шаблонов в модифицированной модели

3.4.Синтаксическая и семантическая корректность описания настройки на стандарт.

3.5 .Генерация процедурной спецификации

Выводы

4. ПРИМЕНЕНИЕ МЕТОДИКИ КОНЦЕПТУАЛЬНОГО ПРОЕКТИРОВАНИЯ ГРАФИЧЕСКИХ ПРИЛОЖЕНИЙ

4.1 .Система концептуального проектирования графических

Введение 1999 год, диссертация по информатике, вычислительной технике и управлению, Щекин, Сергей Валерьевич

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

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

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

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

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

Основные задачи.

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

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

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

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

Показать на конкретных примерах практическую реализуемость разрабатываемого подхода.

Методы исследований.

В исследованиях были использованы: теория множеств, теория графов, теория формальных языков и грамматик, математическая логика.

Основные научные результаты.

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

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

Разработаны классы моделей, предотвращающие некоторые типы ошибок.

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

Новизна научных результатов.

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

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

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

Практические результаты.

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

- интерактивное графическое редактирование модели программы,

- проверку корректности модели,

- настройку модели на графический стандарт,

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

- генерацию процедурных спецификаций. Выполнено моделирование ряда графических приложений. Апробация работы.

Основные результаты работы докладывались и обсуждались на следующих конференциях и семинарах:

Научно-техническая конференция "Диагностика, информатика и метрология -95"(ДИМ-95), СПб, 1995;

Научно-техническая конференция "Автоматизация процессов управления соединениями и частями ПВО, информационные технологии", СПб, 1996; Сессия аспирантов ГУАП, ГУАП, СПб, 1998;

Научно-техническая конференция "Совершенствование вооружения и военной техники. Способы боевого применения и технического обеспечения частей и подразделений РТВ", СПб, 1998; Международная школа-семинар "БИКАМП-98", СПб, 1998. Публикации.

По теме диссертации опубликовано 7 печатных работ.

Заключение диссертация на тему "Концептуальное моделирование программного обеспечения графических систем"

ВЫВОДЫ

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

2.Продемонстрирована практическая применимость методики концептуального проектирования на примере разработки программного обеспечения для систем отображения радиолокационной информации.

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

ЗАКЛЮЧЕНИЕ

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

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

Модель системы не привязана к конкретной графической библиотеке или стандарту. Модель является декларативным описанием предметной области и не связана с конкретным языком программирования.

Класс моделей с регулярной структурой изображений и данных (класс регулярных КМ) позволяет упростить анализ свойств модели, сведя его к анализу отдельных фрагментов модели - шаблонов описания.

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

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

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

Язык описания настройки и методы настойки позволяют изменять число и тип параметров вызовов процедур графической библиотеки. При этом модель автоматически перестраивается для добавления или удаления объектов.

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

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

Показана практическая применимость разработанных моделей для решения задач разработки графических приложений.

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

Библиография Щекин, Сергей Валерьевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Алгебра. Языки. Программирование. - Киев: Наукова думка, 1989. -376с.

2. Аммерал Л. Машинная графика на языке С: В 4-х книгах. Сол Систем, 1992.

3. Багутдинов Р., Киреев Е. Разработка multimédia программных продуктов на платформе Макинтош. // Мир Пк, 1994, №11.

4. Баранов А.А., Пачиков Г.А. Графическая объектная среда GEOS. // Мир Пк, 1993, №7.

5. Берски Д. Стандартная библиотека трехмерной графики для различных компьютеров// Электроника, 1992, №2.

6. Биллет О. Как определить производительность графической системы. // Мир Пк, 1991, №1.

7. Бржезовский А.В., Жаков В.И., Путилов В.А., Фильчаков В.В. Синтез моделей вычислительного эксперимента. СПб.: Наука, 1992. - 231 с.

8. Вендров А.М. CASE-технологии. Современные методы и средства проектирования информационных систем. М.: Финансы и статистика, 1998. - 176 с.

9. Вендров А.М. Один из подходов к выбору средств проектирования баз данных и приложений // СУБД, 1995, №3.

10. Ю.Вирт Н. Алгоритмы и структуры данных. М: Мир, 1989. - 360 с.

11. Гейн К., Сарсон Т. Структурный системный анализ: средства и методы. -М.: Эйтекс, 1992.-274 с.

12. Гладков С.А., Фролов Г.В. Программирование в Microsoft Windows- M.: Диалог-Мифи, 1992.

13. Горчинская О.Ю. Designer/2000 новое поколение CASE- продуктов фирмы ORACLE//СУБД, 1995, №3.

14. Деметрович Я., Кнут Е., Радо П. Автоматизированные методы спецификации. М.: Мир, 1989. - 115 с.

15. Зыков A.A. Основы теории графов. М.: Наука, 1987. - 384с.

16. Игнатьев М.Б., Фильчаков В.В., Осовецкий Л.Г. Активные методы обеспечения надежности алгоритмов и программ,- СПб.: Политехника, 1992. 288 с.

17. Калянов Г.Н. CASE. Структурный системный анализ (автоматизация и применение). М.: Лори, 1996. - 242 с.

18. Касаткин А. И. Профессиональное программирование на языке Си. Управление ресурсами. Минск, Выш. шк., 1992. - 432с.

19. Касьянов В.Н. Оптимизирующие преобразования программ. М.: Наука, 1988.-336 с.

20. Климов A.C. Форматы графических файлов. Киев: Диасофт, 1995, 480с.

21. Концептуальное моделирование информационных систем. Под. Ред. Фильчакова В.В./ Фильчаков В.В., Неилко О.Б., Щекин C.B. и др., СПб, 1998.-356с.

22. Мендельсон Э. Введение в математическую логику. -М.: Наука, 1984. -320 с.

23. Мессарович М., Токахара Я. Общая теория систем: математические основы.- М.: Мир, 1978. -340с.

24. Мешков А., Тихомиров Ю. Visual С++ и MFC. Программирование для Windows NT и Windows 95: В трех томах. -СПб.: BHV, 1997.

25. Минаси М. Графический интерфейс пользователя- М.: Мир, 1996. 160 с.

26. Морейнис А. Основы программирования на Макинтоше. Quick Draw. // Мир Пк, 1994, №9.

27. Новеллино Дж. Программные средства сбора данных и управления с графическим интерфейсом. // Электроника, 1990, №11.

28. Новеллино Дж. Система программирования на базе пиктограмм. // Электроника, 1991, №8.

29. Новосельцев С. Мультимедиа в трех измерениях // Мир Пк, 1993, №3. 30.0ject Windows для С++: В 2-х книгах. Киев, Диалектика, 1993.

30. Роджерс Д. Алгоритмические основы машинной графики- М.: Мир, 1989. -512 с.

31. Свердлов А. Некоторые особенности графической библиотеки фирмы Borland. // Мир ПК,1994,№3

32. Стандарты открытых систем.// Мир ПК,1994,№3

33. Тихомиров Ю. Программирование трехмерной графики- СПб.: BHV, 1998. 256 с.

34. Томпсон Н. Секреты программирования трехмерной графики для Windows-95- СПб.: Питер, 1997. 352 с.

35. Тассел Д. Стиль, разработка, эффективность, отладка и испытание программ. М: Мир, 1985. - 332с.

36. Татт У. Теория графов: М. Мир, 1988. -424с.

37. Тыугу Э.Х. Концептуальное программирование. М.: Наука, 1984.-255с.

38. Турбо Паскаль 7.0 Киев: BHV, 1998. - 448 с.

39. Федоров А. Библиотека Fast Graph. //Компьютер-Пресс, 1995, №4. 41 .Федоров А., Рогаткин Д. Borland Pascal в среде Windows- Киев:1. Диалектика, 1993. 656 с.

40. Фоли Дж., Вэн-Дэм А. Основы интерактивной машинной графики: В 2-х книгах. М.: Мир, 1985.

41. Хирн Д., Бейкер М. Микрокомпьютерная графика М.: Мир, 1987. - 352 с

42. Шилд Г. Программирование на Borland С++ Минск: Поппури, 1998. -800с

43. Щекин C.B. Концептуальные модели описания графических систем//Науч.-техн.конференция "Диагностика, информатика и метрология -95"(ДИМ-95)/тезисы докладов. СПб, 1995.

44. Щекин C.B. Концептуальное моделирование графических систем// Интеллектуальные инструментальные средства вычислительного эксперимента. Апатиты, 1996.

45. Щекин C.B. Концептуальное проектирование графических систем//Проблемы совершенствования радиоэлектронной техники, тем. сб. №4, СПб, 1996.

46. Щекин C.B. Переносимость программ, использующих графический интерфейс//Информационные технологии, 1996, № 4.

47. Щекин C.B. Концептуальное проектирование графических интерфейсов//Первая международная школа-семинар БИКАМП-98/ Тезисы докладов. СПб, 1998.

48. Щекин C.B., Фильчаков В.В. Планирование вычислений и выявление параллелизма // ГосФАП / Номер гос. Per. 50900001160.

49. Янг М. Программирование графики в Windows 95: Векторная графика на языке С++,- М.: Бином, 1997. 368 с.

50. Яншин В.В. Анализ и обработка изображений: принципы и алгоритмы. -М.: Машиностроение, 1994. 112 с.

51. Ambrosini G., Fumagalli G., Hellman S., Jones R., Mapelli L., Mornacchi G., Tamburelli F. "Using Motif in RD13",http://rdl 3doc.cern.ch/public/doc/Notel 0.html

52. Chaveau K.S., Chin J.S., Reed T.N. The Computer Graphics Interface. Oxford: Butterworth, 1991, 376 p.

53. Cheng K., Brian RoweW. "Human-computer interaction issues in developing a bearing design support system : a case study "//Computer Integrated Manufacturing System ,Vol.8 , №2, 1995.

54. Ecimovic T. "Review of X-Designer"// Linux Journal, Issue 47, 1998. http://www.linuxjournal.com/issue47/2641.html

55. Eng E. The Qt GUI Toolkit. Porting graphics to multiple platforms using a GUI toolkit // Linux Journal, Issue 31, 1996.

56. Gettys J., Scheifler R. Xlib C Language X Interface. MIT X Consortium Standard. X Version 11, Release 5, 1991.http://www.es. curtin. edu.au/documentation/X 11 R5/Xlib/html

57. Gorgan D. Dynamic Model Functionality, 1995. http://www.dci.clrc.ac.uk/ ôO.Gorgan D. Multiagents Based Modelling in Graphical User Interfaces. The

58. Development Consortium of the CHI97 Conference, Atlanta, USA, 1997. http://www.dci.clrc.ac.uk/

59. Henderson L.R., Mumford A.M. The Computer Graphics Metafile. London: Butterworth, 1990, 409 p.

60. Herdman D."You can write common code for Unix and NT"// Sunworld,1997,№4. http://www.sunworld.com/sunworldonline/swol-04-1997/swol-04-porting.

61. Hildelbrand D. "Towards visual computing and communication reference model"// Computers & Graphics,Vol. 19 , №1, 1995.

62. Inheritance vs. Interfaces in Cross-Platform Development. Visual Edge

63. Software Ltd., 1997. http://vedge.com/ 65.ISO IS 7942- Information processing systems Computer Graphics - Graphical

64. Kernel System (GKS) functional description 66.ISO IS 8805 Information processing systems - Computer Graphics -Graphical

65. Kernel System for tree dimensions (GKS-3D) functional description 67.ISO IS 9592 Information processing systems - Computer Graphics Programmer's Hierarhical Interactive Graphic System (PHIGS) functional description

66. ISO IS 9639 Information processing systems - Computer Graphics Interface (CGI) functional description

67. James C. Armstrong Jr. "GUI tools mature. We compare five Motif GUI builders, finding the right tool for every style of development."// Advanced Systems, 1995, №3. http://www.sunworld.com/asm-03-1995/asm-03-lead.rev.html

68. Laird C., Soraiz K. "Choosing a scripting language"// Sunworld, 1997, №10. http ://www. sunworld.com/swol-10-1997/swol-10-scripting.html

69. Laird C., Soraiz K. "Getting started with Python"// Sunworld, 1998, №2. http://www.sunworld.com/swol-02-1998/swol-02-python.html

70. Laird C., Soraiz K. "GUI toolkits: What are your options? An overview of today's best-bet GUI toolkits."// Sunworld, 1998, №3. http://www.sunworld.com/swol-03-1998/swol-03-gui.html

71. Larsson J. EFLIB specification. 1998. http://ftp.sunet.se/EFLIB/

72. Lawton S. "Next-generation Sun Workshop aims to cut development time and boost software quality"// Sunworld, 1997, №1. http://www.sunworld.com/swol-01-1997/swol-01-workshop.html

73. Mayer N. WINTERP 2.10. The OSF/Motif WIDGET INTERPreter, 1998. http://www.cybertribe.com/mayer/winterp/

74. OPEN LOOK Graphical User Interface Functional Specification, Version 2.0. Sun Microsystems, Inc. 1990.

75. Parker T. "X-Designer: Java Edition"// UNIX Review, 1997, №10.http ://www.performancecomputing.com/unixreview/backissu/9710/971 Osof.htm

76. RAL-GKS User Guide, 1995. http://ww.cis.rl.ac.uk/stmct/AISD/VSG/software/RALGKS/gksguide.html

77. Qt, Troll Tech, 1998. http://www.troll.no/

78. Segal M., Akeley K. The OpenGL graphics system: A specification. Technical report, Silicon Graphics Computer Systems, Mountain View, Ca., 1992.

79. St.Clair D. "More than a GUI builder"// Advanced Systems, 1995, №3. http://www.sunworld.com/asm-03-1995/asm-03-neuron.html.

80. Stevenson J. PEXlib specification and C language binding, version 5.IP. The X Resource, Special Issue B, September 1992.

81. The Amulet V3.0 Reference Manual. Carnegie Mellon University, 1997. http://pecan.srv.cs.cmu.edu/afs/cs.cmu.edu/misc/mosaic/common/omega/Web/ Groups/amulet/amulet-home .html

82. The User Interface Builder. Imperial Software Technology, 1997. http://www.ist.co.uk/

83. The XDraw Library. A library of drawing primitives implemented as X gadgets, Nova Software Labs, 1997. http://www.nls.fr/

84. The XFaceMaker Product Line. A Scalable Family of Motif Graphical User Interface Building Tools. Nova Software Labs, 1997. http://www.nls.fr/

85. The XnslTree Widget. Nova Software Labs, 1997. http://www.nls.fr/

86. Uden L. "Design and evaluation of human centred CIM systems"// Computer Integrated Manufacturing System ,Vol.8 , №2, 1995.

87. UIM/X 3.0 Platinum Toolsuite Edition. Visual Edge Software Ltd., 1998. http://vedge.com/

88. What is the hihg-level tool. MetaCard Corporation, 1998. http://www.metacard.com/wp.html

89. Womack P., ed. PEXprotocol specification and encoding, version 5.IP. The X Resource, Special Issue A, May 1992.