Chapter 15. Documentation and the Documentation Process

15.1. JBoss Documentation

JBoss Inc. provides a wide selection of documentation that provides in-depth coverage across the federation of Professional Open Source projects. All documentation is now free. Several versions of our documentation require registration to the JBoss website, which is also free. If you cannot find the answers that you are looking for, you can get additional support from the following sources:

A complete listing of the documentation by project can be found on the Document Index.

15.2. Producing and Maintaining Quality Documentation

For JBoss developers and documentation writers, JIRA and docbook are the two key tools to integrate the documentation process in the development workflow. Now let's clarify documentation responsibilities and adopt a simple process to guarantee our documentation is always accurate and up-to-date.

15.2.1. Responsibilities

15.2.1.1. The product team

The development team is responsible for product-specific documentation. Core developers need to maintain the following documents.

  • The product reference guide
  • The Javadoc for key APIs and all annotations
  • Annotated test cases
  • Optional user guides for a specific product
  • Optional flash demo for a specific product

Tasks related to producing those documents are managed within the development project's JIRA module. Most of these tasks are assigned to developers within the project but some of them are assigned to documentation team, as we will see in a minute.

15.2.1.2. The documentation team

The documentation team (Michael Yuan and Norman Richards) is responsible for all "cross-cutting" documents that cover several projects, as well as tutorial / technical evangelism materials. Examples of such documents are as follows.

  • Overall server guide
  • Trail maps (interactive tutorials)
  • Sample applications
  • Books and articles
  • The "what's new" guide
  • The "best practice" guide
  • etc.

Tasks related to those documents are managed inside the "documentation" JIRA module. Developers are welcome to raise issues there if you see errors and/or coverage gaps in existing documents.

15.2.2. Product documentation review

Before each product release, the documentation team needs to review all the documents maintained by project's core developers (e.g., reference guide and Javadoc). Please create a review task for each document within your project and assign it to a member in the documentation team. The documentation team will read the draft and use that JIRA task to track any issues.

15.2.3. Keep the documentation up-to-date

Since our technology is evolving fast, it is crucial for us to keep the documents up-to-date. If you have any development task that might affect the external interface or observed behavior of the product, please check the appropriate "affects" check box at the bottom of the JIRA task information page.

Check the "affects" boxes for a task that changes the public API

Figure 15.1. Check the "affects" boxes for a task that changes the public API

  • The project's documentation maintainer searches those tagged tasks periodically to update the reference guide etc.
  • The documentation team searches those tagged tasks periodically to update the cross-product documents.
Find all tasks that affect docs

Figure 15.2. Find all tasks that affect docs

15.2.4. Articles and books

The documentation team also serves as our internal editors for technical articles and books in the JBoss book series. If you are interested in writing articles or books, please let us know. Even if you do not have time to write a whole book, we might still find books / articles you can contribute to. So, it is important to keep us informed about your interests in this area.

The documentation team will help develop proposals and manage the relationship with outside editors. If you sign up to write the article / book, a JIRA task in the documentation module would be created and assigned to you to keep track of the progress.

15.2.5. Authoring JBoss Documentation using DocBook

Writing JBoss documentation using the centralized docbook system is really easy. You first need to check out the docbook-support top level module:


cvs -d:ext:yourname@cvs.sf.net:/cvsroot/jboss co docbook-support. 

In the module, you can find the docs/guide directory. Copy that directory to the docs/ directory in your own project and use it as a template for your own docbooks.

For more information about how the directories and build tasks are organized, check out the guide doc in the docbook-support module:

The PDF version is docs/guide/build/en/pdf/jboss-docbook.pdf

The HTML version is docs/guide/build/en/html/index.html