On a software-based self-test methodology and its application