Klariti Small Business Tips and Tools

About Us Free Tools Tips Templates Affiliates Site Map

MS Word template

4 x User Guide Templates - Instant Download
Download Now!


What is Revision Control?

Revision control is an aspect of documentation control wherein changes to documents are identified by incrementing an associated number or letter code, termed the "revision level", or simply "revision". It has been a standard practice in the maintenance of engineering drawings for as long as the generation of such drawings has been formalized.

A simple form of revision control, for example, has the initial issue of a drawing assigned the revision level "A". When the first change is made, the revision level is changed to "B" and so on.

Revision Control Overview

In computer software engineering, revision control is any practice which tracks and provides controls over changes to a project's source code.

Software developers sometimes use revision control software to maintain documentation and configuration files as well as source code.

In theory, revision control can be applied to any type of information record. In practice, however, the more sophisticated techniques and tools for revision control have rarely been used outside software development circles (though they could actually be of benefit in many other areas). However, they are beginning to be used for the electronic tracking of changes to CAD files, supplanting the "manual" electronic implementation of traditional revision control.

As software is developed and deployed, it is extremely common for multiple versions of the same software to be deployed in different sites, and for the software's developers to be working privately on updates.

Bugs and other issues with software are often only present in certain versions (because of the fixing of some problems and the introduction of others as the program evolves). Therefore, for the purposes of locating and fixing bugs, it is vitally important for the debugger to be able to retrieve and run different versions of the software to determine in which version(s) the problem occurs. It may also be necessary to develop two versions of the software concurrently (for instance, where one version has bugs fixed, but no new features, where the other is where new features are worked on).

Another problem that occurs in large software development projects is that of multiple developers seeking to work on the program at the same time. If two developers try to change the same file at the same time, without some method of managing access the developers may well end up overwriting each other's work.

Some systems attempt to manage who is allowed to make changes to different aspects of the program, for instance, allowing changes to a file to be checked by a designated reviewer before being added.

At the simplest level, users can simply retain multiple copies of the different versions of the program, and number them appropriately. This simple approach has been used on many large software projects. Whilst this method can work, it is inefficient (as many near-identical copies of the program will be kept around), requires a lot of self-discipline on the part of developers, and often leads to mistakes. Consequently, systems to automate some or all of the revision control process have been developed.

Most revision control systems use a system called delta compression, in which only the differences between successive versions of files are retained, thus allowing the efficient storage of many, many different versions of files.

Some systems also provide methods for preventing "concurrent access" problems, by simply locking files so that only one developer has write access to the central "repository" at once; others, such as CVS, provide facilities to automatically or semi-automatically merge changes. In the latter type, the concept of a reserved edit means to explicitly lock a file for exclusive write access, even though a merging capability exists.

The merits and risks for file locking are hotly debated; while it can provide some protection against difficult-to-resolve merge conflicts when a user is making radical changes to many sections of a large file (or group of files) that is constantly being maintained, if the files are left exclusively locked for too long, other developers can be tempted to simply bypass the revision control software and change the files locally anyway; this can lead to more serious problems.

Some of the more advanced version control tools offer many other facilities, allowing deeper integration with other tools and software engineering processes. Plug-ins are often available for IDEs such as Visual Studio.

In particular the Wikipedia:Page history features of Wikipedia are identical in concept and practice to the revision control software discussed above, which was developed for source code control, in the decades before the inception of Wikipedia.

 

What is Technical Writing?

HOW one writes is as important as WHAT one writes. So, language itself is important to enable readers to understand and believe the written text. Language impacts a reader s ability to comprehend and assimilate what a writer is presenting.

Furthermore, people can, and do, judge things by outward appearances all the time, it is essential to make good impressions when communicating in a business setting. When one communicates (whether writing, giving a speech, or talking on the phone) information must be presented effectively and to a large degree, attractively.

These elements strongly affect perceived writer and organizational credibility and professionalism -- highly sought after commodities for individual and organizational success.

Format, organization, and style are important in that they make information available, accessible, and readable. Format and the like are the ¡°how¡± of a written presentation. Format choices can give a document the highly sought after technical or business ¡°look¡± organizations hope for. In essence, this is part of ¡°corporate identity¡± promotion.

Definitions

There are many definitions of technical writing. It is seen as its own species of business writing.

Technical writing is a specialized, structured WAY of writing, where information is PRESENTED in a format and manner that best suits the cognitive and psychological needs of the readers, so they can respond to a document as its author intended and achieve the purpose related to that document.

Thus, it is writing formatted and shaped to make reading as simple, poignant, unequivocal, and enjoyable as possible (i.e., ¡°user friendly¡±). It so happens that most technical writing positions are still primarily offered to those who can write effective end-user manuals, system design documents, Web sites, and the like for engineering and IT firms.

A good technical writer can write about a complicated technical subject or task in ways that almost anyone can understand.

Precision in technical writing tends to be critical because if anything is described incorrectly, readers may act improperly on what is said, causing mistakes and problems at work.

The Society for Technical Communication is probably the premier technical writing association. STC defines technical communication as ¡°The process of gathering information from experts and presenting it to an audience in a clear, easily understandable form.¡± I think this is a good, all-purpose definition. ¡°Technical writing and editing is an umbrella term for any sort of professional communication. It s the interface between your ideas and the rest of the world¡±.

¡°Technical writing is the presentation of information that helps the reader solve a particular problem. Technical communicators write, design, and/or edit proposals, manuals, web pages, lab reports, newsletters, and many other kinds of professional documents.¡±

It is interesting to note that outside the U.S. the definition of technical writing tends to stay very consistent. A [U.K.-based firm] persists that ¡°technical writing is the presentation of information on any scientific, engineering, or technological topic in the form most suited to its user.¡±

This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article Technical Writing.

Your Thoughts?

What are your thoughts on this? Drop me a line at ivan at klariti dot com



software testing templates

standard operating procedure templates

white paper templates

T e m p l a t e   S h o p

Action Plan Template

Audience Analysis Template

Availability Plan Template

Bill of Materials Template

Business Case Template

Business Continuity Plan Template

Business Plan Template

Business Process Design Template

Business Requirements Specification Template

Business Rules Template

Business Writing Services

Capacity Plan Template

Case Study Templates

Change Management Plan Template

Communication Plan Template

Concept of Operations Template

Configuration Management Plan Template

Conversion Plan Template

Datasheet Template

Deployment Plan Template

Disaster Recovery Template

Disposition Plan Template

Documentation Plan Template

Employee Handbook Template

Expression of Interest Template

Free

Free eBooks

Grant Proposal Template

Implementation Plan Template

Invitation To Tender Template

Market Research Templates

Marketing Plan Template

Operations Guide Template

Policy Manual Template

Project Plan Template

Proposal Manager Templates

Proposal Template

Release Notes Template

Request For Proposal Template

Risk Management Plan Template

Scope of Work Template

Service Level Agreement (SLA) Template

Small Business Video

Social Media Policy Templates

Software Development Lifecycle Templates

Software Testing Templates

Standard Operating Procedures Template

Statement of Work Template

System Administration Guide Template

Technical Writing Templates

technical writing templates

Test Plan Template

Training Plan Templates

Training Plan Templates

Troubleshooting Guide Template

Use Case Template

User Guide Template

White Papers

Work Instruction Templates

How to Write

Action Plans

Business Case

Business Writing

Business Proposals

Case Studies

Process Design

Project Management

Standard Operating Procedures Course

White Papers

Write for the Web

Grant Writing

Software Development Templates

 



Email Me Here

Endorsements | About Us | Contact Us | Site Map | Privacy | License | T&Cs | FAQs