1 / 48

Perancangan Perangkat Lunak

Perancangan Perangkat Lunak. Disusun oleh : Dr. Lily Wulandari. P endekatan P rogrammer untuk Rekayasa PL. Lewati fase rekayasa kebutuhan dan desain ; Mulai dengan penulisan kode. Mengapa Pendekatan P rogrammer ?. Desain adalah membuang waktu

Télécharger la présentation

Perancangan 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. PerancanganPerangkatLunak Disusunoleh: Dr. Lily Wulandari

  2. Pendekatan Programmeruntuk Rekayasa PL • Lewati fase rekayasa kebutuhan dan desain; • Mulai dengan penulisan kode

  3. Mengapa Pendekatan Programmer? • Desain adalah membuang waktu • Kami butuh untuk menunjukkan sesuatu ke pelanggan dengan cepat • Kami mengira atau tahu bahwa jadwal sangat ketat

  4. Bagaimanapun, ... • Semakin lama anda menunda pembuatan program, semakin cepat anda akan selesai

  5. Desain PL sebagai sebuah Masalah yang Sulit • Tidak ada rumusan yang pasti • Tidak ada aturan kapan berhenti • Solusi tidak hanya benar atau salah • Setiap masalah yang sulit adalah gejala dari masalah lain

  6. MetodologiPengembangan Sistem • Metodologiadalahkesatuanmetode-metode , prosedur-prosedur, konsep-konseppekerjaan, dan aturan-aturan yang digunakanolehsuatuilmupengetahuan , seni, ataudisiplinlainnya. • Metodeadalahsuatucara / teknikyang sistematikuntukmengerjakansesuatu.

  7. Metode Desain • Functional decomposition • Data Flow Design (SA/SD) • Design based on Data Structures (JSD/JSP) • OO is gOOd, isn’t it

  8. Contoh Metode-Metode Desain • Decision tables • E-R • Flowcharts • JSD • JSP • OOD • SADT • Dan lain-lain

  9. MetodologiPemecahanFungsional • Functional decomposition methodologies ( metodologiPemecahanfungsional ) Menekankanpadapemecahandarisistemkedalamsubsistem-subsistem yang lebihkecil, sehinggalebihmudahdipahami, dirancangdanditerapkan. Yang termasukmetodologiini : - HIPO (Hierarchy Input Process Output ) • Stepwise refinement (SR) atau Iterative Stepwise Refinement ( ISR) • Information hiding

  10. Functional decomposition bottom-up top-down

  11. Desain Alur Data • Yourdon dan Constantine (awal 70an) • Versi saat ini : proses dua-langkah: • Analisis Struktur, menghasilkan desain logika, digambarkan sebagai sekumpulan data flow diagrams • Desain Terstruktur mengubah desain logika ke dalam struktur program, digambarkan sebagai sekumpulan structure charts

  12. DFD Data FLOW DIAGRAM

  13. Pengertian DFD • Suatu grafik yang menjelaskan sebuah sistem dengan menggunakan bentuk-bentuk atau simbol untuk menggambarkan aliran datadari proses-proses yang saling berhubungan.

  14. Pengertian DFD • Data Flow Diagram adalahsuatuteknikgrafik yang menggambarkanalurinformasidantransformasimenggunakandekomposisifungsiterhirarkidarisuatuprosesdalamsuatusistem • Apasebagaimasukan. • Apasebagaikeluaran. • Bagaimanaterjadiprosesperubahandidalamnya

  15. Pengertian DFD • DFD mempunyai level-level mulai dari yang terkecil, yaitu level 0 (context diagram). • Context diagram merupakan gambaran paling umum dari sistem, yang hanya memiliki satu proses saja untuk mewakili seluruh sistem.

  16. Pengertian DFD • Semakin bertambahnya level dalam DFD akan semakin detail digambarkannya proses-proses yang ada pada sistem, tetapi yang boleh bertambah hanya proses dan data flow saja.

  17. Pengertian DFD • Data source jumlahnya harus tetap dengan yang ada pada context diagram. • Khusus untuk data store, pada context diagram masih belum digambarkan, akan tampak pada level 1 dan konsisten jumlahnya sampai pada level berikutnya.

  18. Notasi DFD • entitas • proses • data flows • data stores

  19. Contoh Kasus • Kasus: Sistem Pemesanan Tiket Kereta Api Pada PT. Kereta Api Indonesia (PT. KAI) • Prosedur yang sedang berjalan: Pemesan mengisi formulir pesanan tiket yang telah disiapkan oleh Bagian Pemesanan. Adapun yang diisi di dalam formulir pesanan diantaranya adalah Nama pemesan, alamat, No. Telpon, nama kereta api, kelas, tgl.berangkat dan jumlah pesanan. Setelah formulir diisi dengan benar, formulir diserahkan ke bagian pemesanan. Data pesanan akan dientry ke dalam komputer dan disimpan di dalam file. Pembayaran dilakukan secara tunai. Setelah proses pembayaran selesai, maka pemesan mendapat bukti pembayaran berupa kwitansi dan bukti pembayaran tiket kereta api.

  20. Pemesanan Tiket Contoh Kasus • Prosedur yang diusulkan: Prosedur yang diusulkan tidak jauh berbeda dengan prosedur yang telah berjalan sebelumnya, hanya pada prosedur yang diusulkan akan ditambah satu item yaitu No.ID pemesan berdasarkan urutan formulir data pesanan yang masuk ke Bagian Pemesanan. • Diagram Konteks Data Pemesan dlm FPT Lap. Pemesanan Tiket Pimpinan PT. KAI Pemesan Informasitolak, Kwitansi, Tiket

  21. 3 Trans. PemesananTiket & Pemb. Kwitansi 1 Cek data kereta 4 Membuat Laporan 2 Cek & tambahdatapesanan Data Pemesan dlm FPT Data kereta Kereta Pemesan Informasitolak Data Pemesan Data Kereta Data Pemesan Kwitansi, Tiket Pemesanan Data Pemesan Data Kereta Data kereta yang dipesan Transaksi Data Transaksi Data kereta Data Transaksi Data Pemesan Pimpinan PT. KAI Lap. PemesananTiket

  22. DIAGRAM JACKSON

  23. Desain berdasarkan pada Struktur data (JSP & JSD) • JSP = Jackson Structured Programming (for programming-in-the-small) • JSD = Jackson Structured Design (for programming-in-the-large)

  24. JSP • Ide dasar: program yang baik Mencerminkan struktur input dan output • Program dapat diturunkan nyaris secara mekanis dari deskripsi input dan output • Input dan output yang digambarkan dalam structure diagramdan / atau dalam structured text/schematic logic (semacam pseudocode) • Tiga bentuk dasar: urutan, iterasi, dan seleksi

  25. KOMPONEN DERET • Deretmempunyaiduaataulebihbagian yang dapatterjadisecarabersamaan. Contohnyapadagambar 1 menunjukkan diagram Jackson dannotasistruktur text untuksebuahkomponenderet A yang terdiridari B yang diikutidengan C, dan D. Dengan perkataan lain, B, C, dan D adalah komponen-komponen dari A.

  26. KOMPONEN DERET Diagram Jackson StrukturTeks A Seq B; C; D; A End A B C D (a) (b) Gambar 1. Penggambaran komponen deret

  27. ITERASI • Komponendarisebuahiterasimempunyaisebuahbagian yang terjadibeberapa kali ataunol kali untuksetiapkejadian. Padagambar 2 tandaasterisdiatas B menandakanbahwakomponen A mempunyaiiterasiyaitu B; artinya,Bdilaksanakannolataubeberapa kali untuksetiapkejadian A secaraberulang-ulang. Notasistrukturdarikomponen A diberikandalamtigabentukberbeda (i)-(iii) sepertipadagambar 2b.

  28. ITERASI Iteration A Struktur Text * B A itr until < kondisi > ~; A end (iii) Aitr ~; A end (i) A itr while < kondisi > ~; A end (ii) Gambar 2. Gambaran Komponen Iterasi

  29. SELEKSI • Suatukomponenseleksimempunyaiduaataulebihbagian, dengansatu, danhanyasatu, sekaliterjadiuntuksetiapkejadiandarikomponenseleksi. • Padagambar 3 diberikansebuahgambarandari diagram dannotasistruktur text darikomponenseleksi A. A mempunyaibagian-bagian B, C, dan D. Lingkarandalamkotak B, C, dan D menunjukkanbahwa A adalahsebuahseleksisedangkan B, C, dan D adalahkomponen-komponennya.

  30. SELEKSI • Adajugakemungkinanuntukmenunjukkankondisidarisuatuseleksidalamsebuahstrukturteksbiasauntukkeadaansepertipadabagian (i) dan (iii) darigambar 3b. Kasuskhususdariseleksiadalah "SeleksiNol". Artinya "tidakmelakukanapa-apa" dandigambarkandengan _ . Padacontohgambar 4 diperlihatkan A hanya mempunyai satu komponen seleksi, yakni B.

  31. Selection A o o o B C D SELEKSI StrukturTeks A sel B; a alt C; A alt D; A end (i) A sel<kondisi 1> B; A alt<kondisi 2> C; A alt<kondisi 3> D; A end (ii) A sel (kondisi 1) B; A sel (kondisi2) C; A sel (else) D; A end (iii) (a) (b) Gambar 3. Penggambaran Komponen Seleksi

  32. SELEKSI A A 0 0 0 B - B Gambar 4. ContohSebuahSeleksiNol

  33. CONTOH ITERASI • Contohiterasidalamsebuah diagram Jackson adalahstruktursebuah textbook dalamsebuahtabel yang berisiukuranbuku, danindeks yang merupakankomponen-komponen yang berurutansedangkanbabadalahbagianiterasidaribentukbuku (gambar 5).

  34. CONTOH ITERASI Buku Tabel UkuranBuku Indeks Bab * Gambar 5. ContohIterasiDalam Diagram Jackson

  35. CONTOH ITERASI • Susunankomponen-komponendalamhirarkidiperlihatkanpadagambar 6. Padagambartersebut, A adalahsuatukomponenderet, sedangkan B, C, dan D adalahbagian-bagiandari A. C adalahkomponenseleksi;Edan F adalahbagian-bagiannya. • E dan F adalahkomponen-komponeniterasi. • F jugamerupakansuatukomponenderet dengan H dan K adalah bagian-bagiannya.

  36. CONTOH ITERASI A B C D o o E F * * * G H K Gambar 6. Struktur Dasar Dalam Diagram Jackson

  37. W/O Warnier or

  38. PENDAHULUAN • Metodologipengembangansisteminipertama kali dikembangkantahun 1970 olehJean DomiqueWarnierdariParis.KemudiandikembangkanlebihlanjutuntukdesainsistemolehKen Orr dari Kansas • Metodologi W/O menggunakanalat yang disebutdengan diagram W/O, yangsecaraselintasmiripdenganbaganberjenjang yang diputar.

  39. OPERATOR DIAGRAM W/O

  40. STRUKTUR DATA MENGGUNAKAN DIAGRAM W/O • Prinsipkuncidarimetodologi W/O adalahdesaindaristruktur program ygtertulisdilengkapidenganstrukturdatanya. • Diagram W/O dapatmenggambarkanstruktur data ygberbentuk : 1. Struktur Data Urut 2. Struktur Data Repetisi 3. Struktur Data Seleksi

  41. STRUKTUR DATA URUT • Misalnyasuatu record mahasiswasbb : • Maka dapat digambarkan dengan diagram W/O:

  42. STRUKTUR DATA REPETISI • Misalnya file mahasiswaterdiridari n record, • Maka dapat digambarkan dengan diagram W/O:

  43. STRUKTUR DATA SELEKSI • Dapatditunjukkanoleh operator XOR sbb

  44. STRUKTUR PROSES PROGRAM MENGGUNAKAN DIAGRAM W/O 1. STRUKTUR PROSES URUT StrukturProsesUrutadalahmasing - masinginstruksidiprosesurutsatudengan yang lainnya.

  45. STRUKTUR PROSES PROGRAM MENGGUNAKAN DIAGRAM W/O 2. STRUKTUR PROSES REPETISI StrukturProsesRepetisiadalahstrukturprosesygmengulanginstruksi program berulang kali.

  46. STRUKTUR PROSES PROGRAM MENGGUNAKAN DIAGRAM W/O 3. STRUKTUR PROSES SELEKSI StrukturProsesSeleksimerupakanstrukturproses yang menggunakaninstruksipenyeleksiankondisi.

  47. STRUKTUR PROSES PROGRAM MENGGUNAKAN DIAGRAM W/O 4. STRUKTUR PROSES REKURSI StrukturProsesRekursiadalahsuatuprosesdarisuatufungsiatauprosedur yang memanggildirinyasendiri. Digambarkandengankurungkurawal (brace) yang terputus - putus.

  48. STRUKTUR PROSES PROGRAM MENGGUNAKAN DIAGRAM W/O • Keterangan Simbol Diagram W/O tsb SimbolAngkadiantaratandakurungmenunjukkanbanyaknyaproses * UntukUrutmakainstruksibiasanyadikerjakan 1 kali sehinggadituliskan (1). * UntukRepetisimakainstruksibisadikerjakansebanyak N kali makadituliskan (N). * UntukSeleksidisimbolkandengan (0,1) yaitusuatuinstruksiakandiproses 1 kali (1), atautidakdiproses (0). * Untukrekursibisanyadisimbolkandengan (1,N) , N untukrepetisinya

More Related