Shop software for auto repair shops

How to choose and use shop management software for an independent auto repair shop: estimates, invoices, inspections, booking and messaging.