The goal of the Computer Science program is to train Computer Scientist with a professional knowledge based on a solid theoretical background knowledge. The job of a Computer Scientist synthesizes the constructive activity of engineers with the general problem-solving attitude of mathematicians while participating in teams of large-scale projects. Students of the Foundation Year learn the methodologies as well as the programming languages and tools used in software development.