Add design document and test case