Источник: Сборник материалов конференции | Электронная библиотека

    Информатика и компьютерные технологии 2006. Программа международной студенческой научно-технической конференции. ДонНТУ, ФВТИ, 13.12.2006.

АНАЛИЗ РЫНКА ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ В РАМКАХ
РАЗРАБОТКИ ИМИТАЦИОННОЙ МОДЕЛИ
ДОКУМЕНТИРОВАНИЯ ПРОГРАММНОГО КОДА


Анискин С.В., Мальчева Р.В.
Донецкий национальный технический университет

    В работе рассматриваются наиболее известные и популярные инструментальные средства в области документирования программного кода. Анализ средств осуществляется с точки зрения конечного пользователя.

Введение
    Вопросы документирования программного кода рассматриваются в большом количестве источников, среди которых можно выделить: анализ использования документации в Open Source проектах с приведением примером и рассмотрением конкретных систем документирования [1]; рассмотрение вопросов самодокументирующегося кода в рамках анализа вопросов конструирования программного кода [2]; рассмотрение вопросов создания самодокументирующегося кода как принципа построения программного обеспечения [3].


1. Постановка задачи
    Данная работа выполняется в рамках разработки имитационной модели документирования программного кода и является частью разработки методологии использования имитационных моделей – основание для анализа инструментальных средств в рамках разработки методологии в [4] и их внедрения в учебный курс. Целью написания данной статьи является обобщение материала, полученного при сравнительном анализе существующих инструментальных средств. Предметом анализа является внутренняя документация [3].


2. Анализ существующих инструментальных средств
    На рынке инструментальных средств представлено большое количество продуктов для внутреннего документирования программного кода (часть из них рассмотрена в [1]). Для сравнительного анализа выбран ряд инструментальных средств, краткое описание которых приведено в таблице 1.

Таблица 1 Инструментальные средства для внутреннего документирования

Средство Краткое описание Поддержка
CppDoc редактор (простой); Open Source; HTML http://www.cppdoc.com/
Doc++ командная строка; Open Source; HTML
http://docpp.sourceforge.net/
Javadoc интегрирован; Java; HTML http://www.sun.com/
NaturalDocs командная строка; Open Source; HTML http://www.naturaldocs.org/
Doxygen frontend; OpenSource; система тегов; различные форматы http://www.doxygen.org/
CoolDOC редактор; платный; различные форматы http://www.cooldocteam.com/
Doc-O-Matic редактор; платный; система тегов; различные форматы http://www.doc-o-matic.com/
NDoc командная строка; Open Source; различные форматы http://ndoc.sourceforge.net/

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

    Анализ производился относительно программиста (пункты 1, 2, 4, 7) и конечного пользователя (пункты 3, 5, 6) по следующим факторам:
· поддержка языков платформы Java и .NET;
· интеграция среды документирования и среды разработки;
· генерация моделей – в частности структурных диаграмм;
· поддержка встроенных форматов для платформ Java и .NET;
· наличие редактора, дифференцированная обработка;
· поддержка различных форматов генерации документации.

Заключение
    Ни одно из рассмотренных средств не ориентировано на принцип самодокументирующегося кода (понятие в [3], пример в [5]), так как изначально все средства ориентированы на теги, которые релевантны во время конструирования. Ни одно из средств не решает проблемы интеграции документации и программного кода. Направления будущей работы
    Данная работа является базовой для решения следующего круга задач: разработка имитационной модели документирования программного кода; проектирование и реализация инструментальных средств в рамках разрабатываемой имитационной модели; внедрение имитационной модели в учебный процесс.


Литература
    [1] Спинеллис Д. Анализ программного кода на примере проектов Open Source. : Пер. с
      англ. - М. : Издательский дом «Вильямс», 2004. - 528 с. : ил. - С. 267-294.
    [2] Макконелл С. Совершенный код. Мастер-класс / Пер. с англ. - М. : Издательско-
      торговый дом «Русская редакция»; Спб. : Питер, 2005. - С. 760-799.
    [3] Мейер Б. Объектно-ориентированное конструирование программных систем / Пер. с
      англ. - М. : Издательско-торговый дом «Русская редакция», 2005. - С.54-56.
    [4] Broy M. The ‘Grand Challenge’ in Informatics: Engineering Software-Intensive Systems
      // Computer. - October 2006 - Volume 39 Number 10, - P. 77.
    [5] Мейер Б. Объектно-ориентированное конструирование программных систем / Пер. с
      англ. - М. : Издательско-торговый дом «Русская редакция», 2005. - С. 179-180.