B13.AI

Data-Driven Strategies for Project Pricing and Resource Allocation in Software Development 

About B13.ai

B13.ai is a Birmingham-based software development company specialising in bespoke software solutions for diverse clients, including start-ups, SMEs, and large organisations like the NHS. Over the past five years, we have successfully delivered over 100 development projects, encompassing web applications, mobile apps, system integrations, and middleware solutions. Our fixed-price project model, backed by a robust discovery and scoping service, ensures we provide high-quality solutions tailored to our clients' needs while minimising risks and uncertainties.

 

Examples of Our Projects

 

Current Estimation Process

        Themes: Major project aspects (e.g., Mobile App).

        Epics: Large features or functionalities within a Theme (e.g., Authentication).

        User Stories: Specific functionalities from a user's perspective (e.g., User login).

        Subtasks: Detailed tasks for each User Story, categorised by Frontend (FE), Backend (BE), and Mobile (Mob) efforts.

For each User Story, we have:

        Developer Hour Estimate: Calculated from story points, split into FE, BE, and Mob.

        Actual Effort Logged: Tracked with date and time used. We believe that this may sometimes exceed the time used with the developer over charging.

        Functional overview text: Providing detailed functional specifications. This detailed documentation could allow for the use of NLP techniques to validate, refine and predict story point estimates.

The User Story is split into Subtasks for Frontend, Backend and Mobile developers. To calculate the price for a project, we use fixed ratio calculations for all supporting roles (like Business Analysts, Quality Control, DevOps, and Project Management). The cost of each role includes defects and meeting budgets. The cost of each role is used to determine the project price, culminating in a client-agreed Statement of Work with a fixed price.

We account for 20% additional budget for defects, based on historical data of defects per story and the corresponding effort required for resolution. This ensures we accommodate potential issues during the estimation process.

 

Challenge to Address

Optimising Project Pricing and Resource Allocation:

Our main challenge is to improve our project pricing and resource allocation models. We have broken this down into four challenges:

        How can we improve our resource allocation model to optimally distribute hours across roles throughout project phases?

        How can we ensure a project price covers all necessary costs?  We need to ensure our price includes more realistic time allocation for supporting roles, and we have historical data to inform this allocation.

  How can we improve estimation accuracy for common user stories, identifying variations in repeated stories across projects?

  How can we identify discrepancies between estimates and actual performance? We have data on KPIs such as logged hours exceeding actual time used.

 

Envisaged Solution

Data-Driven Models:

        Analyse project data using statistical and machine learning techniques.

        Expected outcomes include:

        A refined, empirically-based pricing formula.

        A dynamic resource allocation model that adjusts with project phases.

        Improved context aware estimations for supporting roles.

        Enhanced estimation for recurring user stories for reliable project scoping.

        Detailed KPI analysis to monitor performance and identify improvement areas.

        Incorporate defect analysis into the estimation model by reviewing historical defect data for each story type and corresponding effort spent on fixes.

Feedback Loop: A continuous feedback loop will be established to validate and refine the estimation process into the future. Regular analysis of actual vs. estimated effort, along with user story documentation, will allow for adjustments in real-time, enhancing accuracy and project management efficiency.

 

Available Data

We have comprehensive project datasets, including:

        Time logs for all roles.

        Initial and actual time estimates for each subtask.

        Records of defects and resolution times.

        Data on repeated User Stories across projects, tracking variations and identifying discrepancies in logged versus actual hours.

 

Desired Outcome

By the end of the week, we aim to achieve:

        A validated pricing formula based on data analysis.

        A comprehensive resource allocation model for different project phases.

        An improved estimation model for recurring user stories.

        A detailed performance report to identify discrepancies and areas of over- or under-performance.

 

Additional Considerations

The proposed solutions must be scalable to accommodate various project types and client requirements. Collaboration between data scientists and our team is crucial to ensure that the models developed are practical and align with our operational experience. Incorporating a feedback loop ensures continuous refinement and validation of our estimates and resource allocation, enabling us to deliver precise, competitive project quotes and optimise resource utilisation.