Your business life is easier when you deal with projects in a waterfall methodology. You follow a linear course with predictable milestones, deliverable deadlines, and project budget. In today's technology driven business world, agile project methodologies are becoming more common as project goal posts change with new requirements, deliverables, budget restrictions, and other factors. Accurately job costing in an agile project environment is a difficult task, but not an impossible one.
1. Break down the project to its component parts.
When you have an understanding of the project on a task-based level, it's easier to figure out pricing for the whole. You look through standard task costs and use those as a foundation to create job costing estimates as accurate as possible. Thorough time tracking is essential to getting task cost estimates, so spend time gathering this data if you haven't already.
2. Consider Scrum methodology.
Scrum is commonly used in software development and puts a project framework in place prepared to deal with changes. Frequent check-ins on the feature requirements versus the project budget occur, any new features are added to the overall project framework instead of tacked on as an extra, and the project adapts to new challenges arising over the course of development.
3. Attach your costing to each project milestone.
An agile project doesn't allow you to provide more than an estimate on what the total cost is, especially if the client needs changes made from the original design document or plan. Tie your project costing in with short-term milestones to provide more accurate figures for the project cost. It's easier to account for all the variables during a specific short period compared to figuring out the costs for the entire project.
4. Plan for something to go wrong.
A constantly evolving project such as an agile project runs into a lot of change throughout its lifespan. It also runs into a lot of complications. Look beyond the bare-bones tasks to figure out how much the labor and resources cost. Put contingency planning in place to deal with any unexpected issues that occur during the development cycle.