CI&T Business Complexity Points
Learn more

Re-Thinking Story Points

Estimation is often difficult, and for software development, it’s even more complex. Story Points have been used with the intention of making estimates easier, though it requires consideration of several different factors--because story points represent the effort of a story, it must include not only the amount of work but also the complexity of the work and any risk or uncertainty.

Story Points follow a “t-shirt size” approach which doesn’t fit everyone--it’s not a normalized unit, with many subjective elements, which prevents cross-team performance analysis, objective, and effective continuous improvement demonstration.

CI&T’s Business Complexity Points (BCP)

Simplifying and standardizing software development with the ultimate goal of maximizing the chance of project success is what led CI&T to think outside the box.
 
We created a method to objectively measure, demonstrate and standardize software complexity, called Business Complexity Points or BCP. The BCP framework analyzes software complexity through a business lens. It includes 10 elements that are associated with complexity values.

We realized that the stories always included basic elements representing functional aspects, such as:

• Business rules (from formula usage through multi-step iterative processes with many decision points) 
• User interface elements (from adding "x simple elements" to a specific form, creating a new form with "x simple elements" to creating a new complex form with several dynamic and sophisticated elements)
• New business entities that would need to be created/handled or existing ones that would need to be improved/handled
• Interface to different entities

In each line, we have the basic functional elements (business rules, user interface entities, permissions). We call them "complexity items".
 
In each column, we have different sizes (XS, S, M, L, XL) to provide relative complexity. We provide different points to each size according to the Fibonacci sequence.

Simplify & Standardize Software
Development with BCP

1. Communication

Practical and simple to understand. Allows for a common language among teams.

2. Normalized System

Practical and simple to understand. Allows for a common language among teams.

3. Comparisons

Practical and simple to understand. Allows for a common language among teams.

4. Best Practices

Practical and simple to understand. Allows for a common language among teams.

5. Quality

Practical and simple to understand. Allows for a common language among teams.