Dokumen Kurikulum 2013-2018
Program Studi : Teknik Informatika
Lampiran I
























Sekolah Teknik Elektro dan Informatika
Institut Teknologi Bandung



Bidang Akademik dan
Kemahasiswaan
Institut Teknologi
Bandung
Kode Dokumen Total Halaman
Kur2013-S1-IF [82]
Versi [3] 5 September 2013

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 2 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

KURIKULUM ITB 2013-2018 – PROGRAM SARJANA
Program Studi Teknik Informatika
Sekolah Teknik Elektro dan Informatika



Silabus dan Satuan Acara Pengajaran (SAP)

Semester 2

Dasar Pemrograman
Kode Matakuliah: IF1210 Bobot sks: 2 Semester:2 KK / Unit Penanggung Jawab:
KK Rekayasa
Perangkat Lunak dan Data
Sifat:
Wajib Prodi
Nama Matakuliah
Dasar Pemrograman
Programming Fundamentals
Silabus Ringkas
Mata kuliah ini mengenalkan tentang konsep fundamental pemrograman: abstraksi, dekomposisi problem, modularisasi, rekurens; skill/praktek pemrograman skala kecil (aspek koding); dan memberikan peta dunia
pemrograman untuk dapat mempelajari pemrograman secara lebih mendalam pada tahap berikutnya.
This course offers the fundamental concepts of programming: abstraction, problem decomposition, modularization,
recurrence; skill in small scale programming (coding aspects, through laboratory work); and overview of the big
picture of programming and prepares the students to learn programming more deep ly in the next stage
Silabus Lengkap
Konsep fundamental pemrograman: abstraksi, dekomposisi problem, modularisasi, berpikir rekursif dan prosedural
Tools dan term pemrograman: bahasa pemrograman, IDE, compiler, interpreter, source code, machine code,
eksekusi program, algoritma, dll
Pemrograman (aspek koding) dengan paradigma pemrograman fungsional dan prosedural, dengan beberapa bahasa
yang dipilih untuk skala kecil dan persoalan umum.
Gambaran besar dunia pemrograman dalam bidang computing, yang menantang dan menumbuhkan minat (the
beauty and joy of computer programming)
Fundamental concepts of programming: abstraction, problem decomposition, modularization, recursive and procedural thinkings
Programming tools and terms: programming language, IDE, compiler, interpreter, source code, machine code,
program execution, algorithm, etc
Programming (coing aspects) in functional dan procedural paradigms using multiple proggramming languages for
general & small scale problems
The big picture of programming in the field of computing, that is callenging and interesting (the beauty and joy of
compter programming)
Luaran (Outcomes)
1. Mahasiswa mengenal dan memahami semua pemikiran, istilah, tools yang dipakai dalam menyelesaikan
persoalan melalui pembuatan progam
2. Mahasiswa mengenal kelas-kelas persoalan dan kelas-kelas programmer dan kelas-kelas program
3. Mahasiswa mengenal teknik-teknik yang dibutuhkan dalam memrogram dan mempraktekkan dengan skala
kecil
4. Mahasiswa mampu mengkode program sederhana berskala kecil dan persoalan umum
5. Mahasiswa menjadi tertantang dan berminat untuk mempelajari pemrograman secara lebih mendalam pada
tahap berikutnya
Matakuliah Terkait


Kegiatan Penunjang Praktikum mingguan
Pustaka
1. Inggriani : “Diktat Kuliah Dasar Pemrograman (Bagian Pemrograman Prosedural)”, Kelompok Keahlian Rekayasa
Perangkat Lunak dan Data, Edisi April 2007.
2. Inggriani Liem, “Diktat Kuliah Dasar Pemrograman, Bagian Pemrograman Fungsional”, KK Rekayasa Perangkat Lunak
dan Data, STEI, ITB, Februari 2008.
3. Abelson H, Sussman G & Sussman J: “Structured and Interpretation of Computer Programs”, 2nd edi, MIT press.
Available at http://mitpress.mit.edu/sicp

4. Beberapa bahan dari internet (akan dipilih dan ditambahkan yang relevan) antara lain:
a. The Beauty and Joy of Computing. http://inst.eecs.berkeley.edu/~cs10/sp13
b. Exploring Computational Thinking, http://www.google.com/edu/computational-thinking/index.html
c. Introduction to EECS, http://mit.edu/6.01/handouts/readings.pdf
5. Sri Purwanti, “Diktat LISP”, Departemen Teknik Informatika, ITB, 2006-2007. (pendukung)
6. Inggriani : “Contoh Program Kecil dalam Bahasa Pascal”, Program Studi Teknik Informatika ITB, STEI-ITB, Edisi April
2007. (pendukung)
Panduan Penilaian
Ujian Tengah Semester: paper based (25%)
Ujian Akhir Semester: paper based (25%)
Kuis dan PR: paper based (15%)
Praktikum dan Tugas project (35%)
Catatan Tambahan
Strategi pemberian materi dasar pemrograman:
1. Breadth first
2. Memberikan sense “the beauty and joy of computrer programming” (menyenangkan) dan menantang
3. Membuka wawasan, multi bahasa, multi paradigma
4. Menekankan pada penguatan konsep/abstraksi dibanding tools pemrograman
Karena merupakan kuliah pertama, kuliah harus dimulai dengan kemampuan mahasiswa yang seragam dalam
menggunakan “environment” dan protokol penggunaan TIK.
Bahasa yang dipilih: 1 bahasa fungsional (), 2 bahasa prosedural (pascal dan C sederhana). Pascal dipilih karena
sederhana
Materi pemrograman C diberikan untuk memberikan sense multi bahasa; diberikan dengan pembungkusan
(wrapping) dan pembungkusan sehingga kerumitan bahasa C (di banding pascal) tidak tampak

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 3 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Konsep dan Lingkungan
Pemrograman
Konsep:
What is Programming
Fundamentals concept
Praktek:
Warming up untuk
submission
Mahasiswa memahami konsep dasar
pemrograman
Mahasiswa dapat menggunakan
lingkungan untuk setoran tugas
pemrograman

2
Konsep:
Programming Tools and
Environment, dimanakah
peran bahasa pemrograman
Praktek:
Memprogram dengan
sederhana dan menarik

Mahasiswa memahami tools,
lingkungan, dan term-term dunia
pemrograman

Mahasiswa dapat “memprogram”
pada lingkungan sederhana dengan
Scratch, Bob!, atau lainnya (tugas
kompetisi)

3
Berpikir abstrak dan
fungsional untuk problem
solving
Konsep: Berpikir abstrak
dan fungsional
Praktik:
Operasi Aritmatika dan
oeprasis ederhana lainnya
Mahasiswa memahami dan mampu
berpikir abstrak/model untuk
problem solving
Mahasiswa memahami cara berpikir
fungsional sebagai xara untuk
problem solving

4
Konsep:
Pengantar Rekurens
Praktek:
Manipulasi atom dan list

Mahasiswa memahami notion
rekurense dan mampu
mengmplementasikannya program
sederhana

5
Konsep:
Rekurens& functional
programming
Praktek:
Operasi max, min, search
Mahasiswa memahami notion
rekurense dan mampu
mengmplementasikannya untuk
menentukan nilai maksimum,
minimum, dan mencari nilai tertentu
dalam list

6
Konsep:
Rekurens& functional
programming
Praktek:
S-expression (aspek fungsi
sebagai parameter fungsi)
Mahasiswa memahami notion
rekurense dan mampu
mengmplementasikan program
sederhana dengan parameter fungsi

7
Berpikir modular,
dekomposisi problem dan
modu.
Procedural Programming
(1)
Konsep:
Problem decomposition,
Modularisasi. Gambaran
fungsi, prosedur
Praktek:
Data+aksi
Tipe, Variable, Scope &
lifetime, Constant
Tulis hello,I/O, ekspresi,
sekuense, kondisional
Mahasiswa mampu berpikir modular
dan melakukan dekomposisi
problem
Mahasiswa mengerti konsep
pemrograman prosedural dan
mampu membuat program
sederhana (s.d kondisional)

8 UTS – konsep Catatan: Autograder
9
Berpikir modular,
dekomposisi modul, dan
procedural
Procedural Programming
(2)
Konsep:
Pengenalan pola,
generalisasi pola untuk
mendefinisikan abstraksi
atau model
Praktek:
fungsi, procedure
Mahasiswa mampu melakukan
dekomposisi modul sederhana dan
mengimplementasikannya dalam
bentuk fungsi dan prosedur dalam
program.

10
Konsep:
Source code standards, best
practices of programming
Praktek:
Array sederhana dan loop
Mahasiswa mempunyai praktek
pemrograman yang baik
Mahasiswa mampu membuat
program yang memanipulasi array
secara sederhana (print, inisialisasi,
jumlah dan banyaknya nilai)

11
Konsep:
Program Taxonomy dan
kemampuan programming
yang dibutuhkan

Praktek:
File I/O
Mahasiswa memahami taksonomi
programming dan dapat memetakan
kompetensi dan kemampuan
programmer pada setiap
jenis/levelnya.
Mahasiswa mampu membuat
membaca dan menulis dari/ke file

12
Small Project/case study Mahasiswa mampu merangkum
kemampuan pemrogramannya untuk
menyesaikan problem dalam projek
skala kecil

13
Pemrograman Prosedural
Keterbatasan dan tantangan
memprogram
Konsep:
Limit of Computing
Praktek:
Intro to C
Mahasiswa memahami persoalan-
persoalan pemrograman yang “tidak
biasa”
Mahasiswa mampu menyelesaikan
persaolan pemrpograman yang tidak
biasa secara “manual” (eksekusi
cara penyelesaian yang diberikan)

14
Konsep:
Complexity, Program
Mahasiswa memahami persoalan-
persoalan pemrograman yang

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 4 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Kompleks skala besar dan
data besar (Intro to
Combinatorics algorithm)
Praktek:
Pascal to C (Pascal like)
kompleks dengan data besar

Mahasiswa memiliki sense bahwa
berganti bahasa pemrograman itu
“mudah” dengan melakukan
“replace teks”
15
Konsep:
Program Kompleks dan
data besar (strategy
algorithmic), algorithm
design, data analysis and
visualization
Praktek:
Pascal to C (Pascal like)
Eksplore matlab, excel,
map reduce
Mahasiswa memahami persoalan-
persoalan pemrograman yang
kompleks dengan data besar

Mahasiswa memahami panorama
persoalan computing, pemrosesan
data, dan tantangannya.

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 5 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.



Semester 3
Matematika Diskrit
Kode Matakuliah:
IF2120
Bobot sks: 3 Semester: 3 KK / Unit Penanggung Jawab:
Informatika
Sifat: Wajib
Nama Matakuliah
Matematika Diskrit
Discrete Mathematics
Silabus Ringkas
Himpunan, relasi dan fungsi, teknik pembuktian, teori bilangan, kombinatorial, graf, pohon, dan kompleksitas
algoritma.
Sets, relations and functions, proof techniques, number theory, combinatoric, graphs, trees, and algorithm
complexity.
Silabus Lengkap
Himpunan, relasi dan fungsi, teknik pembuktian, teori bilangan, kombinatorial, graf, pohon, dan kompleksitas
algoritma.
Sets, relations and functions, proof techniques, number theory, combinatoric, graphs, trees, and algorithm
complexity.
Luaran (Outcomes)
Students are able to understand basic concepts of discrete mathematics so that they can model the real world
problems using the concepts. This course give basic concepts and terminologies for understanding other advanced
courses in Informatics.
Matakuliah Terkait


Kegiatan Penunjang
Pustaka
Kenneth H. Rosen, Discrete Mathematics and Application to Computer Science 6th Edition, Mc Graw-Hill, 2007 (utama)
C.L. Liu, Element of Discrete Mathematics, McGraw-Hill, Inc, 1985. (pendukung)
Richard Johsonbaugh, Discrete Mathematics, Prentice-Hall, 1997 (pendukung)
Panduan Penilaian
Mid Semester Tests 30%
Final Test 30%
Quizes (Little tests) 25%
Paper 10%
Presence in courses 5%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
(a) Introduction to Discrete
Mathematics
(b) Sets

What is Discrete
Mathematics? What for?
Definition and representation
of sets


2 Sets set identities
3 Relations and Functions definition and properties
4 Relations and Functions
representing relation,
closure of relations,
equivalence relations,
Function and properties

5 Proof Techniques
Notions of implication,
equivalence, converse,
inverse, contrapositive,
negation, and contradiction
The structure of
mathematical proofs
Direct proofs
Disproving by
counterexample
Proof by contradiction
Induction Mathematics,
Program Correctness

6 Number Theory
Greater Common Divisor,
Euclidean Algorithm
Modular Arithmetic

7 Number Theory
Prime Numbers
Applications of Number
Theory

8 Midterm Exam
9 Combinatorics
Basic rule of counting
Permutation, Combination

10 Combinatorics
Binomial coefficient
Generalized Permutation
and Combination

11 Graph
Introduction, graph
terminology, representation
of graph, Graph

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 6 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Isomorphism
12 Graph
Planar graph, Euler dan
Hamiltonian Paths; Graph
application

13 Tree
Definition, properties,
Rooted tree, minimum
spanning tree

14 Tree
Tree traversal, Tree
application

15 Algorithm Complexity
Time complexity and
Space complexity
Big-Oh, Big Omega, Big
Tetha

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 7 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Logika Informatika
Kode Matakuliah:
IF2121
Bobot sks:3 Semester:3 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Logika Informatika
Logics of Informatics
Silabus Ringkas
Kuliah ini membahas bagaimana proses penalaran manusia ditirukan oleh komputer, dari kumpulan fakta yang ada
diturunkan menjadi fakta baru.
This course discusses the approach to conduct computer based reasoning, how to entail new fact from given facts.
Silabus Lengkap
Materi yang diberikan pada kuliah ini mencakup pengantar computational logic, representasi propositional logic
mencakup sintaks dan semantic, representasi relational logic mencakup sintaks dan semantic, berbagai teknik
pembuktian dari pendekatan semantic reasoning maupun proof method untuk propositional logic dan relational
logic, serta paradigm pemrograman deklaratif yang menggunakan dasar relational logic untuk melakukan
penalaran.
The topics discussed in this course are introduction to computational logic, propositional and relational logic representation which consists of syntax and semantic, reasoning for both representations from semantic reasoning approach and proof method approach, and declarative programming paradigm as one paradigm that implement
relational logic in solving problems.
Luaran (Outcomes)
- Mahasiswa mampu memahami bahwa logika adalah salah satu representasi pengetahuan untuk menyelesaikan
persoalan berbasis komputer
- Mahasiswa mampu memformulasikan suatu persoalan ke dalam representasi logika (proposisi atau relasional),
dan menyelesaikannya dengan proses penalaran berbasis semantic atau dengan metode pembuktian
- Mahasiswa mampu membangun aplikasi penalaran sederhana dengan paradigm pemrograman deklaratif
Matakuliah Terkait


Kegiatan Penunjang Praktikum Paradigma pemrograman deklaratif
Pustaka
1. Lecture Notes in Stanford University, can be accessed at http://logic.stanford.edu/classes/cs157/2007/cs157.html (Pustaka utama)
2. Robert R. Korfhage, Logics and Algorithms, John Wiley & Sons, 1969
3. Giarratano and Riley, Principles of Expert Systems, Pws Pub Co
4. Stuart J Russell & Peter Norvig, Artificial Intelligence: A Modern Approach, 2nd Edition, Prentice-Hall International, Inc, 2003
Panduan Penilaian
Ujian Tengah Semester, 20%
Ujian Akhir Semester, 20%
Tugas Besar Berkelompok, 20%
Pekerjaan Rumah, 10%
Praktikum, 15%
Kuis 15%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to Logic of
Informatic Course

2
Formal Logic vs
Computational Logic
Syntax & Semantic of
Propositional Logic

3
Propositional Logic:
Logical Entailment
(Semantic Reasoning &
Proof Method)

4
Propositional Logic:
Logical Entailment
(Resolution Provability)

5 Relational Logic Syntax
6 Relational Logic Semantic
7
Relational Logic Proof:
Inference Rules

8
Relational Logic Proof:
Axiom Schemata

9
Introduction Relational
Logic Resolution: Substitusi,
Unifier
Relational Resolution:
Relational Clausal Form,
Resolution Principle,
Resolution Theorem Proving

10 Introduction to Prolog
11 Prolog: Rekurens, Cut, Fail
12 Prolog: List
13 Data Structure Tutorial
14
Introduction to Expert
System

15 Review

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 8 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Probabilitas dan Statistika
Kode Matakuliah:
IF2122
Bobot sks:3 Semester:3 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Probabilitas dan Statistika
Probability and Statistics
Silabus Ringkas
Kuliah ini mendeskripsikan materi tentang probability dan dilanjutkan dengan statistik sebagai salah satu pendekatan
pengambilan keputusan dengan memanfaatkan komputer. Kuliah ini lebih diarahkan pada pemanfaatan teori peluang dan
statistika, dan tidak berfokus pada penjelasan detil mengenai formula-formula pada teori peluang dan statistika.
This course discusses probability and statistics as one approach in computer based decision making. Instead of giving
explanation and proofing of probability and statistics theory, this course focuses on how to apply probability and statistics in
informatics engineering problem.
Silabus Lengkap
Kuliah ini mendeskripsikan materi tentang probability, variabel random, teori bayes, distribusi peluang dari variabel random,
ekspektasi matematika dari suatu kejadian, distribusi sampel, estimasi parameter populasi & hipotesisnya, pengenalan regresi
linear dan pemanfaatannya untuk melalukan prediksi.
The topics discussed in this course are probability, random variable, Bayes, discrete and continuous probability distribution,
mathematical expectation, sample distribution, estimation, hypothesis, introduction to linear regression and how to use it in
prediction.
Luaran (Outcomes)
Mahasiswa memahami dan dapat menyelesaikan persoalan distribusi peluang variabel random dan diskrit, dan mahasiswa
mampu menyelesaikan persoalan untuk menarik kesimpulan mengenai parameter populasi yang diperoleh dari data hasil
eksperimen.
Matakuliah Terkait
Kalkulus IA Prasyarat
Kalkulus IIA Prasyarat
Kegiatan Penunjang
Pustaka
1. Ronald E. Walpole, Raymond H. Myers, Sharon L. Myers, Keying Ye, Probability and Statistics for Engineers and
Scientists, eighth edition, Pearson Prentice Hall, 2007 (Pustaka utama)

Panduan Penilaian
Ujian Tengah Semester, tulis, 30%
Ujian Akhir Semester, tulis, 30%
Pekerjaan Rumah dan Kuis, tulis, 40%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Kejadian, ruang peluang
terbatas

Mahasiswa mengetahui proses
menentukan peluang suatu kejadian,
dan trampil dalam menentukan
peluang suatu kejadian
[1]
2
Aksioma peluang dan
pengukuran peluang

3
Peluang bersyarat, Teorema
Bayes

4
Independence &
Conditional Independence

5
Variabel Random Diskrit
dan Kontinyu

6
Distribusi Peluang Variabel
Random dan Ekspektasi
Matematika

7
Parameter populasi yang
penting (rataan, variansi,
proporsi)

8
Estimasi parameter
populasi (rataan, variansi,
proporsi)

9
Selang kepercayaan untuk
prediksi/ estimasi parameter
populasi

10
Batas toleransi untuk
estimasi parameter populasi

11 Penarikan hipotesis statistic
12
Pengujian terhadap
hipotesis statistic

13 Pengenalan Regresi Linear
14 Regresi Linear Sederhana
15
Prediksi menggunakan
Regresi Linear

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 9 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Aljabar Geometri
Kode Matakuliah: Bobot sks:
3
Semester: KK / Unit Penanggung Jawab: Sifat:
Wajib
Nama Matakuliah
Aljabar Geometri
Geometric Algebra
Silabus Ringkas
Isi mata kuliah adalah ilmu aljabar dan geometri yang diperlukan untuk mata kuliah lainnya di IF

Silabus Lengkap
Aljabar elementer, aljabar bilangan kompleks, aljabar vektor, aljabar quaternion, matriks dan transformasi linier, aljabar
matriks, sistem persamaan linier, aljabar geometri, pencerminan dan rotasi, aljabar geometri untuk geometri, geometri
konformal

Luaran (Outcomes)
 Mahasiswa mampu memahami berbagai teori aljabar termasuk di dalamnya aljabar geometri
 Mahasiswa mampu menyelesaikan masalah geometri secara aljabar
Matakuliah Terkait
Kalkulus IA prasyarat


Kegiatan Penunjang
Pustaka
John Vince. Geometric Algebra for Computer Graphics. Springer. 2007 (acuan utama)
Melvin Hausner. A Vector Space approach to Geometry. Dover. 2010 (suplementer)
Ward Cheney; David Kincaid. Numerical Mathematics an d Computing. Brooks Cole, 2007 (suplementer)
Panduan Penilaian
UTS
UAS
PR
KUIS
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Aljabar Elementer
- Bilangan, variabel, dan
operator aritmatik
- Closure, elemen identitas dan
invers
- Hukum asosiatif
- Hukum komutatif
- Hukum distributif
Ch. 2
2
Aljabar Bilangan
Kompleks
- Bilangan kompleks
- Aritmetika bilangan kompleks
- Perkalian bilangan kompleks
- Pemangkatan dan Logaritma
bilangan kompleks
- e, i, dan trigonometri
Ch. 3
3 Aljabar Vektor
- Definisi vektor
- Ruang vektor
- Kombinasi linier & spanning
set
- Independensi linier
- Basis
- Dimensi dan subruang
- Perkalian vektor
Ch. 4
4 Aljabar Quaternion
- Definisi quaternion
- operasi quaternion
- Quaternion untuk rotasi vektor
Ch. 5
5
Matriks dan Transformasi
Linier
- Pergeseran
- Dilatasi
- Transformasi Affine
- Koordinat Homogen
Lit. 2 Ch. 8
6 Aljabar Matriks
- Determinan
- Perkalian Matriks
- Invers Matriks
- Nilai dan vektor Eigen
Lit. 2 Ch. 10
7 Sistem Persamaan Linier
- Penyelesaian Persamaan
Linier: Eliminasi Gauss
- Dekomposisi Matriks: LU,
QR
- SVD

8 UTS
9 Aljabar Geometri
- Pengantar Aljabar Geometri
- Panjang, Luas, dan Volum
- Definisi Outer Product
- Penggunaan Outer Product
Ch. 7
10 Perkalian Geometri
- Definisi Perkalian Geometri
- Definisi Pseudoskalar
Ch. 8

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 10 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

- Operasi di R2
- Operasi di R3
- Blade, Invers, dan Operasi
Meet
11 Pencerminan dan Rotasi
- Pencerminan
- Rotasi sebagai Pencerminan
Ganda
- Rotor dan konstruksi
- Interpolasi Rotor
Ch. 9
12
Geometric Algebra and
Geometry
- Titik dalam Segitiga
- Interaksi garis dan bidang
- Proyeksi Perspektif
Ch. 10
13 Geometri Konformal
- Foundation
- Model konformal
- Representing Geometric
Object
- Conformal Transformation
Ch. 11
14
Application of Geometric
Algebra
- Transformasi Linier 3D
- Ray Tracing
Ch. 12
15 UAS

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 11 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Algoritma dan Struktur Data
Kode Matakuliah :
IF2110
Bobot sks: 4 Semester:3 KK / Unit Penanggung Jawab:
KK Rekayasa
Perangkat Lunak dan Data
Sifat:
Wajib Prodi
Nama Matakuliah
Algoritma dan Struktur Data
Algorithm and Data Structure
Silabus Ringkas
Mata kuliah ini memberikan pemahaman atas konsep algoritma dan struktur data yang umum dipakai di bidang
informatika/ilmu komputer, dan (2) keahlian dalam mendesain dan menggunakan algoritma dan struktur data yang baik untuk
memecahkan persoalan, dan (3) membangun program dengan paradigma prosedural skala menengah dengan bahasa
pemrograman C.
This course offers (1) the concepts of algortihms and data structures commonly used in the field of informatics/computer
science, (2) skill in designing and using algorithms and data structure for problem solving, and (3) developing programs in
procedural paradigm using C programming language.
Silabus Lengkap
Konsep dasar struktur data dalam pemrograman prosedural: Program = algoritma + struktur data; modularisasi program; scope
dan life time variabel;
Mesin abstrak, dan tipe data abstrak : dasar, tabel, matriks, stack, queue, list, binary tree; konsep, primitif, operasi, dan
pemakaian library. ADT dengan berbagai variasi representasi.
Algoritma yang relevan dengan masing-masing struktur data: sequential processing (traversal, searching), sorting, insert,
update delete, reverse
Pemrograman prosedural dengan bahasa C & studi kasus
Basic concepts of data structure in procedural programming: Program = algorithm + data structure; program modularization;
variable scope and life time;
Abstract machine, and abstract data type: basic ADT, table, matrix, stack, queue, list, binary tree; concepts, primitive,
operation, and the use of library. ADT in various representation
Algorithms relevant to each data structure: sequential processing (traversal, searching), sorting, insert, update delete, reverse
Procedural programming using C & case study
Luaran (Outcomes)
Mahasiswa mengenalan dan memahami konsep dan dasar struktur data
Mahasiswa mampu untuk memakai paket struktur data yang tersedia
Mahasiswa mambu mendesain dan mengimplementai paket struktur data
Mahasiswa mampu melakukan problem solving (dengan pemrograman prosedural, berbahasa C, skala menengah)
menggunakan struktur data, baik menggunakan API/library yang tersedia ataupun dengan membangun sendiri library (from
the scratch)
Mahasiswa siap untuk mempelajari pemrograman berorientasi objek (OOP)
Matakuliah Terkait
Dasar Pemrograman Prasyarat

Kegiatan Penunjang Praktikum mingguan
Pustaka
1. Niklaus Wirth, “Algorithms and Data Structures (Oberon Version 2004)”. 1985
2. Brian W. Kernighan and Dennis M. Ritchie, “The C Programming Language, Second Edition”. Prentice Hall Software
Series. 1988
3. Inggriani Liem, “Diktat Struktur Data (Bagian I dan II)”, 2003, Teknik Informatika.

4. Inggriani Liem, “Catatan Singkat Bahasa C”, Departemen Teknik Informatika ITB, 1998.
5. Inggriani Liem, “Contoh Program Kecil dalam Bahasa C”, Departemen Teknik Informatika ITB, 1998.
6. Thomas H. Cormen, et.al. “Introduction to Algorithms, Third Edition”. MIT Press. 2009
Panduan Penilaian
Ujian Tengah Semester: paper based (25%)
Ujian Akhir Semester: paper based (25%)
Kuis dan PR: paper based (15%)
Praktikum dan Tugas besar (35%)
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
- Konsep dasar
pemrograman prosedural
dan pengenalan Bahasa
C
- Review konsep fungsional
dan prosedural
- Konsep Pemrograman
Prosedural (type s.d.
subprogram)
- Konversi notasi algoritmik
ke Bahasa C
- Mahasiswa mengingat kembali
konsep pemrograman prosedural
dari kuliah IF1231 Dasar
Pemrograman
- Mahasiswa mengerti notasi
algoritmik

2
- ADT
- ADT Dasar
- Modul, Implementasi
ADT dalam bahasa C
- Pengantar ADT dalam
konteks prosedural
(dikaitkan dengan ADT
pada konteks fungsional)
- ADT dasar dalam konteks
prosedural
- Modularitas program
dalam C
- Mahasiswa memahami ADT
dalam konteks prosedural
- Mahasiswa memahami beberapa
contoh ADT sederhana
- Mahasiswa memahami
modularitas program dalam C

3
ADT Array - Array dengan elemen
sederhana.
- Array dengan elemen type
bentukan.
- Pemrosesan sekuensial
dalam array.
- Table look up (searching)
 sequential search.
- Harga ekstrem array
- Sorting
Mahasiswa memahami konsep
array sebagai struktur data untuk
koleksi objek.

4 ADT Matriks - Pembahasan kuis-1 - Mahasiswa mendapatkan hasil

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 12 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

- ADT Matriks
- Implementasi ADT
Matriks dalam Bahasa C
kuis-1 dan pembahasannya
- Mahasiswa memahami ADT
matriks dan implementasinya
dalam Bahasa C
5
Analisis rekurens dalam
konteks prosedural
- Definisi rekursifitas dan
analisis rekurens
- Studi kasus persoalan-
persoalan rekursif:
faktorial, fibonacci, dll.
- Studi kasus pemrosesan
tabel secara rekursif
- Call rekursif sebagai
mekanisme mengulang
Mahasiswa memahami konsep
rekursifitas dan penggunaannya
dalam konteks perosedural.

6
Mesin Abstrak - Mesin Gambar
- Mesin Karakter
- Mesin Kata (3 model)
- Implementasi mesin kata
dalam bahasa C
Mahasiswa memahami konsep
mesin abstrak dan primitif-primitif
dalam mesin abstrak
Mahasiswa memahami 3 model
mesin kata dan implementasinya
dalam bahasa C

7
- ADT Stack - Definisi stack
- Aplikasi Stack
- Implementasi Stack
menggunakan tabel
- Mahasiswa memahami ADT
stack dan implementasinya
dengan menggunakan tabel

8 UTS
9
- ADT Queue - Konsep Queue
- Contoh pemakaian
- Alternatif desain ADT
Queue
- Implementasi ADT Queue
- Mahasiswa memahami ADT
queue dan implementasinya
dengan menggunakan tabel.
10
- List Linier dan berbagai
representasinya
- Konsep list linier
(dikaitkan dengan konsep
list linier pada
pemrograman fungsional)
- Skema traversal dan
sequential search untuk list
linier
- Primitif-primitif dasar (list
kosong, insert, delete,
konkatenasi, dll.)
- Representasi berkait
dengan pointer dan tabel
berkait
- Representasi dengan tabel
kontigu
- ADT List Linier dengan
representasi berkait
- Mahasiswa mampu memahami
konsep list linier, skema
traversal dan sequential search,
serta primitif-primitif dasarnya
- Mahasiswa memahami
representasi fisik list linier
secara berkait dan dengan tabel
kontigu

11
- Variasi List Linier - Pengenalan berbagai
variasi list linier
- List unik
- List terurut
- Mahasiswa memahami ide
berbagai variasi list linier,
termasuk list unik dan list terurut

12
- Stack dan queue dengan
representasi list
- Implementasi ADT stack
dengan representasi list
- Implementasi ADT queue
dengan representasi list
- Konsep priority queue
- Mahasiswa mampu memahami
ADT stack dan queue serta
priority queue yang
direpresentasikan dengan list


- List Rekursif - Konsep list rekursif
(dikaitkan dengan konsep
list pada pemrograman
fungsional)
- Implementasi list rekursif
dalam bahasa C
- Mahasiswa mampu memahami
pemrosesan list secara rekursif
dan membandingkannya dengan
pemrosesan list secara rekursif
pada pemrograman fungsional

13
- Pohon dan Pohon Biner - Review representasi lojik
dan fisik pohon dan pohon
biner
- Deklarasi dan operasi
sederhana terhadap pohon
biner
- Balanced Tree
- Binary Search Tree
- Variasi-variasi pemrosesan
dengan pohon biner
- Mahasiswa memahami kembali
konsep pohon dan pohon biner
serta dapat membuat ADT
pohon biner (definisi dan semua
operasinya) berdasarkan definisi
fungsional yang pernah
dipelajarinya
- Mahasiswa memahami konsep
balanced tree dan binary search
tree serta beberapa variasi
pemrosesannya

14
Problem solving dengan
paket ADT yang tersedia
- Paket ADT dalam Bahasa
C
- Problem Solving denga
paket ADT
-
- Mahasiswa memahami dan
menggunakan salah satu library
dalam bahasa C yang
menyediakan ADT umum
- Mahasiswa dapat melakukan
problem solving dengan aket
ADT

15
Studi Kasus
Kuliah Penutup
- Kasus Polinom/Multilist
- Kasus Pengelolaan
Memori/ Kemunculan
Huruf dan Posisi pada Pita
- Mahasiswa memahami kasus
yang diberikan
- Mahasiswa memahami
alternatif-alternatif penerapan

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 13 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Karakter/Pengelolaan
Memori
struktur data terhadap kasus

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 14 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Organisasi dan Arsitektur Komputer
Kode Matakuliah: IF2130 Bobot sks: 3 Semester: 3 KK / Unit Penanggung Jawab:
Informatika
Sifat: Wajib Prodi
Wajib
Nama Matakuliah
Organisasi dan Arsitektur Komputer
Computer Organization and Architecture
Silabus Ringkas
Pengantar arsitektur computer, representasi data, representasi level mesin, compile, linking dan optimasi program,
hierarki memory, I/) dan interrupt
Introduction to computer architecture, data representation, machine level representation, compile, linking and
program optimization, memory hierarchy, I/O and interrupts
Silabus Lengkap
Pengantar arsitektur computer: system computer
Representasi data: byte, string, integer, floating points
Representasi level mesin: konsep, format data, modus pengalamatan, operasi aritmetika dan logika, kendali,
prosedur, alokasi array, struktur data heterogen, compile, linking dan optimasi program: static linking, dynamic
linking, symbol dan table symbol, file object, shared libraries, file biner executable
Hierarki memory: teknologi penyimpanan, cache, RAM, disk, solid state
I/O dan interrupt: sinyal, exception, I/O utk level system, file
Introduction to computer architecture: a tour of a computer systems
Data representation: byte, string, integer, floating points
machine level representation: concepts, data format, addressing mode, arithmetic and logical operation, control,
procedures, array allocation, heterogeneous data structure,
compile, linking and program optimization: static linking, dynamic linking, symbols and symbol tables, object files,
shared libraries, binary executable file
memory hierarchy: storage technology, cache, RAM, disk, solid state
I/O and interrupts: signal, exceptions, system level I/O, Files
Luaran (Outcomes)
understands the history of computer architecture and the trends of modern computer architecture towards multicore
understands how data (numeric and non-numeric) is represented in computer
understands how an instruction is executed in a classical von neumann machine

Describe instruction level parallelism and hazards, and how they are managed in typical processor pipelines
demonstrate how to map from high level language patterns to low level/machine level notation
identify main types of memory technology and the principles of memory management
Explain how interrupts are used to implement I/O control and data transfers
understand the concept of parallel processing beyond the simple von neumann architecture
Matakuliah Terkait


Kegiatan Penunjang
Pustaka
Randal E. Bryant and David R. O'Hallaron. Computer Systems: A Programmer’s Perspective, 2nd Ed., Prentice Hall, 2011.

Hennessy, J. L. & Patterson, D. A. Computer Architecture, A Quantitative Approach, 4th Edition. Morgan Kaufmann, 2006

Hennessy, J. L. & Patterson, D. A. Computer Architecture, A Quantitative Approach, 4th Edition. Morgan Kaufmann, 2006
Panduan Penilaian UTS 35%, UAS 35%, Tugas 30%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to computer
architecture: a tour of a
computer systems
Data vs process
parallelization, distributed
systems characteristics

2 Data representation Bytes, String, Int
3 Data representation Floating point
4
Machine Level
Representation
Addressing mode
5
Machine level
representation
Arithmetic and logic
operations, structure
control

6
Machine level
representation
Procedure
7
Machine level
representation
Array,structure
8 UTS
9 Compile & Linking
static linking, dynamic
linking, symbols and
symbol tables, object files,
shared libraries, binary
executable file

10 Program optimization
11 Memory hierarchy
Memory hierarchy and
cache

12 Memory hierarchy RAM & Disk
13 I/O I/O structure, Files
14 Exception & signal
Interrupts, exceptions and
signal

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 15 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

15 Review

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 16 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Semester 4

Teori Bahasa Formal dan Automata
Kode Matakuliah:
IF2220
Bobot sks: 3 Semester:4 KK / Unit Penanggung Jawab:
KK Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Teori Bahasa Formal dan Automata
Formal Language Theory and Automaton
Silabus Ringkas
Mata kuliah TBFO memberikan pengetahuan pendukung dan keahlian dalam merancang Finite Automata, Regular
Expression, dan Pushdown Automata serta pengantar Turing Machine
This course offers supporting knowledge and skill in designing Finite Automata, Regular Expression, Pushdown Automata and Turing Machine.
Silabus Lengkap
Bahasa formal dalam model komputasi, proof technique, regular language, finite automata (deterministic,
nondeterministic, nondeterministic with epsilon), konversi antar finite automata, regular expression, context free
languages, pushdown automata, berbagai aplikasi automaton, turing machine.
Formal Language in computational model, proof technique, regular language, finite automata (deterministic, nondeterministic, nondeterministic with epsilon), conversion between finite automata, regular expression, context free languages, pushdown automata, application of automaton and language theory, turing machine.
Luaran (Outcomes)
1. students understand the concept, notation and application of automata theory concept and formal
language such as deterministic, nondeterministic, and their application in compiler, automata
hierarchy, and formal language theory related with complexity limits from practical problem.
2. Students able to design automaton (finite automata, pushdown automata, turing machine) for a specific
problem
Matakuliah Terkait
Algoritma & Struktur Data Prasyarat
Matematika Diskrit Prasyarat
Kegiatan Penunjang -
Pustaka
1. John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, “Introduction To Automata Theory , Languages, and Computation”,
Second Edition, Addison Wesley, 2001 (Pustaka Utama)
2. Aho, Alfred V. and Ullman, Jeffrey D; “The Theory of Parsing, Translation and Compiling”, Volume I, Prentice-Hall, 1972
(Pustaka Pendukung)
3. Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. “Compilers: Principles, techniques and tools”, second
edition. Pearson, Addison Wesley, 2007 (Pustaka Pendukung)
Panduan Penilaian
Ujian Tengah Semester: paper based (30%) Ujian Akhir Semester: paper based (35%) Kuis: paper based (10%) Tugas besar: membuat aplikasi automata (20%) PR: merancang automata, melakukan konversi antar automata, pembuktian (5%)
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
- Finite Automata
- Teori Automata
- Motivasi/kebergunaan
finite automata (FA)
- notasi deterministic finite
automata (DFA)
- contoh sederhana DFA
- konsep utama teori
automata
- model komputasi dari
Chomsky
- formal proof
- Mahasiswa memahami kegunaan
FA
- Mahasiswa memahami notasi DFA
- Mahasiswa memahami konsep
utama teori automata
- Mahasiswa memahami berbagai
teknik formal proof
Pustaka 1, bab 1.1, 2.1, 2.2, 1.2,
1.3, 1.4, 1.5
2
- Formal Proof terhadap
regular language
- Perancangan DFA
- implementasi FA dalam
bentuk program
- berbagai contoh kasus
penerapan formal proof
untuk regular language
- berbagai contoh DFA
untuk regular language
- implementasi program
untuk FA: if-then, rekursif
- mahasiswa dapat menerapkan
formal proof untuk regular language
- mahasiswa dapat merancang DFA
untuk regular language
- mahasiswa memahami algoritma
untuk FA
Pustaka 1, bab 1.2, 1.3, 1.4, 2.2
3
NFA (Non Deterministic
Finite Automata)
- notasi NFA
- extended transition dari
NFA
- perbedaan DFA dan NFA
- contoh kasus perancangan
NFA
- konversi DFA ke NFA
- mahasiswa memahami cara
extended transition dari NFA
- mahasiswa memahami perbedaan
NFA dan DFA
- mahasiswa dapat merancang NFA
untuk regular language
- mahasiswa dapat melakukan
konversi NFA-DFA
Pustaka 1, bab 2.3
4
- NFA dengan Epsilon
- Aplikasi FA
- notasi NFA dengan
Epsilon
- Epsilon-Closure
- extended transition dari
NFA dgn Epsilon
- contoh kasus perancangan
NFA dgn Epsilon
- eliminasi epsilon
- mahasiswa memahami cara
menetapkan Epsilon-Closure
- mahasiswa memahami cara
extended transition dari NFA dgn
epsilon
- mahasiswa memahami perbedaan
NFA dgn epsilon dan NFA
- mahasiswa dapat merancang NFA
dgn Epsilon untuk regular language
- mahasiswa dapat melakukan
eliminasi Epsilon transition
Pustaka 1, bab 2.5

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 17 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

5 Regular Expression (RE)
- penggunaan RE
- notasi RE
- konversi DFA – RE
- hukum aljabar RE
- mahasiswa memahami notasi RE
dan hukum aljabar RE
- mahasiswa dapat menggunakan
RE untuk berbagai keperluan
- mahasiswa dapat melakukan
konversi DFA – RE
Pustaka 1, bab 3
6 Properti RE
- pumping lemma utk RE
- berbagai contoh pumping
lemma utk RE
- closure property utk RE
- decision property utk RE

- mahasiswa dapat menerapkan
teknik pumping lemma utk RE
- mahasiswa memahami closure
property dan decision property utk
RE

Pustaka 1, bab 4
7 Minimization dari Automata
- minimization dari
Automata
- mahasiswa dapat melakukan
minimization automata

8 UTS - materi regular language Pustaka 1, bab 1 – 4
9
Context Free Grammar
(CFG)
- notasi CFG
- penerapan CFG
- parse tree
- contoh kasus CFG
- contoh algoritma parsing
- mahasiswa memahami notasi CFG
dan parse tree
- mahasiswa dapat merancang CFG
untuk masalah tertentu
Pustaka 1, bab 5
Pustaka 2
10 Pushdown Automata (PDA)
- notasi PDA
- PDA dgn final state
- PDA dgn empty stack
- konversi antara 2 jenis
PDA
- mahasiswa memahami notasi PDA
- mahasiswa dapat merancang PDA
- mahasiswa dapat melakukan
konversi antar PDA
Pustaka 1, bab 6
11
PDA

- ekivalensi PDA dan CFG
- Deterministic PDA

- mahasiswa dapat melakukan
ekivalensi antara PDA dan CFG
- mahasiswa memahami
deterministic PDA
Pustaka 1, bab 6.3, 6.4
12
CNF (Chomsky Normal
Form)
- konversi dari CFG ke
CNF
- algoritma parsing untuk
CNF

- mahasiswa dapat melakukan
konversi dari CFG ke CNF
Pustaka 1, bab 7.1
13
Properties dari Context Free
Language (CFL)
- pumping lemma untuk
CFL
- closure properties dari
CFL
- decision properties dari
CFL
- mahasiswa memahami properties
dari CFL
Pustaka 1, bab 7.2, 7.3, 7.4
14 Pengantar Compiler - tahapan dalam compiler
- mahasiswa memahami tahapan
dalam compiler dan posisi automata
di dalamnya
Pustaka 3
15 Pengantar Turing Machine
- notasi turing machine
- teknik pemrograman utk
turing machine
- mahasiswa memahami teori
mengenai turing machie
Pustaka 1, bab 8.1, 8.2 , 8.3

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 18 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Basis Data
Kode Matakuliah:
IF2240
Bobot sks: 3 Semester: 4 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Basis Data
Database
Silabus Ringkas
Mata kuliah ini memberikan pengetahuan mengenai sistem basis data secara umum, mencakup arsitektur sistem
basis data, pemodelan data, perancangan skema basis data relasional, pemanfaatan dan pengelolaan data.
This course discusses database systems in general, including database system architecture, data modeling, design of
relational database schema, querying and management of data.
Silabus Lengkap
Materi yang diberikan pada kuliah ini mencakup latar belakang kebutuhan sistem basis data dalam mendukung
kebutuhan informasi, pengorganisasian data di dalam file, berbagai pendekatan dalam pemodelan data, pemodelan
data di level konseptual dengan menggunakan pemodelan entity-relationship, model data relasional dan operasi
relasional dengan aljabar relasional dan kalkulus relasional, perancangan skema basis data relasional dengan
normalisasi berdasarkan functional dependency, bahasa query. [peningkatan performansi basis data, pengelolaan
transaksi, pengelolaan basis data terdistribusi]
The topics covered in this course are approach to and evolution of database systems in information capture and
representation, file organization, data modeling approach, conceptual data model using entity-relationship notation,
relational data model and relational operation using relational algebra and relational calculus, design of relational
database schema through normalization based on functional dependency, and query languages. [database
performance tuning, transaction management, and distributed database management]
Luaran (Outcomes)
- Mahasiswa memiliki pemahaman mengenai peranan sistem basis data dalam pemenuhan kebutuhan akan
informasi
- Mahasiswa mampu melakukan pemodelan data skala kecil-menengah dengan menggunakan model entity-
relationship
- Mahasiswa mampu merancang skema basis data relasional
- Mahasiswa mampu mengimplementasikan sebuah basis data menggunakan DBMS Relasional
- Mahasiswa mampu menemukan data dan informasi dari basis data serta memanipulasi data di dalam basis
data dengan menggunakan SQL
Matakuliah Terkait
Arsitektur dan Organisasi Komputer Prasyarat
Logika Informatika Prasyarat
Kegiatan Penunjang Studi kasus pemodelan data dan perancangan basis data, praktikum SQL
Pustaka
A. Silberschatz, H.F. Korth, S. Sudarshan, ‘Database System Concepts’, McGraw-Hill (Pustaka Utama)
J.A. Hoffer, M.B. Prescott, F.R. McFadden, ‘Modern Database Management’, Pearson Prentice Hall (Pendukung)
D. Grosshans, ‘File Systems Design and Implementation’, Prentice Hall (Pendukung)
C.J. Date, ‘An Introduction to Database System’, Addison Wesley (Pendukung)
Panduan Penilaian
Ujian Tengah Semester, 25%
Ujian Akhir Semester, 30%
Tugas Besar Berkelompok, 20%
Praktikum, 10%
Kuis 15%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to Databases
and Database Systems
- Basisc information
storage and retrieval
concepts
- Information management
applications
- Quality issues:
reliability, scalability,
efficiency, and
effectiveness
- Approches to and
evolution of databases
systems
- Components of database
systems
- Describe how humans gain access
to information and data to support
their needs
- Compare and contrast
information with data and
knowledge
- Identify issues of data persistence
to an organization
- Explain the characteristics that
distinguish the database approach
from the traditional approach of
programming with data files
- Cite the basic goals, functions,
models, components, applications,
and social impact of database
systems

2
Introduction to Databases
and Database Systems
- DBMS functions
- Database architecture
and data independence
- Identify major DBMS functions
and describe their role in a
database system
- Explain the concept of data
independence and its importance
in a database system

Storage and File Structure
- Storage structure
- Performance
consideration
- File organization and
access method
- Explain the concepts of records,
record types, and files
- Explain the different techniques
for placing records on file

3
Storage and File Structure - The use of index
- Explain how index can improve
performance
- Give examples of the application
of primary, secondary, and
clustering indexes

Data Modeling - Conceptual data model - Categorize data models based on

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 19 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
- Physical data model
- Representational/Logical
data model
the types of concepts that they
provide to describe the database
structure—that is, conceptual data
model, physical data model, and
representational data model
4 Data Modeling
- 1
st
generation data model
(network and
hierarchical)
- 2
nd
generation data
model (relational)
- Other data models
- Describe the modeling concepts
and notation of widely used
modeling notation (e.g., ERD
notation, and UML), including
their use in data modeling


Entity-Relationship
Modeling
- Entity Set
- Attribute: simple &
composite, single &
multivalued, derived
attribute
- Relationship Set: degree,
mapping cardinality
- ER Diagram: cardinality
constraints, roles,
participation
- Keys
- Define the fundamental
terminology used in the ER data
model
- Describe the basic principles of
the ER data model

5
Entity-Relationship
Modeling
- Ternary Relationship
- Binary vs Non Binary
Relationship
- Design Issue
- Weak vs Strong Entity
- Apply the basic modeling concepts
and notation of the ER data model

6
Entity-Relationship
Modeling
- Specialization-
Generalization
- Aggregation
- Apply the advance modeling
concepts and notation of the ER
data model

Relational Data Model
- Theory behind relational
data model
- Basisc principles of the
relational data model
- Define the fundamental
terminology used in the relational
data model
- Describe the basic principles of
the relational data model

7
Mapping Conceptual
Schema to Relational
Schema
- Mapping ER model to
relational schema
- Entity and Referential
Integrity
- Prepare a relational schema from
a conceptual model developed
using the entity- relationship
model
- Explain and demonstrate the
concepts of entity integrity
constraint and referential integrity
constraint (including definition of
the concept of a foreign key)

8 UTS
9 Relational Operators - Relational algebra
- Demonstrate use of the relational
algebra operations from
mathematical set theory (union,
intersection, difference, and
Cartesian product) and the
relational algebra operations
developed specifically for
relational databases (select
(restrict), project, join, and
division)
- Demonstrate queries in the
relational algebra

10 Relational Operators
- Domain-oriented
relational calculus
- Tuple-oriented relational
calculus
- Demonstrate queries in the tuple
relational calculus

11 SQL
- SELECT-FROM-
WHERE clause
- Attribute alias and tuple
variables
- Sorting
- Set operation
- Aggregate functions
- Nested subquery
- View
- Derived relations
- Demonstrate retrieving
information from a database using
the SQL SELECT statement

12 SQL
- Joined relations
- Data modification
- Data definition language
- Demonstrate retrieving
information from a database using
the SQL SELECT statement
- Demonstrate modification (insert,
delete, update) of data in the
database using SQL statement
- Create a relational database
schema in SQL that incorporates
key, entity integrity, and
referential integrity constraints

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 20 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
Other Database Language
- Overview of database
languages
- QBE and 4
th
generation
environments
- Embedding non-
procedural queries in a
procedural language
- Stored procedures
- Describe several query strategies
13 Relational Database Design - Functional dependencies
- Determine the functional
dependency between two or more
attributes that are a subset of a
relation
- Connect constraints expressed as
primary key and foreign key, with
functional dependencies
- Compute the closure of a set of
attributes under given functional
dependencies
- Determine whether or not a set of
attributes form a superkey and/or
candidate key for a relation with
given functional dependencies

14 Relational Database Design - Normalization
- Evaluate a proposed
decomposition, to say whether or
not it has lossless-join and
dependency-preservation
- Describe what is meant by 1NF,
2NF, 3NF, and BCNF
- Identify whether a relation is in
1NF, 2NF, 3NF, or BCNF
- Normalize a 1NF relation into a
set of 3NF (or BCNF) relations
and denormalize a relational
schema
- Explain the impact of
normalization on the efficiency of
database operations, especially
query optimization

15 Other Data Model
- Object-oriented model
- Semi-structured data
model
- Describe the main concepts of the
OO model
- Describe the differences between
relational and semi-structured
data models
- Give a semi-structured equivalent
(e.g., in DTD or XML Schema) for
a given relational schema

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 21 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.


Kode Matakuliah:
IF2250
Bobot sks:
2 SKS
Semester: 4 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Dasar Rekayasa Perangkat Lunak
Software Engineering Fundamental
Silabus Ringkas
Kuliah ini memberikan pengertian tentang rekayasa perangkat lunak dan kemampuan dasar dalam membangun perangkat lunak skala kecil
dan sederhana, serta kemampuan mengoperasikan tools terkait pemodelan perangkat lunak.
This course provides an understanding of software engineering and basic skills in building small scale and simple software, and the ability to
use a variety of software modeling tools.
Silabus Lengkap
Tipe Perangkat Lunak (P/L); Pengantar Rekayasa P/L; Siklus Hidup P/L, mencakup pengumpulan kebutuhan, analisis, perancangan,
implementasi, pengujian,pengoperasian, dan perawatan; Berbagai Model Proses,mencakup waterfall, prototyping, incremental, agile process
model, dll; Metodologi Pembangunan P/L (termasuk metode berorientasi objek): kelebihan, kekurangan dan aspek praktisnya di industri;
Standard dan Dokumentasi P/L, mencakup SDD, SRS, SDD, STP; Alat Bantu Pemodelan P/L, mencakup UML dan DFD; Studi Kasus:
Pembangunan P/L Skala Kecil(diberikan spesifikasi kebutuhan, dilakukan analisis, perancangan, dan perencanaaan pengujian)
Types of Software; Introduction to Software Engineering, Software Development Life Cycle (SDLC) including requirement gathering,
analysis, design coding, testing, operation, and maintenance; Software Process Model, including waterfall, prototyping, incremental, agile
process model, etc; Software Development Methodologies (including OO Software Development Methods): advantages and disadvantages,
and practices in industry; Software Standard and Documentation, including SDP, SRS, SDD, STP; Software Modeling Tools, including UML
and DFD; Case Study: Small Scale Software Development (analys and design a small scale software based on a given software requirement)
Luaran (Outcomes)
Setelah lulus dari kuliah ini, mahasiswa mampu :
1. Mengenali berbagai tipe perangkat lunak dan karakteristiknya
2. Memahami berbagai semua istilah dan terminologi di bidang rekayasa perangkat lunak
3. Memahami pentingnya rekayasa perangkat lunak
4. Memahami beberapa model proses pembangunan perangkat lunak dan metodologi pembangunan perangkat lunak
5. Menerapkan pengetahuiannya untuk membangun perangkat lunak skala kecil dengan memanfaatkan alat bantu yang diperlukan
Matakuliah Terkait
-

Kegiatan Penunjang
Praktikum membangun perangkat lunak skala kecil
Praktikum menggunakan alat bantu pemodelan perangkat lunak
Pustaka
Roger S. Pressman, Software Engineering: A Practitioner's Approach, Edisi ke-7, Mc Graw-Hill, 2010 (Pustaka
Utama)
Ian Sommervillle, Software Engineering, Edisi ke-9, Addison Wesley, 2011 (Pustaka Pendukung)
IEEE Software Engineering Standard (Pustaka Pendukung)
Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil:
1. UTS
2. UAS
3. Tugas Penguasaan Alat Bantu
4. Tugas Studi Kasus
Catatan Tambahan

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pendahuluan
Perangkat Lunak;
Rekayasa Perangkat
Lunak;

 Mengenal berbagai tipe P/L dan dapat
membedakan kompleksitasnya
 Memahami perspektif sistem
 Mengetahui definisi RPL dan latar belakang
berkembangnya RPL
 Mengetahui perbedaan membuat program
dengan membuat P/L
 Mengetahui aspek praktis di bidang RPL
 Mengetahui etika di bidang RPL
[1] Chapter 1
[2] Chapter 1
2
Model Proses dan Metode
Pembangunan P/L
Model Proses
Pembangunan P/L;
Pengenalan beberapa
metodologi: kelebihan,
kekurangan, dan aspek
praktis di industri
 Mengetahui siklus hidup P/L dan tujuan
setiap fase pada siklus hidup P/L
 Mengetahui berbagai model proses
pembangunan P/L
 Dapat memilih model proses yang tepat untuk
suatu kondisi
 Mengetahui ada beberapa metodologi
pembangunan P/L, termasuk kelebihan dan
kekurangan setiap metodologi
 Mengetahui konsep utama terkait metodologi
berorientasi objek
 Mengetahui kondisi yang tepat untuk
menerapkan metodologi berorientasi objek
[1] Chapter 2,3
[2] Chapter 2,3

3 Kebutuhan P/L
Kebutuhan pengguna;
kebutuhan sistem;
kebutuhan perangkat
lunak;
 Mengetahui definisi kebutuhan P/L dan
kaitannya dengan kebutuhan sistem dan
kebutuhan pengguna
 Dapat mendefinisikan kebutuhan perangkat
lunak dengan kalimat yang jelas
[1] Chapter 5
[2] Chapter 4
4 Analisis Kebutuhan P/L
Pemodelan kebutuhan P/L
dengan diagram use case
 Dapat mengidentifikasi elemen model analisis
untuk spesifikasi P/L skala kecil yang
diberikan
 Dapat membuat model analisis berdasarkan
elemen model yang telah diidentifikasi
 Dapat membuat model analisis dengan
menggunakan alat bantu yang tepat
[1] Chapter 6
[2] Chapter 5

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 22 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

5 Analisis Kebutuhan P/L (2) Activity Diagram
 Dapat mengidentifikasi elemen model analisis
untuk spesifikasi P/L skala kecil yang
diberikan
 Dapat membuat model analisis berdasarkan
elemen model yang telah diidentifikasi
 Dapat membuat model analisis dengan
menggunakan alat bantu yang tepat
[1] Chapter 6
[2] Chapter 5
6 Analisis Kebutuhan P/L (3) Class Diagram
 Dapat mengidentifikasi elemen model analisis
untuk spesifikasi P/L skala kecil yang
diberikan
 Dapat membuat model analisis berdasarkan
elemen model yang telah diidentifikasi
 Dapat membuat model analisis dengan
menggunakan alat bantu yang tepat
[1] Chapter 6
[2] Chapter 5
7 Analisis Kebutuhan P/L (4) Sequence Diagram
 Dapat mengidentifikasi elemen model analisis
untuk spesifikasi P/L skala kecil yang
diberikan
 Dapat membuat model analisis berdasarkan
elemen model yang telah diidentifikasi
 Dapat membuat model analisis dengan
menggunakan alat bantu yang tepat
[1] Chapter 6
[2] Chapter 5
8 UTS
9 Perancangan
Perancangan: identifikasi
elemen model
perancangan; membuat
model perancangan
 Dapat mengidentifikasi elemen model
perancangan berdasarka n model analisis
kebutuhan P/L skala kecil yang diberikan
 Dapat membuat model perancangan
berdasarkan model analisis kebutuhan P/L
skala kecil yang diberikan
[1] Chapter 8,9,10,11
[2] Chapter 6,7
10 Perancangan (2)
Alat bantu pemodelan
perancangan
 Dapat membuat model perancangan dengan
menggunakan alat bantu yang tepat
[1] Chapter 8,9,10,11
[2] Chapter 6,7
11 Kualitas P/L Definisi; Faktor Kualitas
 Dapat menyebutkan beberapa faktor kualitas
P/L dan menjelaskan definisinya
[1] Chapter 14
12 Pengujian P/L
Perencanaan pengujian;
pembuatan kasus uji ; Alat
bantu pengujian
 Dapat membuat rencana pengujikan,
termasuk mendefinisikan kasus uji yang
cukup lengkap
 Dapat menggunakan alat bantu pengujian,
terutama pengujian unit
[1] Chapter 17
13
Standard dan Dokumentasi
Perangkat Lunak
Dokumen spesifikasi
kebutuhan P/L (SRS),
dokumen deskripsi
perancangan P/L (SDD),
dokumen perencanaan
pengujian (STP)
 Mengenal adanya berbagai standard proses
dan dokumentasi P/L yang diakui
internasional
[3]
14
Metodologi Pembangunan
Perangkat Lunak
Terstruktur
Pengenalan metodologi
terstruktur: konsep dan
practices
 Mengetahui konsep utama terkait metodologi
terstruktur
 Mengetahui kondisi yang tepat untuk
menerapkan metodologi terstruktur
[1] Chapter 6,7
[2] Chapter 5
15
Metodologi Pembangunan
Perangkat Lunak
Terstruktur (2)
DFD dan ERD
 Mengenal DFD dan ERD
 Dapat membuat DFD dan ERD untuk kasus
yang sederhana
[1] Chapter 6,7
[2] Chapter 5

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 23 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.


Pemrograman Berorientasi Objek
Kode Matakuliah: IF2210 Bobot sks: 3 Semester:3 KK / Unit Penanggung Jawab:
KK Rekayasa
Perangkat Lunak dan Data
Sifat:
Wajib Prodi
Nama Matakuliah
Pemrograman Berorientasi Objek
Object Oriented Programming
Silabus Ringkas
Mata kuliah PBO memberikan pemahaman atas konsep dan keahlian dalam menmbangun program dengan paradigma berorientasi objek
dengan 3 bahasa pemrograman.
This course offers the concepts of OOP and skill in developing programs using OO paradigm using 3 rogramming languages.
Silabus Lengkap
Konsep dan praktek pengembangan program aplikasi dan komponen perangkat lunak dengan OOP menggunakan fitur lanjut OOP, dan
praktek menggunakan tiga bahasa pemrograman (C++, Java, C#)
Paradigma berorientasi objek: kelas, objek, masa hidup objek, operasi-dasar objek, generik, inheritance dan polymorphism, exception and
assertion
Konsep dan implementasi tipe data abstrak(ADT), mesin abstrak, dan proses in OOP
Pemrograman OO dengan 3 bahasa yang dipilih (C++, Java, C#)
Concepts & practices on implementing software & SW component based on OOP using advanced features of OOP , and practices using three
OOP languages (C++, Java, C#)
Object Oriented Paradigm: Class, Object; Object life time (creation, allocation, destruction), Object Basic-Operations (attachment,
comparison); Genericity; Inheritance & polymorphism; Exception;
Concept and implementaion of Abstract data Type, Engine, Process in OOP;
OO programming using three selected languages, i.e. C++, Java, C#
Luaran (Outcomes)
1. Students understand the concepts of OOP paradigm such as class, object, encapulation, message passing, object life time, basic object-
operation, inheritace & polymorphism, genericity, and the concepts of abtsract data type , engine and process and tehir implementation
in OOP.
2. Students able to develop medium-scale programs using OOP paradigm using three OOP languages , i.e. C++, Java, C#
Matakuliah Terkait
Algoritma dan Struktur Data Prasyarat

Kegiatan Penunjang -
Pustaka
1. Bjarne Stroustrup. “The C++ Programming Language: Special and Third Edition”. AddisonWesley An Imprint of
Addison Wesley Longman, Inc. 2000. (Pustaka Utama)
2. Nicolai M. Josuttis. “The C++ Standard Library: A Tutorial and Reference, Second Edition”. Pearson Education, Inc.
2012. (Pustaka Pendukung)
3. Hans Dulimartha. “Bahasa C++”. Catatan Kuliah Jurusan Teknik Informatika ITB. 1998. (Pustaka Pendukung)

4. Richard L. Halterman, “Object Oriented Programming in Java”. Creative Commons 2008 (Pustama Utama)
5. James Gosling et.all. “The Java Language Specification, Java SE 7 Edition” .
http://docs.oracle.com/javase/specs/jls/se7/jls7.pdf [tanggal akses 02-2013]. Oracle Amreica Inc. 2011 (Pustaka
Pendukung)
6. Herbert Schildt. “The Complete Reference C# 4.0”. McGraw-Hill. 2010 (Pustaka Utama)
Panduan Penilaian
Ujian Tengah Semester: paper based (25%)
Ujian Akhir Semester: paper based (25%)
Kuis dan PR: paper based (15%)
Praktikum dan Tugas besar (35%)
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Prinsip Fundamental OOP,
motivasi dan aplikasi OOP.
Release Tugas Besar I/C++
- Paradigma OO dan
mekanisme abstraksi
- Motivasi dan aplikasi
OOP
- Prinsip fundamental OO
(breadth): object, class,
enkapsulasi, inheritance,
operasi-dasar objek, objek
life time, genericity


2
C++: Konsep &
Pemrograman Dasar OO
C++: class-object, ctor,
dtor, cctor, operator
assignment, object life time,
pointer & reference,
enkapsulasi, const, static

3
C++: nested class, operator
overloading
C++: inheritance &
polymorphism

C++: nested class, friend,
operator overloading
(insert/update/operasi
aritmatika, operasi io)
C++: inheritance &
polymorphism, dynamic
binding, enkapsulasi dalam
inheritance
Studi kasus: stack

4
C++: generik, exception,
assertion, standard template
library
C++: konsep generik,
template function, kelas
generik
C++: exception, assertion,
standard tempalte library

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 24 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

(STL)
5
Pemrograman OO Dasar
dengan Java
Kuis 1 Konsep OO dan C++
Release Tugas Besar II/Java

Java: Pengantar Java, JVM,
Transformasi/Konversi
program C++ ke Java

6
Java: Generik, Exception
Handling, Asersi
Java: JUnit

7
Java: Multithreading
Pembahasan Kuis 1, Review
untuk UAS

8 UTS
9
Pengantar analisis dan
design berorientasi objek

Mahasiswa memahami cara
berpikir dari probuntuk
menganalisis problem dan
merepresentasi/desain
solusi dengan paradigma OO

10
Java API/Frameworks dan
Java Platforms (1)
Java Collection Framework
Prinsip Dasar Java Swing


11
Java API/Frameworks dan
Java Platforms (2)

Pembahasan UTS

Prinsip Dasar J2ME
Java Reflection & Case
Study: Plugin


12
Pemrograman Dasar OO
dengan C#

Pengantar .NET
Overview C#, termasuk
exception handling,
namespace, dan IO

13
C#: Generic
Kuis 2 Java & C#

14 Fitur spesifik C#
Delegates, Events, &
Lamda Expressions
Runtime Type ID,
Reflection, Attributes
Collections
LINQ & PLINQ

15
- Pembahasan Kuis 2
- Kuliah Penutup

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 25 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Sistem Operasi
Kode Matakuliah: IF2230 Bobot sks: 3 Semester: KK / Unit Penanggung Jawab:
Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Sistem Operasi
Operating Systems
Silabus Ringkas
Operating system concepts, process management, memory management, I/O device and file management, computer system security and
protection, operating system for distributed system
Konsep system operasi, manajemen proses, manajemen memory, manajemen file dan device I/O, proteksi dan keamanan system computer,
system operasi untuk sistem terdistribusi
Silabus Lengkap
Operating system concepts, process management, memory management, I/O device and file management, computer system security and
protection, operating system for distributed system
Konsep system operasi, manajemen proses, manajemen memory, manajemen file dan device I/O, proteksi dan keamanan system computer,
system operasi untuk sistem terdistribusi
Luaran (Outcomes)
Students are able to recognize the role and basic function of operating system correctly
Students are able to demonstrate the advanced utilization of operating system
Students are able to understand the concept underlying the design and implementation of operating system
Students are able to analyze for comprehending particular design of operating system along with its impact againts the performance of
operating system
Students are able to demonstrate the skill for developing simple modules which support the functionality of the operating system

Matakuliah Terkait
Computer Organization and Architecture Prasyarat

Kegiatan Penunjang Praktikum
Pustaka
Silberschatz, A. Operating System Concepts, 8th Edition Wiley Publishing, Inc., 2008 [Pustaka Utama]


Panduan Penilaian UTS 35%, UAS 35%, Tugas 30%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Introduction to OS
History of OS, Role of OS,
Types of OS
[Uraikan capaian spesifik topik
dengan merujuk kepada capaian
matakuliah]
[Uraikan rujukan terhadap
pustaka (bab, sub-bab)]
2 OS Architecture
Layered system, system
calls, OS Services

3 Process and Thread
Process concepts, process
scheduling

4 Process and thread Multithread programming
5 Deadlocks
System model, deadlock
avoidance, deadlock
prevention

6 Memory management
Paging, page tables,
segmentation

7 Memory management Virtual memory
8 UTS
9 Input/Output Management
I/O hardware, application
I/O interface, stream

10 Input/Output Management
Disk Structure, disk
scheduling, disk
management

11 File System
File concept, access
method, file system
structure, file system
implementation

12
Computer System Protection
and Security
Principles of protection,
system security

13 Case study: Linux
14 Case study: Windows
15
Czse study: sistem operasi
mobile

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 26 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Strategi Algoritma
Kode Matakuliah: IF2211 Bobot sks: 3 Semester:4 KK / Unit Penanggung Jawab:
KK Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Strategi Algoritma
Algorithm Strategies
Silabus Ringkas
Algorithm complexity, Brute Force Algorithms, Greedy Algorithms, Divide and Conquer Algorithms, DFS, BFS, Backtracking Algorithms,
Branch and Bound Algorithms, Dynamic Programming String Matching, NP Theory
Algorithm complexity, Brute Force Algorithms, Greedy Algorithms, Divide and Conquer Algorithms, DFS, BFS, Backtracking Algorithms,
Branch and Bound Algorithms, Dynamic Programming String Matching, NP Theory
Silabus Lengkap
Algorithm complexity, Brute Force Algorithms, Greedy Algorithms, Divide and Conquer Algorithms, DFS, BFS, Backtracking Algorithms,
Branch and Bound Algorithms, Dynamic Programming String Matching, NP Theory
Algorithm complexity, Brute Force Algorithms, Greedy Algorithms, Divide and Conquer Algorithms, DFS, BFS, Backtracking Algorithms,
Branch and Bound Algorithms, Dynamic Programming String Matching, NP Theory
Luaran (Outcomes) Students understand various problem solving techniques efficiently which depend on characteristics of the problems.
Matakuliah Terkait
Algoritma & Struktur Data Prasyarat
Matematika Diskrit Prasyarat
Kegiatan Penunjang -
Pustaka
1. Anany Levitin, Introduction to the Design & Analysis of Algorithms, Addison-Wesley, 2003
2. Richard E. Neapolitan, Foundations of Algorithms, D.C. Heath and Company, 1996
3. Ellis Horrowitz & Sartaj Sahni, Fundamental of Computer Algorithms , Pitman Publishing Limited, 1978
4. Rinaldi Munir, Diktat kuliah IF2251 Strategi Algoritmik, Teknik Informatika ITB
Panduan Penilaian
Ujian Tengah Semester: paper based (20%)
Ujian Akhir Semester: paper based (25%)
Kuis: paper based (15%)
Tugas besar: (20%)
PR: (10%)
Latihan: (10%)
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belaja r Mahasiswa Sumber Materi
1 Brute force algorithm
Definition of algorithm
strategies, classification,
complexity
Brute Force algorithm:
introduction
Exhaustive search

2 Greedy algorithm
Greedy algorithm:
introduction
Coin exchange problem
Knapsack problem
Scheduling problem

3 Greedy algorithm
Minimum spanning tree
Shortest path problem
TSP problem
Data compression using
Huffman
Another examples

4 Divide and Conquer
Divide & Conquer
algorithm: introduction
Min-max problem
Closest pairs problem
Mergesort and quicksort

5 Divide and Conquer
Exponentiation
matrix multiplication
big integer multiplication
Application
Decrease & Conquer

6 BFS and DFS
Breadth First Search
Depth First Search


7 BFS and DFS BFS and DFS applications
8 Mid term test
9 Backtracking
Backtracking algorithm:
introduction
N-queen problem
Graph colouring
Hamilton circuit
Maze problem

10 Branch and Bound
Branch and bound
15-puzzle problem
TSP

11 Search algorithm
Uniform Cost Search
Best first search: greedy,

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 27 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

A*
12 Dynamic Programming
Dynamic programming:
introduction
Shortest path problem
Knapsack problem
Capital budgeting
TSP

13 String matching
String matching: Brute
Force
Knuth-Morris-Pratt
algorithm
Boyer-Moore algorithm

14 P and NP
theory of P and NP
NP-complete problem
NP-Hard, NP-Easy, NP-
Equivalent Problem

15 P and NP
Solving NP-hard problem
Approximate algorithm for
NP-hard problem

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 28 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Semester 5

Jaringan Komputer
Kode Matakuliah: IF3130 Bobot sks: 3 Semester: 5 KK / Unit Penanggung Jawab:
Informatika
Sifat: Wajib Prodi

Nama Matakuliah
Jaringan Komputer
Computer Networks
Silabus Ringkas
Introductions to computer networks, computer network hardware & data link layer, basic model of switched
networks, internetworking protocols, transport layer, congestion control and resource allocation, application layer
and network security
Pengantar ke jaringan computer, perangkat keras jaringan computer & data link layer, model dasar dari jaringan
dgn switch, protocol kerja internet, layer transport, kendali congestion dan alokasi sumber daya, layer aplikasi dan
keamanan jaringan
Silabus Lengkap
Introductions to computer networks, computer network architecture, computer network hardware & data link layer,
basic model of switched networks, internetworking protocols, transport layer (TCP/UDP), congestion control and
resource allocation, application layer and network security
Pengantar ke jaringan computer, arsitektur jaringan computer, perangkat keras jaringan computer & data link layer,
model dasar dari jaringan dgn switch, protocol kerja internet, layer transport (TCP/UDP), kendali congestion dan
alokasi sumber daya, layer aplikasi dan keamanan jaringan
Luaran (Outcomes)
understands typical layered structure of computer network architecture, understands the basic principles of medium
access layer, understands the principles of switched networks and reliable message delivery, understands the
principles of routing and packet forwarding in IP networks, be able to configure LAN and IP networks, be able to
implement networked application/simple client-server applications
Matakuliah Terkait
Sistem Operasi Prasyarat

Kegiatan Penunjang Praktikum
Pustaka
Peterson, L. L. & Davie, B. S. Computer Networks: A Systems Approach, 4e Morgan Kaufmann Publishers, 2007
Lin, Y.-D. Computer Networks: An Open Source Approach McGraw Hills, 2011

Panduan Penilaian UTS 35%, UAS 35 %, Tugas 30%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to Computer
Networks and Computer
Network Architecture
Arsitektur Jaringan, Layer
OSI, TCP/IP
Memahami arsitektur jaringan
komputer tipikal/umum, mampu
membandingkan TCP/IP dan 7 layer
OSI
[1] Bab 1
2 Data Link Layer
Medium access layer, error
detection, framing,
encoding
understands the basic principles of medium
access layer

3 Network Layer
Switching and forwarding,
bridges, LAN and switch
understands the principles of switched
networks and reliable message delivery

4 Network Layer
IP protocol, IP service
model, IP fragmentation,
IP address, ICMP, ARP
be able to configure LAN and IP networks
5 Network Layer Routing protocol (RIP)
understands the principles of routing and
packet forwarding in IP networks

6 Network Layer Routing protocol (OSPF)
understands the principles of routing and
packet forwarding in IP networks

7 Transport Layer TCP & UDP
8 UTS
9 Transport Layer Congestion control in TCP
10 Application Layer DNS, email and Web
be able to implement networked
application/simple client-server applications

11 Application Layer multimedia
be able to implement networked
application/simple client-server applications

12 Application Layer Network management
be able to implement networked
application/simple client-server applications

13 Computer Network Security
Dasar keamanan jaringan,
cryptography
be able to implement networked
application/simple client-server applications

14 Computer Network Security
Authentication, key
distribution, SSH, IPSec,
TLS
be able to implement networked
application/simple client-server applications

15 Review

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 29 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pengembangan Aplikasi pada Platform Khusus
Kode Matakuliah:
IF3111
Bobot sks:
2
Semester: 5 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Pengembangan Aplikasi pada Platform Khusus
Platform-based Development
Silabus Ringkas
Perkuliahan ini menjelaskan sejumlah platform computing selain general purpose computer. Kuliah ini
mengajarkan sejumlah teknik untuk mendesian dan mengembangkan aplikasi pada sebuah platform khusus,
dengan memperhatikan keterbatasan pada platform tersebut. Mahasiswa akan belajar bagaimana melakukan
pengukuran kinerja dan meningkatkan kinerja dari aplikasi yang telah dibangun pada platform tersebut.
This course explains various platform of computing. The course teaches how to design and develop a software
application that resides on a specific software platform by taking into account its contraints. In this course, the
student swill learn how to do performance measurement and tuning.
Silabus Lengkap
Kuliah ini berfokus pada desain dan pengembangan aplikasi yang berada pada sebuah platofrm kusus dimana
terdapat sejumlah batasan tambahan (diluar batasan umum yang ada pada komputer pada umumnya) yang harus
diperhatikan. Pada perkuliahan ini mahasiswa akan belajar membuat abstraksi dari sebuah aplikasi dan bagaiman
mengkontekstualkan desain tersebut dan mengimplementasikannya pada sebuah platform khusus. Kuliah ini
menitikberatkan pada tiga platform: industrial, game, and mobile. Kuliah ini juga membahas bagaimana melakukan
debugging, pengukuran-peningkatan kinerja , dan proses re-engineering untuk portability dari sebuah aplikasi.
This course conncerns on the design and development of a software system that resides on a platform specific. In
contrast to the general purpose programming, this platform-based development needs to account platform-specific
constraints. In this course, students will learn about software abstraction, and how to design a software for a
particular platform. Moreover, they need to develop softwares in various platforms, such as: industrial, game, and
mobile. This course covers how to do debugging in a platform, performance measurement & tuning, and improving
portability of a software.
Luaran (Outcomes)
- Mahasiswa memahami prinsip dasar dan fungsi dari sebuah platform - Mahasiswa dapat mendesain dan mengembangkan sebuah piranti lunak pada sebuah platform khusus - Mahasiswa dapat mengukur dan memperbaiki kinerja piranti lunak yang telah dibangung pada sebuah platform
Matakuliah Terkait
Arsitektur dan Organisasi Komputer Prasyarat
Algoritma dan Struktur Data Prasyarat
Kegiatan Penunjang Praktikum mandiri
Pustaka
Learning XNA 4.0: Game Development for the PC, Xbox 360, and Windows Phone 7, Aaron Reed, O'Reilly
Media, 2010
Arduino and Kinect Projects: Design, Build, Blow Their Minds, Enrique Ramos Melgar, Ciriaco Castro Diez,
Apress, 2012
Java Performance, Charles J. Hunt & Paul Hohensee & Binu John Charles J. Hunt & Paul Hohensee & Binu John,
Prentice Hall, 2011
Embedded Java security: security for mobile devices, Mourad Debbabi & Mohamed Saleh & Chamseddine Talhi, Springer, 2007
Beginning Java 7, Jeff Friesen, Apress, 2011
Panduan Penilaian
- 35% ujian
- 65% tugas
Catatan Tambahan
Perkuliahan ini lebih menitik beratkan pada pemahaman konsep melalui kemampuan praktis dari peserta kuliah
dalam membangun sebuah aplikasi pada platform khusus.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Pengantar kuliah dan
platform-based development
- Pemahaman fungsi dan
prinsip platform
- Paham fungsi dan prinsip platform
- Paham membuat abstraksi dari
sebuah aplikasi
- Mengerti bagaimana mendesain
aplikasi dengan memahami batasan
dari platform

2 Mobile Platform
- Karakteristik dari
platform
- Batasan pada mobile
plaform
- Paham fungsi dan prinsip dasar
sejumlah mobile platform
- Paham karakteristik dari masing-
masing mobile platform
- Dapat mendesain sebuah mobile
aplikasi dengan memperhatikan
batasan dari mobile platorm

3 Pemrograman via APIs
- Computational model
untuk aplikasi mobile
- Multi-core
- Graphic rendering
- Location-based
- Dapat merekayasa sebuah
komputiasional model sehingga
cocok untuk mobile - konsiderasi
CPU power dan power consumption
- Dapat memanfaatkan fasilitas
multi-core, GPU, dan location-
service pada sebuah aplikasi

4 Pemrograman via APIs
- Application deployment
and Debugging
- Emerging Technnologies
- Dapat melakukan deployement dan
debugging pada mobile platform
secara efesien
- Mengetahu sejumlah teknologi
baru pada mobil platforms dan
mengetahu cara menggunakannya

5 Game Platform
- Dasar game platform
- Karakteristik dari game
platform (XBox, Wii, PS)
- Prinsip dasar Game
Desain
- Paham prinsip dasar dan
karakteristik dari game platform
- Mengetahui dan dapat mendesain
game sederhana

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 30 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

6
Pemrograman pada Game
Platform
- Pemrograman Game pada
Platform
- Image Rendering
- Sprites & Annimation
- Paham fungsi dari game platform
(XNA/Unity)
- Dapat melakukan manipulasi
visual dengan menggunakan APIs
pada framework

7
Pemrograman pada Game
Platform
- Pemrograman prinsip
Fisika
- Pemrograman Kinect
- Dapat mengembangkan game
dengan memanfaatkan hukum fisika
dan Kinect

8 UTS
9
Pemrograman pada Game
Platform
- Pemrograman game via
Game Console
- Mengetahui fitur dan prinisp kerja
dari game console
- Dapat membuat simple aplikasi
yang dapat berjalan pada game
console

10
Pemrograman pada
Industrial Platform
- Prinsip dan karakteristik
pada Industrial Platform
(PLC, Embedded System,
Arduino, SmartCard,
Robotic, etc.)
- Pemrograman pada
Arduino
- Paham tantangan dan kebutuhan
dari aplikasi pada industrial platform
- Paham karakteristik dari platforms
pada industri
- Dapat membuat aplikasi yang
dapat berjalan di Arduino

11
Pemrograman pada
Industrial Platform
- Pemrograman pada
platform lain (Embedded
System/PLC/Wireless
Sensor/SmartCard)
- Integrasi dengan software
system lainnya
- Mengetahui karakteristik dari
platform industri
- Dapat membuat aplikasi yang
dapat berjalan pada platform
tersebut
- Dapat mengintegrasi aplikasi
dengan software system lainnya

12
Etika dan Pengamanan
aplikasi dan platform
- Prinsip pengamanan
platform dan etika
berkaitain pada
pengembangan pada
platform
- Exploit pada platform
- Secure the platform and
codes
- Paham ancaman keamanan dari
platform
- Mengetahui kode etik dalam
mengembangkan games
- Dapat menerapkan sejumlah best-
practice untuk meningkatkan
keaman dari aplikasi

13 Application Porting
- Prinsip application
porting
- Teknik dasar untuk
melakukan application
porting
- Paham tujuan dari application
porting
- Mengetahui sejumlah pendekatan
dan teknik untuk melakukan porting

14 Rekayasa Kinerja
- Prinsip pengukuran
kinerja pada sebuah
platform
- Best=practice untuk
pengukuran dan
peningkatan kinerja
- Paham tujuan dari rekaya kinerja
- Dapat melakukan pengukuran
kinerja dari sebuah sistem baik pada
lingkungan pengembangan atau
lingkungan end-user/operasional
- Mengetahui sejumlah teknik untuk
memperbaiki kinerja dari sisem

15 Re-Engineering Sistem
- Prinsip dasar re-
engineering
- Pengelolaan perubhana
pada re-engineering dari
sistem
- Paham tujuan dari re-eingineering
- Mengetahui prinsip-prinsip dasar
dari re-engineering management
- Paham tahapan dalam melakukan
re-engineering

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 31 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pengembangan Aplikasi Berbasis Web
Kode Matakuliah: IF3110 Bobot sks:
2
Semester: 5 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Pengembangan Aplikasi Berbasis Web
Web based Application Development
Silabus Ringkas
Perkuliahan ini mengajarkan prinsip-prinsip dasar Intrenet dan Aplikasi Internet. Kuliah ini mengajarkan sejumlah
teknologi yang dapat digunakan untuk membangun sebuah Aplikasi Internet.
This course teaches basic principles of how Internet works. Moreover, the course basic principles of an Internet
Application and how to develop one.
Silabus Lengkap
Perkulihan ini membrikan pengantar dasar perihal Internet dan Aplikasi berbasis Internet. Pada kuliah ini mahasiswa mempelajari sejumlah teknologi (contoh: HTML 5, CSS, Java Script, JAVA, PHP) dan teknik (AJAX,
Offline-storage) untuk membangun aplikasi berbasis internet. Mahasiswa juga diajarkan untuk memahami
karakteristik setiap teknologi dan trade-off-nya. Mahasiswa juga diajarkan untuk menganalisis berbagai aspek
kualitas pada aplikasi internet, seperti: usability, security, dan performance. Kuliah ini juga mencakup ilmu
bagaimana merancang sebuah protokol (pada Application Layer) yang menggunakan Internet.
This course gives some introduction about Internet and Internet Application. This course concerns, mainly, on
learning various technologies (e.g., HTML5, CSS, Java Script, JAVA, PHP) and techniques (AJAX, Offline-
storage) to build Internet Applications. Moreover, students are required to understad the characteristics of each
technologies and their trade-offs. The students also taught to analyze various quality aspects of an Internet
Application, such as: usability, security, and performance. The course also covers how to design a protocol (at
Application Layer) that uses Internet.
Luaran (Outcomes)
- Mahasiswa memahami prinsip dasar bagaimana Internet dan Aplikasi Internet berkerja - Mahasiswa dapat membangun sebuah aplikasi web dengan memanfaatkan sejumlah teknologi, baik disisi server atau client - Mahasiswa dapat mendesain sebuah aplikasi internet dengan memperhatikan aspek kualitas (co: keamanan, kinerja, usability)
Matakuliah Terkait
Algoritma dan Struktur Data Prasyarat
Pemrograman Berorientasi Objek Prasyarat
Kegiatan Penunjang - Praktikum mandiri
Pustaka
The Java EE 6 Tutorial: Basic Concepts, Eric Jendrock & Ian Evans & Devika Gollapudi & Kim Haase &
Chinmayee Srivathsa, Prentice Hall, 2010
Developing Large Web Applications: Producing Code That Can Grow and Thrive, Kyle Loudon, O'Reilly Media, Inc., 2010
Web Technologies: A Computer Science Perspective, Jeffrey C. Jackson, Prentice Hall, 2007
HTML5: Up and Running, Mark Pilgrim, O'Reilly Media, Inc., 2010
JavaScript: The Definitive Guide, David Flanagan, O'Reilly Media, 2011
Panduan Penilaian
- 35% ujian
- 65% tugas
Catatan Tambahan
Perkuliahan ini lebih menitik beratkan pada pemahaman konsep melalui kemampuan praktis dari peserta kuliah
dalam membangun sebuah aplikasi internet.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Pengantar perkuliahan dan
Prinsip-prinsip dasar
Internet dan Aplikasi
Internet
- Pengantar perkuliahan
- Pengantar perihal Internet
dan Aplikasi Internet
- Dampak Internet pada
kehidupan sehari-hari
(positif/negatif)
- Paham peraturan dan penilian pada
perkuliahan
- Paham bagaimana Inernet
berfungsi
- Paham prinsip dasar aplikasi
internet
- Mengetahui dampak
(positif/negatif) yang ditimbulkan
oleh Internet melalui sejumlah cerita

2 Pengenalan HTTP
- Sejarah dari HTTP
- Prinsip dasar HTTP
- Penjelasan bagaimana
HTTP bekerja dan
spesifikasinya
- Paham ide dan prinsip dasar dari
HTTP
- Paham bagaimana HTTP bekerja
- Dapat melakukan HTTP request
melalui command line
- Mengetahui fungsi dan perbedaan
dari masing-masih HTTP request

3 HTML + CSS
- Pengantar HTML
- Pengantar CSS
- Pengembangan pada
HTML5 dan CSS3
- Paham kegunaan HTML+CSS
dalam membuat aplikasi internet
- Dapat membuat halaman web
sederhana menggunakan
HTML+CSS
- Mengetahui dan dapat
menggunakan fitur-fitur pada
HTML5+CSS3

4 Client-Side Scripting
- Java Script
- JQuery
- Paham fungsi Java Script dalam
mengembangkan aplikasi internet
- Mengetahui kapan dan dampak
dari penggunaan Java Script
- Mengetahui language technology
dari Java Script
- Dapat melakukan validasi
sederhana dari sebuah HTML form
- Dapat melakukan manipulasi
HTML+CSS dengan menggunakan
Java Script

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 32 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

5 Server-Side Scripting - PHP
- Paham fungsi PHP dalam
mengembangkan aplikasi inernet
- Mengetahui kapan dan dampak
dari penggunaan PHP
- Mengetahui language technolog
dari PHP
- Dapat membuat program sederhana
dengan PHP yang menerima
parameter dari user request

6 HTML 5
- Prinsip dasar AJAX
- Detil fitur HTML 5
- HTML5-based WebApps
- Paham prinsip kerja dari AJAX
- Dapat mengembangkan sebuah
WebApps dengan local-persistance
dan offline-feature

7 Java Technology
- Servlet
- JSP
- Paham fungsi Servlet dalam
mengembangkan aplikasi inernet
- Mengetahui kapan dan dampak
dari penggunaan Java Technology
pada Web
- Mengetahui language technology
dari Java Web Technology
- Paham prinsip dasar dan kerja
Servlet dan JSP
- Dapat mengembangkan sebuah
Aplikasi yang menggunakan JSP
dan Servlet

8 UTS
9 Java Technology
- JSF
- Java Web Tech
- Paham fungsi dari JSF
- Mengetahui pengembangan terkini
dari Java Web Technology
- Dapat menggunakan teknologi
tersebut pada aplikasi internet

10
Internet Application
Development Framework
- GWT
- Play
- ... (tergantung pada trend)
- Paham fungsi dan cara kerja dari
framework
- Mengetahu kapan dan dampak dari
penggunaan framework tersebut
- Dapat menggunakan framework
tersebut pada pengembangan
aplikasi internet

11 SOA + WebService
- Web Service
- SOA
- Paham prinsip dasar Web Service
dan SOA
- Dapat membangun sebuah web
service
- Dapat membangun sebuah aplikasi
dengan memanfaatkan sejumlah
web-service yang telah ada di
Internet

12
Pembangungan Aplikasi
berskala Enterprise
- Aplikasi berskala
Enterprise
- J2EE
- EE Tech: Process Engine,
ESB, Load-Balancer
- Paham terhadap karakteristik dari
aplikasi berskala Enterprise
- Mengetahui J2EE dan EE
technologies
- Mengetahui kapan dan dampak
dari penerapan teknologi tersebut

13
Rekayasa Protokol Aplikasi
berbasis Internet
- Protokol Aplikasi
- Desain dan Verifikasi
Protokol
- Impelementasi Protokol
- Mengetahui prinsip dasar dari
protokol aplikasi
- Dapat mendesain, menverifikasi
dan mengimplementasikan protokol
aplikasi berbasis internet

14
Rekayasa Kinerja Aplikasi
Internet
- Konsep dasar dari kinerja
sistem
- Pengukuran kinerja
aplikasi internet
- Peningkatan kinerja
aplikasi internet
- Paham terhadap konsep system
performance dan performance
engineering
- Dapat menentukan metrik kinerja
dari suatu sistem dan mengukurnya

15
Pengamanan Aplikasi
Internet
- Konsep dasar dari
keamanan informasi
- Ancaman keamanan dari
aplikasi internet
- Best-Practice dalam
pemrograman guna
mengurangi ancaman
keamanan
- Paham terhadap konsep dasar dari
keamanan informasi dan bagaimana
hal tersebut dapat terjadi pada
sebuah aplikasi internet
- Mengetahui sejumlah teknik
pemrogram yang dapat diterapkan
untuk mengurangi ancaman pada
keamanan informasi

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 33 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Kecerdasan Buatan
Kode Matakuliah: IF3170 Bobot sks:4 Semester:5 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Kecerdasan Buatan
Artificial Intelligence
Silabus Ringkas
Kuliah ini membahas intelligent agent, mulai dari agen dengan tingkat yang paling sederhana (hanya melakukan pencarian),
hingga agen yang mampu membentuk pengetahuan sendiri. Untuk setiap tingkatan diberikan aplikasi yang memanfaatkan
agen pada tingkat tersebut. Dalam kuliah ini juga diberikan pengantar untuk pattern recognition.
This course discusses intelligent agent in three levels of “intelligence” which are simple problem solving agent (solve the
problem by searching), knowledge based agent, and learning agent which is capable of creating knowledge from a given data.
In each level, application that utilized intelligent agent is presented. Introduction to Pattern recognition is also presented in this
course.
Silabus Lengkap
Kuliah ini mendeskripsikan materi tentang pemahaman mengenai intelligent system, intelligent agent, review berbagai teknik
searching sebagai penerapan agen dengan level yang paling sederhana, beberapa jenis representasi pengetahuan dengan contoh
logika dan production rules, pengenalan sistem berbasis pengetahuan, beberapa teknik pembelajaran mesin sederhana dan
bagaimana mengukur kinerja dari tiap teknik yang dibahas, serta implementasi dari tiap level agen pada suatu aplikasi yang
membantu manusia dalam menyelesaikan persoalan.
The topics discussed in this course are what is intelligent system, what is intelligent agent, searching techniques, knowledge
representation (more on logic & production rules), knowledge based system, machine learning (decision tree, naive bayes, k-
means, etc), performance of machine learning, intelligent system application.
Luaran (Outcomes)
- Mahasiswa mampu mengkategorisasikan aplikasi berbasis intelligent system dan yang tidak
- Mahasiswa mampu mendefinisikan teknik yang tepat untuk menyelesaikan persoalan dengan karakteristik tertentu
- Mahasiswa mampu melakukan analisis terhadap teknik-teknik dalam intelligent system dan mengimplementasikan teknik terpilih pada suatu
persoalan
Matakuliah Terkait
Logika Informatika Prasyarat
Probabilitas dan Statistika Prasyarat
Teori Bahasa dan Automata Prasyarat
Strategi Algoritma Prasyarat
Kegiatan Penunjang
Pustaka
1. Stuart J Russell & Peter Norvig, Artificial Intelligence: A Modern Approach, 2nd Edition, Prentice-Hall International, Inc,
2003 (Pustaka Utama)
2. John F. Sowa, Knowledge Representation and: Logical, Philosophical, and Computational Foundations ,Course
Technology, 1999 (Pustaka Tambahan)
3. Lecture Notes in MIT Opencourseware, can be accessed at http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-
Computer-Science/6-825Techniques-in-Artificial-IntelligenceFall2002/LectureNotes/index.htm
4. George F. Luger & William A. Stubblefield, Artificial Intelligence Structure and Strategies for Complex Problem Solving
2nd Edition, The Benjamin/ Cummings Publishing Company Inc., 1993, Textbook.
5. Efraim Turban, Decision Support Systems and Expert Systems, 4th Edition, Prentice-Hall International, Inc, 1995,
Textbook.
Panduan Penilaian
Ujian Tengah Semester, 20%
Ujian Akhir Semester, 25%
Tugas Besar Berkelompok, 20%
Pekerjaan Rumah, 10%
Latihan terstruktur, 10%
Kuis, 15%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Overview of AI problems,
Examples of successful
recent AI applications
- Examples of AI
application
- Problems that can be
solved using AI approach
- 4 approach of AI
application
Students are able to
identify an AI/ non-AI
application, which
approach is used by an AI
application

2
Intelligent behaviour & how
to test the intelligence using
Turing Test;
Rational, nature of human
reasoning, nature of
environment, nature of
agents
- What is intelligent agent
- the structure
(component) of
intelligent agent
- types of intelligent agent
- the type of agent
environment
Students are able to
identify the components
when they build an
intelligent agent, and
identify the environment
(which will determine the
problem solution approach)

3
Problem Solving by
Searching, review of
searching techniques:
Uninformed and Informed
Search
Uninformed search:
- DFS, BFS, IDS, UCS
Informed Search:
- A*, greedy best first
search
Students are able to
apply uninformed/
informed search, and able
to identify which
approach is better for
certain problem

4 Heuristic Search:
Hill Climbing Search,
Simulated Annealing,
Genetic Algorithm
Students are able to
apply advanced search
techniques, and able to
identify which approach
is better for certain problem

5
Constraint Satisfaction
Problem & Constraint
optimization problem
Solving by:
- backtracking search
- local search
Students are able to
apply backtracking search
and local search to solve
problems, and identify

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 34 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
the best approach for
certain problem
6
Introduction to Knowledge
Based System
- Review logic as
knowledge representation
- Introduction to
knowledge representation
- knowledge
representation
manipulation
- architecture of KBS
- types of KBS
- example of KBS
Students are able to
identify a KBS/ non-KBS,
and able to determine the
type of a knowledge based
system,
Students are able to
compose a KBS
architecture for certain
problem

7
Forward Chaining,
Backward Chaining
- Introduction to Rule
Based System
- FC: data driven, LHS,
conflict resolution
strategy,
- BC: goal driven, RHS,
rule order
Students are able to
apply FC and BC in Rule
Based System, to find
solution for a problem

8 Planning
- Planning vs Problem
Solving
- Situation Calculus
- STRIP representation
- Plan space planning
- Partially Ordered Plan
- Plan as constraint
satisfaction problem
Students are able to
build a complete and
consistent plan, and able
to evaluate of a given plan

9
Inductive learning, define
overfitting problem,
association rule;
Definition and examples of
machine learning for
classification
- types of Learning
- Learning from examples
- define over fitting
problem
- classification
Students are able to
determine, the learning
approach for certain problem,
students are understand
how to draw a hypothesis
from given samples, and
understand the idea of
supervised learning

10
Simple statistical-based
learning
Naive Bayesian Classifier,
Decision trees, Nearest
Neighbor Methods
Students are able to
build a model by using
statistical-based
learning, from given samples

11 Linear Discriminant: SVM SVM
Students understand the
global process of SVM,
and able to define a
class of a data based on
SVM given

12
Clustering & Measuring
Accuracy;
Component Analysis &
Dimension Reduction
- Clustering
- Measuring
Accuracy
- Component Analysis
- Dimension Reduction
Students are understand
the difference between
supervised vs
unsupervised learning,
Students know how to
measure the model accuracy

13
Probabilistic Reasoning and
Bayes Theorem;
Bayesian Parameter
Estimation
- overview of joint
probability distribution
- bayes structure
- bayes reasoning
Students are able to
build a bayesian network
from given problem, and
solve certain query
according to the bayesian
network

14
Introduction to Pattern
Recognition
- application that
utilize the methods in
pattern recognition
- generative methods
- discriminative methods
Students are understand
the theory and algorithms
of putting abstract
object into categories,
and able to identify
which application that
utilize the pattern
recognition

15
Introduction to Graphical
Models: HMM, State-Space
Model, Dynamic Bayesian
Network
- HMM
- State-Space Model
- Dynamic Bayesian
Network
Students are understand
that graphical model is
useful in important role
in the design and
analysis of machine
learning algorithms,
Students are able to
identify the application
that utilize this approach

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 35 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Manajemen Proyek Perangkat Lunak
Kode Matakuliah:
IF3150
Bobot sks: 2 Semester: 5 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Manajemen Proyek Perangkat Lunak
Software Project Management
Silabus Ringkas
Kuliah ini memberikan pengetahuan mengenai manajemen proyek pengembangan perangkat lunak , lingkungan pengembangan proyek,
karakteristik proyek, serta resiko yang sering terjadi dalam pelaksanaan proyek perangkat lunak
This course provides the knowledge about the management of software development projects, project development environment, the
characteristics of the project, as well as the risks that often occur in the implementation of software projects
Silabus Lengkap
Manajemen dan manajemen proyek; manajemen proyek pembangunan perangkat lunak mencakup: inisiasi, perencanaan eksekusi,
pemantauan dan pengendalian, dan penutupan proyek; alat bantu, mencakup alat bantu P/L, pengukuran dan metrik; manajemen scope, waktu
dan biaya; manajemen kualitas; manajemen resiko; manajemen sumberdaya dan komunikasi;manajemen pengadaan; manajemen integrasi;
etika di bidang manajemen
Management and project management; software project management including: project initiation, planning, execution, monitoring and
controlling, and project closing;tools, including software, measurement and metrics;scope, time, and cost management; quality
management;risk management; human resource management and communication; procurement management; integration management;
ethics in management
Luaran (Outcomes)
Setelah lulus kuliah ini, mahasiswa:
1. Memahami pentingnya management dan manajemen proyek
2. Memahami siklus lengkap proses manajemen proyek perangkat lunak
3. Memahami beberapa area keilmuan dalam manajemen proyek perangkat lunak
4. Mampu mengelola proyek skala kecil dengan tim kecil (2-3 orang) dan menjadi pelaksana proyek yang baik
Matakuliah Terkait
Dasar Rekayasa Perangkat Lunak Prasyarat

Kegiatan Penunjang Praktikum menggunakan alat bantu untuk manajemen proyek perangkat lunak
Pustaka
Schwalbe, Kathy "Information Technology Project Management", 4th ed. Thomson Course Technology. 2006
(Pustaka utama)
McConnel, Stave “Software Project”, Microsoft Press, 1998 (Pustaka pendukung)
Heldman, Kim "Project Management Professional Study Guide", Sybex. 2004 (Pustaka pendukung)
Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil:
1. UTS
2. UAS
3. Tugas Penguasaan Alat Bantu
4. Tugas Studi Kasus
Catatan Tambahan

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Introduction to management
Definition, Principles, and Basic of
Management
[1] Chapter 1
2
Introduction to project
management
Project; Project Management; Role of
Project Manager; Project
Management Profession
[1] Chapter 1
3
Sofware project
management process (1)
Initiating; planning; SDP
4
Sofware project
management process (2)
Executing, monitoring, controlling;
Closing

5 Integration management
Definition; Integrative project
management process; risk conditions;
Consequent Risk Event
[1] Chapter 4
6 Scope management
Definition; measurement and metrics;
risk conditions; Consequent Risk
Event
[1] Chapter 5
7 Time management
Definition; measurement and metrics;
risk conditions; Consequent Risk
Event
[1] Chapter 6
8 UTS
9 Cost management
Definition; measurement and metrics;
risk conditions; Consequent Risk
Event
[1] Chapter 7
10 Quality management
SW quality;SW standard; reviews
and inspections; measurement and
metrics
[1] Chapter 8
11
Human resources
management
Team processes; Roles and
responsibilities in a software team;
Team conflict resolution; Risks
associated with virtual teams; Team
organization and decision-making;
Individual and team performance
assessment
[1] Chapter 9
12
Communication
management
The importance of communication
management;
Identifying stakeholders;
Planning communication;
Distributing communication
[1] Chapter 10
13 Risk management The role of risk; Risk categories; Risk [1] Chapter 11

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 36 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

identific
ation; Risk tolerance; Risk planning;
Risk removal, reduction and control;
Principles of risk management
14 Procurement management
Definition; Procurement management
process
[1] Chapter 12
15 Management ethics
Ethics in management; ethical
management; managing ethics and
compliance

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 37 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Interaksi Manusia Komputer
Kode Matakuliah:
IF3151
Bobot sks:3 Semester:5 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Interaksi Manusia Komputer
Human Computer Interaction
Silabus Ringkas
Kuliah ini membahas mengenai konsep desain, pengenalan karakteristik pengguna, aspek praktis dan penelitian
terkait antarmuka pengguna, pengumpulan data, framework analisis, proses desain interaksi, dan berbagai
pendekatan untuk mengevaluasi antarmuka interaktif.
This course discusses the Interaction design concepts, human issues, practical & research issues in a wide range of
interfaces, data gathering & analysis framework, process of interaction design, and approaches to evaluation of
interactive interfaces
Silabus Lengkap
Materi yang tercakup di dalamnya meliputi:
 Konsep dan Prinsip Desain Interaksi
 Domain masalah dan Konseptualisasi
 Aspek Kognitif
 Interaksi Emosional
 Interaksi Sosial
 Antamuka dan Interaksi
 Pengumpulan Data dan Analisis
 Proses Desain Interaksi
 Desain, Pembangunan Prototype, dan Konstruksi Produk Interaktif
 Ujicoba Usability
 Evaluasi Analitik
The topics discussed in this course are:
 Interaction design princples and concepts
 Problem space and design space conceptualization
 Cognitive aspects
 Emotional Interactions
 Social Interaction
 Interface and interactions
 Data gathering & analysis
 Process of interaction design
 Design, prototyping and construction of interactive product
 Usability testing
 Analytical evaluation
Luaran (Outcomes)
1. Mahasiswa mampu memahami konsep-konsep penting, prinsip, dan aspek manusia di dalam desain
interaksi.
2. Mahasiswa mampu membedakan isu desain dan riset yang terkait dengan berbagai tipe interaksi dan
antarmuka.
3. Mahasiswa mampu mengidentifikasi permasalahan usability dan user experience dalam kehidupan
sehari-hari.
4. Mahasiswa mampu mengaplikasikan pengetahuan konsep dan prinsip desain interaksi untuk
membangun produk yang bermanfaat.
5. Mahasiswa mampu melaksanakan ujicona usability dan evaluasi analitik.
6. Mahasiswa mampu mengimplementasikan ide desain yang dimiliki dalam bentuk oral dan tulisan.
Matakuliah Terkait Rekayasa Perangkat Lunak Prasyarat
Kegiatan Penunjang
Pustaka
Jennifer Preece, Yvonne Rogers, Helen Sharp (2007), “Interaction Design: Beyond Human-Computer Interaction”,
John Wiley & Sons, Inc, 2nd Edition.
Jeffrey Rubin, Dana Chisnell and Jared Spool (2008). Handbook of Usability Testing: Howto Plan, Design, and Conduct Effective Tests by ; Wiley, 2 edition.
Ben Shneiderman, Catherine Plaisant, Maxine Cohen and Steven Jacobs (2009). Designing the User Interface:
Strategies for Effective Human-Computer Interaction ; Addison Wesley, 5 edition.




Panduan Penilaian
Final Semester Tests 20%
Final Test 25%
Group Assignments 20%
Homework 10%
Exercise 10%
Quizes 15%

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pendahuluan
Demo Bahan Ajar
Mandiri

2
Desain Interaksi dan Proses
Desain Interaksi

3
Memahami Pengguna dan
Pengantar Evaluasi

4 Konsep Interaksi

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 38 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
5
Pengembangan Prototip dan
Pengumpulan Data

6 Antarmuka Bagian I
7
Antarmuka
Bagian II

8 Ujicoba usability
9 Midterm Exam
10 Evaluasi Analitik
11 Aspek Afektif
12
Desain untuk Kolaborasi
dan Komunikasi

13 Perbaikan Desain
14 Trend HCI
15 Presentasi Akhir

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 39 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Manajemen Basis Data
Kode Matakuliah:
IF3140
Bobot sks: 2 Semester: 5 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Manajemen Basis Data
Database Management
Silabus Ringkas
Mata kuliah ini memberikan pengetahuan mengenai pengelolaan basis data, mencakup peningkatan performansi
basis data, manajemen kemanan dan transaksi, pemrograman basis data, dan pengelolaan terdistribusi.
This course discusses about database management, including database performance tuning, security and transaction
management, database programming, distributed management of database.
Silabus Lengkap
Materi yang diberikan pada kuliah ini mencakup peningkatan performansi basis data melalui perbaikan skema
(termasuk indeks) dan query, pengelolaan keamanaan dan kontrol akses pengguna, pengelolaan transaksi serta
pemulihan basis data saat terjadi gangguan, pemrograman basis data menggunakan fungsi dan prosedur tersimpan
di basis data, penjagaan integritas basis data dengan memanfaatkan constraints, assertions, dan triggers, serta
pengelolaan basis data terdistribusi.
The topics covered in this course are database performance tuning through schema (including use of index) and
query modification, management of security through access control of users, transaction management and database
recovery, database programming with stored-procedure and functions, database integrity using constraints,
assertions, and triggers, and distributed database management.
Luaran (Outcomes)
- Mahasiswa memiliki pemahaman mengenai berbagai fungsionalitas yang dimiliki oleh suatu sistem
manajemen basis data
- Mahasiswa mampu meningkatkan performansi basis data sesuai kebutuhan operasi di organisasi
- Mahasiswa mampu menyusun batasan integritas basis data berdasarkan aturan bisnis organisasi dan
mengimplementasikan di basis data
- Mahasiswa mampu melakukan fungsi administrator basis data
Matakuliah Terkait
Basis Data Prasyarat

Kegiatan Penunjang Studi kasus peningkatan performansi basis data, praktikum pemrograman basis data
Pustaka
A. Silberschatz, H.F. Korth, S. Sudarshan, ‘Database System Concepts’, McGraw-Hill (Pustaka Utama)
J.A. Hoffer, M.B. Prescott, F.R. McFadden, ‘Modern Database Management’, Pearson Prentice Hall (Pendukung)
C.J. Date, ‘An Introduction to Database System’, Addison Wesley (Pendukung)

Panduan Penilaian
Ujian Tengah Semester, 25%
Ujian Akhir Semester, 30%
Tugas Besar Berkelompok, 20%
Praktikum, 10%
Kuis 15%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to Database
Management
- Overview of database
management
- DBMS functions
- Describe the overall database
management activities
- Identify major DBMS functions
and describe their role in a
database system

2
Database Performance
Tuning
- Database performance
- Performance tuning
- Explain how database design
affects database transaction
efficiency
- Explain factors which reduce
database performance
- Describe several strategies to
improve database performance

3
Database Performance
Tuning
- Schema tuning
- Create a better database design
which match with a given
transactions log

4
Database Performance
Tuning
- Indexing
- Identify appropriate indices for
given relational schema and query
set
- Estimate time to retrieve
information, when indices are
used compared to when they are
not used

5
Database Performance
Tuning
- Query tuning
- Evaluate a set of query processing
strategies and select the optimal
strategy

6
Security and User
Management
- Database security
- User management
- Access control
- Evaluate access controls of a
specified database by using
authorization-grant graph
- Manage users of databases with
specified access controls related
with a case study

7 Transaction Processing - Transactions
- Explain the importance of
transaction properties
- Explain serializable transactions
- Explain the concept of implicit
commits

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 40 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
- Describe the issues specific to
efficient transaction execution
- Explain at least two transaction
protocols
8 UTS
9 Transaction Processing - Failure and recovery
- Explain kinds of failures that can
happen in a database system
- Explain when and why rollback is
needed and how logging assures
proper rollback
- Write a backup plan for a
database

10 Transaction Processing
- Embedded SQL and
transaction
- Embed object-oriented queries
into a stand-alone language such
as C++ or Java (e.g., SELECT
Col.Method() FROM Object)
- Create a transaction by
embedding SQL into an
application program

11 Transaction Processing - Concurrency control
- Explain the effect of different
isolation levels on the
concurrency control mechanisms
- Choose the proper isolation level
for implementing a specified
transaction protocol

12 Query Language
- Stored procedures
- Functions
- Write a stored procedure that
deals with parameters and has
some control flow, to provide a
given functionality

13 Integrity Constraints
- Integrity constraints in
database
- Constraints
- Assertions
- Trigger
- Design and implement constraints
and assertions in database
- Write a trigger that has some
control flow, to provide a given
functionality

14 Distributed Database - Distributed data storage
- Explain the techniques used for
data fragmentation, replication,
and allocation during the
distributed database design
process

15 Distributed Database
- Distributed query
processing
- Client-server distributed
database
- Evaluate simple strategies for
executing a distributed query to
select the strategy that minimizes
the amount of data transfer
- Describe the three levels of
software in the client-server model

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 41 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Semester 6


Kode Matakuliah:
IF3240
Bobot sks: 3 Semester: 6 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Sistem Informasi
Information System
Silabus Ringkas
Pada kuliah ini diberikan pengertian, pemahaman dan pengetahuan mengenai konsep sistem informasi dan
peranannya dalam meningkatkan keunggulan kompetitif organisasi
This course provides explanation, comprehension, and knowledge about information systems concept and its role in
improving organization competitive advantage
Silabus Lengkap
Pada kuliah ini diberikan pengertian dan pengetahuan tentang jenis, fungsi, struktur dan peran sistem informasi
berbasis komputer pada suatu organisasi. Selain itu mahasiswa juga diberikan kemampuan untuk melakukan
analisis dan penetapan kebutuhan informasi organisasi, mentransformasikan kebutuhan kedalam rancangan sistem
informasi yang sesuai dan menerapkannya ke dalam bentuk prototipe, sehingga organisasi dan manajemen akan
lebih produktif, efisien, dan efektif sehingga diharapkan akan memiliki keunggulan untuk berkompetisi.
This course provides explanation and knowledge about types, function, structure, and role of computer-based
information systems in an organization. Students get the ability to analyze information needs, transform the need
into a plan, and apply the plan into information system prototype, in order to improve organization productivity,
efficiency, and effectivity, to improve organization’s competitive advantage.
Luaran (Outcomes)
Mahasiswa memahami konsep sistem informasi berbasis komputer, dan mampu melakukan analisis kebutuhan dan
menetapkan kebutuhan informasi untuk suatu organisasi, serta merancang dan mengimplementasikan (dalam
bentuk prototipe)

Matakuliah Terkait
Dasar Rekayasa Perangkat Lunak Prasyarat
Basis data Prasyarat
Kegiatan Penunjang Praktikum Lapangan
Pustaka
1. Steven Alter, Information System: Foundation of e-Business, Mc Graw Hill Inc., 2002.
2. Ralph Stair & Geoge Reynolds, Fundamentals of Information Systems, Course Technology, Cengage
Learning, 2010

3. Laudon, Management Information Systems: Managing the Digital Firm, Prentice Hall, 2007

4. Vallacich Joseph S., Essential of Analysis & Design, Prentice Hall Inc., 2005
5. O’Brien, Management Information Systems, Mc Graw Hill, 2008
6. Whitten, Benley, Dittman. System Analysis and Design Methods. McGrawHill,2004
7. Satzinger, Jackson, & Burd. System Analysis and Design in Changing World, 2
nd
Edition
Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil:
1. UTS
2. UAS
3. Tugas Penguasaan Alat Bantu
4. Tugas Studi Kasus
Catatan Tambahan


Mg #

Topik

Sub Topik

Capaian Belajar Mahasiswa

Sumber Materi
1. Introduction 1. Course Introduction
2. Management
3. Organization
4. System
Mhs dapat memahami Konsep dasar
manajemen, organisasi dan sistem serta
proses bisnis
- 1Ch.1
- 5Ch.1
2. Comprehension of Data,
Information, and Knowledge
1. Data
2. Information
3. Knowledge
Mhs dapat mengerti, memahami dan
dapat membedakan arti data, informasi,
pengetahuan dan kebijakan serta
manfaatnya bagi manajemen sesuai
fungsinya.
- 1Ch 2&4
- 5Ch1
3. Business Process and Information
Systems
1. Business Process
2. Role and objective of
information system
3. Information System Types
Mhs dpt memahami konsep dasar
sistem informasi & teknologi informasi,
komponen, sistem kerja dan peran serta
sasaran sistem informasi
- 1Ch1,6
- 5Ch.1

4. System Analysis 1. Approach to system
development
2. System Analysis
Mhs dpt memahami tahapan
pengembangan SI serta mengetahui
teknik dan metoda untuk melakukan
analisa sistem
- 1Ch2
- 4Ch5
- 5Ch12
5. Requirement Engineering


1. Basic Concept of Requirement
2. Requirement Analysis Tools &
Techniques
3. Requirement Analysis and
Management
Mhs memahami teknik dan metoda
untuk melakukan identifikasi kebutuhan
informasi
- 6Ch6
6. Strategic Planning 1. Competitive Advantage
2. Porter’s Competitive Forces
3. Porter’s Value Chain Analysis
Mhs memahami prinsip-prinsip dalam
merancang perencanaan strategis
- 1Ch6
- 5Ch2,8
7. Information System Planning 1. Strategic Plan
2. Enterprise Analysis
3. BSP, CSF, & BPR
Mhs memahami dan mengerti
bagaimana membuat rencana
pengembangan SI, dan mengenal
berbagai metoda perencanaan.
- 1Ch5,11
- 5Ch1,14

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 42 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg #

Topik

Sub Topik

Capaian Belajar Mahasiswa

Sumber Materi
8. Ujian Tengah Semester
9. Logic design and codification 1. Modeling Process
2. Logic modeling
3. Data modeling concept
4. Codification

Mhs mampu memilih model proses
logik yang sesuai untuk dasar penetapan
proses rancangan, serta mampu memilih
sistem pengkodean yang tepat.
- 1Ch3
- 4Ch6
10. System Design

1. System design
2. Design strategy
3. Database design
Mhs dapat menentukan dan
determinasi, penstrukturan dan
pengembangan alternatif pemenuhan
kebutuhan dengan strategi yg tepat dan
rancangan basisdata yang sesuai.
- 1Ch5,11
- 5Ch1,14
11. Designing Interface and Dialogue 1. Input/Output Design
2. Design specification
3. Interaction method
4. Design arrangement
Mhs mampu menetapkan spesifikan
rancangan interaksi dengan komputer
sesuai metoda interaksi, dialog dan
merancang tata letak menu dengan baik.
- 4Ch11, 12

12. Finalizing Design Specification 1. Design process
2. Design methodology
3. Activities of analyze and
design
Mhs memahami kualitas kebutuhan dan
dapat menulis pernyataan kebutuhan,
dapat membaca dan mengerti structure
chart dan mendiskusikannya.
- 4Ch13
13. Network & telecommunication 1. LAN design
2. Internet system design
3. Data warehouse
Mhs mengerti dasar pertimbangan
dalam perancangan sistem terdistribusi
dan internet serta memahami konsep
data warehouse.
- 1Ch8,10
- 4Ch14
- 5Ch6
14. Security, Law, and Ethic 1. Cybercrime & system
malfunction
2. Security Control
Mhs memahami ancaman dan gangguan
dalam operasional sistem dan tindakan
untuk pengendalian keamanan
- 3Ch10
15. Enterprise-wide Information
Systems
1. Packed Software & ERP
2. GIS
Mhs memahami sistem informasi
enterprise, pendekatan pengembangan
dan pemanfaatannya.
- 7Ch14

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 43 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Grafika Komputer
Kode Matakuliah: IF3260 Bobot sks: 2 Semester:6 KK / Unit Penanggung Jawab:
KK Informatika
Sifat:
Wajib Prodi
Nama Matakuliah
Grafika Komputer
Computer Graphics
Silabus Ringkas
Pembuatan image, framebuffer, primitif dari penggambaran objek, algoritma Bresenham, transformasi geometri,
window-view, layering, clipping, object filling, optimasi anti-clipping, struktur data spatial, pemodelan hierarki,
kurva Bezier & Spline
Image creation, framebuffer, primitive object drawing, Bresenham algorithm, Geometry Transformation, window-
view, layering, clipping, object filling, anti-clipping optimization, spatial data structure, hierarchical modeling,
Bezier & Spline curve
Silabus Lengkap

Image creation, framebuffer, primitive object drawing, Bresenham algorithm, Geometry Transformation, window-
view, layering, clipping, object filling, anti-clipping optimization, spatial data structure, hierarchical modeling,
Bezier & Spline curve
Luaran (Outcomes)
Students understand how the image is created in computer, able to implement modeling techniques and image
processing, and able to develop computer application that utilize image processing.
Matakuliah Terkait
Algoritma & Struktur Data Prasyarat
Arsitektur dan Organisasi Komputer Prasyarat
Geometri dan Ruang Vektor Prasyarat
Kegiatan Penunjang -
Pustaka
1. Donald Hearn, M. Pauline Baker. Computer Graphics C Version. Prentice-Hall. 1997 (Pustaka Utama)
2. Max K. Agoston. Computer Graphics and Geometric Modeling : Implementation and Algorithms. Springer.
2005 (Pustaka Pendukung)
Panduan Penilaian
Ujian Tengah Semester: paper based (30%)
Ujian Akhir Semester: paper based (30%)
Tugas: membuat aplikasi (40%)
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to Computer
Graphics: framebuffer &
pixel processing

2
Line and Circle Drawing:
Bresenham Algorithm &
DDA Algorithm

3
Geometry Transformation
and Composition

4
Complex Object Modeling:
Polyline, Polygon,
composition objects

5
Complex Object Modeling:
Polyline, Polygon,
composition objects

6
Window-View: World-to-
View & View-to-World

7 Segmentation & Layering
8 UTS
9
Cliping: Binary, Successive,
Polygon

10 Spline vs Bezier Curve
11
Object Filling: Flood-Fill &
Boundary Fill, Matrix
Method, Scanline Fill

12
Anti-Clipping Optimization:
Painter Method & Free-line
Method

13
Spatial Data Structure:
Quad-Tree, R-Tree

14
Spatial Query: picking, area
selection

15
Animation Control: Frame
by Frame, Interpolasi
Keyframe, Data
visualization

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 44 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Sistem Paralel dan Terdistribusi
Kode Matakuliah: IF3230 Bobot sks: 3 Semester: 6 KK / Unit Penanggung Jawab:
Informatika
Sifat: Wajib Prodi
Nama Matakuliah
Sistem Paralel dan Terdistribusi
Parallel and Distributed Systems
Silabus Ringkas
introduce basic concepts in parallel and distributed systems, focus on the implementation and performance issues
associated with them, parallel and distributed systems models and interfaces, parallel machines architectures,
parallel program optimization techniques, synchronization, consistency and coherence, fault tolerant and reliability
Konsep dasar pada sistem paralel dan terdistribusi, fokus pada isu implementasi dan performansi yang terkait,
model dan interface dari sistem paralel dan terdistribusi, arsitektur mesin paralel, teknik optimasi program paralel,
sinkronisasi, konsistensi dan koherensi, fault tolerant dan reliability
Silabus Lengkap
Basics of parallelization and parallelization strategies
Parallel/distributed programming models and interfaces - shared memory vs. message passing vs. remote procedure
call (RPC) vs. global address space languages: e.g., pthreads, MPI, MapReduce, OpenMP, HPF, UPC, language-
level threads (e.g., Java)
Parallel machine architectures - shared and distributed memory machines, multicore and multithreaded chips,
interconnection networks
Parallel program optimization techniques - synchronization granularity, dependences, scheduling, load balancing
Synchronization - hardware primitives, logical and physical clocks, mutual exclusion, distributed transactions,
transactional memory
Consistency and coherence - data-centric versus client-centric consistency models, cache coherence protocols
Fault tolerance and reliability - fail-stop versus byzantine failure models, two- and three-phase commits, reliable
group communication, checkpointing, message logging

Luaran (Outcomes)
Understands the basic concepts in parallel and distributed systems, understands several parallel programming
models (pthreads, MPI, MapReduce, OpenMP), able to develop scalable parallel applications, able to develop
scalable distributed applications, able to describe parallel architecture, able to describe synchronization
mechanisms, able to describe consistency and coherence protocols, able to describe failure models of distributed
systems, analyze fault tolerance properties of a system
Matakuliah Terkait
Jaringan Komputer Prasyarat

Kegiatan Penunjang
Pustaka
Distributed Systems, Principles and Paradigms, 2002 Edition: Andrew S. Tanenbaum and Maarten van Steen
Parallel Computer Architecture, A Hardware/Software Approach, 1999 Edition: David E. Culler, Jaswinder Pal
Singh, and Anoop Gupta
Foundations of Multithreaded, Parallel, and Distributed Programming, 2000 Edition: Gregory R. Andrews
Panduan Penilaian UTS 35%, UAS 35%, Tugas 30%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
basic concepts in parallel and
distributed systems
Data vs process
parallelization, distributed
systems characteristics
Understands the basic concepts in parallel
and distributed systems

2
Parallel programming
model: shared memory
Shared memory model:
concept
understands several parallel programming
models (pthreads, MPI, MapReduce,
OpenMP)
able to develop scalable parallel applications

3
Shared memory model:
openMP
understands several parallel programming
models (pthreads, MPI, MapReduce,
OpenMP)
able to develop scalable parallel applications

4
Shared memory model:
TBB
understands several parallel programming
models (pthreads, MPI, MapReduce,
OpenMP)
able to develop scalable parallel applications

5
Parallel programming
model: message passing
Message passing: MPI
understands several parallel programming
models (pthreads, MPI, MapReduce,
OpenMP)
able to develop scalable parallel applications

6
Parallel programming
model
CUDA
understands several parallel programming
models (pthreads, MPI, MapReduce,
OpenMP)
able to develop scalable parallel applications

7
Parallel machine
architecture
Shared and distributed
memory, interconnection
able to describe parallel architecture
8 UTS
9
Synchronization
mechanisms
Hardware synchronization,
physical and logical clock,
mutex, semaphore
able to describe synchronization mechanisms
10 Distributed transactions
Concepts, two phase
commit, non blocking
commit protocols
able to describe synchronization mechanisms

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 45 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Transactional memory
Concept, implementation
and application
able to describe synchronization mechanisms
11 Consistency model
Data centric vs client
centric consistency model
able to describe consistency and coherence
protocols

12 Failure model
Fail-stop, crash recovery
model, byzantine
able to describe failure models of distributed
systems,

Fault tolerant & reliability
Check pointing, atomic
transaction, replication
analyze fault tolerance properties of a system
13 Sistem Peer to Peer
14
Studi kasus: Google dan
Facebook

15 review

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 46 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Sosio-informatika dan Profesionalisme
Kode Matakuliah:
IF3280
Bobot sks:3 Semester:6 KK / Unit PenanggungJawab:
Informatika dan Rekayasa
Perangkat Lunak dan Data
Sifat:
Wajib Prodi
NamaMatakuliah
Sosio-informatika dan Profesionalisme
Socio-informatics and Professionalism
SilabusRingkas
Kuliah ini membahas mengenai kebudayaan, sosial, hukum, dan isu etika yang terkait dengan disiplin ilmu
informatika, peran-peran yang dapat dijalankan sebagai praktisi informatika, konteks sosial dimana solusi
keinformatikaan diterapkan, profesionalisme, serta komunikasi efektif.
This course discusses the social, legal, ethical and cultural issues involved in the deployment and use of computer
technology,social Context, Analytical Tools, Professional Ethics, Intellectual Property, and effective
communication.
SilabusLengkap
Materi yang tercakup di dalamnya meliputi:
 Konteks Sosial
 Kakas penganalisis
 Etika Profesional
 Hak atas Kebebasan Intelektual
 Privacy and Civil Liberties
 Komunikasi Profesional
 Sustainabilitas
 Kebijakan keamanan, hukum, dan kejahatan di dunia komputer.
The topics discussed in this course are:
 Social Context
 Analytical Tools
 Professional Ethics
 Intellectual Property
 Privacy and Civil Liberties
 Professional Communication
 Sustainability
 Security Policies, Laws and Computer Crimes



Luaran (Outcomes)
1. Mahasiswa mampu memahami dasar-dasar kebudayaan, sosial, hukum, dan isu etika yang terkait dengan
disiplin ilmu Informatika termasuk hak-hak hukum hukum yang dimiliki pengguna dan pembuat perangkat
lunak dan perangkat keras, dan menghargai nilai etika yang mendasari hukum tersebut.
2. Mahasiswa mampu memahami tanggung jawab yang akan dipikul sebagai praktisi di bidang keinformatikaan,
memahami keterbatasan yang dimiliki termasuk di dalamnya keterbatasan kakas yang ada.
3. Mahasiswa mampu mengkritisi dan mengevaluasi solusi-solusi keinformatikaan yang diterapkan untuk
menjawab persoalan tertentu, memahami akibat yang mungkin muncul dengan adanya teknologi baru terhadap
sebuah lingkungan.Apakah teknologi tersebut akan meningkatkan atau malah menurunkan kualitas hidup
manusia secara individu, kelompuk, maupun institusi.
4. Mahasiswa mampu memahami bagaimana bekerja secara profesional.
5. Mahasiswa mampu memahami dan mempraktikkan cara berkomunikasi yang efektif.
MatakuliahTerkait
KegiatanPenunjang
Pustaka

The ACM Code of Ethics and 56 Professional Conduct - www.acm.org/about/code-of-ethics - guidelines that serve
as the 57 basis for the conduct of professional work for Informatics/Software Engineer.
Baden Eunson, Communicating in the 21st Century, 2nd edition, Willey 2008
Albom, Mitch , The Five People You Meet in Heaven, Hyperion, 2003
Kouzes, James, The Leadership Challenge, 3rd edition, Jossey Bass, 2002

PanduanPenilaian
Ujian Akhir Semester, 20%
Presentasi25%
Tugas Besar Berkelompok, 20%
Tugas Individu, 20%
Kuis 15%

Mg
#
Topik Sub Topik
Capaian Belajar
Mahasiswa
Sumber Materi
1 Social Context
social implications of computing in networked world
impact of social media on individualism, collectivism
and culture

2 social context
growth and control of the internet
digital divide, differences in access to digital
technology resources and its resulting ramifications
for gender, class, ethnicity, geography,
underdeveloped countries
accessibility issues
context aware computing

3 analytical tools
ethical argumentation
ethical theories and decision making
moral assumption and values

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 47 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

4 professional ethics
community values and the laws by which we live
the nature of professionalism including care,
attention and discipline, fiduciary responsibility and
mentoring
keeping up-to-date as a professional in terms of
familiarity, tools, skills, legal and professional
framework

5 professional ethics
professional certification, codes of ethics, conduct
and practice such as ACM/IEEE-CS, SE, AITP,
IFIP and international societies
accountability, responsibility and liability

6 professional ethics

• The role of the professional in public policy
• Maintaining awareness of consequences
• Ethical dissent and whistle-blowing
• Dealing with harassment and discrimination
• Forms of professional credentialing
• Acceptable use policies for computing in the
workplace
• Ergonomics and healthy computing environments
• Time to market and cost considerations versus
quality professional standards


7
professional
communication

• Reading, understanding and summarizing
technical material, including source code and
documentation
• Writing effective technical documentation and
materials
• Dynamics of oral, written, and electronic team and
group communication
• Communicating professionally with stakeholders
• Utilizing collaboration tools


8
professional
communication
oral communication
presentation

9 intellectual property

• Philosophical foundations of intellectual property
• Intellectual property rights
• Intangible digital intellectual property (IDIP)
• Legal foundations for intellectual property
protection
• Digital rights management
• Copyrights, patents, trade secrets, trademarks
• Plagiarism


10 intellectual property

• Foundations of the open source movement
• Software piracy


11 privacy and civil liberty

• Philosophical foundations of privacy rights
• Legal foundations of privacy protection
• Privacy implications of widespread data collection
for transactional databases, data warehouses,
surveillance systems, and cloud computing
• Ramifications of differential privacy
• Technology-based solutions for privacy protection
• Privacy legislation in areas of practice
• Civil liberties and cultural differences
• Freedom of expression and its limitations


12 sustainability

• Being a sustainable practitioner by taking into
consideration cultural and environmental impacts of
implementation decisions (e.g. organizational
policies, economic viability, and resource
consumption).
• Explore global social and environmental impacts of
computer use and disposal (e-waste)
• Environmental impacts of design choices in
specific areas such as algorithms, operating systems,
networks, databases, programming languages, or
human-computer interaction



13 economy of computing

• Monopolies and their economic implications
• Effect of skilled labor supply and demand on the
quality of computing products
• Pricing strategies in the computing domain

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 48 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

14
security policies, laws and
computer crime

• Examples of computer crimes and legal redress for
computer criminals
• Social engineering, identity theft and recovery
• Issues surrounding the misuse of access and
breaches in security
• Motivations and ramifications of cyber terrorism
and criminal hacking, “cracking”
• Effects of malware, such as viruses, worms and
Trojan horses
• Crime prevention strategies
• Security policies


15
kewirausahaan di
keinformatikaan

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 49 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Proyek Perangkat Lunak
Kode Matakuliah:
IF3250
Bobot sks: 4 Semester: 6 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Proyek Perangkat Lunak
Software Project
Silabus Ringkas
Kuliah ini memberikan gambaran kompleksitas dan pengalaman mengenai pengembangan perangkat lunak skala
besar. Mahasiswa memanfaatkan/ menggunakan berbagai platform, framework, dan tools yang biasa dipakai untuk
proyek berskala besar
This course gives an overview of the complexity and experiences of large-scale software development. Students
utilize / use a variety of platforms, frameworks, and tools commonly used for large scale software projects
Silabus Lengkap
Definisi perangkat lunak skala besar; berbagai masalah dalam pengembangan perangkat lunak skala besar dan
solusinya; abstraksi; SW Pattern; code generator; pengenalan berbagai platform, framework, dan tools; konfigurasi
P/L (konsep, tools, practices...); dilengkapi dengan studi kasus berupa proyek pembangunan P/L skala besar dengan
mempraktekkan semua teori yang telah diberikan, atau berupa reverse engineering suatu perangkat lunak skala
besar untuk mendapatkan modelnya
Definition of large-scale software; various problems in large-scale software development and solutions; abstraction; SW Pattern; code generator; introduction of a variety of platforms, frameworks, and tools; software
configuration (concepts, tools, practices ...); including a case study of development large-sale; practicing all the
theories and practices; the project can be in the form of reverse engineering a large-scale software
Luaran (Outcomes)
Setelah lulus kuliah ini, mahasiswa mampu untuk: 1. Memahami definisi P/L skala besar serta berbagai persoalan pengembangan P/L skala besar
2. Memahami teknik/metoda terkait dengan pembangunan P/L skala besar, seperti manajemen konfigurasi P/L
3. Mengenal dan mengoperasikan beberapa platform, frameworks, DBMS, dan tools yang dipakai untuk
mengembangkan P/L skala besar.
4. Melakukan instalasi, mempraktekkan manajemen konfigurasti P/L, serta melakukan Bugs tracking (dalam
case study)
5. Mempraktekkan suatu metodologi untuk mengembangkan P/L skala besar secara terukur, dengan suatu studi
kasus, atau untuk mengenal struktur dan melakukan reverse engineering terhadap P/L skala besar yang ada
[termasuk program reading]
Matakuliah Terkait
Dasar Rekayasa Perangkat Lunak Prasyarat
Manajemen Proyek Perangkat Lunak Prasyarat
Kegiatan Penunjang
Studio: pelaksanaan proyek pembangunan P/L skala besar
Mentoring: dalam tahap pelaksanaan proyek, mentor akan membantu memberikan tips dan praktis, serta membantu
menilai hasil pekerjaan tim proyek
Pustaka
Roger S. Pressman, Software Engineering: A Practitioner's Approach, Edisi ke-7, Mc Graw-Hill, 2010 (Pustaka
Utama)
Ian Sommervillle, Software Engineering, Edisi ke-9, Addison Wesley, 2011

Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil:
 UAS (pemahaman masalah dan solusi pembangunan P/L skala besar)
 Pelaksanaan proyek pembangunan P/L
Catatan Tambahan
1. Proyek dilakukan secara berkelompol; aspek kerjasama tim akan menjadi salah satu bagian penilaian
2. Jika memungkinkan, digunakan tools yang mampu membangkitkan kode program, karena fokusnya bukan
pada pembuatan kode.
3. Jika harus membuat kode program sendiri, maka realisasinya bisa dibatasa hanya sebagian dari rancangan
P/L skala besar


Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pengantar P/L skala besar
Definisi P/L skala besar;
prinsip pembangunan P/L
skala besar; contoh P/L
skala besar; Berbagai
masalah dalam
pembangunan P/L skala
besar
 Mengetahui karakteristik P/L skala besar
 Mengetahui beberapa contoh P/L skala
besar
 Mengetahui berbagai masalah yang
mungkin dihadapi dalam pembangunan P/L
skala besar

Abstraction
Konsep abstraksi; membuat
abstraksi persoalan
 Memahami konsep abstraksi
 Dapat membuat abstraksi persoalan dengan
jelas
[1] Chapter 8
2 S/W Pattern
Definisi S/W Pattern;
klasifikasi S/W patterns;
Contoh-contoh S/W pattern
 Mengetahui beberapa S/W pattern dan
klasifikasinya
 Mengetahui beberapa contoh S/W pattern
 Dapat memilih pattern yang tepat sesuai
dengan kebutuhan
[1] Chapter 12
S/W Reuse
Latar belakang kebutuhan;
peluang reuse; masalah-
masalah terkait reuse
 Mengetahui konsep reuse dan berbagai
peluang serta permasalahan terkait reuse
[2] Chapter 16
3 SW Quality
Definisi kualitas PL; faktor
kualitas PL; SQA
 Memahami beberapa faktor kualitas P/L
 Mengetahui proses penjaminan kualitas P/L
(SQA)
[1] Chapter 14,16
[2] Chapter 24
SW Testing
Strategi pengujian; white-
box testing; black-bos
testing
 Memahami strategi pengujian P/L
 Mengenal beberapa teknik pengujian P/L
[1] Chapter 17
4 Platforms, framework, tool
Pengertian platform,
framework, dan tools; isu
terkait pemilihan platform,
framework, dan tools
 Mengetahui berbagai jenis platform,
framework, dan tool yang dapat digunakan
dalam pembangunan P/L skala besar
 Dapat memilih platform, framework, dan

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 50 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

tool yang sesuai dengan kebutuhannya

Contoh platform,
framework, dan tools
 Mengetahui beberapa contoh platform,
framework, dan tool yang dapat digunakan
dalam pembangunan P/L skala besar

5 Automation Code generation
 Mengetahui beberapa tool untuk
pembangkitan kode
 Dapat membangkitkan kode dengan
memanfaatkan tool yang tepat

Test automation
 Mengetahui beberapa tool untuk pengujian
otomatis
 Dapat melakukan pengujian otomatis
dengan memanfaatkan tool yang tepat

6 Configuration Management
Change management;
version management
 Mengetahui konfigurasi P/L
 Memahami adanya kebutuhan untuk
mengelola perubahan konfigurasi P/L
 Dapat menggunakan tools untuk mengelola
perubahan konfigurasi P/L, termasuk
mengelola versi P/L
[2] Chapter 25

System building; release
management
 Mengetahui berbagai masalah terkait
system building
 Dapat menggunakan tools untuk mengelola
rilis P/L
[2] Chapter 25
7 Software Evolution
Proses evolusi; aspek
dinamik evolusi program;
perawatan P/L;
pengelolaan legacy system
 Memahami proses evolusi P/L
 Mengetahui jenis perawatan P/L dan
penyebabnya
 Mengetahui berbagai masalah terkait
pengelolaan legacy system
[1] Chapter 29
[2] Chapter 9

Re-engineering: business
process reengineering,
software reengineering,
reverse engineering,
forward engineering,
structure reengineering
 Mengetahui proses re-engineering,
termasuk reengineering proses bisnis,P/L,
dan struktur
 Mengetahui perbedaan proses reverse
engineering dari forward engineering
[1] Chapter 29

8 Minggu UTS
9
Large-scale S/W
Development Project
Inisiasi proyek
(pembentukan tim proyek;
alokasi topik proyek)
 Mampu mendefinisikan lingkup proyek
pembangunan atau perawatan P/L


Elaborasi tipe proyek
dengan mengacu pada
contoh S/W pattern
 Mampu memilih SW pattern yang sesuai
dengan kebutuhan proyek

10 Requirement Specification
 Mampu membuat spesifikasi kebutuhan
P/L dengan baik, sesuai standar yang diakui
internasional


Mentoring: requirement
specification practices
 Mengetahui beberapa aspek praktis dalam
pembuatan spesifikasi kebutuhan P/L

11 Analysis Modeling
 Mampu mengidentifikasi elemen model
analisis untuk P/L yang akan dibuatnya
 Mampu membuat model analisis untuk P/L
yang akan dibuatnya


Mentoring: Analysis
modeling practices
 Mengetahui beberapa aspek praktis dalam
pembuatan model analisis

12 Design
 Mampu mengidentifikasi elemen model
perancangan untuk P/L yang akan
dibuatnya
 Mampu membuat model perancangan
untuk P/L yang akan dibuatnya


Mentoring: Design
practices
 Mengetahui beberapa aspek praktis dalam
pembuatan model perancangan

13 Detail design
 Mampu membuat model perancangan yang
detil yang siap untuk diimplementasi


Mentoring: Detail design
practices
 Mengetahui beberapa aspek praktis dalam
pembuatan model detil perancangan P/L

14 Implementation
 Mampu mengimplementasikan rancangan
P/L yang telah dibuat dengan lingkungan
implementasi yang sesuai


Mentoring: Coding
practices
 Mengetahui beberapa aspek praktis dalam
pemrograman

15 Testing
 Mampu merencanakan pengujian dan
membuat kasus uji dengan memanfaatkan
tool yang sesuai


Mentoring: Testing
practices
 Mengetahui beberapa aspek praktis dalam
pengujian P/L

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 51 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Semester 7

Rekayasa Perangkat Lunak Spesifik Domain

Kode Matakuliah:
IF4150
Bobot sks:
2 SKS
Semester:
7
KK / Unit Penanggung Jawab:
RPLD
Sifat:
Wajib Prodi
Nama Matakuliah
Rekayasa Perangkat Lunak Spesifik Domain
Domain Spesifics Software Engineering
Silabus Ringkas
Matakuliah ini memberikan dasar pengetahuan tentang produk, teknologi, tools dan proses/metodologi
mengembangkan perangkat lunak di mana domain memegang peranan penting yang harus diperhatikan.
This course provides fundamental knowledge, produck, technology, tools and development of software where
domain has important role that must be considered.
Silabus Lengkap
Kuliah ini memberikan pengetahuan mengenai topik-topik sehubungan dengan pengembangan perangkat lunak
yang domainnya perlu mendapat perhatian khusus. Topik yang dicakup: pengertian domain, domain data
modeling, software architecture for domain oriented software, domain driven software development, Domain
Spesific Languages, Sharing from domain expert, Case studies.
Topics included domain, domain data modeling, software architecture for domain oriented software, domain driven software development, Domain Spesific Languages, Sharing from domain expert, Case studies.
Luaran (Outcomes)
Setelah lulus kuliah ini, mahasiswa mampu memahami pengembangan perangkat lunak yang domainnya
memerlukan penanganan khusus, metodologi, teknik dan tools terkait domain oriented software development.
Matakuliah Terkait
Dasar Rekayasa Perangkat Lunak Prasyarat

Kegiatan Penunjang Praktikum untuk menerapkan salah satu topik pilihan pada suatu kasus
Pustaka
[1] Abel Avram and Floyd Marinescu: "Domain-Driven Design Quickly" (Dec 21, 2007)
[2] Eric Evans: "Domain-Driven Design: Tackling Complexity in the Heart of Software ", (Aug 30, 2003)
[3] Mohamed E. Fayad and Ralph E. Johnson: "Domain-Specific Application Frameworks: Frameworks
Experience by Industry", Willey PUblisher (Oct 18, 1999)
[4]Len Silverston and Paul Agnew: "The Data Model Resource Book", vol 1,2,3, Willey Publishing, 2009
[5] Kang, Cohen, Hess, Novak, Peterson, “Feature Oriented Domain Analysis (FODA)”, Technical Report
CMU/SEI-90-TR021, Software Engineering Institute, Carnegie Mellon University, 1990
[6] Jack Greenfield, Keith Short, Steve Cook and Stuart Kent: "Software Factories: Assembling Applications with
Patterns, Models, Frameworks, and Tools", Wiley Publisher, 2004
[7] Software Product Lines: Practices and Patterns by Paul Clements and Linda Northrop, SEI Series in Software
Engineering, 2001
[8]Markus Voelter: "DSL Engineering: Designing, Implementing and Using Domain-Specific Languages" (Jan 23,
2013)
[9] Martin Fowler and Rebecca Person : “Domain-Specific Languages”, Addison-Wesley Signature Series
(Fowler),


Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil:
1. UTS
2. UAS
3. Tugas Studi Kasus
Catatan Tambahan
Kuliah terdiri dari 2 jam kuliah, 2 jam diskusi (jika diperlukan) dan 2 jam di lab/mandiri untuk
eksplorasi/programming

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Pengertian tentang
“Domain”
Domain Aplikasi
Domain Solusi
Mahasiswa memahami pengertian
domain aplikasi, domain solusi dan
peranan domain dalam pemodelan
perangkat lunak
[1], [2]
Berbagai bahan dari Internet
2
Domain engineering, DSSE
(Domain Specific Software
Engineering)
Domain Engineering
DSSE
Mahasiswa memahami proses
enginnering domain, dan perbedaan
antara perangkat lunak yang umum
dibandingkan dengan perangkat
lunak spesifik domain serta siklus
hidupnya.
Bahan perkuliahan universitas
lain mengenai DSSE
3 Domain data modeling
Organisasi, Person,
Logistik, Scientific,
Aeronautics,
Bioinformatics, Big Data,
Engineering, Agricultures,
Climates, Transportation,
Banking, Mining,
Petroleum, Health system,
Forestry, GIS, bencana,
cuaca, ...
Mahasiswa memahami beberapa
standard data model, dan contoh
pemodelan data spesifik domain,
dan merancang data suatu sistem
yang dijadikan studi kasus
[1] dan bahan-bahan dari
Interent
4
Arsitektur software yang
mengisolasi domain
Open Architecture
Service Oriented
Architecture
Other Architecture
Mahasiswa memahami arsitektur
perangkat lunak yang memisahkan
domain, dan teknik-teknik
implementasinya
[3] Berbagai bahan dari internet

5 Case Studi : ERP system
ERP system
SAP products overview
Mahasiswa memahami arsitektur
umum sistem ERP, contohnya pada
SAP, dan dapat mendefinisikan
Bahan-bahan dari SAP

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 52 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
modul-modul spesifik domain dalam
sebuag ERP
6
Domain Driven
Development
Methodology, examples,
Case study
Mahasiswa memahami pendekatan
DDD dan mampu memraktekkan
metodologi untuk kasus kecil
Bahan-bahan dari Internet

7
FODA, Software Factory
and SPL
Methodology, examples,
case study
Mahasiswa memahami pendekatan
FODA, SF, SPL dan mampu
memraktekkan metodologi untuk
kasus kecil
[5], [6], [7]
8 UTS
9
Domain Specific Modeling
and DSL
Definition, notation, tools
Case Study
Mahasiswa memahami pemodelan
dan pemrosesan data dengan
pendekatan DSL
[8], [9]
10 Project DSL Define, implement
Mahasiswa mampu membuat suatu
product family dengan
menggunakan DSL

11
Project Perangkat Lunak
dengan domain tertentu
Domain Requirement
Mahasiswa mampu
mengembangkan perangkat lunak
domain spesifik dengan
menggunakan metodologi, teknik,
tools yang sudah dipelajarinya, dan
membuat dokumentasinya

12 Analysis & Design
13 Impementation
14 Implementation & testing
15 Sharing domain expert
Dipilih untuk bidang yang
“sarat informatik”,
misalnya aeronautics,
geology, meteorology,
telecommunication,
bioinformatics, ...
Mahasiswa mendapat pengetahuan
dari domain expert (penceramah dari
pihak luar)

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 53 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mata Kuliah Pilihan Prodi

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 54 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Kriptografi
Kode Matakuliah: IF4020 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan
Nama Matakuliah
Kriptografi
Cryptography
Silabus Ringkas
Pengantar, serangan pada kriptografi, algoritma kriptografi klasik, kriptanalisis, stream cipher dan block cipher,
sistem kriptografi kunci-publik, fungsi hash dan MAC, tanda tangan digital, protokol kriptografi, infrastruktur kunci
publik, manajemen kunci, steganografi dan watermarking, kriptografi visual.
Introduction, attacks to cryptography, classical cryptography algorithms, cryptanalysis, stream ciphers and block
ciphers, public-key cryptography system, hash function and MAC, digital signature, cryptography protocols,
public-key infrastructure (PKI), key management, steganography and watermarking, visual cryptografphy.

Silabus Lengkap
1. Pengantar kriptografi
2. Serangan (attack) pada kriptografi
3. Landasan matematika untuk kriptografi
4. Algoritma kriptografi klasik (Caesar cipher, Vigenere, Playfair, dll)
5. Kriptanalisis dengan teknik analisis frekuensi
6. Algoritma kriptografi modern
7. Stream cipher dan block cipher.
8. Beberapa algoritma cipher blok (DES, TDES, GOST, RC5, AES)
9. Beberapa algoritma stream blok (RC4, A5)
10. Kriptografi kunci publik
11. Algoritma-algoritma kriptografi kunci-publik (RSA, ElGamal, Diffie-Hellman, Knapsack).
12. Pembangkit bilangan acak.
13. Fungsi hash dan MAC
14. Tanda-tangan digital (digital signature)
15. Protokol kriptografi
16. Public Key Infrastructure (PKI)
17. Manajemen kunci
18. Kriptografi dalam kehidupan sehari-hari
19. Steganografi dan watermarking
20. Kriptografi visual.

1. Introduction to cryptography.
2. Attacks to cryptography.
3. Mathematical foundation for cryptography.
4. Classical cryprography (Caesar cipher, Vigenere, Playfair, etc.)
5. Cryptanalysis using frequemcy analysis.
6. Modern cryptography.
7. Stream cipher and block cipher.
8. Some block ciphers (DES, TDES, GOST, RC5, AES)
9. Some stream ciphers (RC4, A5)
10. Public-key cryptography.
11. Some public-key algorithms (RSA, ElGamal, Diffie-Hellman, Knapsack).
12. Random generator.
13. Hash function and MAC
14. Digital signature
15. Crptography protocols
16. Public Key Infrastructure (PKI)
17. Key management.
18. Cryptography in daily life.
19. Steganography and watermarking
20. Visual cryptography.

Luaran (Outcomes)
Mahasiswa diharapkan mampu:
1. Memilih teknik yang sesuai untuk mengamankan pesan, baik pesan yang dikirim maupun pesan tersimpan
(arsip).
2. Membuat program aplikasi untuk tujuan keamanan pesan.

Matakuliah Terkait
1. IF2091 Matematika Diskrit Pre-requisite
2. IF2031 Algoritma dan Struktur Data Co-requisite
Kegiatan Penunjang
Pustaka
1. Bruce Schneier, Aplied Cryptography 2
nd
, John Wiley & Sons, 1996.
2. Alfred Menezes dan Paul C van Oorschot, dan Scott A. Vanstone, Handbook of Applied Cryptography, CRC
Press, 1996
3. William Stalling, Cryptography and Network Security, Principle and Practice 3
rd
Edition, Pearson Education,
Inc., 2003.
4. Rinaldi Munir, Diktat kuliah IF5054 Kriptografi, Teknik Informatika ITB
Panduan Penilaian
Tugas Kecil 20%
Tugas Besar 35%
Makalah 1 (pengganti UTS) 20%
Makalah 1 (pengganti UAS) 20%
Kehadiran 5%
Catatan Tambahan

Mg Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 55 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

#
1 1. Pengantar kriptografi.
2. Serangan terhadap
kriptografi.
3. Berita-berita mengenai
keamanan data dan
informasi
1. Definisi dan goal
kriptografi
2. Sejarah kriptografi
3. Jenis-jenis serangan
4. Berita aktual tentang
keamanan data dan
informasi.
1. Mahasiswa mengerti
tujuan kriptografi dan sejarah
perkembangannya
2. Mahasiswa memahami
jenis-jenis serangan pada
kriptografi.
1, 2, 3, 4
2 1. Landasan matematika
untuk kriptografi.
2. Algoritma kriptografi
klasik
1. Dasar-dasar
matematika yang
diperlukan untuk
kriptografi.
2. Cipher substitusi
dan cipher
transposisi.
3. Algoritma
kriptografi klasik:
Caesar Cipher,
Vigenere Cipher.
1. Mahasiswa memahami dasar-
dasar matematika yang
diperlukan untuk kriptografi.
2. Mahasiswa memahami konsep
dasar kriptografi klasik dan
beberapa algoritmanya.

1, 2,3, 4
3 1. Algoritma kriptografi
klasik (bag 2).
2. Kriptanalisis dengan
teknik analisis
frekuensi.
3. Cipher yang tidak dapat
dipecahkan.

1. Algoritma
kriptografi klasik
(lanjutan): Playfair
cipher, Enigma
cipher, Hill Cipher,
dll.
2. Mencari kunci
enkripsi dengan
teknik analisis
frekuensi.
3. One-time pad.
1. Mahasiswa memahami
beberapa algorita kriptografi
klasik.
2. Mahasiswa dapat memecahkan
cipher substitusi sederhana
dengan teknik analisis
frekeunsi.
3. Mahasiswa memahami syarat
cipher yang sempurna aman.

1, 2, 3, 4
4 1. Steganografi.
2. Watermarking.
1. Konsep steganografi
dan algoritma
steganografi pada
gambar.
2. Watermarking dan
aplikasinya.
1. Mahasiswa memahami teknik
penyembunyian pesan dengan
steganografi.
2. Mahasiswa memahami
perbedaan kriptografi dan
steganografi.
3. Mahaiswa memahami
watermarking sebagai aplikasi
steganografi.

1, 2, 3, 4
5 Algoritma kriptografi
modern.
1. Konsep kriptografi
modern.
2. Block cipher dan
stream cipher.
3. Mode operasi block
cipher.
4. Prinsip perancangan
block cipher

1. Mahasiswa memahami
perbedaan krptografi klasik dan
modern.
2. Mahasiswa memahami dua tipe
kriptografi simetri (block dan
stream cipher)
3. Mahasiswa memahami mode
operasi block cipher (ECB,
CBC, CFB, OFB).
4. Mahsiswa mempau emrancang
algoritma block cipher baru dan
mengimplementasikannya.


1, 2, 3, 4
6 Beberapa algoritma
kriptografi simetri (block
cipher)
1. DES
2. GOST
3. 3-DES
4. AES
5. RC5
Mahasiswa memahami beberapa
algoritma kriptografi simetri dari
tipe block cipher.

1, 2, 3, 4
7 1. Beberapa algoritma
kriptografi simetri
(stream cipher).
2. Kriptografi visual.
1. RC4
2. A5
3. Kriptografi visual. 1. Mahasiswa memahami beberapa
algoritma kriptografi simetri dari
tipe stream cipher.
2. Mahasiswa memahami konsep
kriptografi visual dan
aplikasinya.

1, 2, 3, 4
8 UTS
9 Kriptografi kunci-publik
(nirsimetri)
1. Konsep dan sejarah
kriptografi kunci-
publik.
2. Aplikasi kriptografi
kunci publik.
3. Algoritma RSA.
1. Mahasiswa memahami konsep
kriptografi kunci-publik,
sejarah, dan aplikasinya.
2. Mahasiswa memahami
algoritma. RSA
9
10 Kriptografi kunci-publik
(lanjutan)
1. Algoritam ElGamal
2. Algoruma Knapsack
3. Algoritma Diffie-
Hellman.
Mahasiswa memahami algoritma
ElGamal, knapsack, dan Diffie-
Hellman

10
11 Fungsi hash dan MAC 1. Fungsi hash satu-
arah
2. Aplikasi fungsi
hash.
3. Algorima MD5
1. Mahasiswa memahami konsep
fungsi hash satu arah dan
aplikasinya.
2. Mahasiswa memahami funsgi
hash MD5 dan SHA
11

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 56 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

4. Algoritma SHA
5. MAC
3. Mahasiswa memahami MAC
dan aplikasinya.
12 Tanda tangan digital 1. Konsep tanda-
tangan digital.
2. Penandatanganan
dengan cara
mengenkripsi pesan
3. Penandatanganan
dengan
mengguankan fungsi
hash.
4. Algoritma DSA
(Digital Signature
Algorithm).

1. Mahasiswa memahami konsep
tanda tangan digital
2. Mahasiswa memahami teknil
menandatangi pesan.
3. Mahasiswa mampu membuat
program aplikasi tandatangan
digital.

12
13 1. Pembangkit bilangan
acak
2. Protokol kriptografi
1. LCG
2. CSPRNG
3. Blum Blum Shut
4. Protokol kriptografi


1. Mahasiswa memahami
algoritma pembangkitan
bilangan acak.
2. Mahasiswa memahami protokol
kriptografi.

13
14 1. Infrastruktur kunci
publik (PKI)
2. Manajemen kunci
1. Sertifikat digital
2. X.509
3. PKI
4. Microsoft
authentication code
5. Manajemen kunci.
1. Mahasiswa memahami
infrastruktur yang diperlukan di
dalam sistem kritptografi kunci
publik.
2. Manajemen kunci.
14
15 Kriptografi dalam kehidupan
sehari-hari.

1. Kartu cerdas (smart
card)
2. ATM
3. Pay TV
4. Telefon seluler
(GSM)
5. E-commerce
dan SSL
6. PGP

Mahasiswa mengetahui aplikasi
kriptografi dalam kehidupan sehari-
hari

15

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 57 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pemodelan dan Simulasi
Kode Matakuliah: IF4021 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan
Nama Matakuliah
Pemodelan dan Simulasi
Simulation Modelling
Silabus Ringkas
Konsep model dan simulasi, jenis-jenis simulasi meliputi simulasi kejadian diskrit dan simulasi kejadian kontinu,
tinjauan probabilitas dan statistik, pembangkit bilangan random dan variabel random, penggunaan simulasi antrian
seperti pada sistem operasi komputer, pemodelan dengan bahasa simulasi CSMP, GPSS dan Dynamo
Concept of model and simulation, simulation types including discrete and continuous simulation, point of view of
probability and statistic, random number generator and random variable, queue simulation usage such as in
computer operating system, modelling with simulation language CSMP, GPSS and Dynamo
Silabus Lengkap
Konsep model dan simulasi, jenis-jenis simulasi meliputi simulasi kejadian diskrit dan simulasi kejadian kontinu,
tinjauan probabilitas dan statistik, pembangkit bilangan random dan variabel random, penggunaan simulasi antrian
seperti pada sistem operasi komputer, pemodelan dengan bahasa simulasi CSMP, GPSS dan Dynamo
Concept of model and simulation, simulation types including discrete and continuous simulation, point of view of
probability and statistic, random number generator and random variable, queue simulation usage such as in
computer operating system, modelling with simulation language CSMP, GPSS and Dynamo
Luaran (Outcomes)
Pada kuliah ini, akan diberikan pemahaman teori dan praktis mekanisme simulasi kejadian diskrit dan kontinu
serta analisis hasil simulasi.
Matakuliah Terkait
1. Probabilitas dan Statistik Prerequisit
2. Struktur Data Prerequisit
Kegiatan Penunjang
Pustaka
1. Law, Kelton; Simulation Modeling and Analysis 3
rd
edition, McGraw-Hill, 2000
2. Watson, Black: Computer Simulation, Wiley, 1989


Panduan Penilaian
UTS = 40 % UAS = 40 % Tugas = 20 %
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Konsep model dan simulasi
- Definisi model,
simulasi, sistem.
- Klasifikasi model.
- Solusi analitik dan
solusi simulasi.
- Langkah-langkah
membuat simulasi
sistem

2 Tinjauan probabilitas dan
statistik
Besaran statistik deskripsi,
distribusi-distribusi diskrit
pada simulasi

3 Tinjauan probabilitas dan
statistik
Distribusi-distribusi
kontinu pada simulasi dan
uji tes hipotesa, statistik
inferensi

4 Simulasi sistem kejadian
diskrit
Simulasi antrian M/M/1
5 Simulasi sistem kejadian
diskrit
Simulasi antrian +
jockeying, simulasi sistem
telepon

6 Simulasi sistem kejadian
diskrit
Simulasi antrian: time
shared computer , jobshop

7 Simulasi sistem kejadian
diskrit
Studi kasus simulasi
antrian

8 UTS -
9 Simulasi sistem kejadian
diskrit
Simulasi Monte Carlo
10 Pembangkit bilangan
random
Algoritma- algoritma
pembangkit bilangan
random

11 Pembangkit variabel random Algoritma tranformasi
invers, konvolusi,
acceptance rejection

12 Simulasi sistem kejadian
kontinu
Simulasi sistem kejadian
kontinu

13 Bahasa simulasi CSMP, GPSS
14 Bahasa simulasi Dynamo
15 Simulasi sistem kejadian
kontinu
Studi kasus simulasi sistem
kejadian kontinu dan
bahasa simulasi

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 58 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.


Ilmu dan Rekayasa Komputasi Lanjut
Kode Matakuliah: IF4022 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan
Nama Matakuliah
Ilmu dan Rekayasa Komputasi Lanjut
Advanced Computational Science and Engineering
Silabus Ringkas
Mata kuliah ini menawarkan topik-topik lanjutan dalam bidang ilmu dan rekayasa komputasi untuk memperkaya wawasan mahasiswa yang meminati bidang
sains komputer. Setiap tahun topik yang diberikan bisa berbeda-beda
bergantung pada isu yang hangat dan menarik saat itu.
This course offers advance topics of computational science and engineering
in order to enrich the knowledge of students who are inetrested with
computer science. Every year the given topic may vary depending on the hot
and interesting issues at the time.
Silabus Lengkap
Untuk tahun pertama, dua topik yang diberikan adalah metode numerik dan logika fuzzy. Metode Numerik: Pengantar Metode Numerik, Deret Taylor dan Analisis Galat,
Solusi Persamaan Nirlanjar, Bahasa FORTRAN dan compiler-nya (GNU FORTRAN
77), Solusi Sistem Persamaan Lanjar, Interpolasi polinom, Regresi,
Integrasi numerik, Turunan numerik.
Logika Fuzzy: Pengantar Logika Fuzzy, Himpunan Fuzzy, Relasi Fuzzy, Aturan
Logika Fuzzy, Sistem Inferensi Fuzzy, Fuzzy dengan MATLAB.
For the first time, two topics given area numerical methods and fuzzy logic.
Numerical Methods: Introduction to numerical methods, Taylor Series and
Error Analysis, Solution of Nonliner Equations, FORTRAN Language and
Compiler (GNU FORTRAN 77), Solution of Linear Equation System, Polinom
Interpolation, Regression, Numerical Integration, Numerical Derivative.
Fuzzy Logic: Introduction to fuzzy logic, Fuzzy set, Fuzzy Relation, Fuzzy
Logic Rules, Fuzzy Inference System, Fuzzy using MATLAB.
Luaran (Outcomes)
1. Mahasiswa mengenal dan memahami topik-topik lanjutan dalam bidang Ilmu
dan Rekayasa Komputasi.
2. Mahasiswa mampu menyelesaikan persoalan terkait topik yang dibahas.
3. Mahasiswa mampu membuat program aplikasi untuk menyelesaikan persoalan
terkait topik yang dibahas dengan menggunakan bahasa dna kakas yang spesifik.
4. Mahasiswa mampu membuat sebuah makalah yang membahas topik yang dipilih.
Matakuliah Terkait
Matematika Diskrit Prasyarat
Logika Informatika Prasyarat
Probabilitas Statistika Prasyarat
Kegiatan Penunjang
Pustaka




Panduan Penilaian
UTS = 40 %
UAS = 40 %
Tugas = 20 %
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Pengantar Metode Numerik,
Analisis Galat, dan
Bahasa FORTRAN.
Metode numerik vs metode
analitik.
Deret Taylor
Konsep galat dan
sumber-sumbernya.
Operasi bilangan
titik-kambang.
Ketidakstabilan
Ill-conditioning
Penegnalan Bahasa
FORTRAN
Mahasiswa memahami
perbedaan perhitungan
secara analitik dan
secara numerik.
Mahasiswa memahami
penyebab galat dalam numerik.
Mahasiswa dapat membuat
program sederhana dengan
Bahasa FORTRAN
K
2
Solusi Persamaan Nirlanjar Persoalan mencari akar
persamaan.
Metode Tertutup: metode
bagidua dan metode regula
falsi.
Metode Terbuka: metode
lelaran sederhana,
Newton-Raphson, metode
secant.
Sistem persaman nirlanjar.
Mahasiswa memahami
metode-metode numerik
untuk mencari solusi f(x)
= 0.
Mahasiswa dapat membuat
program perhitungan
mencari akar persamaan
nirlanjar dan sistem
persamaan nirlanjar.
K
3
Solusi Sistem Persamaan
Lanjar
Metode eliminasi Gauss
Metode Eliminasi
Gauss-Jordan.
Metode matriks balikan.
Metode eliminasi Gauss
Mahasiswa memahami
metode-metode numerik
untuk mencari solusi
sistem persamaan lanjar.
Mahasiswa dapat membuat

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 59 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Metode Eliminasi
Gauss-Jordan.
Metode dekomposisi LU.
program perhitungan
mencari solusi sistem
persamaan lanjar.
4
Solusi Sistem Persamaan
Lanjar
Determinan matriks.
Kondisi buruk pada sistem
persamaan lanjar
Metode lelaran untuk
menyelesaikan sistem
persamaan lanjar: lelaran
Jacobi dan lelaran Seidel.
Mahasiswa memahami
metode-metode numerik
untuk mencari solusi
sistem persamaan lanjar.
Mahasiswa dapat membuat
program perhitungan
mencari solusi sistem
persamaan lanjar.

5
Interpolasi Polinom Interpolasi lanjar,
kuadratik, dan kubik.
Polinom interpoalsi
Lagrange.
Polinom interpolasi
Newton.
Polinom interpolasi
Newton-Gregory.
Mahasiswa memahami
metode-metode hampiran
untuk menginterpolasi
fungsi sembarang dengan
polinom.
Mahasiswa dapat membuat
program interpolasi
dengan polinom..

6
Regresi Regresi linier
Pelanjaran
Mahasiswa memahami
metode-metode hampiran
untuk mengestimasi
sekumpulan data dengan
fungsi regresi.

7
Integrasi Numerik Metode pias: aturan
segiempat, aturan
trapesium, aturan
titik-tengah.
Metode Newton-Cotes:
aturan trapesium, aturan
Simpson 1/3 dan 3/8
Kuadratur Gauss.
Mahasiswa memahami
metode-metode hampiran
untuk menghitung
integral-tentu.
Mahasiswa dapat membuat
program untuk menghitung
integral-tentu.

8 UTS
9
Solusi Persamaan
Diferensial Biasa
Metode Euler
Metode Heun
Metode Runge-Kutta
Metode Predictor-
Corrector.
Sistem Persamaan
Diferensial.
Mahasiswa memahami
metode-metode hampiran
untuk menghitung solusi
PDB dengan nilai awal.
Mahasiswa dapat membuat
program untuk menghitung
solusi PDB.

10
Turunan Numerik Tiga pendekatan dalam
menghitung turunan
numerik.
Ekstrapolasi Richardson.
Orde Galat
Aplikasi turunan numerik
Mahasiswa memahami
metode-metode hampiran
untuk menghitung
derivatif fungsi.
Mahasiswa dapat membuat
program untuk menghitung
derivatif.

11
Pengantar Logika Fuzzy Sejarah logika fuzzy.
Mengapa menggunakan
logika fuzzy dan untuk
apa.
Mahasiswa memahami maksud
dan tujuan penggunaan
logika fuzzy.

12
Himpunan dan Relasi Fuzzy Perbedaan Crisp Set dan
Fuzzy Set.
Fungsi karakteristik.
Fungsi keanggotaan.
Relasi fuzzy
Mahasiswa memahami
perbedaan himpunan tegas
dan himpunan fuzzy.
Mahasiswa memahami cara
merepresentasikan
himpunan fuzzy.
Mahasiswa memahami konsep
relasi fuzzy dan
operasi-operasinya.

13
Aturan Logika Fuzzy Variabel lingusitik
Predikat fuzzy
Kaidah fuzzy
Fuzzifikasi, operasi
logika fuzzy, dan
implikasi.
Mahasiswa memahami
interpretasi kaidah fuzzy.

14
Sistem Inferensi Fuzzy Proses-proses di dalam
Sistem Inferensi Fuzzy.
Metode Mamdani
Metode Sugeno
Mahasiswa memahami
proses-proses di dalam SIF.

15
Logika Fuzzy dengan
MATLAB
Mahasiswa mampu
menggunakan MATLAB
toolbox untuk logika fuzzy.

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 60 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Jaringan Komputer Lanjut
Kode Matakuliah: IF4030 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan Prodi

Nama Matakuliah
Jaringan Komputer Lanjut
Advanced Computer Networks
Silabus Ringkas
Pembahasan lanjut mengenai aspek-aspek penting dari jaringan komputer. Kuliah ini mengulas ulang layanan
infrastruktur dan protokol jaringan, khususnya yang terkait dengan masalah performansi dan penanganan
congestion pada jaringan. Penekanan khusus diberikan pada arsitektur QoS pada Internet, implementasi protokol
jaringan pada router dan host, keamanan jaringan
Advanced on important aspect of computer network. This course discusses infrastructure service and network
protocol, especially related with performance problem and congestion handling on network. Special discussion on
QoS architecture on Internet, network protocol implementation on router and host, network security
Silabus Lengkap
Review TCP/IP
Arsitektur QoS Internet: integrated services, differentiated services, MPLS
Traffic & bandwidth management
Firewall & NAT
Protokol routing: border gateway protocols
Implementasi protokol jaringan pada sistem Linux
Sekuriti dan Teknologi Pengamanan Jaringan: sniffing, penetration testing, spoofing, man in the middle attack,
intrusion detection
Review TCP/IP
Arsitektur QoS Internet: integrated services, differentiated services, MPLS
Traffic & bandwidth management
Firewall & NAT
Protokol routing: border gateway protocols
Implementasi protokol jaringan pada sistem Linux
Sekuriti dan Teknologi Pengamanan Jaringan: sniffing, penetration testing, spoofing, man in the middle attack,
intrusion detection
Luaran (Outcomes)
memahami prinsip dasar kerja protokol yang digunakan pada Internet
memahami rasional desain protokol yang digunakan pada Internet
memahami aspek performansi dan penanganan kemacetan pada protokol TCP/IP
memahami arsitektur umum untuk menyediakan QoS pada Internet serta trend perkembangannya
memahami arsitektur dan cara kerja implementasi protokol pada router dan host, khususnya pada sistem operasi
Linux
mengembangkan implementasi protokol/aplikasi jaringan baru pada sistem berbasis Linux
memahami teknik-teknik serangan pada jaringan, kakas yang digunakan dan bagaimana mengatasinya

Matakuliah Terkait
Jaringan Komputer Prasyarat

Kegiatan Penunjang
Pustaka
1. Computer Networks: A Systems Approach (3rd Edition) by Larry Peterson and Bruce Davie. Morgan
Kaufmann, 2003.
2. TCP/IP Illustrated, Volume 1 by W. Richard Stevens. Addison-Wesley
3. Braun, T. End-to-End Quality of Service Over Heterogeneous Networks Springer, 2008
Panduan Penilaian UTS 30%, UAS 30%, Tugas 40%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Intro kuliah
2 Review TCP/IP IP & ARP
3 Review TCP/IP
TCP congestion
management

4
Routing: Border gateway
protocol

5 Quality of Service Integrated Services
6 Quality of Service Differentiated Services
7 Quality of Service MPLS
8 UTS
9 Netfilter, IPTables dan NAT
10 Linux Traffic Controller
11 Linux Networking Internal Architecture
12 Linux Networking Internal L2& L3 implementation
13 Linux Networking Internal L4 implementation
14 Network Security Tools
15 Review

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 61 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pengembangan Aplikasi Terdistribusi
Kode Matakuliah: IF4031 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan Prodi
Pilihan
Nama Matakuliah
Pengembangan Aplikasi Terdistribusi
Development of Distributed Application
Silabus Ringkas
Prinsip dasar pada perancangan dan implementasi program yang berjalan pada dua atau lebih system computer
yang terhubung, arsitektur aplikasi terdistribusi, kakas dan framework untuk mengembangkan aplikasi terdistribusi
fundamental principles common to the design and implementation of programs that run on two or more
interconnected computer systems. Distributed application architectures. Tools and frameworks for developing
distributed applications.
Silabus Lengkap
Distributed computing: forms of computing, OS & language supports
Architecture of distributed computing: message based, RPC, bus, peer to peer, distributed objects, service oriented
Interprocess communications: event synchronization, socket, mode
Client-server paradigm
Design of high performance server
Group communications
Distributed objects
Message queue based paradigm
Peer to peer applications
Distributed computing: forms of computing, OS & language supports
Architecture of distributed computing: message based, RPC, bus, peer to peer, distributed objects, service oriented
Interprocess communications: event synchronization, socket, mode
Client-server paradigm
Design of high performance server
Group communications
Distributed objects
Message queue based paradigm
Peer to peer applications
Luaran (Outcomes)
apply problem solving (analysis, design, and development) skills to distributed applications
able to identify and decompose complex systems into its components parts
able to integrate OS and programming language concepts to solve/implement the (distributed) components of the
systems
able to develop suites of networking protocols for implementing the communicating components
able to evaluate or validate their implementations via simulations and/or realistic projects
Matakuliah Terkait
Parallel & distributed systems Prasyarat

Kegiatan Penunjang
Pustaka
Distributed Computing: Principles and Applications, M. L. Liu, Pearson/Addison-Wesley, ISBN: 0-201-79644-9


Panduan Penilaian
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Distributed computing:
forms of computing, OS &
language supports

2
Architecture of distributed
computing

3
Interprocess
communications

4
Design pattern for
distributed applications

5
Client-server paradigm


6 Stateless server design
7
Design of high performance
server


8 UTS
9 Group communication
10 Distributed objects CORBA
11 Distributed objects Java Enterprise
12
Message queue based
paradigm

13 Peer-to-peer applications Overlay networks
14 Peer-to-peer applications Query/search processing
15 Review

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 62 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.


Kode Matakuliah: IF4032 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan Prodi
Nama Matakuliah
Sistem Multimedia
Multimedia Systems
Silabus Ringkas
Konsep dasar multimedia termasuk modalities (text, sound, image, animation dan video), sensor dan camera, video
encoding, streaming video dan audio, multimedia container, interaksi user, pemrograman multimedia
Basic concept of multimedia including its modalities (text, sound, image, animation and video), sensor and camera,
video encoding, video and audio streaming, multimedia container, user interaction, multimedia programming
Silabus Lengkap
Pengenalan Multimedia
Konsep dasar Text
Konsep dasar Sound
Konsep dasar Image, Graphic, & Animation
Sensor, Camera, & Graphic Adapter
Video Encoding
Video and Audio Streaming
Multimedia Container
Interaksi user
Pemrograman Multimedia pada Framework aplikasi Android
Introduction to Multimedia
Basic Concept of Text
Basic Concept of Sound
Basic Concept of Image, Graphic, & Animation
Sensor, Camera, & Graphic Adapter
Video Encoding
Video and Audio Streaming
Multimedia Container
User Interaction
Multimedia Programming in Android Application Framework
Luaran (Outcomes)
To introduce and familiarize students with multimedia basic concept including its modalities and the techniques of
multimedia modality manipulation in order to enable students to develop computer program using multimedia
Matakuliah Terkait
Grafika Komputer Prasyarat
Sistem Operasi Prasyarat
Pengembangan Aplikasi Platform
Khusus
Prasyarat
Interaksi Manusia Komputer Prasyarat
Kegiatan Penunjang
Pustaka
Guojun Lu (1999), "Multimedia Database Management System", Artech House, Inc.,
Ze-Nian Li and Mark S. Drew (2004), "Fundamentals of Multimedia", Prentice Hall

Panduan Penilaian
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Introduction to Multimedia
2 Basic Concept of Text
3 Basic Concept of Sound
4
Basic Concept of Image,
Graphic, & Animation

5
Sensor, Camera, & Graphic
Adapter

6
Sensor, Camera, & Graphic
Adapter

7 Video Encoding
8 UTS
9 Video Encoding
10 Video and Audio Streaming
11 Video and Audio Streaming
12 Multimedia Container
13 User Interaction
14
Multimedia Programming in
Android Application
Framework

15
Multimedia Programming in
Android Application
Framework

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 63 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.


Kode Matakuliah: IF4033 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika dan RPLD
Sifat: Pilihan Prodi
Nama Matakuliah
Keamanan dan Penjaminan Informasi
Information Assurance and Security (IAS)
Silabus Ringkas
Dasar IAS, keamanan jaringan, pengantar kriptografi, manajemen resiko, kebijakan dan pengaturan keamanan,
digital forensics, keamanan pada administrasi sistem and arsitektur, keamanan pd SDLC
Fundamental of IAS, network security, intro to cryptography, risk management, Security policy and governance,
digital forensics, Security Architecture and System Administration, Secure Software Design and Engineering
Silabus Lengkap
Dasar IAS, keamanan jaringan, pengantar kriptografi, manajemen resiko, kebijakan dan pengaturan keamanan,
digital forensics, keamanan pada administrasi sistem and arsitektur, keamanan pd SDLC
Fundamental of IAS, network security, intro to cryptography, risk management, Security policy and governance,
digital forensics, Security Architecture and System Administration, Secure Software Design and Engineering
Luaran (Outcomes)
Matakuliah Terkait
Sistem Operasi Prasyarat
Jaringan Komputer prasyarat
Rekayasa Perangkat Lunak Dasar Prasyarat
Socio-informatics dan Profesionalisme prasyarat
Kegiatan Penunjang
Pustaka
1. Software Security: Building Security In by Gary MacGraw
2. Foundations of Security: What Every Programmer Needs to Know by Neil Daswani, Christoph Kern, and
Anita Kesavan
3. Software Security Engineering: A Guide for Project Managers by Julia H. Allen; Sean Barnum; Robert J.
Ellison; Gary McGraw; Nancy R. Mead
4. Security Engineering: A Guide to Building Dependable Distributed Systems by Ross Anderson
5. Information assurance: security in the information environment by Andrew Blyth & Gerald L. Kovacich

Panduan Penilaian
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Fundamental of IAS
Nature of the Threats
Definition and need for
Information Assurance
basic information assurance
concept that should be
recognized (confidentiality,
integrity, availability)
legal, ethical, social issue
threats and vulnerability
motivation of attackers

2 Fundamental of IAS
Industry, government and
cultural guidelines,
standards, and differences
protection mechanisms
incident response

3 Network security
Network attach type
including denial of service,
flooding, sniffing and
traffing redirection and
message integrity attack
use of cryptography for
network security
protection mechanism for
communications protocol
defense
mechanism/countermeasure
network auditing

4 Cryptography
Basic cryptography
terminology, cipher types,
mathematical preliminaries,
cryptography primitives,
cryptanalysis, treatment of
common protocol, public
key infrastructure

5 Risk management
Risk acceptance, risk
aversion for organization,
cost/benefit analysis, asset
management, continuity
planning, disaster recovery,
security auditing

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 64 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

6
Security policy and
governance
Standards and best
practices for organizational
security policies
strategies for creating
security policies

7
Security policy and
governance
compliance and
enforcement of policies,
standards, regulations and
laws
formal models
policy related to risk
aversion

8 UTS
9 Digital Forensics
Basic principles and
methodologies for digital
forensics
rules of evidence – general
concept and differences
between jurisdictions and
chain of custody
search and seizue of
evidence
digital evidence method
and standard
technique and standard for
preservation of data
legal and reporting issues
including working as an
expert witness

10 Digital Forensics
OS/File system forensics
Application forensics

11 Digital Forensics
Network forensics
Mobile Device forensics
Computer/network/system
attack

12
Security Architecture and
System Administration
Consideration for
architecting a secure
computing system
Access Control Basic
Principles
Physical and information
system access control
Usability of system

13
Security Architecture and
System Administration
Analyzing and identifying
threats and vulnerability
multi-level/multi-lateral
security
supervisory control and
data acquisition

14
Secure Software Design and
Engineering
Building security into
SDLC
Secure design principles
and patterns
secure software
specification and
requirements

15
Secure Software Design and
Engineering
Secure coding techniques
to minimize vulnerability
in code
Secure testing

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 65 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pemodelan Data Lanjut
Kode Matakuliah:
IF4040
Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Pilihan Prodi
Nama Matakuliah
Pemodelan Data Lanjut
Advanced Data Modelling
Silabus Ringkas
Mata kuliah ini memberikan wawasan dan pengetahuan mengenai pemodelan data tingkat lanjut, seperti
penambahan aspek waktu dan ruang di dalam basis data, penggunaan aturan untuk mendapatkan fakta baru dari
basis data, maupun pemodelan data non relasional.
This course provides insight and knowledge on advance data modeling, such as including time or space aspect to
the data model, the use of rules to deduce new facts from the database, and data modeling using non-relational
approach.
Silabus Lengkap
Materi yang diberikan pada kuliah ini merupakan wawasan dan pengetahuan mengenai pemodelan data tingkat
lanjut. Perluasan pemodelan ini dapat dilakukan berdasarkan sejumlah pendekatan, yaitu: menambahkan sejumlah
aspek semantik ke dalam basis data, misalnya aspek semantik waktu dan ruang; memperkenalkan model
pendefinisian fakta yang baru berdasarkan fakta yang tersimpan di basis data, misalnya dengan menggunakan rule
dalam pembangkitan fakta; memperkenalkan suatu pendekatan model data yang bukan relasional; maupun
memperkenalkan pendekatan baru dalam melakukan pemodelan data.
The topics covered in this course provides insight and knowledge on advance data modeling. The extension to the
common data modeling is done through several approaches, i.e. including new aspects or semantics to the database,
e.g. time or space aspects; introducing new ways to define new facts from the data stored in the database, e.g. by
using rules to deduce new facts; introducing a non-relational data model; and introducing a new approach in data
modeling process.
Luaran (Outcomes)
- Mahasiswa memiliki pemahaman terhadap setiap topik yang diberikan
- Mahasiswa mampu melakukan eksplorasi lebih lanjut untuk menerapkan masing-masing topik apa bila diperlukan
Matakuliah Terkait
Basis Data Prasyarat

Kegiatan Penunjang Praktikum untuk penerapan topik yang dipelajari pada suatu kasus.
Pustaka
A. Silberschatz, H.F. Korth, S. Sudarshan, ‘Database System Concepts’, McGraw-Hill (Pustaka Utama)
C.J. Date, ‘An Introduction to Database System’, Addison Wesley (Pendukung)


Panduan Penilaian
Ujian Tengah Semester, 25%
Ujian Akhir Semester, 30%
Tugas Besar Berkelompok dan Praktikum, 30%
Kuis 15%
Catatan Tambahan
Topik yang diberikan di dalam mata kuliah ini dapat bervariasi untuk setiap semesternya, tergantung pada trend
pemodelan basis data yang ada dan terkini. Oleh sebab itu, SAP mata kuliah akan sangat bervariasi, bergantung
kepada topik apa yang sedang dibahas pada saat pelaksanaannya.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Pendahuluan dan
Kelemahan Sistem
Relasional
- Pendahuluan
- Kelemahan Sistem
Relasional
-
2 Sistem Basis Data Temporal
- Latar belakang
kebutuhan
- Terminologi
- Dimensi waktu
-
3 Sistem Basis Data Temporal
- Taksonomi relasi
- Model data temporal
-
4 Sistem Basis Data Temporal
- Operator aljabar
temporal
- Query temporal
-
5 Sistem Basis Data Temporal
- Perancangan Basis Data
- FDs dan Normalisasi
- Integrity Constraints
- Arsitektur TDBMS
-
6 Object-Relational Database
- Latar belakang
kebutuhan
- Pendekatan objek pada
basis data relasional
-
7 Object-Relational Database
- Latar belakang
kebutuhan
- Object data model
-
8 UTS
9 Object-Relational Database
- Relationships
- ODMS architecture
-
10 Object-Relational Database
- Query and programming
architecture
-
11 Deductive Database
- Latar belakang
kebutuhan
- Basis data vs basis
pengetahuan, datalog vs
prolog
- Model data datalog
-
12 Deductive Database
- Mekanisme inferensi
- Evaluasi query non-
-

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 66 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
recursive
13 Deductive Database - Evaluasi query recursive -
14 Multimedia Database - -
15 Multimedia Database - -

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 67 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Teknologi Basis Data
Kode Matakuliah:
IF4041
Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Pilihan Prodi
Nama Matakuliah
Teknologi Basis Data
Database Technology
Silabus Ringkas
Mata kuliah ini memberikan wawasan dan pengetahuan mengenai pemafaatan lebih lanjut dari data yang tersimpan di dalam basis data,
terutama dalam mendukung business intelligence.
This course provides insight and knowledge on further processing of the data stored in the database, especially in business intelligence.
Silabus Lengkap
Mata kuliah ini memberikan wawasan dan pengetahuan mengenai pemafaatan lebih lanjut dari data yang tersimpan di dalam basis data,
terutama dalam mendukung business intelligence. Materi yang diberikan dapat bervariasi, mulai dari pemanfaatan data warehouse sebagai
sarana untuk pengumpulan data bagi eksekutif, proses analisis terhadap data untuk menghasilkan data pendukung dalam pengambilan
keputusan, pencarian pengetahuan dari data yang ada, hingga pemrosesan terhadap data berukuran besar.
This course provides insight and knowledge on further processing of the data stored in the database, especially in business intelligence. The
topics can be varied, from implementing data warehouse as a way to gather data for the executives, on-line analytical process for decision
support systems, knowledge discovery in database by means of data mining, and processing big data.
Luaran (Outcomes)
- Mahasiswa memiliki pemahaman terhadap setiap topik yang diberikan
- Mahasiswa mampu melakukan eksplorasi lebih lanjut untuk menerapkan masing-masing topik apa bila diperlukan
Matakuliah Terkait
Sistem Basis Data Prasyarat

Kegiatan Penunjang Praktikum untuk penerapan topik yang dipelajari pada suatu kasus.
Pustaka
A. Silberschatz, H.F. Korth, S. Sudarshan, ‘Database System Concepts’, McGraw-Hill (Pustaka Utama)
C.J. Date, ‘An Introduction to Database System’, Addison Wesley (Pendukung)


Panduan Penilaian
Ujian Tengah Semester, 25%
Ujian Akhir Semester, 30%
Tugas Besar Berkelompok dan Praktikum, 30%
Kuis 15%
Catatan Tambahan
Topik yang diberikan di dalam mata kuliah ini dapat bervariasi untuk setiap semesternya, tergantung pada trend
pemanfaatan basis data lebih lanjut untuk mendukung business intelligence. Oleh sebab itu, SAP mata kuliah akan
sangat bervariasi, bergantung kepada topik apa yang sedang dibahas pada saat pelaksanaannya.

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pendahuluan
- Knowledge Discovery in
Data
- Business Intelligence
-
2 Data Warehouse
- Pendahuluan
- Terminologi dalam data
warehouse
-
3 Data Warehouse
- Multidimensional data
model
-
4 Data Warehouse
- Permasalahan-
permasalahan dalam
data warehouse
- Basis data relasional dan
OLAP
-
5 Data Warehouse
- Expiring Data in
Datawarehouse dan
Online View
Maintenance
- Paralelisme Pemrosesan
Data pada Warehouse
-
6 Data Warehouse
- Multidimensional Model
dan Optimasi Query
Datawarehouse
- ETL Process in Data
Warehouse
-
7 Data Warehouse - Data marts -
8 UTS
9 Data Mining
- The usefulness of data
mining
- Data mining algorithms
-
10 Data Mining
- Associative and
sequential patterns
- Closed sequential pattern
mining
- Constraint-based
sequential pattern mining
-
11 Data Mining
- Periodicity in sequential
data
- Graph mining
-
12 Data Mining - Data clustering -
13 Data Mining - Market basket analysis -
14 Data Mining
- Data cleaning
- Data visualization
-

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 68 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
15 Data Mining - Social network analysis -

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 69 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Sistem Temu Balik Informasi
Kode Matakuliah: IF4042 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan
Nama Matakuliah
Sistem Temu Balik Informasi
Information Retrieval System
Silabus Ringkas
Sistem temu-balik informasi, model ruang vector, model probabilistic, umpan-balik, perluasan query, thesaurus,
evaluasi unjuk kerja system, mesin pencarian

Information retrieval system, vector space model, probabilistic model, feed-back, query expansion, thesaurus,
evaluation of system performance, search engine
Silabus Lengkap
Sistem temu-balik informasi, model ruang vector, model probabilistic, umpan-balik, perluasan query, thesaurus,
evaluasi unjuk kerja system, mesin pencarian

Information retrieval system, vector space model, probabilistic model, feed-back, query expansion, thesaurus,
evaluation of system performance, search engine
Luaran (Outcomes)
Pada kuliah ini, akan diberikan Teknik-teknik dan metode yang ada pada sistem temu-balik informasi.

Matakuliah Terkait
Probabilitas dan Statistika Prasyarat
Aljabar Geometri Prasyarat
Kegiatan Penunjang
Pustaka
Gerard Salton, “Introduction to Information Retrieval”, McGraw-Hill, 1999

Panduan Penilaian
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pengantar sistem temu-balik
informasi

2 Model ruang vector
3 Model Probabilistik
4 Model extended-boolean.
5 Latent-Semantic Indexing
6 Model Inference Networks
7 Model algoritma genetika
8 -
9 Model Neural Network
10 Model Fuzzy-set
11 Evaluasi dalam sistem temu-balik
informasi

12 Umpan-balik relevansi
13 Peranan thesaurus dalam
meningkatkan unjuk kerja

14 Pembuatan thesaurus secara otomatis
15 Aplikasi dalam mesin pencarian

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 70 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Sistem Informasi Lanjut
Kode Matakuliah: IF4043 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan Prodi

Nama Matakuliah
Sistem Informasi Lanjut
Advanced Information System
Silabus Ringkas
Mahasiswa memahami peran sistem informasi untuk mendukung kebutuhan organisasi di level non trasaksional
beserta peluang dan risikonya. Mahasiswa memahami berbagai aplikasi pendukung sistem informasi dan mampu
menganalisa permasalahan organisasi hingga dapat mengembangkan solusi menggunakan beragam aplikasi yang
ada. Selain itu, mahasiswa juga memahami tata kelola sistem informasi organisasi.
Students understand the role of information system to support organization need on non transactional level with its
opportunity and risk. Students understand various information systems and be able to analyse organization problem
to develop solution in using various application types. Students understand the management of organization
information system.
Silabus Lengkap
Organization and IS Alignment, Value of Information System, Management Informations System, Decision
Support System, Executive Information System, Intelligent Information System, Mid Test, IT/IS Governance
Framework, Management of Information System, IS Risk Management (Business Continuity, Security and Privacy)
Organization and IS Alignment, Value of Information System, Management Informations System, Decision
Support System, Executive Information System, Intelligent Information System, Mid Test, IT/IS Governance
Framework, Management of Information System, IS Risk Management (Business Continuity, Security and Privacy)
Luaran (Outcomes)
1. Mahasiswa mampu membandingkan berbagai sistem informasi pada organisasi yag dibentuk untuk melayani
level manajemen yang berbdea
2. Mahasiswa mampu menggunakan pengetahuan tersebut untuk menyelesaikan masalah organisasi
3. Mahasiswa dapat mengidentifikasi komponen penalaran non monotonik serta membandingkannya dengan proses
penalaran monotonik
4. Mahasiswa memiliki pengetahuan tentang tata kelola informasi pada organisasi
Matakuliah Terkait
Sistem Informasi Prasyarat

Kegiatan Penunjang -
Pustaka
Laudon, K and Laudon J (2009) . Management Information Systems. (11th Edition). Prentice Hall
O’Brien,J (2008). Management Information System. MGH
Panduan Penilaian UTS 30%, UAS 30%, Tugas 40%
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Organization and IS
Alignment

2
Value of Information
System

3
Management Informations
System

4 Decision Support System
5 Decision Support System
6
Executive Information
System

7
Intelligent Information
System

8 UTS
9
IT/IS Governance
Framework

10
IT/IS Governance
Framework

11
Management of Information
System

12
Management of Information
System

13 IS Risk Management Business Continuity
14 IS Risk Management Security
15 IS Risk Management Privacy

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 71 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pembangunan Perangkat Lunak Berorientasi Service
Kode Matakuliah:
IF4050
Bobot sks:
3 SKS
Semester: 7/8 KK / Unit Penanggung Jawab:
RPLD
Sifat:
PilihanProdi
Nama Matakuliah
Pembangunan Perangkat Lunak Berorientasi Service
Service Oriented Software Development
Silabus Ringkas
Kuliah ini memberikan pemahaman mengenai berbagai aspek terkait pembangunan perangkat lunak berorientasi
service, serta praktek pembangunan perangkat lunak berorientasi service skala kecil
This course provides an understanding of the various aspects related to service-oriented software development, and software development practices of small-scale service-oriented
Silabus Lengkap
Definisi, karakteristik, dan standard terkait service; service provider: perancangan, implementasi, dan publikasi
service; service consumer: memanfaatkan service; platform dan tools; SaaS; metodologi pembangunan P/L
berorientasi service; serta praktek membangun sebuah P/L berskala kecil yang memanfaatkan service yang
dibangun oleh kelompok lainnya
Definition, characteristics, and related service standards; service provider: design, implementation, and publication of services; service consumer: consumes a service; platforms and tools; SaaS; service-oriented software development methodology; case study: building a small scale service-oriented software that composed of
provided services
Luaran (Outcomes)
Setelah lulus kuliah ini, mahasiswa mampu: 1. Memahami tentang “service”, standard, service life cycle, dan pembangunan PL berorientasi service
2. Menggunakan tools dan platform untuk pembangunan P/L berorientasi service
3. Mempraktekkan pembangunan P/L berorientasi service
Matakuliah Terkait
Dasar Rekayasa Perangkat Lunak Prasyarat

Kegiatan Penunjang
Pustaka
Thomas Erl; SOA: Principles of Service Design, Prentice Hall, 2008 (Pustaka Utama)
Ian Sommervillle, Software Engineering, Edisi ke-9, Addison Wesley, 2011

Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil:
- UTS
- UAS
- Tugas Penguasaan Alat Bantu
- Tugas Studi Kasus
Catatan Tambahan

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Fundamental SOA
An overview of key
concepts and terminology
associated with SOA
[Uraikan capaian spesifik topik
dengan merujuk kepada capaian
matakuliah]
[Uraikan rujukan terhadap pustaka
(bab, sub-bab)]
2
Service Oriented
Computing
An overview of key
concepts and terminology
associated with service-
oriented computing and
service-orientation,
including a study of
strategic benefits and
impacts and an overview
of modern SOA
technologies and
innovations.

3
SOA Project Delivery &
Methodology

An overview of the SOA
project delivery lifecycle,
project delivery strategies,
and project roles and
responsibilities, plus a
detailed introduction to the
service-oriented analysis
and service modeling
processes.


4 SOA Technology Concept
A study of the primary
technologies used to build
service-oriented solutions,
with an emphasis on XML
and modern Web-based
services technologies.

5
SOA Analysis & Modeling

A session dedicated to
advanced service-oriented
analysis topics, including
various service modeling
techniques.


6
SOA Analysis & Modeling
Lab

A hands-on lab during
which participants apply
service modeling-related
concepts, processes,
techniques, patterns, and

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 72 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

principles to a set of
complex analysis and
modeling exercises.

7
SOA Design and
Architecture
An exploration of the
service-oriented
architectural model and the
service-orientation design
paradigm, including in-
depth coverage of service
compositions and runtime
service roles.

8 U T S
9
SOA Design & Architecture
Lab

A hands-on lab during
which participants apply
the patterns, models,
concepts, techniques, and
principles covered in
previous courses in order
to complete a series of
architectural and service
design exercises.


10
Web-Based Service
Technology (1)

A range of specialized
topics pertaining to REST
service design and
technology, WS-Policy
definitions and
attachments, and cloud
computing utilization
models for cloud-based
services.

11
Web-Based Service
Technology (2)

12
Service Development with
Java (1)
Topics focused on the
application of SOA design
patterns and service-
orientation principles to
distributed Java
technologies and standards
for the development of
services, with an emphasis
on Web service and REST
service technologies.


13
Service Development with
Java (2)

14
Fundamental SOA
Governance
A course that introduces
fundamental SOA
governance models,
frameworks, concepts, and
processes and further
defines precepts and roles.


15 U A S

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 73 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Rekayasa Perangkat Lunak Berbasis Komponen
Kode Matakuliah:
IF4051
Bobot sks:
3 SKS
Semester: 7/8 KK / Unit Penanggung Jawab:
RPLD
Sifat:
Pilihan Prodi
Nama Matakuliah
Rekayasa Perangkat Lunak Berbasis Komponen
Component Based Software Engineering
Silabus Ringkas
Kuliah ini memberikan pengetahuan tentang konsep dasar komponen dan pembangunan perangkat lunak berbasis
komponen, serta memberikan praktek pembangunan perangkat lunak skala sedang berbasis komponen
This course provides knowledge of the basic concepts of components and component-based software development,
and case study in medium-scale component-based software development
Silabus Lengkap
Konsep Dasar P/L Berbasis Komponen, Spesifikasi Komponen, Proses Pembangunan PL Berbasis Komponen
(Metodologi), Komposisi dan Integrasi Komponen, Testing dan Quality Assurance untuk PL berbasis Komponen,
Sistem terdistribusi berbasis komponen, Pengenalan berbagai teknologi komponen : CORBA, DCOM, Pengenalan
dan eksplorasi platform yang mendukung komponen, Praktek membangun sebuah perangkat lunak dengan
memakai salah satu teknologi dan platform yang diajarkan
Basic Concepts of Component-Based Software, Components specification, Component-Based Development Processes (Methodology), Component Composition and Integration, Component Testing and Quality Assurance ,Distributed Component-based systems,Iintroduction of various technological components: CORBA, DCOM, Introduction and exploration of platform supporting components, and case study: development of medium-scale component-based software using one of the technologies and platforms
Luaran (Outcomes)
Setelah lulus kuliah ini, mahasiswa mampu : 1. Memahami komponen P/L dan pembangunan P/L berbasis komponen
2. Mengenal dan mengoperasikan beberapa tools yang untuk menunjang pembangunan P/L berbasis komponen
3. Membangun suatu P/L berskala sedang dengan menerapkan secara konsisten metodologi berbasis komponen,
dan mengimplementasikan dengan platform dan tools yang dipelajarinya
Matakuliah Terkait
Dasar Rekayasa Perangkat Lunak Prasyarat

Kegiatan Penunjang
- Praktikum untuk mengenal platform dan tools
- Praktikum untuk membangun P/L berbasis komponen skala sedang
Pustaka
Ivica Crnkovic and Magnus Larsson , Building Reliable Component-Based S/W Systems; Artech House, Inc, 2002
(Pustaka Utama)
John Cheesman, John Daniels, UML Components: A Simple Process for Specifying Component-Based Software, Addison-Wesley
Professional, 2000
Clemens Szyperski, Component Software, Beyond OO Programming, Second Ed., Addison-Wesley, 2002
Roger S. Pressman, Software Engineering: A Practitioner's Approach, Edisi ke-7, Mc Graw-Hill, 2010 (Pustaka
Alternatif)
Panduan Penilaian
Penilaian terhadap peserta kuliah dilakukan berdasarkan hasil: - UTS
- UAS
- Tugas Penguasaan Teknologi dan Alat Bantu
- Tugas Studi Kasus
Catatan Tambahan

Mg# Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pendahuluan
Pengertian Komponen dan
P/L berbasis komponen

2 Spesifikasi komponen
3
Proses pembangunan P/L
berbasis komponen (1)
Pembangunan komponen;
pembangunan P/L berbasis
komponen

4
Proses pembangunan P/L
berbasis komponen (2)
UML Component (1)
5
Proses pembangunan P/L
berbasis komponen (3)
UML Component (2)
6 Teknologi komponen (1) CORBA
7 Teknologi komponen (2) EJB
8 UTS
9 Teknologi komponen (3) COM
10 Teknologi komponen (4) Dot Net
11
Komposisi dan integrasi
komponen
Komposisi komponen
Integrasi komponen

12
Pengujian komponen dan
Penjaminan kualitas
Vendor-oriented testing;
user-oriented testing

13 Studi kasus
Definisi kasus dan analisis
kebutuhan ;
Identifikasi dan spesifikasi
komponen

14 Studi kasus (2) Implementasi komponen
15 Studi kasus (3)
Deployment dan pengujian
komponen

16 U A S

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 74 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Visualisasi Data dan Informasi
Kode Matakuliah: IF4061 Bobot sks:
2
Semester: 7/8 KK / Unit Penanggung Jawab:
KK IF & KK RPLD
Sifat:
Pilihan Prodi/Bebas
Nama Matakuliah
Visualisasi Data dan Informasi
Data and Information Visualization
Silabus Ringkas
Mata kuliah ini menjelaskan tentang penyampaian informasi melalui media visual yang berbasis komputer secara
efektif. Kuliah ini bertujuan memberikan wawasan mengenai prinsip dan peranan visualisasi dalam interaksi
manusia dengan informasi, serta memberikan panduan pengembangan aplikasi visualisasi interaktif sehingga
mahasiswa dapat menerapkan pengetahuan yang ada di dalam kelas ke dalam kehidupan sehari-hari. Kuliah ini
bersifat multidisiplin yang mencakup aspek biologi, psikologi komunikasi visual, dan teknologi informasi.
This course explains about how to effectively presenting information using computer-based visual media. The
course objective is to provide insight about principle and role of visualization in human interaction with
information, and to provide guidance about developing interactive visualization application so that students are able
to apply knowledge acquired in class to everyday use. This course is inherently multi-discipline which covers
aspects from Biology, Psychology of Visual Communication, and Information Technology.
Silabus Lengkap
Bahasan dalam kuliah ini bertujuan memberikan gambaran mengenai sistem yang melibatkan manusia sebagai
konsumen informasi dan komputer yang mengolah dan menyajikan informasi, serta teknik-teknik yang
mengoptimalkan komunikasi informasi dari komputer ke manusia sesuai dengan tujuan tertentu. Kuliah ini
membahas mengenai sistem persepsi visual pada manusia, representasi objek visual, karakteristik dan analisis data
dan informasi, transformasi data, teknik penggambaran, interaksi, dan metode rekayasa aplikasi yang menggunakan
visualisasi dan metode evaluasi terhadap teknik visualisasi yang digunakan. Selain itu kuliah ini juga mencoba
mengeksplorasi teknik dan media baru yang sedang berkembang untuk mendorong kolaborasi multidisiplin.
The objective of the course topics is to provide description about system involving human as information consumer
and computer that process and presenting information, and techniques that optimize information communication
from computer to human to achieve a spesific goal. This course covers human visual perception system, visual
object representation, data and information characteristics and analysis, data transformation, rendering/display
techniques, interaction, engineering methods for interactive visualization application development, and
methodology to evaluate visualization techniques. This course also explores new media and novel technique to
promote multi-discipline collaboration.
Luaran (Outcomes)
- Mahasiswa mampu menjelaskan prinsip dan tujuan dari Visualisasi
- Mahasiswa memiliki pemahaman terhadap aspek persepsi visual pada manusia dan wawasan tentang
representasi objek visual
- Mahasiswa memiliki pemahaman terhadap karakteristik data dan mampu membuat pemetaan dari ranah data
ke representasi visual
- Mahasiswa memiliki wawasan terhadap teknik-teknik visualisasi serta mengevaluasi teknik-teknik tersebut
sesuai dengan kebutuhan dan batasan
- Mahasiswa mampu menerapkan pengetahuan dan memanfaatkan kakas yang ada untuk merancang dan
membangun visualisasi terhadap data dari suatu kasus
Matakuliah Terkait
Grafika Komputer Prasyarat
Interaksi Manusia Komputer Prasyarat
Probabilitas dan Statistika Prasyarat
Kegiatan Penunjang Studi kasus
Pustaka
Colin Ware. Information Visualization : Perception for Design 2ed. Morgan Kaufmann. 2004
Ricardo Mazza. Introduction to Information Visualization. Springer. 2009
W. Aigner. et al. Visualization of Time-oriented Data. Springer. 2011
Panduan Penilaian - 100% tugas (individu dan kelompok)
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Perkenalan Visualisasi
- Tujuan Visualisasi
- Aspek-aspek dalam
visualisasi: what (data), why
(tujuan), how (teknik)

Literatur 1 Ch. 1
Literatur 3 Ch. 3 & 4
2
Persepsi dan Komunikasi
Visual pada Manusia
- Sistem Indera Visual
- Psikologi Persepsi
Dosen Tamu SITH & FSRD
3
Representasi Objek
Visual
- Bentuk
- Warna
- Tata Letak
- Tekstur/Pola
- Geometri
Dosen Tamu FSRD
4 Karakteristik data
- Jenis dan tipe data atributif :
nominal, ordinal, interval
- Data spasial dan temporal
- Analisis Statistik

5 Transformasi data
- Memetakan data ke
representasi visual
- Operasi Emphasizing &
Filtering

6
Penggambaran dan
Penyajian
- Sistem grafika komputer dan
pipeline pembentukan gambar
- Model Kanvas 2D

7
Survey Teknik
Visualisasi
- Visualisasi data multivariat
- Visualisasi data jaringan dan
hierarki
- Visualisasi data spasial

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 75 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

- Visualisasi thd data temporal
- Infografik
8
Presentasi Tugas I
(individu)

Membuat sebuah Visualisasi statis
dari suatu dataset atau komposisi
(infografik)

9 Interaksi dan Dinamika
- Information overload
- Persepsi terhadap Gerakan
dan Perubahan
- Seleksi dan Manipulasi
- Eksplorasi dan Navigasi

Literatur 1 Ch. 10
Literatur 2 Ch. 7
Literatur 3 Ch. 5
10 Interpretasi Visualisasi
- Memori Visual
- Pergerakan Mata
- Penyelesaian persoalan
menggunakan Visualiasi
Literatur 1 Chapter 11
11 Rekayasa Visualisasi
- Requirement Engineering
- Prototyping

12 Evaluasi
- User studies
- Perancangan Eksperimen
- Analisis Data
Literatur 2 Ch. 8
13 Survey Media Visualisasi
- Layar Pribadi: Desktop,
Mobile,
- Layar Publik (Digital
Signage)
- Mixed & Augmented Reality
- New Media : Tangible Media
Dosen Tamu FSRD
14 Studi Kasus
- Enterprise Dashboard :
Business Graphics
- GeoVisualization
- InfoViz
- Scientific Visualization

15
Presentasi Tugas II
(Kelompok)

- Membuat Aplikasi
visualisasi interaktif
- Menjelaskan proses
pengembangan dan
evaluasi terhadap
teknik visualisasi yang
digunakan

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 76 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pembangunan Aplikasi berbasis Grafik 3D
Kode Matakuliah: IF4062 Bobot sks:
2
Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Pilihan Prodi
Nama Matakuliah
Pembangunan Aplikasi berbasis Grafik 3D
3D Graphics Application Development
Silabus Ringkas
Kuliah ini membahas konsep grafik 3D dan aspek-aspek pengembangan aplikasi untuk mengelola dan mengolah
data berbasis grafik 3D.
This course discusses 3D graphical concept and the application development to manage 3D graphical data
Silabus Lengkap
3D object modeling, geometry processing, spatial data structure, graphic/spatial database management, advanced
3D rendering, 3D interaction

Luaran (Outcomes)
Memahami konsep grafik 3D dan model objek pada ruang 3D
Mampu mengembangkan aplikasi yang mengelola dan mengolah data dalam bentuk objek 3 dimensi
Matakuliah Terkait
Geometri dan Ruang Vektor Prasyarat
Grafika Komputer Prasyarat
Kegiatan Penunjang Praktikum mandiri
Pustaka
T. McReynodls. D. Blythe. Advanced Graphics Programming using OpenGL. Morgan-Kaufmann. 2005
Alberto Paoluzzi. Geometric Programming for Computer Aided Design. Wiley. 2003
Elmar Langetepe. Geometric Data Structure for Computer Graphics. AK Peters. 2006
Panduan Penilaian 40 % ujian, 60 % tugas
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Pengantar Grafik 3D
- Konsep grafik 3D
- Math for CG
- 3D rendering pipeline
- 3D graphics system
- Pemodelan objek 3D

2
Mathematics for
Computer Graphics
- Vector Algebra review
- Geometry review
- Intro to Vector Calculus
- Intro to Geometric Algebra
and Quaternions

3 3D Rendering
- Rasterization
- Raytracing
- Volumetric Rendering
- Non-photo realistic rendering
- Surface Splatting

4 Graphics Platform
- Introduction to OpenGL
- Fixed vs Programmable
Pipeline
- Engine & Frameworks

5
3D object Modeling I :
Geometry
- Projection & View
Transformation
- Vertex & Surface
Representation Model
- Modeling Hierarchical Object
- Intersection of Geometric
Objects
- Advanced Geometric
Modeling : Constructive-Solid
Geometry, Volume Modeling

6
3D object modeling II :
Appearance
- Color Space Model
- Lighting & Shading Model :
Local Illumination Model,
Lambert-Goraud-Phong
Shading
- Texture : Texture Mapping,
Displacement Mapping, Bump
Mapping, Normal Mapping
- Global Illumination Model

7 3D Interaction
- Navigation
- Selection: Picking
- Direct Manipulation

8 UTS
9 Spatial Data Structure
- Problems : Rendering Large
& Complex Scene
- Static Data Structure
- Kinetic Data Structure
Lit. 3
10 3D Object Processing - Shape Processing Lit. 2

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 77 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

- Shape Operations
- Voxel-based Processing
11 3D Data Management
- Spatial Database : Spatial
Query
- Shape Similarity
- Mesh Parameterization
- Indexing 3D data
- 3D Object Retrieval

12
Studi Kasus : Data
Oriented Applications
- 3D GIS
- Game Level Editor

13
Studi Kasus : Process
Oriented Applications
- CAD/CAM
- Modeling Tools
- Animation Tools

14
Studi Kasus : Science &
Commerce
- BioHuman
- Protein Modeling

15 Presentasi Tugas Besar

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 78 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Representasi Pengetahuan dan Penalaran
Kode Matakuliah:
IF4070
Bobot sks:3 Semester:7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Pilihan Prodi
Nama Matakuliah
Representasi Pengetahuan dan Penalaran
Knowledge Representation and Reasoning
Silabus Ringkas
Kuliah ini berisi materi isu-isu terkait bagaimana pengetahuan dapat direpresentasikan secara simbolik agar dapat
secara otomatis dilakukan proses penalaran.
The course describe the issues related to symbolic knowledge representation and conduct automated reasoning.
Silabus Lengkap
Materi tersebut mencakup pengenalan, representasi berorientasi objek, deskripsi terstruktur, ontologi dan
representasi dari pengetahuan suatu domain, representasi pengetahuan dalam konteks sosial, kombinasi objek dan
rules, default & negation, penalaran temporal dan spasial, review SBP berbasis rule, penalaran berbasis model dan
kasus, penalaran abduksi, penalaran kualitatif, review CSP, representasi aksi, penalaran dengan aksi, practical
planning, abstraksi - reformulasi - dan aproksimasi
The topics are introduction, object oriented representation, structured description, ontology and domain knowledge representation, social context knowledge representation, object and rules combination, default & negation, spatial and temporal reasoning, rule based system, model and case based reasoning, abduction reasoning, qualitative reasoning, review CSP, action representation, practical planning, abstraction – reformulation – approximation.
Luaran (Outcomes)
- mahasiswa mampu membandingkan antara berbagai jenis representasi pengetahuan terstruktur, dengan
menunjukkan kelebihan dan kekurangan masing-masing representasi
- mahasiswa mampu menjelaskan perbedaan antara penalaran temporal dan penalaran spasial
- mahasiswa mampu menjelaskan perbedaan antara penalaran berbasis aturan/ rule, berbasis model, dan berbasis
kasus
- mahasiswa mampu membuat sebuah SBP sederhana dengan suatu representasi pengetahuan dan proses penalaran
yang sesuai dengan representasi tersebut
Matakuliah Terkait
Kecerdasan Tiruan Prerequisite
Logika Informatika Prerequisite
Algoritma dan Struktur Data Prerequisite
Kegiatan Penunjang
Pustaka
1. Ron Brachman & Hector Levesque, Knowledge Representation and Reasoning, Morgan Kaufmann, 2004
(Pustaka utama)
2. John F. Sowa, Knowledge Representation and: Logical, Philosophical, and Computational Foundations ,Course
Technology, 1999.
3. Lecture Notes in Knowledge Representation and Reasoning at Stanford, can be accessed at
http://www.stanford.edu/class/cs227/, last accessed 13 February 2013
Panduan Penilaian
Ujian Tengah Semester, 20%
Ujian Akhir Semester, 25%
Tugas Kelompok, 20%
Pekerjaan Rumah, 10%
Latihan, 10%
Kuis 20%

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Review of propositional and
predicate logic

2
Review of probabilistic and
uncertainty reasoning

3
Review of probabilistic and
uncertainty reasoning

4
Knowledge Representation
issues (Description Logics,
Ontology Engineering)

5 Non Monotonic Logic
Non classical logic
Default reasoning

6 Non Monotonic Logic
Belief revision
Integration of inconsistent
knowledge sources

7 Non Monotonic Logic
Reasoning about action
and change

8 Mid term
9
Temporal and spatial
reasoning

10 rule based system
11 rule based system
12
model based and case based
reasoning

13
model based and case based
reasoning

14
trend in knowledge
representation

15
trend in knowledge
representation

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 79 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pembelajaran Mesin
Kode Matakuliah:
IF4071
Bobot sks:3 Semester:7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Pilihan Prodi
Nama Matakuliah
Pembelajaran Mesin
Machine Learning
Silabus Ringkas
Kuliah ini membahas berbagai teknik pembelajaran oleh mesin serta pengenalan pola. Pendekatan yang diberikan
mencakup supervised learning, unsupervised learning, dan reinforcement learning.
This course discusses broad introduction to machine learning and pattern recognition. The approach consists of
supervised learning, unsupervised learning, and reinforcement learning.
Silabus Lengkap
Materi yang tercakup di dalamnya meliputi: supervised learning (generative/discriminative learning,
parametric/non-parametric learning, neural networks, support vector machines), unsupervised learning (clustering,
dimensionality reduction, kernel methods); learning theory (bias/variance tradeoffs; VC theory; large margins);
reinforcement learning dan adaptive control. Kuliah juga membahas aplikasi pembelajaran mesin terkini seperti
robotic control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data
processing secara sekilas.
The topics discussed in this course are: supervised learning (generative/discriminative learning, parametric/non- parametric learning, neural networks, support vector machines), unsupervised learning (clustering, dimensionality
reduction, kernel methods); learning theory (bias/variance tradeoffs; VC theory; large margins); reinforcement
learning and adaptive control. This course also discusses recent machine learning application such as robotic
control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data processing.
Luaran (Outcomes)
- mahasiswa menjelaskan perbedaan dari ketiga jenis pembelajaran (unsupervised, supervised, dan reinforcement)
- mahasiswa mampu mengimplementasikan algoritma sederhana untuk ketiga jenis pembelajaran tersebut
- mahasiswa mampu memilih jenis pembelajaran yang tepat untuk kasus persoalan/ aplikasi tertentu
- mahasiswa mampu melakukan evaluasi terhadap kinerja suatu algoritma pembelajaran pada kasus persoalan
tertentu
- mahasiswa mampu menjelaskan persoalan overfitting, serta mampu menjelaskan bagaimana deteksi dan solusi
nya
Matakuliah Terkait
Probabilitas dan Statistika Prasyarat
Struktur data dan Pemrograman Prasyarat
Kecerdasan Tiruan Prasyarat
Kegiatan Penunjang
Pustaka
1. Christopher Bishop, Pattern Recognition and Machine Learning. Springer, 2006 (Pustaka utama)
2. Richard Duda, Peter Hart and David Stork, Pattern Classification, 2nd ed. John Wiley & Sons, 2001
3. Tom Mitchell, Machine Learning. McGraw-Hill, 1997
4. Richard Sutton and Andrew Barto, Reinforcement Learning: An introduction. MIT Press, 1998
5. Trevor Hastie, Robert Tibshirani and Jerome Friedman, The Elements of Statistical Learning. Springer, 2009
6. Course handouts dari Machine Learning Course di Stanford, dapat diakses di
http://www.stanford.edu/class/cs229/materials.html, terakhir diakses pada 13 Februari 2013
Panduan Penilaian
Ujian Tengah Semester, 20%
Ujian Akhir Semester, 25%
Tugas Besar Berkelompok, 20%
Pekerjaan Rumah, 10%
Latihan, 10%
Kuis 15%

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Supervised Learning,
Discriminative Algorithms

2 Generative Algorithms
3 Support Vector Machines
4 Learning Theory
5
Regularization and Model
Selection

6
Online Learning and the
Perceptron Algorithm

7
Unsupervised Learning, k-
means clustering

8 Midterm Exam
9 Mixture of Gaussians
10 The EM Algorithm
11 Factor Analysis
12
Principal Components
Analysis

13
Independent Components
Analysis

14
Reinforcement Learning and
Control

15
Application of Machine
Learning

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 80 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Pemrosesan Bahasa Alami
Kode Matakuliah:
IF4072
Bobot sks:3 Semester:7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat:
Pilihan Prodi
Nama Matakuliah
Pemrosesan Text dan Suara Bahasa Alami
Natural Language Processing (Text and Speech)
Silabus Ringkas
Kuliah ini membahas teori dasar dari kakas pemrosesan bahasa alami, text mining, sistem dialog serta pengenalan
dan sintesis suara secara otomatis, termasuk algoritma dan arsitektur nya.
The course describes the basic theory of natural language processing tool, text mining, dialogue system and speech recognition and synthesis; including the algorithm and architecture.
Silabus Lengkap
Materi yang dicakup dalam kuliah ini adalah pemrosesan leksikal kata, pemrosesan sintaks kalimat, named entity
tagger, pemrosesan semantic kalimat, information extraction, question answering, machine translation, dialogue
management, text categorization, speech recognition dan speech synthesis.
The topics are: word and sentence processing, named entity tagger, semantically sentence processing, information
extraction, question answering, machine translation, dialogue management, text categorization, speech recognition
and speech synthesis.
Luaran (Outcomes)
- mahasiswa mampu memahami bagaimana solusi yang ditawarkan suatu kakas pemroses bahasa alami, text mining
dan sistem dialog
- mahasiswa mampu merancang arsitektur untuk text mining dan sistem dialog
- mahasiswa mampu memahami berbagai teknik pengenalan suara dan pembangkitan suara
Matakuliah Terkait Kecerdasan Tiruan Prasyarat
Kegiatan Penunjang
Pustaka
1. Dan Jurafsky, James H. Martin, Speech And Language Processing:
An Introduction to Natural Language Processing , Computational Linguistics, and Speech Recognition, second
edition,
Pearson Prentice Hall, 2008 (Pustaka utama)
2. Huang, Acero, Hon. Spoken Language Processing. Prentice-Hall. 2001
3. Paul Taylor, Text-to-Speech Synthesis. Cambridge University Press, 2009
Berbagai paper pada jurnal dan konferensi (Pustaka pendukung)
Panduan Penilaian
Ujian Tengah Semester, 30%
Ujian Akhir Semester, 30%
Tugas Kelompok, 30%
Tugas makalah, 10%

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1
Introduction to
Computational Linguistics
Introduction to Speech
Recognition and Synthesis
Aplikasi pemrosesan
bahasa alami (PBA)
Masalah dlm aplikasi PBA
Aplikasi text mining
Speech Recognition
Speech Synthesis
Mahasiswa memahami perbedaan
tools PBA dan text mining
Mahasiswa memahami masalah
dalam pengembangan aplikasi PBA
ataupun text mining
Pustaka 1
2
Text categorization
Pemanfaatan lexical
processing dalam text
categorization
Text categorization: news
clustering, spam filtering,
news categorization
Stemming
Morphological analyser
Fitur pada POS Tagger
Teknik POS Tagger: rule
based, brill tagger, HMM
Mahasiswa memahami arsitektur
beberapa aplikasi di bidang text
categorization
Mahasiswa memahami teknik
stemming, morphological analyser
dan supervised POS Tagger, serta
pemanfaatan di bidang text mining

3
Speech recognition
Spoken text categorization
Acoustic Phonetics
Acoustic Modelling
N-gram Modelling
Mahasiswa memahami berbagai
teknik dalam speech recognition
Mahasiswa memahami penerapan
speech recognition dalam spoken
text categorization

4
Konsep klasifikasi teks
dasar selain POS Tagger
yang menggunakan fitur
leksikal
Word sense disambiguation
Basis data lexical
Word sense
disambiguation:
collocation, cooccurrence
Semantik di level kata
WordNet, FrameNet,
VerbNet
Text categorization
menggunakan word sense
disambiguation
Mahasiswa memahami teknik
berbasis kata pada text
categorization, word sense
disambiguation, dan basis data
lexical

5
Named Entity Tagger
Information Extraction
Konsep chunking dalam
NE Tagger
Fitur dalam NE Tagger
Teknik rule based dan
statistical based dalam NE
Tagger
Association antar NE
untuk Information
Extraction (IE)
Mahasiswa memahami fitur dan
teknik pada NE Tagger

6
Syntactical: constituent
parser
Konsep constituent parser
CFG (context free
grammar) untuk bahasa
alami
Top down, bottom up
parser
Mahasiswa memahami teknik
parsing berbasis constituent
termasuk dengan pendekatan
statistic

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 81 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
Earley algorithm
CYK algorithm
PCFG
Penghitungan nilai
probabilistic dari corpus
Early dengan probabilistic
CYK dgn probabilistic
7
Syntactical: dependency
parser
Konsep dependency parser
Nivre parser
Covington parser
Malt parser
Stanford parser
Mahasiswa memahami teknik
parsing berbasis dependency

8 UTS
9
Semantic analyser
(constituent dan
dependency)
Konsep representasi
semantic: FOL
PCFG dilengkapi semantic
Semantic analyser utk
dependency parser
Mahasiswa memahami semantic
analyser baik utk constituent
maupun untuk dependency

10
Pragmatic: coreference
resolution
IE dengan coreference
resolution
Rule based algorithm
Statistical based algorithm
Mahasiswa memahami masalah-
masalah dan teknik untuk
menyelesaikan coreference
resolution

11
Sistem Question Answering
(QA)
Tipe QA
Arsitektur umum QA
Teknik pencarian jawab
dari level leksikal,
sintaksis dan semantik
Mahasiswa memahami masalah-
masalah dan teknik untuk
penyelesaian sistem QA


Sistem Dialog

Masalah dalam dialog
Arsitektur dialog
Teknik penyimpanan
informasi dalam dialog

Mahasiswa memahami masalah-
masalah dan teknik penyelesaian
sistem dialog

12 Speech Synthesis
Prosody (Intonation,
Boundaries, and Duration)
Waveform Synthesis
(Diphone and Unit
Selection Synthesis)
Mahasiswa memahami berbagai
teknik dalam speech synthesis

13 Penerjemahan Automatis
Teknik rule based dan
statistical based (HMM)
Penerapan penerjemahan
pada berbagai sistem
Mahasiswa memahami teknik untuk
menyelesaikan penerjemahan
automatis

14 More on Text Classification
Berbagai aplikasi
klasifikasi teks seperti
analisis opini/sentiment,
essay scoring, dan
plagiarism detection
Mahasiswa memahami berbagai
masalah dan pendekatan untuk
aplikasi klasifikasi teks

15
NLP Application on Social
Media
Penerapan aplikasi NLP
pada social media
(facebook, twitter, kaskus):
classification (sentiment
analysis, etc), information
extraction, behaviour
analysis
Mahasiswa memahami berbagai
aplikasi NLP pada social media

Bidang Akademik dan Kemahasiswaan ITB Kur2013-IF Halaman 82 dari 82
Template Dokumen ini adalah milik Direktorat Pendidikan - ITB
Dokumen ini adalah milik Program Studi Teknik Informatika ITB.
Dilarang untuk me-reproduksi dokumen ini tanpa diketahui oleh Dirdik-ITB dan IF-ITB.


Kode Matakuliah: IF4073 Bobot sks: 3 Semester: 7/8 KK / Unit Penanggung Jawab:
Informatika
Sifat: Pilihan Prodi
Nama Matakuliah
Interpretasi dan Pengolahan Citra
Image Processing and Interpretation
Silabus Ringkas
Model formasi citra, fitur dan pemrosesan citra, estimasi motion, segmentasi dan representasi bentuk, pengenalan
object
Image formation model, image feature and processing, motion estimation, shape representation and segmentation,
object recognition
Silabus Lengkap
Model formasi citra (system pencitraan, model kamera), fitur dan pemrosesan citra (representasi citra, deteksi
batas), estimasi motion (komputasi optic, stereo vision, estimasi gerakan, struktur gerakan), segmentasi dan
representasi bentuk (kurva, permukaan, kontur, fourier dan wavelet), pengenalan object (metode pengenalan,
korespondensi bentuk, principal component analysis)
Image formation model (imaging system, camera model), image feature and processing (image representation, edge
detection), motion estimation (optical computation, stereo vision, motion estimation, structure from motion), shape
representation and segmentation (curves, surfaces, contours, fourier and wavelet), object recognition (recognition
method, shape correspondence, principal component analysis)
Luaran (Outcomes)
To introduce and familiarize students with image interpretation concept including the recognition techniques of
image in order to enable students to develop computer vision program
Matakuliah Terkait
Kecerdasan buatan Prasyarat
Grafika komputer prasyarat
Kegiatan Penunjang
Pustaka
D. Forsyth dan J. Ponce, Computer Vision – a modern approach, Prentice Hall
B. K. P. Horn, Robot Vision, McGraw-Hill
E. Trucco, A. Verri, Introductory Techniques for 3D Computer Vision, Prentice Hall
Panduan Penilaian
Catatan Tambahan

Mg
#
Topik Sub Topik Capaian Belajar Mahasiswa Sumber Materi
1 Image Formation Model
Monocular imaging
system, orthographic &
Perspective projection

2
Camera model
Camera calibration
Binocular imaging system

3
Image Processing and
Feature Extraction
Image representation
(continuous and discrete)

4 Edge detection
5 Motion Estimation
Regularization theory,
optical computation, stereo
vision

6 Motion estimation
7 Structure from motion
8 UTS
9
Shape Representation and
Segmentation
Deformable curves and
surfaces
Snake and active contours

10 Level set representations
11
Fourier and wavelet
descriptor

12
Medial representations
Multiresolution analysis

13 Object recognition
Hough transforms and
other simple object
recognition method

14
Shape correspondence and
shape matching, shape
priors for recognition

15
Principal component
analysis