These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2 Catatan Kuliah Rekayasa Perangkat Lunak (Software Engineering) Bagian 2 copyright © 2006 R.S. Pressman & Associates, Inc M. Idham Ananta Timur, S.T., M.Kom. Hanya digunakan di lingkungan Universtias Hanya boleh digandakan untuk mahasiswa di lingkungan universitas yang menggunakan buku Software Engineering: A Practitioner's Approach. Selain itu dilarang keras menggandakan. Presentasi, slide atau hardcopy tidak boleh digunakan untuk short courses, seminar industri, atau kepentingan konsultasi.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Software Engineering: A Practitioner’s Approach, 6/e Chapter 7 Rekayasa Kebutuhan Software Engineering: A Practitioner’s Approach, 6/e Chapter 7 Rekayasa Kebutuhan copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Rekayasa Kebutuhan I permulaan—tanya beberapa pertanyaan yang menjelaskan : permulaan—tanya beberapa pertanyaan yang menjelaskan : Pemahaman dasar dari masalah Pemahaman dasar dari masalah Orang yang membutuhkan solusi Orang yang membutuhkan solusi Keadaan dari solusi yang diinginkan Keadaan dari solusi yang diinginkan Efektivitas komunikasi dan kolaborasi awal antara konsumen dengan developer Efektivitas komunikasi dan kolaborasi awal antara konsumen dengan developer Perolehan—memperoleh kebutuhan dari semua stakeholder Perolehan—memperoleh kebutuhan dari semua stakeholder Penguraian—membuat model analisis yang mampu melakukan identifikasi kebutuhan data, fungsi dan perilaku Penguraian—membuat model analisis yang mampu melakukan identifikasi kebutuhan data, fungsi dan perilaku Negosiasi—menyepakati sistem penyajian yang realistis bagi konsumen dan developer Negosiasi—menyepakati sistem penyajian yang realistis bagi konsumen dan developer
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Rekayasa Kebutuhan-II Spesifikasi—salah satu dari berikut ini : Spesifikasi—salah satu dari berikut ini : Dokumen tertulis Dokumen tertulis Sekelompok model Sekelompok model Matematika formal Matematika formal Sekumpulan skenario user (use-cases) Sekumpulan skenario user (use-cases) Prototipe Prototipe Validasi—memeriksa mekanisme yang memuat Validasi—memeriksa mekanisme yang memuat Kesalahan isi atau interpretasi Kesalahan isi atau interpretasi Area dimana klarifikasi dibutuhkan Area dimana klarifikasi dibutuhkan Informasi yang hilang Informasi yang hilang inkonsistensi (masalah utama ketika produk atau sistem besar direkayasa) inkonsistensi (masalah utama ketika produk atau sistem besar direkayasa) Kebutuhan yang konflik atau tidak realistis. Kebutuhan yang konflik atau tidak realistis. Manajemen Kebutuhan Manajemen Kebutuhan
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Permulaan Kenali stakeholder Kenali stakeholder “who else do you think I should talk to?” “who else do you think I should talk to?” Kenali beberapa sudut pandang Kenali beberapa sudut pandang Berusahalah menuju kolaborasi Berusahalah menuju kolaborasi Pertanyaan pertama Pertanyaan pertama Siapa di belakang permintaan atas pekerjaan ini ? Siapa di belakang permintaan atas pekerjaan ini ? Siapa yang akan menggunakan solusi ini? Siapa yang akan menggunakan solusi ini? Apa keuntungan ekonomi dari solusi yang sukses ? Apa keuntungan ekonomi dari solusi yang sukses ? Apakah ada sumber solusi lain yang anda butuhkan? Apakah ada sumber solusi lain yang anda butuhkan?
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Memperoleh Kebutuhan
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Memperoleh Kebutuhan Pertemuan diadakan dan dihadiri baik oleh software engineer maupun konsumen Pertemuan diadakan dan dihadiri baik oleh software engineer maupun konsumen Aturan persiapan dan partisipasi dibuat Aturan persiapan dan partisipasi dibuat Agenda ditawarkan Agenda ditawarkan Seorang fasilitator (bisa konsumen, developer atau orang luar) mengendalikan pertemuan Seorang fasilitator (bisa konsumen, developer atau orang luar) mengendalikan pertemuan Mekanisme definisi digunakan (bisa berupa kertas kerja, grafik, bulletin board elektronik, forum virtual dsb Mekanisme definisi digunakan (bisa berupa kertas kerja, grafik, bulletin board elektronik, forum virtual dsb Tujuannya adalah Tujuannya adalah Menemukan permasalahan Menemukan permasalahan Mengajukan elemen-elemen solusi Mengajukan elemen-elemen solusi Negosiasi pendekatan yang berbeda Negosiasi pendekatan yang berbeda Menentukan sekelompok kebutuhan solusi awal Menentukan sekelompok kebutuhan solusi awal
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Penyebaran Fungsi Kualitas Penyebaran fungsi menemukan “nilai” (dalam persepsi konsumen) dalam setiap fungsi yang diperlukan sistem Penyebaran fungsi menemukan “nilai” (dalam persepsi konsumen) dalam setiap fungsi yang diperlukan sistem Penyebaran Informasi menentukan event dan objek data Penyebaran Informasi menentukan event dan objek data Penyebaran Tugas memeriksa perilaku sistem Penyebaran Tugas memeriksa perilaku sistem Analisis Nilai menentukan prioritas relatif dari kebutuhan Analisis Nilai menentukan prioritas relatif dari kebutuhan
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Mendapatkan Produk-Produk Kerja Sebuah pernyataan kebutuhan dan kemungkinan dikerjakan. Sebuah pernyataan kebutuhan dan kemungkinan dikerjakan. Pernyataan terbatas tentang lingkup sistem atau produk. Pernyataan terbatas tentang lingkup sistem atau produk. Daftar konsumen, pengguna dan stakeholder lain yang berpartisipasi dalam pengumpulan kebutuhan Daftar konsumen, pengguna dan stakeholder lain yang berpartisipasi dalam pengumpulan kebutuhan Deskripsi lingkungan teknis sistem. Deskripsi lingkungan teknis sistem. Daftar kebutuhan (disarankan dikelompokkan berdasar fungsi) dan batasan domain yang diterapkan pada masing- masing kebutuhan. Daftar kebutuhan (disarankan dikelompokkan berdasar fungsi) dan batasan domain yang diterapkan pada masing- masing kebutuhan. Sekelompok skenario penggunaan yang menyediakan wawasan pada penggunaan sistem atau produk dalam kondisi operasi yang berbeda. Sekelompok skenario penggunaan yang menyediakan wawasan pada penggunaan sistem atau produk dalam kondisi operasi yang berbeda. Beberapa prototype yang dikembangkan untuk definisi kebutuhan yang lebih baik Beberapa prototype yang dikembangkan untuk definisi kebutuhan yang lebih baik.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Use-Cases Sekelompok skenario pengguna yang menggambarkan alur penggunaan sistem Sekelompok skenario pengguna yang menggambarkan alur penggunaan sistem Setiap skenario digambarkan dari sudut pandang “aktor”, seseorang atau piranti yang berinteraksi dengan PL dalam berbagai cara Setiap skenario digambarkan dari sudut pandang “aktor”, seseorang atau piranti yang berinteraksi dengan PL dalam berbagai cara Setiap skenario menjawab pertanyaan-pertanyaan berikut :: Setiap skenario menjawab pertanyaan-pertanyaan berikut :: Siapa aktor primer dan sekunder ? Siapa aktor primer dan sekunder ? Apa tujuan aktor ? Apa tujuan aktor ? Prekondisi apa yang harus ada sebelum cerita dimulai? Prekondisi apa yang harus ada sebelum cerita dimulai? Apa tugas atau fungsi utama yang dilakukan oleh aktor ? Apa tugas atau fungsi utama yang dilakukan oleh aktor ? Ekstensi apa yang harus diperhatikan ketika cerita digambarkan? Ekstensi apa yang harus diperhatikan ketika cerita digambarkan? Variasi apa yang mungkin pada interaksi aktor? Variasi apa yang mungkin pada interaksi aktor? Sistem informasi apa yang dibutuhkan, diproduksi atau diubah aktor ? Sistem informasi apa yang dibutuhkan, diproduksi atau diubah aktor ? Apakah aktor harus menginformasikan kepada sistem tentang perubahan di lingkungan luar ? Apakah aktor harus menginformasikan kepada sistem tentang perubahan di lingkungan luar ? Informasi apa yang diharapkan aktor dari sistem ? Informasi apa yang diharapkan aktor dari sistem ? Apakah aktor berharap diinformasikan tentang perubahan yang tidak terduga ? Apakah aktor berharap diinformasikan tentang perubahan yang tidak terduga ?
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Use-Case Diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Membangun Model Analisis Elemen-elemen model analisis Elemen-elemen model analisis Elemen-elemen berbasis skenario Elemen-elemen berbasis skenario Fungsional—memproses narasi untuk fungsi PL Fungsional—memproses narasi untuk fungsi PL Use-case—gambaran interaksi antara aktor dan sistem Use-case—gambaran interaksi antara aktor dan sistem Elemen-elemen berbasis Class Elemen-elemen berbasis Class Dipengaruhi oleh skenario Dipengaruhi oleh skenario Elemen-elemen Perilaku/Behavioral Elemen-elemen Perilaku/Behavioral State diagram State diagram Elemen-elemen berorientasi aliran Elemen-elemen berorientasi aliran Data flow diagram Data flow diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Class Diagram From the SafeHome system …
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, State Diagram
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Pola-Pola Analisis Nama Pola: sebutan yang mengungkap esensi pola. Maksud: Menggambarkan apa yang dilakukan atau direpresentasikan pola Motivasi: Sebuah skenario yang menggambarkan bagaimana pola dapat digunakan untuk menyelesaikan masalah. Pengaruh dan Konteks: deskripsi isu eksternal yang dapat mempengaruhi bagaimana pola digunakan, dan isu eskternal yang akan diselesaikan ketika pola diterapkan. Solusi: Deskripsi tentang bagaimana pola diterapkan untuk menyelesaikan masalah dengan tekanan pada isu struktural dan perilaku. Konsekuensi: menunjukkan apa yang terjadi apabila pola diterapkan dan apa kerugian yang ada selama aplikasi tersebut dijalankan. Desain: Membahas bagaimana pola analisis dapat diterima melalui penggunakan pola desain (design patterns) yang sudah dikenal. Penggunaan yang sudah dikenal: Contoh penggunaan di dalam sistem aktual. Pola terkait: Satu atau lebih pola analisis yang terkait dengan nama pola yang ada karena (1)secara umum digunakan dengan nama pola;(2)secara struktur mirip dengan nama pola;(3)variasi dari nama pola.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Negosiasi Kebutuhan Mengenali stakeholder kunci Mengenali stakeholder kunci Orang-orang ini yang akan dilibatkan negosiasi Orang-orang ini yang akan dilibatkan negosiasi Menentukan “kondisi menang” setiap stakeholder Menentukan “kondisi menang” setiap stakeholder Kondisi kemenangan tidak selalu jelas Kondisi kemenangan tidak selalu jelas Negosiasi Negosiasi Bekerja menuju sekumpulan kebutuhan yang merupakan win- win solution Bekerja menuju sekumpulan kebutuhan yang merupakan win- win solution
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Validasi Kebutuhan-I Apakah setiap kebutuhan konsisten dengan tujuan keseluruhan sistem/produk? Apakah setiap kebutuhan konsisten dengan tujuan keseluruhan sistem/produk? Apakah semua kebutuhan telah dispesifikasikan pada tingkat abstraksi yang tepat ? Apakah beberapa kebutuhan pada tingkatakan detail teknis tidak tepat pada level ini ? Apakah semua kebutuhan telah dispesifikasikan pada tingkat abstraksi yang tepat ? Apakah beberapa kebutuhan pada tingkatakan detail teknis tidak tepat pada level ini ? Apakah kebutuhan benar-benar diperlukan ataukan dia hanya merupakan fitur tambahan yang tidak esensial bagi tujuan sistem ? Apakah kebutuhan benar-benar diperlukan ataukan dia hanya merupakan fitur tambahan yang tidak esensial bagi tujuan sistem ? Apakah setiap kebutuhan terbatasi dengan baik dan tidak ambigu ? Apakah setiap kebutuhan terbatasi dengan baik dan tidak ambigu ? Apakah setiap kebutuhan mempunyai atribut ? Apakah sebuah sumber tercatat untuk setiap kebutuhan ? Apakah setiap kebutuhan mempunyai atribut ? Apakah sebuah sumber tercatat untuk setiap kebutuhan ? Apakah setiap kebutuhan konflik dengan kebutuhan lain ? Apakah setiap kebutuhan konflik dengan kebutuhan lain ?
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Validasi Kebutuhan--II Apakah setiap kebutuhan dapat diterima dalam lingkungan teknik yang menjadi rumah bagi sistem/produk? Apakah setiap kebutuhan dapat diterima dalam lingkungan teknik yang menjadi rumah bagi sistem/produk? Apakah setiap kebutuhan dapat diuji, setelah diimplementasi ? Apakah setiap kebutuhan dapat diuji, setelah diimplementasi ? Apakah model kebutuhan mencerminkan informasi, fungsi, dan perilaku sistem yang dibangun dengan baik. Apakah model kebutuhan mencerminkan informasi, fungsi, dan perilaku sistem yang dibangun dengan baik. Apakah model kebutuhan telah dipartisi sedemikian sehingga menampilkan secara progresif informasi yang lebih detail tentang sistem ? Apakah model kebutuhan telah dipartisi sedemikian sehingga menampilkan secara progresif informasi yang lebih detail tentang sistem ? Apakah pola kebutuhan telah digunakan untuk mempermudan model kebutuhan ? Apakah semua pola telah divalidasi? Apakah pola konsisten dengan kebutuhan konsumen ? Apakah pola kebutuhan telah digunakan untuk mempermudan model kebutuhan ? Apakah semua pola telah divalidasi? Apakah pola konsisten dengan kebutuhan konsumen ?