Ever since the inception of the agile manifesto in early 2000, there has been widespread adoption of the agile methodology in every aspect of software development especially when it comes to large projects. ‘Individuals and interactions over processes and tools’ is one of the four principles of this manifesto. This means that it is the people who drive the development process and they take precedence over processes and tools. The implementation of this principle has resulted in the successful development of many products.
A Digital.ai report states that 94% of organizations are doing at least some work in agile, and over half of them said that the majority or all of their teams have adopted agile. In addition, 89% of a survey’s respondents said that high-performing agile teams have people-centric values, clear culture, tools and leadership empowerment.
Interconnected Concepts of Agile
The Agile product development process is based on three interlinked concepts – people, process and product (PPP). Agile is most commonly associated with processes, occasionally with people, and seldom with products. In today’s era of distributed teams, people work from various locations to develop and enhance a product or solution, together. Despite having good collaboration, sometimes, team members lose sight of the bigger picture during the course of development. The team remains unaware of how the functionalities they build contribute to the greater value generated. This void is often encountered especially while working on big, long-term projects where disparate teams are involved. How does one cross the chasm then?
Orienting oneself to a ‘product mindset’ is the medium that will help you traverse the path mainly because the focus then remains steadfast on the ultimate value that gets delivered. To put it simply, a product mindset is an ‘outside in’ approach that pivots around delivering the best outcomes to the customers in whatever product we develop – be it a service or creating a solution. Before we proceed, it’s important to note that in this article, when we refer to the “product development mindset,” we are not specifically discussing the process of developing a software product. Instead, this mindset applies to all aspects of a software development project and is relevant to everyone involved.
A product mindset is an ‘outside in’ approach that pivots around delivering the best outcomes to the customers in whatever product we develop – be it a service or creating a solution
Incorporating a product mindset while working in agile teams becomes very advantageous as it conveys the bigger picture to all the parties involved. The results of the development process also improve tremendously if everyone has a clear vision of the project.
Agile product development relies on the principle of delivering frequently and incrementally and receiving feedback early in the product development lifecycle. This approach demands vertical slicing of the product in development. Vertical slicing is a technique used in agile software development that focuses on delivering an end-to-end working subset of the whole system.
Agile frameworks including Scrum, SAFe and LeSS are all built around the framework of vertical slicing.
Product vs Project Mindset
The agile approach to software development necessitates a mindset that prioritizes the end goals. Although agile methodologies have been in use since the early 2000s, teams tend to have a stronger inclination towards a project-oriented way of thinking. As software development teams began embracing agile practices, it is observed that the product mindset has also grown among different teams in an organization. Shifting from a project to a product mindset is a gradual transition. As the agile methods in software development became more widely accepted, the level of product mindset has also increased across different teams in an organization.
A simple piece of functionality that is part of a bigger product becomes a task for a team. While following an agile development system, these tasks are further classified into features (broader perspective) and user stories (detailed level). Many a time, there is a conflict in understanding the difference between project and product, as the terms are widely used corporate jargon and frequently interchanged. However, these are quite distinctive from each other and they generate entirely contrasting ways of carrying out work.
What is a Project Mindset?
The term ‘project’ is often used in varying contexts within organizations. Its definition can vary widely, ranging from small development tasks to large-scale technology proposals. In fact, any small or big task that needs to be executed is commonly referred to as a project. In traditional non-agile environments, the process of product development is divided into smaller tasks and functionalities. These smaller tasks are often referred to as ‘projects’ even though they are part of a larger product.
Associating every single task to a project may help in tracking the progress of the development, but it creates a ‘project mindset’ in developers. A project mindset limits an individual’s creativity to time constraints and delivery goals, making them lose track of the overall vision. The level of creativity and curiosity takes a serious hit if every piece of work is done with a project mindset.
A product mindset on the other hand encompasses a set of ideas and principles that enable visualization of how a specific functional output fits into the overall development of the product. This mindset can be cultivated only with a complete understanding of the larger picture.
The level of product mindset also varies according to the teams. For instance, a team that has limited exposure to only development will have a lower level of product mindset compared to a team with experience in development and testing. Similarly, a team that has experience in development, testing and maintenance processes will have the highest level of product mindset. Adopting a product mindset enables quicker realization of the overall vision, improving collaboration and delivery to a large extent.
Having a product mindset renders multiple advantages, including:
- Improvement in quality and functionality of the product
- A shared understanding and collaboration among teams
- Enablement of an agile approach for delivery
- Increased agility as the integrated system is built with product overview, reducing bottlenecks
- Sparking new ideas and encouragement to innovation
- Simplification of complex systems
- Increase in customer-centric thinking
- Increase in output and productivity
Varying Levels of Product Mindset
A team’s level of ‘product mindset’ is heavily influenced by their participation in the product development process. Generally, teams that contribute to the innovation stage or the minimum viable product (MVP) stage exhibit a stronger product mindset. The MVP stage is the most rudimentary version of a product that meets the minimum requirements while also allowing for future enhancements.
The levels of product mindset of individuals also vary based on their roles. Generally, those in positions such as product owners, product managers, and design experts tend to have a higher level of product mindset. However, the extent to which one adopts either a product or project mindset can also be influenced by their professional journey. Those who are familiar with traditional ways of working, such as the waterfall model, are more likely to have a stronger project mindset than a product mindset.
Although adopting a product mindset generally offers numerous advantages, there are circumstances, roles, or team members for whom it may not be as effective. Examples include:
- Limited experience and exposure
- Being accustomed to working on only small pieces of functionality
- Having a project mindset, with a focus on completing tasks within a set time frame, rather than understanding the end objectives
- Dependence on digital tools that increase productivity but stifle creativity
- Lack of a complete system overview
- Being overwhelmed with workload
- Different work locations or product usage locations
- Inadequate skillsets among team members
Developing a Product Mindset
The adoption of agile product development nurtures a product mindset. In this approach, product owners and managers prioritize faster delivery and quick feedback on epics, features and user stories. All the functions within agile development, when implemented effectively, result in developing a product mindset.
Nonetheless, various agile practices have proven to be especially effective in fostering a product mindset, such as:
- Planning poker
- System demo
- Ceremonies with product owners and product managers
- Backlog refinement
- Test-driven development
- Behaviour-driven development
One of the key enablers of agile product development is ’transparency’. If transparency levels aren’t adequately maintained amongst stakeholders, the ecosystem becomes rigid and impacts agility. By having a high level of product mindset among team members, it is possible to prevent such situations.
Cross-functional teams trained in agile development systems possess necessary skills to boost the level of product mindset and technical agility within the team.
Additionally, promoting a culture of continuous learning through hackathons and innovation events can further enhance the product mindset throughout the organization. Possessing a robust product mindset is essential for the agile product development process and for creating exceptional products.
Overall, a product mindset can enable organizations to be more agile, responsive, outcome-driven and customer-focused, leading to efficient project management and effective deliverables.
Guest contributor Prathibha Gade is the Global Practice Head – Agile, InfoVision, a US-based IT services and solutions company with a vision to empower business organisations and transform them into intelligent data-driven digital enterprises by placing intuitive tech in their control. Any opinions expressed in this article are strictly that of the author.