- The various agile contracting approaches.
- The fundamentals embedded in an agile contract.
- The use of an assessment tool for the agile approach
- The contractual phases of the project.
By the end of this article, you’ll have significant tools to work with your client to make important decisions about the type of contract to make, whether it’s in time and materials (T&M) or fixed-price, as well as the methodology to be followed, whether it is an approach to sequential (V-Cycle) or Iterative Agile.
Agile Contracting Approaches
In an Agile project, the CLIENT and SERVICE PROVIDER teams work closely together to bring the development teams closer to the business teams. The roles and responsibilities of the CLIENT and the SERVICE PROVIDER evolve according to the context. Nevertheless, the contract remains an essential element in establishing the relationship between the CLIENT and the SERVICE PROVIDER:- The commitment of resources (on a time-of-sale) remains the simplest contractual form to initiate an Agile project. The responsibility for demonstrating non-compliance with the commitment lies with the CLIENT.
- The commitment to results (in a fixed price) responds to the need to guarantee a specific result within a predefined budget. The responsibility for demonstrating compliance with the commitment rests with the SERVICE PROVIDER.
- The goal is to design an Agile contract that inspires confidence in BOTH PARTIES in their ability to deliver on each other’s commitments while respecting the values and principles of the Agile Manifesto.
- It’s hard to say exactly what’s going to change along the way.
- It’s hard to fully commit to collaboration.
- A contract under time and materials (T&M) (where the CLIENT takes the risks by committing to the means).
- A fixed-price contract (where it is the SERVICE PROVIDER who takes the risks by guaranteeing results).
In both situations: The product is not the focal point of the project, and mutual interest is not preserved in the absence of a fair distribution of risk.The Agile contract should be designed so that the benefits and risks are better shared when we work together to create the product. This is done by breaking down the work into small steps called sprints and quickly validating what we are doing.
Here is a list of criteria to consider when deciding which project management method is best for your situation, whether you opt for a time and materials (T&M) contract, a fixed-price contract, or an agile approach.
Possibility of | Time and materials (T&M) | Fixed Price | Agile |
---|---|---|---|
Budget modification | Yes | No | Yes |
Changing the Scope | Yes | Via Amendment | Yes |
Intermediate product | No | No | Yes |
Resource Selection | Yes | No | Yes |
Collaboration | Limited | Average | Strong |
Risk carried by | Customer | Provider | Client and Service Provider |
Constraints | Cost | Cost + Time + Scope | Cost + Time |
THE SERVICE PROVIDER
Time Commitment & Budget
Product requirements are defined (granularity, limits, cost) for a fixed budget and timeframe At the end of each sprint:- Evaluate the adequacy of the product increment with your challenges
- Encourage the incorporation of new requirements, replacing others that are of lower priority.
Frequent & Quality Deliveries
Each iteration creates a high-quality interim version, which can be put into production if necessary. No compromise on quality.Visibility & Collaboration
Joint sharing in full transparency of the project’s progress: deadline, functional coverage, risks, tests, etc.THE CLIENT
Perpetual Challenge of Need
Give yourself the ability to identify and prioritize requirements (if everything is a priority, nothing is a priority) Agree to postpone secondary or unclear requirements to future versions.Maximum uptime
Ensure a strong presence throughout iterations:- Prepare iterations (content, acceptance scenarios)
- Get involved in design workshops
- Provide business support during development
- Quick acceptance (5 days) reiterate each iteration
Decision-making ability
Product Owner and Product Owner Proxy (Client) in permanent collaboration to facilitate daily and strategic decision-making.Fundamentals of an Agile Contract
After orchestrating the completion of more than 30 projects by adopting the agile methodology, we distilled a series of essential points that should be integrated into every agile contract:- Putting the product at the heart of the project
- Empowering teams
- Collaborating effectively
- Managing change
- Sharing the risks
NB: The word Unit of Work (UW) means one day of development + unit tests
Share the Product Backlog at the beginning of the project
- Be sure to have a shared initial vision of the software.
- To give the CLIENT confidence when bartering requirements.
- Have a prioritization that takes into account the true business value.
- Have a backlog that uses business vocabulary.
- Product Backlog : The scope of the project is defined by the project’s priorities within the budget.
- Product Backlog Review: Ability to review the Product Backlog during the course of the project.
Sharing the Product Vision
- Roadmap Committee: before each Release (agile framing if necessary), review the vision and the means to achieve it.
- Product Backlog Review: Adjustment of the current Release.
Simplification at the centre of concerns
- Technical-functional workshops: The development team should propose simplifications of features or ways to stay in the native of the product.
- Product Backlog Review: Adjust costs if necessary.
Deliver at each sprint
Temporary acceptance for each Sprint
- It is the Product Owner’s responsibility to check the quality of the product even in the event that he delegates a PART of the verification to a Quality Analyst of the SERVICE PROVIDER.
- Obligation of the CLIENT to test each Sprint delivered and to pronounce the acceptance before the next Sprint.
- A provisional acceptance report is issued for each Sprint acceptance.
- Follow-up of the default rate (included in the Project Plan).
Importance of the Product Owner
- Mastery of the product’s challenges and the specificities of the business.
- To the delegation of decision-making.
- Is available to be able to arbitrate, to decide in a short time (< 1 day on average)
- Knows how to relinquish demands (accepts the principle of barter)
- Product Owner: The CLIENT commits to provide a Product Owner with the required qualities.
Team Excellence
- Indicate in the special conditions, the key members of the team necessary for the success of the project: these members cannot be replaced without the approval of the CLIENT on the new profile (plus long notice period)
- To be contracted only at the request of the CLIENT with a reciprocal clause on the CLIENT’s key players.
Availability of the CLIENT
- Indicate, under the special conditions, the estimated load of the typical profiles required for the proper execution of the project.
Service Levels
- The SERVICE PROVIDER commits to carry out the services in compliance with the Service Levels defined in the Project Plan.
- Service levels are defined during Sprint Zero and then validated in the calibration phase of the project.
- Service levels can mainly be used to measure the performance of the SERVICE PROVIDER’s and CLIENT’s teams.
Duty of transparency
- Each PARTY commits to inform the other PARTY of any difficulty it may encounter, and which is likely to disrupt the proper performance of the services, as soon as possible from the knowledge of this difficulty
- In the event of a difficulty, the PARTIES will seek in good faith a solution to overcome this difficulty while respecting the balance of the Contract or to share the related risks equitably
Proximity of team members
- Indicate the place of service under special conditions
- Plan to set up a dedicated space for the project team
- If this is not possible, provide enough meeting points, and travel should be made to the Development team
- If possible, take travel expenses out of the budget and re-invoice them at the actual level
Just-in-time specifications
- Define a Specification template that is most suitable for the project at the beginning of the project and the expected degree of depth
- The Product Owner is responsible for providing the development team with validated specifications, even in the event that he delegates a PART of this writing to a Business Analyst of the SERVICE PROVIDER
- To avoid any break in loads, the Sprint specifications are considered validated during the Sprint Planning. Any subsequent changes will be the subject of a new Product Backlog item
Continuous Improvement in Retrospect
- The action plans resulting from these retrospectives must be taken care of jointly by the SERVICE PROVIDER and the CLIENT
- The retrospective report must be presented to the Steering Committee. Recurring problems will be dealt with in the Steering Committee.
Commitment in units of work
- Commitment of the SERVICE PROVIDER to a number of Units of Works to be produced within a given period.
- Unit of Work barter system based on Product Backlog priorities.
Commitment to Sprint Planning
- The Sprint Planning is the commitment to the costing in unit of work of the items selected for the Sprint .
- Only completed items count towards the Sprint Velocity.
- Any subsequent changes concerning an item embedded in Sprint Planning will be considered as a new item in the Product Backlog to be prioritized and costed.
Estimating requests
- Define in sprint 0 the method of estimating the elements of the Product Backlog (included in the Project Plan)
- In the case of additions or changes, the initial Product Backlog serves as an abacus by comparing features of similar complexity.
- 1 Unit of Work corresponds to 1 day of coding and unit testing by default.
Early Exit Clauses
- Exit upon early achievement of objectives, the CLIENT must have the possibility to exit the project with a win/win share of the unused unit of work (UW) (several cases are provided)
- Economic termination clause for the SERVICE PROVIDER based on the Projected Profitability (Velocity / days consumed): threshold to be defined.
- Early Exit Warning Period = 2 sprints.
Outbound reversibility
- Commitment of the SERVICE PROVIDER to offer a reversibility quote at the request of the CLIENT
Exit clause at the end of the launch
- Define Sprint 0 (Launch) Acceptance Criteria
- In the event that the criteria are not met, it is possible to extend sprint 0 or exit the contract
Service Level Calibration
- Final commitment of the SERVICE PROVIDER on service levels (including velocity) at the end of the first 3 sprints
Solidarity performance
- Defined Service Level Objectives in the Project Plan
- Product-Specific Objectives
- Clause de Bonus/Malus
Invoicing
- On a flat-fee basis, invoicing is done per sprint in proportion to the unit of work delivered
- For time and materials (T&M) , billing is based on time spent
Agile Assessment Tool
Not all projects lend themselves to agile methodology, and sometimes it’s best not to approach them in agile mode. In many cases, it is better to maintain a more traditional approach, such as the sequential V-cycle. In this approach, we start by defining the product in detail, then move on to the development phase, followed by the validation phase. The table below presents a series of criteria: if the cursor is on the right-hand side, it suggests that an agile approach can be considered, while if it is on the left-hand side, a classic sequential approach is preferable.Criterion | V-Cycle (Waterfall) | Weight Methodology | Iterative Agile |
---|---|---|---|
Vision | Clear / Shared | Blurred | |
Scope | Detailed / Accurate | Moving / Blurred | |
Requirements | Stable | Informal | |
Decision-Making | Long / Collective | Fast / Centralized | |
Customer Availability | Limited | Strong / Dedicated | |
Project size | < 200md | > 1000md | |
Schedule | Flexible | Time to Market | |
Budget | Editable | Fixed “Design to cost” | |
Approach | Sequential / V-Model | Agile / Iterative |
Contractual Phases of an Agile Project
This table summarizes the five stages of an agile project, namely the pre-sales phase, the initial launch sprint, the adjustment phase, the execution phase, and finally reversibility.Pre-sales
- Define the project budget and schedule from the initial Product Backlog based on the product vision and roadmap.
- If the inputs are not sufficient, propose an agile framework to define the vision and roadmap of the product.
1
Launch (Sprint Zero)
- Ensure that all the predefined criteria are met to start development in good conditions, otherwise postpone or cancel the development.
Calibration (sprints 1 to 3)
- Calibrate the development team’s service levels for continuous operational improvement.
- Make a definitive commitment to service levels.
Operational (sprints 4 to N)
- Ensure that commitments will be kept.
- If not, take the necessary steps to meet the commitments.
4
Reversibility
- If requested by the CLIENT, transfer the acquired skills to a third party in charge of taking over the corrective and evolutionary maintenance of the Product.
Pre-sales
- Define the project budget and schedule from the initial Product Backlog based on the Product vision and roadmap
- If the inputs are not sufficient, propose an agile framework to define the vision and roadmap of the product
1
Launch (Sprint Zero)
- Ensure that all the predefined criteria are met to start development in good conditions
- Otherwise, postpon or cancel the development
2
Calibration (sprints 1 to 3)
- Calibrate development team service levels for continuous operational improvement
- Make a definitive commitment to service levels
3
Operational (sprints 4 to N)
- Ensuring Commitments Will Be Met
- If not, take the necessary steps to meet the commitments
4
Reversibility
- At the request of the CLIENT, transfer the acquired skills to a third party in charge of taking over the corrective and evolutionary maintenance of the Product
5
0 Comments