1. MODEL SYNCHRONIZE AND STABILIZE

Model ini adalah model yang digunakan oleh Microsoft. Secara garis besar, Model Synchronize and Stabilize ini sama dengan model incremental, tetapi oleh CUsamano dan Selby tahun 1997 menyebutnya sebagai model Syncronize and Stabilized Model karena ada beberapa proses manajemen yang ditekannya oleh microsoft.
Model Synchronize and Stabilize merupakan sebuah pendekatan menyeluruh untuk mengembangkan dan mengelola sistem perangkat lunak skala besar.
Keuntungan Model Synchronize and Stabilize:
-Pendekatan pembangunan sistem periodik membuka jalan untuk menguji perangkat lunak untuk kedua fungsionalitas dan kinerja.
– Pemantauan proyek akan mudah karena ada tonggak menengah.
– Masalah integrasi yang dihadapi dalam proyek-proyek besar menggunakan model lainnya dieliminasi dalam model ini.
– Karena rilis menengah, produk dapat dibuat kaya fitur dengan memasukkan umpan balik yang diperlukan.
Model Synchronize and Stabilize adalah metodologi Pengembangan Sistem Life Cycle di mana tim bekerja secara bersamaan pada modul aplikasi individu. Mereka sering melakukan sinkronisasi kode mereka dengan tim lain, dan debug atau “menstabilkan” kode mereka secara teratur sepanjang proses pembangunan. Fitur khusus dari model ini adalah bahwa spesifikasi lengkap hanya ketika produk siap. Model ini telah digunakan secara luas oleh banyak organisasi pengembangan produk yang inovatif.
Kekurangan Model Synchronize and Stabilize:
– Sebuah tim pengujian independen paralel perlu berada di tempat.
– Dokumen spesifikasi rinci akan tersedia hanya pada saat rilis.
– Sistem Periodik membangun meminta proses ketat untuk didefinisikan untuk integrasi berbagai modul.
Pada akhirnya, setiap hari dilakukan proses sinkronisasi, yaitu menggabungkan bagian-bagian yang terpisah tersebut kemudian ditesting. Proses stabilisasi dilakukan pada akhir pembangunan setiap bagian. Kesalahan yang terjadi akan diperbaiki, dan tidak akan ada perubahan spesifikasi.
Proses tim Synchronize-and-Stabilize dapat dirangkum sebagai berikut:
- Berorientasi kepada fitur
- Synchronize (pengembangan harian) and Stabilize (perbaikan kesalahan di setiap milestone)
- Product Managers mengembangkan vision statement dan fitur yang sesuai dengan keinginan customer.
- Program Managers mengembangkan fungsional spesifikasi berdasarkan vision statement.
- Program Managers membuat jadwal dan tim fitur paralel antara 3-8 pengembang dan penguji berdasarkan fungsional spesifikasi.
- Anggota tim dapat bekerja secara mandiri, sehingga dapat menghasilkan kreativitas dan kebebasan di dalam sebuah project.
- Fase perencanaan (3-12 bulan, tergantung besarnya suatu project)
- vision statement
- specification
- schedule and feature team formation
- Fase Pengembangan (6-12 bulan)
- subproject I: krusial 1/3 fitur, milestone release I
- subproject II: 1/3 fitur, milestone release II
- subproject III: final 1/3 fitur, milestone release III — code complete
- Fase Stabilization (3-8 bulan)
- Internal testing
- External testing di bagian “beta tester”
- Siap untuk diluncurkan, dimana terdapat “golden master” dan dokumentasi.
2. Metode Extreme Programming

Extreme Programming (XP) merupakan suatu pendekatan yang paling banyak dipakai untuk pengembangan perangkat lunak cepat. Alasan memakai metode Extreme Programming (XP) lantaran sifat dari aplikasi yang di kembangkan dengan cepat melalui tahapan-tahapan yang ada mencakup : Planning/Perencanaan, Design/Perancangan, Coding/Pengkodean dan Testing/Pengujian. (Pressman, 2012:88). Adapun tahapan pada Extreme Programming sanggup di jelaskan sebagai berikut:
1) Planning/Perencanaan
Pada tahap perencanaan ini dimulai dari pengumpulan kebutuhan yang membantu tim teknikal untuk memahami konteks bisnis dari sebuah aplikasi. Selain itu pada tahap ini juga mendefinisikan output yang akan dihasilkan, fitur yang dimiliki oleh aplikasi dan fungsi dari aplikasi yang dikembangkan.
2) Design/Perancangan
Metode ini menekankan desain aplikasi yang sederhana, untuk mendesain aplikasi sanggup memakai Class-Responsibility-Collaborator (CRC) cards yang mengidentifikasi dan mengatur class pada object-oriented.
3) Coding/Pengkodean
Konsep utama dari tahapan pengkodean pada extreme programming ialah pair programming, melibatkan lebih dari satu orang untuk menyusun kode.
4)Pengujian
Pada tahapan ini lebih fokus pada pengujian fitur dan fungsionalitas dari aplikasi.
Extreme Programming sempurna untuk dipergunakan untuk pembuatan acara yang:
- Membutuhkan perubahan yang cepat (misalnya: Game Mobile)
- Proyek beresiko tinggi dengan tantangan yang berat
- Tim programmer sedikit, yaitu sekitar 2–10 orang
- Adanya usul dari pelanggan secara langsung
Keuntungan Extreme Programming
- Meningkatkan kepuasan kepada klien
- Pembangunan system dibentuk lebih cepat
- Menjalin komunikasi yang baik dengan client.
- Meningkatkan komunikasi dan sifat saling menghargai antar developer.
Kekurangan Extreme Programming
- Cerita-cerita yang menunjukkan requirements dari pelanggan kemungkinan besar tidak lengkap sehingga Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
- Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga).
- XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user.
Referensi:
http://dwiwijaya97.blogspot.com/2017/02/metode-synchronize-stabilize.html
https://catatansaleh.blogspot.com/2013/07/8-macam-model-metode-sdlc-system.html