Lecture 4
General Equations for COCOMO
1 E = AS^BM
2 A, B are constants determined for each mode and mode level.
3 S is the value of the source LOC
4 M is a composite multiplier, determined from 15 cost driver attributes
COCOMO
COCOMO cost estimation model is used by thousands of software project managers, and is based on a study of hundreds of software projects. Unlike other cost estimation models, COCOMO is an open model, so all of the details are published, including:
1 The underlying cost estimation equations 2 Every assumption made in the model (E.g. the project will enjoy good “management”) 3 Every definition (E.g. the precise definition of the product design phase of a project) 4 The costs included in an estimate are explicitly stated (E.g. project managers are included, secretaries aren’t).
COCOMO
The fundamental calculation in the COCOMO model is the use of the effort equation to estimate the number of person-months required to develop a project.
The other COCOMO results, including the estimates for requirements and maintenance are derived from this quantity.
Why COCOMO II?
1 COCOMO II is better adapted to modern software life cycles. 2 The original COCOMO model has been very successful, but it doesn’t apply to newer software development practices. 3 The original COCOMO was well suited to traditional practices.
Complexity Metrics
1 Complexity Metrics are not the same as Size Metrics
2 Complexity Metrics can be measured early in the software development life cycle.
3 Complexity Metrics are more complex than Size Metrics
Cyclomatic Complexity
1 From a computer program it’s control flow graph G can be derived.
2 Each node and arc of the graph corresponds to a branch or decision point in the program.
3 Using V(G) = E – N + 2 where E is the number of edges and N the number of nodes, we can derive V(G) i.e. the Cyclomatic complexity.
4 McCabe suggests that V(G) can be used to measure program complexity. Hence it is a guide for program development and testing.
Knots
1 This concept is related to drawing the program control flow graph with a node for every statement of block of sequential statements
2 A knot is then defined as a necessary crossing of directional lines of the graph
3 The Cyclomatic complexity does not flow accordingly
Informational Flow Metric
1 Informational flow in a program structure can be used as a metric for program complexity.
2 Basically one counts the number of information flows entering (fan-in) and exiting (fan-out) of each procedure
3 Procedure’s complexity is C = [procedure length] * [fan-in + fan-out]^2 1 This is a very simple metric
Welcome to Kaizenlog.com If you're new here, you may want to subscribe to my RSS feed , Twitter You can contact us by using the contact form or submitting a comment. You can also share this post with your friends by clicking on the 'ShareThis' button above. Thanks for visiting!
Print This Post









Entries (RSS)