Software Process Software Process Terdapat 2 type software

  • Slides: 49
Download presentation
Software Process

Software Process

Software Process Terdapat 2 type software process: 1. Plan-driven processes merupakan proses di mana

Software Process Terdapat 2 type software process: 1. Plan-driven processes merupakan proses di mana semua kegiatan proses yang direncanakan terlebih dahulu dan kemajuan diukur terhadap rencana ini 2. In agile processes merupakan perencanaan tambahan dan lebih mudah untuk mengubah proses yang mencerminkan perubahan kebutuhan pelanggan

Aliran Proses secara aliran: Linier, Iterative, Parallel, Evolutionary

Aliran Proses secara aliran: Linier, Iterative, Parallel, Evolutionary

Waterfall Model / Classic life cycle Dengan metodologi pengembangan berbasis waterfall: Proses berjalan berurutan

Waterfall Model / Classic life cycle Dengan metodologi pengembangan berbasis waterfall: Proses berjalan berurutan dari satu tahap ke tahap berikutnya. Dua kunci kunggulan metodologi pengembangan berbasis waterfall adalah: - Persyaratan sistem diidentifikasi lama sebelum pemrograman dimulai - Perubahan kebutuhan diminimalkan sebagai hasil project 4

Waterfall Model / Classic life cycle Kunggulan metodologi pengembangan berbasis waterfall: Mudah untuk dipahami,

Waterfall Model / Classic life cycle Kunggulan metodologi pengembangan berbasis waterfall: Mudah untuk dipahami, mudah untuk digunakan Tahapan dipahami dengan baik Kontrol management baik Bekerja baik ketika kualitas lebih penting dari biaya atau jadwal Pengidentifikasian system request yang lama sebelum memulai menuliskan kode (programming), meminimalisasi perubahan-perubahan yang terjadi 5

Waterfall Model / Classic life cycle Kelemahan dari metodologi pengembangan waterfall: • Semua kebutuhan

Waterfall Model / Classic life cycle Kelemahan dari metodologi pengembangan waterfall: • Semua kebutuhan harus diketahui di awal • Waktu yang lama antara system proposal (produk dari planning) dan peyerahan sistem baru • Design harus spesifik sebelum melakukan programming • Kemungkinannya kecil bagi customer untuk dapat melihat preview sistem yang sedang dikerjakan 6

Waterfall Development-based Methodology 7

Waterfall Development-based Methodology 7

Varian Waterfall – V Model

Varian Waterfall – V Model

Masalah Model Waterfall • Sulit untuk merespon perubahan kebutuhan customer. Oleh sebab itu, model

Masalah Model Waterfall • Sulit untuk merespon perubahan kebutuhan customer. Oleh sebab itu, model ini hanya sesuai bila kebutuhan dimengerti dengan baik dan perubahan akan menjadi mudah selama proses perancangan 9

Increment Model • Incremental Model merupakan gabungan antara model linier sekuensial dan pararel •

Increment Model • Incremental Model merupakan gabungan antara model linier sekuensial dan pararel • Setiap linier sekuen menghasilkan produk yang deliverables (dapat dikirim) • Increment pertama merupakan produk inti (core), yang mengandung persyaratan / kebutuhan dasar • Penambahan dilakukan pada increment berikutnya

Increment Process Model

Increment Process Model

The Evolutionary Model : Prototyping

The Evolutionary Model : Prototyping

Prototyping • Metodologi berbasis prototipe melakukan fase analisis, desain dan implementasi bersamaan. • Semua

Prototyping • Metodologi berbasis prototipe melakukan fase analisis, desain dan implementasi bersamaan. • Semua tiga fase dilakukan berulang dalam siklus sampai sistem selesai. • Sebuah prototipe adalah versi lebih kecil dari sistem dengan jumlah minimal fitur Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 13

Prototyping-based Methodology Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design,

Prototyping-based Methodology Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 14

Prototyping: Advantage • Sangat cepat memberikan sistem bagi pengguna untuk berinteraksi (bahkan jika organisasi

Prototyping: Advantage • Sangat cepat memberikan sistem bagi pengguna untuk berinteraksi (bahkan jika organisasi itu tidak siap/tidak memiliki gambaran) • Prototyping meyakinkan klien bahwa tim proyek bekerja dengan baik (tidak ada penundaan yang lama dimana pengguna melihat kemajuan), • Prototyping membantu lebih cepat memperbaiki persyaratan nyata (pengguna dapat berinteraksi dengan prototipe untuk lebih memahami apa yang bisa dan tidak bisa lakukan).

Prototyping: Disadvantage • Sistem rilis yang cepat memiliki tantangan untuk mencoba melakukan dengan hati-hati

Prototyping: Disadvantage • Sistem rilis yang cepat memiliki tantangan untuk mencoba melakukan dengan hati-hati pada fase analisis. • Seringkali prototipe mengalami perubahan yang signifikan sehingga banyak keputusan desain awal terbukti menjadi desain yg lemah

Throwaway Prototyping (1) • Throw-Away prototyping menggunakan prototyping untuk tujuan yang berbeda dari prototyping

Throwaway Prototyping (1) • Throw-Away prototyping menggunakan prototyping untuk tujuan yang berbeda dari prototyping sebelumnya • Melakukan analisis secara menyeluruh, untuk mengumpulkan informasi & mengembangkan ide-ide untuk sebuah konsep sistem. Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 17

Throwaway Prototyping (2) • Masalah yang muncul diujicobakan atau diselesaikan dengan menganalisa, mendesign, &

Throwaway Prototyping (2) • Masalah yang muncul diujicobakan atau diselesaikan dengan menganalisa, mendesign, & membangun sebuah prototype (yang dinamakan design prototype) • Design prototype yang dibangun merupakan fitur yang belum dipahami dengan jelas Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 18

Throwaway Prototyping-based Methodology Power point Presentation for Dennis, Wixom, & Roth System Analysis and

Throwaway Prototyping-based Methodology Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 19

The Evolutionary : Spiral Model • Evolutionary process (pengembangan bertingkat) • Menggabungkan keunggulan prototyping

The Evolutionary : Spiral Model • Evolutionary process (pengembangan bertingkat) • Menggabungkan keunggulan prototyping yang bersifat iteratif dan waterfall yang terkendali • Memungkinkan dikembangkannya perangkat lunak secara bertahap (incremental) dan cepat yang bergerak dari versi perangkat lunak yang kurang lengkap menjadi versi yang semakin lengkap

The Evolutionary : Spiral Model Keuntungan • Model Spiral merupakan pendekatan yang cukup realistis

The Evolutionary : Spiral Model Keuntungan • Model Spiral merupakan pendekatan yang cukup realistis untuk diterapkan pada pengembangan system/perangkat lunak berskala besar – Perangkat Lunak bergerak semakin baik saat proses bergerak maju, pengembang perangkat lunak dan pelanggan menjadi lebih memahami spesifikasi produk dan beraksi secara cepat terhadap resiko perangkat lunak yang dijumpai di setiap peringkat evolusioner

The Evolutionary : Spiral Model Kerugian • Mengandalkan para expert untuk menilai resiko. Jika

The Evolutionary : Spiral Model Kerugian • Mengandalkan para expert untuk menilai resiko. Jika resiko tidak tersingkap dan tidak bisa dikelola dengan baik, permasalahan-permasalahan yang buruk sangat akan mungkin terjadi

The Evolutionary : Spiral Model • Dua fitur pembeda model Spiral dibandingkan dengan model

The Evolutionary : Spiral Model • Dua fitur pembeda model Spiral dibandingkan dengan model lainnya: • Pertama: Pendekatan siklis untuk secara sedikit demi sedikit (inkremental) mengembangkan system/perangkat lunak yang semakin bertumbuh derajat definisi dan implementasinya dan bersamaan dengan itu mengurangi derajat resikonya.

The Evolutionary : Spiral Model • Dua fitur pembeda model Spiral dibandingkan dengan model

The Evolutionary : Spiral Model • Dua fitur pembeda model Spiral dibandingkan dengan model lainnya: • Kedua: sejumlah titik dalam waktu pengembangan perangkat lunak (milestone) yang digunakan untuk memastikan para stakeholder secara bersamaan menemukan solusi system/perangkat lunak yang memuaskan semua pihak

The Evolutionary : Spiral Model

The Evolutionary : Spiral Model

An Agile View of Process • Dapat memberikan sistem yang sukses dengan cepat dengan

An Agile View of Process • Dapat memberikan sistem yang sukses dengan cepat dengan menekankan komunikasi yang terus menerus dan kolaborasi diantara pengembang dan pelanggan

Agile Development • Menggunakan sedikit aturan yang mudah untuk dipelajari dan diikuti • Mengurangi

Agile Development • Menggunakan sedikit aturan yang mudah untuk dipelajari dan diikuti • Mengurangi banyak pemodelan dokumentasi • Menekankan kesederhanaan (simple) dan pengembangan aplikasi yang iteratif (berulang) • Contoh pengembangan ini: – Extreme Programming (XP) – Scrum – Dynamic Systems Development Model (DSDM)

Extreme Programming (XP) “Core Values” of XP 1. 2. 3. 4. Communication Simplicity Feedback

Extreme Programming (XP) “Core Values” of XP 1. 2. 3. 4. Communication Simplicity Feedback Courage (Quality First, test and efficient coding)

Extreme Programming (XP) 1. User Stories about system do 2. Code small program using

Extreme Programming (XP) 1. User Stories about system do 2. Code small program using defined standards 3. User Feedback 4. Repeat

Extreme Programming (XP)

Extreme Programming (XP)

Selecting the Right Methodology 1. Clarity of User Requirements (Kejelasan Kebutuhan Pengguna) 2. Familiarity

Selecting the Right Methodology 1. Clarity of User Requirements (Kejelasan Kebutuhan Pengguna) 2. Familiarity with Technology (Kefamiliaran dengan teknologi) 3. System Complexity (Kompleksitas Sistem) 4. System Reliability (Keandalan Sistem) 5. Short Time Schedules (Jadwal Pendek) 6. Schedule Visibility

Selecting the Right Methodology *Prototyping dan Throwaway Prototyping merupakan bagian dari metode pengembangan cepat

Selecting the Right Methodology *Prototyping dan Throwaway Prototyping merupakan bagian dari metode pengembangan cepat / Rapid Application Development (RAD)

Kejelasan Kebutuhan Pengguna • RAD methodologies of prototyping and throwaway prototyping biasanya lebih tepat

Kejelasan Kebutuhan Pengguna • RAD methodologies of prototyping and throwaway prototyping biasanya lebih tepat bila kebutuhan pengguna tidak jelas karena mereka memberikan prototipe bagi pengguna untuk berinteraksi di awal SDLC Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 34

Kefamiliaran Dengan Teknologi • Jika sistem ini dirancang tanpa beberapa keakraban dengan basis teknologi,

Kefamiliaran Dengan Teknologi • Jika sistem ini dirancang tanpa beberapa keakraban dengan basis teknologi, risiko meningkat karena alat mungkin tidak mampu melakukan apa yang dibutuhkan Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 35

Kompleksitas Sistem • Sistem komplek membutuhkan kehati-hatian dan analisa desain yang detail Power point

Kompleksitas Sistem • Sistem komplek membutuhkan kehati-hatian dan analisa desain yang detail Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 36

Keandalan Sistem • Keandalan sistem biasanya merupakan faktor penting dalam pengembangan sistem. • Metodologi

Keandalan Sistem • Keandalan sistem biasanya merupakan faktor penting dalam pengembangan sistem. • Metodologi berbasis prototipe umumnya bukan pilihan yang baik karena mereka tidak memiliki fase analisis dan desain yang cermat Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 37

Jadwal Waktu Pendek • metodologi berbasis RAD sangat cocok untuk proyek-proyek dengan jadwal waktu

Jadwal Waktu Pendek • metodologi berbasis RAD sangat cocok untuk proyek-proyek dengan jadwal waktu yang singkat karena mereka meningkatkan kecepatan. • metodologi berbasis waterfall adalah pilihan terburuk ketika waktu adalah penting karena mereka tidak memungkinkan untuk perubahan jadwal dengan mudah Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 38

Schedule Visibility • Metodologi berbasis RAD bergerak banyak keputusan desain kritis di awal proyek;

Schedule Visibility • Metodologi berbasis RAD bergerak banyak keputusan desain kritis di awal proyek; akibatnya, ini membantu manajer proyek mengenali dan faktor risiko dan menjaga harapan yang tinggi. Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 39

Project Team Skills and Rules • Proyek harus terdiri dari berbagai individu terampil dalam

Project Team Skills and Rules • Proyek harus terdiri dari berbagai individu terampil dalam rangka untuk sistem untuk menjadi sukses. • Enam keterampilan utama menetapkan seorang analis harus memiliki mencakup: –Technical –Business –Analytical –Interpersonal –Management –Ethical Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3 rd Edition Copyright 2006©John Wiley & Sons. Inc 40

Project Team Roles 41

Project Team Roles 41

TERIMA KASIH

TERIMA KASIH

Kasus - 1 • PT. Indo. Software (pihak-1) diminta membantu membuat website untuk Departemen

Kasus - 1 • PT. Indo. Software (pihak-1) diminta membantu membuat website untuk Departemen Pariwisata (pihak-2). Secara umum, pihak-2 mengetahui informasi apa saja yang harus ditampilkan pada website. Akan tetapi, bagaimana informasi tersebut ditampilkan, pihak-2 memerlukan bantuan dari pihak-1, termasuk didalamnya alur penyajian informasi dan bentuk serta media penyajian informasinya. Model proses apa yang paling tepat dipilih PT Indo. Software ? Jelaskan alasan anda.

Kasus - 1 • Pemilihan model yang tepat adalah Throwaway Prototyping karena klien hanya

Kasus - 1 • Pemilihan model yang tepat adalah Throwaway Prototyping karena klien hanya tidak mengetahui bagaimana alur informasi ditampilkan, bentuk serta medianya jadi harus dibuatkan prototypenya terlebih dahulu. Dan prototype tsb hanya sebagai desain untuk memuat apa yang belum dipahami klien.

Kasus 2 • PT Sukses Makmur sudah lama menggunakan perangkat lunak yang membantu operasional

Kasus 2 • PT Sukses Makmur sudah lama menggunakan perangkat lunak yang membantu operasional perusahaan. Akan tetapi, karena perusahaan ingin berpindah dari platform X ke platform Y, maka perangkat lunak versi baru perlu dibangun. PT Sukses Makmur meminta bantuan PT Software Solution untuk membuat perangkat lunak yang baru. Model proses apa yang paling tepat dipilih PT. Software Solution ? Jelaskan alasan anda.

Kasus 2 • Pemilihan model yang tepat adalah Waterfall, karena perpindahan platform tidak mensyaratkan

Kasus 2 • Pemilihan model yang tepat adalah Waterfall, karena perpindahan platform tidak mensyaratkan analisa kebutuhan baru (kebutuhan jelas sudah dipahami dengan baik) kualitas lebih diutamakan daripada jadwal

Kasus 3 • Sebuah proyek pembangunan perangkat lunak berskala besar akan segera dijalankan PT

Kasus 3 • Sebuah proyek pembangunan perangkat lunak berskala besar akan segera dijalankan PT Sys. Software adalah sebuah software company skala besar, sehingga memiliki cukup banyak tenaga ahli. Perangkat lunak yang akan dibangun terdiri dari sembilan modul utama yang nantinya harus diintegrasikan. Sayangnya, meski perangkat lunak yang akan dibangun cukup besar, waktu yang tersedia terbatas. Model proses apa yang paling tepat dipilih PT Sys. Software ? Jelaskan alasan anda.

Kasus 3 • Pemilihan model yang tepat adalah Spiral, karena projek memiliki skala besar

Kasus 3 • Pemilihan model yang tepat adalah Spiral, karena projek memiliki skala besar dengan waktu terbatas namun perusahaan didukung oleh banyak tenaga ahli. Modulmodul yang sudah dipetakan dapat digunakan sebagai fokus pekerjaan yang iterative dalam mengembangkan perangkat lunak

Kasus 4 • PT Web. Solution adalah perusahaan pengembang software yang relatif baru berdiri.

Kasus 4 • PT Web. Solution adalah perusahaan pengembang software yang relatif baru berdiri. Anggota timnya pun masih terbatas. Meskipun terbatas, setiap anggota adalah individu yang dapat diandalkan. PT ini mempunyai fokus pada pengembangan aplikasi berbasis web. Sebagian besar proyek yang ditangani harus selesai dalam waktu singkat. Karakteristik konten aplikasi yang sering berubah menuntut developer ini untuk terus menerus me-maintain aplikasi yang telah dibuatnya. Menurut anda, model proses apa yang paling tepat dipilih?

Kasus 4 • Pemilihan model yang tepat adalah Extreme Programming (XP) karena kebutuhan yang

Kasus 4 • Pemilihan model yang tepat adalah Extreme Programming (XP) karena kebutuhan yang sering berubah-ubah namun waktu yang diberikan sangat terbatas. Pekerjaan tidak melibatkan banyak orang namun masing-masing memiliki skil yang baik memungkinkan pekerjaan dapat dilakukan dengan cepat (speed-up)