A novel approach for modelling complex maintenance systems using discrete event simulation. (October 2016)