add design document

design document