Use case points (UCP) is a technique that utilizes a UML use case diagram to estimate the size. The UPC technique, inspired by the function points method, is an appropriate method to use in the early stages of software development. Karner developed the technique in 1993 as an estimation method for object-oriented software. A technique such as the UCP estimation is more appropriate in object-oriented development than function point counting and COCOMO. The method calculates complexity based on use cases and thus differs from the calculation of data movements (function point) and historical data (COCOMO).
The first step in using the UCP technique is to calculate the unadjusted actor's weight or complexity of interaction, such as simple, average, or complex. The second step is to classify the transaction using the same simple, average, or complex scheme. Transactions are a response between an actor and the system. Finally, the transaction and complexity values are adjusted based on technical complexity and an environmental adjustment factor. The basic UCP calculation is UCP = (UUCW + UAW) * TCF * ECT where UUCW is unadjusted use case weight, UAW is unadjusted actor weight, and TFC and ECF are technical complexity and environment factors, respectively.
The UCP model has been used broadly in recent decades (Rath et al., 2016), and studies have indicated the method’s reliability. The major disadvantage is that values are arbitrary in calculating software size, making it challenging to provide time-based estimations. Time-based effort and size are not directly proportional to each other, the UPC concept utilizes documented use cases to determine size.