Software Expert Witness or Consultant?

In Handling Expert Witnesses in California Courts, Robert Aitken writes that step one is to “analyze evidentiary issues to determine whether you need a consultant, an expert, or both.” A consultant is an expert who does not testify in court and is not subject to discovery. For example, the advantage of using a software consultant as opposed to a software expert witness is that their opinions and reports regarding software functionality and software implementations would qualify as attorney work product and are protected from disclosure according to the California Code of Civil Procedure.