Writing the documentation

An important part of software quality comes from noting that the final product of software development is far more than the code. As we noted in Chapter 17, Designing for Testability, code that cannot be trusted cannot be used. In that chapter, we suggested testing was essential to establishing trust. We'd like to generalize that a bit. In addition to detailed testing, there are several other quality attributes that make the code usable. Trustworthiness supports usability.

There are a number of aspects of trustworthy code:

  • We understand the use cases
  • We understand the data model and processing model
  • We understand the test cases

When we look at more technical quality attributes, we see that these are really about understanding. For example, debugging seems to mean that we can confirm our understanding of how the application works. Auditability also seems to mean that we can confirm our understanding of processing by viewing specific examples to show that they work as expected.

Documentation creates trust. For more information on the software quality, start here: https://s-cube-network.eu/km/qrm/index.html. There is a lot to learn about software quality; it's a very large area, and this is only one small aspect. 

One way to create detailed documentation is to produce both the final human-readable document and the working source code from the same source. This is the idea of literate programming, which is the subject of the next section.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset