In today's rapidly evolving digital landscape, outsourcing IT projects is a common practice for many businesses. However, understanding the pricing of these projects can be a daunting task. Unfortunately, this lack of understanding can lead to overpayment, underpricing, or even a loss of interest from the agency when they realize they've miscalculated the costs. All of these outcomes are detrimental to the client.
To shed some light on this critical subject, I'd like to share a method we have found to be highly effective in estimating IT project costs at Ahy Consulting - the "Function Point Analysis" (FPA) Methodology.
Why Function Point Analysis?
Over the years, we've experimented with various project estimation techniques, and FPA has consistently proven to be the most accurate. We have even refined the technique further for our most mature practice, eCommerce development. This article further elaborates on FPA and how it works.
Step 1: Understanding Project Goals and Objectives
A crucial aspect of project estimation is comprehending the project's goals and objectives. This understanding not only helps us define the scope but also prioritize phases and provide better advice to our clients.
Step 2: Defining the Most Essential Version (MEV)
Next, we translate these goals into core features that are essential for the project to go to market. This subset of features forms our Minimum Viable Product (MVP), or as we like to call it at Ahy Consulting, the "Most Essential Version" (MEV).
Step 3: Breaking Down Features into Function Points
Once the MEV features are listed, we break down each feature into its most granular technical tasks, known as 'Function Points'. For example, for a registration feature, the function points can include Frontend field set, Input Name, Input Email, Validate Name, Validate Email, Controller function, and so on.
Step 4: Assigning Function Points to Team Members
Once all the function points are ready for all the features, It's crucial to allocate each function point to the appropriate team member. Assigning all tasks to a Senior Developer will unnecessarily inflate the project cost, while assigning all tasks to a Junior Developer can severely compromise the project's quality. Similarly, architectural decisions must be taken up by the Solutions Architect to ensure the system is robust and secure.
Step 5: Cost Estimations
The baseline pricing for each team member is pre-defined. An agency that follows a good & transparent estimation process will not hesitate to share these numbers. This is the place where you will clearly understand if the agency is overcharging. You can also hire another consultant to have the FPA reviewed.
Step 6: Identifying Task Dependencies
After assigning all the function points, we identify the dependencies between tasks. This helps us understand the level of concurrency possible in the project, enabling multiple tasks to be built simultaneously and prioritizing features with the most dependencies.
Step 7: Accounting for Quality Assurance and Project Coordination
Quality Assurance and Project Coordination are two other vital components of any IT project. For example in an eCommerce Development Project or Magento Build, they constitute close to 7-10% each, of the total project cost.
While FPA is a highly effective method for many IT projects, it is not always suitable. For design or UX projects, it is necessary first to identify Use Case Points (UCP) before estimating FPA. Additionally, if an agile development methodology is preferred over a fixed scope, the estimation can be derived from Story Points.
Your development agency or consultant will be best suited to advise which development method is optimal. Agile Practice can become too fluid and may result in a never-ending project. On the other hand, a fixed scope can restrict you from introducing important new features midway through the project. Exercise caution and hire a good agency that will enable you to make these critical decisions.
In conclusion, understanding the pricing of IT projects is crucial to avoid overpayment or loss of interest from the agency. Function Point Analysis is a highly effective method that we use at Ahy Consulting, but it's important to remember that the best approach depends on the specific project and its requirements.
Have you faced any such issues in past?
Did you feel you were overcharged?
Are you in the process of outsourcing an IT project?
Get in touch with me for a free consultation and I will guide you on how to get the right pricing for your project.