Common Pitfalls in Commerce Projects
In today's fast-paced digital landscape, successful commerce projects require careful planning, strategic execution, and a keen understanding of the unique challenges that arise along the way. Cabiri has witnessed firsthand the common pitfalls that organisations encounter when embarking on their commerce ventures. From data migration woes to testing oversights, these hurdles can hinder progress, lead to costly setbacks, and even impact the long-term success of a project.
In this article, we delve into some of the most prevalent project pitfalls we have observed at Cabiri. By shedding light on these challenges, we aim to equip businesses and project stakeholders with valuable insights and strategies to avoid or overcome them. Drawing upon our extensive experience in assisting clients across various industries, we provide actionable recommendations to navigate these pitfalls and ensure the smooth execution of commerce projects.
Whether you are in the early stages of planning a migration, exploring platform upgrades, or looking to enhance your existing commerce solution, this article serves as a practical guide to help you identify and mitigate potential pitfalls along the way. By being proactive and addressing these challenges head-on, you can enhance project outcomes, deliver a superior user experience, and achieve your commerce objectives efficiently and effectively.
Still working from a frontend first approach in your composable commerce system. It is crucial to reevaluate the technical strategy to ensure the rapid delivery of a robust and composable commerce site while maintaining an exceptional customer experience. The traditional approach needs to be flipped on its head. With composable commerce, it becomes imperative to invest time and effort upfront to seamlessly integrate key systems and establish a streamlined release and deployment process across multiple environments. By prioritising these essential foundations, developers can subsequently shift their focus to enhancing the customer experience, confident in the stability and scalability of the underlying infrastructure.
Working to deliver part of all features, over complete features. We strive to deliver features incrementally, focusing on essential components before completing the entire feature set. Our development approach prioritizes building a strong foundation and critical path first. By doing so, we allow business users to engage with the project right from the start, experiencing a basic journey. Subsequently, we schedule additional epics once the entire feature can be delivered, ensuring a comprehensive end result. This methodology facilitates parallel contributions from multiple individuals, optimizing efficiency and avoiding conflicts. It also allows for early testing and seamless integration of new features. Furthermore, this iterative approach fosters enhanced collaboration, as stakeholders can actively engage with and provide input on the evolving product, resulting in a more responsive and customer-centric development cycle.
Delaying data migration till the tail-end of the project. Prioritising other areas of the project first might seem sensible, but doing so frequently results in serious difficulties and setbacks. One important point to keep in mind is that relying solely on a sample dataset is insufficient when you have substantial data spanning several years. Transferring data between systems is not a straightforward procedure; correctness and integrity must be guaranteed through thorough analysis, cleansing, and transformation. Organisations run the risk of neglecting the complexity involved and underestimating the time and resources needed for a successful transfer by delaying this crucial process. Delays in data migration may therefore impede project development, interfere with business operations, and maybe lead to data discrepancies, which may have a significant impact on the effectiveness of the organisation and its capacity for making decisions. Prioritising data migration early in the project, allocating sufficient resources, and thoroughly assessing the data to be migrated, including the whole historical data, are necessary to avoid these risks and ensure a successful and seamless transition.
Not having sufficient test coverage established throughout delivery. Testing plays a vital role in ensuring the quality and stability of the developed solution. However, when test coverage is inadequate or neglected until the later stages of the project, it can lead to various issues. Insufficient test coverage means that critical aspects of the commerce system, such as core functionalities, user flows, and integrations, may not be thoroughly tested. This increases the likelihood of undetected bugs, performance issues, or compatibility problems arising during deployment or post-launch. Furthermore, without a robust testing strategy in place from the early stages, there is a higher chance of overlooking edge cases, user scenarios, or specific business requirements, which can negatively impact the user experience and overall system reliability. To avoid this pitfall, it is crucial to establish comprehensive test coverage throughout the project lifecycle, employing a combination of unit tests, integration tests, end-to-end tests, and user acceptance testing. This ensures that potential issues are identified early, minimising rework, reducing the risk of critical defects, and ultimately delivering a more reliable and stable commerce solution.
Not allocating resources at project kickoff to learn the new system. The optimal time to initiate upskilling and training for the team taking over the new platform is at the project's outset. Hands-on experience surpasses surface-level documentation and overview sessions conducted near the end of the project after the system has gone live. Early training ensures that the team gains comprehensive knowledge about the decisions made during the delivery phase, fostering a sense of ownership and investment in the product they helped build. This firsthand experience empowers them to provide valuable business context, resulting in a superior overall product. Conversely, deferring training until the project's end increases the risk of requiring extended support contracts to ensure business-as-usual operations and delays progress on other initiatives that await project completion. By prioritising training from the project's inception, organisations can avoid these pitfalls, enabling a smooth transition, and fostering a team that is well-equipped to handle the new system efficiently and effectively.
Having multiple priority-0 programmes in progress at the same time. Within a business, various stakeholders often demand that their initiatives take precedence and be completed first. Failing to communicate clear priorities and establish realistic timelines can result in delays across all initiatives, leaving everyone disappointed instead of just the lowest-priority project. Moreover, the toll on technology teams is substantial as they are constantly pulled in multiple directions and perpetually playing catch-up. Burnout becomes a real risk, affecting team morale and productivity. When faced with multiple initiatives with strict deadlines running concurrently, it is essential to support the teams in overcoming these challenges. Consider hiring tactical resources that can be allocated to each initiative, allowing for more even distribution of workload and increased productivity. By implementing effective resource allocation strategies, you can mitigate the negative impact of juggling multiple priority-0 programs, maintain team well-being, and ensure successful project outcomes.
Insufficient business engagement throughout the project. It is crucial to involve the business stakeholders at every stage of the project lifecycle. During the discovery phase, their input is essential to clearly understand their needs and expectations. Throughout the delivery phase, their active participation allows for incremental development and timely feedback that can be incorporated into the project. Business engagement is particularly crucial when facing technical challenges or requiring clarifications. For instance, a seemingly simple feature might reveal complexities that require more time than initially estimated. By involving the business, they can assess the value of investing additional time and resources into that particular feature compared to other requested features. This engagement also presents an opportunity for them to explore new possibilities and benefits within the agile framework. Understandably, there may be concerns about protecting their time due to busy schedules. However, by actively engaging the business throughout the project, it fosters a sense of ownership, and alignment, and ensures that their priorities are taken into account. Ultimately, this collaboration leads to more successful outcomes and maximises the value delivered to the business.
Resisting the formation of cross-functional teams. There is a growing emphasis on creating full-stack self-serve squads, which provide numerous benefits. These squads offer talented developers the opportunity to expand their knowledge and expertise by working across different systems and collaborating closely with stakeholders. By doing so, they can establish stronger inter-team relationships and foster a deeper understanding of previously siloed legacy systems. This broader understanding enables the wider team to be more sympathetic to the technical limitations that may result in a "no" response to new change requests, rather than interpreting it as hostility or rigidity. To maximise the benefits, it is important to regularly rotate team members' participation on a project or sprint basis. This approach not only ensures that everyone gets a chance to contribute their skills and knowledge but also boosts morale by allowing resources to be part of important, high-profile projects where they can prove themselves and celebrate successes during launch. By embracing cross-functional teams, organisations can leverage the collective expertise of their members, foster collaboration, and create an environment that nurtures innovation and growth.
User stories are structured too granular and technical. While it's impossible to capture every detail, efficient discovery during project kickoff provides the necessary vision to establish technical foundations and build a backlog. However, when user stories are excessively technical, business users may struggle to validate and sign off on features. This can lead to prolonged User Acceptance Testing (UAT) and Business Acceptance Testing (BAT) phases at the project's end. Additionally, technical user stories often detach the team from the value provided by specific features, hindering their ability to make recommendations based on experience and explore alternative approaches that may be more efficient or resilient, while still achieving the desired outcomes.
The problem is further exacerbated by the excessive granularity of the stories, resulting in an endless backlog that seems to never decrease, which can have a demoralising effect on the team. Furthermore, other teams may face challenges in scheduling their work around yours, as they may be uncertain about the completeness and readiness of the delivered features.
To address these issues, it is essential to strike a balance in user story granularity, ensuring they are both understandable to business users and provide enough technical context for the development team. Collaborative discussions between business stakeholders and technical experts can help refine user stories and prioritise features effectively. By focusing on the desired outcomes and involving the right stakeholders in the process, teams can avoid excessive technicality, streamline validation processes, maintain team morale, and foster better collaboration and coordination across different teams involved in the project.
Building a system without first defining the release process and environment setup. In today's fast-paced environment, the ability to roll out changes rapidly and with confidence is essential. Long gone are the days of holding pages for hours; now, deployments happen multiple times a day and can be completed in minutes. It is critical to establish and embed the release process early on, even before development begins. By doing so, potential limitations that directly conflict with the desired end-state can be identified and addressed proactively. Attempting to make changes and fix the release process later in the project lifecycle requires a substantial amount of effort and can introduce delays to the entire program. It is far more efficient to invest the necessary effort upfront to define a streamlined release process and set up the appropriate environment. This ensures a smooth and efficient delivery process, minimising disruptions, and allowing for rapid and confident deployment of changes throughout the project's lifecycle. By prioritising the establishment of the release process and environment setup from the outset, organisations can save valuable time and resources while ensuring a successful and timely project delivery.
Resistance to change is a common challenge that can impede project success. The phrase "This is how we have always done it!" can evoke a sense of unease. To overcome this mindset, it is crucial to focus on changing people's perspectives and establishing collaborative ways of working right from the project kickoff. Nurturing a flexible culture that embraces problem-solving makes the transition easier. It's important to take a step back and reflect on why this change is meaningful. What might be lost by resisting adaptation? Introducing new platforms brings both benefits and challenges and understanding the underlying motivations can help ease the transition. By questioning the resistance and exploring the reasons behind it, individuals and teams can foster a mindset open to change and growth. Embracing new ways of working and being receptive to change ultimately leads to improved outcomes and increased innovation.
The absence of a designated point of contact prepared to make decisions is a common pitfall that can hinder project progress. Decision-making is often challenging, as everyone wants to make the best choice and avoid making the wrong decision. To address this issue, it is crucial to identify one person who takes on the role of the "Product Owner." This individual can consult with stakeholders within the business but ultimately holds the authority to make decisions. Delaying decisions can have a cascading effect, leading to weeks of waiting for actions that could be completed in a day and causing significant delays in complex programs.
Creating an environment that embraces mistakes and eliminates a blame culture can help prevent this issue. Supporting the Product Owner with the understanding that mistakes are part of the learning process fosters confidence in their decision-making abilities. The Product Owner needs to have the backing of their peers and the executive team, knowing that they were selected for their expertise and that any mistakes made will not have catastrophic consequences. By cultivating a culture that encourages risk-taking, learning from mistakes, and collective support, the decision-making process can become more efficient and timely. This, in turn, helps projects progress smoothly and avoids unnecessary delays.
Or too many stakeholders identified in decision-making. Involving too many stakeholders in decision-making can often lead to challenges. Decision by Committee can become cumbersome and slow down the process. While it is important to make everyone feel valued and included, it is crucial to have one key overruling member identified who can make the final call when conflicts arise.
By designating a single decision-maker, the decision-making process becomes more efficient and streamlined. This individual can gather input and insights from various stakeholders but ultimately has the authority to make the final decision. This approach strikes a balance between incorporating diverse perspectives and ensuring timely decision-making. It enables effective conflict resolution and prevents the decision-making process from becoming stagnant or mired in endless discussions.
Identifying a key decision-maker who can take charge when conflicts arise empowers the team and allows decisions to be made more decisively and effectively. It ensures accountability and provides clarity on the decision-making hierarchy, enabling smoother project progress and avoiding unnecessary delays or bottlenecks.
In conclusion, recognising and addressing common pitfalls in commerce projects is crucial for achieving successful outcomes. By understanding the potential challenges such as delaying data migration, insufficient test coverage, lack of business engagement, resistance to change, and ineffective decision-making processes, project teams can proactively mitigate risks and enhance project efficiency.
At Cabiri, we specialise in commerce consultancy and are well-versed in navigating these pitfalls. Our expertise lies in identifying and addressing project challenges at every stage, from project kickoff to delivery and beyond. We emphasise the importance of early data migration, comprehensive test coverage, and active business engagement to ensure project success.
Furthermore, we understand the significance of fostering a flexible and adaptable culture that embraces change. Our team at Cabiri can help organisations overcome resistance to change by providing strategies to shift mindsets and cultivate a collaborative environment. We promote a culture of continuous improvement, where mistakes are seen as learning opportunities rather than failures.
Moreover, we recognise the importance of establishing effective decision-making processes. Cabiri can assist in defining clear roles and responsibilities, enabling efficient decision-making and minimising delays caused by a lack of decisive actions.
With Cabiri's expertise, organisations can navigate these common pitfalls, optimise project outcomes, and drive successful commerce projects. We offer tailored solutions, expert guidance, and a deep understanding of the commerce landscape to help businesses achieve their goals and thrive in the digital marketplace. Partner with Cabiri to ensure a seamless and successful commerce project journey.