Body

STUDY ABROAD IN

Computer Science

COMP 140: COMPUTATIONAL THINKING

Georgia Tech

CS 1301: Intro to Computing

Introduction to computing principles and programming practices with an emphasis on the design, construction and implementation of problem solutions use of software tools.

Syllabus


COMP 215: INTRODUCTION TO PROGRAM DESIGN

Nanyang Technological University

CZ/CE 2002: Object Oriented Design and Programming

Introduction to Object Orientated Programming; Classes and Objects; C++ Programming Language; Inheritance and polymorphism; Interface and implementation; Object Relationships; Object Collaboration; Designing for Reuse; Java Programming Language; Persistent Objects

Syllabus


COMP 215: INTRODUCTION TO PROGRAM DESIGN

Georgia Tech

CS 1332: Data Structure & Algorithms for Applications

Computer data structures and algorithms in the context of object-oriented programming. Focus on software development towards applications.

Course Description

Syllabus


COMP 215: INTRODUCTION TO PROGRAM DESIGN

National University of Singapore

CS2103T: Software Engineering

This module introduces the necessary conceptual and analytical tools for systematic and rigorous development of software systems. It covers four main areas of software development, namely objectoriented system analysis, object-oriented system modelling and design, implementation, and testing, with emphasis on system modelling and design and implementation of software modules that work cooperatively to fulfill the requirements of the system. Tools and techniques for software development, such as Universal Modelling Language (UML), program specification, and testing methods, will be taught. Major software engineering issues such as modularisation criteria, program correctness, and software quality will also be covered.

Course Description


COMP 2XX: DEPT APPROVED TRANSFER CREDIT

National University of Singapore

CS2105: Introduction to Computer Networks

This course aims to provide a broad introduction to computer networks and some appreciations of network application programming. It covers a range of topics including basic data communication and computer network concepts, protocols, networked computing concepts and principles, network applications development and network security. The emphasis of teaching is on the working principles and application of computer networks. As an integral part of the course, tutorials and practical assignments enforcing learning will also be given. These assignments provide an early exposure in network application programming and they should be able to complete by using personal computers and schools network facilities.

Course Description


COMP 2XX: DEPT APPROVED TRANSFER CREDIT

National University of Singapore

CS2102: Database Systems

This course provides and initial yet robust coverage of the fundamental topics pertaining to the design and implementation of database application and to the management of data with database management systems. The course covers both practical and theoretical aspects. The focus is on relational database technology. The course covers both practical and theoretical aspects. The focus is on relational database technology.

Course Description


COMP 2XX: DEPT APPROVED TRANSFER CREDIT

National University of Singapore

CS1020: Data Structures And Algorithms I

This module is the second part of a three-part series on introductory programming and problem solving by computing. It continues the introduction that begins in CS1010, and emphasizes object-oriented programming with application to simple data structures. Topics covered include object-oriented problem modeling with concepts of objects, classes and methods, object-oriented problem formulation and problem solving, data structure implementation strategies, abstraction and encapsulation of data structures, object-oriented programming constructs, use of APIs and class libraries, exception handling, lists, linked lists, stacks, queues, hash tables and their algorithmic design, various forms of sorting and searching methods, recursive algorithms, and Big-O notation. After taking the modules, the students will acquire the knowledge and skills in object-oriented programming (Java) and applications of simple data structures, as well as problem formulation and problem solving involving simple data structures.

Syllabus


COMP 2XX: DEPT APPROVED TRANSFER CREDIT

National University of Singapore

CS2010: Data Structures And Algorithms II

The module will focus on the basic data structures and algorithms that lie at the core of computer science, and how they can be used to improve performance in real-world problems. Throughout the module, we will discuss how to model problems in different ways, and how differing strategies can yield very different performance characteristics. We will both analyze algorithms to better understand their asymptotic performance, and implement them in Java to understand the issues that arise in practice. The goal of this module is both to help you learn how to how to choose and use better data structures and algorithms.

Syllabus


COMP 2XX: DEPT APPROVED TRANSFER CREDIT

Nanyang Technological University

CE/CZ 2001: Algorithms

Introduction to algorithms, basics for analysis of algorithms, sorting, searching, graphs, basic computability and complexity theory

Syllabus


COMP 382: REASONING ABOUT ALGORITHMS

University of Edinburgh

INFR10052: Algorithms and Data Structures

The course aims to provide general techniques for the design of efficient algorithms and, in parallel, develop appropriate mathematical tools for analysing their performance. In this, it broadens and deepens the study of algorithms and data structures initiated in INF2. The focus is on algorithms, more than data structures. Along the way, problem solving skills are exercised and developed.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

Nanyang Technological University

CZ3005: Artificial Intelligence

Computer / software engineers are involved in effective and efficient building of knowledge agent systems that satisfy the requirements of users; possibly software for intelligent embedded and intelligent information systems. General awareness of theory, knowledge, and practice in all phases of the knowledge based systems and representation techniques for problem solving are necessary for those of you who wants to get into the field artificial intelligence. These are advanced

intelligent systems that are finding wide spread applications in finance, banking, manufacturing industries.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

Trinity College Dublin

3D3: Computer Networks

This course introduces students to computer networks and concentrates on building a firm foundation for understanding Data Communications and Computer Networks. It is based around the OSI Reference Model which deals with the major issues in the bottom four (Physical, Data Link, Network and Transport) layers of the model. Students are also introduced to the areas of Network Security and Mobile Communications. This course provides the student with fundamental knowledge of the various aspects of computer networking and enables students to appreciate recent developments in the area.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR09028: Foundations of Natural Language Processing

This course covers some of the linguistic and algorithmic foundations of natural language processing. The course is strongly empirical, using corpus data to illustrate both core linguistic concepts and algorithms including language modeling, part of speech tagging, syntactic processing, the syntax-semantics interface, and aspects of semantic processing. Linguistic and algorithmic content are interleaved throughout the course.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR10057: Software Testing

This module is intended to provide in-depth coverage of software testing further to develop the introductory material covered in Informatics 2C - Software Engineering. The goal of the course is to provide students with the skill to select and apply a testing strategy and testing techniques that are appropriate to a particular software system or component. In addition the student will become a capable user of test tools; will be able to assess the effectiveness of their testing activity; and will be able provide evidence to justify their evaluation. The course will be supported by two practical exercises involving the development of appropriate tests and the application of a range of testing tools. This course is based on the IEEE Software Engineering 2004 Software Testing syllabus.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR08010: Informatics 2D - Reasoning and Agents

This course focuses on approaches relating to representation, reasoning and planning for solving real world inference. The course illustrates the importance of (i) using a smart representation of knowledge such that it is conducive to efficient reasoning, and (ii) the need for exploiting task constraints for intelligent search and planning. The notion of representing action, space and time is formalized in the context of agents capable of sensing the environment and taking actions that affect the current state. There is also a strong emphasis on the ability to deal with uncertain data in real world scenarios and hence, the planning and reasoning methods are extended to include inference in probabilistic domains.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR10022: Professional Issues

There are many commercial, engineering and professional issues, complementary to the necessary scientific knowledge and technical skills, that impinge on the work of the computing professional. The Professional Issues course aims to provide a general awareness of these issues and to cover some of them in depth. The course will involve lectures from members of staff and visitors and directed reading.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR10054: Computational Cognitive Science

This course aims to introduce students to the basic concepts and methodology needed to implement and analyse computational models of cognition. It considers the fundamental issues of using a computational approach to explore and model cognition. In particular, we explore the way that computational models relate to, are tested against, and illuminate psychological theories and data. The course will introduce both symbolic and subsymbolic modelling methodologies, and provide practical experience with implementing models. The symbolic part will focus on cognitive architectures,while the subsymbolic part will introduce probabilistic models.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

University College of London

COMP0026: Image Processing

The first half of this course introduces the digital image, describes the main characteristics of monochrome digital images, how they are represented and how they differ from graphics objects. It covers basic algorithms for image manipulation, characterisation, segmentation and feature extraction in direct space. The second half of the course proceeds to a more formal treatment of image filtering with some indication of the role and implications of Fourier space, and more advanced characterisation and feature detection techniques such as edge and corner detection, together with multiresolution methods, treatment of colour images and template matching techniques. The course allows students to explore a range of practical techniques, by developing their own simple processing functions either in a language such as Java and/or by using library facilities and tools such as MatLab or IDL.

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

National University of Singapore

CS3223: Database Systems Implementation

This module provides an in-depth study of the concepts and implementation issues related to database management systems. The first part covers the physical implementation of relational data model, which includes storage management, access methods, query processing, and optimization. The second part covers issues and techniques dealing with multi-user application environments, namely, transactions, concurrency control and recovery.

Syllabus

Course Description


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

National University of Singapore

CS3243: Introduction to Artificial Intelligence

The course is aimed at mid-advanced undergraduate students, as well as beginner graduate students. The objective of this class is to offer students a comprehensive introduction to the emerging field of artificial intelligence, with an emphasis on its computational, mathematical and economic foundations.

Course Description

Syllabus


COMP 3XX: DEPT APPROVED TRANSFER CREDIT

Korea Advanced Institute of Science and Technology

CS372: Natural Language Processing with Python

The course offers students a practical introduction to natural language processing with the Python programming language, helping the students to learn by example, write real programs, and grasp the value of being able to test an idea through implementation, with an extensive collection of linguistic algorithms and data structures in robust language processing software.

Syllabus


COMP 412: COMPILER CONSTRUCTION - UG

University of Edinburgh

INFR10065: Compiling Techniques

This course describes the phases of a modern programming language
compiler with an emphasis on widely-used techniques. The course project will require students to implement a complete compiler from scratch for a simple programming language, targeting a real machine assembly such as MIPS. Students will also learn about implementing a compiler pass in a real compiler framework.

Syllabus


COMP 422: INTRO TO PARALLEL COMPUTING

Nanyang Technological University

CE/CZ4011: Parallel Computing

Foundations & Theory; Distributed Memory Programming; Shared Memory Programming; Special ELearning Topic, Load Balancing; Massively Parallel Programming; Cases Studies


COMP 429: INTRO TO COMPUTER NETWORKS

University of Edinburgh

INFR10074: Computer Communications and Networks

This is an introductory course on Computer Communications and Networks, focusing on fundamental concepts, principles and techniques. The course will introduce basic networking concepts, including: protocol, network architecture, reference models, layering, service, interface, multiplexing, switching and standards. An overview of digital communication from the perspective of computer networking will also be provided. Topics covered in this course include: Internet (TCP/IP) architecture and protocols, network applications, congestion/flow/error control, routing and internetworking, data link protocols, error detection and correction, channel allocation and multiple access protocols, communication media and selected topics in wireless and mobile networks. This course will also give hands-on experience in network programming using the socket API.

Syllabus


COMP 430: INTRO TO DATABASE SYSTEMS

Indian Institute of Technology Bombay

CS 317: Database and Information Systems

CS 317 is intended to be a first course in database systems for undergraduates in computer science. It offers students an introduction to the design and programming of database systems. In particular, we will cover the ER (entity-relationship) approache to data modelling, the relational model of database management systems (DBMSs) and the use of query languages such as SQL. We will also cover relational algebra and the use of SQL in a programming environment. We will briefly touch upon query processing and mention the role of transaction management. We will also devote a class or two to current topics of research such as XML databases, as data warehousing and data mining. Topics outside the scope of this course are how to implement a DBMS, active database elements, and object oriented DBMSs.

Syllabus


COMP 430: INTRO TO DATABASE SYSTEMS

Georgia Tech

CS4400: Introduction to Database Systems

We introduce the fundamental concepts necessary for the design and use of modern database systems in today’s large-scale enterprise applications. We examine the concepts in the order that we typically encounter them in the actual database design process. We start with the problem of conceptually representing data that is to be stored in a database. From there, we see how the data in a conceptual data model can be converted to a database specific model (e.g., the relational data model). We also discuss various forms for relations that possess good properties. We see how to use the relational database language SQL to define the relations and to write SQL statements to insert, delete, retrieve and update the data. We also examine some of the fundamental storage structures that are used in relational database systems. We end the course with a discussion of some advanced topics in the database management area.

Syllabus


COMP 430: INTRO TO DATABASE SYSTEMS

University of Edinburgh

INFR10070: Database Systems

Databases are essential to maintaining the information base in almost all modern business enterprises and to electronic commerce. They are also becoming increasingly important as a fundamental tool in much scientific research. Some knowledge of databases is now essential in any of these areas. The study of databases draws on several disciplines within computer science: logic, algorithms, programming languages and operating systems. This course is an introduction to the principles underlying the design and implementation of databases and database management systems. It will cover the theoretical and practical languages that have been developed for relational databases, their implementation and optimisation. It will also cover transaction processing and concurrency control, as well as tools and techniques for decision support and data analysis.

Syllabus


COMP 430: INTRO TO DATABASE SYSTEMS

University College of London

COMP0022: Database and Information Management Systems

This module builds on the introduction to relational databases course in COMPGC04. It covers advanced data modelling and database development methodology, the techniques exploited by relational database technologies relating in particular to query processing and transaction management, and post relational database technologies including object oriented databases and web databases. The coursework is an interesting group project lasting the duration of the term and building a web facing database system using very contemporary technologies.

Syllabus


COMP 440: ARTIFICIAL INTELLIGENCE

University College of London

COMP0024: Artificial Intelligence and Neural Computing

This course introduces artificial intelligence and neural computing as both technical subjects and as fields of intellectual activity. The overall targets are: (1) to present basic methods of expressing knowledge in forms suitable for holding in computing systems, together with methods for deriving consequences from that knowledge by automated reasoning; (2) to present basic methods for learning knowledge; and (3) to introduce neural computing as an alternative knowledge acquisition/representation paradigm, to explain its basic principles and their relationship to neurobiological models, to describe a range of neural computing techniques and their application areas.

Syllabus


COMP 481: AUTOMATA/FORMAL LANG/COMPUTING

Ecole Centrale Paris

IS 1330: Theoretical Computer Science and Discrete Mathematics: Formal Languages and Computability

Understanding the basic principles and formal tools (ie based on mathematics) at the base of all the methods of design and implementation of information systems. This course will address the fundamentals of:

  • induction and recurrence (lattice theory, well-founded sets and their equivalence with the mathematical induction). The objective is to formalize the basic notions of induction and recursion underlying all discrete mathematics.
  • algorithmic (Gödel / Herbrand's recursive functions, Turing machine and lambda calculus and all the theorems of fixed point and the results associated with undecidability). The idea is to define formally (ie mathematically) what a decision problem is and to give a formal denotation of the concept of algorithm (Church thesis).
  • the theory of complexity (both complexity classes P and NP, and structuring the class NP-NP-complete and NP-hard problems).
  • design systems (rational languages and automata). The objective is to study the formal basis of all methods of modeling of computer systems.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University College of London

COMP0021: Interaction Design

The module covers advanced topics in interaction design, informed by current research topics in human-computer interaction and interaction design. A central theme is how to design technologies to meet people’s needs.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR11020: Algorithmic Game Theory and its Applications

Game theory is the formal study of interaction between "self-interested" (or "goal-oriented") "systems" (or "agents" or "decision makers" or "players"), & strategic scenarios that arise in such settings. It began life in Economics in the 1940's with the work of von Neumann & Morgenstern, but has since been applied to an extraordinary range of subjects, including political science, evolutionary biology & even to inspection regimes for arms control. Game theory has for years also played an important, if less recognized, role in several branches of computer science. Applications within computer science include the use of games in automated verification & model checking to model computing systems in an unknown and possibly adverse environment. In AI games are applied to the analysis of multi-agent systems. Recently, with the advent of the internet and e-commerce, many game theoretic questions in the interplay between economics & computing have received extensive attention. These include electronic auctions, & more generally mechanism design questions (inverse game theory) related to finding incentive structures for cooperation between independent entities on the internet. Wherever game theory plays a quantitative role, algorithmic and computational questions related to "solving" games are also of central importance. This course aims to bring together as a coherent body of knowledge the game theoretic algorithms & models that underpin several flourishing subjects at the intersection of computer science, economics and e-commerce, & AI.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR11011: Advanced Databases

This course aims at furthering database systems concepts through adding complexity and a more hands-on approach. In particular, we will focus on supporting multi-dimensional data in a DBMS, query optimisation, query evaluation, transaction processing and concurrency control in both a centralised and a distributed context. In terms of centralised databases, we shall start from single and multi-dimensional indexing methods, move on to join evaluation algorithms, and talk about query opimisation paradigms. We shall then focus on the issues of transaction processing, concurrency control and crash recovery. Finally, we shall revisit the previous issues in a distributed database environment.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University of Edinbrugh

INFR11021: Computer Graphics

This introductory course in computer graphics comprises of three parts. The first part of the course presents a bird’s-eye view of the current state-of-the-art in the field. The latter two parts cover rendering, which is one of the core topics in computer graphics, in detail. The second part of the course teaches central concepts in rendering, along with the relevant mathematics. Finally, the third part of the course focusses on applications of the theory taught in the second part.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University of Edinburgh

INFR11145: Text Technologies for Data Science

This course teaches the basic technologies required for text processing, focussing mainly on information retrieval and text classification. It gives a detailed overview of information retrieval and describes how search engines work. It also covers basic knowledge of the main steps for text classification.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University College of London

COMP0113: Virtual Environments

The purpose of this course is to introduce students to the main concepts and practical issues in constructing and understanding Virtual Environments, and how people respond to a VE experience. Given the background of the course teachers, the focus on the technical side will be more on the visual aspects of VEs. A central theme of the course will also be that the understanding of VEs can be best understood through the concepts of presence and shared presence.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

Jacobs University Bremen

320331: Artificial Intelligence

Course contents: overview of AI research fields, problem solving and search, knowledge and reasoning, communication, perception and action, social behavior. Programming projects are included. Role of course within curriculum: Among the disciplines of CS, Artificial Intelligence is one of the most interdisciplinary, with connections to robotics, pattern recognition, machine learning, high-level programming, databases, software engineering and many more. AI techniques today form crucial (albeit often invisible) constituents of almost all larger software systems. The course enables students to understand the links between many different CS and some EE techniques, and to develop heterogeneous software systems for intelligent information processing.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

Jacobs University Bremen

CO19-320322: Graphics and Visualization

Computer graphics deals with the digital synthesis and manipulation of visual content, typically embedded in a three-dimensional scene. Prominent tasks in computer graphics are geometry processing, rendering, and animation. Geometry processing is concerned with object representations such as surfaces and their modeling, rendering is concerned with simulating light transport to get physically-based photorealistic images of 3D scenes or applying a certain style to create non-photorealistic images, and animation is concerned with descriptions for objects that move or deform over time. This is an introductory course into the concepts and techniques of 3D (interactive) computer graphics. It includes mathematical foundations, basic algorithms and principles, and advanced methods and concepts.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

Korea Advanced Institute of Science and Technology

CS448: Introduction to Information Security

This class introduces the fundamental understanding on cryptographic primitives to apply for a secure system including classical, symmetric and asymmetric cryptosystems with mathematical background. The students can gain the general knowledge on modern cryptography to execute advanced research in information security.

Course Description

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University College London

COMP0020: Functional Programming

This course explores the functional programming paradigm and the implementation technology for functional programming languages. It aims to develop a broad understanding of the functional programming style and recursive programming techniques using the language Miranda, together with an understanding of implementation issues that are relevant not only to functional languages but also to other systems that require automatic dynamic memory management.

Syllabus


COMP 4XX: DEPT APPROVED TRANSFER CREDIT

University College London

COMP0146: Entrepreneurship Theory and Practice

This is UCL’s principal Entrepreneurship course for students seeking to develop and test a new business idea. Over the past ten years we have taught entrepreneurship to around 3000 students resulting in the launch of a number of innovative businesses. The course covers: the new business lifecycle (selecting and testing a moneymaking idea, preparing a business plan, raising finance, the Exit), aspects of new business operation (registering a company, setting up your office, understanding financial statements), and exploiting new eCommerce tools and techniques (doing business electronically, company web sites, online business software and services).

Syllabus


COMP 5XX: DEPT APPROVED TRANSFER CREDIT

University College London

COMPGI15: Information Retrieval & Data Mining

The course is aimed at an entry level study of information retrieval and data mining techniques. It is about how to find relevant information and subsequently extract meaningful patterns out of it. While the basic theories and mathematical models of information retrieval and data mining are covered, the course is primarily focused on practical algorithms of textual document indexing, relevance ranking, web usage mining, text analytics, as well as their performance evaluations. Practical retrieval and data mining applications such as web search engines, personalisation and recommender systems, business intelligence, and fraud detection will also be covered.

Syllabus