CAOP cheat sheet
CAOP · Keep the key ideas within reach.
Project Operations Fundamentals and Lifecycle
Project lifecycle stages: initiate, plan, execute, monitor/control, close; each stage gates the next via approval checkpoints.
Three delivery models drive configuration: fixed-price (milestone billing), time-and-materials (rate-based billing), and internal/cost-only (no customer invoice).
A project contract header holds customer, currency, billing method, and calendar; project lines or tasks roll up cost and revenue to that header.
Contract-to-project linkage is one-to-many: a single contract can spawn multiple projects, but each project belongs to exactly one contract for revenue posting.
Closing rules: a project cannot be closed while unbilled time, unposted expenses, or open revenue accruals exist against it.
Project status transitions (draft, active, on hold, closed) control which transactions can be entered; on-hold blocks new time and expense entry.
Work breakdown structure depth determines cost aggregation: cost sums from lowest task level upward, never the reverse.
Change control: scope changes after contract activation require a change order or amended contract line before new billing rules apply.
Opportunity and Quote-to-Contract Management
Quote-to-contract flow: opportunity, quote, quote revision/approval, contract, project creation; each step preserves a traceable identifier chain.
Quote line pricing methods: fixed amount, unit-based, and role/rate-based; rate-based lines must reference a price list version.
Discount approval thresholds are triggered by discount percentage or total margin; exceeding a threshold routes the quote for approval before it can be won.
A quote revision supersedes the prior version but retains history; only the active revision can be converted to a contract.
Win/loss close reasons are mandatory on opportunity closure and feed pipeline analytics; lost opportunities cannot generate contracts.
Contract templates bind billing schedule, invoicing frequency, and payment terms; changing terms mid-contract requires an amendment record.
Currency on the quote must match the contract currency; multi-currency quotes require an exchange rate source and effective date.
Effective-dated price lists mean a quote locks the price list version valid at quote date, not the price at contract signature.
Project Planning, Scheduling, and Resourcing
Task dependencies: finish-to-start is default; lag and lead values adjust the offset between predecessor and successor.
Critical path is the longest duration path through dependent tasks; any delay on it delays project end date.
Effort-driven vs. fixed-duration tasks: on effort-driven tasks, adding resources shortens duration; on fixed-duration, adding resources reduces per-resource hours.
Resource assignment units express allocation percentage; a resource at 100% for a 5-day task consumes 40 hours on an 8-hour calendar.
Booking types: hard booking reserves capacity and blocks conflicts; soft booking is a proposal that does not consume capacity.
Calendar assignment (project calendar, resource calendar, task calendar) resolves conflicts by the most specific calendar in the hierarchy.
Baseline snapshots capture planned dates and effort; variance reporting compares current forecast against the active baseline.
Scheduling constraint types (as-soon-as-possible, as-late-as-possible, must-start-on) override dependency-driven date calculation.
Time, Expense, and Billing Operations
Timesheet approval states: draft, submitted, approved, rejected, posted; only approved and posted time flows to billing and cost.
Billable vs. chargeable: billable time reaches the customer invoice; chargeable time is capitalized to the project cost but not invoiced.
Overtime rules apply multipliers by rate table or policy; the multiplier is applied to cost rate and/or bill rate independently.
Expense policy limits enforce per-category caps; over-limit amounts require justification or are marked non-reimbursable.
Billing methods: time-and-materials (hours x rate), fixed-price milestone (percent complete or milestone trigger), and retainer (periodic flat fee).
Unbilled revenue accrual posts when approved billable transactions exist but no invoice has been generated for the period.
Write-up/write-down adjusts billed amount versus standard bill rate; both are recorded on the invoice line for audit.
Intercompany or cross-charge transactions require a transfer price rule and post to both the performing and receiving project.
Project Accounting and Revenue Recognition
Revenue recognition methods: percentage of completion (cost-to-cost), completed contract, and milestone-based; the method is set on the contract line.
Cost-to-cost percent complete = costs incurred to date / total estimated costs at completion; multiply by total contract value for recognized revenue.
Estimated cost at completion (EAC) changes trigger cumulative catch-up adjustment: recognized revenue recalculates on the new EAC and the difference posts in the current period.
WIP (work in progress) = costs incurred plus recognized profit minus amounts billed; a positive balance is an asset, negative is a liability.
Unbilled receivable (asset) arises when revenue recognized exceeds billing; deferred revenue (liability) arises when billing exceeds revenue.
Labor cost rate = pay rate x (1 + burden rate); burden includes fringe, overhead, and payroll taxes per cost rate table.
A loss contract provision is recorded immediately when EAC exceeds contract value, regardless of percent complete.
Period close sequence: post time and expense, run burden and allocations, recognize revenue, generate invoices, reconcile WIP.
Resource Management and Utilization
Utilization = billable hours / available hours; available hours exclude holidays, leave, and non-working calendar days.
Target utilization is set per resource role; actual vs. target variance drives bench and over-allocation decisions.
Capacity = FTE x working days x hours per day; subtract planned non-project time (training, admin) to get net available capacity.
Skill and proficiency matching ranks candidate resources; a required skill with proficiency threshold filters the candidate pool.
Resource requests specify role, dates, allocation percentage, and skills; fulfillment creates a booking against the resource.
Over-allocation occurs when summed assignment units exceed 100% across overlapping date ranges; leveling resolves by shifting or splitting.
Bench reporting identifies resources with utilization below threshold over a rolling window, typically 4-12 weeks.
Forecast vs. actual utilization compares planned bookings to approved timesheet hours for the same period.
Reporting, Analytics, and Data Governance
Report types: operational (time, expense status), financial (WIP, revenue, margin), and analytical (pipeline, utilization trends).
Data grain matters: transaction-level reports reconcile to the ledger; summary reports aggregate and may not tie exactly due to rounding.
Row-level security restricts data by business unit, project, or resource; report access inherits the user's security role.
Master data governance: customer, resource, role, and rate records require a single owner and change-approval workflow.
Audit trail captures who changed a rate, date, or amount and when; posted transactions are immutable and corrected via reversal.
Data retention policies define archive windows for time and expense records; purging requires legal and finance sign-off.
Reconciliation checks: billed amount vs. revenue recognized, hours approved vs. hours billed, and expense posted vs. reimbursed.
Key metrics: project margin = (revenue - cost) / revenue; backlog = contracted value not yet recognized.
Integration and Operational Configuration
Integration patterns: real-time API for transactions, batch file for bulk time and expense, and event-based messaging for status changes.
Master data sync order matters: customers and resources must exist before projects; projects before transactions.
Idempotency keys prevent duplicate transaction posting when an integration retries after a timeout.
Field mapping requires source-to-target transformation rules, including currency conversion and date format normalization.
Error handling: failed records route to a staging or suspense table with error codes; reprocessing is manual after correction.
Configuration objects: calendars, rate tables, billing cycles, approval workflows, and numbering sequences are set before go-live.
Approval workflow configuration defines threshold, approver hierarchy, and escalation timeout; changes require regression testing.
Integration monitoring tracks record counts, latency, and failure rates; alert thresholds trigger on variance from expected volume.
Project Operations Fundamentals and Lifecycle
Project lifecycle stages: initiate, plan, execute, monitor/control, close; each stage gates the next via approval checkpoints.
Three delivery models drive configuration: fixed-price (milestone billing), time-and-materials (rate-based billing), and internal/cost-only (no customer invoice).
A project contract header holds customer, currency, billing method, and calendar; project lines or tasks roll up cost and revenue to that header.
Contract-to-project linkage is one-to-many: a single contract can spawn multiple projects, but each project belongs to exactly one contract for revenue posting.
Closing rules: a project cannot be closed while unbilled time, unposted expenses, or open revenue accruals exist against it.
Project status transitions (draft, active, on hold, closed) control which transactions can be entered; on-hold blocks new time and expense entry.
Work breakdown structure depth determines cost aggregation: cost sums from lowest task level upward, never the reverse.
Change control: scope changes after contract activation require a change order or amended contract line before new billing rules apply.
Opportunity and Quote-to-Contract Management
Quote-to-contract flow: opportunity, quote, quote revision/approval, contract, project creation; each step preserves a traceable identifier chain.
Quote line pricing methods: fixed amount, unit-based, and role/rate-based; rate-based lines must reference a price list version.
Discount approval thresholds are triggered by discount percentage or total margin; exceeding a threshold routes the quote for approval before it can be won.
A quote revision supersedes the prior version but retains history; only the active revision can be converted to a contract.
Win/loss close reasons are mandatory on opportunity closure and feed pipeline analytics; lost opportunities cannot generate contracts.
Contract templates bind billing schedule, invoicing frequency, and payment terms; changing terms mid-contract requires an amendment record.
Currency on the quote must match the contract currency; multi-currency quotes require an exchange rate source and effective date.
Effective-dated price lists mean a quote locks the price list version valid at quote date, not the price at contract signature.
Project Planning, Scheduling, and Resourcing
Task dependencies: finish-to-start is default; lag and lead values adjust the offset between predecessor and successor.
Critical path is the longest duration path through dependent tasks; any delay on it delays project end date.
Effort-driven vs. fixed-duration tasks: on effort-driven tasks, adding resources shortens duration; on fixed-duration, adding resources reduces per-resource hours.
Resource assignment units express allocation percentage; a resource at 100% for a 5-day task consumes 40 hours on an 8-hour calendar.
Booking types: hard booking reserves capacity and blocks conflicts; soft booking is a proposal that does not consume capacity.
Calendar assignment (project calendar, resource calendar, task calendar) resolves conflicts by the most specific calendar in the hierarchy.
Baseline snapshots capture planned dates and effort; variance reporting compares current forecast against the active baseline.
Scheduling constraint types (as-soon-as-possible, as-late-as-possible, must-start-on) override dependency-driven date calculation.
Time, Expense, and Billing Operations
Timesheet approval states: draft, submitted, approved, rejected, posted; only approved and posted time flows to billing and cost.
Billable vs. chargeable: billable time reaches the customer invoice; chargeable time is capitalized to the project cost but not invoiced.
Overtime rules apply multipliers by rate table or policy; the multiplier is applied to cost rate and/or bill rate independently.
Expense policy limits enforce per-category caps; over-limit amounts require justification or are marked non-reimbursable.
Billing methods: time-and-materials (hours x rate), fixed-price milestone (percent complete or milestone trigger), and retainer (periodic flat fee).
Unbilled revenue accrual posts when approved billable transactions exist but no invoice has been generated for the period.
Write-up/write-down adjusts billed amount versus standard bill rate; both are recorded on the invoice line for audit.
Intercompany or cross-charge transactions require a transfer price rule and post to both the performing and receiving project.
Project Accounting and Revenue Recognition
Revenue recognition methods: percentage of completion (cost-to-cost), completed contract, and milestone-based; the method is set on the contract line.
Cost-to-cost percent complete = costs incurred to date / total estimated costs at completion; multiply by total contract value for recognized revenue.
Estimated cost at completion (EAC) changes trigger cumulative catch-up adjustment: recognized revenue recalculates on the new EAC and the difference posts in the current period.
WIP (work in progress) = costs incurred plus recognized profit minus amounts billed; a positive balance is an asset, negative is a liability.
Unbilled receivable (asset) arises when revenue recognized exceeds billing; deferred revenue (liability) arises when billing exceeds revenue.
Labor cost rate = pay rate x (1 + burden rate); burden includes fringe, overhead, and payroll taxes per cost rate table.
A loss contract provision is recorded immediately when EAC exceeds contract value, regardless of percent complete.
Period close sequence: post time and expense, run burden and allocations, recognize revenue, generate invoices, reconcile WIP.
Resource Management and Utilization
Utilization = billable hours / available hours; available hours exclude holidays, leave, and non-working calendar days.
Target utilization is set per resource role; actual vs. target variance drives bench and over-allocation decisions.
Capacity = FTE x working days x hours per day; subtract planned non-project time (training, admin) to get net available capacity.
Skill and proficiency matching ranks candidate resources; a required skill with proficiency threshold filters the candidate pool.
Resource requests specify role, dates, allocation percentage, and skills; fulfillment creates a booking against the resource.
Over-allocation occurs when summed assignment units exceed 100% across overlapping date ranges; leveling resolves by shifting or splitting.
Bench reporting identifies resources with utilization below threshold over a rolling window, typically 4-12 weeks.
Forecast vs. actual utilization compares planned bookings to approved timesheet hours for the same period.
Reporting, Analytics, and Data Governance
Report types: operational (time, expense status), financial (WIP, revenue, margin), and analytical (pipeline, utilization trends).
Data grain matters: transaction-level reports reconcile to the ledger; summary reports aggregate and may not tie exactly due to rounding.
Row-level security restricts data by business unit, project, or resource; report access inherits the user's security role.
Master data governance: customer, resource, role, and rate records require a single owner and change-approval workflow.
Audit trail captures who changed a rate, date, or amount and when; posted transactions are immutable and corrected via reversal.
Data retention policies define archive windows for time and expense records; purging requires legal and finance sign-off.
Reconciliation checks: billed amount vs. revenue recognized, hours approved vs. hours billed, and expense posted vs. reimbursed.
Key metrics: project margin = (revenue - cost) / revenue; backlog = contracted value not yet recognized.
Integration and Operational Configuration
Integration patterns: real-time API for transactions, batch file for bulk time and expense, and event-based messaging for status changes.
Master data sync order matters: customers and resources must exist before projects; projects before transactions.
Idempotency keys prevent duplicate transaction posting when an integration retries after a timeout.
Field mapping requires source-to-target transformation rules, including currency conversion and date format normalization.
Error handling: failed records route to a staging or suspense table with error codes; reprocessing is manual after correction.
Configuration objects: calendars, rate tables, billing cycles, approval workflows, and numbering sequences are set before go-live.
Approval workflow configuration defines threshold, approver hierarchy, and escalation timeout; changes require regression testing.
Integration monitoring tracks record counts, latency, and failure rates; alert thresholds trigger on variance from expected volume.