1 / 48

Pemodelan Perangkat Lunak

Pemodelan Perangkat Lunak. VI045102. By : Rizky Yuniar Hakun. Referensi. Ian Somerville, Software Engineering , 6 th Edition, Addison Wesley, 2001 Roger R. Pressman, Software Engineering , 6 th Edition McGraw-Hill , 200 5

Download Presentation

Pemodelan 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. Pemodelan Perangkat Lunak VI045102 By : Rizky Yuniar Hakun

  2. Referensi • Ian Somerville, Software Engineering, 6th Edition, Addison Wesley, 2001 • Roger R. Pressman, Software Engineering, 6th Edition McGraw-Hill, 2005 • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995

  3. Grading • Tugas : 30% • UTS : 30% • UAS : 40%

  4. Tools • Power Designer 6 / Power Designer 9 • Rational Rose 7 / IBM Rational Software Architect • Java Compiler (Netbeans, Gel, Eclipse)

  5. Topik dalam Pemodelan PL • Review RPL • Pemodelan PL • Pemodelan Data dan CASE Tool • UML in Depth ( Kelas, Use Case, State, dll) • Design Pattern

  6. Review Rekayasa Perangkat Lunak Day 1 By : Rizky Yuniar Hakun

  7. Lessons • Perangkat Lunak • Review Rekayasa Perangkat Lunak • Pemodelan Perangkat Lunak

  8. Perangkat Lunak

  9. Definisi Perangkat Lunak • Perangkat Lunak adalah suatu aplikasi program komputer yang di dalamnya terdapat: • program itu sendiri, • konfigurasi yang digunakan, • dokumentasi yang menjelaskan struktur sistem, • dokumentasi yang menjelaskan bagaimana menggunakan sistem, • dan informasi tentang versi terbaru • Produk Perangkat Lunak dikembangkan sesuai dengan siapa pemakai perangkat lunak tersebut. • Produk Perangkat lunak dibagi menjadi: • Produk Generik, yang dijual pada pasar terbuka • Produk Spesifik, yang dibuat dan dijual sesuai pesanan dari pemakai.

  10. Karateristik Perangkat Lunak • Software is developed or engineered, not manufactured • Software doesn’t “wear out” • Most software are custom built, not assembled from existing component

  11. Problem dalam Pembuatan Perangkat Lunak • Tidak memiliki waktu yang cukup dalam mengumpulkan data pada proses pembuatan perangkat lunak. • Ketidakpuasan user pada S/W yang dibuat • Kualitas S/W terkadang meragukan. • Sulit dalam memaintenance S/W sekarang

  12. Macam-Macam Perangkat Lunak • Perangkat Lunak Berdasarkan Pemakai • Generik: Perangkat lunak yang bisa digunakan secara umum • Spesifik: Perangkat lunak yang dibuat berdasarkan pesanan • Perangkat Lunak Berdasarkan Fungsional • Interfacing • Operating System • Perangkat Lunak Aplikasi • CASE Tools

  13. Perangkat Lunak Berdasarkan Pemakai • Generik: Perangkat lunak yang digunakan secara umum. Sebagai contoh: • Operating System, seperti Microsoft Windows, • Word Processing, seperti Microsoft Word, WordPad • Spreadsheet, seperti Microsoft Excell • Beberapa aplikasi khusus bisa dibuat menjadi generik dengan membuatnya general dan mudah digunakan siapa saja seperti aplikasi akuntansi, aplikasi sekolah, dan lain-lain • Spesifik: Perangkat lunak yang dibuat berdasarkan pesanan. Banyak Software House yang menghasilkan perangkat lunak ini berdasarkan proyek/pesanan tertentu. Sebagai contoh: Aplikasi Rumah Sakit, Aplikasi Pendidikan, Aplikasi Kesehatan, dan lain-lain

  14. Perangkat Lunak Berdasarkan Fungsionalnya • INTERFACING: Perangkat lunak ini menghubungkan suatu perangkat keras tertentu, seperti hardware driver, interfaces dengan perangkat keras lain. Misal: • Driver untuk Kamera, Handphone atau perangkat keras lainnya • Program interface seperti Sensor Suhu dengan LM555, PPI 8255, Komunikasi Serial RS232.

  15. Perangkat Lunak Berdasarkan Fungsionalnya • OPERATING SYSTEM: Perangkat lunak yang menjalankan sistem komputer dan merupakan interface dari sistem komputer dan program aplikasi yang berjalan diatasnya. • Beberapa OS yang dikenal secara luas: • Microsoft Windows • Linux dan varians-nya, seperti Redhat, SuSE, Mandrake, Debian, dsb. • Unix • FreeBSD • Macintosh (Apple)

  16. Perangkat Lunak Berdasarkan Fungsionalnya • PROGRAM APLIKASI: program ini digunakan untuk keperluan tertentu, yang tujuannya membantu pekerjaan manusia menjadi lebih mudah. Program ini yang banyak dibahas dalam pembuatan perangkat lunak. • Program Aplikasi ini tergantung pada kebutuhan dari program itu sendiri, seperti: • Program Office • Program Graphics Design • Program Multimedia • dan lain-lain

  17. Persyaratan Perangkat Lunak • Perangkat lunak harus memberikan bantuan dalam merepresentasikan dan mengakses file-file eksternal yang dibuat dengan alat bantu lain. • Persyaratan Fungsional dan Non-Fungsional • Persyaratan User • Persyaratan Sistem • Dokumentasi Persyaratan Perangkat Lunak

  18. Persyaratan Fungsionaldan Non-Fungsional • Persyaratan Fungsional: Pernyataan layanan tentang bagaimana sistem harus bereaksi terhadap input, sistem harus berlaku pada situasi-situasi tertentu. Secara khusus menyatakan apa yang tidak boleh dilakukan sistem. • Persyaratan Non Fungsional: Pernyataan tentang batasan layanan dan fungsi yang diberikan sistem. • Persyaratan Domain: Persyaratan yang datang dari domain aplikasi sistem dan merefleksikan karakteristik domain tersebut

  19. Persyaratan Non Fungsional • Persyaratan Produk: persyaratan yang diambil dari spesifikasi produk, seperti persyaratan hardware untuk mendukung kinerja. • Persyaratan Organisasi: persyaratan yang berasal dari kebijakan dan prosedur pada organisasi. • Persyaratan Eksternal: Persyaratan yang berasal dari faktor eksternal terhadap sistem dan proses pengembangannya.

  20. Ukuran Persyaratan Non Fungsional • Kecepatandalam: Transaksi yang diproses/detik, waktutanggal user/event atauwaktu refresh layar • Ukurandalam: KB ataujumlah Chip RAM • Kemudahanpenggunaandalam: waktupelatihanataujumlah frame help • Kehandalandalam: waktu rata-rata kegagalan, probabilitasketidaksediaan, kecepatanterjadinyakegagalan, atauketersediaan • Ketahanandalam: waktu start ulangsetelahkegagalan, prosentase event yang gagal, atauprobabilitaskorupsi data • Portabilitasdalam: prosentasepernyataantergantung target, ataujumlahsistem target

  21. Persyaratan User • Mendeskripsikan persyaratan fungsional dan non-fungsional sehingga dapat dipahami oleh user yang tidak memiliki pengetahuan teknik. • Persyaratan user harus ditulis memakai bahasa natural, formal dan diagram intuitif yang sederhana. Persyaratan user tidak boleh didefinisikan memakai model implementasi. • Masalah yang sering muncul: • Tidak Adanya Kejelasan • Kesimpang-siuran Persyaratan • Penggabungan Persyaratan

  22. Persyaratan Sistem • Persyaratan sistem ini lebih rinci dari persyaratan user, dan berfungsi sebagai dasar kontrak untuk implementasi sistem. • Persyaratan sistem ini digunakan sebagai titik awal perancangan sistem. • Bahasa natural banyak digunakan dalam mendefinisikan persyaratan sistem

  23. Review Rekayasa Perangkat Lunak

  24. Definisi Rekayasa Perangkat Lunak • Rekayasa Perangkat Lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. • Perekayasa Perangkat Lunak memakai pendekatan yang sistematis dan terorganisir untuk menghasilkan perangkat lunak berkualitas tinggi.

  25. Tujuan Rekayasa Perangkat Lunak • Meningkatkan keakuratan, performance & efficiency produk secara keseluruhan dalam pengembangan • Menerapkan metodologi yang terdefinisi dengan baik untuk resolusi software

  26. Perbedaan Rekayasa Perangkat Lunak dan Ilmu Komputer • Ilmu Komputer berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak. Teori ini merupakan suatu model fisik dan analitik untuk menyelesaikan kasus yang spesifik. • Rekayasa Perangkat Lunak berhubungan dengan masalah-masalah praktis untuk menghasilkan suatu perangkat lunak. Pendekatan dilakukan dengan model bisnis dan strategi bisnis suatu perangkat lunak.

  27. Perbedaan Rekayasa Perangkat Lunak dan Rekayasa Sistem • Rekayasa Sistem berhubungan dengan semua aspek pengembangan sistem berbasis komputer, termasuk perangkat keras, perangkat lunak dan rekayasa proses. • Rekayasa Perangkat Lunak adalah bagian dari Rekayasa Sistem

  28. Proses Perangkat Lunak • Proses perangkat lunak adalah serangkaian kegiatan yang tujuannya untuk mengembangkan atau evolusi perangkat lunak. • Kegiatan-kegiatan tersebut adalah: • Spesifikasi perangkat lunak, • Pengembangan perangkat lunak, • Validasi perangkat lunak, • Evolusi perangkat lunak

  29. Pemodelan Perangkat Lunak Ir. HasanuddinSirait, MT Pertemuan 5 14/11/2013

  30. Model Pengembangan Sistem • Model proses perangkat lunak adalah representasi yang disederhanakan dari proses perangkat lunak yang dipresentasikan dari sudut pandang tertentu • Paradigma pengembangan model sistem : • Waterfall Development Model • Evolutionary Development Model • Spiral Development Model • Incremental Development Model

  31. Waterfall Development Model

  32. Pendekatan Waterfall Model • Development activities are performed in sequential order, with possiblyminor overlap, and minimal or no iteration between activities. • User needs are determined,requirements are defined, and the full system is designed, built, and tested for ultimate delivery atone point in time. Some people refer to this as a stage-wise model.

  33. Evolutionary Development Model • Pengembangan Eksplorasi: • Sistem berubah dengan adanya fitur-fitur tambahan dari user. • Prototype yang dapat dibuang (Throw-Away): • Memahami persyaratan user untuk mendapatkan definisi persyaratan yang lebih baik.

  34. Spesifikasi VersiAwal Pengembangan PenjelasanGarisBesar Versi Menengah Validasi Versi Akhir Evolutionary Development Model

  35. Evolutionary Development Model • Masalah-masalah dalam Pengembangan Evolusioner • Proses tidak dapat dilihat • Sistem seringkali mempunyai struktur yang tidak baik • Mungkin diperlukan alat bantu khusus • Model pengembangan evolusioner ini cocok untuk aplikasi yang kecil dan life-cycle yang pendek.

  36. Spiral Development Model

  37. Spiral Development Model • Spiral Model Description • The development spiral consists of four quadrants • Quadrant 1: Determine objectives, alternatives, and constraints. • Quadrant 2: Evaluate alternatives, identify, resolve risks. • Quadrant 3: Develop, verify, next-level product. • Quadrant 4: Plan next phases.

  38. Incremental Development Model

  39. Incremental Development Model • Prosesperangkatlunakdibagimenjadiserangkaian increment yang dikembangkansecarabergantian. • KeuntunganPengembangan Incremental • User tidakperlumenungguseluruhsistemdikirimkan, karena increment pertamamempunyaipersyaratankritisdanperangkatlunaksegeradapatdigunakan. • User dapatmemakai increment pertamasebagai prototype • Resikokegagalanproyeksecarakeseluruhanlebihrendah • Pengujian paling ketatdiberlakukanpada increment pertama.

  40. Fase Utama PersyaratanPerangkat Lunak • Studi Kelayakan • Elisitasi dan Analisis Persyaratan • Spesifikasi Persyaratan • Validasi Persyaratan

  41. Studi Kelayakan Elisitasidan Analisis Persyaratan Spesifikasi Persyaratan Validasi Persyaratan Laporan Kelayakan Model Sistem Persyaratan User danSistem Dokumen Persyaratan Spesifikasi PersyaratanPerangkat Lunak

  42. Kegiatan PerancanganPerangkat Lunak • Perancangan Arsitektural • Spesifikasi Abstrak • Perancangan Interface • Perancangan Komponen • Perancangan Struktur Data • Perancangan Algoritma

  43. Spesifikasi Persyaratan Perancangan Arsitektural Arsitektur Sistem Spesifikasi Abstrak Spesifikasi Perangkat Lunak Spesifikasi Interface Perancangan Interface Perancangan Komponen Spesifikasi Komponen Perancangan Struktur Data Spesifikasi Struktur data Spesifikasi Algoritma Perancangan Algoritma Perancangan dan ImplementasiPerangkat Lunak

  44. Validasi Perangkat Lunak Pengujian Unit Pengujian Modul Pengujian Sub Sistem Pengujian Sistem 1 Pengujian Sistem 2 Pengujian Komponen Pengujian Integrasi Pengujian User

  45. Definisi Persyaratan Sistem NilaiSistem Yang Ada Pengajuan Perubahan Sistem Modifikasi Sistem Sistem Yang Ada Sistem Baru Evolusi Perangkat Lunak

  46. Pemodelan Perangkat Lunak

  47. Pemodelan Perangkat Lunak • Pemodelan dan analisa dapat dianggap sebagai akar konsep dari semua displin teknik karena keutamaannya dalam mendokumentasikan dan mengevaluasi alternatif serta pilihan desain. • Pemodelan dilakukan pada awal analisa, spesifikasi dan validasi persyaratan. • Persyaratan yang dimaksud adalah semua kebutuhan pengguna, kustomer dan stakeholder yang harus dipenuhi oleh sistem. • Dalam pembuatan persyaratan melibatkan : • Analisa studi kelayakan dari sistem yang akan dibuat, • Memperoleh dan menganalisa kebutuhan dari stakeholder • Pembuatan gambaran yang akurat terhadap sistem tentang apa yang harus dilakukan sistem dan apa yang tidak. • Validasi terhadap dokumen atau spesifikasi oleh stakeholder

  48. Terimakasih

More Related