Generally speaking, a practice is set of techniques for accomplishing a goal.
Usually a part of a larger process, a practice represents a chosen way to pursue a related goal. For example, suppose you want to write a story. Some possible practices are:
Draft an outline, then evolve each section.
Draw a cartoon of key story elements, then write the story.
Create a character and a conflict, and then write the story from start to end.
A storyteller could choose one of these practices, or a combination of them. For each practice, there can be tool-specific guidance (tool mentors), that tell you how to create outlines in a word processor, or how to create cartoons using a graphics tool and clip art library.
In terms of software development, a practice:
Addresses one aspect of the software development lifecycle: e.g., requirements management, use-case driven development, change management, etc.
Evolves as improvements are discovered over time
Is based on what has been proved successful, not on abstract scientific principles.
The following are characteristics of IBM Practices.
An IBM practice is a documented approach to solving one or more commonly occurring problems.
It can be documented informally on paper or a whiteboard, or formally through a combination of training courses, tutorials, and Rational Method Composer process content. It offers a one-stop-shop for all content relevant to its practitioners.
A practice can be adopted independently from other practices Organizations can adopt one or a few practices at a time.
A practice has a positive impact on one or more business objectives
For example: Improve time-to-market, Improve quality, Increase productivity
The adoption of a practice can be measured
Can relate one or more business problems with one or more practices
Can relate practice adoption to degree of solving business problem
Practices allow an organization to adopt improved development techniques in a loosely coupled, modular way. This allows for incremental adoption which is easier and leads to measurable results sooner. Independent practices can be learned separately, over time, and successful adoption can be measured as teams are ready.
Result: Easier, more effective deployment of customized and adaptable practices and processes.
Result: Software that better meets business needs, delivered faster