Suppose we are making a medical software to support doctors to perform medical examination on the patients and store results in the system.
What is unusual in this case, is that doctors often have several specialisation - e.g. one can do several types of examinations - e.g. cardiological and dermatological examinations. Each type of examination consist of tests, but not all of them are performed every time. Also doctor can later perform any test separately, and that test is not necessarily part of any type of examination. For example, at one appointment doctor can perform cardiological examination, dermatological examination and then dental test.
What would be better ways to support those different workflows (dermatology, cardiology, etc.) and allow customization ?