1 / 77

Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak. Dr. Ratna Wardani Prodi PTI Fakultas Teknik Universitas Negeri Yogyakarta. Pendidikan dan Latihan Profesi Guru. Materi. Tentang Kurikulum. IEEE Computing Curricula 2005. Pembagian Domain Keilmuan. Rekayasa Perangkat Lunak. Kata Kunci. Level SMK di bidang RPL.

Download Presentation

Rekayasa Perangkat Lunak

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Rekayasa Perangkat Lunak Dr. Ratna Wardani Prodi PTI Fakultas Teknik Universitas Negeri Yogyakarta

  2. Pendidikan dan Latihan Profesi Guru

  3. Materi

  4. Tentang Kurikulum

  5. IEEE Computing Curricula 2005

  6. Pembagian Domain Keilmuan

  7. Rekayasa Perangkat Lunak

  8. Kata Kunci

  9. Level SMK di bidang RPL

  10. Pemahaman yang salah tentang RPL

  11. Apa yang Dipelajari dalam RPL

  12. Kendala

  13. Rekayasa Perangkat Lunak

  14. Tahapan Proses RPL • Tahap umum: • Definisi: Apa yang akan dibangun • Analisis sistem • Perencanaan Proyek • Analisis Kebutuhan • Pengembangan: Bagaimana membangunnya • Desain perangkat lunak • Pemrograman / Coding • Pengujian perangkat lunak • Pemeliharaan: Bagaimana berdaptasi terhadap perubahan • Koreksi • Adaptasi • Peningatan

  15. Analisis Sistem

  16. Analisis Sistem • Elemen:

  17. Analisis Sistem • Data Dictionary : deskripsisemuaobjek data dalam S/W • Entity Relationship Diagram : notasipemodelan data yang menggambarkanhubunganantarobjek data • Data Flow Diagram : model fungsional, dengantujuan • menunjukkantransformasi data saat data bergerakmelaluisistem • menunjukkanfungsi-fungsiygmentransformasialiran data • State Transition Diagram : model tingkahlaku, ygmenunjukkantransisi state/tingkahlakusistemakibatkejadianeksternal

  18. Analisis Sistem

  19. Pemodelan Data • ERD memungkinkan perekayasa S/W mengidentifikasi objek data dan hubungannya menggunakan notasi grafis (data yg dimasukkan, disimpan, ditransformasi dan dihasilkan suatu aplikasi) • ERD hanya berfokus pada data dan bersifat independen thd proses yg mentransformasikan data tersebut • Model data terdiri dari tiga informasi utama : • Objek data • Atribut • Hubungan

  20. Objek Data • Objek data adalah representasi dari hampir semua informasi gabungan yg harus dipahami perangkat lunak • Objek data dapat berupa entitas eksternal, benda, event, unit organisasional, tempat atau suatu struktur • Deskripsi objek data menghubungkan objek data dg semua atributnya • Objek data dihubungkan satu sama lain berdasarkan konteks masalah yg dianalisis • Objek data hanya mengenkapsulasi data, tidak ada referensi pd sebuah objek data ke operasi yg bekerja pada data

  21. Atribut • Atribut menentukan properti suatu objek data • Atribut digunakan untuk • menamai sebuah contoh dari objek data • Menggambarkan contoh • Membuat referensi ke contoh lain pada tabel yang lain • Contoh : objek data manusia, memiliki atribut : nama, alamat, umur, tinggi badan. • Rangkaian atribut yang sesuai untuk suatu objek data ditentukan melalui pemahaman konteks masalah

  22. Hubungan • Objek data dihubungkan satu dan lainnya dengan berbagai cara • Contoh : Antara dua objek data buku dan toko buku dapat dibangun suatu hubungan berdasarkan konteks perangkat lunak yg akan dibangun (dg object-relationship pairs) : • toko buku memesan buku • toko buku menampilkan buku • toko buku menjual buku • toko buku mengembalikan buku

  23. Kardinalitas • Kardinalitas merupakan spesifikasi dari sejumlah peristiwa dari satu objek yg dapat dihubungkan ke sejumlah peristiwa dari objek lain • Dua objek dapat dihubungkan sebagai : • Satu-ke-satu : suatu kejadian dari objek A dapat berhubungan dg satu dan hanya satu kejadian dari objek B dan sebaliknya • Satu-ke-banyak : satu kejadian dari objek A dapat berhubungan dg satu atau lebih kejadian dari objek B, tetapi satu kejadian dari objek B dapat berhubungan dg hanya satu kejadian dari objek B • Banyak-ke-banyak : sebuah kejadian dari objek A dapat berhubungan dg satu atau lebih kejadian dari objek B, dan satu kejadian dari objek B dapat berhubungan dg satu atau lebih kejadian dari objek A

  24. Pemodelan Fungsional dan Aliran Informasi • DFD merupakan teknik grafis yang menggambarkan aliran informasi dan transformasi yang diaplikasikan pada saat data bergerak dari input menjadi output. • DFD memberikan suatu mekanisme bagi pemodelan fungsional dan pemodelan aliran data • DFD dapat menyajikan perangkat lunak pada setiap tingkat abstraksi, karena DFD dapat dipartisi ke dalam tingkat-tingkat yang merepresentasikan aliran informasi yang bertambah dan fungsi ideal.

  25. Pelanggan Kasir Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) Aplikasi Cash Register: Data yang menjadi masukan PL 3 1 2 4 6 5 Data yang menjadi keluaran PL lingkup/konteks perangkat lunak 1. Menyerahkan barang 2. Mencatat data penjualan 3. Memberikan pembayaran 4. Mencatat data pembayaran 5. Mencetak struk 6. Menerima struk, barang, dan kembalian sumber/tujuan data (entitas eksternal)

  26. Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) penjualan Aplikasi Cash Register pembayaran Kasir struk

  27. Pemodelan Tingkah Laku • STD merepresentasikan tingkah laku sistem dengan menggambarkan keadaan dan kejadian yang menyebabkan sistem mengubah keadaan • Dalam STD, suatu aksi diambil sebagai akibat dari suatu kejadian khusus

  28. Pemodelan Tingkah Laku

  29. Model to Design

  30. Model to Design • Data design  mengubah model informasi (entity relationship diagram dan data dictionary) menjadistruktur data • Architectural design  berisihubunganantarelemendalam program • Interface design  menjelaskanbagaimanakomunikasididalam perangkatlunak, dengansistem, dandenganmanusiayang menggunakannya.  Sebuah interface mengandungmaksudsebuahaliraninformasi.

  31. Model to Design • Procedural design  mengubahelemenstrukturaldariarsitektur program menjadideskripsiproseduraldarikomponenperangkatlunak

  32. Model to Design • Sebuahdesainharusmenunjukkanorganisasisecarahirarkis • Sebuahdesainharusbersifat modular; jadi, sebuahperangkatlunakseharusnyadapatdibagi-bagisecaralojikmenjadibeberapaelemen yang melakukanfungsiatausubfungsisecaraspesifik • Sebuahdesainharusmengandungabstraksi data danprosedural • Sebuahdesainharusmengarahpadamodul-modul (proseduratausubrutin) yang menunjukkankarakteristikfungsional

  33. Model to Design • Sebuahdesainharusmengarahpadaantarmuka yang mengurangikompleksitashubunganantarmoduldandenganlingkunganluar • Sebuahdesainharusditurunkanmenggunakanmetode yang berulang yang diarahkanolehinformasi yang dihasilkanpadatahapanalisisperangkatlunak

  34. Model to Design • Prosesdesaintidakbolehmengalami “tunnel vision” • Desainharusdapatdilacakke model analisis • Tidakmelakukandesainpadahal yang samaberulang-ulang • Desainharusmerepresentasikanmasalahpadakeadaannyata • Desainharusmemperlihatkankeseragamandanintegrasi

  35. Model to Design • Desainharusterstrukturuntukmengatisipasiadanyaperubahan • Desainbukan coding, coding bukandesain • Penilaiankualitasdesainharusdilaksanakanpadasaatdesaintersebutdibuat • Desainharusdi-review untukmeminimasikesalahankonseptual

  36. Konsep Desain • Abstraksi • Modularitas • Arsitektur software • Hirarkikontrol • Pembagianstruktural • Data struktur • Software procedure • Penyembunyianinformasi

  37. Dokumentasi Desain • LingkupSistem • Desain Data • Desain Architectural • DesainAntarmuka • DesainProsedural • CatatanKhusus • Appendix

  38. Data Design • Mengubahobjek data yang didefinisikanpada model analisismenjadistruktur data yang adadalamperangkatlunak • Atribut yang dimilikiobjek data, hubungandiantaraobjek data, danpenggunaannyadalam program, semuanyamempengaruhipemilihanstruktur data

  39. Architectural Design • Menggunakankarakteristikaliraninformasidalam model analisisuntukmenghasilkanstruktur program • Sebuah data flow diagram dipetakanmenjadistruktur program menggunakanduapendekatan : • Transform mapping • Transaction mapping • Transform mapping : diterapkanuntuksebuahaliran data yang menunjukkanbatas yang jelasantara data yang masukdan yang keluar

  40. Architectural Design • DFD dipetakanmenjadisebuahstruktur yang mengalokasikankontrolmenjadi input, pemorsesan, dan output bersamadenganhirarkimodul • Transaction mapping : diterapkanjikasebuah item informasimenyebabkanpercabangan • DFD dipetakanmenjadisebuahstruktur yang mengalokasikankontrolmenjadisebuahsubstruktur yang mendapatkandanmengevaluasisebuahtransaksi

  41. Interface Design • Meliputiantarmuka program internal daneksternalsertadesainuntukantarmukapengguna • Desainantarmuka internal daneksternaldiarahkanolehinformasi yang diperolehdari model analisis

  42. SADT

  43. Pelanggan Kasir Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) Aplikasi Cash Register: Data yang menjadi masukan PL 3 1 2 4 6 5 Data yang menjadi keluaran PL lingkup/konteks perangkat lunak 1. Menyerahkan barang 2. Mencatat data penjualan 3. Memberikan pembayaran 4. Mencatat data pembayaran 5. Mencetak struk 6. Menerima struk, barang, dan kembalian sumber/tujuan data (entitas eksternal)

  44. Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) penjualan Aplikasi Cash Register pembayaran Kasir struk

  45. Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) • Merupakanpemerincian (break down) dari Diagram Konteks: level-1, 2, dst. • Proses-proses yang akandibuatharussesuaidengandeskripsikebutuhanfungsionalnya. • Alurdanurutan proses mengikutimekanisme proses pengolahan data yang nantiakandilakukanolehperangkatlunak.

  46. Jual Barang Kasir Pelanggan 55,000 Jumlah (Rp.) Entry Penjualan Barang X Kode Barang Nama Barang KERTAS A4 80 GR. 27,500 Harga (Rp.) Banyaknya Workflow Penjualan Barang Diagram Aliran Data (DAD) Kasir 1 2 3 penjualan 1 Catat Data Penjualan 4 1. Baca kode barang Spesifikasi Proses 2. Cari dan tampilkan data barang 1. Catat data penjualan 1. Menyerahkan barang 3. Baca banyak barang 4. Hitung dan tampilkan jumlah 5. Rekam data penjualan ke basis data; update stok barang Kamus Data Sketsa Tampilan Layar 1. barang yang dibeli 2. penjualan = kode_brg + banyak BRG-101 3. Barang = @kode_brg + nama_brg + harga + stok 4. Jual = @no_faktur + @kode_brg + banyak 2 Rekam

  47. Kasir penjualan Bayar Barang Jual 1 Catat Data Penjualan Kasir Pelanggan 5,000 55,000 55,000 Total (Rp.) Kembali Jumlah (Rp.) 1. barang yang dibeli Entry Penjualan Barang Entry Pembayaran X X 2. penjualan = kode_brg + banyak Kode Barang Jumlah Bayar BRG-101 3. Barang = @kode_brg + nama_brg + harga + stok Nama Barang KERTAS A4 80 GR. 4. Jual = @no_faktur + @kode_brg + banyak 27,500 Harga (Rp.) Banyaknya 2 Rekam Workflow Pembayaran Diagram Aliran Data (DAD) 5 6 7 9 8 pembayaran Spesifikasi Proses 1. Hitung dan tampilkan total 1. Memberikan pembayaran 1. Akhiri penjualan struk 2. Baca jumlah bayar total 3. Hitung dan tampilkan jumlah kembalian 2 Catat Data Pembayaran & Cetak Struk 2. Menerima struk, barang dan kembalian 2. Catat data pembayaran; cetak struk 4. Rekam data pem- bayaran ke basis data 5. Cetak struk Kamus Data Sketsa Tampilan Layar 60,000 5. uang 6. pembayaran = jml_bayar 7. Bayar = @no_faktur + tanggal + total 8. struk = no_faktur + tanggal + {nama_brg + harga + banyak + jumlah} + total + bayar + kembali Cetak Struk Pembayaran 9. struk, barang dan kembalian total = no_faktur + {kode_brg + nama_brg + harga + banyak} + total

  48. Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur)

  49. Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) Data Store 1. Barang = @kode_brg + nama_brg + harga + stok 2. Bayar = @no_faktur + tanggal + total 3. Jual = @no_faktur + @kode_brg + banyak Data Flow 1. pembayaran = jml_bayar 2. penjualan = kode_brg + banyak 3. struk = no_faktur + tanggal + {nama_brg + harga + banyak + jumlah} + total + bayar + kembali 4. total = no_faktur + {kode_brg + nama_brg + harga + banyak} + total

  50. Pemodelan Fungsional dan Aliran Informasi (Analisis Terstruktur) Proses 1: Catat Data Penjualan 1. Baca kodebarang 2. Caridantampilkan data barang 3. Baca banyakbarang; Hitungdantampilkanjumlah 4. Rekam data penjualanke basis data; Update stokbarang Proses 2: Catat Data Pembayaran & CetakStruk 1. Hitungdantampilkan total 2. Baca jumlahbayar; Hitungdantampilkanjumlahkembalian 3. Rekam data pembayaranke basis data 4. Cetakstruk

More Related