Timeboxing is used as a
project planning technique. The schedule is divided into a number of separate time periods (timeboxes), with each part having its own deliverables,
deadline and budget. Sometimes referred to as
schedule as independent variable (SAIV). "Timeboxing works best in multistage projects or tasks that take little time and you can fit them in the same time slot. It is also worth implementing in case of duties that have foreseeable time-frames of completion."
As an alternative to fixing scope In
project management, there are generally considered to be
three constraints: time (sometimes
schedule), cost (sometimes
budget), and
scope.) The assumption is that a change in one constraint will affect the others. Without timeboxing, projects usually work to a fixed scope, in which case when it becomes clear that some deliverables cannot be completed within the planned timescales, either the deadline has to be extended (to allow more time to complete the fixed scope) or more people are involved (to complete the fixed scope in the same time). Often both happen, resulting in delayed delivery, increased costs, and often reduced quality (as per
The Mythical Man-Month principle). With timeboxing, the deadline is fixed, meaning that the scope would have to be reduced. As this means organizations have to focus on completing the most important deliverables first, timeboxing often goes hand-in-hand with a scheme for prioritizing of deliverables (such as with the
MoSCoW method).
To manage risk Timeboxes are used as a form of
risk management, to explicitly identify uncertain task/time relationships, i.e., work that may easily extend past its deadline. Time constraints are often a primary driver in planning and should not be changed without considering project or sub-project critical paths. That is, it's usually important to meet deadlines. Risk factors for missed deadlines can include complications upstream of the project, planning errors within the project, team-related issues, or faulty execution of the plan. Upstream issues might include changes in project mission or backing/support from management. A common planning error is inadequate task breakdown, which can lead to underestimation of the time required to perform the work. Team-related issues can include trouble with inter-team communication; lack of experience or required cross-functionality; lack of commitment/drive/motivation (i.e. poor team building and management). To stay on deadline, the following actions against the triple constraints are commonly evaluated: • Reduce scope: drop requirements of lower impact (the ones that will not be directly missed by the user) • Time is the fixed constraint here • Increase cost: e.g., add overtime or resources
Adoption in software development Many successful
software development projects use timeboxing, especially smaller ones. Adopting timeboxing more than tripled developer productivity at
DuPont in the '80s. •
Rapid application development (RAD)
software development process features
iterative development and
software prototyping. According to
Steve McConnell, timeboxing is a "Best Practice" for RAD and a typical timebox length should be 60–120 days. •
Scrum was influenced by ideas of timeboxing and
iterative development. Regular timeboxed units known as
sprints form the basic unit of development. A typical length for a sprint is less than 30 days. Sprint planning, sprint retrospective and sprint review meetings are timeboxed. • In
Extreme programming methodologies, development planning is timeboxed into iterations typically 1, 2 or 3 weeks in length. The business
revalues pending
user stories before each iteration.
Agile software development advocates moving from
plan driven to
value driven development. Quality and time are fixed but flexibility allowed in scope. Delivering the most important features first leads to an earlier
return on investment than the
waterfall model. A lack of detailed specifications typically is the result of a lack of time, or the lack of knowledge of the desired result (solution). In many types of projects, and especially in software engineering, analyzing and defining
all requirements and specifications before the start of the realization phase is impossible. Timeboxing can be a favorable type of contracting for projects in which the deadline is
the most critical aspect and when not all requirements are completely specified up front. This also allows for new feedback or insights discovered during the project to be reflected in the result. == In personal time management ==