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

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

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

1. АВТОМАТИЗАЦИЯ ПРОЦЕССОВ ДОКУМЕНТИРОВАНИЯ ПО.

1.1. Общие принципы документирования ПО.

1.2. Жизненный цикл разработки проектной документации.

1.3. Основные характеристики проектной документации.

1.4. Общие требования к системе автоматизации документирования ПО.

1.5. Обзор существующих подходов.

1.6. Общее описание подхода к автоматизации документирования.

1.7. Перечень задач автоматизации документирования ПО.

Выводы.

2. КОНЦЕПТУАЛЬНАЯ МОДЕЛЬ ДОКУМЕНТА.

2.1. Общие положения.

2.2. Формализация модели документа.

2.3. Ограничения.

2.4. Метамодель документа.

2.5. Выводы.

3. ОТОБРАЖЕНИЕ МОДЕЛИ ДОКУМЕНТА НА DTD И ДОКУМЕНТЫ СОГЛАСОВАННОСТИ.!.

3.1. Общие положения.

3.2. Трансляция модели документа в DTD.

3.3. Свойства концептуальной модели документа.

3.4. Алгоритм трансляции модели документа в DTD.

3.5. Трансляция DTD в модель документа.

3.6. Реализация управления согласованностью документации.

3.7. Выводы.

4. СИНТЕЗ ПРОЕКТНЫХ ДОКУМЕНТОВ.

4.1. Примитивные преобразования.

4.2. Комплексные преобразования.

4.3. Генерация XSLT на базе преобразований модели документации.

4.4. Поглощение примитивных преобразований.

4.5. Выводы.

5. РАСШИРЕНИЯ КОНЦЕПТУАЛЬНОЙ МОДЕЛИ ДОКУМЕНТА ДЛЯ МОДЕЛИРОВАНИЯ XML SCHEMA.

5.1. Расширения модели документа.

5.2. Ограничения модели.

5.3. Отображение модели документа на XML Schema.

5.4. Выводы.

6. АВТОМАТИЗАЦИЯ РАЗРАБОТКИ РЕПОЗИТОРИЯ ПРОЕКТНОЙ ДОКУМЕНТАЦИИ.

6.1. Различие концепций XML и реляционных БД.

6.2. Базовые виды отображений.

6.3. Определение целесообразных видов отображений.

6.4. Отображение модели документа на БД схему.

6.5. Выводы.

7. АРХИТЕКТУРА И ПРИМЕРЫ ПРИМЕНЕНИЯ СИСТЕМЫ АВТОМАТИЗАЦИИ ПРОЦЕССОВ ДОКУМЕНТИРОВАНИЯ ПО.

7.1. Оценка сложности модели документа.

7.2. Ограничения метода автоматизации процессов документирования ПО.

7.3. Архитектура прототипа системы автоматизации процессов документирования ПО.

7.4. Особенности реализации прототипа.

7.5. Описание функциональных свойств прототипа.

7.6. Анализ результатов внедрения прототипа.

7.7. Эффективность использования системы автоматизации процессов документирования.

7.8. Выводы.

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

Актуальность проблемы

Тенденции развития производства автоматизированных систем связаны с увеличением роли стандартизации технологических процессов. Стандарты выступают в качестве основного средства гарантии качества при возрастающем уровне сложности программного изделия. Комплекс документов стандартов предназначен для регламентации методов и методик, используемых в проекте, и для обеспечения возможности контроля результатов технологических процессов жизненного цикла. Качество документации во многом определяет конкурентоспособность современных тиражируемых и поставляемых программных систем [1]. Проектная документация отражает состояние всех основных процессов жизненного цикла от обследования объектов автоматизации до прекращения сопровождения последней версии программной системы.

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

Процесс создания проектной документации требует вполне ощутимых, для проекта в целом, затрат. В [2] отмечается, что на создание документации обычно отводится до 15 процентов общего бюджета проекта. При этом проектная документация часто является:

1) неоднозначной, так как естественные языки недостаточно точны для описания сложных систем и часто вносят двусмысленность;

2) противоречивой, так как для сложных систем требуется проектная документация большого объема, согласованность которой обеспечить довольно сложно;

3) неполной, так как для проектной документации, имеющей большой объем, контроль полноты затруднен.

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

Цель работы

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

Задачи работы

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

2) разработка прямого и обратного отображений модели проектной документации на средства спецификации структуры проектных документов (такие как DTD (Document Type Definition) и XML (extensible Markup Language) Schema);

3) разработка методики оценки согласованности проектной документации на основе модели ее семантической целостности;

4) разработка подхода к автоматизации создания репозитория проектной документации ПО;

5) разработка способа синтеза проектных документов на базе модели документа и моделей проекта, импортируемых из CASE-средств (Computer Aided Software Engineering);

6) реализация прототипа системы автоматизации документирования.

Используемые методы исследования

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

Основные положения, выносимые на защиту

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

2) методика отображения модели документа, обеспечивающая генерацию спецификации структуры проектных документов и схемы их согласованности;

3) способ генерации проектных документов на основе их моделей и проектных моделей, импортируемых из CASE-средств;

4) методика разработки структуры репозитория на основе модели проектной документации.

Научные результаты

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

2) разработано прямое и обратное отображение модели документов и програм-ммных спецификаций структуры и семантической целостности документов, которые автоматизируют получение структурной спецификации проектной документации на основе ее модели, получение модели документа на основе его структурной спецификации и генерацию спецификаций согласованности проектной документации;

3) разработана методика синтеза шаблонов преобразований, с помощью которой автоматизируется процесс генерации проектной документации на базе проектных моделей;

4) разработан подход к созданию репозитория на основе модели документации, позволяющий автоматизировать процесс разработки структуры БД (базы данных) для хранения данных проектных документов.

Научная новизна

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

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

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

Предложена методика создания репозитория на основе модели проектной документации. Разработан способ генерации схемы реляционной базы данных (БД) на основе модели документации. Данный подход позволяет автоматизировать разработку структуры репозитория проектных документов при обеспечении независимости от типа используемой для него системы управления БД (СУБД).

Практическая значимость

Разработан прототип системы автоматизации процессов документирования. Данный прототип реализует:

1) моделирование структуры и семантической целостности проектных документов;

2) реверсивный инжиниринг схем документов, представленных в виде DTD и XML Schema и генерацию программных спецификаций проектных документов в виде DTD и XML Schema на базе модели документа;

3) синтез XML-документов проектной документации на базе XML-документов проектных моделей;

4) генерацию проектных документов в формате HTML (HyperText Markup Language) на базе XML-документов проектной документации;

5) оценку семантической целостности проектной документации на основе спецификации ее согласованности.

Реализация и внедрение результатов

Основные теоретические положения, практические результаты работы и инструментальные средства были внедрены и использованы для автоматизации процессов документирования ПО в ФГУ НПП «Геологоразведка», ЗАО «Эврика», ФГУП КБ «Арсенал» им. М.В.Фрунзе (в рамках работ по ОКР «Разработка программного комплекса моделей и сопровождение комплекса «КАПРА» ГР № 01200112902 от 17.09.01, проводимых) и при выполнении работ по гранту РФФИ «Разработка метамоделей, методов, инструментальных средств и технологии конвертации проектов информационных систем, созданных в соответствии с различными методологиями в различных CASE-системах» (per. номер 0007-90344), а также в учебном процессе Санкт-Петербургского Государственного университета аэрокосмического приборостроения.

Апробация работы

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

1) 6-ая Международная научно-техническая конференция студентов и аспирантов, МЭИ, Москва, 2000 г.

2) Третья научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2000 г.

3) Научная военно-техническая конференция «Военная радиоэлектроника- проблемы создания и совершенствования радиоэлектронной техники, подготовка специалистов», ФВУ ПО, СПб, 2000 г.

4) VII-ая Санкт-Петербургская международная конференция «Региональная информатика - 2000», СПИРАН, СПб, 2000 г.

5) Четвертая научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2001 г.

Публикации

Основные результаты работы опубликованы в 8 печатных работах.

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

7.8. Выводы

1) Увеличение качества проектной документации и уменьшения уровня затрат на ее производство, обусловленные применением метода автоматизации процессов документирования базируются на использовании проектных моделей для продуцирования проектных документов. Для реализации импорта проектных моделей из CASE-средств последние должны иметь возможность спецификации своих моделей в виде XML-файлов.

2) Подход к моделированию, включающий базовую модель документа, моделирование отношений согласованности и XML Schema, а также получение ERD на базе модели документа, базируется на универсальных положениях и может быть использован везде, где вообще применима XML-технология.

3) Разработанный прототип системы автоматизации процессов документирования ПО реализует поддержку моделирования структуры проектных документов, возможность экспорта проектных моделей из CASE-средств в среду разработки проектной документации, возможность генерации проектных документов в виде HTML-файлов на базе проектных моделей и поддержку процесса управления согласованностью проектной документации.

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

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

6) С помощью прототипа была разработана модель проектной документации ФГУ НПП «Геологоразведка» и автоматизированы основные процессы документирования ПО. На базе внедрения прототипа на ФГУ НПП «Геологораз

ЗАКЛЮЧЕНИЕ

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

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

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

3) Разработана методика генерации проектных документов на базе проектных моделей и модели документа.

4) Разработан метод создания репозитория проектной документации, основанный на генерации структуры реляционной БД на базе модели документа.

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

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

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

1. Липаев В. В. Документирование и управление конфигурацией программных средств. Методы и стандарты. М.: СИНТЕГ, 1998. - 220 с.

2. Guidelines for successful acquisition and management of software-intensive systems. Department of the Air Force Software Technology Support Center, 1996.

3. Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя. М: ДМК, 2000. - 432 с.

4. Tilley S. R. Documenting-in-the-large vs. Documenting-in-the-small // CASCON, 1993.-с. 1083-1090.

5. Documentation of Object-Oriented Systems and Frameworks COT-V2.4. // COT, 2000.- 10 c.

6. P. Kruchten: The 4+1 View of Architecture // IEEE Software, 1995. c. 45-50.

7. Бураков В.В. Аспекты автоматизации документирования начальных этапов жизненного цикла автоматизированной системы // Третья научная сессия аспирантов и соискателей ГУАП, СПб.: ГУАП , 2000. -с. 128-131.

8. Бураков В.В. Концептуальная модель проектной документации // Четвертая научная сессия аспирантов и соискателей ГУАП, СПб.: ГУАП, 2001.-с. 238-239.

9. Бураков В.В. Метод автоматизации документирования функциональных свойств программных систем // 6-ая Международная научно-техническая конференция студентов и аспирантов. М.: МЭИ, 2000. -с. 255-256.

10. Бураков В.В., Фильчаков В.В. Методика автоматизации процессов разработки проектной документации в приборостроении // Приборостроение №1. 2002. - с. 7-14.

11. Бржезовский А.В., Бураков В.В. Автоматизация документирования программного обеспечения на базе XML-технологий // Модели социальных, технологических и образовательных процессов, КНЦ РАН, Апатиты, 2001 с. 39-50.

12. Бураков В.В., Жаков В.И., Фильчаков В.В. Метод генерации проектной документации на основе диаграмм потоков данных // Сборник «Информационные технологии поддержки принятия решений» Кольский научный центр РАН, Апатиты, 1998 с. 68-79.

13. Бржезовский А.В., Бураков В.В. Моделирование и синтез программной документации // Вестник молодых ученых (в печати).

14. Бржезовский А.В., Бураков В.В. Прототип системы автоматизации процессов документирования // Вестник молодых ученых (в печати).

15. Bray Т., Paoli J., Sperberg-McQueen С. М. Extensible Markup Language (XML) 1.0. // World Wide Web Consortium. 1998.

16. ISO 8879:1986(E). Information processing Text and Office Systems -Standard Generalized Markup Language (SGML). First edition - 1986.

17. Raggett D., Hors A. L., Jacobs I. HTML 4.0 Specification. W3C Working Draft. 1997.

18. OMG XML Metadata Interchange (XMI) Specification. Version 1.0. -2000.

19. Adler Sh., Berglund A., Caruso J., Deach S., Grosso P., Gutentag E., Milowski A., Parnell S., Richman J., Zilles S. Extensible Stylesheet Language (XSL) Version 1.0. W3C Candidate Recommendation. 2000.

20. ИСО/МЭК 12207. Информационная технология. Жизненный цикл процессов ПО. 1995.

21. ГОСТ 34.601—90. Стадии создания АС. ГОСТ 34.201—90. Виды и комплектность документов. ГОСТ 34.602—89. Техническое задание на создание АС. РД—50—34.698—90. Требования к содержанию документов.

22. NASA Application Software Standard 84K01705. 1999.

23. DoD MIL-STD-498 Software Development and Documentation Standard. 1994.

24. Rational SoDA for Word, Version 2000 Beta 2, Release Notes. Rational Software Corporation. 2000.

25. Portable Document Format, Reference Manual, Version 1.3. Adobe Systems Incorporated. 1999.

26. Broady D., Haitto H., Lidbaum P., Tobiasson M. Dare Document Archive Controller. Tech. rep., IPlag/NADA Royal Institute of Technology. - 1993.

27. Electronic Book Technologies, I. DynaBase Publishing Environment. Providence, Rhode Island, Product Brief. 1994.

28. Electronic Book Technologies, I. DynaText Electronic Book Publishing and Delivery System. Providence, Rhode Island, Product Description. 1994.

29. Burger F. Distributed Hypermedia Document. Management Requirements, Concepts and Design. Dissertation for the Award of the Academic Degree Doctor of Social and Economic Sciences. Department of Information Engineering. University of Vienna. 1995.

30. Nentwich C., Capra L., Emmerich W., Finkelstein A. xlinkit: a Consistency Checking and Smart Link Generation Service. Research Note RN/00/66, University College London, Dept. of Computer Science. 2000.

31. Baru C., Gupta A., Ludaescher В., Marciano R., Papakonstantinou Y., Ve-likhov P. XML-Based Information Mediation with MIX // Demo Session, ACM-SIGMOD 1999.

32. Behle A., Gatzemeier F., Meyer O. Graph Technology for Structured Documents // Proceedings of the Eleventh International Conference on Software Engineering and Knowledge Engineering (SEKE '99). 1999, c. 52-56.

33. Carey M., Florescu D., Ives Z., Lu Y., Shanmugasundaram J., Shekita E., Subramanian S. XPERANTO: Publishing Object-Relational Data as XML // WebDB (Informal Proceedings). 2000.

34. Jeong J.-M., Park S., Chung T.-S., Kim H.-J. XWEET: XML DBMS for Web Environment // The First Workshop on Computer Science and Engineering. 2000.

35. Kanne C.-C., Moerkotte G. Efficient storage of XML data. Lehrstuhl fuer praktische Informatik III. Universitaet Mannheim Germany // ICDE. -2000.

36. Isard A., McKelvie D., Mengel A., Moller M. B. The MATE workbench annotation tool, a technical description // 2nd International Conference on Language Resources and Evaluation. 2000.

37. McKelvie D., Isard A., Mengel A., M0ller M. В., Grosse M., Klein M. The MATE Workbench an annotation tool for XML coded speech corpora. Elsevier Preprint, 2000 // Proceedings of Recherche d'Informations Assistive par Ordinateur. - 2000.

38. Arnold-Moore Т., Fuller M., Kent A., Sacks-Davis R., and Sharman N. Architecture of a Content Management Server for XML Document Applications // In Proceedings of the 1 st International Conference on Web Information Systems Engineering. 2000.

39. Boehm K., Aberer K., Neuhold E. J., and Yang X. Structured Document Storage and Refined Declarative and Navigational Access Mechanisms in HyperStorM // VLDB Journal, Volume 6, Issue 4. 1997.

40. Widom J. Data Management for XML: Research Directions // IEEE Data Engineering Bulletin, Special Issue on XML, 22(3). 1999. - c. 44-52.

41. Psaila G. ERX: A Conceptual Model for XML Documents // SAC. 2000.

42. The XML Data Model // World Wide Web Consortium. 2000.

43. Conrad R., Scheffner D., Freytag J. C. XML Conceptual Modeling using UML // International Conference on Conceptual Modeling, the Entity Relationship Approach. 2000.

44. Calvanese D., De Giacomo G., Lenzerini M. Representing and reasoning on XML documents: a description logic approach // Journal of Logic and Computation, 9(3). 1999. - c. 295-318.

45. Ludaescher В., Papakonstantinou Y., Velikhov P., Vianu V. View Definition and DTD Inference for XML // ICDT. 1999.

46. OMG Unified Modeling Language Specification Version 1.3 First Edition // OMG Group. 2000.

47. Чен П.П.-Ш. Модель «Сущность-связь» шаг к единому представлению о данных // Системы управления базами данных №3. - 1995. - с. 137-158.

48. Papakonstantinou Y., Vianu V. DTD Inference for Views of XML Data. 1999 // ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems. 2000.

49. Behrens R. A Grammar Based Model for XML Schema Integration // 17th British National Conference on Databases, BNCOD 17, Springer-Verlag 2000, LNCS, Vol. 1832.-2000. c. 172-190.

50. Despeyroux Т., Trousse B. Semantic Verification of Web Sites Using Natural Semantics // In RIAO 2000, 6th Conference on "Content-Based Multimedia Information Access". 2000.

51. Fernau H. Learning XML Grammars // Machine Learning and Data Mining in Pattern Recognition MLDM, Springer-Verlag, LNCS 2123. 2001. - c. 73-87.

52. Hosoya H., Vouillon J., Pierce В. C. Regular Expression Types for XML // Proceedings of the International Conference on Functional Programming (ICFP) 2000.

53. Maneth S., Neven F. Recursive Structured Document Transformations based on XSL // DBPL. 1999.56.