CMS FAQ Management Extension — Phase 2 Scope of Work & Effort Estimate
Prepared by: Sataware Technologies LLC Prepared for: Bestway (USA) Inc. Extension: FAQ Management (Epic 193) -- Business Central Document Date: 03/26/2026 Version: 2.0
1. Overview
This document defines the scope of work, deliverables, and effort estimate for Phase 2 of the CMS FAQ Management Extension for Microsoft Dynamics 365 Business Central.
Phase 2 focuses on extending the four fault master tables in Business Central with the fields required to support full FAQ API synchronization and change tracking. This scope was aligned and agreed upon during the March 2026 review meeting with the Bestway team.
2. Scope of Work
The following work is included in Phase 2. Work is limited strictly to the items listed below. Any requirements not listed in this document are out of scope and will require a separate discussion and estimate.
2.1 Table Extensions -- Fault Master Tables
Extend the four fault master tables in Business Central with the fields required to support FAQ API synchronization, active/inactive status handling, and change tracking.
| BC Table | Table ID | Fields to be Added |
|---|---|---|
| Fault Area | 5915 | FAQ ID, Active, Created in FAQ, Last Modified in FAQ |
| Symptom Code | 5916 | Status, FAQ ID, Active, Created in FAQ, Last Modified in FAQ |
| Fault Code | 5918 | Status, FAQ ID, Active, Created in FAQ, Last Modified in FAQ |
| Resolution Code | 5919 | Status, FAQ ID, Active, Created in FAQ, Last Modified in FAQ |
Note: The Status field already exists on Fault Area (5915) from the previous implementation. Only the four additional fields listed above will be added to that table.
Field Definitions
| Field | Purpose |
|---|---|
| Status | Controls whether a code is Active or Inactive. Inactive codes are suppressed from UI selection in Service Orders. |
| FAQ ID | Stores the unique identifier from the FAQ API, used as the primary reference for mapping and sync operations. |
| Active | Boolean flag used for UI filtering to ensure only valid, active records are available for selection. |
| Created in FAQ | Stores the timestamp of when the record was first created in the FAQ system. Used to maintain sync state across executions. |
| Last Modified in FAQ | Stores the timestamp of the most recent update in the FAQ system. Used for change detection during incremental synchronization. |
3. Out of Scope
The following items are explicitly outside the scope of this engagement:
- Modifications to existing Service Order tables or posted transaction data
- Changes to BC base application objects
- Reporting or BI development
- Integration with systems other than the FAQ API
- Any work not explicitly listed in Section 2 of this document
4. Effort Estimate
The following table provides a breakdown of the estimated effort. All work will be performed by Sataware Technologies at the agreed rate of $28/hr.
| Activity | Estimated Hours | Estimated Cost (USD) |
|---|---|---|
| Table extension -- Fault Area (4 additional fields) | 3--4 hrs | $84--$112 |
| Table extension -- Symptom Code (5 fields, new extension) | 3--4 hrs | $84--$112 |
| Table extension -- Fault Code (5 fields, new extension) | 3--4 hrs | $84--$112 |
| Table extension -- Resolution Code (5 fields, new extension) | 3--4 hrs | $84--$112 |
| Integration & sync logic updates to support new fields across all tables | 6--8 hrs | $168--$224 |
| Testing & QA | 5--6 hrs | $140--$168 |
| Source Code Commit & Documentation Update | 2--3 hrs | $56--$84 |
| TOTAL (Estimated) | 25--33 hrs | $700--$924 |
Note: The final invoice will be based on actual hours worked. Any scope changes identified during development will be communicated and agreed in writing before additional work proceeds.
5. Indicative Timeline
The following is an indicative delivery timeline subject to scope confirmation.
| Week | Activity |
|---|---|
| Week 1 | Scope confirmation, kickoff payment, development of table extensions for all four fault master tables |
| Week 2 | Integration and sync logic updates, testing and QA across all tables |
| Week 3 | UAT support, source code commit to repository, documentation update, final delivery |
Timeline assumes timely review and feedback from Bestway during UAT. Delays in feedback or environment access may extend the delivery date.
6. Acceptance Criteria
Phase 2 will be considered complete when the following conditions are met:
- Table extensions exist on all four fault master tables -- Fault Area (5915), Symptom Code (5916), Fault Code (5918), and Resolution Code (5919)
- All required fields as listed in Section 2.1 are present and functional on each respective table
- Extension installs successfully in the sandbox environment
- Updated source code is committed to the repository
7. Assumptions
- Bestway will provide timely access to the sandbox environment for testing and UAT
- Bestway will designate a point of contact for technical queries and review during development
- Any changes to the agreed scope during development will be discussed and estimated before proceeding
- The existing extension remains installed and functional in the sandbox as the base for Phase 2