This is not a book that tells you what you should or shouldn’t do! So, in the immortal words
of Douglas Adams (www.douglasadams.com): “Don’t Panic!” Yes, it is a book on standards, but
the standards are not presented as a set of rules; rather, they are presented and explained as
a catalog of standard practices that are commonplace in the development community. My job
is to bring them to your attention, and it’s your choice whether you use them.
Generally, there are two categories of standards: internal and external. Internal standards
are those standards that are in-house standards, whereas external standards are standards
that are used between organizations to standardize a selection of industry practices (e.g.,
IEEE-1016 documentation for software design or IEEE-830 software requirements standard).
There are two leading organizations that develop external standards relevant to architects
and developers: IEEE and W3C. Whereas IEEE focuses on standards for a wide range of industries,
including information technology, W3C has a sharper focus on Internet technology.
This book is about internal standards only. Its role is to present to you a catalog of standards
that are understood to be in the public domain and free to use and specialize for your
situation. Standards have been categorized as code, design, and patterns. Code standards discuss
policy, structure, development, and documentation of code. Design standards discuss
code design from a policy, structure, development, and documentation perspective. Finally,
pattern standards discuss a subset of the design patterns catalogued by Drs. Gamma, Helm,
Johnson, and Vlissides (known as the “Gang of Four,” or “GoF”). It also acknowledges the contribution
to the pattern community by Professor Alexander, Professor Reenskaug, and GoF.