ISSN 0361-7688, Programming and Computer Software, 2008, Vol. 34, No. 4, pp. 216–224. © Pleiades Publishing, Ltd., 2008.
Original Russian Text © D.V. Koznov, K.Yu. Romanovsky, 2008, published in Programmirovanie, 2008, Vol. 34, No. 4.
216
INTRODUCTION
The development of electronic documentation is a
vast practical domain that covers the principles of
development, maintenance, and integrity control of
large document packages (for example, requirements
specifications for large software systems, set of stan-
dards of a bank or large corporation, legal code), dedi-
cated languages and tools, translation into various lan-
guages, and so on.
ACM SIGDOC
1
is one of the most active communi-
ties in the field of developing technical documentation.
It organizes numerous conferences devoted to this
topic. Many tools and methods for developing elec-
tronic documentation are available. Simple documenta-
tion is usually developed using general-purpose text
processors, such as Microsoft Word. For complex doc-
umentation, special tools, such as FrameMaker [1] (the
publishing software produced by Adobe Systems Incor-
porated), DocBook [2] (open source standard for devel-
oping Unix/Linux applications documentation), DITA
[3] (a method for developing complex modular docu-
mentation adopted by IBM), and others are used.
A wide class of technical documents is user docu-
mentation for software. The specific features of this
kind of documentation are determined by such proper-
ties of software as structural complexity, variability,
existence of multiple versions, localizations, and multi-
ple formats (user guide, support site, help system).
Large document packages contain many almost identi-
cal text fragments that are used in various contexts and
documents.
1
Association for Computer Machinery’s Special Interest Group on
the Design of Communication.
Reuse of various assets in software development is
a rapidly developing field. The effort of software engi-
neers and scientists is presently focused on software
product lines. This paradigm proposes to use a unified
development procedure for the set of software products
that have some common features; this methodology is
based on reusing assets in the framework of well-
defined procedures; it also assumes a common market-
ing strategy.
Unfortunately, the development of user documenta-
tion is not distinguished as a special task in the frame-
work of product line development, and no proper tools
and methods are available. Such technologies as
FrameMaker, DocBook, and DITA have some reuse
capabilities. However, they do not support adaptability;
that is the reused text fragments must be identical in all
the contexts where they are used. This fact considerably
restricts the reuse of text fragments. Bassett’s technol-
ogy [5] makes it possible to reuse arbitrary information
represented in the electronic form and it supports adapt-
ability. However, it has never been used for managing
the reuse of documentation. Finally, there is a very
promising approach to reuse based on visual modeling:
this is the feature diagram method [6]. However, this
method has never been used for managing the reuse of
documentation.
In [7], the basic ideas of DocLine are described.
This method integrates various reuse techniques into a
unified technology for developing user documentation
of software product lines. The Documentation Reuse
Language (DRL), which is a part of DocLine, is thor-
oughly described in [8]. This language supports adap-
tive documentation reuse; it consists of two parts—
graphical representation (DRL/GR) and text represen-
DocLine: A Method for Software
Product Lines Documentation Development
D. V. Koznov and K. Yu. Romanovsky
Department of Mathematics and Mechanics, St. Petersburg State University,
Universitetskii pr. 28, Staryi Petergof, St. Petersburg, 198504 Russia
e-mail: dim@dk12687.spb.edu, kromanovsky@yandex.ru
Received November 13, 2007
Abstract—The DocLine method designed for developing documentation for software product lines is pre-
sented. The method makes it possible to reuse document fragments with adaptation to a particular usage con-
text. The method provides the Documentation Reuse Language (DRL) that has a graphical part (for designing
the structure of documentation packages) and a text part (for implementing the documentation). It also
describes a process for developing documentation and a toolset architecture based on the DSM approach and
Eclipse GMF technology.
DOI: 10.1134/S0361768808040051