Dr. Darnell’s Class Notes VI
Dr. Darnell’s Class Notes
Summer (2023), Week 9:
Competency: Contract and Procurement Management for Agile Projects.
Introduction
When managing contracts and procurement in Agile projects, you must consider several factors. Agile methodologies propose several contract models that are more adaptable and flexible, such as the Incremental Delivery Contract, Time & Materials Contract, and others. Each contract model has unique advantages and disadvantages that should be considered in the project context (Ambler, 2013).
Agile projects typically use iterative development cycles, which help teams respond to change and uncertainty over following a fixed plan (Cohen, 2020). In traditional projects, procurement and contract management usually involve long-term contracts with detailed specifications, which can be inflexible and incompatible with Agile methodology. Instead, Agile contract management seeks to manage contracts in ways that allow room for changes and adaptations in the project requirements and priorities (Stark, 2019).
The focus of Agile procurement is on delivering value incrementally. Contracts in Agile projects are usually designed so that every incremental delivery adds value to the customer (Pichler, 2010). This requires careful planning and ongoing coordination with all stakeholders.
Beyond just the type of contract, the nature of vendor relationships also significantly impacts Agile procurement. Agile methodology encourages treating vendors as partners rather than just external entities, enhancing collaboration and meaningful contributions to the project (Boehm & Turner, 2005). Procurement in Agile is typically done incrementally, which allows for much-needed flexibility in the project (Eloranta et al., 2015). Risk management, too, is a continuous process in Agile projects, ensuring that any changes or challenges can be addressed iteratively (Dikert et al., 2016).
Here are some ways that procurement and contract management are adapted for Agile:
Agile Procurement and Contract Management
Agile Contract Models
Agile contract models provide a foundation for navigating the complexities and uncertainties that characterize Agile projects. The suitable contract model for an Agile project depends on many factors, including the project's specific circumstances, the organization's risk tolerance, the relationship with the supplier, and the desired level of flexibility and control. Here is an overview of some Agile contract models:
Choosing the suitable contract model is not a one-size-fits-all decision but is contingent upon the project's nature and the organizational needs.
Agile Vendor Relationship Management
Agile methodology strongly emphasizes collaboration and partnerships rather than rigid hierarchies or relationships (Pichler, 2010). This philosophy extends to vendor relationships as well. In Agile procurement, vendors are not simply considered suppliers or service providers; they are treated as partners actively contributing to the project's success.
In traditional procurement and contract management, vendors are often seen as external entities that deliver a predefined product or service for a negotiated price. They are typically provided with comprehensive specifications, and communication is primarily limited to progress updates or dealing with issues. This approach creates a more transactional, less collaborative relationship between the client and vendor.
Agile procurement views vendors as valuable partners in the project delivery process. The Agile approach embraces uncertainty and recognizes that project needs may evolve. As such, vendors are involved early and continually throughout the project. Rather than being given a fixed set of requirements, they are part of the iterative planning, development, and review processes. This involvement can range from participating in sprint/iteration planning and daily stand-up meetings to contributing to retrospectives and other review activities.
For example, in an Agile software development project, the client might include the vendor in initial product backlog grooming sessions instead of supplying the vendor with a fixed set of requirements. This not only allows the vendor to understand the overall vision of the product but also provides an opportunity to contribute their expertise to help refine user stories and acceptance criteria. As the project progresses, the vendor participates in sprint reviews, where they can demonstrate their work, receive immediate feedback, and adapt future work plans based on this feedback.
This collaborative approach fosters a strengthened partnership between the organization and the vendor. It also helps the vendor feel a sense of ownership and commitment to the project's success. Ultimately, this can lead to better project outcomes and a more successful Agile project.
This collaborative approach to Agile Vendor Relationship Management brings several benefits:
However, cultivating this type of vendor relationship requires a significant shift in mindset for many organizations. It requires openness, frequent communication, shared decision-making, and a willingness to adapt to changes. This can be a challenge in organizations used to more traditional, transactional vendor relationships. Both parties must be willing to work closely, share information openly, and adapt to changes. This can be a significant change from traditional vendor relationships, which are often more transactional and less collaborative (Pichler, 2010).
Incremental Procurement
The principle of incremental procurement is aligned with the Agile project management's iterative and incremental approach. Instead of procuring all resources, such as hardware, software, human resources, or vendor contracts, at the beginning of the project, Agile procurement acquires them in smaller increments as they are needed. This incremental approach is guided by the principle of prioritizing and delivering the most valuable features or components first (Highsmith, 2013). In the Incremental Procurement model, procurement is not seen as a one-time activity that happens at the beginning of the project. Instead, it is an ongoing activity that aligns with the nature of Agile project delivery, which breaks down projects into smaller, manageable parts, known as iterations or sprints.
The primary goal of incremental procurement is to reduce the risks associated with procuring all resources upfront. In the traditional project management model, where a project's requirements are expected to be fully defined at the beginning, the complete procurement of resources makes sense. However, Agile projects acknowledge that project needs can change significantly over time. As such, procuring resources as they are needed can prevent waste and allow greater flexibility.
Consider an Agile software development project as an example. The team could initially procure enough server capacity and software licenses for the first few iterations. These resources would be used to develop, test, and deliver the highest priority features. As the project progresses and more is learned about the system's performance, user behavior, and other factors, the team could make better-informed decisions about additional resources. For instance, they might find that they need more server capacity than initially expected due to higher-than-anticipated user traffic. Alternatively conversely, they might discover that they can optimize their code to use fewer resources, reducing the need for additional server capacity. From a human resource perspective, the team might initially contract a few key roles, such as a software developer and a tester. As the project progresses and the need for specialized skills becomes more apparent, they can bring in additional resources, such as a database specialist or a user experience designer.
This incremental approach offers several advantages:
Incremental procurement requires a shift in mindset and demands more active procurement management throughout the project. However, for organizations willing to embrace these challenges, it can offer significant benefits in terms of risk mitigation, cost management, and project success.
Iterative Risk Management
Risk management is a critical aspect of any project, and Agile procurement performs iteratively in line with the Agile philosophy. Agile project management recognizes that projects are inherently uncertain and that risks and issues will emerge over time. Instead of trying to identify and plan for all possible risks at the start of the project, Agile risk management involves continuously identifying, assessing, and managing risks throughout the project lifecycle (Larson & Gray, 2018).
This iterative risk management approach aligns well with the iterative nature of Agile projects. At the start of each sprint or iteration, the project team and any involved stakeholders would review the current risk log, identify any new risks, assess the impact and likelihood of these risks, and plan appropriate risk responses. These could include mitigating the risk, transferring it, accepting it, or exploiting it if it represents an opportunity.
After implementing the risk responses, the team would monitor these actions' effectiveness and make any necessary adjustments. This ongoing risk identification, assessment, response, and monitoring cycle ensures that the project is always prepared to deal with emerging risks. For example, consider an Agile software development project. During the development process, the team might identify a risk related to integrating a new software component. Instead of waiting for a significant release to address this risk, the team could prioritize tasks related to this risk in the next sprint. They could then monitor the outcome and adjust their approach as needed based on the results.
This iterative risk management approach provides several benefits:
领英推荐
Overall, the iterative risk management approach in Agile Project Management is a critical element of Agile procurement and contract management, helping to manage uncertainty and drive project success. This approach is especially crucial in Agile procurement and contract management because risks can arise at any stage, from vendor selection and contract negotiation to delivery and contract closure.
Here are several key strategies used in Agile risk management for procurement:
Agile risk management in procurement is a dynamic, ongoing process that seeks to proactively identify and manage risks, facilitating better decision-making, improved project outcomes, and stronger vendor relationships.
Value Delivery
One of the Agile project management principles is the continuous delivery of valuable software or results. In the context of Agile procurement, this means contracts should be structured to deliver incremental value to the client, not just at the end of the project but at each iteration or sprint (Denning, 2018).
In traditional procurement, the value is delivered at the end of the project, and the contracts are usually output-based. This means that the contractor must deliver a predefined product or service, and the value or benefits are only realized at the end. However, in Agile procurement, the focus is shifted to value-driven contracts, where value is not delivered at once but incrementally after each iteration or sprint.
For example, a software development project being managed using Agile methodologies might involve several sprints or iterations to build different software features. Rather than waiting for the entire software to be built and delivered, each feature can be considered a value-adding increment and delivered as it is completed. This gives the client early access to each feature and allows for immediate feedback, which can be used to improve future sprints.
These contracts are customer-centric and focus on customer satisfaction as a measure of success rather than merely adherence to predefined requirements. Therefore, the meaning of "value" is primarily dictated by the customer's needs and perception. Agile contracts aim to provide maximum value to the customers at each project stage. To ensure that the customer's needs and the project's objectives are met, the contracts are designed so that each delivery adds value to the project, irrespective of its size. For example, in an Agile software development project, a contract could be structured to deliver features incrementally, with each feature adding value to the customer.
The incremental delivery of value also provides an opportunity for feedback from the customer, allowing for adjustments and refinements in subsequent iterations. This enables the Agile team to focus on high-priority features and ensures the project is continually aligned with the customer's needs and expectations.
Summary
We explored several Agile contract models that lend themselves to Agile philosophy's iterative and adaptive nature. These contract types include Incremental Delivery Contracts, Time & Materials Contract, Money for Nothing/Change for Free Contract, Target Cost Contract, and others such as Graduated Fixed Price Contracts, Custom Contracts, Incentivizing Collaboration contracts, Outcome-based Contracts, and Open Scope Contracts (Fowler, 2003; Larson & Gray, 2018; Leffingwell, 2011; McKinsey & Company, 2020; Miranda, 2014; Stark, 2019; V?h?niitty, 2012).
We also discussed vendor relationships in the context of Agile procurement. Agile methodologies emphasize the importance of collaborative relationships with vendors, viewing vendors not as outsiders but as integral partners in the project process (Pichler, 2010). The discussion further examined the concept of incremental procurement in Agile, which allows for adaptability and flexibility as the project progresses (Highsmith, 2013).
Risk management was another central topic in our conversation. Due to their inherent flexibility and responsiveness to change, Agile projects require continuous, iterative risk management (Larson & Gray, 2018).
Lastly, we focused on the principles of value delivery and iterative contracting within Agile procurement. Agile procurement stresses the importance of contracts ensuring incremental value delivery at each iteration or sprint (Denning, 2018). Correspondingly, iterative contracting is an approach that aligns with Agile's iterative development process, enabling changes and adjustments at the end of each iteration (Beck et al., 2019).
References
Ambler, S. (2013). Agile contracting strategies. Dr. Dobb's Journal, 38(7), 18-23.
Beck, K., Beedle, M., Van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., ... & Kern, J. (2019). Manifesto for Agile software development. Agile Alliance.
Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., . . . Thomas, D. (2001). Manifesto for Agile software development. Agile Alliance. https://agilemanifesto.org/
Boehm, B., & Turner, R. (2005). Management challenges to implementing agile processes in traditional development organizations. IEEE Software, 22(5), 30-39. doi:10.1109/MS.2005.129
Cohen, D. (2020). Agile: Project Management for Agile. Pearson.
Denning, S. (2018). Age of Agile: How Smart Companies Are Transforming the Way Work Gets Done. HarperCollins Publishers.
Denning, S. (2018). Age of Agile. Amacom.
Dikert, K., Paasivaara, M., & Lassenius, C. (2016). Challenges and success factors for large-scale agile transformations: A systematic literature review. Journal of Systems and Software, 119, 87-108. doi:10.1016/j.jss.2016.06.013
Eloranta, V. P., Koskela, L., & Koenig, G. (2015). Procurement in the context of lean construction and its development in practice. Procedia Economics and Finance, 21, 110-116. doi:10.1016/S2212-5671(15)00156-6
Fowler, M. (2003). Using an Agile Software Process with Offshore Development. Retrieved from https://martinfowler.com/articles/agileOffshore.html
Highsmith, J. (2013). Adaptive software development: a collaborative approach to managing complex systems. Dorset House Publishing Co., Inc.
Highsmith, J. (2013). Agile project management: creating innovative products. Addison-Wesley.
Larson, E. W., & Gray, C. F. (2018). Project management: The managerial process. McGraw-Hill Education.
Leffingwell, D. (2011). Agile software requirements: lean requirements practices for teams, programs, and the enterprise. Addison-Wesley Professional.
McKinsey & Company. (2020). The agile manager. McKinsey Quarterly.
McKinsey & Company. (2020). Procurement in the age of agility. McKinsey & Company.
Miranda, E. (2014). Can Agile Project Management Be Adopted by Industries Other than Software Development?. Project Management Journal, 45(3), 88-100.
Pichler, R. (2010). Agile product management with Scrum: creating products that customers love. Boston, MA: Addison-Wesley.
Stark, J. (2019). Agile contract creation: A practical approach to using Agile contracts in your projects. Project Management Institute.
Stark, J. (2019). Product lifecycle management. In Product Lifecycle Management (Volume 1): 21st Century Paradigm for Product Realisation (pp. 1-29). Springer.
V?h?niitty, J. (2012). Towards a Menu of Software Business Oriented Agile Contracting Models. In Software Business (pp. 56-70). Springer, Berlin, Heidelberg.
V?h?niitty, J. (2012). Towards an understanding of the business value of product management and product management practices in software product companies. Doctoral dissertation, University of Oulu, Finland.