A milestone (or checkpoint) is a point in time representing a key or important event in the life of a product like:
- Product changes: If we need to make some important product changes, we mark its state before beginning to make the changes, to have a snapshot of the latest configuration structure.
- Product builds: Just as with product changes, we want to keep track and identify project builds. This feature can be used by automatic building tools after getting the latest file versions from the database to mark the versions used in the build.
- Product releases: Releasing a project is a big event. We want to make really sure we know which file versions were used to build a certain project version in order to address potential problems.