Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section
show-titlefalse
titleDescription

Separate a documentation into distinct sections such that each section addresses a separate concern. A concern is a set of related information.

Quote External
source-urihttp://www.cs.utexas.edu/users/EWD/transcriptions/EWD04xx/EWD447.html
authorEdsger W.Dijkstra
author-urihttps://en.wikipedia.org/wiki/Edsger_W._Dijkstra
sourceOn the role of scientific thought
source-date1974

Let me try to explain to you, what to my taste is characteristic for all intelligent thinking. It is, that one is willing to study in depth an aspect of one's subject matter in isolation for the sake of its own consistency, all the time knowing that one is occupying oneself only with one of the aspects. We know that a program must be correct and we can study it from that viewpoint only; we also know that it should be efficient and we can study its efficiency on another day, so to speak. In another mood we may ask ourselves whether, and if so: why, the program is desirable. But nothing is gained —on the contrary!— by tackling these various aspects simultaneously. It is what I sometimes have called "the separation of concerns", which, even if not perfectly possible, is yet the only available technique for effective ordering of one's thoughts, that I know of. This is what I mean by "focussing one's attention upon some aspect": it does not mean ignoring the other aspects, it is just doing justice to the fact that from this aspect's point of view, the other is irrelevant. It is being one- and multiple-track minded simultaneously.

Example
Section
titleExample

Each document is based on three components: contents, structure, format.

These there concerns must all support the topic described in the document, but may require a different expertise. Typically not each team member is good at all of these aspects equally. Therefore there should be tools to support the team member to concentrate on one at a time. For instance a blueprint and style sheets take care of the basic structure and the formatting styles. Relying on these tools, the author can concentrate on the content to deliver the information. The structure and format may none-the-less be fine-tuned by the author to further support the information.

Section
title

Section
titleContext

Section
titleProblem

...