The three general categories of costs included in manufacturing processes are direct materials, direct labor, and overhead. Note that there are a few exceptions, since some service industries do not have direct material costs, and some automated manufacturing companies do not have direct labor costs.
Job costing is used for short-term, smaller-scale projects with distinct costs for each job, common in manufacturing or services. In contrast, contract costing is for larger, long-term projects, like construction or civil engineering, where costs are tracked over the life of an extensive contract.
Contract costing, also known as Terminal costing, is a form of specific order costing which applies where work is undertaken to customer's special requirements and each order is of long duration. It is a variant of job costing as each contract is nothing but a job completed.