Method for design verification of hardware and non-hardware systems