IBM interview question

Design chess movement validation software.