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