Deskripsi Mata Kuliah Rekayasa Perangkat Lunak pada prinsipnya menekankan pada tahapan-tahapan pengembangan suatu perangkat lunak yakni: Analisis, Desain, Implementasi, Testing dan Maintenance. 17/03/2014 bayuandoro.com 2
Deskripsi Mata Kuliah (Lanjutan..) Pada tahap yang lebih luas Rekayasa Perangkat Lunak mengacu pada Manajemen Proyek pengembangan Perangkat Lunak itu sendiri dengan tetap memperhatikan tahapan-tahapan pengembangan sebelumnya. 17/03/2014 bayuandoro.com 3
Materi Kuliah RPL 1. Pendahuluan 2. Metodologi Pengembangan Perangkat Lunak 3. Manajemen Proyek Perangkat Lunak 4. Analisis Kebutuhan Perangkat Lunak 5. Spesifikasi Kebutuhan Perangkat Lunak 6. Perancangan Perangkat Lunak 7. Implementasi dan Pemeliharaan Perangkat Lunak 8. Pengujian Perangkat Lunak 9. Analisis dan Perancangan Berorientasi Objek 17/03/2014 bayuandoro.com 4
Tujuan Mata Kuliah Menjelaskan pengertian perangkat lunak, program, prosedur dan rekayasa perangkat lunak Memahami tujuan rekayasa perangkat lunak Memahami ruang lingkup rekayasa perangkat lunak Memahami posisi bidang rekayasa perangkat lunak pada disiplin ilmu komputer dan keterkaitannya dengan bidang ilmu lain 17/03/2014 bayuandoro.com 5
Tujuan Mata Kuliah (Lanjutan..) Mengetahui perkembangan ilmu rekayasa perangkat lunak Mengetahui profesi dan sertifikasi dalam bidang rekayasa perangkat lunak Menjelaskan prinsip-prinsip pemecahan masalah dalam rekayasa perangkat lunak 17/03/2014 bayuandoro.com 6
Kegiatan Perkuliahan Dilakukan dalam bentuk ceramah, tanya jawab, dan diskusi 17/03/2014 bayuandoro.com 7
Daftar Pustaka: Software Engineering A Practitioner's Approach Roger S. Pressman McGraw Hill http://www.mhhe.com/engcs/pressman/ 17/03/2014 bayuandoro.com 8
Daftar Pustaka: CMMI Guidelines for Process Integration and Product Improvement Mary Beth Chrissis Addison-Wesley 17/03/2014 bayuandoro.com 9
Daftar Pustaka: Handbook of Software Quality Assurance G. GordonSchulmeyer Prentice Hall 17/03/2014 bayuandoro.com 10
Daftar Pustaka: Software Quality Assurance Nina S. Godbole Alpha Science 17/03/2014 bayuandoro.com 11
Daftar Pustaka: Software Measurement and Estimation A Practical Approach Linda M. Laird, M. Carol Brennan Wiley 17/03/2014 bayuandoro.com 12
Pengertian Rekayasa Perangkat Lunak Istilah Rekayasa Perangkat Lunak (RPL) secara umum disepakati sebagai terjemahan dari istilah Software Engineering. Istilah Software Engineering mulai dipopulerkan tahun 1968 pada Software Engineering Conference yang diselenggarakan oleh NATO. Sebagian orang mengartikan RPL hanya sebatas pada bagaimana membuat program komputer. 17/03/2014 bayuandoro.com 13
Pengertian Rekayasa Perangkat Lunak Ada perbedaan yang mendasar antara perangkat lunak (software) dan program komputer. 17/03/2014 bayuandoro.com 14
Perbedaan Perangkat Lunak Program Prosedur Merupakan seluruh perintah yang digunakan untuk memproses informasi. Perangkat lunak dapat berupa program atau prosedur. Kumpulan perintah yang dimengerti oleh komputer Perintah yang dibutuhkan oleh pengguna dalam memproses informasi (O Brien, 1999). 17/03/2014 bayuandoro.com 15
Pengertian RPL Suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna, disain, pengkodean, pengujian sampai pemeliharaan sistem setelah digunakan. 17/03/2014 bayuandoro.com 16
Karakteristik RPL Perangkat lunak lebih dikenal sebagai elemen logis daripada fisik, oleh karena itu perangkat lunak memiliki karakteristik yang berbeda dari perangkat keras : 1. Perangkat lunak dikembangkan atau direkayasa, jadi tidak diproduksi dalam pengertian klasik. 2. Merupakan produk yang unik (tidak ada seri produksi). 17/03/2014 bayuandoro.com 17
Karakteristik RPL 1. Perangkat lunak tidak pernah akan rusak/aus karena selalu diperbaharui 2. Tidak terlihat (invisible). 3. Perangkat lunak pada umumnya dibangun sesuai keinginan, jadi tidak dibentuk dari komponen yang sudah ada. 4. Fleksibel, sehingga mudah dimodifikasi. 5. Dihubungkan (linked) dengan sistem komputer. 17/03/2014 bayuandoro.com 18
Tujuan RPL 17/03/2014 bayuandoro.com 19
Tujuan RPL 1. Memperoleh biaya produksi perangkat lunak yang rendah 2. Menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat waktu 3. Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform 4. Menghasilkan perangkat lunak yang biaya perawatannya rendah 17/03/2014 bayuandoro.com 20
Ruang Lingkup RPL (Abran et.al., 2004) 17/03/2014 bayuandoro.com 21
Ruang Lingkup RPL software Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak software desain mencakup proses penampilan arsitektur, komponen, antar muka, dan karakteristik lain dari perangkat lunak software construction berhubungan dengan detail pengembangan perangkat lunak, termasuk algoritma, pengkodean, pengujian dan pencarian kesalahan 17/03/2014 bayuandoro.com 22
Ruang Lingkup RPL software testing meliputi pengujian pada keseluruhan perilaku perangkat lunak software maintenance mencakup upayaupaya perawatan ketika perangkat lunak telah dioperasikan software configuration management berhubungan dengan usaha perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu 17/03/2014 bayuandoro.com 23
Ruang Lingkup RPL software engineering management berkaitan dengan pengelolaan dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak software engineering tools and methods mencakup kajian teoritis tentang alat bantu dan metode RPL software engineering process berhubungan dengan definisi, implementasi pengukuran, pengelolaan, perubahan dan perbaikan proses RPL software quality menitik beratkan pada kualitas dan daur hidup perangkat lunak 17/03/2014 bayuandoro.com 24
RPL dan Disiplin Ilmu Lain (ACM 1988) 17/03/2014 bayuandoro.com 25
RPL dan Disiplin Ilmu Lain bidang ilmu manajemen meliputi akuntansi, finansial, pemasaran, manajemen operasi, ekonomi, analisis kuantitatif, manajemen sumber daya manusia, kebijakan, dan strategi bisnis bidang ilmu matematika meliputi aljabar linier, kalkulus, peluang, statistik, analisis numerik, dan matematika diskrit 17/03/2014 bayuandoro.com 26
RPL dan Disiplin Ilmu Lain bidang ilmu manajemen proyek meliputi semua hal yang berkaitan dengan proyek, seperti ruang lingkup proyek, anggaran, tenaga kerja, kualitas, manajemen resiko dan keandalan, perbaikan kualitas, dan metode-metode kuantitatif bidang ilmu ergonomika menyangkut hubungan ( interaksi) antar manusia dengan komponen-komponen lain dalam sistem komputer 17/03/2014 bayuandoro.com 27
RPL dan Disiplin Ilmu Lain bidang ilmu rekayasa sistem meliputi teori sistem, analisis biaya-keuntungan, pemodelan, simulasi, proses, dan operasi bisnis 17/03/2014 bayuandoro.com 28
Perkembangan RPL Tahun Kejadian 1940an 1950an 1960an Komputer pertama yang membolehkan pengguna menulis kode program langsung Generasi awal interpreter dan bahasa macro Generasi pertama compiler Generasi kedua compiler Komputer mainframe mulai dikomersialkan Pengembangan perangkat lunak pesanan Konsep Software Engineering mulai digunakan 17/03/2014 bayuandoro.com 29
Perkembangan RPL Tahun 1970an 1980an 1990an 2000an Kejadian Perangkat pengembang perangkat lunak Perangkat minicomputer komersial Perangkat Komputer Personal (PC) komersial Peningkatan permintaan perangkat lunak Pemrograman berorientasi obyek (OOP) Agile Process dan Extreme Programming Peningkatan drastis kapasitas memori Peningkatan penggunaan internet Platform interpreter modern (Java,.Net, PHP, dll) Outsourcing 17/03/2014 bayuandoro.com 30
Metode RPL Kita Lanjutkan pada pertemuan ke-2 Ada pertanyaan, saya persilahkan... 17/03/2014 bayuandoro.com 31