Project Complexity
In addition to the project size, project complexity must be properly evaluated. To some extent, complexity levels are evaluated by the function point 14 general system characteristics:
-
Data communications
-
Distributed data processing
-
Performance
-
Heavily used configuration
-
Transaction rate
-
Online data entry
-
End-user efficiency
-
Online update
-
Complex processing
-
Reusability
-
Installation ease
-
Operational ease
-
Multiple sites
-
Facilitate change
The assessment of a project's complexity must also take into consideration complex interfaces, database structures, and contained algorithms. The assessment of complexity can be based upon five varying levels of complexity:
- Level 1: Simple addition/subtraction
Simple logical algorithms
Simple data relationships
- Level 2: Many calculations, including multiplication/division in series
More complex nested algorithms
Multidimensional data relationships
- Level 3: Significant number of calculations typically contained in payroll/actuarial/rating/scheduling applications
Complex nested algorithms
Multidimensional and relational data relationships with a significant number of attributive and associative relationships
- Level 4: Differential equations typical
Fuzzy logic
Extremely complex logical and mathematical algorithms typically seen in military/telecommunications/real-time/automated process control/navigation systems
Extremely complex data
- Level 5: Online, continuously available, critically timed
Event-driven outputs that occur simultaneously with inputs
Buffer area or queue to determine processing priorities
Memory, timing, and communication constraints
The most advanced applications developed