Associate of Science in Computer Science

Course Description


Main Course Description
General Programme Information Admission Requirements
Programme Aims and Objectives Information for Students
Programme Structure Faculty and Staff

Course Description

Course Code Title
Credits
CSA101 / CSA 201
Chinese Language I/II
6
CSA102 / CSA 202
English Language I/II
6
CSA103
Discrete Mathematics and Calculus
3
CSA104
Computer and Internet Fundamentals
3
CSA105 / CSA205
Computer Programming I/II
6
CSA203
Linear Algebra and Statistics
3
CSA204
Internet Systems
3
CSA206 / CSA306 / CSA107
Accounting Principles I/II
6
CSA301
Communication Skills and Critical Thinking
3
CSA302
Data Structure and Algorithm
3
CSA303 / CSA403
Database Systems I/II
6
CSA304
Computer Networks
3
CSA401
Object-Oriented Methodology
3
CSA402
Software Engineering
3
CSA405 Computer System Administration
3
CSA501
Information System Management and E-Commerce
3
CSA502
Introduction to Business Studies
3
CSA503
Operating Systems
3
CSA404
Computer Project I
3
CSA504
Computer Project II
3
CSA601 Project-placement
15


CSA101 / CSA201 Chinese Language I/II 2 Terms, 6 credits
This course aims at enhancing students' proficiency in Chinese language. It provides students with a solid foundation that integrates mainly reading, writing and speaking skills. Students are required to study some famous classical texts, the characteristics and usage of both classical and modern Chinese as a medium of presentation and communication in the academic and commercial context. They will be trained to possess the ability of handling Chinese documents and understanding classical written texts, and to have the considerably high capability of presentation skills in Chinese.
Keyword Syllabus
Classical texts; speaking, reading and writing skills; characteristics and usage of classical and modern Chinese, presentation skills.
Contents
Reading ability in classical texts; Writing skills in letters and articles; Effective presentation skills; Considerable knowledge in Chinese history and culture.

CSA102 / CSA 202 English Language I/II 2 Terms, 6 credits
The aim of the course is to strengthen and develop students' English language proficiency. Students will be provided with a solid foundation in both written and spoken English. Basic concepts and techniques in writing English correspondence, memos, notices, agenda and minutes will be introduced. Students will possess the ability of using English as a written and spoken medium effectively and accurately in both academic and business context.
Keyword Syllabus
English language; main point finding; letter writing; report writing; dialogue technique; presentation skills;
Contents
Reading skills in technical articles; Writing skills in letters, email, and technical reports; Dialogue techniques with other people; Effective oral presentation skills.

CSA103 Discrete Mathematics and Calculus 1 Term, 3 credits
To provide students with knowledge in: The mathematical representation and applications of discrete structures;The mathematical concepts and the applications of multi-variable calculus including the differentials, integrals on solving mathematically modelled modern problems. Upon completion of the course, the student will have learnt: The discrete representation of mathematical and conceptual problems and the techniques for solving these problems; The mathematical concepts and the applications of multi-variable calculus including the differentials, integrals on solving mathematically modelled modern problems.
Keyword Syllabus
Binary number system; logic and set theory; graph theory; derivatives; integration; partial derivatives; minimum and maximum.
Contents
Number systems; Logic and set theory; Graphs and trees; Differentiation and Integration; Multivariable calculus and partial differentiation; Minima and maxima.

CSA104 Computer and Internet Fundamentals 1 Term, 3 credits
To introduce the concepts and the applications of the computer and Internet environment. The objective of this course is to understand: The operating principles, basic hardware and software organization of computers; The concept of operating systems and the database and storage systems of computers; The concepts and organization of network and Internet; To gain hands on experience on using basic application software, operating system commands and Internet programming techniques.
Keyword Syllabus
Input unit; output unit; central processing unit; secondary storage; hardware; software; http; HTML; command line interface; graphical user interface; backup; computer maintenance; data processing; database; batch processing; on-line processing; office applications; Chinese character input method; Internet applications.
Contents
Computer functional units; The roles of hardware, software and operating systems; The data processing and database system; The operations in the command line interface and the graphical user interface; Networking concepts: communication links, protocols, topologies and services; Backup and computer maintenance issues; Productivity software applications and Chinese character input methods; Internet applications; Simple webpage design techniques.

CSA105 / CSA205 Computer Programming I/II 2 Terms, 6 credits
To introduce the concepts in procedural and object-oriented computer languages: To introduce the processes in software development and the factors for a successful computer software; To develop the skills for debugging and documentation. Upon the completion of this course, the students should be able: To understand procedural and object-oriented languages; To design, code and test structured program in an appropriate machine; To analyze and solve problems in computer language; To implement solutions for problems in a well-structured manner; To understand the processes of software development.
Keyword Syllabus
Syntax; procedural language; object-oriented language; debugging; human-computer interface; software development process; programming in C++; software documentation; function decomposition; software testing.
Contents
Procedural language programming concepts: Object-oriented programming concepts; C++ language syntax and environment; Low-level design: top-down approach and bottom-up approach; Functions, variables, methods and objects: scope and lifetime; Errors and debugging; The introduction to human-computer interface and windows environment; The introduction to different software development processes; Software testing, documentation and maintenance.

CSA203 Linear Algebra and Statistics 1 Term, 3 credits
To provide the basic knowledge in linear algebra and calculus and their applications; the mathematical concepts and applications of probability and statistics. Upon completion of the course, the student will have learnt: The mathematical concepts of linear algebra including multi-dimensional vector space and its applications related to solving practical problems; the mathematical techniques for discrete counting and combinatorial principles; the mathematical techniques to solve stochastic and probabilistic problems; the concepts and technique for solving statistical problems.
Keyword Syllabus
Linear algebra; vector space; matrices; Eigen-value theory; Jordan normal form; projections; least squares; sequences and series; queuing theory and stochastic; statistics; random variables; Gaussian distribution.
Contents
Vector and matrices; Transformations and products; Eigen-value theory; Jordon normal form; Least squares; Permutations and combinations; Series; Introduction to queue theory; Introduction to random processes and stochastic processes; Statistical analysis; Statistical factors and measures.

CSA204 Internet Systems 1 Term, 3 credits
To introduce the fundamental concepts and components involved in internet system. Upon completion of the course, students should have the knowledge: To effectively use network programming interface; To write computer programs in the web-based environment, on both the client-side (the browser) and the server-side (the web-server); To develop an understanding of communication protocols and the Internet networked environment.
Keyword Syllabus
Socket programming; TCP; UDP; system calls; web client-side scripting languages; web server-side scripting languages; CGI; CSS; SSL.
Contents
The networking support in operating systems; Inter-process communication facilities; Socket programming; Web client-side programming; Web server-side programming; Database manipulation in Internet systems; Internet system security issues.

CSA206 / CSA306 / CSA107 Accounting Principles I/II 2 Terms, 6 credits
To provide students with an understanding of the accounting process and the fundamental concepts in financial accounting and managerial accounting, and to apply the techniques for generating the financial statements of a specified business or organization. Upon completion of the course, the students should have to knowledge: To master the skills of double entry and accounting procedures; To understand the concepts and assumptions which underlie the methods accountants used; To prepare, interpret and analyze financial statements; To prepare company accounts and cash flow statements; To understand and explain the concepts of cost and budgeting.
Keyword Syllabus
Accounting cycle; accounts receivable and payable; inventory; cash flow statement; budgeting.
Contents
The accounting cycle; Merchandising operations; Systems and control; Accounts receivable and payable; Inventories; Fixed assets and depreciation; Company accounting; Interpretation and analysis of financial statements; Cash flow statement; Cost concepts; Budgeting.

CSA301 Communication Skills and Critical Thinking 1 Term, 3 credits
To introduce the basic theory and principles of effective communication and learning: To teach the techniques relating to critical thinking and problem solving Upon completion of the course, students should be able to: Express their ideas effectively, by traditional and computer-based methods; Communicate effectively with other people, and the ability to identify possible areas of problems and shortcomings as wells as the areas of distinctions and success.
Keyword Syllabus
Communication theory; media; psychology; learning mechanisms.
Contents
Communication activities of human beings; Usage of communication media; Psychology of communication; Effective self-learning; Computer-aided learning; Psychology of learning and reasons for learning difficulties; Techniques for taking note and answering question; Self-management; The importance of critical and creative thinking; The skills to discover the errors in the statements; Deduction and induction.

CSA302 Data Structure and Algorithm 1 Term, 3 credits
To introduce data structures and the corresponding algorithms for storing and handling information in computers. Upon completion of the course, students will have: A solid knowledge in the various commonly used data structures and algorithms; The ability to analyze the execution time and memory requirements of different algorithms; The ability to reason and examine the correctness of algorithm and data structure.
Keyword Syllabus
Abstract data types; interface functions; recursive functions; Big-O notation; sorting algorithms; searching algorithms.
Contents
Abstract data types; Linked list; Queue; Stack; Tree; Heap; Hash; Searching algorithms; Sorting algorithms; Introduction to complexity analysis.

CSA303 / CSA403 Database Systems I/II 2 Terms, 6 credits
To teach students the concepts of database management systems and the methods for designing an efficient and effective database. Upon completion of the course, students will have advanced knowledge in: The concepts in relational database model; The techniques used in relational database design; The development of client-server database applications.
Keyword Syllabus
Relational model; relational database; ER diagram; normalization; SQL; ODBC; ADO; Visual Basic.
Contents
Introduction to relational model; Introduction to relational algebra; Conceptual models and Logical models; Entity-relationship diagram; Functional dependence and normalization; Data definition language; Data manipulation language; Introduction to ODBC / ADO concepts; Client-side programming of database applications by Visual Basic; Transactions and concurrency; Database recovery and integrity.

CSA304 Computer Networks 1 Term, 3 credits
To introduce the concepts and functions of data communication, in the framework of the reference models Upon completion of the course, students should be able to:Understand routed and routing protocols, error detection and monitoring methods; Consider various security issues in a networked environment
Keyword Syllabus
Reference model; protocol; frame and packet; connection-oriented; connectionless; TCP; UDP; router; firewall.
Contents
Communication protocol; ISO/OSI reference model; Connection-oriented and connectionless network services; TCP/IP and the related services; Routing protocol, problems and resolutions; Introduction to higher level services: smb, rpc, etc.; Router configuration and maintenance; Concepts in firewall and network security

CSA401 Object-Oriented Methodology 1 Term, 3 credits
To provide the concepts, design and implementation techniques in the object-oriented approach of software development. Upon completion of the course, students should have the knowledge:To design a program based on advanced object-oriented approaches; To implement the program design by using Java.
Keyword Syllabus
Object-oriented language; programming in Java; abstraction; encapsulation; inheritance; polymorphism; class; object; JavaBean; component engineering.
Contents
Object-oriented programming concepts; Constructors and destructors; Member functions and access specifier; Function overloading; Inheritance; Polymorphism with abstract class; Java class library; Graphics; Applet and event handling; Interfaces and components; Multithreading; Errors and debugging.

CSA402 Software Engineering 1 Term, 3 credits
To provide students with the principles and methodologies of software engineering. Upon completion of the course, students should have knowledge in:The models of software development; The use the various design tools; Demonstrating the techniques of comprehensive testing; The tools for version control, documentation and Computer Aided Software Engineering (CASE); The basic aspects of a Capability Maturity Model (CMM).
Keyword Syllabus
Software life cycle; waterfall model; rapid prototyping; iterative model; context diagram and data flow diagram; ER diagram; UML; unit test; integration test; CVS; CASE;CMM.
Contents
Details of waterfall model and the corresponding problems; Alternatives to waterfall model; Structural design tools; Object-oriented design tools; Unit test and integration test; Test data preparation; Version control and documentation tools; CASE tools; Capability Maturity Model (CMM).

CSA405 Computer System Administration 1 Term, 3 credits
To provide basic knowledge to become a UNIX and Windows administrator; To provide knowledge on operating systems configurations; To develop skills for system tuning of operating systems.
Keyword Syllabus
UNIX architecture, Windows architecture, UNIX commands, script programming; system tuning; system integration in LAN; system administration.
Contents
Basic UNIX architecture, UNIX commands, shell script programming, UNIX configuration files, UNIX system tuning techniques, basic Windows architecture.

CSA501 Information System Management and E-Commerce 1 Term, 3 credits
To introduce the usage and importance of information system and E-Commerce system in businesses Upon completion of the course, students should be able to:Identify the possible reasons for success or failure of an information system; Explain the concepts of E-Commerce, its benefits, and the related security problems.
Keyword Syllabus
Computer technologies; computer applications; management information systems; customer relation management systems; decision support systems; E-Commerce; SSL; SET; Internet certificate.
Contents
The revolution of computer technologies in the business world; Technologies provided by computer; Possible applications of computer technology in business world; The key factors of a successful information system; Management information systems; Customer relation management systems; Decision support systems; E-commerce systems; Logistics systems; Basic cryptography; Secure socket layer and secure electronic transactions; Authentication structures in the Internet; Real-life examples and case studies.

CSA502 Introduction to Business Studies 1 Term, 3 credits
To introduce the general concepts of business. Upon completion of the course, students will learn about:Business framework; Basic business functions; Managerial functions.
Keyword Syllabus
Public relationship; intra-organizational relations; inter-organizational relations; marketing; management.
Contents
Business public relationship; Business organization; Business communication skills; Creating and handling the intra-organizational relations; Creating and handling the inter-organizational relations; Small business and entrepreneurship; Marketing; Accounting and finance; Production and operations management; Human resource management; Management trends and issues.

CSA503 Operating Systems 1 Term, 3 credits
To introduce various concepts and algorithms in operating systems Upon completion of the course, students should be able to:Identify the functions and facilities of operating systems; Explain various data structures and algorithms in operating system.
Keyword Syllabus
Multiprogramming; multitasking; time-sharing; hardware interrupt; system call; process state; process control block; CPU scheduling; memory allocation methods; paging; virtual memory; page replacement algorithm; file and directory; open-file table; file allocation method; critical section; deadlock; semaphore.
Contents
Operating system structure; Hardware interrupt and system call; Process concepts and management; Memory management and virtual memory; File system; Cooperative processes and deadlock; Case studies.

CSA404 Computer Project I 1 Term, 3 credits
To gain practical experience of integrating the concepts and the practical techniques for the design and implementation of IT systems; To consolidate what they have learnt from previous terms in IT system development and to enhance their team spirit; To strengthen their interpersonal skills and independent problem solving ability while conducting the design and implementation of IT systems. Upon completion of the course, students should possess:The skills in solving IT system development problems; The ability to apply the knowledge in computer programming, system and database design to a specified IT system; Self-learning ability, experience on independent and critical thinking, and strong sense of commitment; Effective communication, presentation and collaborative skills.
Keyword Syllabus
Planning; proposal; functional and non-functional requirements; design specifications; documentation; implementation; demonstration and presentation.
Contents
The students will be grouped into different teams to complete the projects. The projects emphasize the realistic nature of problem solving in a commercial environment. The project topics can be suggested by the course advisors or by the students. Weekly meetings with be held to assess and monitor the progress of the students and to guide them to solve a specified problem according to the design and implementation phases as listed below:Project proposal; Requirement analysis; System design and specifications; System implementation; Documentation; System demonstration and presentation; The assessment are based on the following factors; Innovation; Difficulty; Ability to find solutions; Collaboration between group members; Documents quality; Presentation skills.

CSA504 Computer Project II 1 Term, 3 credits
To gain practical experience of integrating the concepts and the practical techniques for the design and implementation of IT systems; To consolidate what they have learnt from previous terms in IT system development and to enhance their team spirit; To strengthen their interpersonal skills and independent problem solving ability while conducting the design and implementation of IT systems. Upon completion of the course, students should possess:The skills in solving IT system development problems; The ability to apply the knowledge in computer programming, system and database design to a specified IT system; Self-learning ability, experience on independent and critical thinking, and strong sense of commitment ; Effective communication, presentation and collaborative skills.
Keyword Syllabus
Planning; proposal; functional and non-functional requirements; design specifications; documentation; implementation; demonstration and presentation.
Contents
The students will be grouped into different teams to complete the projects. The projects emphasize the realistic nature of problem solving in a commercial environment. The project topics can be suggested by the course advisors or by the students. Weekly meetings with be held to assess and monitor the progress of the students and to guide them to solve a specified problem according to the design and implementation phases as listed below: Project proposal; Requirement analysis; System design and specifications; System implementation; Documentation; System demonstration and presentation; The assessment are based on the following factors; Innovation; Difficulty; Ability to find solutions; Collaboration between group members; Documents quality; Presentation skills.

CSA601 Project-placement 1 Term, 15 credits
To provide opportunities to students in gaining practical working experience and in exposing themselves to practical working environment. Upon completion of the course, students should have:Consolidated the knowledge and skills from the programme; Gained practical working experience and learnt the communication skills and learnt how to interact effectively with their colleagues; Prepared themselves for their future career development in the computer and IT industries.
Keyword Syllabus
On-site learning; Professionalism; Practical experiences; IT services.
Contents
A student will be arranged to undertake a Project-placement Scheme in a company to work full-time for five months. A course advisor will be assigned to monitor and assess the progress and the quality of the student's work in the external company. Monthly meetings will be held in which reports on progress and problems of their works will be submitted. The advisor will share the experience and provide suggestions to the student on issues related in the workplace.
The college will also arrange seminars for each alternative week. The speakers will be invited from the industry and the academic fields. The objective of this seminar is to enhance the knowledge of the students to the front of technology. After each seminar, the students have to submit a report on the subject presented.