In any industry, managing projects from start to finish can be challenging, especially projects that involve a team. Fortunately, there are guidelines to structure and streamline the process for better organization and more efficient collaboration. But, they are not enough if you plan to work with Nordic SMEs.
Understanding Project Management in Software Development - Part 1
This article is part 1 in a series about project management methodologies, roles in a project team, and efficient models do deliver software projects.
The key result is to maximize the success of delivery and shorten time to market thanks to well-chosen tools and software development methods.
Project management methodologies serve as a guide in accomplishing interdependent and interconnected tasks to form a project. However, not all methodologies are appropriate for all types of software projects. In some cases, we may even need to use different brainstorming methodologies at different stages. There is also a need to take into consideration the culture of the enterprises involved, and for this article, the focus will be on Nordic SMEs.
The Nordic region in Europe consists of Denmark, Norway, Sweden, Finland, and Iceland. Estonia, being a Baltic country, is an exciting outlier as it has a nordic spirit and ethics. Before going into the different project management methodologies for Nordic SMEs, it is crucial to define what characterises the Nordic management style.
According to a paper by Björn Preuß, the Nordics is a role model when it comes to social and reliable management style, with a notable focus on social values and high orientation towards the future. Because the Nordic approach focuses on human capital, it offers more freedom for its employees to act, thereby increasing flexibility. Furthermore, Nordic organisations typically do away with hierarchical attitudes; hence they tend to be flat. Such a freer organizational structure lets employees take full ownership of their work.
This focus on human capital also takes the form of advocacy towards a work-life balance, where people are encouraged to enjoy life outside of work.
The Nordic partnership encourages slow, reflective thinking, sustainable and ethical business practices, the formation of strategic partnerships, and giving everyone a fair chance. In sum, the Nordic management style is one that is flexible, future-orientated, with lower power distance, and with emphasis on human capital. It supports increased levels of sustainability, which results in corporate financial performance.
This approach is in line with DO OK’s mission to help create a sustainable future, which we facilitate through the informed use of our software and positive impact delivered through products of our clients.
Source: Allies.Digital; Meeting in Tallinn of Koodia Suomesta, our CEO, Dmitrij, and Estonian Software Development Community. February 2020.
When considering project management styles for Nordic SMEs, we need to take into consideration the cultural dimensions of these companies. The motivation behind that is a persona of Project Manager. This role needs to recognise organisational priorities. Once covered, the next step is to learn more about the different types of project management methodologies, their characteristics, strengths, and weaknesses.
Afterwards, to help narrow down the choice, project managers need to be aware of the factors to consider when deciding which methodology to use. The results of a survey published by Harvard Business Review showed that while there is a consensus about the importance of collaboration in an organisation or company’s success, time remains to be an obstacle. When it comes to projects, time is of the essence as there are competing deadlines and interdependent tasks within an overall fast-paced environment. Collaboration, while ideal, may seem difficult to achieve in this kind of scenario—unless there is a methodology in place.
Today, there are many project management methodologies available, each with their unique characteristics. When choosing the right one, it is important to know the key attributes of each.
Kanban is a framework designed for maximum efficiency with a focus on Lean principles while being generally less prescriptive. It relies on a dedicated, self-managing team and aims to release the product speedily. This methodology is light and flexible; its focus is on fast, continual release without sacrificing quality. The tasks are visually represented in the Kanban board, which all team members have access to so everyone is aware of the work items at any time. This methodology works well in environments where there are frequent changes in priorities or requires steady output, like in operations, support, and maintenance. It is very accommodating to changes and is well-suited when working with clients who constantly change their minds.
A deceptively simple yet agile framework, Scrum is guided by the principles of requirements volatility. Teams defined the low-level requirements, which then they will implement next together with a definition of done for each. Such portioning ensures minimal delays in product launch and proper retrospective if something goes wrong. Scrum master sits together with a product owner and an agile team and breaks down the product roadmap backlog into short sprint cycles, which last around one to three weeks. The entire process focuses on team collaboration, which, together with its speedy scrum sessions, saves the business time and money and brings the whole team to a commitment to deliver the software. However, this framework is only applicable to specific environments. For a business to maximize Scrum, it needs to have a dedicated team both on client’s and company’s side. On the other hand, innovating companies or projects with a lot of unpredictable factors can stand to benefit a lot from utilising this framework. One example of that is our mHealth project where our dedicated team of software engineers creates the habit-tracking application of the future.
In contrast to Scrum and other Agile methodologies that utilise an iterative process, Feature Driven Development or FDD uses best practices in engineering to develop small feature sets in weekly or fortnightly iterations. This process has five steps, which makes it easier for team members to be up to the speed of the developments while at the same time ensuring consistency in the approach and project scalability.
FDD is suited to projects of a larger and more complex scale than what scrum sessions can comfortably handle. Long-term projects characterised by frequent changes and additions of features can benefit from the utilisation of this type of methodology.
While there are many more project management methodologies available today, Kanban, Scrum, and FDD are often used even in traditional industries like energy, utilities, and logistics. New technologies jumped in to create digital twins of factories, utilize AI or machine learning in aerospace, maritime, or transportation industries. I.e. in our company, we use FDD to deliver software for the patented asset tracker ready to support million of flights or rides.
There are a variety of factors—both internal and external— to consider when deciding on which project management methodology to use. Becoming familiar with these factors help reduce risks in inappropriate methodology selection. In a conference paper by Sheffield and Lemétayer, the authors, building upon the works of Cockburn, Boehm, and Turner, have identified five critical factors to assess and then choose the right methodology for a project: personnel or skill, criticality, size, culture or the attitude towards change, and dynamism. These factors can be further elaborated in the steps that project managers can take in the selection process, such as:
1. Determining the needs of the project.
This covers the basic details such as the project size, budget, proposed timeline, team requirements, obligations to stakeholders, and the value to the client. If any of these are yet undefined, it is best to go with a methodology that allows for more flexibility.
2. Evaluating organisational structure and elements.
If working with an established team, it is best to do an evaluation of past experiences with previous methodologies as these can be used as indicators for future performance. Under this step are factors like flexibility, culture, industry, established hierarchy, company size, and available resources.
3. Considering and assessing available tools and resources.This step helps in minimising risks when investing in tools that may not serve the needs of the project. Because not all methodologies use the same tools, it is better to choose one that the team already has the tools for. Not only is cost-effective, but the familiarity will also help raise efficiency.
It is important to note that one need not stick to a single methodology. We can accelerate project development when one includes the best practices of an opposing or complementary methodology. The key to all this is the familiarity of the client’s style of work, culture, and then analyze the characteristics, strengths, and weaknesses of each methodology to adapt it wisely.