KURIKULUM BERBASIS KKNI
PROGRAM STUDI DIPLOMA IV REKAYASA PERANGKAT LUNAK
Disusun Oleh: Tim Penyusun Kurikulum
POLITEKNIK NEGERI INDRAMAYU 2016
...:: B A G I A N I S I ::… _________________________________
___________________________________ JURUSAN TEKNIK INFORMATIKA POLITEKNIK NEGERI INDRAMAYU
Jl. Raya Lohbener Lama No.8 Lohbener – Indramayu Jawa Barat 45252 URL: http://www.polindra.ac.id Email:
[email protected]
LEMBAR PENGESAHAN
KURIKULUM BERBASIS KKNI PROGRAM STUDI DIPLOMA IV REKAYASA PERANGKAT LUNAK
Indramayu, 15 Desember 2016
Menyetujui, Ketua Jurusan Teknik Informatika
A. SUMARUDIN, S.Pd., MT., M.Sc
Mengetahui, Direktur
Pembantu Direktur
Politeknik Negeri Indramayu
Bidang Akademik
CASIMAN SUKARDI, ST., MT
IMAM MAOLANA, ST., MT., M.Sc
BAB I VISI, MISI DAN TUJUAN PROGRAM STUDI
A. VISI “Menjadi program studi yang unggul di bidang Software Engineering tingkat nasional dan berdaya saing global”.
B. MISI 1. Meningkatkan mutu, akses, dan relevansi pendidikan Politeknik di bidang Software Engineering untuk menghasilkan lulusan sesuai kebutuhan pekerjaan 2. Melakukan penelitian terapan dan pengabdian masyarakat di bidang Software Engineering untuk mengatasi persoalaan industri dan masyarakat
C. TUJUAN 1. Menghasilkan lulusan yang kompeten di bidang Software Engineering dengan ciri keterampilan kerja tinggi yang mampu bersaing secara global 2. Memberikan solusi persoalan industri dan masyarakat di bidang Software Engineering tingkat nasional melalui penelitian terapan dan pengabdian masyarakat
BAB II PROFIL LULUSAN DAN CAPAIAN PEMBELAJARAN
A. PROFIL LULUSAN 1. System Analyst : mampu menganalisis dan menspesifikasikan kebutuhan perangkat lunak berskala besar dengan dokumentasi yang mengacu standar IEEE Std 829-1998 atau standar lain. 2. Software Developer : mampu mengembangkan perangkat lunak dengan menerapkan metodologi pengembangan perangkat lunak yang sesuai dengan perkembangan terkini agar menghasilkan perangkat lunak yang sesuai dengan kebutuhan pengguna. 3. Software Tester: mampu melakukan pengujian perangkat lunak menggunakan metode black box dan atau white box sesuai kebutuhan. 4. Software Maintenance: mampu melakukan perawatan perangkat lunak dari tingkat sederhana sampai dengan kompleks. 5. Technopreneur : Mempu menginternalisasi semangat kemandirian kejuangan dan kewirausahaan, serta mampu menunjukkan sikap bertanggung jawab, jujur, dan disiplin atas pekerjaan dibidang keahliannya secara mandiri.
B. CAPAIAN PEMBELAJARAN 1. SIKAP DAN TATA NILAI 1) Bertakwa kepada Tuhan Yang Maha Esa dan mampu menunjukkan sikap religius; 2) Menjunjung tinggi nilai kemanusiaan dalam menjalankan tugas berdasarkan agama,moral, dan etika; 3) Berkontribusi dalam peningkatan mutu kehidupan bermasyarakat, berbangsa, bernegara, dan kemajuan peradaban berdasarkan Pancasila; 4) Berperan sebagai warga negara yang bangga dan cinta tanah air, memiliki nasionalisme serta rasa tanggungjawab pada negara dan bangsa; 5) Menghargai keanekaragaman budaya, pandangan, agama, dan kepercayaan, serta pendapat atau temuan orisinal orang lain; 6) Bekerja sama dan memiliki kepekaan sosial serta kepedulian terhadap masyarakat dan lingkungan; 7) Taat hukum dan disiplin dalam kehidupan bermasyarakat dan bernegara; 8) Menginternalisasi nilai, norma, dan etika akademik;
9) Menunjukkan sikap bertanggungjawab atas pekerjaan di bidang keahliannya secara mandiri; 10) Menginternalisasi semangat kemandirian, kejuangan, dan kewirausahaan.
2. KEMAMPUAN UMUM 1) Mampu menerapkan pemikiran logis, kritis, inovatif, bermutu, dan terukur dalam melakukan jenis pekerjaan spesifik, di bidang keahliannya serta sesuai dengan standar kompetensi kerja bidang yang bersangkutan; 2) Mampu menunjukkan kinerja mandiri, bermutu, dan terukur; 3) Mampu
mengkaji
kasus
penerapan
ilmu
pengetahuan,
teknologi
yang
memperhatikan dan menerapkan nilai humaniora sesuai dengan bidang keahliannya dalam rangka menghasilkan prototype, prosedur baku, desain atau karya seni, 4) Mampu menyusun hasil kajian tersebut dalam bentuk kertas kerja, sepesifikasi desain, atau esai seni, dan mengunggahnya dalam laman perguruan tinggi; 5) Mampu mengambil keputusan secara tepat berdasarkan prosedur baku, spesifikasi desain, dan persyaratan keselamatan dan keamanan kerja dalam melakukan supervisi dan evaluasi pada pekerjaannya; 6) Mampu memelihara dan mengembangkan jaringan kerja sama dan hasil kerjasama didalam maupun di luar lembaganya; 7) Mampu bertanggung jawab atas pencapaian hasil kerja kelompok dan melakukan supervisi serta evaluasi terhadap penyelesaian pekerjaan yang ditugaskan kepada pekerja yang berada di bawah tanggung jawabnya; 8) Mampu melakukan proses evaluasi diri terhadap kelompok kerja yang berada di bawah Tanggung jawabnya, dan mampu mengelola pembelajaran secara mandiri; 9) Mampu mendokumentasikan, menyimpan, mengamankan, dan menemukan kembali data untuk menjamin kesahihan dan mencegah plagiasi;
3. KEMAMPUAN KHUSUS 1) Lulusan mampu mengaplikasikan teori, prinsip-prinsip, tools dan proses-proses, sebagaimana teori dan prinsip-prinsip ilmu komputer dan matematika, untuk pengembangan dan perawatan dari sistem yang kompleks 2) Lulusan mampu mendesain dan melakukan eksperimen dengan prototype perangkat lunak
3) Lulusan mampu memilih dan menggunakan metric perangkat lunak 4) Lulusan mampu berpartisipasi secara produktif pada tim proyek perangkat lunak yang melibatkan mahasiswa-mahasiswa dari berbagai disiplin ilmu 5) Lulusan mampu berkomunikasi secara efektif melalui oral dan laporan tertulis, dan dokumen perangkat lunak baik menggunakan Bahasa Indonesia ataupun Bahasa Inggris 6) Lulusan mampu menganalisis dan menspesifikasikan kebutuhan perangkat lunak melalui hubungan kerja yang produktif dengan para stakeholder proyek 7) Lulusan mampu mengevaluasi bisnis dan dampak dari solusi yang dapat mengatasi permasalahan dalam perekayasaan perangkat lunak secara umum, menggunakan pengetahuannya dari isu-isu kontemporer 8) Lulusan mampu menjelaskan dampak globalisasi pada bidang komputasi dan perekayasaan perangkat lunak 9) Lulusan mampu berinteraksi secara professional dengan para kolega atau klien baik nasional maupun internasional 10) Lulusan mampu mengaplikasikan kode etik yang sesuai dan professional dalam menyampaikan solusi untuk memecahkan permasalahan dalam perekayasaaan perangkat lunak 11) Lulusan mampu mengidentifikasi sumber daya-sumber daya untuk menentukan legalisasi dan etikal praktik dalam negara-negara lain sebagaimana mereka mengaplikasikannya pada komputasi dan perekayasaan perangkat lunak 12) Lulusan mampu mengenali apa yang mereka butuhkan, dan semangat belajar sepanjang hayat 13) Lulusan mampu mendemonstrasikan pengetahuan domain aplikasi perekayasaan perangat lunak 14) Lulusan mampu melakukan pengujian, perawatan dan perbaikan perangkat lunak dengan menggunakan metode dan tools 15) Lulusan mampu mengelola usaha dan mengembangkan kemampuan diri dengan mengunakan teknologi 16) Dalam beberapa tahun setelah lulus dari program ini, lulusan dapat: -
berkembang dari posisi entry-level ke tugas dan tanggung jawab yang lebih tinggi, dan dapat melanjutkan ke jenjang pendidikan yang lebih tinggi
-
terus mengikuti kemajuan dalam dispilin ilmunya, dan mengembangkan secara professional dalam merespon perubahan perubahan-perubahan dalam tugas dan
tanggung jawabnya -
mendemonstrasikan dan mengkolaborasi dengan bidang di luar dari disiplin ilmunya secara professional baik di tingkat lokal, nasional, atau internasional.
4. PENGUASAAN PENGETAHUAN 1) Menguasai pengetahuan tentang socio-technial system yang meliputi: karakter sistem, system engineering, organisasi, sumber daya manusia dan sistem komputer, dan legacy system; 2) Menguasai permasalahan tentang sistem kritis yang meliputi: ketergantungan, ketersediaan dan kehandalan, keselamatan, dan keamanan sistem; 3) Menguasai proses perangkat lunak yang meliputi: model proses, proses iterasi, aktifitas-aktifitas proses, dan computer-aided software engineering; 4) Menguasai manajemen proyek yang meliputi: perencangan proyek, penjadwalan, dan manajemen resiko; 5) Menguasai dalam proses software requirements yang meliputi: kebutuhan fungsional dan non-fungsional, kebutuhan pengguna, kebutuhan sistem, spesifikasi antarmuka, dan dokumentasi; 6) Menguasai proses pengumpulan kebutuhan perekayasaan yang meliputi: studi kelayakan, kebutuhan elisitasi (rancangan yang dibuat berdasarkan sistem yang baru), proses validasi, dan manajemen; 7) Menguasai model-model sistem, seperti: model konteks, model behavioral, model data, model berbasis obyek, dan model terstruktur; 8) Menguasai spesifikasi sistem kritis yang meliputi: spesifikasi risk-driven, spesifikasi keselamatan, spesifikasi keamanan, dan spesifikasi kehandalan perangkat lunak; 9) Menguasai spesifikasi formal yang meliputi: spesifikasi formal dalam proses perangkat lunak, spesifikasi antarmuka sub-sistem, dan spesifikasi tingkah laku.
BAB III PEMBENTUKAN MATA KULIAH
A. Bahan Kajian Dan Materi Pembelajaran Bahan kajian dalam kurikulum ini menjadi standar isi pembelajaran yang memiliki tingkat kedalaman dan keluasan materi yang mengacu pada CPL. Tingkat kedalaman dan keluasan materi pembelajaran sebagaimana tercantum dalam SN-Dikti pasal 9, ayat (2) (Standar Nasional Pendidikan Tinggi, 2015) untuk jenjang program studi Diploma IV (D4) adalah menguasai konsep teoritis bidang pengetahuan dan keterampilan tertentu secara umum dan konsep teoritis bagian khusus dalam bidang pengetahuan dan keterampilan tersebut secara mendalam. Berikut adalah tabel yang menggambarkan kaitan antara bidang IPTEKS yang dikembangkan, bahan kajian dan tingkat kedalaman dan keluasan materi pembelajaran pada Program Studi Rekayasa Perangkat Lunak. Tabel 3.1 Kaitan antara bidang IPTEKS, bahan kajian dan tingkat kedalaman & keluasan materi pembelajaran BIDANG IPTEKS yang dipelajari
1
2
3
Pengetahuan Umum
Kebutuhan Perangkat Lunak
Desain Perangkat Lunak
BAHAN KAJIAN
1. 2. 3. 4. 5. 6. 7. 1. 2. 3. 4. 5. 6. 7. 8. 1. 2.
TINGKAT TINGKATAN KEDALAMAN KAJIAN dan KELUASAN MATERI PEMBELAJARAN Prinsip prinsip Pendukung
Kepribadian Humaniora Agama Kewarganegaraan dan Bela Negara Etika Profesi Kewirausahaan Bahasa Kebutuhan Perangkat Lunak Konsep dan prinsip Fundamental Proses Kebutuhan Elisitasi Kebutuhan Analisis Kebutuhan Spesifikasi Kebutuhan Validasi Kebutuhan Pertimbangan Praktis Alat Kebutuhan Perangkat Lunak Desain Perangkat Lunak Pengetahuan Fundamental procedural Isu kunci dalam Desain Software
Utama
Utama
4
5
6
7
3. Struktur dan Arsitektur perangkat lunak 4. Desain Antarmuka Pengguna 5. Analisis Kualitas Desain dan Evaluasi Perangkat Lunak 6. Desain Notasi Perangkat Lunak 7. Desain Strategis dan Metode Perangkat Lunak 8. Alat Desain Perangkat Lunak 1. Konstruksi Perangkat Lunak Konstruksi Fundamentals dan Evolusi 2. Mengelola Konstruksi Perangkat 3. Pertimbangan Praktis Lunak 4. Teknologi Konstruksi 5. Alat Konstruksi Perangkat Lunak 6. Pengembangan perangkat lunak dalam konteks besar 7. Evolusi perangkat lunak 8. Karakteristik perangkat lunak yang mudah dipelihara 9. Sistem Reengineering 10. Penggunaan kembali perangkat lunak 1. Pengujian Perangkat Lunak Pengujian Fundamental Perangkat 2. Level Pengujian Lunak 3. Teknik Pengujian 4. Test-Related Measures 5. Proses Pengujian 6. Alat Pengujian Perangkat Lunak Perangkat Pemeliharaan 1. Pemeliharaan Lunak Fundamental Perangkat 2. Isu Kunci dalam Lunak Pemeliharaan Perangkat Lunak 3. Proses Pemeliharaan 4. Teknik untuk Pemeliharaan 5. Alat pemeliharaan perangkat lunak 1. Inisiasi dan Ruang Lingkup Manajemen Definisi Rekayasa 2. Perencanaan Proyek Perangkat Perangkat Lunak Lunak 3. Pengesahan Proyek Perangkat Lunak 4. Ulasan dan Evaluasi 5. Penutupan
Konsep teoritis
Utama
Pengetahuan procedural
Utama
Konsep dan prinsip
Utama
Konsep dan prinsip
Utama
8
Proses Rekayasa Perangkat Lunak
9
Model dan Metode Rekayasa Perangkat Lunak
6. Pengukuran Rekayasa Perangkat Lunak 7. Alat Manajemen Rekayasa Perangkat Lunak 8. Partisipasi tim 9. Estimasi usaha 10. Risiko 11. Manajemen tim 12. Manajemen proyek 13. Pengukuran perangkat lunak dan teknik estimasi 14. Jaminan kualitas perangkat lunak dan peran pengukuran 15. Pendekatan system-wide terhadap risiko termasuk bahaya yang berhubungan dengan alat-alat 1. Definisi Proses Perangkat Lunak 2. Siklus Hidup Perangkat Lunak 3. Pengenalan model proses perangkat lunak 4. Konsep kualitas perangkat lunak 5. Pemrograman besar vs pemrograman individu 6. Evaluasi model proses perangkat lunak 7. Capability maturity model proses perangkat lunak 8. Sistem tingkat pertimbangan 9. Proses Penilaian dan peningkatan perangkat lunak 10. Alat Proses Rekayasa perangkat lunak 11. Pengukuran proses perangkat lunak 1. Pemodelan 2. Jenis Model 3. Analisis Model 4. Metode Rekayasa Perangkat Lunak 5. Analisis formal dalam siklus pengembangan perangkat lunak 6. Program bahasa penegasan (asersi) dan pendekatan analisis 7. Pendekatan formal untuk pemodelan perangkat lunak
Prinsip prinsip
Utama
Konsep teoritis dan Utama pengetahuan pprocedural
10
Kualitas Perangkat Lunak
11
Komputasi Dasar
12
Matematika Dasar
13
Rekayasa Dasar
dan analisis (model checker dan finder) 8. Alat yang mendukung metode formal 1. Kualitas Perangkat Lunak Fundamental 2. Proses Manajemen Mutu Perangkat Lunak 3. Pertimbangan teknis 4. Alat Kualitas perangkat lunak 1. Teknik Pemecahan Masalah 2. Abstraksi 3. Dasar-dasar pemrograman 4. Dasar-dasar Bahasa Pemrograman 5. Alat dan teknik Debugging 6. Struktur data dan representasi 7. Algoritma dan kompleksitas 8. Konsep dasar dari sistem 9. Organisasi komputer 10. Dasar Sistem Operasi 11. Dasar compiler 12. Dasar-dasar database dan manajemen data 13. Dasar-dasar jaringan komunikasi 14. Komputasi parallel dan terdistribusi 15. Basic User Human Factors 16. Basic Developer Human Factors 17. Pengembangan dan Pemeliharaan keamanan perangkat lunak 1. Set, Relasi, Fungsi 2. Logika Dasar 3. Teknik Pembuktian 4. Dasar-dasar dari Counting 5. Grafik 1. Metode Empiris dan Teknik Eksperimental 2. Analisis Statistik 3. Pengukuran 4. Desain Teknik 5. Pemodelan, Prototyping, dan simulasi 6. Standars 7. Analisis Permasalahan
Konsep dan prinsip
Utama
Konsep teoritis
Utama
Konsep teoritis
Utama
Konsep dan prinsip
Utama
14
Alat dan Lingkungan
15
Verifikasi dan Validasi Perangkat Lunak
16
Keandalan Perangkat lunak
1. Manajemen konfigurasi perangkat lunak dan kontrol versi 2. Manajemen rilis 3. Analisis kebutuhan dan alat pemodelan desain 4. Alat pengujian termasuk alat analisis statis dan dinamis 5. Lingkungan pemrograman 6. Konsep dan mekanisme integrasi alat 1. Konsep Verifikasi dan Validasi 2. Inspeksi, review, audit 3. Jenis pengujian 4. Pengujian fundamental 5. Defect tracking 6. Keterbatasan pengujian pada domain tertentu 1. Konsep rekayasa keandalan perangkat lunak 2. Keandalan perangkat lunak, keandalan sistem dan perilaku kesalahan 3. Konsep dan teknik siklus hidup kesalahan
Konsep dan teoritis
Utama
Pengetahuan prosedural konsep teoritis
Utama dan
Konsep dan prinsip
Utama
B. Bahan kajian yang diturunkan dari Capaian Pembelajaran
SIKAP dan TATA NILAI
- Bertakwa kepada Tuhan Yang Maha Esa dan mampu menunjukkan sikap religius; - Menjunjung tinggi nilai kemanusiaan dalam menjalankan tugas berdasarkan agama,moral, dan etika; - Berkontribusi dalam peningkatan mutu kehidupan bermasyarakat, berbangsa, bernegara, dan kemajuan peradaban berdasarkan Pancasila; - Berperan sebagai warga negara yang bangga dan cinta tanah air, memiliki nasionalisme serta rasa tanggungjawab pada negara dan bangsa; - Menghargai keanekaragaman budaya, pandangan, agama, dan kepercayaan, serta pendapat atau temuan orisinal orang lain; - Bekerja sama dan memiliki kepekaan sosial serta kepedulian terhadap masyarakat dan lingkungan;
Keandalan PL
Verifikasi & Validasi PL
Alat & Lingkungan
Rekayasa Dasar
Matematika Dasar
Komputasi Dasar
Kualitas PL
Model & Metode RPL
Proses RPL
Manajemen RPL
Pemeliharaan PL
Pengujian PL
Konstruksi & Evolusi PL
Desain PL
Kebutuhan PL
Capaian Pembelajaran
Pengetahuan umum
Bahan Kajian
EMAMPUAN UMUM
- Mampu menerapkan pemikiran logis, kritis, inovatif, bermutu, dan terukur dalam melakukan jenis pekerjaan spesifik, di bidang keahliannya serta sesuai dengan standar kompetensi kerja bidang yang bersangkutan; - Mampu menunjukkan kinerja mandiri, bermutu, dan terukur; - Mampu mengkaji kasus penerapan ilmu pengetahuan, teknologi yang memperhatikan dan menerapkan nilai humaniora sesuai dengan bidang keahliannya dalam rangka menghasilkan prototype, prosedur baku, desain atau karya seni, - Mampu menyusun hasil kajian tersebut dalam bentuk kertas kerja, sepesifikasi desain, atau esai seni, dan mengunggahnya dalam laman perguruan tinggi; - Mampu mengambil keputusan secara tepat berdasarkan prosedur baku, spesifikasi desain, dan persyaratan keselamatan dan keamanan kerja dalam melakukan supervisi dan evaluasi pada pekerjaannya; - Mampu memelihara dan mengembangkan jaringan kerja sama dan hasil kerjasama didalam maupun di luar lembaganya; - Mampu bertanggung jawab atas pencapaian hasil kerja kelompok dan melakukan supervisi serta evaluasi terhadap penyelesaian pekerjaan yang ditugaskan kepada pekerja yang berada di bawah tanggung jawabnya; - Mampu melakukan proses evaluasi diri terhadap kelompok kerja yang berada di bawah tanggung jawabnya, dan mampu mengelola pembelajaran secara mandiri; - Mampu mendokumentasikan, menyimpan, mengamankan, dan menemukan kembali data untuk menjamin kesahihan dan mencegah plagiasi;
KEMAMPUAN KHUSUS
- Lulusan mampu mengaplikasikan teori, prinsip-prinsip, tools dan proses-proses, sebagaimana teori dan prinsip-prinsip ilmu komputer dan matematika, untuk pengembangan dan perawatan dari sistem yang kompleks - Lulusan mampu mendesain dan melakukan eksperimen dengan prototype perangkat lunak - Lulusan mampu memilih dan menggunakan metric perangkat lunak - Lulusan mampu berpartisipasi secara produktif pada tim proyek perangkat lunak yang melibatkan mahasiswa-mahasiswa dari berbagai disiplin ilmu - Lulusan mampu berkomunikasi secara efektif melalui oral dan laporan tertulis, dan dokumen perangkat lunak baik menggunakan Bahasa Indonesia ataupun Bahasa Inggris - Lulusan mampu menganalisis dan menspesifikasikan kebutuhan perangkat lunak melalui hubungan kerja yang produktif dengan para stakeholder proyek - Lulusan mampu mengevaluasi bisnis dan dampak dari solusi yang dapat mengatasi permasalahan dalam perekayasaan perangkat lunak secara umum, menggunakan pengetahuannya dari isu-isu kontemporer - Lulusan mampu menjelaskan dampak globalisasi pada bidang komputasi dan perekayasaan perangkat lunak - Lulusan mampu berinteraksi secara professional dengan para kolega atau klien baik nasional maupun internasional - Lulusan mampu mengaplikasikan kode etik yang sesuai dan professional dalam menyampaikan solusi untuk memecahkan permasalahan dalam perekayasaaan perangkat lunak - Lulusan mampu mengidentifikasi sumber daya-sumber daya untuk menentukan legalisasi dan etikal praktik dalam negara-negara lain sebagaimana mereka mengaplikasikannya pada komputasi dan perekayasaan perangkat lunak - Lulusan mampu mengenali apa yang mereka butuhkan, dan semangat belajar sepanjang hayat - Lulusan mampu mendemonstrasikan pengetahuan domain aplikasi perekayasaan perangat lunak - Lulusan mampu melakukan pengujian, perawatan dan perbaikan perangkat lunak - Lulusan mampu mengelola usaha dan mengembangkan kemampuan diri dengan mengunakan teknologi - Dalam beberapa tahun setelah lulus dari program ini, lulusan dapat: - berkembang dari posisi entry-level ke tugas dan tanggung jawab yang lebih tinggi, dan dapat melanjutkan ke jenjang pendidikan yang lebih tinggi - terus mengikuti kemajuan dalam dispilin ilmunya, dan mengembangkan secara professional dalam merespon perubahan perubahan-perubahan dalam tugas dan tanggung jawabnya
PENGUASAAN PENGETAHUAN
- mendemonstrasikan dan mengkolaborasi dengan bidang di luar dari disiplin ilmunya secara professional baik di tingkat lokal, nasional, atau internasional - melakukan pengujian perangkat lunak dengan menggunakan metode dan tools - Menguasai pengetahuan tentang socio-technial system yang meliputi: karakter sistem, system engineering, organisasi, sumber daya manusia dan sistem komputer, dan legacy system; - Menguasai permasalahan tentang sistem kritis yang meliputi: ketergantungan, ketersediaan dan kehandalan, keselamatan, dan keamanan sistem; - Menguasai proses perangkat lunak yang meliputi: model proses, proses iterasi, aktifitas-aktifitas proses, dan computer-aided software engineering; - Menguasai manajemen proyek yang meliputi: perencangan proyek, penjadwalan, dan manajemen resiko; - Menguasai dalam proses software requirements yang meliputi: kebutuhan fungsional dan non-fungsional, kebutuhan pengguna, kebutuhan sistem, spesifikasi antarmuka, dan dokumentasi; - Menguasai proses pengumpulan kebutuhan perekayasaan yang meliputi: studi kelayakan, kebutuhan elisitasi (rancangan yang dibuat berdasarkan sistem yang baru), proses validasi, dan manajemen; - Menguasai model-model sistem, seperti: model konteks, model behavioral, model data, model berbasis obyek, dan model terstruktur; - Menguasai spesifikasi sistem kritis yang meliputi: spesifikasi riskdriven, spesifikasi keselamatan, spesifikasi keamanan, dan spesifikasi kehandalan perangkat lunak; - Menguasai spesifikasi formal yang meliputi: spesifikasi formal dalam proses perangkat lunak, spesifikasi antarmuka sub-sistem, dan spesifikasi tingkah laku.
C. Mata Kuliah berdasarkan Bahan Kajian NO
1
2
3
4
BAHAN KAJIAN 1. Kepribadian 2. Humaniora 3. Agama 4. Kewarganegaraan dan Bela Negara 5. Etika Profesi 6. Kewirausahaan 7. Bahasa
MATA KULIAH 1. Pendidikan Agama 2. Pancasila 3. Bahasa Indonesia 4. Kewarganegaraan 5. Bahasa Inggris Fundamental 6. Bahasa Inggris Scientific 7. Bahasa Inggris Profesional 8. Kewirausahaan 9. Etika profesi
1. Kebutuhan Perangkat Lunak Fundamental 2. Proses Kebutuhan 3. Elisitasi Kebutuhan 4. Analisis Kebutuhan 5. Spesifikasi Kebutuhan 6. Validasi Kebutuhan 7. Pertimbangan Praktis 8. Alat Kebutuhan Perangkat Lunak
1. Pemrograman Komputer 2. Analisis& Desain perangkat lunak
1. Desain Perangkat Lunak Fundamental 2. Isu kunci dalam Desain Software 3. Struktur dan Arsitektur perangkat lunak 4. Desain Antarmuka Pengguna 5. Analisis Kualitas Desain dan Evaluasi Perangkat Lunak 6. Desain Notasi Perangkat Lunak 7. Desain Strategis dan Metode Perangkat Lunak 8. Alat Desain Perangkat Lunak 1. Konstruksi Perangkat Lunak Fundamentals 2. Mengelola Konstruksi 3. Pertimbangan Praktis 4. Teknologi Konstruksi 5. Alat Konstruksi Perangkat Lunak 6. Pengembangan perangkat lunak dalam konteks besar 7. Evolusi perangkat lunak 8. Karakteristik perangkat lunak yang mudah dipelihara 9. Sistem Reengineering 10. Penggunaan kembali perangkat lunak
1. Analisis & Desain Perangkat Lunak 2. Pemrograman Komputer 3. Interaksi Manusia & Komputer 4. Analisis Perangkat Lunak
1. Konstruksi & Evolusi Perangkat Lunak 2. Pengantar Teknologi Informasi & Komunikasi
5
6
7
8
1. Pengujian Perangkat Lunak Fundamental 2. Level Pengujian 3. Teknik Pengujian 4. Test-Related Measures 5. Proses Pengujian 6. Alat Pengujian Perangkat Lunak 1. Pemeliharaan Perangkat Lunak Fundamental 2. Isu Kunci dalam Pemeliharaan Perangkat Lunak 3. Proses Pemeliharaan 4. Teknik untuk Pemeliharaan 5. Alat pemeliharaan perangkat lunak 1. Inisiasi dan Ruang Lingkup Definisi 2. Perencanaan Proyek Perangkat Lunak 3. Pengesahan Proyek Perangkat Lunak 4. Ulasan dan Evaluasi 5. Penutupan 6. Pengukuran Rekayasa Perangkat Lunak 7. Alat Manajemen Rekayasa Perangkat Lunak 8. Partisipasi tim 9. Estimasi usaha 10. Risiko 11. Manajemen tim 12. Manajemen proyek 13. Pengukuran perangkat lunak dan teknik estimasi 14. Jaminan kualitas perangkat lunak dan peran pengukuran 15. Pendekatan system-wide terhadap risiko termasuk bahaya yang berhubungan dengan alat-alat 1. Definisi Proses Perangkat Lunak 2. Siklus Hidup Perangkat Lunak 3. Pengenalan model proses perangkat lunak 4. Konsep kualitas perangkat lunak 5. Pemrograman besar vs pemrograman individu 6. Evaluasi model proses perangkat lunak 7. Capability maturity model proses perangkat lunak 8. Sistem tingkat pertimbangan 9. Proses Penilaian dan peningkatan perangkat lunak 10. Alat Proses Rekayasa perangkat lunak 11. Pengukuran proses perangkat lunak
1. Pengujian dan Penjaminan Kualitas Perangkat Lunak
1. Sistem informasi
1. Manajemen proyek Perangkat Lunak 2. Proyek 1 3. Proyek 2 4. Proyek 3 5. Skripsi 6. Kerja Praktek 7. Pengujian dan Penjaminan Kualitas Perangkat Lunak
1. Pengembangan perangkat lunak berorientasi objek 2. Pemrograman Berorientasi Objek 3. Pemrograman perangkat bergerak 4. Pemrograman web 1 5. Pemrograman web 2 6. Artificial Intelligence
9
10
11
12
1. Pemodelan 2. Jenis Model 3. Analisis Model 4. Metode Rekayasa Perangkat Lunak 5. analisis formal dalam siklus pengembangan perangkat lunak 6. Program bahasa penegasan (asersi) dan pendekatan analisis 7. Pendekatan formal untuk pemodelan perangkat lunak dan analisis (model checker dan finder) 8. Alat yang mendukung metode formal 1. Kualitas Perangkat Lunak Fundamental 2. Proses Manajemen Mutu Perangkat Lunak 3. Pertimbangan teknis 4. Alat Kualitas perangkat lunak
1. Pemodelan Perangkat Lunak 2. Pemrograman Komputer 3. Analisis & desain perangkat lunak
1. Teknik Pemecahan Masalah 2. Abstraksi 3. Dasar-dasar pemrograman 4. Dasar-dasar Bahasa Pemrograman 5. Alat dan teknik Debugging 6. Struktur data dan representasi 7. Algoritma dan kompleksitas 8. Konsep dasar dari sistem 9. Organisasi komputer 10. Dasar Sistem Operasi 11. Dasar compiler 12. Dasar-dasar database dan manajemen data 13. Dasar-dasar jaringan komunikasi 14. Komputasi parallel dan terdistribusi 15. Basic User Human Factors 16. Basic Developer Human Factors 17. Pengembangan dan Pemeliharaan keamanan perangkat lunak
1. Pengujian & Penmaminan Kualitas Perangkat Lunak 2. Metodologi Penelitian 3. Pemrograman komputer 4. Struktur Data & Analisis Algoritma 5. Pengantar Algoritma 6. Pengantar sistem komputer 7. Arsitektur computer 8. Sistem Operasi 9. Sistem basis data 10. Sistem terdistribusi 11. Jaringan komputer 12. Keamanan sistem
1. Set, Relasi, Fungsi 2. Logika Dasar 3. Teknik Pembuktian 4. Dasar-dasar dari Counting 5. Grafik
1. Pengujian & Jaminan Mutu Perangkat Lunak 2. Metodologi Penelitian
1. Kalkulus 1 2. Kalkulus 2 3. Diskrit 1 4. Diskrit 2 5. Aljabar Linear
13
14
15
16
1. Metode Empiris dan Teknik Eksperimental 2. Analisis Statistik 3. Pengukuran 4. Desain Teknik 5. Pemodelan, Prototyping, dan simulasi 6. Standars 7. Analisis Permasalahan
1. Probabilitas & Statistika 2. Grafika Komputer 3. Pemodelan Perangkat Lunak
1. Manajemen konfigurasi perangkat lunak dan kontrol versi 2. Manajemen rilis 3. Analisis kebutuhan dan alat pemodelan desain 4. Alat pengujian termasuk alat analisis statis dan dinamis 5. Lingkungan pemrograman 6. Konsep dan mekanisme integrasi alat 1. Konsep Verifikasi dan Validasi 2. Inspeksi, review, audit 3. Jenis pengujian 4. Pengujian fundamental 5. Defect tracking 6. Keterbatasan pengujian pada domain tertentu 1. Konsep rekayasa keandalan perangkat lunak 2. Keandalan perangkat lunak, keandalan sistem dan perilaku kesalahan 3. Konsep dan teknik siklus hidup kesalahan
1. Manajemen proyek perangkat lunak 2. Analisis kebutuhan perangkat lunak 3. Pemodelan perangkat lunak 4. Pengujian & Jaminan Mutu Perangkat Lunak
1. Pengujian &Penjaminan Kualitas Perangkat Lunak
1. Pengujian &Penjaminan Kualitas Perangkat Lunak
D. Pohon Kurikulum Program Studi D-IV Rekayasa Perangkat Lunak
BAB IV SUSUNAN MATA KULIAH A. Semester 1 Kode No Mata Kuliah 1 SE10322 2 SE11012 3 SE11022
SKS
Jml SKS
Teori
Bahasa Inggris Fundamental Diskrit & Aljabar Kombinatorial 1 Kalkulus 1
2 2 2
1 2 2
Nama Mata Kuliah
Jam / Minggu
Total Praktek Teori Praktek Mandiri Jam 1 2 2 2 2 2 2 2 2 2
4
SE11313
Pengantar Teknologi Informasi & Komunikasi
3
2
1
2
3
2
5
5 6 7 8
SE11033 SE11043 SE11053 SE10472
Pemrograman Komputer Pengantar Algoritma Pengantar Sistem Komputer Pendidikan Agama Total Jam / SKS per minggu Total Jam / SKS per minggu
3 3 3 2
1 2 2 2 14
2 1 1
1 2 2 2 15
5 3 3
2 2 2 2 16 16
6 5 5 2
B. Semester 2 Kode No Mata Kuliah 1 SE20332 2 SE21062 3 SE21072 4 SE23083 5 SE22094 6 SE22104 7 SE21113
Nama Mata Kuliah Bahasa Inggris Scientific Diskrit & Aljabar Kombinatorial 2 Kalkulus 2 Sistem Basis Data Pemrograman Berorientasi Objek Struktur Data & Algoritma Arsitektur Komputer Total Jam / SKS per minggu
6 20
Jml SKS 2 2 2 3 4 4 3
SKS Teori 1 2 2 2 2 2 2 13
14 29
Jam / Minggu
45
Total Praktek Teori Praktek Mandiri Jam 1 1 3 2 4 2 2 2 2 2 2 1 2 3 2 5 2 2 5 2 7 2 2 5 2 7 1 2 3 2 5 7 19 14 46 13
20
Total Jam / SKS per minggu C. Semester 3 Kode No Mata Kuliah 1 SE31123 2 SE31132 3 SE31213 4 SE33153 5 SE31163 6 SE31173 7 SE31183
D. Semester 4 Kode No Mata Kuliah
Nama Mata Kuliah Pemrograman Mobile Aljabar Linear Pemrograman Web 1 Manajemen Sistem Basis Data Pemodelan Perangkat Lunak Analisis & Desain Perangkat Lunak Sistem Operasi Total Jam / SKS per minggu Total Jam / SKS per minggu
Nama Mata Kuliah
1
SE41194
2 3 4
SE41203 SE41213 SE41223
Pengujian & Penjaminan Kualitas Perangkat Lunak Proyek 1 Pemrograman Web 2 Metode Numerik
5
SE41233
Pemrograman Perangkat Lunak Object Oriented
6
SE42343
Jaringan Komputer Total Jam / SKS per minggu Total Jam / SKS per minggu
Jml SKS 3 2 3 3 3 3 3
32
14
SKS
Jam / Minggu
SKS
Jam / Minggu
Total Teori Praktek Teori Praktek Mandiri Jam 1 2 1 5 2 6 2 2 2 2 2 1 2 3 2 5 2 1 2 3 2 5 1 2 1 5 2 6 1 2 1 5 2 6 2 1 2 3 2 5 11 9 24 14 11 49 20 35 14
Jml SKS
Total Praktek Teori Praktek Mandiri Jam
Teori
4
2
2
3 3 3
2
5
2 2
3 1 1
3
1
3
2 9 19
2
7
2 2
9 3 3
2 2
9 5 5
2
1
5
2
6
1 10
2
3 28
2 10 10
5
9 37
47
D. Semester 5 Kode No Mata Kuliah 1 SE51243 2 SE51253
Nama Mata Kuliah
Jml SKS
SKS Teori
Manajemen Proyek Perangkat Lunak Proyek 2
3 3
2
3
SE51263
Konstruksi & Evolusi Perangkat Lunak
3
1
4 5 6 7
SE51272 SE51373 SE51363 SE51353
Probabilitas & Statistika Grafika Komputer Interaksi Manusia & Komputer Keamanan Sistem Total Jam / SKS per minggu Total Jam / SKS per minggu
2 3 3 3
2 2 2 2 11
E. Semester 6 Kode No Mata Kuliah 1 SE61433 2 SE61283 3 SE61423 4 SE61413 5 SE61403 6 SE61393 7 SE60382
Nama Mata Kuliah Pengolahan Citra Digital Proyek 3 Metodologi Penelitian Sistem Terdistribusi Sistem Informasi Artificial Intelligence Bahasa Inggris Profesional Total Jam / SKS per minggu Total Jam / SKS per minggu
Praktek Teori Praktek Mandiri 1 2 3 2 3 9
20
Jml SKS 3 3 3 3 3 3 2
Jam / Minggu
SKS
2
1
1 1 1 9
2 2 2 2 11
5 3 3 3 26 37
Jam / Minggu
Total Jam 5 9
2
6
2 2 2
2 5 5 5
10 10
47
Total Teori Praktek Teori Praktek Mandiri Jam 1 2 1 5 2 6 3 9 9 3 3 2 3 1 2 1 5 2 6 2 1 2 3 2 5 2 1 2 3 2 5 1 1 1 3 2 4 10 10 28 12 10 48 20 38 10
F. Semester 7 Kode No Mata Kuliah 1 SE70503 2 SE70493 3 SE70483 4 SE71443 5
SE71295
Teori
Pancasila Kewarganegaraan Bahasa Indonesia Sistem Multimedia
3 3 3 3
2 2 1 2
Program Praktik Industri (kerja Praktek)
5
Nama Mata Kuliah Skripsi Etika Profesi Kewirausahaan Total Jam / SKS per minggu Total Jam / SKS per minggu
Jam / Minggu
Praktek Teori Praktek Mandiri 2 2 2 2 1 1 3 2 1 2 3 1 5
7
Total Jam / SKS per minggu Total Jam / SKS per minggu G. Semester 8 Kode No Mata Kuliah 1 SE81306 2 SE81462 3 SE81452
SKS
Jml SKS
Nama Mata Kuliah
7 14
Jml SKS 6 2 2
15
35
Jam / Minggu
Total Teori Praktek Teori Praktek Mandiri Jam 6 18 18 2 2 2 2 2 2 3 2 5 4 6 21 4 4 29 10 25 4 JAM
SKS TOTAL JAM / SKS TOTAL JAM / SKS KESELURUHAN PROSENTASE TEORI DENGAN PRAKTEK
7 7
28
SKS
2 2 4 5 15
21
7
Total Jam
79 55.24%
64 143 44.76%
80
181 261
30.65%
4176 69.35%
BAB V DESKRIPSI MATA KULIAH
A. SEMESTER 1 1. Bahasa Inggris Fundamental (SE10322) Mata kuliah ini bertujuan untuk mengembangkan pemahaman dasar bahasa Inggris para mahasiswa dengan melatih dan mengasah kemampuan grammar/structure, dan reading. Dan mengasah kemampuan komunikatif pada situasi sehari-hari (survival situation). Materinya mencakup Introduction, Vocabulary unutk percakapan seharihari, English at Shooping, transportation, restauran, reservation dan lain-lain. Selanjutnya, grammar/structure yang diajarkan di kelas lebih cenderung pada penerapannya dalam kehidupan sehari-hari. 2. Diskrit & Aljabar Kombinatorial 1 (SE11012) Topik Matakuliah ini meliputi Logika dan Pembuktian, Himpunan, Fungsi dan Relasi, Induksi Matematika, Teori Bilangan dan Cryptography, Kombinatorial. 3. Kalkulus 1 (SE11022) Mata kuliah Kalkulus 1 ditujukan untuk memberikan pengetahuan terkait dasar-dasar kalkulus yang diperlukan dalam tingkat sarjana program studi teknik informatika. Materi yang diberikan di antaranya adalah sistem bilangan real, fungsi, limit dan kekontinuan, turunan dan aplikasinya, integral dan aplikasinya. 4. Pengantar Teknologi Informasi & Komunikasi (SE11313) Mata kuliah ini memberikan kecakapan dasar teknologi informasi untuk kehidupan akademik dan profesi. Materi mencakup pengenalan teknologi informasi, etika penggunaan teknologi, sistem komputer, organisasi komputer, jaringan komunikasi, isu-isu sosial dan teknikal, dan kemampuan berpikir komputasional melalui dasar pemrograman dalam paradigma prosedural. Dan beberapa hal dasar dan esensial tentang pengertian dan hakikat informasi dan teknologi informasi. Pengertian dan hakikat teknologi komunikasi, serta hakikat teknologi informasi dan komunikasi. Prosedur penggunaan MS Word, MS Power Point, MS Excel: mulai dari membuka program, perintah-perintah pengolah data, mencetak dokumen, dan menutup program. TIK berbasis computer mulai dari konsep dasar sampa pengembangan model-
modelnya. Wawasan tentang internet dan kemampuan pencarian dan pengelolaan informasi melalui internet. Wawasan tentang Blended learning, Pembelajaran berbasis web dan pengelolaan laboratorium Teknologi Informasi dan Komunikasi. 5. Pemrograman Komputer (SE11033) Pengantar pemecahan masalah dan pemrograman computer menggunakan teknik berorientasi objek. Aspek teoritis dan praktis pemrograman dan pemecahan masalah. Menjelaskan dasar dari langkah-langkah dalam pemrograman dimana diberikan tahapan secara struktural dalam memecahkan masalah pemograman. Materi mencakup membuat flowchart program beserta pseudocode, mulai dari proses perhitungan sederhana, branching, looping, array, matriks sampai penanganan data dengan simbolsimbol flowchart. Pengantar pemrograman prosedural dan berorientasi objek dengan penekanan pada pemecahan masalah. Konsep pemrograman prosedural dibahas meliputi jenis data, variabel, struktur kontrol, array, dan data I/O. Konsep pemrograman berorientasi objek yang dibahas meliputi pembuatan objek dan penggunaan objek, interaksi objek, dan desain kelas sederhana. Konsep rekayasa perangkat lunak yang dibahas meliputi pengujian, pengembangan tambahan, pemahaman requirement, dan kerjasama team. 6. Pengantar Algoritma (SE11043) The Role of Algorithms in Computing: Getting Started, Growth of Functions, Divideand-Conquer, Probabilistic Analysis and Randomized Algorithms; Sorting: Heapsort, Quicksort, Sorting in Linear Time, Greedy Algorithms, Topik khusus dalam algoritma seperti multithreaded algorithms atau linear programming. 7. Pengantar Sistem Komputer (SE11053) Memberikan mahasiswa pemahaman tentang isu-isu tingkat sistem dan dampaknya terhadap desain dan penggunaan sistem komputer. Pemeriksaan kedua lapisan hardware dan software. Struktur perhitungan dasar dan logika digital. Representasi dari instruksi, bilangan bulat, bilangan floating point dan jenis data lainnya. Persyaratan sistem, seperti manajemen sumber daya, keamanan, komunikasi dan sinkronisasi, dan implementasi perangkat lunak dan / atau perangkat keras. Eksplorasi multiprosesor dan sistem terdistribusi. Topik dalam matakuliah ini dieksplorasi menggunakan berbagai tugas dan proyek.
8. Pendidikan Agama (SE10472) Mata kuliah ini membahas tentang konsep penciptaan manusia di muka bumi ini, kaitan manusia dan agama dengan penekanan aqidah, syariah dan ibadah serta konsep hablum minallah dan hablum minannas serta kaitan Islam dengan way of life dalam seluruh aspek kehidupan manusia, seperti pembentukan keluarga dan pembentukan akhlak dalam islam dan perekonomian menurut Islam. B. SEMESTER 2 1. Bahasa Inggris Scientific (SE20332, Prasyarat: SE10322) Agar mahasiswa mempunyai kemampuan untuk membaca dan berbicara dalam bahasa Inggris. Reading yang diperoleh mahasiswa lebih cenderung pada pengembangan keahlian mahasiswa dalam menentukan main idea, reference, word meanings based upon the context, explicit, dan implicit information. Untuk materi reading, metode yang digunakan adalah Numbered Heads Together sedangkan Materi lainnya terkait kemampuan berbicara mencakup Monolog, dialog, diskusi, mengajukan lamaran, wawancara dan contoh-contoh frasa yang biasa. 2. Diskrit & Aljabar Kombinatorial 2 (SE21062, Prasyarat: SE11012) Topik matakuliah meliputi Rekursi dan relasi rekurens, graf, pohon, aljabar Boolean, Kompleksitas Algoritma. 3. Kalkulus 2 (SE21072, Prasyarat: SE11022) Mata kuliah Kalkulus 2 merupakan lanjutan mata kuliah Kalkulus 1. Materi yang diberikan diantaranya fungsi transenden, teknik pengintegralan, integral tak wajar, barisan dan deret, persamaan diferensial biasa dan aplikasinya. 4. Sistem Basis Data (SE23083, Prasyarat: SE11043) Sistem database relasional, dengan penekanan pada diagram hubungan entitas data modeling. Sifat dan peran transaksi. SQL untuk definisi data dan data manipulasi. Gunakan API kontemporer untuk akses ke database. Contoh perusahaan yang tersedia dari beberapa aplikasi domain. Pengaruh desain pada penggunaan indeks, pandangan, urutan, bergabung, dan pemicu. Fisik struktur data tingkat: B+ trees dan RAID. Survey database objek. 5. Pemrograman Berorientasi Objek (SE22094, Prasyarat: SE11033) Pemecahan masalah, desain dan pemrograman berorientasi objek. Pengantar struktur
data, desain algoritma dan kompleksitas. 6. Struktur Data & Algoritma (SE22104, Prasyarat: SE11043) Matakuliah ini memperkuat dan memperluas pemahaman mahasiswa saat praktek produksi perangkat lunak berorientasi objek. Memperluas pemahaman mahasiswa tentang penggunaan proses desain termasuk formal analysis of space/time efficiency and formal proofs of correctness. Materi meliputi Elementary Data Structures, Hash Tables, Binary Search Trees, Augmenting Data Structures, Elementary Graph Algorithms, Minimum Spanning Trees, Shortest Paths, dan topic khusus dalam struktur data. Mahasiswa merancang dan mengimplementasikan software secara individual, dalam kelompok kecil, dan dalam multi-week team proyek. 7. Arsitektur Komputer (SE21113, Prasyarat: SE11053) Implementasi dan arsitektur set instruksi komputer. Topik tertentu termasuk perspektif sejarah, evaluasi kinerja, organisasi komputer, format instruksi, mode pengalamatan, aritmatika komputer, desain ALU, representasi floating-point, jalur data single-cycle dan multi-cycle, dan control prosesor. Pemrograman bahasa assembly digunakan sebagai sarana untuk mengeksplorasi set intruksi arsitektur. Proyek akhir melibatkan desain lengkap dan implementasi prosesor set instruksi miniscule. C. SEMESTER 3 1. Pemrograman Mobile (SE31123, Prasyarat: SE23083) Mata kuliah ini memberikan pemahaman dan keahlian bagi mahasiswa dalam membuat dan mengembangkan aplikasi mobile berbasis Android dan/atau iOS. 2. Aljabar Linear (SE31132, Prasyarat: SE21062) Sistem Persamaan Linear, Matriks dan Vektor, Invers Suatu Matriks, Determinan Suatu Matriks, Ruang Euclid, Vektor-vektor yang membangun dan Bebas Linear. 3. Pemrograman Web 1 (SE31213, Prsyarat: SE23083) Mata kuliah ini membahas tentang Keterlibatan perangkat keras (hardware) dan perangkat lunak (software) dalam pengembangan web dan pembuatan halaman web menggunakan javascript, PHP dan MySQL. 4. Manajemen Sistem Basis Data (SE33153, Prasyarat: SE23083) Mata kuliah ini memberikan pengetahuan mengenai pengelolaan basis data, mencakup peningkatan performansi basis data, manajemen kemanan dan transaksi, pemrograman
basis data, dan pengelolaan terdistribusi. Model database yang modern; konsep dasar manajemen database; query language; desain database melalui normalisasi; model database canggih; pengalaman pembangunan database yang luas dalam lingkungan team. 5. Pemodelan Perangkat Lunak (SE31163, Prasyarat: SE21062) Pengantar penggunaan model matematika untuk spesifikasi dan validasi sistem perangkat lunak. Topiknya meliputi model finite state machine, model sistem bersamaan, verifikasi model, dan keterbatasan teknik sistem perangkat lunak. 6. Analisis & Desain Perangkat Lunak (SE31173, Prasyarat: SE22104) Konsep dasar dan prinsip-prinsip kebutuhan rekayasa perangkat lunak, teknik dan toolsnya, dan metode untuk pemodelan sistem perangkat lunak. Topiknya meliputi kebutuhan elisitasi, protyping, kebutuhan fungsional dan non-fungsional, teknik berorientasi objek, dan kebutuhan pelacakan (tracking). Pengantar desain sistem perangkat lunak yang lengkap, membangun komponen dan pola. Topiknya meliputi prinsip-prinsip dan alternatif arsitektur, dokumentasi desain, dan hubungan antara tingkat abstraksi. 7. Sistem Operasi (SE31183, Prasyarat: SE21113) Sejarah perkembangan sistem operasi untuk mengontrol sistem komputasi yang kompleks; manajemen proses, komunikasi, teknik penjadwalan; File konsep sistem dan operasi; komunikasi data, manajemen proses terdistribusi. D. SEMESTER 4 1. Pengujian & Penjaminan Kualitas Perangkat Lunak (SE41194, Prasyarat: SE31163) Teori dan praktek menentukan apakah suatu produk sesuai dengan spesifikasi dan penggunaan tujuan. Topiknya meliputi metode jaminan kualitas perangkat lunak, rencana dan strategi tes, pengujian tingkat unit dan tingkat sistem, keandalan software, metode peer review, dan tanggung jawab control konfigurasi dalam jaminan kualitas, metode dan jenis pengujian, verifikasi dan validasi, proses dan teknik jaminan kualitas, dan proses evaluasi ISO 9000/SEI CMM. 2. Proyek 1* (SE41203, Prasyarat: SE31173)
3. Pemrograman Web 2 (SE41213, Prasyarat: SE31213) Mata kuliah ini membahas tentang pemrograman web berbasis framework. Materi mencakup pengenalan web framework, OOP dalam pemrograman web, OOP dalam Web Database, Konsep MVC (Model, View, Controller), Keamanan Aplikasi, Penanganan file dan image, pembuatan grafik, penerapan AJAX dan JQuery dalam Web Framework, konversi Data, Template Engine dengan SMARTY, dan Studi Kasus: pengembangan project. 4. Metode Numerik (SE41223, Prasyarat: SE31132, SE21072) Matakuliah Metode Numerik mencakup materi tentang galat dalam hampiran numerik, penyelsaian sistem persamaan linier secara numerik, hampiran akar persamaan tak linier secara numerik, interpolasi, penurunan dan pengintegralan secara numerik, dan penyelesaian persamaan diferensial biasa (masalah nilai awal) secara numerik. Beberapa metode numerik untuk menyelesaikan masalah matematika diperkenalkan dalam matakuliah ini dan mahasiswa belajar menggunakan berbagai alternatif penyelesaian masalah matematika secara numerik, berlatih berfikir secara sistematis dan algoritmik - yakni menyelesaikan masalah langkah demi langkah untuk menarik suatu kesimpulan. 5. Pemrograman Perangkat Lunak Obejct Oriented (SE41233, Prasyarat: SE22094, SE33153) Konsep pemrograman berorientasi objek, termasuk penggunaan inheritance, antarmuka, polymorphism, tipe data abstrak, dan encapsulation untuk memungkinkan penggunaan kembali perangkat lunak dan membantu dalam perawatan perangkat lunak. Rekursi, GUI dan event handing. Penggunaan struktur data berdasarkan objek umum, termasuk tumpukan (stack), antrian (list), tree, set, peta dan tabel hash. Analisis efisiensi ruang/waktu. Pengujian. Pengantar UML. 6. Jaringan Komputer (SE42343, Prasyarat: SE31183) Pengantar 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.
E. SEMESTER 5 1. Manajemen Proyek Perangkat Lunak (SE51243, Prasyarat: SE41194) Isu utama dan teknik manajemen proyek. Evaluasi dan seleksi proyek, ruang lingkup manajemen, team building, manajemen stakeholder, penilaian risiko, penjadwalan, kualitas, pengerjaan ulang, negosiasi, dan termasuk manajemen konflik. Masalah professional termasuk perencanaan karir, belajara sepanjang hayat, etika rekayasa perangkat lunak, dan perizinan dan sertifikasi perangkat lunak professional. 2. Proyek 2* (SE51253, Prasyarat: SE41203, SE41194, SE41233, SE41213) 3. Konstruksi dan Evolusi Perangkat Lunak (SE51263, Prasyarat: SE31173, SE41233) Isu, metode dan teknik yang terkait dengan konstruksi perangkat lunak. Topiknya meliputi metode dan notasi desain secara rinci, implementasi tool, standard dan style coding, teknik peer review, dan masalah maintenance. 4. Probabilitas & Statistika (SE51272, Prasyarat: SE41223, SE21072) Statistic deskriptif, peluang, peubah acak, Teorema Markov dan Chebyshev, distribusi diskrit, distribusi kontinyu, penaksiran, uji hipotesis, regresi linear. 5. Grafika Komputer (SE51373, Prasyarat: SE41213) 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. 6. Interaksi Manusia dan Komputer (SE51363, Prasyarat: SE31173) Mata kuliah ini memberikan pembelajaran bahwa manusia sebagai sumberdaya terpenting dalam membangun sistem dan juga manusia yang harus diperhatikan karena sistem yang dibangun tersebut digunakan oleh manusia juga pada akhirnya. 7. Keamanan Sistem (SE51353, Prasyarat: SE42343) Mahasiswa mampu memahami tentang pengertian keamanan, pengertian sistem dan pengertian keamanan sistem, evaluasi keamanan sistem, mengamankan sistem informasi, keamanan email, keamanan web, eksploitasi keamanan sistem, cyber law, keamanan sistem wireless. Sekuriti dan Teknologi Pengamanan Jaringan: sniffing, penetration testing, spoofing, man in the middle attack, intrusion detection.
F. SEMESTER 6 1. Pengolahan Citra Digital (SE61433, Prasyarat: SE41223, SE51373) Model formasi citra, fitur dan pemrosesan citra, estimasi motion, segmentasi dan representasi bentuk, pengenalan object. 2. Proyek 3* (SE61283, Prasyarat: SE51253, SE51243) 3. Metodologi Penelitian (SE61423, Prasyarat: SE51272) Matakuliah Metodologi Penelitian ini bertujuan untuk membekali para mahasiswa pengetahuan, pemahaman dan penerapan berbagai metode penelitian dalam rangka penyusunan skripsi. Dalam perkuliahan dibahas berbagai jenis penelitian, langkahlangkah penelitian ilmiah mulai dari penentuan topic, identifikasi permasalahan, ulasan kepustakaan, penentuan fokus masalah, penentuan variabel, disain dan metode, teknik pengumpulan data, analisis dan penarikan kesimpulan. 4. Sistem Terdistribusi (SE61413, Prasyarat: SE51363) Mata kuliah ini memberikan mahasiswa pemahaman tentang konsep dasar sistem terdistribusi, komunikasi antar komponen dan konsep pemrosesan dalam sistem terdistribusi, bagaimana sistem operasi berkerja dalam sistem terdistribusi, model dasar untuk file service, name service, time & coordination, share data & transaction, distributed database management, parallel processing, dan security. 5. Sistem Informasi (SE61403, Prasyarat: SE51363) Matakuliah ini memberikan mahasiswa pemahaman tentang bagaimana menganalisa dan merancang/mendesain sistem informasi sehingga dapat mengelola informasi dalam suatu organisasi atau perusahaan. Materinya meliputi Pengantar, Metodologi Sistem Informasi, Pengembangan Sistem Informasi, Pembuatan BAD, DAD dan Kamus Data, contoh a small business system, system design, feasibility study, detailed design, implementasi Studi Kasus : hingga pembuatan Kamus Data. 6. Artificial Intelligence (SE61393, Prasyarat: SE41223) Mata kuliah ini memberikan pemahaman terhadap konsep dasar kecerdasan buatan sehingga mahasiswa dapat memahami konsep dari kecerdasan buatan. Selain itu juga dibahasa bebagai macam bidang dalam kecerdasan buatan beserta aplikasinya dalam dunia nyata.
7. Bahasa Inggris Profesional (SE60382, Prasyarat: SE20332) Mata kuliah ini bertujuan untuk mengembangkan pemahaman dasar bahasa Inggris para mahasiswa dengan melatih dan mengasah kemampuan speaking skills serta skill bahasa Inggris lainnya jika memungkinkan. Mengenai speaking skill, mahasiswa dilatih percakapan dasar dalam tatanan kehidupan sehari-hari. Untuk materi speaking metode yang digunakan adalah Role-Play. Materi lainnya terkait speaking skills mencakup Monolog, dialog, diskusi, mengajukan lamaran, wawancara dan contohcontoh frasa yang sesuai dengan bidang rekayasa perangkat lunak. G. SEMESTER 7 1. Pancasila (SE70503) Mata kuliah Pancasila mempelajari tentang Filsafat Pancasila, Kedudukan dan Fungsi Pancasila sebagai pandangan Hidup Bangsa, Pancasila merupakan ideologi dan dasar falsafah Negara, hubungan Pancasila dengan UUD 1945 serta pengamalan Pancasila dalam Kehidupan Bermasyarakat, Berbangsa dan bernegara. 2. Kewarganegaraan (SE70493) Kewarganegaraan sebagai kelompok mata kuliah pengembangan kepribadian (MPK) di perguruan tinggi berfungsi sebagai orientasi mahasiswa dalam memantapkan wawasan dan semangat kebangsaan, cinta tanah air, demokrasi, kesadaran hukum, penghargaan atas keragaman dan partisipasinya membangun bangsa berdasar Pancasila. 3. Bahasa Indonesia (SE70483) Menjadikan bahasa Indonesia sebagai salah satu sarana pengembangan kepribadian insan terpelajar yang mahir berkomunikasi dalam Bahasa Indonesia dengan santun. 4. Sistem Multimedia (SE71443, Prasyarat: SE61433, SE61413, SE61403) 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. 5. Program Praktik Industri (Kerja Praktek) (SE71295, Prasyarat: SE61403, SE61393, SE60382) Mata kuliah ini memberikan mahasiswa kemampuan dalam mengaplikasikan pengetahuan yang telah dipelajari di perkuliahan untuk memecahkan masalah dalam
bidang teknologi informasi atau rekayasa perangkat lunak. Mahasiswa memiliki pengalaman kerja di perusahaan dan organisasi sistem IT dan bidang rekayasa perangkat lunak. H. SEMESTER 8 1. Etika Profesi (SE81462) Mata kuliah ini memberikan pemahaman terhadap konsep bagaimana Etika Profesi dalam bidang pekerjaan rekayasa perangkat lunak dan Teknologi Informasi dalam lingkungan yang ada dan sesuai dengan peraturan perundang-undangan yang berlaku di Negara ini. Dan memberikan pemahaman mengenai dampak pemanfaatan teknologi informasi, etika penggunaan teknologi informasi, hak-hak atas informasi, Etika IT di perusahaan, Kriminalitas di Internet, kerangka hukum bidang teknologi informasi dan UU ITE di Indonesia. 2. Skripsi (SE81306, Prasyarat: SE70503, SE70493, SE70483, SE71443, SE71295, SE61423, SE60382, SE10472) Mata kuliah ini memberikan mahasiswa kemampuan merangkum dan mengaplikasikan semua pengalaman pendidikan untuk memcahkan masalah dalam bidang keahlian/bidang studi rekayasa perangkat lunak secara sistematis dan logis, kritis dan kreatif, berdasarkan data/informasi yang akurat dan didukung analisis yang tepat, dan menuangkannya dalam bentuk penulisan karya ilmiah. 3. Kewirausahaan (SE81452) Tujuan utama dari mata kuliah ini adalah membekali mahasiswa dengan berbagai kemampuan dalam menyusun dan mengimplementasikan rencana bisnis dalam bidang Rekayasa Perangkat Lunak (software engineering/SE). Metode perkuliahan secara garis besar terbagi ke dalam 4 (empat) bagian, yakni (i) pengantar bisnis, (ii) analisis situasi bisnis, (iii) pengembangan rencana bisnis di bidang rekayasa perangkat lunak, dan (iv) penyusunan proposal proyek serta persentasi. Keterangan: *) Proyek 1 – 3: Kelompok rekayasa perangkat lunak membutuhkan penyelesaian sistem perangkat lunak untuk disetujui klien. Tugasnya meliputi perencanaan proyek, analisis risiko, penggunaan standar, prototyping, manajemen konfigurasi, jaminan kualitas (QA), review dan laporan proyek, manajemen team dan organisasi, hak cipta, kewajiban (liability) dan kegagalan penanganan proyek.