Optimize Interaction module.
add architecture doc