Assessing Software Design and Software Quality for Medical Devices