Which type of software is primarily used by law firms to track billable hours, expenses, and generate client invoices?