Describir: Software design for engineers and scientists