Estimation (project management)In project management (e.g., for engineering), accurate estimates are the basis of sound project planning. Many processes have been developed to aid engineers in making accurate estimates, such as Analogy based estimation Compartmentalization (i.e., breakdown of tasks) Cost estimate Delphi method Documenting estimation results Educated assumptions Estimating each task Examining historical data Identifying dependencies Parametric estimating Risk assessment Structured planning Popular estimation processes fo
Cost estimation in software engineeringCost estimation in software engineering is typically concerned with the financial spend on the effort to develop and test the software, this can also include requirements review, maintenance, training, managing and buying extra equipment, servers and software. Many methods have been developed for estimating software costs for a given project.
COCOMOThe Constructive Cost Model (COCOMO) is a procedural software cost estimation model developed by Barry W. Boehm. The model parameters are derived from fitting a regression formula using data from historical projects (63 projects for COCOMO 81 and 163 projects for COCOMO II). The constructive cost model was developed by Barry W. Boehm in the late 1970s and published in Boehm's 1981 book Software Engineering Economics as a model for estimating effort, cost, and schedule for software projects.
Function pointThe function point is a "unit of measurement" to express the amount of business functionality an information system (as a product) provides to a user. Function points are used to compute a functional size measurement (FSM) of software. The cost (in dollars or hours) of a single unit is calculated from past projects. There are several recognized standards and/or public specifications for sizing software based on Function Point. 1. ISO Standards FiSMA: ISO/IEC 29881:2010 Information technology – Systems and software engineering – FiSMA 1.
Source lines of codeSource lines of code (SLOC), also known as lines of code (LOC), is a software metric used to measure the size of a computer program by counting the number of lines in the text of the program's source code. SLOC is typically used to predict the amount of effort that will be required to develop a program, as well as to estimate programming productivity or maintainability once the software is produced. Many useful comparisons involve only the order of magnitude of lines of code in a project.