Enrolment options

Tahun Akademik:
Genap 2023/2024
Kelas-Offr:
A-A1
Deskripsi:
Matakuliah ini membekali mahasiswa dengan pengetahuan tentang konsep-konsep rekayasa perangkat lunak (PL) yang dapat diaplikasikan dalam daur hidup pengembangan perangkat lunak (PL), yang menitikberatkan pada: manajemen dan proses pengembangan, analisis kebutuhan, desain dan implementasi, pemeliharaan dan pengujian, serta peran CASE tools dalam pengembangan perangkat lunak (PL).
Capaian Pembelajaran
  • • Menelaah evolusi PL, prespektif industri, usia PL, karakteristik PL, komponen dan aplikasi PL, persoalan dan krisis PL, paradigma rekayasa PL (classic, prototyping, spiral, FGT, dan kombinasi);
  • • Merumuskan matriks PL: pengukuran dan metrik, estimasi, analisis resiko, penjadwalan, pengendalian, metrik berorientasi ukuran dan fungsi, overview faktor kualitas, pengukuran kualitas, pengumpulan metrik, serta komputasi dan evaluasi;
  • • Merencanakan estimasi manajemen proyek: scope PL, sumber daya (PK, PL, manusia, dan reusability) estimasi proyek PL, teknik dekomposisi (LOC, FO, estimasi upaya), model estimasi empiris (COCOMO, Putnam, function-point), serta tool otomatis untuk estimasi proyek;
  • • Merumuskan konsep rekayasa sistem komputer: sistem berbasis komputer, rekayasa sistem komputer, analisis sistem, pemodelan dan arsitektur sistem, serta spesifikasi sistem;
  • • Merumuskan dasar-dasar analisis kebutuhan: analis dan tugas-tugas analisis, Teknik komunikasi, prinsip-prinsip analisis, prototipe PL, serta spesifikasi PL;
  • • Merencanakan analisis terstruktur: notasi dasar dan eksistensinya (ekstensi sistem waktu nyata, ekstensi Ward dan Mellor, pemodelan kelakuan, ekstensi aplikasi berbasis data), prosedur analisis terstruktur, serta kamus kebutuhan;
  • • Menyusun analisis dan pemodelan berorientasi objek: konsep dasar, pemodelan analisis berorientasi objek, serta pemodelan data;
  • • Merumuskan dasar-dasar desain PL: proses desain, dasar-dasar desain, desain moduler, desain data, arsitektur desain, desain prosedural, serta dokumentasi desain;
  • • Merancang desain berorientasi aliran data: desain dan aliran informasi, pertimbangan proses desain, analisis transform, analisis transaction, pertimbangan heuristik, pasca-proses desain, serta optimasi desain;
  • • Merancang desain berorientasi objek: konsep dasar, metode-metode desain, definisi class dan object, operasi pada objek, antarmuka dan komponen program, notasi, desain detail implementasi, serta strategi desain;
  • • Memilih bahasa pemrograman dan pengkodean: karakteristik bahasa pemrograman, dasar bahasa pemrograman, klasifikasi bahasa pemrograman, gaya pengkodean, serta efisiensi;
  • • Meningkatkan jaminan kualitas PL: kualitas PL dan jaminan kualitas PL, metrik kualitas PL, reliabilitas PL, serta metode jaminan kualitas PL;
  • • Membandingkan teknik-teknik pengujian PL: dasar-dasar pengujian PL, pengujian white box, pengujian berbasis path, pengujian struktur kontrol, serta pengujian black box;
  • • Merencanakan strategi pengujian PL: metode pengujian PL, unit pengujian, pengujian terpadu, pengujian validasi, serta pengujian sistem;
  • • Menyiapkan pemeliharaan PL: definisi, maintainability, tugas pemeliharaan, pemeliharaan ‘side effects’, pemeliharaan ‘alien code’, reverse engineering, serta re-engineering
Daftar Pustaka:
  • • Ghezzi, Carlo dkk. 2003. Fundamentals of Software Engineering. Singapore: Prentice-Hall.
  • • Liong, Bruce dkk. 2004. Practical Software Engineering. Singapore: Pearson Education Asia.
  • • Pressman, Roger S. 2005. Software Engineering A Practition-er's Approach. Singapore: McGraw-Hill Education.
  • • Schach, Stephen R. 2005. Object Oriented and Classical Software Engineering. Singapore: McGraw-Hill Education.
  • • Sommerville, Ian. 2004. Software Engineering. Singapore: Pearson Education Asia.
Guests cannot access this course. Please log in.