B.Eng. (Computer Science) Content of Subjects Applicable to Students Matriculating in 2015 onwards



Similar documents
B.Eng. (Computer Engineering) Content of Subjects Applicable to Students Matriculating in 2011 or later

Doctor of Philosophy in Computer Science

Master of Science in Computer Science

Computer Science MS Course Descriptions

School of Computer Science

MEng, BSc Computer Science with Artificial Intelligence

Division of Mathematical Sciences

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

MEng, BSc Applied Computer Science

List of courses MEngg (Computer Systems)

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

Information and Communications Technology Courses at a Glance

Computer Science. Master of Science

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

M.S. Computer Science Program

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING

Masters in Human Computer Interaction

Page 1 of 5. (Modules, Subjects) SENG DSYS PSYS KMS ADB INS IAT

How To Get A Computer Engineering Degree

Masters in Networks and Distributed Systems

Masters in Artificial Intelligence

Department of Computer Science

Study Plan for the Bachelor Degree in Computer Information Systems

Masters in Advanced Computer Science

Masters in Computing and Information Technology

INFORMATION TECHNOLOGY PROGRAM

Master of Engineering - ME (Medical Software)

How To Get A Computer Science Degree At Appalachian State

One LAR Course Credits: 3. Page 4

Computer Science (COMP)

Graduate Co-op Students Information Manual. Department of Computer Science. Faculty of Science. University of Regina

Masters in Information Technology

UNDERGRADUATE DEGREE PROGRAMME IN COMPUTER SCIENCE ENGINEERING SCHOOL OF COMPUTER SCIENCE ENGINEERING, ALBACETE

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

Software Development Training Camp 1 (0-3) Prerequisite : Program development skill enhancement camp, at least 48 person-hours.

How To Get A Computer Science Degree

Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track)

Assessment Plan for CS and CIS Degree Programs Computer Science Dept. Texas A&M University - Commerce

Department of Computer Science

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

Master of Science in Computer Science Information Systems

Course Descriptions - Computer Science and Software Engineering

COURSE TITLE COURSE DESCRIPTION

Master Degree Program in Computer Science (CS)

Master s Program in Information Systems

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

Diploma Of Computing

BIOLOGY. Academic Regulation A grade of C- is the minimal grade acceptable for progression in the CMPS 221, 222, and 223 sequence.

Assessment for Master s Degree Program Fall Spring 2011 Computer Science Dept. Texas A&M University - Commerce

Computer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

Department of Computer Science

Please consult the Department of Engineering about the Computer Engineering Emphasis.

QF01/ الخطة الدراسية كلية العلوم وتكنولوجيا المعلومات- برنامج الماجستير/ الوصف المختصر

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices

School of Computer Science

İZMİR INSTITUTE OF TECHNOLOGY GRADUATE SCHOOL OF ENGINEERING AND SCIENCES DEPARTMENT OF COMPUTER ENGINEERING DOCTORAL PROGRAM IN COMPUTER ENGINEERING

INFORMATION TECHNOLOGY (INFO)

Computer Science. Courses. Computer Science 1

Masters in Human Computer Interaction

PCCC PCCC Course Description

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES

M.Tech. Software Systems

Bachelor of Science in Information Technology. Course Descriptions

Curriculum for the Bachelor Degree in Computer Science (CS)

Computer Science. Computer Science 207. Degrees and Certificates Awarded. A.S. Computer Science Degree Requirements. Program Student Outcomes

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014)

School of Computer Science

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

Computer Science/Software Engineering

A bachelor of science degree in electrical engineering with a cumulative undergraduate GPA of at least 3.0 on a 4.0 scale

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

Computer Science Department. Course Descriptions

Depth and Excluded Courses

CS5310 Algorithms 3 credit hours 2 hours lecture and 2 hours recitation every week

MSc Information Technology - E521

Computer Information Systems

Professional Organization Checklist for the Computer Information Systems Curriculum

International Program for Bachelor of Science (Software Engineering) College of Arts, Media and Technology, Chiang Mai University

The Volgenau School of Engineering

Course Bachelor of Information Technology majoring in Network Security or Data Infrastructure Engineering

Information Systems. Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences.

Master of Science (M.S.), Major in Software Engineering

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

Computer Science Courses-1

School of Computer Science

Core Courses Seminar (0-2) Non-credit Ph.D. Thesis (0-1) Non-credit Special Studies (8-0) Non-credit. Elective Courses

Information Technology Career Field Pathways and Course Structure

How To Learn To Manage A Computer System

Academic Catalog

Bachelor Degree in Informatics Engineering Master courses

Computer Science. Requirements for the Major (updated 11/13/03)

Department Overview. Preparation for Graduate School. Dual Degree BS and MSCIS Track. COMPUTER SCIENCE Computer Science

OKLAHOMA SUBJECT AREA TESTS (OSAT )

Degrees Major in Computer Science Minor in Computer Science Major in Software Engineering

Transcription:

B.Eng. (Computer Science) Content of Subjects Applicable to Students Matriculating in 2015 onwards FIRST YEAR CZ1001 DISCRETE MATHEMATICS Elementary number theory; Sets; Predicate logic; Linear recurrence relation; Relations; Functions; Graphs; Complex numbers, vectors and matrices; Elementary Combinatorics CZ1002 INTRODUCTION TO COMPUTING SYSTEMS Introduction; Computer Pioneers and their contributions; Evolution of Computers Part I; Basic CPU operation and programming language evolution; Evolution of Computers Part II; CPU Performance Enhancement techniques; Programming Languages and Database; Programming Paradigms; The internet; Networks and communications; Multi-tasking and Operating Systems; Classifications of Computer Systems; Computing Trends; e-learning CZ1003 INTRODUCTION TO COMPUTATIONAL THINKING Computing and Algorithms; Introduction to Python; Basic syntax and meaning; Variables, Data types, and Operators; More on numbers and built-in functions; Flow control; Program Development Issues (supplementary); Strings and character access; Composite types; User defined functions and modules; File management; Exceptions CZ1004 INVENTIONS AND INNOVATIONS IN COMPUTING Acad Unit: 2 Binary operations; Von Neumann and Harvard architectures; Invention of semiconductor materials; Examples of simple and complex CPUs; Programming Paradigms and Languages, Compilers and Algorithms; Operating Systems; Internet and distributed computing; Social networks; Numerical methods for the approximate computer solution of otherwise intractable problems; Databases; Data Analytics; Computer graphics and animation; Graphics Processor Unit; Computer and data security; Program Verification, Testing, Reliability and Correctness. 1

CZ1005 DIGITAL LOGIC Binary integers and arithmetic; Boolean Variables and Logic; Combinatorial circuits; Implementation technologies; Digital design using hardware description languages; Sequential circuits; Sequential circuits to building blocks; Finite state machines CZ1006 COMPUTER ORGANISATION AND ARCHITECTURE Pre-requisite: CZ1005 (can be taken concurrently) Computer Hardware Decomposition; Data Representation, Memory Allocation and Access; Central Processing Unit; Assembly Programming and Instruction Set Architecture; High-level Software to Low-level Instructions; Computer Memory; Data Transfer and Input/Output (I/O) Techniques; Computer Arithmetic; Measuring system performance; Towards higher speed CZ1007 DATA STRUCTURES Pre-requisite: CZ1003 Basic Constructs in CC program structure, Syntax and semantics; Built-in Data Structures; Recursion; Memory Management in C; Linked Lists; Stacks and Queues; Tree Structures; Implementing other data abstractions CE1011 Engineering Mathematics I Complex Numbers; Vectors; Matrices; Systems of Linear Equations; Descriptive statistics; Probability theory; Probability and sampling distributions; Inferential statistics; Experimental and Numerical Methods. CE1012 Engineering Mathematics II Pre-requisite: CE1011 (can be taken concurrently) Precalculus; Limits and Continuity; Differentiation; Integration; Ordinary Differential Equations (ODE); Sequences and Series; Function approximation; Numerical differentiation and integration; Fourier Series; Fourier Transform CZ0001 ENGINEERS AND SOCIETY This course raises issues pertinent to engineers as professionals as well as members of society. It discusses the requirements and issues of the IT profession, examining the key role professionals play with their contributions to society. Current concerns will be raised of interest to any person living in Singapore. 2

MH1812 Discrete Maths Elementary number theory; Propositional logic; Predicate logic; Proof techniques; Sets; Linear recurrence relation; Relations; Functions; Graphs; Elementary Combinatorics 3

SECOND YEAR CZ2001 ALGORITHMS Pre-requisite: CZ1007 Data Structures, CZ1012 Eng Maths II, MH1812 Discrete Maths Introduction to algorithms, basics for analysis of algorithms, sorting, searching, graphs, basic computability and complexity theory CZ2002 OBJECT ORIENTED DESIGN AND PROGRAMMING Pre-requisite: CZ1007 Introduction to Object Orientated Programming; Interface and implementation; Designing with Classes and Objects; Inheritance and polymorphism; Object Relationships; Framework and Reuse; Persistent Objects; Design patterns; Object Oriented Programming Language CZ2003 COMPUTER GRAPHICS AND VISUALISATION Pre-requisite: CZ1011 Eng Maths I Introduction to computer graphics and foundation mathematics; Virtual Reality Modelling Language (VRML) and Extensible 3D (X3D); Geometric shapes; Visual appearance; Transformations and motions; Efficient rendering; Putting it all together CZ2004 HUMAN COMPUTER INTERACTION Academic Unit:.3 Introduction; Usability and application spaces; Guidelines and principles for text-based interactions; Hardware devices for interaction; Development processes and assessments; Software tools in user interface development; Interaction styles; Practical UI development concepts; Design Issues CZ2005 OPERATING SYSTEMS Pre-requisite: CZ1007 Overview of Operating Systems (OS); Processes and Threads; Process Scheduling; Deadlock and Starvation; Memory Organization; Virtual Memory Management; File System Organization and Implementation; Input/Output (I/O) Management and Disk Scheduling; Issues in Real-time Operating Systems; Protection and Security 4

CZ2006 SOFTWARE ENGINEERING Pre-requisite: CZ2002 (can be taken concurrently) Introduction to Software Engineering; Software Engineering Process; Introduction to Requirements; Introduction to Software Specifications; Software Design and Construction; Testing and Integration; Software Maintenance; Software Project Management; Software Quality; Dependability and Security CZ2007 INTRODUCTION TO DATABASES Pre-requisite: CZ2001 Introduction to Databases; Entity-Relationship Data Model; Relational Data Model; Functional Dependencies (FD) and Normalization; Relational Algebra; Querying Relational Databases; Semistructured Data and XML; Querying XML Data; XML to Relational Storage; Introduction to Database Security CZ0002 GREEN COMPUTING Introduction to Green Computing; elearning; Energy; Green design; Green manufacturing; Green use; Green disposal; Other issues; Common sense approaches to green computing; Green applications 5

THIRD YEAR CZ3001 ADVANCED COMPUTER ARCHITECTURE Pre-requisite: CZ1006 Introduction to Computer System; The CPU Architecture; Performance Enhancements & Instruction- Level Parallelism; Memory Systems; Data-Level Parallelism in Vector, SIMD, and GPU Architectures; Multiprocessors and Thread-Level Parallelism; Warehouse-Scale Computing: Exploiting Request-Level and Data-Level Parallelism; Future directions CZ3002 ADVANCED SOFTWARE ENGINEERING Pre-requisite: CZ2006 Introduction; Software Quality; Project Management; Maintenance; Software Testing; Configuration Management CZ3003 SOFTWARE SYSTEM ANALYSIS AND DESIGN Pre-requisite: CZ2006 (can be taken concurrently) Introduction to Software System Analysis and Design; Requirement Engineering; Software Quality and Design Principles; Design Issues; Software Architecture Design; Design Quality Analysis and Evaluation; Software Construction; System Validation and Verification; System Deployment and Use CZ3004 MULTIDISCIPLINARY DESIGN PROJECT (MDP) Acad Unit: 4 Pre-requisite: At least Third Year Standing MDP is a group-based design and development project undertaken by a mixed group of students comprising of undergraduates from the CE and CS programmes. The project is practical-oriented and multi-disciplinary in nature, requiring system level integration of sub-systems developed by different team members. Topics covered will include Microprocessors, Signals and Interfaces, Sensors and Communication, Software engineering, Data structures and Algorithms, Open-source frameworks. NB: MDP is to be done over one semester by students who have reached at least a year 3 standing. Eligible students will be automatically registered by the school and will be allocated to their respective project group based on a composition of students from different programmes. Students cannot choose to defer the MDP. Course Schedule: Twelve two-hour weekly slots and five full days during the entire recess week. The group-based nature of MDP makes it important that the disruptive absence of members is strongly discouraged. Attendance for all scheduled MDP activities is thus compulsory. Students who do not satisfy at least 80% of the overall attendance without valid reasons (e.g. MC) will be deemed to have failed MDP. Students who miss more than 50% of the scheduled MDP sessions will not be deemed to have fulfilled the learning outcomes of MDP and they will be required to re-take MDP in the next available offering. In other words, an I will be reflected in the result transcript for MDP. 6

CZ3005 ARTIFICIAL INTELLIGENCE Pre-requisite: CZ1003, CZ2001 Human brain and Cognitive structure; Foundations of AI; Agent paradigm, Agent tasks and environments; Procedural Representation (Algorithmic); Symbolic Representation (Knowledge Engineering); AI in the Real World, Case studies of intelligent systems CZ3006 NET CENTRIC COMPUTING Pre-requisite: CZ1006 Computer Organisation and Architecture, CZ2002 Object Oriented Design & Programming (both can be taken concurrently) Introduction to net-centric computing; the physical layer and data link layer; the MAC Layer and Local Area Networks; the network layer and Internet IP protocols; the transport layer and Internet TCP protocols; web architecture and protocols; web documentation technologies; client application programming techniques; server application programming techniques CZ3007 COMPILER TECHNIQUES Pre-requisite: CZ2001, CZ2006 Introduction to Compilers; Lexical Analysis; Parsing; Semantic Analysis; Code Generation; Optimisation 7

FOURTH YEAR TECHNICAL ELECTIVES CE/CZ4001 Virtual and Augmented Reality Pre-requisite: CZ2003 Introduction; Graphical Scene; Animation and Sensing; Light and Sound; Controlling Environment;Programming Scripts; Introduction to Augmented Reality; Displays for Augmented Reality; Tracking, Recognition and Registration; Rendering and Augmentation; Examples of Augmented Reality System CE/CZ4002 VISUAL MEDIA COMPRESSION AND PROCESSING Introduction to media management & processing; Entropy coding; Digital image coding techniques; Motion Estimation; Digital video coding techniques; Advanced topics for visual signal compression; Image retrieval and indexing CE/CZ4003 COMPUTER VISION Introduction to computer vision; Principles of Camera Systems; Image Enhancement in the Spatial domain; Image Enhancement in the Frequency domain; Colour; Image Edge Processing; Image Segmentation; Imaging Geometry and 3D Stereo Vision; Object Recognition CE/CZ4004 3D MODELING AND ANIMATION Pre-requisite: CZ2003 Introduction to History of 3D graphics and animation; applications; Computer Graphics Pipeline; Graphics Programming; 3D Shape Representation; Geometric Processing; Rendering; Basic Animation Techniques; Kinematic Animation; Physics Based Simulation; Motion Capture CE/CZ4005 AUDIO AND SPEECH PROCESSING Introduction to audio and speech scienc; Principles of audio and speech science; Spectrograms; Linear Predictive Coding; Mel Frequency Cepstral Coefficients (MFCC); Gaussian Mixture Models; HMM models; Classification of audio signal Acoustic modeling for speech recognition 8

CE/CZ 4011 PARALLEL COMPUTING Pre-requisite: CZ/CE2001 & CZ/CE3001 Foundations & Theory; Distributed Memory Programming; Shared Memory Programming; Massively Parallel Programming; Synchronous computations CE/CZ4013 DISTRIBUTED SYSTEMS Pre-requisite: CZ/CE2005 & CE3005 or CZ3006 Characteristics of distributed systems and system models; Interprocess communication; Distributed objects and remote invocation; Distributed file systems; Peer-to-peer systems; Name services; Time and global states; Coordination and agreement; Replication and consistency CE/CZ4015 SIMULATION AND MODELLING Pre-requisite: CE/CZ1007 Data Structures, CE/CZ1011 Eng Maths Introduction; Different Types of Simulation; Simulation World View and Simulation Software; Basic Probability and Statistical Models for Simulation; Random Numbers and Random Variate Generation; Input Modelling; Verification and Validation of Simulation Models; Output Analysis; Comparison of Alternative Designs; Queueing Models CE/CZ4016 ADVANCED TOPICS IN ALGORITHMS Pre-requisite: CZ2001 Analysis Techniques; Dynamic Programming; Search Techniques; Computational Geometry; Min Cut /Max Flow; Lower Bounds and NP-completeness; Approximation Algorithms and Heuristics; Randomized Algorithms CE/CZ4021 PERVASIVE NETWORKS Pre-requisite: CE3005 or CZ3006 The objective of this course is to introduce different types of wireless network technologies and some important mobile services and applications to support pervasive computing. The subject consists of two complementary components, i.e., wireless network protocol and mobility management. In the wireless network protocol part, various protocols in different layers designed to support wireless data transfer will be presented. In the mobility management, the required mechanisms to support data transfer with users mobility will be discussed. After attending this course, the students will be able to appreciate the various technical challenges associated with wireless networking and develop a basic understanding of the solutions proposed to overcome the challenges, and the principles behind them. In addition, the students will acquire working knowledge of the principles of and issues related to location management, and mobile multimedia services. 9

CE/CZ4022 PERSONAL MOBILE NETWORKS Pre-requisite: CE3005 or CZ3006 Fundamentals of Wireless Mobile Communications: concepts, challenges and components; radio frequency transmission, data and carrier signal components; channel bandwidth and data rate; modulation; signal propagation, data transmission (modulation, spread spectrum, multiple access); Overview of mobile networks, Wireless Personal Area Networks (WPAN); Wireless Local Area Networks (WLAN); Wireless Wide Area Networks (WWAN): cellular communications networks, satellite communications. CE/CZ4023 ADVANCED COMPUTER NETWORKS Pre-requisite: CE3005 or CZ3006 Top-Down View of Computer Networks; Application Layer Protocols; Multimedia Networking; Advanced Network Protocols; QoS and Traffic Management; Network Deployment and Design CE/CZ4024 CRYPTOGRAPHY AND NETWORK SECURITY Pre-requisite: CE3005 or CZ3006 The course aims at exposing computer engineering students to principles and efficient implementations of cryptographic techniques /components for protection of networked computers and secure communications over an open network. Coverage include: Threats and security services in an opened computer network; foundation mathematics underlying practical cryptographic techniques (basic number theory and algebraic finite fields); Established cryptographic algorithms including AES, RC4, RSA, and other public key algorithms that based on discrete logarithm of finite algebraic groups, Cryptographic hashes; Message authentications and block cipher chaining; Lightweight cryptography, Cryptographic protocols for authentication and key distribution; Key management. The course does not address other important network security techniques that are built upon firewalls, intrusion detections and security auditing. Students who dislike mathematics and logic (for reasoning) and/or computer arithmetic are advised to consider carefully when enrolling this course. CZ4031 DATABASE SYSTEM PRINCIPLES Pre-requisite: CZ2007 Overview of Database Management Systems (DBMS); Storage of Relational Data; Indexing Techniques; Query Processing; Query Optimization; Failure Recovery; Transaction; Management and Concurrency Control; Advanced topics CZ4032 DATA ANALYTICS AND MINING Pre-requisite: CE/CZ2001 Introduction of Data Analytics & Mining; Data Pre-processing; Data Analytics & Visualization; Cluster Pattern Analysis; Predictive Pattern Mining; Association Rule Mining; Anomaly Detection 10

CZ4033 ADVANCED DATA MANAGEMENT Pre-requisite: CZ4031 Overview of data management in the 21 st century; Data warehousing; Column-oriented DBMS; Spatial data management; Graph data management; Distributed data management; Data management in the cloud CZ4034 INFORMATION RETRIEVAL Pre-requisite: CE/CZ2001 Introduction; Boolean Retrieval; Term Vocabulary and Posting; Dictionaries and Tolerant Retrieval; Index Construction and Compression; Scoring, Term Weighting, and Vector Space Model; IR Evaluation; Relevance Feedback and Query Expansion; Probabilistic IR and Language Model Web Search; Link Analysis and Crawling CZ4041 MACHINE LEARNING Introduction to Machine Learning; Decision Theory; Density Estimation; Dimension Reduction; Classification; Feature Selection and Classifier Evaluation; Clustering CZ4042 NEURAL NETWORKS Introduction to neural networks; Basic Perceptron; Multi-layer Perceptron networks; Performance estimation and model selection; Kernel-based network; Hopfield network; Self-Organizing Neural Network; Neural Networks at Work CZ4045 NATURAL LANGUAGE PROCESSING Pre-requisite: CE/CZ2001 Introduction to Natural Language Processing; Spelling checking; Word Prediction; Word Classes; Introduction to Classification Methods; Information extraction; Formal grammars; Syntactic parsing; Computational semantics CZ4046 INTELLIGENT AGENTS Introduction to Intelligent Agents; Deductive Reasoning Agents; Practical Reasoning Agents; Reactive and Hybrid Architectures; Introduction to Multi-Agent Systems and Applications; Working Together; Multi-Agent Interaction; Allocating Scarce Resources Auctions; Making Group Decisions Forming Coalitions 11

CE/CZ4062 COMPUTER SECURITY (SYSTEM SECURITY) Pre-requisite: CE/CZ2005 This course is concerned with security mechanisms in modern computer systems. Concepts and Terminology; Security Models; Implementation of Mechanisms; User authentication; Case Studies; Operating system vulnerabilities; Software security CE/CZ4064 SECURITY MANAGEMENT Pre-requisite: CE/CZ2006 This course introduces network security at an elementary level. What is security and why is it necessary? ; Security management - systems, models and frameworks; Internal control, audit and security; Risk analysis; Business continuity planning; Information security, governance and the law CE/CZ4065 DIGITAL FORENSICS Pre-requisite: CE/CZ1011 Overview of forensic science; Anti-Forensics; Host Forensics; Information Hiding; Non-Standard Storage Mechanisms and Devices; Network Forensics 12