Computer Science at USM began with a course in programming in 1974. It has since developed into a specialisation in Computer Science under the Bachelor of Science (Mathematics) honours degree, and eventually the Bachelor of Science (Computer Science) (B.Sc. (Comp.Sc.)) degree with honours was offered. Beginning in the 1983/84 session, after a complete revamp of the curriculum, the Bachelor of Computer Science (B.Comp.Sc.) degree with honours was offered to replace the B.Sc. (Comp.Sc.) degree.
USM's B.Comp.Sc. (Hons.) has succeeded significantly in producing highly qualified graduates that have been widely accepted by both the public and the private sectors. An important contributing factor to this success is its strong curriculum, which always strives to achieve a balance between the teaching of the theory of computing and exposure to practical aspects. The curriculum has been continually updated in accordance with current technology. For instance, in the 1992/93 session a new curriculum which was more up-to-date was implemented, and in the 1994/95 session, it was further modified to conform to the University Academic System (SPU). Beginning with the 1996/97 session, the curriculum had been adjusted to reduce the minimum period for graduation from 4 years to 3 years under the Three Year Academic System (SPTT). In 2000/01 session a new curriculum was introduced and adapted to conform with the recommendation made by the National Higher Education Council on SPTT (SPTT(M)). In 2006/07 session, a new revised curriculum was introduced. The degree programme has been adjusted in 2009/10 to revert the minimum period for graduation to 4 years (Four Year Academic Systems) (Sistem Pengajian Empat Tahun) (SPET).
In 2019/20 academic session, a revised curriculum was introduced which involves restructuring the degree programme into three programs that is offered as single entry multiple track entrance mechanism. This mechanism allows a unified intake for three programs and students will start to specialize at their fourth semester based on their choices.
Major: Computing Infrastructure (Infrastruktur Komputeran)
Computing infrastructure which encompasses among others computers, embedded systems, security technologies and Internet technology, represents the focal point of the 21st century. In line with the advancement in this field, it has steered the country to be more resilient in economy, progressive in increasing productivities and aggressive in enhancing the quality of the country’s well-being. This major will address demand in computing professionals who are able to explore technical knowledge and skills that are needed by the industry as key players in pioneering ideas and technological advancements in related fields.
In this major, the essentials of the emerging technological architecture are covered from computer hardware to design and implementation of computer languages, modern operating systems and networks. Students will also be introduced to creating, developing and implementing algorithms, scheduling and optimisation in distributed and cloud computing as well as information security. Students may then pursue their specific interests in either Net-Centric Computing & Embedded Systems or Cybersecurity.
Ultimately, graduates majoring in Computing Infrastructure will be able to:
* apply practical knowledge and skills of this field in managing computer networks in modern organisation and network service provider, devising interfacing for embedded systems and addressing cyber menaces and preventive measures in digital forensics, security management and information assurance [Technical Knowledge].
* create, develop and implement algorithms and/or components for managing, scheduling and optimizing computer services for distributed and cloud computing environments, and network-centric services which include client-server, network and communication security, and low-level network programming [Design Solutions in Context].
The general educational goal of the Bachelor of Computer Science (Hons.) degree programme is to produce high-quality graduates with the necessary professional skills to practice as successful computing professionals and compete effectively in a world of rapid technological change. Therefore, the educational objectives of the programme are to train:
PEO 1: Computing practitioners who are able to adopt appropriate methodologies and techniques to provide computing solutions based on relevant knowledge and technical skills in the fields of computing which are in line with the industry requirements.
PEO 2: Computing practitioners who have leadership skills, autonomy and responsibility and communicate effectively with computing-related stakeholders.
PEO 3: Computing practitioners who have positive attitudes, commitment for lifelong learning and entrepreneurial mind-set within industry for self and career progression.
PEO 4: Computing practitioners who uphold ethical and professional practices in maintaining self and professional integrity.
At the end of the programme, graduates will be able to:
PLO 1: Analyse concepts, principles, and theories relating to computer sciences [Knowledge and Understanding].
PLO 2: Apply appropriate algorithm and techniques for computing solutions [Practical Skills].
PLO 3: Construct computing solution using appropriate algorithm and technique for non-routine problem [Cognitive Skills].
PLO 4: Communicate effectively and confidently with diverse stakeholders in appropriate context in a well-structured manner to a diversity of audiences [Communication Skills].
PLO 5: Interact effectively with different people in diverse learning and working communities in computing practices as well as other groups [Interpersonal Skills].
PLO 6: Uphold professional and ethical practices in delivering services related to the field of computing and varied social environment [Ethics and Professionalism].
PLO 7: Engage effectively in self-directed lifelong learning and professional pathways [Personal Skills].
PLO 8: Apply entrepreneurial mind set in delivering solutions under changing industry landscape [Entrepreneurial Skills].
PLO 9: Demonstrate leadership, teamwork, accountability, and responsibility in delivering services related to field of computing [Leadership, Autonomy and Responsibility].
PLO 10 Use a broad range of information and software tools to support study or professional work in computing [Digital Skills].
PLO 11 Use numeracy skills for problem solving in the field of in computing practices [Numeracy Skills].
Programme requirements together with course code classification for all Bachelor of Computer Science (Honours) programmes are given in the table below.
Programme Requirements |
Course Type |
Number of Units |
Type of Programme |
||
Computer Science |
||
(a) Core |
T |
|
(i) Computing |
60 |
|
(ii) Specialisation |
20 |
|
(b) Elective |
E |
21 |
(c) Free Module / |
E |
15 |
University Requirements |
U |
16 |
Minimum Total Unit Requirements |
|
132 |
CORE COURSES:80 CREDITS |
||
Common Core (60 Credits) |
||
Course Code |
Course Name |
Credit Hours |
CPT111 |
Principle of Programming |
3 |
CPT112 |
Discrete Structures |
4 |
CPT113 |
Programming Methodology and Data Structures |
3 |
CST131 |
Computer Organisations |
4 |
CPC151 |
Fundamentals of Logic and Artificial Intelligence |
4 |
CPC152 |
Foundations and Programming for Data Analytics |
4 |
CAT201 |
Integrated Software Development Workshop |
2 |
CMT221 |
Database Organisation & Design |
4 |
CSE241 |
Foundations of Software Engineering |
4 |
CST232 |
Operating Systems |
3 |
CST235 |
Principles of Computer Networks and Information Security |
4 |
CPT212 |
Design and Analysis of Algorithms |
4 |
CAT302 |
Industrial Training |
12 |
CAT304 |
Group Innovation Project and Study for Sustainability |
3 |
CAT402 |
Professional and Technopreneurship Development |
2 |
|
Total Credits |
60 |
Major Core (20 Credits) |
||
CST236 |
Digital Systems Design |
3 |
CPT316 |
Programming Language Implementation and Paradigms |
3 |
CST431 |
Systems Security and Protection |
3 |
CST435 |
Principles of Parallel Computing |
3 |
CAT403 |
Computing Infrastructure Major Project |
8 |
|
Total Credits |
20 |
ELECTIVES COURSE COMPONENTS |
|
|
Must Take all courses (due to electives becoming specializations) |
|
|
CST337 |
Network Configurations and Protocols |
3 |
CST338 |
Network and Communication Security |
3 |
CST339 |
Information Security Management and Assurance |
3 |
CPC357 |
loT Architecture and Smart Applications |
3 |
CST432 |
Microprocessors & Embedded Systems |
3 |
CST434 |
Wireless Network and Mobile Computing |
3 |
CST436 |
Digital Forensics & Investigations |
3 |
|
Total Credits |
21 |
FREE MODULE COURSE COMPONENTS |
|
|
CSE443 |
Real-time Software Engineering |
3 |
Free Module from other School |
12 |
|
Total Credits |
15 |
UNIVERSITY COURSE (LOCAL STUDENTS) |
|
Bahasa Malaysia IV |
2 |
Teras Keusahawanan |
2 |
Falsafah dan Isu Semasa |
2 |
Penghayatan Etika dan Peradaban |
2 |
Kursus Bahasa Inggeris |
4 |
Kursus Kokurikulum |
2 |
Pilihan : Kokurikulum / Bahasa Ketiga/ Kursus Kemahiran/Opsyen |
2 |
Total Credits |
16 |
UNIVERSITY COURSE (INTERNATIONAL STUDENTS) |
|
Bahasa Malaysia I |
2 |
Pengajian Malaysia |
4 |
Falsafah dan Isu Semasa |
2 |
Kursus Bahasa Inggeris |
4 |
Kursus Kokurikulum |
2 |
Pakej Bahasa Ketiga/Bahasa Inggeris Khusus/KoKurikulum/Kursus Kemahiran/Opsyen |
2 |
Total Credits |
16 |
Total Units |
132 |