Freeze (software engineering)

Freeze (software engineering)

In software engineering, a freeze is a point in time in the development process after which the rules for making changes to the source code or related resources become more strict, or the period during which those rules are applied. A freeze helps move the project forward towards a release or the end of an iteration by reducing the scale or frequency of changes, and may be used to help meet a roadmap. The exact rules depend on the type of freeze and the particular development process in use; for example, they may include only allowing changes which fix bugs, or allowing changes only after thorough review by other members of the development team. They may also specify what happens if a change contrary to the rules is required, such as restarting the freeze period.

Two common types of freezes are:

  • A feature freeze, in which all work on adding new features is suspended, shifting the effort towards fixing bugs and improving the user experience. The addition of new features may have a disruptive effect on other parts of the program, due both to the introduction of new, untested source code or resources and to interactions with other features; thus, a feature freeze helps improve the program's stability.
  • A code freeze, in which no changes whatsoever are permitted to a portion or the entirety of the program's source code. Particularly in large software systems, any change to the source code may have unintended consequences, potentially introducing new bugs; thus, a code freeze helps ensure that a portion of the program that is known to work correctly will continue to do so. Code freezes are often employed in the final stages of development, when a particular release or iteration is being tested, but may also be used to prevent changes to one portion of a program while another is undergoing development.

In development environments using revision control, the use of branching can alleviate delays in development caused by freezes. For example, a project may have a "stable" branch from which new versions of the software are released, and a separate "development" branch in which the developers add new code. The effect of a freeze is then to prevent promotion of some or all changes from the development branch to the stable branch. In other words, the freeze applies only to the stable branch, and developers can continue their work on the development branch.

See also



Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Freeze — may refer to:In liquids turning to solids: *Freezing, the physical process of a liquid turning into a solid *Freeze drying, a method of rapidly removing moisture from food productsIn cessation of movement or change: *Freeze (breakdance move), the …   Wikipedia

  • Software bug — To report a MediaWiki error on Wikipedia, see Wikipedia:Bug reports. A software bug is the common term used to describe an error, flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or …   Wikipedia

  • Software release life cycle —   A software release life cycle refers to the phases of development and maturity for a piece of computer software ranging from its initial development, to its eventual release, and updated versions of the released version to help improve… …   Wikipedia

  • Tissue engineering — Principle of tissue engineering Tissue engineering was once categorized as a sub field of bio materials, but having grown in scope and importance it can be considered as a field in its own right. It is the use of a combination of cells,… …   Wikipedia

  • Outline of engineering — See also: Index of engineering articles The following outline is provided as an overview of and topical guide to engineering: Engineering – discipline, art, skill and profession of acquiring and applying scientific, mathematical, economic, social …   Wikipedia

  • Topic outline of engineering — For a more comprehensive list, see the List of engineering topics. Engineering is the practice and method of applying scientific and empirical knowledge to the service of humanity, and is distinct from the physical sciences, which are studies of… …   Wikipedia

  • System Architect (software) — Infobox Software caption = System Architect with BPMN and Network Diagrams Open and Browsed name = System Architect developer = Telelogic, An IBM Company latest release version = Version 11.1 with SP1 latest release date = Released Sept 25 2008… …   Wikipedia

  • Architecture and Civil Engineering — ▪ 2009 Introduction Architecture       For Notable Civil Engineering Projects in work or completed in 2008, see Table (Notable Civil Engineering Projects (in work or completed, 2008)).        Beijing was the centre of the world of architecture… …   Universalium

  • Git (software) — Infobox Software name = Git author = Linus Torvalds developer = Junio Hamano, Linus Torvalds latest release version = 1.6.0.2 [cite mailing list |mailinglist=git |author=Junio C Hamano |url=http://marc.info/?l=git m=122128644221821… …   Wikipedia

  • The Mythical Man-Month —   …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”