11.07.2015 Views

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

documentation, user 159In addition to the commented source code, externaldocumentation is usually provided. Design documents canrange from simple flowcharts or outlines to detailed specifications<strong>of</strong> the program’s purpose, structure, <strong>and</strong> operations.Rather than being considered an afterthought, documentationhas been increasingly integrated into the practice <strong>of</strong>s<strong>of</strong>tware engineering <strong>and</strong> the s<strong>of</strong>tware development process.This practice became more prevalent during the 1960s <strong>and</strong>1970s when it became clear that programs were not onlybecoming larger <strong>and</strong> more complex, but also that significantprograms such as business accounting <strong>and</strong> inventory applicationswere likely to have to be maintained or revised forperhaps decades to come. (The lack <strong>of</strong> adequate documentation<strong>of</strong> date-related code in programs <strong>of</strong> this vintage becamean acute problem in the late 1990s. See y2k problem.)Documentation ToolsAs programmers began to look toward developing theircraft into a more comprehensive discipline, advocates <strong>of</strong>structured programming placed an increased emphasis notonly on proper commenting <strong>of</strong> code but on the development<strong>of</strong> tools that could automatically create certain kinds<strong>of</strong> documentation from the source code. For example, thereare utilities for C, C++, <strong>and</strong> Java (javadoc) that will extractinformation about class declarations or interfaces <strong>and</strong> formatthem into tables. Most s<strong>of</strong>tware development environmentsnow include features that cross-reference “symbols”(named variables <strong>and</strong> other objects). The combination <strong>of</strong>comments <strong>and</strong> automatically generated documentation canhelp with maintaining the program as well as being helpfulfor creating developer <strong>and</strong> user manuals.While programmers retain considerable responsibilityfor coding st<strong>and</strong>ards <strong>and</strong> documentation, larger programmingstaffs typically have specialists who devote their fulltime to maintaining documentation. This includes the logging<strong>of</strong> all program change requests <strong>and</strong> the resulting newdistributions or “patches,” the record <strong>of</strong> testing <strong>and</strong> retesting<strong>of</strong> program functions, the maintenance <strong>of</strong> a “versionhistory,” <strong>and</strong> coordinating with technical writers in theproduction <strong>of</strong> revised manuals.Further ReadingBarker, Thomas T. Writing S<strong>of</strong>tware Documentation: A Task-OrientedApproach. 2nd ed. New York: Longman, 2002.Goodliffe, Pete. Code Craft: The Practice <strong>of</strong> Writing Excellent Code.San Francisco: No Starch Press, 2007.Knuth, Donald E. Literate Programming. Stanford, Calif.: Centerfor the Study <strong>of</strong> Language <strong>and</strong> Information, 1992.Rüping, Andreas. Agile Documentation: A Pattern Guide to ProducingLightweight Documents for S<strong>of</strong>tware Projects. Hoboken,N.J.: Wiley, 2003.Society for Technical Communication. Available online. URL:http://www.stc.org/. Accessed July 9, 2007.documentation, userAs computing moved into the mainstream <strong>of</strong> <strong>of</strong>fices <strong>and</strong>schools beginning in the 1980s <strong>and</strong> accelerating throughthe 1990s, the need to train millions <strong>of</strong> new computer usersspawned the technical publishing industry. In addition tothe manual that accompanied the s<strong>of</strong>tware, third-partypublishers produced full-length books for beginners <strong>and</strong>advanced users as well as “dictionaries” <strong>and</strong> reference manuals(see also technical writing). A popular program suchas WordPerfect or (today) Adobe Photoshop can easily fillseveral shelves in the computer section <strong>of</strong> a large bookstore.A number <strong>of</strong> publishers targeted particular audiences<strong>and</strong> adopted distinctive styles. Perhaps the best known isthe IDG “Dummies” series, which eventually diversified its<strong>of</strong>ferings from computer-related titles to everything fromhome remodeling to investing. Berkeley, California, publisherPeachpit Press created particularly accessible introductionsfor Windows <strong>and</strong> Macintosh users. At the otherend <strong>of</strong> the spectrum, publishers Sams, Osborne, WaiteGroup, <strong>and</strong> Coriolis targeted the developer <strong>and</strong> “poweruser” community <strong>and</strong> the eclectic, erudite volumes fromO’Reilly grace the bookshelves <strong>of</strong> many UNIX users.Online DocumentationDuring the 1980s, the lack <strong>of</strong> a multitasking, window-basedoperating system limited the ability <strong>of</strong> programs to <strong>of</strong>ferbuilt-in (or “online”) documentation. Traditionally, userscould press the F1 key to see a screen listing key comm<strong>and</strong>s<strong>and</strong> other rudimentary help. However, both the Macintosh<strong>and</strong> Windows-based systems <strong>of</strong> the 1990s includedthe ability to incorporate a st<strong>and</strong>ardized, hypertext-basedhelp system in any program. Users could now search forhelp on various topics <strong>and</strong> scroll through it while keepingtheir main document in view. Another facility, the “wizard,”<strong>of</strong>fered the ability to guide users step by step througha procedure.The growth <strong>of</strong> the use <strong>of</strong> the Web has provided a new avenuefor online help. Today many programs link users to theirWeb site for additional help. Even help files stored on theuser’s own hard drive are increasingly formatted in HTMLfor display through a Web browser. Additional sources <strong>of</strong>help for some programs include training videos <strong>and</strong> animatedpresentations using programs such as PowerPoint.By the late 1990s, printed user manuals were becoming aless common component in s<strong>of</strong>tware packages. (Instead, themanual was <strong>of</strong>ten provided as a file in the Adobe Acrobatformat, which reproduces the exact appearance <strong>of</strong> printedmaterial on the screen.) The computer trade book industryhas also declined somewhat, but the bookstore still <strong>of</strong>fersplenty <strong>of</strong> alternatives for users who are more comfortablewith printed documentation.Further ReadingCasabona, Helen. “From Good to Great—The Finer Points <strong>of</strong> WritingUser Documentation.” www.stc.org/confproceed/1995/PDFs/PG437440.PDF. Accessed July 9, 2007.“How to Publish a Great User Manual.” Available online. URL:http://www.asktog.com/columns/017ManualWriting.html.Accessed July 9, 2007.Kukulska-Hulme, Agnes. Language <strong>and</strong> Communication: EssentialConcepts for User Interface <strong>and</strong> Documentation Design. NewYork: Oxford University Press, 1999.Online Technical Writing [textbook]. Available online. URL: http://www.io.com/~hcexres/textbook/acctoc.html. Accessed July 9,2007.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!