Anda di halaman 1dari 49

Software Process

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
Proses secara aliran: Linier,
Iterative, Parallel,
Evolutionary
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, 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 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
Varian Waterfall – V Model
Masalah Model Waterfall

• Sulit untuk merespon perubahan 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
• Setiap linier sekuen menghasilkan produk yang
deliverables (dapat dikirim)
• Increment pertama merupakan produk inti
(core), yang mengandung persyaratan /
kebutuhan dasar
• Penambahan dilakukan pada increment-
increment berikutnya
Increment Process Model
The Evolutionary Model :
Prototyping
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

13
Prototyping-based Methodology

Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

14
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 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 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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

17
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

18
Throwaway Prototyping-based
Methodology

Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

19
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 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 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 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 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
An Agile View of Process

• Dapat memberikan sistem yang sukses dengan


cepat dengan menekankan komunikasi yang
terus menerus dan kolaborasi diantara para
pengembang dan pelanggan
Agile Development

• Menggunakan sedikit aturan yang mudah untuk


dipelajari dan diikuti
• Mengurangi banyak pemodelan dan
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. Communication
2. Simplicity
3. Feedback
4. Courage (Quality First, test and efficient
coding)
Extreme Programming (XP)

1. User Stories about system do


2. Code small program using defined
standards
3. User Feedback
4. Repeat
Extreme Programming (XP)
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 / Rapid Application Development (RAD)
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

34
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

35
Kompleksitas Sistem

•Sistem komplek membutuhkan kehati-hatian


dan analisa desain yang detail

Power point Presentation for Dennis, Wixom, & Roth System Analysis and Design, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

36
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

37
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

38
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc

39
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, 3rd Edition
Copyright2006©John Wiley & Sons.Inc
40
Project Team Roles

41
TERIMA KASIH
Kasus - 1

• PT. IndoSoftware (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 IndoSoftware ? Jelaskan alasan anda.
Kasus - 1

• Pemilihan model yang tepat adalah


Throwaway Prototyping karena klien
hanya tidak mengetahui bagaimana alur
informasi ditampilkan, bentuk serta
medianya jadi harus dibuatkan prototype-
nya 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 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 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 SysSoftware. PT
SysSoftware 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 SysSoftware ? Jelaskan alasan anda.
Kasus 3

• Pemilihan model yang tepat adalah Spiral,


karena projek memiliki skala besar dengan
waktu terbatas namun perusahaan
didukung oleh banyak tenaga ahli. Modul-
modul yang sudah dipetakan dapat
digunakan sebagai fokus pekerjaan yang
iterative dalam mengembangkan
perangkat lunak
Kasus 4

• PT WebSolution 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
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 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)

Anda mungkin juga menyukai