Bachelor of Science, Computer Science
Are you an early adopter? Do you like solving theoretical and practical problems using mathematics, logic, research and your own creative mind? Do you want to gain a deeper understanding of programming, software design, operating systems, and cyber technology in general? Are you ahead of the curve when it comes to understanding the profound impact technology can have on people’s lives? Do you want to be part of a trailblazing sector that will help find solutions and innovations that will positively change Central Asia and make the world a better place?
Apply now for UCA’s Computer Science programme, which will develop you into a stellar programmer, groundbreaker and future-ready information technology professional. The programme, taught by experienced and renowned faculty, will equip you to be part of the region’s new generation of tech specialists who will develop infrastructure, generate entrepreneurial opportunities, energize the economy and create a new vision for the future.
Computer Science at UCA combines the mathematical building blocks of theoretical knowledge with applied programming skills. The concepts of hardware and computer architecture are provided in addition to advanced software topics to create a comprehensive preparation for students to enter the world of technology, start their own business, or pursue study at a higher level. Alongside Computer Science coursework, practical projects are assigned in various courses to provide the capability of dealing with unanticipated problems and to share their findings in refereed journals. Annual internships are another salient feature of the Computer Science curriculum.
Partnership with the University of Toronto, Canada
The University of Toronto (UofT) and the University of Central Asia signed a memorandum of understanding to build linkages through curriculum and faculty development, faculty and student mobility and joint research collaborations.
Meet Computer Science Faculty
UCA's highly qualified international faculty have a depth and breadth of experience in both business and technology. Their experience is enabling students to develop innovative approaches to converting ideas into practice, and helping them achieve levels of accomplishment beyond their perceived limitations.
- Artificial Intelligence
- Data Structure and Algorithms
- Digital Logic Design
- Computer Networks
- Web Technologies
- Operation Systems
- Information Technology (Fundamentals of Programming)
- Introduction to Computer Science
- Computer Architecture
- Data Base Systems
- Programming Methodologies
- Software Engineering
- Computer Design
- Automata Theory
- Android Application Design
- Computer Graphics
- Computer Systems
- Distributed Systems
- Image Processing
- Object Oriented Programming
* Courses are subject to change.
Elective courses are offered to students in line with national requirements, and students can also choose free elective courses from another major.
Students acquire the following professional skills:
- Open, assemble, and analyse the performance of components of a computer system; knowledge of what each component does and how they fit together.
- Effective programming, data structures, and algorithm skills in one or more programming languages, including various techniques, analysis, and how to apply them to the creation, design, and processing of languages.
- Applying knowledge and practice of web development and design, together with the use of databases.
- Machine learning and artificial Intelligence techniques.
- Skills in linear algebra, differential and integral calculus, numerical methods, numerical algorithms, statistics, and optimization, and their application to the resolution of engineering problems using basic algorithmic procedures.
- Applying security principles and practices to the environment, hardware, software, and human aspects of a system, and evaluate the presence of risks and threats in computer systems.
- Software Development
- Computer Engineering
- Database and System Administration
- Web Development
- Information and Cybersecurity
- Multimedia Programming
- Computer Programming
- Research and Development
- Social Media Management
Key Educational Goals of the Computer Science Programme
The programme turns students into widely educated, articulated, and knowledgeable computer scientists and software engineers for leadership and professional careers as well as for advanced study.
The programme produces highly qualified and motivated graduates through a rigorous curriculum of theoretical and applied knowledge that contributes to developing the ability to solve problems, individually, and in teams. Graduates of the programme are also provided interdisciplinary knowledge beyond the narrow disciplinary scope of computer science. Enabling them to be successful, ethical, and effective problem-solvers as well as life-long learners who can contribute positively to the economic well-being of the region, and prepared to tackle the complex challenges of the 21st Century. Graduates develop deep awareness of their ethical responsibilities to their profession and society at large.
The programme produces innovative leaders in the fields of computer science and software engineering.
As drivers of innovation in society, graduates will be at the forefront of innovative software development, advanced research, and dissemination of knowledge. The programme is implemented within the framework of an innovative research and teaching environment, which swiftly responds to the challenges of the 21st century. As such, it is expected to contribute to the production of quality human resources needed for the fast development of the IT industry in Central Asia.
The programme educates computer scientists and software engineers who can address the complex and diverse nature of Central Asian societies.
Graduates can become specialists in different areas of digital humanities contributing to the preservation and development of the rich cultural heritage of the region. Since various fields of digital humanities such as machine translation, computer linguistics, data analysis, data visualization, textual mining, and cultural analytics are located today in the vanguard of both computer applications and development of the humanities and social sciences, interdisciplinary educated computer science specialists are in high demand.
Expected learning outcomes
General Computer Science Capabilities:
- Apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.
- Analyse a problem, and identify and define computing requirements appropriate to its solution.
- Deliver full software solutions of varying complexity including negotiating and documenting customer requirements, determining the overall design for a software system, evaluating and implementing a fully specified system, and monitoring project progress to ensure on-time delivery.
- Understand and appreciate the legal, social, security, and ethical dimensions of computer technology, including ways in which computer technology raises ethical questions or moral dilemmas.
- Analyse the local and global impact of computing on individuals, organizations, and society.
- Communicate computer science-related concepts in written, oral, and graphical forms to technical and non-technical stakeholders.
- Contribute effectively as a member of, and lead, multi-disciplinary teams.
- Recognize the need for, and be able to engage in continuing professional development.
- Use current techniques, skills, and tools necessary for the practice of computer science.
Content-Specific Computer Science Capabilities:
- Analyse and assess the performance of algorithms and data structures used in computer science applications.
- Apply concepts such as lists, stacks, queues, arrays, graphs, trees, heaps and hashing to create algorithms.
- Apply mathematical concepts including proofs, set theory, relations, functions, and combinatorics to model computational problems.
- Understand themes such as abstraction, complexity, and evolutionary change, and be able to apply principles of common resource, security, and concurrency.
- Write effective solutions using a variety of programming languages including object-oriented programming language, assembly language, functional programming language, and procedural programming language.
- Explain the hardware and software of computer systems including the interaction of computer processing units, elements of operating systems, and elements of networks.
- Understand and apply network management concepts including network topologies, configurations, routers, and switches.
- Manage IT-related projects across the spectrum of project management including requirements, specifications, project control, execution, cost management, and production deployment.
A combination of different assessment methods is used to evaluate the performance of students in the Computer Science programme. Depending on the type of the course, they can be classified into two categories:
Faculty members assess student performance during instruction. This method usually occurs regularly throughout the instruction process and seeks to improve the achievement of students’ learning objectives through approaches that can support specific student needs. Examples of formative assessment methods used in the Computer Science programme include:
- In-class discussions
- Clicker questions
- Low-stakes group work
- Weekly quizzes
- 1-minute reflection writing assignments
- Homework assignments
Faculty members evaluate students learning, knowledge, proficiency, or success at the conclusion of the instructional period. Summative assessments are always formally graded and can be used in conjunction and alignment with formative assessments. Examples of summative assessment methods used in the Computer Science programme include:
- Instructor-created exams
- Standardised tests
- Final projects
- Final essays
- Final presentations
- Final reports