Collaborative Learning : Cognitive and Computational Approaches