5 common causes of project complexity and how to fix it

There’s nothing more exciting than working on a new product that will make life better for your audience, customers or service users.

That’s how we feel at 6B and we know that’s how our customers feel – but these can be really large projects.

How do we stop them from spiralling out of control and becoming too complicated? We’ve come up with 5 common causes of project complexity, and given a few pointers on how you can tackle them.

1. Your vision isn’t clear enough

Having a clear vision is as important to technology as it is to business.

As our own Technical Architect Toby Callinan puts it – a lack of vision can result in a short-term, short-sighted strategy, making it more difficult to code for your product properly.

This not only means drawbacks when it comes to performance; without a clear vision, your product could become stale after as little as a year.

“It’s very easy to code badly,” he says. “Only solving the issue that’s right in front of you can mean your codebase can be really hard to manage and any future development can take longer. A bit of forethought on the direction can enable you to build for the future, now.”

So – if you want everyone to pull in the right direction, they need to know which way they’re going.

How do you ensure this? With a strong, in-depth discovery process to kick off the project.

Discovery sessions are technical deep-dives into the aims of a development. They help to set the goals and ambitions for the team, ensure early on that those goals hit the market need, and set the tone for the solution architecture for the rest of the project.

In our sessions (Brief and Breakthrough), you can expect to cover:

  • Goals and success metrics
  • Where you need support with product development
  • How your teams and their skills can influence the project
  • Your target market and user personas
  • Your current systems and infrastructure
  • Your product strategy
  • Any potential weaknesses

Once this detailed analysis is complete, we’ll round off with a full scope of work document, showing how your product will be developed.

2. Outcomes over outputs and inputs

Here’s a quick analogy to explain what we mean by this.

Imagine a child’s toy. The creation of the toy is the output from the project, but the outcome is that you have a happy child.

Having a solution that works for your users is the most critical component of a project, no matter how complex it is.

6B’s Head of Operations Ryan McNamara believes there can be too much focus on inputs and outputs – the focus should be outcomes.

He summarises: “The focus on every project should be what’s looking to be achieved rather than what can be added.”

In other words, a feature may look great or be cutting edge, but if it doesn’t support the vision and the overall outcome, it shouldn’t be included in your product.

Remember: quantity of output doesn’t necessarily equate to a quality outcome. This is key to project success.

3. Communication lines aren’t clear

Communication is known as a ‘soft’ skill, but it’s one of the most important skills a person can have. It’s also especially important for development teams working in an agile environment, as we do at 6B.

It’s vital to communicate the vision properly from the outset, but it’s just as important to communicate change requests and feedback throughout all stages of the development process.

Let’s take this idea of change as our example.

It’s impossible to run a project without some sort of change or amendment happening. This may include:

  • New tech being released mid-project that would improve how an app or website performs
  • Legislation passing that requires a change to a product
  • A stakeholder may have a different idea to another stakeholder on how a website or app functions, such as the text on call-to-action buttons, or any images used
  • Change in a company’s business direction if people leave

If changes such as these aren’t properly communicated, they aren’t included in the final product. This can then lead to back-and-forths that can add a lot of time to a project build.

Avoiding complexity here is tricky, but having regular touchpoints is the key.

In order to ensure a continuous cycle of feedback and strong communication lines, our teams hold standups and scrums to discuss progress, any issues and the next phases of development.

We also keep shareholders up to date with how development phases are going, sharing releases of a product at various stages for transparency, so that everybody is aware of how a project is moving forward at every stage.

4. You don’t need to reinvent the wheel

Occam’s Razor tells us that the simplest solution is almost always the best.

In technology, Toby says that some projects try to reinvent the wheel, when simpler solutions can be found.

Rather than creating bespoke software to meet the needs of your project, a programme may already exist with the functions you need.

For example, you might want to create a system where you can communicate more efficiently with your team. Rather than build one from scratch, why not use a programme such as Slack? This way of thinking can save you valuable time and money to move onto other elements of your project.

It’s important to assess your current processes, look for weaknesses, and then see what improvements can be made before hitting the green light on a brand new product.

5. Don’t be closed off to new ways of thinking

It’s always important to be open to new ways of thinking and working.

We can give you a great example of this from within our own walls.

6B originally had no plans to delve into mobile app development – our plan was to create a new approach delivering websites and web applications.

But after listening to our team, we realised that we could apply this same approach to mobile app development projects. By being open-minded, we created a new way of thinking and working to benefit our customers in ways we didn’t originally set out to do.

Thinking outside of the box is why we work in an agile way. The traditional waterfall approach can fall down in a technology environment because of:

  • Lack of regular reflection
  • Difficulty in adapting to change
  • Difficulty in predicting where a project will lead to
  • Integration problems with other technology if it’s all done at the end

An agile approach allows our developers and our clients to:

  • Regularly review work done
  • Work on the most important elements first
  • Ensure the product behaves properly through regular testing
  • Enjoy better and more frequent communication throughout the project

By operating in this newer, agile way, we ensure your product works faster and smarter than your competitors, giving you a real advantage in the market.

One thing we urge our clients to do: always question if there’s a better way.

Do you need a clear voice to simplify how your project develops?

6B is passionate about providing clear, transparent solutions when we work on any project.

If you want to delve into our expertise, get in touch today and we will arrange an appointment.

Talk to us today

Ready to accelerate your technology project?

Chat to our team of experts and let's see how we can help you.