Sample Fixed Price Agile Contract
This Statement of Work (“SOW”) sets forth the terms under which CLIENT (referred to in this SOW as “Client”) has engaged VENDOR (referred to in this SOW as Exigen Services) to provide certain software development services (the “Services”) as described herein to implement PROJECT (referred to as the “Project”).
2. Background and Requirements
HIGH LEVEL DESCRIPTION OF CLIENT – VENDOR RELATIONSHIP AND PROJECT BACKGROUND
This SOW will cover implementation of previously agreed upon and documented user stories. For a detailed breakdown of these individual stories and story points, please refer to Annex A.
The requirements for this SOW are summarized as follows:
• Exigen Services shall assign a team to provide services according to the schedule defined in Section 4, Project Approach and Organization. The description of this Project can be found in Section 3, Project Description.
• Provided Exigen Services fulfils its obligations concerning delivery of agreed upon story points based on the scope of work defined herein, “Client” will pay for these services based on the agreed payment terms.
• Entering the SOW does not cause termination of the Master Service Agreement. “Client” may continue procuring services from Exigen Services under the Master Service Agreement assuming that Exigen Services shall assign a separate SOW for each project along with a defined project team.
3. Project Description
HIGH LEVEL DESCRIPTION OF THE PROJECT
4. Project Approach and Organization
The scope of the “Project” defined in this SOW is limited to delivery of the functionality defined by the Stories and Story Tests listed in Annex A. The scope of the “Project” also includes quality assurance, and related project management activities. Activities not listed in this SOW are out of the scope of the “Project.”
4.2. Status Reporting
The Exigen Services SCRUM Master will provide a weekly status report in writing to the “Client” Project Manager and Product Owner.
The weekly report will include the percentage of completion for each Story, the pass rate for the Story Tests, key Project delivery milestone status, estimated completion date for each milestone, as well as other information relevant for the delivery of the “Project” as may be agreed upon between the parties’ Product Owner and SCRUM Master. This report will be also used to track action items and escalations between the Exigen Services SCRUM Master and “Client” Project Manager and Product Owner.
A weekly project status review call will be setup between the Exigen Services SCRUM Master and “Client” Project Manager to review the content of the weekly status report.
4.3. Issue tracking
Exigen Services will use systems mutually agreed with the “Client” suggested for requirements management, issue tracking, document management, source control and other support functions during the course of the “Project”.
Exigen Services recommends using following support systems for the “Project”:
• DEFAULT REQUIREMENTS MANEGMENT SYSTEM
• DEFAULT ISSUE TRACKING SYSTEM
• DEFAULT DOCUMENT MANAGEMENT SYSTEM
• DEFAULT SOURCE CONTROL SYSTEM
• DEFAULT WEB CONFERENCING SYSTEM
Both “Client” Project Manager and Exigen Services SCRUM Master must agree priority assignment for all Critical, High and Medium severity issues. In the case of a significant dispute, the issue(s) will be escalated to be resolved via the escalation procedure set forth below.
4.4. Development Methodology
The project will be delivered following the Agile methodology and is currently estimated to consist of XX sprints of X-week duration each. “Client” Product Owner and Exigen Services team will jointly define the contents of each sprint.
4.5 Quality Metrics
• Unit tests coverage (LOC coverage for the source code excluding user interface): > 85%,
• Automated acceptance tests coverage (percentage of acceptance tests that should be automated): > 80%
• LOC per Method: < 20
• LOC per Class: < 300
• Lack of Cohesion of Methods (Henderson-Sellers): > 0.5
• Package (assembly) Distance from the Main Sequence: < 0.7
4.6 Change Control
Both parties recognize that there will be change to scope throughout this project. Change will be accommodated provided that the total Story Points do not exceed the total amount stated in Section 5.
No changes shall be made to Stories being delivered in the current Sprint, Stories already delivered but not yet accepted and Stories accepted.
Any changes, which impact user stories, which have already been delivered, will usually require additional rework and will be considered as new Stories.
Changes to the requirements defined by the Stories and Story Tests listed in the Annex A of this SOW or otherwise affecting the scope (in terms of total Story Points to be delivered) of the “Project” must be approved following the Change Request Process set forth below.
4.7 Change Request Process
4.7.1 Standard change process
The standard change control for this project will be as follows. The only decision makers required here are the Exigen Services SCRUM Master and “Client” Project Manager.
- Once a change is accepted the following steps will occur:
- For each change that Exigen Services and “Client” agree to define as a new story the definition of the story is to be completed by the “Client” Product Owner.
- Analysis of the change by the Exigen Services will take place during the next planned Sprint Planning session
- This analysis will define the story point cost of the new story. If the change applies to an already implemented story then any rework required will be included in the story point cost of the new story.
- The “Client” Product Owner must attend this session
- The “Client” Product Owner must make the decision concerning the change. There are two possible options:
- Accept the change into the Product Backlog and decide which story (or stories) are to be removed
- Reject the change
- Finally, the “Client” Product Owner should prioritize the new story (if added) against the Product Backlog
4.7.2. Extraordinary Change Request
If a change would be expected to exceed the total story point budget set for the project, then the Exigen Services SCRUM Master will:
- Prepare a preliminary Project Change Request Form to identify the nature of the requested change.
- Perform an assessment/review to determine the full impact on the project.
- Escalate this assessment to the Change Control Board (CCB). Membership of the CCB is described in the Annex B.
4.8 Project Team
The “Project” shall be delivered primarily at Exigen Services development centres. Team size and composition may vary. Due to the fixed price nature of this SOW, it is the responsibility of Exigen Services to guarantee delivery of required functionality on specified date and hence to assign an appropriate team to meet the deadline.
“Client” will provide the necessary personnel to work alongside this team and provide timely feedback and any necessary information.
In addition to the stated above, Exigen Services agrees to assign named personnel to this project that is deemed critical for the success of the “Project” by the “Client”. The list of such personnel is:
- NAMED PERSON, ROLE
- NAMED PERSON, ROLE
4.9 Non-productive Time Management
The price for this “Project” is based on the assumption that the Exigen Services team will have timely and accurate information and other deliverables and dependencies from the “Client” and will be able to be productive during the course of the project.
If this is not the case, the issue must be escalated to Change Control Board (CCB) and suitable changes must be made to improve the situation within twenty-four (24) hours of the initial escalation.
If no improvements are made within this time period, the Project schedule and pricing may be affected. A new Story will be created for the purpose of accounting for non-productive time, formal change request procedure will be invoked and a full impact analysis conducted. See the section 4.6 “Change Control” for full details of this process.
4.10 Roles and Responsibilities
4.10.1 “Client” Obligations
“Client” shall afford Exigen Services access to “Client” staff at various times in the project. However Exigen Services is aware that “Client” staff is dedicated to the daily operations of the facilities and will make every reasonable effort to limit the demands on “Client” personnel.
“Client” personnel may have critical knowledge of the operations and the business itself. This knowledge must be made available to Exigen Services in a timely fashion, and is invaluable to the project’s success.
In support of this project, “Client” shall:
- Assign a Project Manager as the single point of contact for issue resolution, activity scheduling, and information collection and dissemination.
- Assign a Product Owner as an owner the Product Backlog and any relate issues
- Notify Exigen Services immediately of any change of personnel for the above roles and ensure that these roles are assigned to a “Client” employee for the duration of this project.
- Provide at least one (1) technical contact with system administration responsibilities and appropriate levels of access privileges to systems and information necessary to perform this service.
- Provide business analysts necessary to provide subject matter expertise for the scope of the project
- Provide access to “Client” systems and network as necessary to perform the services during normal business hours, or at mutually agreed times.Respond to Exigen Services requests that “Client” resources work on issues and tasks not directly stated in the SOW, but having a direct impact on the successful completion of this project.
- Provide support by technical teams for all vendors and third parties as necessary.
- Ensure timely review of and comments on all deliverables provided by Exigen Services
- Review and accept/reject with reasonable comments implemented stories after each sprint.
- If applicable, provide network connectivity and access, and assume all responsibility for network performance and network configuration issues on their part.
4.10.2 “Client” Product Owner Responsibilities
- Defines of each Story and Story Test
- Provides Business Value for each Story
- Decision maker of Story priority within Product Backlog
- Decision maker on “Standard Change Process”
- Obtain feedback from end-users and stakeholders on delivered code
4.10.3 “Client” Project Manager Responsibilities
- Provide overall project status to “Client” management and “Project” stakeholders
- Responsible for ensuring compliance with “Client” obligations
- Coordinate activities between Exigen Services and “Client” personnel
- Sign off Story as complete
4.10.4 “Client” Business Analyst Responsibilities
- Performs user acceptance testing
- Provides SME input to requirements
4.10.5 Mutual Responsibilities
- Conduct project meetings at a mutually agreed time to discuss the project status, issues, new requirements and overall project satisfaction.
- Support and provide sufficient representation at these meetings, which will cover status updates, schedule updates, pending changes, open issues, and action items.
- Support and follow all practices, processes and procedures defined for this “Project”
- Coordinate any changes to the Statement of Work (whether cost impacting or not) with the “Client” project sponsor/coordinator, and process them by submitting changes in writing.
- Collaborate to adjust project schedules and redeploy resources in an expeditious manner in the event of schedule delays that are beyond the control of either party.
- Meet at the conclusion of this project, either in person or via telephone, to bring to closure the project and to capture, discuss, and resolve any project issues that may have arisen since the hand-off of the implementation occurred.
4.10.6 Exigen Services Obligations
- Fulfil the requirements of this SOW as described in section 2
- Assign a SCRUM Master as the single point of contact who owns all Exigen Services activities, issues, etc.
- Notify “Client” immediately of any change of personnel for the SCRUM Maser role and ensure that this role is assigned to an employee for the duration of this project.
- Provide weekly status reporting as defined in Section 4.2 of this SOW.
4.10.7 Exigen Services SCRUM Master Responsibilities
- Coordinates activities of Exigen Services team
- Ensures Agile principles are properly implemented
- Leads daily SCRUM and ensures active participation
- Protects the release ensuring that team meets Story Point target
- Provide Story Point assessment for any new Story
- Meets the acceptance criteria as detailed in Acceptance section
- Owner of all “Project” issues
5. Summary of Deliverables
“Client” has reviewed and approved the requirements defined as Stories and Story Tests and developed in conjunction with Exigen Services for the “Project”. The size of the functionality defined by the requirements has been mutually assessed as XXXX Story Points. Exigen Services recognizes that there will be changes in scope of the Project but commits to delivering the number of Story Points above.
The initial stories and story tests with estimated story points to be delivered are detailed in Annex A to this SOW. These will be reviewed and signed off as complete by the “Client” Project Manager. The working copies of these documents are kept within a project document management system and have been base lined. All changes to these requirements are subject to the change control process documented in this SOW.
Exigen Services will provide “Client” with the following deliverables at completion of the project:
- Binary packages implementing functionality in the scope of this Project
- Source code, build procedures, test scripts, test data and all other artefacts used to produce binary packages above.
- Other non-binary deliverables, such us user manuals, design documentation, training materials, etc. defined by specific user stories in the scope of the project.
6. Terms and Conditions
Project Start Date: DD-MM-YYYY
Project Duration: XX months followed by Acceptance and Warranty period.
Exigen Services teams work 5 days per week excluding country national holidays and the number of vacation days mandated by local Labour Code.
The following pricing shall apply provided Exigen Services receives a purchase order or other written authorization from “Client” referencing this Statement of Work no more than five (5) calendar days after the Effective Date noted on the cover page of this Statement of Work. Until receipt thereof, neither party shall have any obligation to the other. Upon receipt of the purchase order, Exigen Services shall invoice “Client” according terms and conditions set in this SOW.
This project is priced as Fixed Bid. Any changes to the assumptions and scope agreed by both parties and based on the enclosed change management procedure will require a Project Change Request Form, signed by both parties. The Change Request Process (section 4.4.7) defines the steps to be taken to implement any change.
The total project cost is XXXXXXX EUR exclusive of travel expenses
Travel and related expenses, if any, incurred by Exigen Services in provision thereof are not included in the fee described above. The actual travel related charges incurred by Exigen Services will be pre-approved by the “Client” and shall be periodically invoiced as a separate line item.
The “Project” requirements have been defined in the form of Stories and Story Tests, which will be accepted and signed-off by the Exigen Services Project Manager.
A story will be deemed completed at least 80% of the Story tests have been passed and there are no outstanding Critical or High severity issues related to the Story.
“Client” Project Manager must review and test Stories delivered in “Client” system integration environment within five (5) working days after the completion of the Sprint.
Exigen Services will make changes to deliverables according to written feedback. All amendments to the deliverables shall be included in the Project Backlog for the next Sprint or later, as agreed with “Client” Project Manager.
The project will be deemed accepted after two (2) weeks since all deliverables were submitted to “Client” for acceptance testing if there are no Critical or High priority issues outstanding and quality metrics defined in the SOW are satisfied.
Any Critical or High severity software defects identified by “Client” during this period and attributable to mistakes by Exigen Services will be analyzed and fixed at no charge by Exigen Services. Upon fixing these defects, the “Client” Business Contact will provide Exigen Services with an acceptance note in suitable form (written or e-mail). After that, identified software defects (if any) will be processed as according to warranty terms set forth in this SOW.
Warranty period : 45 calendar days from delivery.
Exigen Services will make commercially reasonable efforts to resolve any critical, high or medium severity defects identified by “Client” in Exigen Services’ project deliverables. If changes were made to the deliverables outside the warranty work it is the responsibility of “Client” to demonstrate that the defect is present in the original deliverables before the defect will be considered under warranty.
Issues covered by warranty include functionality defined in this SOW, usability and user interface directly related to the functionality defined in this SOW and performance anomalies directly related to the functionality defined in this SOW. Examples of such performance anomalies include but are not limited to: deadlocks; specific website actions returning abnormally slow response, as compared to similar actions; individual pages for a specific user returning abnormally slow response, as compared to the same page for majority of other users.
Based on the input from the “Client” Product Owner the Exigen Services SCRUM Master will define the severity of the defect. Any disagreements about defect severity during the warranty period will be handled through the escalation procedure defined in this SOW.
9. Early Completion
At any point past X complete sprints, “Client” may choose to prematurely complete the project at the end of any sprint with a notice period of one (1) sprint. Upon early completion, “Client” agrees to:
- Pay Exigen Services 25% of the remaining revenue outstanding calculated based on the number of sprints delivered compared to the total number of Sprints planned.
- Enter into the warranty period with all costs and charges as outlined in section 8. (if applicable).
10. Cancellation or Termination
In the absence of a breach by Exigen Services of Exigen Services’ obligations, if “Client” cancels the services or if Exigen Services terminates due to breach by “Client”, Exigen Services is authorized to invoice, and “Client” shall pay Exigen Services the whole amount of the total project cost, which is deemed liquidated damages.
11. Notices and Contact Information
With the exception of Purchase Orders, acknowledgements, invoices, payments, and other usual and routine communications, all other notices or writings required or permitted under this Statement of Work, including but not limited to notices of default or breach, shall be signed by an authorized representative of the sender, sent to the respective individuals identified below (which may be changed by written notice to the other), and shall be deemed to have been received (i) when hand delivered to such individuals by a representative of the sender, or (ii) three (3) days after having been sent postage prepaid, by registered or certified first class mail, return receipt requested, or (iii) when sent by electronic transmission, with written confirmation by the method of transmission, or (iv) one (1) day after deposit with an overnight carrier, with written verification of delivery.
Annex A: Requirements, Stories and Story Tests
Annex B: Project Change Control Board
The Project Change Control Board (CCB) will be scheduled routinely on a weekly basis throughout the project. If not required the weekly occurrence will be cancelled. In the case of a significant change that requires urgent resolution any member of the CCB can call an extraordinary CCB at any time during the project.
It is the responsibility of the Exigen Services SCRUM Master to schedule the meetings and record meeting minutes and decisions. The Agenda for the meeting together with details of changes to be reviewed will be sent out at least 24 hrs in advance of the meeting. Meeting minutes will be sent out no more than 24 hrs after the CCB by email. Any disagreements to the minutes should be sent to all CCB members by email. No response in 24 hours to the minutes is deemed as acceptance to their accuracy and validity.
The CCB will consist of the following membership. It is the responsibility of the CCB members to ensure suitable representation at the meeting in the event they cannot attend.
- Account Manager: NAME
- SCRUM Master: NAME
- Product Owner: NAME
- Project Manager: NAME
- Project Sponsor: NAME
Decision Making Process
The CCB will make decisions based on consensus. If consensus cannot be reached the change cannot be progressed. In this event it is the responsibility of the Exigen Account Manager to escalate the issue and find a resolution outside the CCB. It is the responsibility of all parties to ensure data critical to effective decision-making is represented objectively.