All Systems Operational 

8 Project management methodologies for delivering IoT deployments

Internet Of Things (IoT), is no longer a tech buzzword but an advanced everyday reality describing a multitude of technologies that connect assets and objects to the internet. Before you start deploying IoT solutions or deployments, it’s vital to understand what project management methodology to use, as all IoT projects are different and will require slightly different approaches.
project management

What is a ‘Project Management Methodology?’

A Project Management Methodology is a set of principles and practices that guide project teams to organise projects, ensuringoptimum performance and success. For a project to be effective, it’s important for it to be correctly mapped out, in terms of management methodology, for specific team types, projects, organisations and goals. Whenever a new project is initiated, the assigned team needs to follow a set of principles that will help the project to satisfy the end user and achieve their goals and objectives.

How do you choose the right methodology for an IoT project?

There are a number of factors to take into consideration that will impact which project management methodology will be right for your project, team and organisation. These factors include:

  • Cost & Budget

What is the budget for the project? Is there any room for the budget to change if required or is it essential that it stays within the agreed limit?

  • Team Size

How many people are involved? How many stakeholders are there invested in the project? What is the size of the project team? Is the team large enough for tasks that will require rigorous delegation?

  • Ability to take risks

Is this a large-scale project that will have a major impact that needs to be managed carefully to delivery serious results? Or is it a smaller scale project where there is some room for flexibility in terms of testing and trying different solutions?

  • Flexibility

There are a number of different variables and unpredicted outcomes that can play into the success and completion of a project. Is there any room for the scope of the project to change during the process?

  • Timeline

How much time is there to complete the project based on the project brief? Is a quick, MVP style, turnaround required, or is it more important to have a faultless, finished result no matter how long it takes?

  • Client/stakeholder collaboration

How involved does the client / stakeholders need or want to be in the process?

How involved do you need or want them to be?

What are the different IoT Project Management Methodologies?

1. Waterfall

This is a traditional approach to project management. Phases of the project are completed in order and each stage must be completed before the next begins. Generally, the stages of a Waterfall approach would look like this:

Understand Requirements, Analysis, Design, Construction, Testing, Deployment & Maintenance.

The Waterfall methodology has some risks as entire project is mapped out at the beginning. This opens room for error if things don’t go to plan, which can lead to project delays and failure.

Why would this methodology work?

  • The end goal of the project is clearly defined and isn’t going to change
  • The stakeholders know exactly what they want and won’t change their mind
  • The project is consistent and predictable

Why wouldn’t this methodology work?

  • The project is liable to change
  • All requirements for the project must be known prior to development taking place which delays the project kickoff
  • Clients /End Users aren’t involved in the design and implementation stages

2. Agile

One of, if not the most common project management processes. Agile technically isn’t a methodology, rather it is best defined as a project management principle for developing software.

The basis of an Agile approach is for project teams to:

  • Be collaborative
  • Value individuals over processes
  • Be Fast and effective
  • Be Iterative and data-backed

Agile project management methodologies usually involve short phases of work with frequent testing, re-assessment, and adaptation throughout.

In many Agile methods, all of the work that needs to be done is added to a backlog so that teams can work through it in each phase with project managers or product owners prioritising the backlog, so project teams know what to focus on first.

Why would this methodology work?

  • The project is liable to change
  • The final solution isn’t clear yet
  • The project work needs to be done quickly and it’s more important to see speedy progress rather than perfect results
  • The stakeholder’s or client’s needs or wants to be involved at every stage

Why wouldn’t this methodology work?

  • If the project isn’t urgent or too complex
  • The project can’t afford to change during its course
  • You have strict deadlines and deliverables that you need to stay on top of

3. Scrum

Scrum is one of the most popular and simple frameworks. It puts the principles of Agile into practice but also enables a small, cross functional, self-managing team to deliver fast.

With Scrum, work is split into short cycles known as “sprints”, which usually last about 1-2 weeks. Work is taken from the backlog for each sprint iteration,

Small teams are led by a Scrum Master for the duration of the sprint, after which they review their performance in a “sprint retrospective” and make any necessary changes before starting the next sprint.

Scrum methodologies are used for project teams that are striving for continuous improvement.

Why would this methodology work?

  • The project team is small
  • The project itself is small scale
  • If projects have changing deliverables, unknown solutions and frequent interaction with clients or end use

Why wouldn’t this methodology work?

  • The project team is large – Extensive training is required
  • If the project is a large scale project

4. Kanban

Kanban is a popular framework used to implement Agile and DevOps software development.

With Kanban, tasks are visually represented as they progress through columns, also known as stages, on a Kanban board. Work will be pulled from a pre-defined backlog on a continuous basis and moved through the columns of the board until all tasks for the project are complete, each column representing a stage of the process.

Kanban is a great way to give everyone an immediate overview for where each piece of work stands at any given time. Kanban can also help project teams to see where bottlenecks are at risk of forming. If one of the columns on the board has a lot of tickets then team managers can amend that specific stage of their process

When used as part of an agile project management methodology, it’s also common to implement work in progress (WIP) limits. Work in progress limits restrict the amount of tasks in play at any given time, meaning that you can only have a certain number of tasks in each column (or on the board overall). This prevents project teams from spreading their energy across too many tasks, and instead ensures that they can work more productively by focusing on each task individually.

Why would this methodology work?

  • Visual representation is preferred to see the project’s progress.
  • You want to encourage using WIP limits so your team can stay focused.
  • You prefer to work on a continuous “pull” basis.

Why wouldn’t this methodology work?

  • The process is complex or has lots of stages.
  • A push system is required instead of a pull system.

5. Scrumban

Scrumban is a methodology that combines the structure of Scrum with the flow-based methods of Kanban, a hybrid approach incorporating the best of both methods. Scrumban uses a similar sprint cycle as Scrum but allows individual tasks to be pulled into the plan like Kanban. This allows the most important work to be completed and keeps project plans simple.

Why would this methodology work?

  • Gives teams the flexibility to adapt to stakeholder and production needs
  • Kanban adds process improvement, visualisation, and more value metrics to the Scrumban method.
  • Iteration planning at regular intervals, synchronized with reviews and retrospectives
  • It allows project teams to decide how much work they can pull into the sprint based on the complexity of the work and the length of the sprint
  • Prioritization on demand – provides the team with the best thing to work on next – no more or less
  • Assures a necessary level of analysis before starting development (Definition of Ready)
  • Use “ready” queue (between Backlog and Doing) to organize

Why this methodology wouldn’t work

  • Projects with a big technology focus, e.g. migration projects.
  • The product being developed has lots of potential features, but it’s not clear at the outset which features are the most important to have
  • The product in development has a number of mandatory features, that must be developed by a certain date
  • There is uncertainty about how long it will take to develop the product and it’s really important to get a heads-up about whether the project will hit certain key dates for having certain features in place

6. PRINCE2

Also known as Projects IN Controlled Environments uses the waterfall methodology to define stages within a project. It was initially created for IT projects and still primarily suits large IT initiatives over the traditional product or market-focused projects. 

There are seven main principles of PRINCE2, which include:

  1. Starting a project
  2. Directing a project
  3. Initiating a project
  4. Controlling a project
  5. Managing product delivery
  6. Managing a stage boundary
  7. Closing a project

These seven principles create a thorough project process with the aim to define roles and back management. PRINCE2 can be used to streamline individual project management tasks such as  controlling different phases of the project, product delivery, and initiating and closing a project. 

Due to the nature of PRINCE2 project management, this is best suited for large enterprise projects with a number of a project stakeholders

Why would this methodology work?

  • Best used for large enterprise projects
  • When dealing with multiple project stakeholders

Why wouldn’t this methodology work?

  • Using for small projects may create a longer and more complicated process than necessary
  • You don’t want to commit full certification
  • The seven step process doesn’t map to your projects

7. eXtreme Programming ( XP)

Used for fast paced projects with tight deadlines. This approach works by creating short, developed cycles with many releases. This ensures quick turnaround times and increased productivity.

Extreme programming has some core values which include, simplicity, communication, feedback, respect, and courage. EXP also includes a specific set of XP rules which includes all phases from planning to testing.

 Extreme programming can be used for individual projects with tight deadlines, most commonly with small to midsize teams. Since XP is a fast-paced method, it should be used lightly to prevent burnout to the team members. 

Why would this methodology work?

  • Project team wants to foster teamwork and collaboration
  • The project team is small / co-located

Why wouldn’t this methodology work?

  • If the project team is large and spread across different places and time zones

8. Lean

This project management methodology is focused around the theme of efficiency, doing more with less and delivering value. For projects that use Lean, it starts by identifying the value and then maximises it through continuous improvement. This improvement comes by optimising the flow of value and eliminating waste, also known as the 3m’s Muda (Wastefulness – removing practices that consume resources but don’t add value to the customer), Mura (Eliminating unevenness –  occurs through overproduction and leaves waste behind) & Muri (Overburden – occurs when there is too much strain on resources)   

Lean can be a helpful mindset to adopt when reviewing your project delivery process. Think about how you can strip your project process back to the bare essentials that deliver value and cut out the things that are just fluff, or the way you’ve always done it, and you’ll be thinking Lean.

Why would this methodology work?

  • Small scale project with a short time frame
  • Small teams in co-located place – allows for effective communication
  • If the customer wants to take part in the process of project realisation – helps with creating and providing a high quality product

Why wouldn’t this methodology work?

  • Large scale / complex projects where it’s required to handle two or more teams
  • Large teams in different places and time zones – doesn’t allow for effective communication
  • If the customer doesn’t want to take part in the process of project realisation (collection of processes involved in the product lifecycle)

Conclusion

For most project managers and teams, it’s important when delivering IoT deployments that primarily, organisations use an Agile approach. The main reason is because the market itself is also agile and is always changing in terms of consumer behaviours, market conditions, volatility, the economy and more.

Agile provides flexibility to respond to changes during the development cycle, allowing teams to ship higher quality products and, more importantly, meet the customer’s / end user’s needs.  This doesn’t mean that project teams can’t take a hybrid approach and incorporate more than one methodology into their projects, but it depends on a number of different factors which must be taken into consideration before an IoT project team can decide which method works best for them.

Ben Jones
Ben Jones
Share on twitter
Share on linkedin

Related Content

Would you like to find out more about the Hark Platform?

Subscribe to Our Newsletter

Stay up to date with the latest industry news, platform developments and more.