Overview of Compulsory Courses
The 2021 curriculum structure of the Computer Science Study Program is as follows: (1) Compulsory courses with a total of 98 credits; and (2) elective courses with a minimum of 46 credits. Elective courses can be: (a) elective courses offered by the Study Program; (b) courses taken from study programs within UGM; (c) courses taken from other universities outside UGM; (d) courses (credit recognition/equivalent) from MBKM activities. Taking courses from other study programs inside UGM can start from semester 2.
There are 8 (eight) types of MBKM activities, which are provided by the study program and can be chosen by students, namely: (1) Student exchange; (2) Internship or work practice; (3) Research; (4) Independent study/project; (5) Entrepreneurial Activities; (6) Projects in the Village / KKNT; (7) Teaching assistance in schools; (8) Humanitarian projects.
Compulsory Courses | Courses Equivalency | Rules of Transition | Syllabus
click check boxes to see more each content
Compulsory Courses
No | Code | Courses | Credits | ECTS | Prerequisite |
1st Semester | |||||
1 | MII21-1201 | Programming | 3 | 4,5 | – |
2 | MII21-1202 | Lab work in Programming | 1 | 1,5 | |
3 | MII21-1002 | Logic for Computer Science | 2 | 3 | – |
4 | MII21-1001 | Elementary Linear Algebra | 2 | 3 | – |
5 | MMM-1101 | Calculus 1 | 3 | 4,5 | – |
6 | MKK-1101 | Basic Chemistry 1 | 3 | 4,5 | – |
7 | MFF-1011 | Basic Physics 1 | 3 | 4,5 | – |
8 | MII21-1003 | Scientific Writing and Ethics | 2 | 3 | – |
9 | UNU-100x | Religion | 2 | 3 | – |
21 | 31,5 | ||||
2nd Semester | |||||
1 | MII21-1203 | Algorithms and Data Structures | 3 | 4,5 | Programming (1) |
2 | MII21-1004 | English | 2 | 3 | – |
3 | MII21-1005 | Integral and Differential Equations | 3 | 4,5 | Calculus 1 (1) |
4 | MII21-1006 | Discrete Mathematics | 3 | 4,5 | – |
5 | MII21-1601 | Organization and Computer Architecture | 2 | 3 | – |
6 | MII21-1007 | Introduction to Statistics | 2 | 3 | Calculus 1 (1) |
7 | MII21-1204 | Lab work in Algorithms and Data Structures | 1 | 1,5 | |
8 | MII21-1602 | Digital Systems | 2 | 3 | Algorithms and Data Structures (2) |
9 | UNU-1010 | Pancasila | 2 | 3 | – |
20 | 30 | ||||
3rd Semester | |||||
1 | MII21-2201 | Analysis of Algorithm and Complexity | 3 | 4,5 | Discrete Mathematics (2) , Algorithms and Data Structures (2) |
2 | MII21-2501 | Database | 3 | 4,5 | Discrete Mathematics (2) |
3 | MII21-2601 | Computer Network | 2 | 3 | Discrete Mathematics (2) |
4 | MII21-2401 | Artificial Intelligence | 3 | 4,5 | Logic for Computer Science (1) |
5 | MII21-2502 | Database Lab work | 1 | 1,5 | Database (3)* |
6 | MII21-2603 | Computer System and Network Lab work | 1 | 1,5 | Operating Systems (3)*, Computer Network (3)* |
7 | MII21-2001 | Probability and Stochastic Processes | 2 | 3 | Discrete Mathematics (2) |
8 | MII21-2602 | Operating Systems | 2 | 3 | Organization and Computer Architecture (2) |
9 | UNU-3000 | Citizenship | 2 | 3 | – |
19 | 28,5 | ||||
4th Semester | |||||
1 | MII21-2002 | Philosophy of Computer Science | 1 | 1,5 | 50 SKS |
2 | MII21-2003 | Startup Digital Development | 2 | 3 | – |
3 | MII21-2503 | Software Engineering Methods | 2 | 3 | Database (3) |
4 | MII21-2504 | Workshop on Implementing Software Design | 2 | 3 | Software Engineering Methods (4)*, Algorithms and Data Structures (2) |
5 | MII21-2402 | Machine Learning | 3 | 4,5 | Artificial Intelligence (3) |
6 | MII21-2202 | Languages and Automata | 3 | 4,5 | Logic for Computer Science (1) Discrete Mathematics (2)* |
7 | MII21-2203 | Numerical Methods | 2 | 3 | Integral and Differential Equations (2)*, Elementary Linear Algebra (1) |
8 | MII21-2209 | Cryptography and Network Security | 3 | 4,5 | Discrete Mathematics (2) |
9 | 1st Elective/ MBKM | 3 | 4,5 | ||
21 | 31,5 | ||||
5th Semester | |||||
1 | MII21-3001 | Seminar Class | 1 | 1,5 | Research Method of Computer Science (5)* |
2 | MII21-3002 | Research Method of Computer Science | 2 | 3 | 70 SKS |
3 | MII21-3401 | Deep Learning | 3 | 4,5 | Machine Learning (4) |
4 | MII21-3501 | Software Engineering Project | 3 | 4,5 | Workshop on Implementing Software Design (4) |
5 | 2nd Elective/ MBKM | 3 | 4,5 | ||
6 | 3rd Elective/ MBKM | 3 | 4,5 | ||
7 | 4th Elective/ MBKM | 3 | 4,5 | ||
8 | 5th Elective/ MBKM | 3 | 4,5 | ||
21 | 31,5 | ||||
6th Semester | |||||
1 | UNU-4500 | Community Service Program | 3 | 4,5 | 100 SKS |
2 | 6th Elective/ MBKM | 3 | 4,5 | ||
3 | 7th Elective/ MBKM | 3 | 4,5 | ||
4 | 48h Elective/ MBKM | 3 | 4,5 | ||
5 | 9th Elective/ MBKM | 3 | 4,5 | ||
6 | 10th Elective/ MBKM | 3 | 4,5 | ||
7 | 11th Elective/MBKM | 3 | 4,5 | ||
21 | 31,5 | ||||
7th Semester | |||||
1 | MII21-4001 | Undergraduate Thesis Proposal | 2 | 3 | Seminar Class (5)* |
2 | 11th Elective/ MBKM | 2 | 3 | ||
3 | 12th Elective/MBKM | 2 | 3 | ||
4 | 13th Elective/ MBKM | 3 | 4,5 | ||
5 | 14th Elective/MBKM | 3 | 4,5 | ||
6 | 15th Elective/MBKM | 3 | 4,5 | ||
15 | 22,5 | ||||
8th Semester | |||||
1 | MII21-4002 | Undergraduate Thesis | 6 | Undergraduate Thesis Proposal (7)* | |
6 | |||||
Total | 144 |
Courses Equivalency
In this curriculum, there are new courses but can be equalized with the previous curriculum. Table 3.35 shows the equivalency of the courses from the 2016 Curriculum and the 2021 Curriculum.
Table 3.35 The Equivalency of Courses from the 2016 Curriculum to the 2021 Curriculum
No | Course Name (The 2016 Curriculum) | Credit Points | Course Name (The 2021 Curriculum) | Credit Points |
1 | Programming 1 | 3 | Programming | 3 |
2 | Lab Work in Programming 1 | 1 | Lab Work in Programming | 1 |
3 | Scientific Writing | 2 | Scientific Writing and Ethics | 2 |
4 5 |
Programming 2 Advanced Algorithms |
3 3 | Algorithms and Data Structures | 3 |
6 | Lab Work in Programming 2 | 1 | Lab Work in Algorithms and Data Structures | 1 |
7 8 |
Calculus 2 Elementary Differential Equations |
3 3 |
Integral and Differential Equations | 3 |
9 | Artificial Intelligence | 3 | Artificial Intelligence | 3 |
10 11 | Lab Work in Operating Systems Lab Work in Computer Networks |
1 1 |
Lab Work in Computer Systems and Networks | 1 |
12 | Software Development | 3 | Software Engineering Methods | 2 |
13 | Lab Work in Software Development | 1 | Workshop in the Implementation of Software Design | 2 |
14 | Entrepreneurship and Success Skills | 2 | Startup Digital Development | 1 |
15 | Philosophy of Computer Science | 2 | Philosophy of Computer Science | 1 |
16 | Research Methodology | 2 | Research Method in Computer Science | 2 |
17 | Artificial Neural Networks | 3 | Deep Learning | 3 |
18 | Seminar | 1 | Seminar Class | 1 |
19 | Probability and Stochastic Processes | 3 | Introduction to Statistics Probability and Stochastic Processes |
2 2 |
Notes: Courses from curriculum 2016 that are not listed in this equivalency table are courses that have no equivalent in curriculum 2021. Courses in curriculum 2021 that are not listed in this table are new courses introduced.
Rules of Transition
The rules of transition from curriculum 2016 to curriculum 2021 are as follows:
- Choose the pair courses from the 2016 Curriculum, OR
- Choose the equivalent courses from the 2021 Curriculum in full (then fulfill the number of credits by taking elective courses) OR
- Choose the equivalent courses from the 2021 Curriculum and cancel one of the courses from the courses pair from The 2016 Curriculum, but it is not allowed to claim all of the three courses together.
Here is an example of courses equivalency case from two courses in the 2016 Curriculum to one course in the 2021 Curriculum. For example, if there is a student Y class of 2020 or before has taken Calculus 2 course (3 credits); Elementary Differential Equations course (3 credits); and has a grade for each course in the 2016 Curriculum, and the equivalent courses in the 2021 Curriculum is Integral and Differential Equations course (3 credits), then during Judicium, student Y can choose one of the alternative 1, alternative 2, alternative 3 or alternative 4, but the student is not allowed to choose alternative 5 mentioned in Table 3.36a and 3.36b.
Table 3.36a An example of a student who had course grades of two curriculums
Equalized Course Name (The 2016 Curriculum) | Credits | Grade Example | Course Name (The 2021 Curriculum) | Credits | Grade Example |
Calculus 2 Integral and Differential Equations | 3 3 | C B+ | Integral and Differential Equation | 3 | B |
Table 3.36b Some guide of choosing equivalency
Alternative | Description | Courses Chosen |
Alt. 1 (allowed) | The student chooses/claims Calculus 2 and Elementary Differential Equations courses. | Calculus 2 (3 credits), grade C EDE (3 credits), grade B+ |
Alt. 2 (allowed) | The student chooses/claims Integral and Differential Equations course. | Integral and Differential Equations (3 credits), grade B, |
Alt. 3 (allowed) | The student chooses/claims Calculus 2 and Integral and Differential Equations courses. | Calculus 2 (3 credits), grade C Integral and Differential Equations (3 credits), grade B, |
Alt. 4 (allowed) | The student chooses/claims Elementary Differential Equations and Integral and Differential Equations courses. | EDE (2 credits), grade B+ Integral and Differential Equations (3 credits), grade B, |
Alt. 5 (not allowed) | The student is not allowed to claim Calculus 2 and Elementary Differential Equations, and Integral and Differential Equations courses altogether. |
Silabus of Courses
function f2show(selected) { if (selected) { document.getElementById(“divcc2”).style.display = “”; document.getElementById(“divcc21”).style.display = “”; } else { document.getElementById(“divcc2”).style.display = “none”; document.getElementById(“divcc21”).style.display = “none”; } } function f3show(selected) { if (selected) { document.getElementById(“divcc3”).style.display = “”; document.getElementById(“divcc31”).style.display = “”; } else { document.getElementById(“divcc3”).style.display = “none”; document.getElementById(“divcc31”).style.display = “none”; } } function f4show(selected) { if (selected) { document.getElementById(“divcc4”).style.display = “”; document.getElementById(“divcc41”).style.display = “”; } else { document.getElementById(“divcc4”).style.display = “none”; document.getElementById(“divcc41”).style.display = “none”; } } function f5show(selected) { if (selected) { document.getElementById(“divcc5”).style.display = “”; document.getElementById(“divcc51”).style.display = “”; } else { document.getElementById(“divcc5”).style.display = “none”; document.getElementById(“divcc51”).style.display = “none”; } }