BEng (Computer Engineering) 

FIRST YEAR

CPE101 ELECTRONICS PRINCIPLES

Acad Unit: 4
Pre-requisite: Nil

Introduction to passive RLC circuits - Kirchoff's Laws, circuit simplification and analysis, Thevenin's and superposition theorems. Transient response of passive circuits under DC step excitation. Steady state AC analysis of passive RLC circuits - impedance, admittance, phasors. Power in AC and DC circuits. Introduction to semiconductor materials and the operation of npn and pnp junctions for bipolar transistor operation. MOSFET Structures. The semiconductor diode, its characteristics and application in half and full wave recifiiers. The Zener diode. The transistor as a switch. Low frequency operation. Speed/power, noise margins, fan-in, fan-out. Operating principles of TTL and CMOS switching circuits.

CPE102 INTRODUCTION TO PROGRAMMING

Acad Unit: 4
Pre-requisite: Nil

Basic concepts of programming in Java: basic data types, statements, control constructs (selections, repetitions, methods [activation, parameter passing, variable scopes]); Introduction to object-oriented programming: classes, objects, object composition, arrays, strings, class design guidelines, modularity, reusability, ease of maintenance and good programming practices; File I/O; Exception handling.

CPE103 MATHEMATICS I

Acad Unit: 4
Pre-requisite: Nil

Calculus: limits and continuity, derivatives, integration, infinite series, ordinary differential equations. Linear algebra: complex numbers, vectors, matrices, systems of linear equations. Probability and statistics: summarizing data, probability theory, random variables and distributions, estimation theory.

CPE104 LOGIC DESIGN

Acad Unit: 4
Pre-requisite: Nil

Numbers and codes: binary, octal, hexadecimal, floating-point numbers, BCD, excess-3, gray, alphanumeric codes, Logic gates and Boolean algebra: truth tables, Boolean theorems, logic gates, Combinational logic circuits: S-O-P and P-O-S forms, minimisation methods. Flip-flops and related devices: basic latches, clocked flip-flops, timing consideration, monostable and astable multivibrators, Schmitt-trigger. Counters and registers: asynchronous counters, decoding and glitches, shift-registers, BCD counters, data registers. Digital arithmetic: signed numbers, arithmetic operations, BCD addition.

CPE105 DATA STRUCTURES AND OBJECT-ORIENTED PROGRAMMING

Acad Unit: 4
Pre-requisite: CPE102 / CM102 & G168 / CM101 & CM102

Object-oriented programming fundamentals: inheritance, class hierarchies, polymorphism, abstract and interface classes; Principles of object-oriented programming: encapsulation and information hiding, separation of behavior and implementation, interface and implementation; Recursion; Abstract data types; Basic data structures: reference variables, dynamic memory allocation, vectors, lists, container/collection classes and iterators, stacks, queues; Trees: binary trees, binary search trees, tree traversals; Graphs: representations, graph traversal (DFS, BFS).

CPE106 MATHEMATICS II

Acad Unit: 4
Pre-requisite: CPE103*

Introduction to signals and spectra. System modeling and analysis. Fourier analysis: trigonometric and complex exponential Fourier series, Fourier transform, system analysis with Fourier transform. Laplace transforms, solving differential equations using Laplace transforms. Discrete-time signals and systems. Convolution theorem.

* May be taken concurrently.

CK101 ENGLISH PROFICIENCY*

Acad Unit: 0
Pre-requisite: Nil

Revision of grammar and sentence patterns. Structures and functions. Reading technical and professional texts. Fundamentals of writing skills. Using computers for effective writing. Listening and note-taking. Developing speaking skills. Vocabulary development for professional communication.

* Applicable to students who fail the Qualifying English test.

CPE110 C LANGUAGE PROFICIENCY*

Acad Unit: 2
Pre-requisite: CPE102

C program format; Comparison of Java and C: data constructs, control constructs, storage classes(automatic, static and extern variables), simple I/O and file I/O; Pointers: pointer types, pointer operations, array and pointers, dynamic memory allocation, functions and argument passing; The C preprocessor and the #define, #include directives.

* this course is e-learning based and on-line tests.


SECOND YEAR

CPE201 DIGITAL CIRCUITS AND SYSTEMS

Acad Unit: 4
Pre-requisite: CPE101 & CPE104

Introduction to digital system design and system-level symbology. Combinational digital systems. Sequential circuits. Application of digital modules: Datapath and control unit structures. Logic families. Interfacing techniques in digital design. Additional real world topics.

CPE202 MICROPROCESSOR PROGRAMMING

Acad Unit: 4
Pre-requisite: CPE104/CSC101

Overall Structure of a 16/32-bit microprocessor; programming model; data types and representation; Memory organization. Assembly Language Programming for the H8S processor: Software development tools; Basic assembly language structure; Addressing modes; Stack manipulation; Instruction set; Modular programming; Structured programming. Embedded C programming; Memory Systems: Memory terminologies, technologies and characteristics, memory hierarchy. Exception Handling and Programming: Types of exception; exception vector table; stacks and its role in exception processing; Interrupts and Interrupt service routines; Interrupt priority. Basic I/O and I/O Programming: I/O organization and structure, I/O ports and their configuration; serial interface; Polling techniques; interrupt-driven I/O.

CPE203 SOFTWARE SYSTEMS AND MODELS

Academic Unit: 4
Pre-requisite: CPE105

Concurrency Models: basic concepts and notations, active and passive objects; Event Driven Programming: callbacks and event-handling methods, event propagation, exception handling, modeling of dynamic behavior, concurrent event-driven programming; GUI Development: Java event model, basic Java GUI classes, AWT and Swing, model-view-controller architecture; Concurrent Programming: processes and threads, FSP & LTS, mutual exclusion, condition synchronization; Mechanisms for Process Interaction: overview of mechanisms, shared memory approaches, message passing approaches, concurrent architectures; Analysis of Properties: deadlock, safety and liveness properties, starvation, dining philosophers, readers and writers.

CPE204 DISCRETE MATHEMATICS AND ALGORITHMS

Academic Unit: 4
Pre-requisite: CPE105

Sets: operations on sets, cartesian products, power sets. Mathematical Logic: propositional logic, predicate logic. Proof techniques, mathematical induction. Functions: definition of functions, bijective functions, composite functions. Relations: properties of relations, equivalence relations, composite relations. Introduction to graph theory: simple graphs, complete graphs, paths, circuits.

Algorithm analysis: Asymptotic analysis of algorithms, asymptotic notations. Basic sorting methods: Insertionsort, Mergesort, Quicksort, Heap Sort. Basic searching techniques: Binary Search, hashing. Graph algorithms: Dijkstra’s shortest path, Prim’s minimum spanning trees.

CPE205 OPERATING SYSTEMS

Acad Unit: 4
Pre-requisite: CPE203

Basic concepts: structures, services, shell user view vs. system calls, evolution of operating systems. Process management: notion of process and its states, interrupts and context switch, threads vs. processes, interprocess communication and synchronisation, deadlocks, scheduling. Memory management: storage organisations, storage placement strategies, VM implementation, page replacement algorithms. I/O systems: device-independent interface, disk, clock, and terminals drivers, disk scheduling policies. File systems: file system structure, file management, file allocation, file reliability. Security and protection: specific and general protection schemes, access control list, capabilities, encryption. Case study on Unix, Linux and Windows NT.

CPE206 MICROCONTROLLER SYSTEMS DESIGN

Acad Unit: 4
Pre-requisite: SC201/CPE201 & SC202/CPE202

Organization of H8S. Memory interfacing and timing diagram analysis. Exceptions and Associated Interface Considerations. Serial interface: asynchronous versus synchronous, I2C, SPI, IrDA, serial communication standards. Parallel I/O and Timers: Centronics interface, applications using timer modules, interface to display ICs. Direct Memory Access: Implicit/explicit transfers, organization of a DMA/DTC, transfer protocols. Timer and Mixed Signal Interface: the timer (TMR), timer-pulse (TPU) units, the programmable pulse generator (PPG), watchdog (WDG) timer, H8S ADC/DAC units interfacing techniques. Power Management: CPU operation modes; Expanded/Advanced mode of operations; Power-down modes of H8S; Various power-down modes supported); Transition between modes; Peripheral operations in various modes; Power consumption in different modes.

 

CPE207 SOFTWARE ENGINEERING

Acad Unit: 4
Pre-requisite: CPE102

Course Introduction;
Part 1 - Getting Started: Introduction to Software Engineering, Modeling with UML, and Project Organization & Communications;
Part 2 - Dealing With Complexity: Requirements Elicitation, Analysis, System Design (Decomposing System & Addressing Design Goals), Object Design (Reusing Patterns & Specifying Interfaces), Mapping Models to Code, and Testing;
Part 3 - Dealing With Complexity: Rationale Management, Configuration Management, Project Management, Software Life Cycle, and Methodologies; eLearning Module: Functional-oriented analysis and design; Guest Lecturers: Software Vendor, CASE Tools, and Software Implementation.

CPE208 INSTRUMENTATION AND DATA ACQUISITION

Acad Unit: 4
Pre-requisite: CPE101

Signal Conditioning - Amplification:Operational amplifiers: ideal and practical operation. Typical applications and circuits - inverter, non-inverter, buffer, integrator, differentiator, summer, difference, comparator. Introduction to instrumentation and isolation amplifiers - CMRR. off-set currents and voltages. Filters:active and passive filters, simple filter design ,analogue filter design with common circuit. Basic Interference Problems.

Data acquisition systems: sampling theorem, sample and hold, multiplexers, analogue to digital conversion, design of a data acquistion system. digital to analogue conversion.

Transducers: properties of analogue sensors for temperature, force & pressure. Operation of an analogue actuator: the DC server motor.

CPE279 DESIGN AND DEVELOPMENT PROJECT

Acad Unit: 4
Pre-requisite: Carried out with CPE206 Microcontroller Systems Design and CPE207 Software Engineering

The Design and Development Project (DDP) emphasises practical aspects of analysis, design and construction, testing and reliability. The work undertaken reinforces theories, concepts and issues introduced in formal lectures through team-based implementation of a project that integrates both hardware and software-related exercises.


THIRD YEAR

CPE301 DIGITAL COMMUNICATIONS

Acad Unit: 4
Pre-requisite: CPE106 & CPE201

Signal analysis. Signal transmission. Random signal and noise. Baseband data transmission. Bandwidth consideration. Digital modulation systems (amplitude-shift keying, phase-shift keying and frequency-shift keying). Data and phase synchronization. Data multiplexing. Error control techniques. Information theory and source coding.

CPE302 COMPUTER NETWORKS

Acad Unit: 4
Pre-requisite: CPE301*

Open system interconnect reference model network architecture. TCP/IP protocol suite and its operation. Protocols and standards at different layers. HDLC protocol. Local area networks. Performance analysis. Internetworking. Routing. Congestion control. X.25. Frame-relay network. ATM. Internet protocol. TCP and UDP protocols. The roles of transport and applications layers. Network applications.

* Should be taken concurrently.

CPE303 DATABASE SYSTEMS

Acad Unit: 4
Pre-requisite: CPE204

Database models. Access methods and file systems. Relational database system design. Query processing: Relational algebra, SQL. Introduction to transaction processing, concurrency and recovery. Database security and integrity. Trends in database systems.

CPE379 INDUSTRIAL ATTACHMENT

Acad Unit: 10
Pre-requisite:

For students admitted to Year 1:
Year 3 standing and have completed at least 4 semesters of study
For Poly direct entry to second year students :
Year 3 standing and have completed at least 2 semesters of study

The 22 weeks Industrial Attachment aims to extend the knowledge gained throughout the academic course, and to develop skills needed to work in an industrial environment. As computer technology applications are carried out in environments where production, engineering and management problems exist, the student will be able to gain first-hand experience applying knowledge in such an industrial situation. There is also an opportunity to develop the social, technical and communication skills needed to work effectively in a team.

 


FOURTH YEAR

CPE479 PROJECT

Acad Unit: 10
Pre-requisite: CPE379

This major project offers students the scope to develop initiative, creativity and design ability. The work, carried out through two semesters, provides an opportunity to undertake design, analysis and implementation of a substantial project in any particular area of Computer Engineering. Projects may be based on staff research interests or industrial collaboration. Students are expected to document their work and report their findings in formal reports and give oral presentations at the conclusion of their projects.


PRESCRIBED ELECTIVES
(each subject is assigned 4 AUs)

CPE401 ADVANCED ALGORITHMS

Advanced Algorithm Analysis Techniques. Computational Geometry. Maximum Flow. String Matching and other Bioinformatics related algorithms. NP-completeness. Search Techniques. Randomized Algorithms. Heuristic and Approximation Algorithms.

CPE402 ADVANCED COMPUTER NETWORKS

Overview of basic concepts of computer networks. Principles of application layer protocols. Application layer protocols such as HTTP, FTP, SMTP, DNS, Private networks. Best-effort service. Multimedia applications and QoS requirements. Real-Time Streaming Protocol (RTSP).RTP, RTCP, RSVP. Integrated services. Differentiated services. Scheduling and traffic policing. TCP and UDP, in depth study of TCP congestion control. IPv6. Multicasting. Frame relay protocol and QoS. ATM and current status of ATM networks. Virtual LANs. Wireless networks: Architectures, MAC layer protocols (such as IEEE 802.11, Bluetooth). Routing and transport protocols. Application layer protocols (such as WAP).

CPE403 ADVANCED DATA MANAGEMENT TECHNIQUES

Types of data (semi-structured, spatial, scientific, biodata, etc.). Storage and indexing techniques and issues. Query processing techniques. Data analysis and mining techniques.

CPE404 ADVANCED MICROPROCESSOR SYSTEMS

Survey of advanced microprocessors. RISC and CISC architectures. Performance optimizing features with examples from Intel: P6 processor, NetBurst, Core microarchitectures. 32-bit processors using Intel’s IA-32 architecture as case study (examples of IA-32 Intel processors are 80386, 80486, Pentium 4). Protected mode, real address mode, system management mode, memory models and management, paging and virtual memories, support for multitasking operating systems: privilege levels and protection, input-output architecture. Introduction to 64-bit processors using Intel 64 architecture as case study (examples of Ia-64 Intel processors are Core 2 Duo, Core 2 Quad).

CPE405 ANALOGUE AND DIGITAL CONTROL

Control Signal conditioning and data acquisition. Analogue feedback control system: Linear time invariant system, open and closed loop, time response, stability analysis and root locus of closed loop system, simple 3-Term controller design, Controller design procedure.

Digital feedback control system: Discrete-time systems, difference equation, Z-plane analysis, realisation of digital controllers and filters, signal reconstruction, transient response of digital control system, stability analysis and root locus of discrete-time closed loop system, digital controller design based on root locus and frequency response method, digital proportional controller. Introduction to adaptive control system: performance measure, model reference control, self-tuning regulator, associative memory controller, fuzzy self organizing controller.

Case studies: Cruise control, CVT gain schedule identification etc.

CPE406 ARTIFICIAL INTELLIGENCE

Introduction to AI's central hypothesis. Foundations of AI technology: AI languages, problem solving techniques, knowledge representation, logical reasoning. Selected advanced topics: expert systems, planning, machine learning, approximate reasoning. Case studies of AI in the real world.

CPE407 ASYNCHRONOUS DIGITAL CIRCUITS AND SYSTEMS

Asynchronous theory and design methodology; transient and stable states, asynchronous FSM, Moore and Mealy model, timing of signals in asynchronous circuits. Design using asynchronous circuit; minimization of asynchronous FSM, asynchronous memory components, state assignments and races, implementation of asynchronous circuits, hazards, designing flip-flop circuits. Advanced asynchronous circuit; Self-timed circuits, asynchronous ASM and asynchronous control units, phased logic. Real world examples; controller for ADC and DAC, asynchronous Communications interface adapter, synchronizing with the real world.

CPE408 COMPILER TECHNIQUES

Compiler structure. Lexical analysis. Regular expressions and finite automata. Context-free grammars. Syntax analysis. Parsing concepts and techniques. Compiler generation tools - LEX and YACC. Extending the parser through syntax-directed approach. Introducing compiler backend. Virtual machines. A complete compiler.

CPE409 COMPUTER ARCHITECTURE

The elements of computer architecture. Arithmetic logic unit. Control unit. Memory and storage Systems. Instruction set processor architecture. Pipelined processors. System interconnections. Parallel architectures.

CPE410 COMPUTER GAME PROGRAMMING

History of computer/video game technology. Game genres and design principles. The social impact of games. Event loops and execution threads. Rendering and animation in 3D. Terrain/background representation. Polygonal models. Texturing. Collision detection. Physically-based modeling. Game AI. Multi-user games and networking.

CPE411 COMPUTER GRAPHICS AND APPLICATIONS

Basics of Computer Graphics: Introduction, Graphics Pipeline and Coordinate Systems, Introduction to Ray Tracing, Shapes, 2D Transformations and viewing, 3D Transformations, 3D Viewing, OpenGL, Illumination and Shading. Computer Graphics Applications: Computer Animation, Physically-based Modelling, Real-time Rendering, Graphical User Interfaces, Virtual Reality.

CPE412 COMPUTER VISION AND IMAGE PROCESSING

Image formation and segmentation. Image acquisition. Image representations and organisations. Digital image characterisation. Image enhancement and restoration. Image coding and data compression. Geometry for 3D vision. Pattern recognition using neural networks. Image analysis and understanding. Machine vision applications.

CPE413 CRYPTOGRAPHY AND NETWORK SECURITY

Introduction: security mechanisms, security services, and ITU-T X.800 security architecture. Shared-key cryptographic algorithms and Kerberos. Public-key cryptographic algorithms and PKI Infrastructure. Security Protocols: PAP, CHAP, RADIUS, SSL/TLS. Security Tunnels and VPN: PPTP, L2F. L2TP and Ipsec. Perimeter Security Design: firewalls, SOCKS. Intrusion detection systems. Case Studies: security in Windows networking, WEP in 802.11 LAN. Internet banking.

CPE414 DIGITAL SIGNAL PROCESSING

Introduction to DSP. Frequency and time domain analysis of signals and systems. Z-transform. Sampling in frequency domain and Discrete Fourier transform. Fast Fourier transform. Infinite impulse response and finite impulse response structures. Design of analog and digital filters and other structures.

CPE415 DIGITAL VIDEO CODING AND COMPRESSION

Review of digital video coding and compression research. Digital video coding artifacts classification and analysis. Digital video quality assessment methods. Vision modeling. Quantitative video quality metrics. Quantitative video impairment metrics. Perceptual digital image and video coding. Open problems and discussions.

CPE416 DISTRIBUTED SYSTEMS

Introduction: components of distributed systems. Communication technologies. Communication services. Client-server computing and web technologies. CORBA and object-oriented technologies. Distributed algorithms. Distributed operating systems. Research issues in distributed systems. Standardization issues. Real-time protocols. Cluster computing. Security.

CPE417 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

Introduction to models of computation. Finitary representations. Uncountable numbers and diagonalization argument. Example(s) of noncomputable problems. Formal languages and Chomsky's grammars.

Finite automata: DFA, NFA, regular expressions, regular grammars, and their equivalence. Properties of regular languages: pumping lemma for regular languages and its applications.

Context free grammars: ambiguity, parsing. Pushdown automata and context free languages (CFLs). Deterministic CFLs and their applications. Properties of CFLs: pumping lemma for CFLs.

Turing machines: definition and construction for simple problems. Church-Turing hypothesis and computabililty. Nondeterministic turing machines and nondeterministic time complexity.

CPE418 GEOMETRIC MODELLING

Parametric curves and surfaces: bezier, B-spline, nurbs, surfaces of revolution, Swept surfaces, 2D and 3D "De Casteljau" algorithm. Implicit surfaces: algebraic surfaces, quadrics, superquadrics, blending, blending functions, skeletons, convolution surfaces. Subdivision surfaces. Normal vector calculation. Surfaces representation: polygonization, grids, octrees, points, CSG.

CPE419 INTRODUCTORY BIOINFORMATICS

Basic bioinformatics concepts, databases, tools and applications. Introduction: cell biology's central dogma, biological technologies for collecting and storing genomic sequence data. Methods of computational biology. Genomic and proteomic resources: information networks, DNA sequence databases, cDNA libraries of expressed genes, Protein sequence and structure databases. Human Genome Project. Sequence and structure analysis tools: dynamic programming for sequence alignment, pairwise and multiple alignment techniques, Predication of RNA secondary structures, Homology modelling for 3D protein structure. Microarray technology, clustering and classification. Imaging and visualisation technologies.

CPE420 LINEAR PROGRAMMING

Linear programming. The simplex algorithm. Duality. Gaussian elimination and matrices. Revised simplex. General LP problems. Sensitivity analysis. Connections with geometry. Case studies in efficient allocation of scarce resources. Scheduling production and inventory & game theory.

CPE421 MOBILE AND PERSONAL COMMUNICATIONS

Overview of analog and digital communication systems. Overview of ITU radio regulation. Multiple access techniques. Mobile radio channel. Cellular systems concepts and system planning. The global system for mobile communications. Code division multiple access. Third generation evolution. IEEE802.11 and Bluetooth.

CPE422 NEURAL NETWORKS

Biological neural systems. Introduction to artificial neural networks. Supervised and unsupervised learning. Merits and limitations of neurocomputing. Perceptron as a linear classifier. Perceptron learning algorithms: ADALINE, MADALINE. Multi-layer perceptron. Generalized delta-rule. Backpropagation learning. Linear associated memory networks. Bidirectional memory. Recurrent networks. Hopfield networks. Stochastic neural networks. Boltzmann machine. Simulated annealing. Kohonen networks. Self-organizing feature maps. Adaptive resonance theory: ART1 architecture. Hybrid networks. Radial basis function networks. Counterpropagation networks. Fuzzy neural networks. Genetic algorithms. Hardware implementation of neural networks. Application of neural networks.

CPE423 PARALLEL PROCESSING

Motivation for parallelism. Models of parallel computers: shared memory models, distributed memory models. Concepts of parallel programming: models and paradigms. Complexity measures: computation and communication. Parallel languages. Parallel program design. Partitioning: data partitioning, divide-and-conquer, pipelined computation, etc. Applications: sorting, matrix, numerical etc.

CPE424 PRINCIPLES OF INFORMATION THEORY AND CODING

Part 1: Basic concepts of information theory
Entropy. Mutual information. The asymptotic equipartition property. Applications to source coding (data compression). Applications to channel coding (channel capacity). Shannon's noiseless coding theorem and Shannon's fundamental coding theorem. Modelling of information sources: zero-memory and Markov models. Modelling of information channels: Binary Symmetric Channel and its variants. Additivity of information and cascaded channels.

Part 2: Coding Theory
Construction of compact source codes: Kraft inequality, compact codes. Huffman codes and universal data compression (Lempel-Ziv) codes. Analysis and design of error-control channel codes: Hamming codes, cyclic codes (CRC and BCH codes). A brief introduction to Reed-Solomon codes. and low density parity check (LDPC) codes.

CPE425 PROGRAMMING LANGUAGES

Role of programming languages in software development. Concepts in programming language: data abstraction, control abstraction, programming paradigm, program correctness, and support for programming in the large. Comparisons of languages such as Pascal, C, Lisp, Prolog, Ada and C++ along different conceptual dimensions.

CPE426 REAL-TIME SYSTEMS

Characteristics. Examples. General hardware requirement. Architectural support for real-time systems and concurrent software. Design with micro-controllers. RT software design: characteristics and concurrent models, design methodologies. RT languages: requirement and support to real-time software, language approach to embedded systems, implementation techniques, scheduling. RT O/S: device drivers. Scheduling. Primitives for concurrent software. Analysis: sequential program correctness, state diagram analysis, petri-net analysis. Testing of real-time software. Performance analysis.

CPE427 ROBOTICS

Introduction to robotics. Forward and inverse kinematics. Motion kinematics. Low-level and High-level trajectory planning. Static force and torque relations. Internal sensory devices: position and velocity sensors. External sensory devices: force, tactile and proximity sensors, machine vision. Robot programming: multi-level approach, programming techniques, world modelling, off-line programming and simulation.

CPE428 SIMULATION AND MODELLING

Introduction and basic simulation procedures. Different types of simulation models: Monte Carlo simulation, discrete-event simulation. Continuous system simulation. Mixed continuous/discrete-event simulation. Probability and statistics for modeling and simulation. Simulation software. Queuing networks: analytical and simulation modelling of queuing systems. Input and output analysis: random numbers, generating and analysing random numbers, point estimator, interval estimation, comparing alternative system designs, simulation optimization. Variance reduction techniques. Experimental designs.

CPE429 SOFTWARE TESTING

Testing context. Risk analysis. Basic object-oriented concepts. Testing analysis and design models. Testing classes. Testing State-based classes. Parallel architecture for component testing. Planning for component testing. Measuring the effectiveness of component testing. System testing. Organizing for testing.

CPE430 SPECIAL TOPIC 1

The course content is to be selected each semester from recent advances in computer engineering.

CPE431 SPECIAL TOPIC 2

The course content is to be selected each semester from recent advances in computer engineering.

CPE432 VISUALISATION

3D Computer graphics. Visualisation pipeline. Graphical data representation. Visualisation algorithms and applications.

CPE440 WIRELESS NETWORKS & MOBILE COMPUTING

Foundation: introduction, history, physical and technological constraints, wireless communications, wireless networks, mobile networking, wireless protocols. Information management: data dissemination and broadcast models, mobile database and mobile transaction, location-Independent and location-dependent computing models, naming, locating, and routing, mobility and handoff, location awareness and environmental discovery, disconnected and weak-connected operation models: file hoarding and file systems. Mobile applications and services: Mobile Agents, transcoding and proxy architecture, wireless web and WAP. Human-computer interactions: reduced user interfaces, wearable and pervasive computing. Security: authentication in mobile applications, privacy issues. Case study: satellite networks: satellite MAC, multicast over satellite, asymmetric routing, TCP over satellite, LEO constellation and LEO routing.


GENERAL ELECTIVES/GENERAL EDUCATION REQUIREMENT

CPE801 RISKS, PIRACY AND OTHER CRIMES IN THE COMPUTER AGE

Acad Unit: 3

Brief history and benefits of computers; Impact and control of computers: social implications of computing, impact of computer technology, controlling technology; Risks and liabilities of computer-based systems: system failures, example of software risk (the Therac-25 case), increasing reliability and safety; Privacy and information: computer-based threats to privacy, technical and management protection for privacy; Intellectual property: copyrights and patents, software piracy, copyright in cyberspace; Computer crime: intruders, hacking and cracking, sabotage and information theft, computer crime laws; Professional and ethical responsibilities: Ethical guidelines for computer professionals, codes of ethics, conduct and practice (e.g. ACM).

CPE802 OPEN SOURCE OFFICE PRODUCTIVITY TOOLS

Pre-requisites: Nil
Acad Unit: 3

Philosophy and history of Open Source Software (OSS). Contribution of OSS to innovation. Open Standards such as Web 2.0, ogg/speex (audio), png (image), open document format (odf), encryption (PKI), etc. Coverage of OSS alternatives to completely replace proprietary versions of client software all the way from the Operating System to word processing, mail/web browsing, media playback, graphic manipulation, automated scripting, etc. Coverage of OSS alternatives for servers, including virtualization, chat servers, mail servers, web servers, application servers, collaboration tools, DBMS, pod/video casts, content/project management, etc.

CPE803 EXPERIENCING DIGITAL ANIMATION

Acad Unit: 3
Pre-requisite: Nil

The subject aims to impart basic principles and well-rounded skills on the fundamentals of animation, and comprehensive knowledge of the animation art form. The students will be taught the basic principles and skill that are required in a typical animation production pipeline. The course will be offered with help from a local animation training company, which provides the hands-on opportunity and experience for the students.

CPE804 FROM “PONG” TO “WARCRAFT”

Acad Unit: 3
Pre-requisite: Nil

The course will provide a historical approach to the development of computer and video games from the 1st generation to the current 7th generation. The course will look at the evolution of video games from different angles: culture, technology, and business. The following topics will be discussed in the context of games: the introduction of new concepts; technological milestones; biggest commercial hits and flops; the rapid developments in computer and device technology

CPE805 ENTERING THE SPIDER'S WEB: IMPLICATIONS AND ISSUES OF WEB 2.0

Academic Unit: 3
Pre-requisite: Nil

The course presents the future of the Internet with the premise that it “is much more about a change in people and society than technology”. The course will first provide a broad overview of how Web 2.0 has evolved into an entire new culture of online mass collaboration and corroboration, thereby creating new paradigms and patterns, in education, business, relationships, communication. The rest of the course will focus on the issues and implications of Web 2.0 for engineers as members of society.

CPE810 MANAGING & RESOLVING CONFLICT

Acad Unit: 3

Conflict as a natural part of team experience; Causes of conflict: communication, personal, process; Types of conflict: Intrapersonal, interpersonal, & intergroup; Implications: constructive & destructive outcomes; Discourse analysis of conflict situations; The language of conflict; Approaches to conflict management; Emotion and conflict; Leadership styles & conflict; Proactive solution strategies: empathy, assertiveness, co-operative power; conflict mapping, creating options, broadening perspectives; Conflict-resolution through games; Case studies of conflicts at the workplace; Conflict resolution resources.

CPE811 GETTING WHAT YOU WANT WITH NEGOTIATION+

Acad Unit: 3

Approaches, styles & outcomes, Interpersonal communication, Argumentation. The Negotiation Process: Planning and preparing, defining issues, objectives, desired outcomes, Using psychology, tactics and strategies, strengthening case, working toward agreement, making proposals, looking for common ground, feedback/countermoves, helping other party move. Dealing with the difficulties: what can go wrong, handling conflict, deadlock. Working towards closure. Issues of gender, culture, perception, emotion. Use of power. Electronic negotiation.

CPE812 DEVELOPING TEAM LEADERSHIP

Acad Unit: 3

Leadership in 21st Century; Heroes and Leaders; Situational, Transactional, and Trasformational Leadership; Benefits of Teamwork; Cultivating Team Growth; Personality Types; Leadership Styles & Implications; Gender and Leadership; Handling Emotions within Team Workplace Teams; EQ and the Leader; Motivating and Managing People; Team Profiling; Creating Team Environments; Language of Leadership; Conflicts and Consequences; Feedback & Evaluation of Teams; Cross-Cultural Concepts of Leadership.

SC989 RESEARCH EXERCISE+

Acad Unit: 3
Pre-requisite: Offered to selected 2nd & 3rd yr students only

The research exercise aims to expose undergraduate students to engineering research through appropriate levels of research investigations over a period of six weeks. The work can take the form of one or more of the following: search, review and analysis of literature. collection, classification and analysis of data. set-up, measurement and analysis through experiments. theoretical and computational analysis. computer modelling. and software development.

+To be offered during the May/June vacation

CP001U/CP002U - UNDERGRADUATE RESEARCH EXPERIENCE ON CAMPUS

Academic Unit: 3 AUs
Pre-requisite: Eligibility for the NTU President Research Scholarship

Subject Description :
The Undergraduate Research general elective provides undergraduates an opportunity to pursue appropriate independent research under supervision for an average of 10 hours/week and a minimum duration of 8 months. The objective to cultivate a research culture amongst able undergraduates. By the end of the Undergraduate Research general elective, the undergraduate should have a good appreciation of research, including the need for rigor and independence, appreciation of the open-endedness of research and the formulation of and approach to research problems.

HW110 EFFECTIVE COMMUNICATION )  
HW210 TECHNICAL COMMUNICATION ) Please refer to School of Humanities & Social Sciences
HW310 PROFESSIONAL COMMUNICATION )  

CPE183/CSC183 ENGINEERS AND SOCIETY

Acad Unit: 3
Pre-requisite: Nil

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.

CPE184/CSC184 HUMAN RESOURCE MANAGEMENT AND ENTREPRENEURSHIP

Acad Unit: 3
Pre-requisite: Nil

Nature of entrepreneurship and human resource management. Developing a new venture business plan. Business formation. Understanding individual behavior in organisation. Understanding group behavior in organisation. Leadership for change and innovation. Managing human assets and performance. Productivity and total quality management. Managing creativity and innovation. Labour-management relations.