Computational thinking (CT) is gaining recognition as an important skill set for the general problem solving. Although CT has its origin in computer science and programming, there is a great interest of researchers and educators to explore how to include CT in all scientific and engineering disciplines, as well as in kindergarten to 12 th grade education (K-12) curriculum. To determine the effective methods for teaching, learning and assessing CT, a definition and its scope is needed. To date there is no consensus in terms of formal CT definition as well as the definitive or necessary components of CT. However, our study builds upon the consensus that multiple skills are involved in CT. The result of this study is the CT framework proposal to be used in introductory programming courses in higher education. The framework is an intersection of previous research that has identified basic, domain independent components of CT and domain specific programming practices. We hope that the framework will encourage the future research on teaching and assessing CT in the higher education.