We work on a lot of IT projects, and we especially enjoy working on integration projects through our FlowLabs unit. Integration, workflow and custom programming work nearly always have compelling, measurable ROI for clients. Most clients have a strategy for getting the IT project work they need within their budget. We’ve seen quite a few different strategies—some work for the client, and some don’t.
If you want to minimise the costs for your next IT project, try thinking about how to minimise the project risks. Beyond a certain level of complexity, there are risks for both the client and the IT services provider. The more unknowns there are, the higher the level of risk. The good news is risk doesn’t have to mean that the amount of money you pay goes through the roof. We recommend three rules for getting quality IT project outcomes from your consultants:
- Disaggregate (break up) projects as much as possible. Each time you make the target smaller, you decrease your risks. Typically, the more often you do this, the less risky subsequent parts of the project become.
- Don’t assume that a fixed price is the best way to avoid being ‘ripped off’. We never offer fixed price where it’s not in our client’s interests, but it’s quite common in the industry to heavily load fixed prices to militate against risk. A good IT services consultant will help you manage the risks and be able to suggest the pricing structure that will be most advantageous to you.
- Work with an agile process. Agile processes emphasise discovery, lightweight solutions and iteration over heavy planning and over-managing. Applying agile methodologies to a project gets you results faster, which again decreases risks and costs.
- Think long term. You might have a need now, but what are your needs going to be in 5 years time? You don’t have to code that now, but knowing where you’re heading makes an enormous difference to the design decisions we collectively make now.
- The single best thing you can do to reduce risks is reduce complexity. The single best thing you can do to reduce complexity is aim towards one database. You don’t have to get there all at once, but if you’re heading in that direction, things will get easier for you over time rather than harder. Systems that look like they can talk to each other now often don’t work properly, or can’t when you swap programs or are so convoluted your staff hate them. If you’re looking for a real competitive edge and one that will last for a long time, this is a great place to start.