520 likes | 1.17k Views
REKAYASA PERANGKAT LUNAK. Chapter 1 PENDAHULUAN. CAKUPAN MATERI PERKULIAHAN (1). RPL sebagai produk RPL sebagai proses Konsep manajemen proyek Proses pembangunan PL dan metrik proyek Perencanaan proyek PL Manajemen resiko dalam pelaksanaan proyek
E N D
REKAYASA PERANGKAT LUNAK Chapter 1 PENDAHULUAN
CAKUPAN MATERI PERKULIAHAN (1) • RPL sebagai produk • RPL sebagai proses • Konsep manajemen proyek • Proses pembangunan PL dan metrik proyek • Perencanaan proyek PL • Manajemen resiko dalam pelaksanaan proyek • Penjadwalan dan penelusuran proyek pembangunan PL • Jaminan kualitas PL
CAKUPAN MATERI PERKULIAHAN (2) • Manajemenkonfigurasi PL Rekayasasistemkearah CBIS (Computer Based Information System) • KonsepdanprinsipanalisisPemodelananalisis • Konsepdanprinsipdesain • Metodedesain • ImplementasipembangunanTeknikpengujianperangkatlunak • Strategiperancangan PL • CASE tool pembangunan PL
REFERENSI YANG DIGUNAKAN Pressman, RS., 2008, Software Engineering: A Practitioner’s Approach, New York: McGraw-Hill Sommerville, I, 2007, Software Engineering,Addsion Wesley Rosa A.S- M Shalahuddin, ModulPembelajaranRekayasaPerangkatLunak (TerstrukturdanBerorientasiObjek), Modula
Overview Rekayasa Perangkat Lunak • PerangkatLunak? (Software??) • RekayasaPerangkatlunak-RPL? (Software engineering-SE??) • Rekayasasistem-RS? (system engineering-SysE??) • RPL vs RS ?? • Prosespembangunan PL? • CASE tools?
Rekayasa Sistem • Rekayasaperangkatlunakterjadisebagaikonsekuensidarisuatuproses yang disebutrekayasasistem. • Rekayasasistemmemfokuskandiripadaberbagaielemen, analisis, perancangan, danpengorganisasianelemen-elementersebutkedalamsuatusistem yang dapatmenjadisebuahproduk, jasa, atauteknologiuntukmentransformasiinformasiataukontrol. • Prosesrekayasasistemdisebutrekayasainformasibilakontekskerjarekayasaberfokuspadaperusahaanbisnis. Padasaatprodukakandibuat, prosesitudisebutrekayasaproduk.
Rekayasa Sistem (2) • Rekayasa informasi bertujuan menentukan arsitektur yang memungkinkan suatu bisnis menggunakan informasi secara efektif. • Rekayasa informasi menghasilkan suatu rencana menyeluruh guna mengimplementasikan arsitektur- arsitektur berikut : ¤ arsitektur data ¤ arsitektur aplikasi ¤ infrastruktur teknologi, menyangkut HW dan SW untuk mendukung aplikasi dan data
Rekayasa Sistem (3) • Rekayasa produk dimaksudkan untuk menterjemahkan keinginan pelanggan dengan serangkaian kemampuan yang terbatas ke dalam produk yang dapat bekerja (operasional).
Lingkup Proyek Perangkat Lunak ¤ Pengembangan perangkat lunak ¤ Pengembangan perangkat lunak, dan pengadaan perangkat keras ¤ Pembenahan sistem prosedur, dan pengembangan perangkat lunak ¤ Pembenahan sistem prosedur, pengembangan perangkat lunak dan pengadaan perangkat keras
RekayasaPerangkatLunak.. Apasih ?? • Inti yang akandipelajaridi RPL adalah Mempelajariteknik-teknikdan tools yang digunakandalampembangunanperangkatlunak Mata kuliah yang mendasaripenguatanpemahamandalambelajar RPL : • IMK • Konseppemrograman • Algoritmapemrograman • Basisdata
Definisi Perangkat Lunak IEEE-Standar Glossary of Software Engineering Terminology, 1990: (Institute of Electrical and Electronic Engineering ) • Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system. • Terjemahanbebasnya: Perangkatlunakmerupakankumpulandariberbagai item (program, prosedur, dandokumen data yang salingterkait) yang merepresentasikanmasalahdidunianyata yang dikonfigurasikandalamsatubentukaplikasi yang harusdikerjakankomputer.
Produk Perangkat Lunak (1) • Perangkatlunaktidaksamadenganprodukperangkatkeras • Produkperangkatlunakdikembangkan (developed) ataudirekayasa (engineered) Tidakdipabrikkansepertipabrikperangkatkeras, misalkomputer, mobil. • Perangkatlunaksecarapemakaiantidakpernahaus/usanglayaknyasukucadangperangkatkeras
Produk Perangkat Lunak (2) • Perangkat lunak sebagian besar dikembangkan/dibangun berdasarkan pemesanan hanya sebagian kecil yang dibuat secara paket Bentuk produk perangkat lunak • Umum/generik Dibuat untuk keperluan yang luas dan tidak berdasarkan pada permintaan pihak tertentu. • Pesanan/custome/by tailor Dibuat spesifik sesuai sistem yang dibutuhkan oleh pemesan
Produk Perangkat Lunak (3) • Karakteristikperangkatlunak yang baik: - Mempunyaidayaguna yang tinggi (usability) - Mempunyaikinerjasesuaifungsi yang dibutuhkanpemakai - Mampudiandalkan (be reliable) - Mudahdirawat/diperbaiki (maintenability) - Lebihefisien - Mempunyaiantarmuka yang menarik (eye cathcing user interface) - Mempunyaisiklushidup yang cukup lama (long life time)
Jenis-jenis Aplikasi PL (1) • Perangkatlunaksistem Sekumpulan program yang ditulisuntukmelayani program-program lain Misal: sistemoperasi, driver, kompilator, interpreter, utility, dll • Perangkatlunakwaktunyata (realtime) Perangkatlunak yang berfungsiuntukmemonitor, menganalisis, mengontroldanmemberikanlaporantentangkejadiandunianyatadanmeresponnyadalamwaktukurangdari 1 menit. Misal: pengontrolarusudara, pengontrolkeasamantabungreaksi (pressman punya), pengontrolreaksinuklir,dll
Jenis-jenis Aplikasi PL (2) • Perangkatlunakteknikdanilmupengetahuan (scientific & engineering software) Perangkatlunak yang menanganibidangteknikdanilmupengetahuansecararinci Misal: simulasi, astronomi, vulkanologi, analisisotomatif, dinamika orbit pesawatruangangkasa, biologimolekuler, otomasipabrik, dll • Embeded system Perangkatlunakygditempelkan/dilekatkanpadaperangkatlainnya (lunak/keras). Misal: padakamera digital, GPS, automobil, microwave, kulkascerdas, dll
Jenis-jenis Aplikasi PL (3) • Perangkatlunakpengolah data (data processing) Perangkatlunak yang khususdigunakanuntukmengolah data danmenghasilkansuatukeputusantertentu. Misal: billing telepon, pengolahstatistik • Perangkatlunaksisteminformasi (information system) Perangkatlunak yang mampumemberiinformasidarisuatusistemsecaralebih detail. Misal: web site, perpustakaan digital, dll
Jenis-jenis Aplikasi PL (4) • Perangkatlunak sensor Perangkatlunak yang mampumengukurdanmengatursuatukeadaankhusus, kadangdigolongkandalam embedded system juga. Misal: pengaturcuaca, pengatursuhuruangan, dll • Perangkatlunakkomunikasi (communication software) Perangkatlunak yang berfungsiuntukmenghubungkanataumengkomunikasikansuatuobjeksatudenganlainnya. Misal: router, handphone, dll
Jenis-jenis Aplikasi PL (5) • Perangkatlunakkantor (offices) Perangkatlunak yang dirancanguntukmembantutugas-tugasperkantoran. Misal: word processing, spreedsheet processing, video conferences, dll • Perangkatlunakpengolahgrafis Perangkatlunak yang digunakanuntukmelakukanperancangangrafis Misal: pembuatan film, pembuatan poster
Jenis-jenis Aplikasi PL (6) • Perangkat lunak kecerdasan Perangkat lunak yang menggunakan algoritma no-numeris untuk memecahkan masalah kompleks yang tidak sesuai untuk perhitungan atau analisis secara langsung Misal: sistem pakar, pembuktian teorema, game strategi, jaringan saraf tiruan, dll
Evolusi Perangkat Lunak (1) • Perangkatlunaktelahsemakinberkembangsejakpertama kali diciptakantahun 1945 • Fokusutamapembuatannya Untukmengembangkanpraktikdanteknologidalammeningkatkanproduktivitasparapraktisipengembang PL dankualitasaplikasiygdapatdigunakanolehpemakai • Evolusidipicuadanyatuntutanbisnisdanlingkungankerja yang berkembangsangatdinamis
Evolusi Perangkat Lunak (2) • Era I (1945 – 1960): - Munculnyateknologiperangkatkerasditahapawal - Penggunaanperangkatlunakygberorientasi batch - Distribusiperangkatlunakmasihterbatas - Didominasiperangkatlunak model custome - Munculnyaistilah software engineering (akhir 1950- an/awal 1960-an) - Belumdidefinisikansecarajelastentangaspek software engineering
Evolusi Perangkat Lunak (3) • Era II (1960 – 1970) - Disebut era krisisperangkatlunak (software crisis). - Penggunaanperangkatlunaksudahmeluas - Telahhadirperusahaan yang membangun software (software house) - Perangkatlunaksdhmengenalmultiprogram, multiuser, real-time, danpenggunaan database. - Banyak project PL yggagal: - Over budget/anggaran - MeledaknyaRoketArianeàkesalahanperintahdlm PL Duakonferensitentang software engineering: - DisponsoriKomiteSains NATO - Tahun 1968 dan 1969 - Profesiresmibidang software engineering
Evolusi Perangkat Lunak (4) • Era III (1975 – 1985) - Pengembangan sistem mengarah ke konsep sistem terdistribusi. - Penerapan sistem embeded intelligence - Harga perangkat keras sudah jauh lebih murah sehingga pemakaian meluas - Pemanfaatan jaringan global dan lokal serta sudah diperkenalkan komunikasi digital
Evolusi Perangkat Lunak (5) • Era IV (1985 – 2000) • Kemampuan PC sudah setara dengan komputer mainframe • Penerapan teknologi yang berorientasi pada objek • Implementasi sistem pakar, • Jaringan saraf tiruan • Komputasi paralel • Jaringan komputer sudah semakin canggih
Evolusi Perangkat Lunak (6) • Era V (2000 – sekarang) - Penggunaan media digital - Media web berkembangpesat - Wireless sudahmeluas - Teknologimeluashinggadi mobile computing, mobile programming - Perangkatkerassudahsemakinkecilnamunpowerfull - Dilakukanberbagaipenelitian yang menghasilkan model proses/paradigmapengembangan PL utkmengatasikrisis PL
Era V (2000 – sekarang) - Muncul teknik-teknik baru: - Pemrograman terstruktur - Pemrograman berientasi objek - Perangkat bantu pengembangan (CASE tools) - Standarisasi PL - Metode UML