Estimating involves forecasting the time and cost to complete project deliverables. There are two main types of estimates: bottom-up estimates require more effort but rely on those familiar with the work, while top-down estimates can be made by managers without direct experience. Software cost and effort estimation is not an exact science due to many variable factors. Key parameters that affect estimates include resources, time, human skills, and cost. Common software estimation techniques include top-down and bottom-up methods such as the three-point estimation technique.