Anda di halaman 1dari 57

SOFTWARE DEVELOPMENT

2 SOFTWARE PROCESS

HERMAN TUSIADI, S.KOM., M.M.


Merupakan hasil kombinasi elemen-elemen dari model
waterfall yang diaplikasikan secara berulang, atau bisa
disebut gabungan dari Model linear sekuensial (waterfall)
dengan Model Prototype.

Elemen-elemen tersebut dikerjakan hingga menghasilkan


produk dengan spesifikasi tertentu kemudian proses
dimulai dari awal kembali hingga muncul hasil yang
spesifikasinya lebih lengkap dari sebelumnya dan
tentunya memenuhi kebutuhan pemakai.

Model ini berfokus pada penyampaian produk


operasional dalam Setiap pertambahanya. Pertambahan
awal ada di versi stripped down dari produk akhir, tetapi
memberikan kemampuan untuk melayani pemakai dan
juga menyediakan platform untuk evaluasi oleh pemakai.
Model ini cocok untuk proyek kecil dengan anggota tim
yang sedikit dan ketersediaan waktu yang terbatas.

THE
INCREMENTAL MODEL
 Pengembangan inkremental dalam
beberapa bentuk sekarang menjadi
pendekatan yang paling umum untuk
pengembangan sistem aplikasi dan
produk perangkat lunak.

 Pendekatan ini dapat berupa pendekatan yang digerakkan


oleh rencana, agile, atau biasanya, campuran dari
pendekatan-pendekatan ini.
 Dalam pendekatan berbasis rencana, peningkatan
sistem diidentifikasi terlebih dahulu;
 Dalam pendekatan agile, peningkatan awal
diidentifikasi, tetapi pengembangan peningkatan
selanjutnya tergantung pada kemajuan dan prioritas
pelanggan.

THE
INCREMENTAL MODEL
Incremental bagian mendasar dari metode pengembangan agile.

Incremental lebih baik daripada pendekatan waterfall untuk sistem


persyaratannya cenderung berubah selama proses pengembangan
(sebagian besar sistem bisnis dan produk perangkat lunak).

Incremental mencerminkan cara kita memecahkan masalah. Kita jarang


mencari solusi masalah yang lengkap terlebih dahulu, tetapi bergerak
menuju solusi dalam serangkaian langkah, mundur ketika kita menyadari
bahwa kita telah membuat kesalahan. Dengan mengembangkan
perangkat lunak secara bertahap, akan lebih murah dan lebih mudah
untuk membuat perubahan pada perangkat lunak saat dikembangkan.

THE
INCREMENTAL MODEL
Setiap peningkatan atau versi sistem menggabungkan
beberapa fungsionalitas yang dibutuhkan oleh pelanggan.

Umumnya, peningkatan awal sistem mencakup


fungsionalitas yang paling penting atau yang paling
dibutuhkan.

Ini berarti bahwa pelanggan atau pengguna dapat


mengevaluasi sistem pada tahap yang relatif lebih awal
dalam pengembangan untuk melihat apakah sistem
tersebut memberikan apa yang dibutuhkan.
THE
INCREMENTAL MODEL
Biaya untuk menerapkan perubahan kebutuhan menjadi lebih rendah.
Jumlah analisis dan dokumentasi yang harus dilakukan ulang jauh lebih sedikit dibandingkan dengan
yang diperlukan dalam model air terjun.
Lebih mudah untuk mendapatkan umpan balik pelanggan tentang
pekerjaan pengembangan yang telah dilakukan.
Pelanggan dapat memberikan komentar pada demonstrasi perangkat lunak dan melihat sejauh mana
implementasinya.
Pengiriman dan implementasi perangkat lunak yang berguna kepada
pelanggan dapat dilakukan secara cepat, meskipun semua fungsionalitas
belum termasuk.
Pelanggan dapat menggunakan dan mendapatkan manfaat dari perangkat lunak lebih awal daripada yang
mungkin dilakukan dengan proses air terjun.

Keuntungan Utama
Permasalahan

Pertumbuhan menjadi sangat penting untuk sistem yang besar,


kompleks, dan memiliki umur panjang, di mana tim-tim yang
berbeda mengembangkan bagian-bagian yang berbeda dari sistem.
Sistem besar memerlukan kerangka atau arsitektur yang stabil, dan
tanggung jawab tim-tim yang bekerja pada bagian-bagian sistem
perlu ditentukan dengan jelas sehubungan dengan arsitektur
tersebut.
Permasalahan

Pengembangan bertahap (Incremental development) tidak berarti


bahwa Anda harus memberikan setiap peningkatan kepada
pelanggan sistem.
Anda dapat mengembangkan sistem secara bertahap dan
mengeksposnya kepada pelanggan dan pemangku kepentingan lain
untuk mendapatkan komentar, tanpa harus mengirimkannya dan
mendeploynya di lingkungan pelanggan.
Sistem aplikasi tersedia Mengonfigurasi aplikasi
Sistem penemuan perangkat lunak Penyempurnaan persyaratan
Spesifikasi persyaratan Menyesuaikan komponen
Evaluasi perangkat lunak Mengintegrasikan sistem Komponen yang tersedia
Mengembangkan komponen baru Gambar 2.3 Rekayasa perangkat lunak berorientasi penggunaan
kembali

Integration & Configuration


Pada sebagian besar proyek perangkat lunak, ada beberapa penggunaan
ulang perangkat lunak. Hal ini sering terjadi secara informal ketika orang-
orang yang bekerja pada proyek mengetahui atau mencari kode yang
mirip dengan yang dibutuhkan. Mereka mencari kode tersebut,
memodifikasinya sesuai kebutuhan, dan mengintegrasikannya dengan
kode baru yang mereka kembangkan.

Sejak tahun 2000, proses pengembangan perangkat lunak yang berfokus


pada penggunaan kembali perangkat lunak yang sudah ada telah
digunakan secara luas. Pendekatan berorientasi penggunaan ulang
bergantung pada basis komponen perangkat lunak yang dapat digunakan
kembali dan kerangka kerja yang mengintegrasikan komposisi
komponen-komponen ini.

INTEGRATION &
CONFIGURATION
Tiga jenis komponen perangkat lunak yang
sering digunakan kembali:
1. Sistem aplikasi yang berdiri sendiri /
mandiri merupakan sistem dengan
tujuan umum yang terdapat banyak
fitur tetapi diubah, dikonfigurasi,
diintegrasikan untuk bekerja di
lingkungan tertentu untuk kebutuhan
unik, sehingga menghasilkan sistem
tujuan tertentu.
2. Kumpulan objek yang dikembangkan
sebagai komponen atau sebagai paket
untuk diintegrasikan dengan kerangka
kerja komponen seperti Java Spring
Framework, Node.JS, Flutter, UI di
React, dll.
3. Layanan web yang dikembangkan
sesuai dengan standar layanan dan
tersedia untuk pemanggilan jarak jauh
melalui Internet, contoh: Payment
Gateway, Marketing Mail, dll.

INTEGRATION &
CONFIGURATION
Spesifikasi Persyaratan

Sebagai standar dalam semua Model Proses


Perangkat Lunak, spesifikasi kebutuhan
adalah langkah pertama dan penting dalam
pengembangan perangkat lunak. Di sinilah
semua pemangku kepentingan, insinyur, dan
tim duduk bersama dalam berbagai
pertemuan, menggabungkan pemikiran
mereka untuk membahas persyaratan
perangkat lunak dan
mendokumentasikannya. Ini mendefinisikan
tujuan sebenarnya, cara kerja, dan perilaku
yang diharapkan dari perangkat lunak.

INTEGRATION &
CONFIGURATION STAGES
Penemuan & Evaluasi

Mengingat garis besar persyaratan, pencarian


dilakukan untuk komponen dan sistem yang
menyediakan fungsionalitas yang
diperlukan. Bahan, sistem, dan perangkat lunak
yang dipilih dievaluasi untuk melihat seberapa
sesuainya dengan persyaratan yang diperlukan
dan seberapa besar fleksibilitas dalam
modifikasi dan Konfigurasi yang
diberikan. Misalkan suatu bagian memenuhi
fungsionalitas yang diinginkan dalam
fleksibilitas batasan yang diberikan. Dalam hal Pencarian dilakukan untuk komponen dan sistem yang menyediakan
fungsionalitas yang dibutuhkan.
ini, dipilih untuk tahap selanjutnya atau
pencarian lebih lanjut dilakukan. Kandidat komponen dan sistem dievaluasi untuk melihat apakah mereka
memenuhi persyaratan penting dan apakah mereka secara umum cocok
INTEGRATION & untuk digunakan dalam sistem.

CONFIGURATION STAGES
Perbaikan

Selama tahap ini, persyaratan didefinisikan


ulang menggunakan informasi dari sistem
dan komponen yang ditemukan. Persyaratan
diubah untuk mencerminkan pilihan yang
tersedia, dan spesifikasi sistem didefinisikan
ulang. Jika suatu saat modifikasi fitur ternyata
tidak mungkin dilakukan, maka diambil
langkah mundur untuk mencari solusi
Persyaratan dimodifikasi untuk mencerminkan komponen yang tersedia, dan spesifikasi
alternatif.
sistem didefinisikan kembali. Jika modifikasi tidak mungkin, aktivitas analisis komponen
dapat dimasukkan kembali untuk mencari solusi alternatif.

INTEGRATION &
CONFIGURATION STAGES
Konfigurasi

Pada fase ini, jika seluruh sistem dipilih, sistem tersebut akan dikonfigurasikan secara tunggal untuk
menyiapkan lingkungan guna menyediakan fungsionalitas yang diperlukan. Di sisi lain, jika sekumpulan
komponen dipilih, komponen-komponen tersebut dikonfigurasikan secara keseluruhan untuk bekerja
sama sebagai sistem yang benar-benar baru guna menyediakan fungsionalitas yang diperlukan; fase ini
dapat mengarah pada pembuatan komponen baru jika diperlukan.
Integrasi
Ini adalah fase terakhir, di mana semua komponen atau sistem yang dikonfigurasi diintegrasikan dan
diuji untuk memeriksa apakah komponen atau sistem tersebut berfungsi dan menyediakan
fungsionalitas yang diperlukan seperti yang diharapkan.
INTEGRATION &
CONFIGURATION STAGES
Rekayasa perangkat lunak yang berorientasi pada penggunaan ulang,
yang didasarkan pada konfigurasi dan integrasi, memiliki keuntungan
yang jelas dalam mengurangi jumlah perangkat lunak yang akan
dikembangkan sehingga mengurangi biaya dan risiko.

Hal ini biasanya juga mengarah pada pengiriman perangkat lunak yang
lebih cepat.

Namun demikian, kompromi persyaratan tidak dapat dihindari, dan hal ini
dapat menyebabkan sistem yang tidak memenuhi kebutuhan nyata
pengguna.

INTEGRATION &
CONFIGURATION STAGES
Model Incremental Model Air Terjun
Model pengembangan di mana keseluruhan model dibagi Model air terjun pertama-tama dilakukan pengembangan
menjadi berbagai sub fase pengembangan, di mana fase aplikasi dan setelah itu dilakukan pengujian aplikasi yang
pengujian yang sesuai untuk setiap fase pengembangan berbeda. Proses yang lengkap dibagi menjadi beberapa
adalah praktik. Untuk setiap tahapan dalam siklus tahap, dan masing-masing tahap mengalir ke tahap
Definisi pengembangan, terdapat fase pengujian terkait dan fase berikutnya, setelah selesai. Pengujian dilakukan pada akhir
pengujian terkait dari fase pengembangan direncanakan pengembangan.
secara paralel.

Pengerjaan tahapan yakni pengembangan dan pengujian Ini adalah pendekatan desain sekuensial yang relatif linier,
berlangsung secara berurutan, sehingga prosesnya bersifat karena setiap fase harus diselesaikan untuk mencapai fase
Jenis/Sifat berurutan/paralel. berikutnya. Jadi, jenis model ini bersifat Kontinu.

Setiap fase pengembangan diikuti dengan pengujiannya Pengujian dilakukan setelah pengembangan selesai. Oleh
sendiri. Jika ada validasi yang perlu diterapkan, maka karena itu, jika ada validasi yang hilang diidentifikasi untuk
Pengujian dan Validasi validasi tersebut dapat diterapkan pada tahap tersebut. diterapkan, maka fase pengembangan tersebut perlu
dikenali dan kemudian validasi tersebut diterapkan.

Karena fase-fase berurutan harus berfungsi, maka biayanya Karena pengembangan linier, hanya satu fase
lebih tinggi dibandingkan dengan Model Air Terjun. Selain pengembangan yang operasional sehingga biaya dan
Biaya dan Kompleksitas itu, kompleksitasnya lebih rumit. kompleksitasnya rendah dibandingkan dengan Model
Inkremental.

Kemungkinan jumlah total kekurangan dalam Kemungkinan jumlah total kekurangan dalam
Kekurangannya pengembangan aplikasi rendah karena pengujian dilakukan pengembangan aplikasi tinggi karena pengujian dilakukan
secara paralel dengan pengembangan. pasca pengembangan.
4 aktivitas proses dasar yaitu spesifikasi, pengembangan,
validasi, dan evolusi diorganisasikan secara berbeda dalam
proses pengembangan yang berbeda.

Dalam model air terjun, mereka diatur secara berurutan,


sedangkan dalam pengembangan incremental disisipkan.

Empat proses dasar


Spesifikasi perangkat lunak atau rekayasa
kebutuhan adalah proses memahami dan
mendefinisikan layanan apa yang diperlukan dari
sistem dan mengidentifikasi kendala pada operasi
dan pengembangan sistem.

Rekayasa kebutuhan adalah tahap yang sangat


penting dalam proses perangkat lunak, karena
kesalahan yang dibuat pada tahap ini pasti akan
menimbulkan masalah di kemudian hari dalam
desain dan implementasi sistem.

1/4 Software Specification


Proses rekayasa kebutuhan bertujuan
untuk menghasilkan dokumen
persyaratan yang disepakati yang
menentukan sistem yang memuaskan
kebutuhan pemangku kepentingan.

Persyaratan biasanya disajikan pada


dua tingkat detail:
 detail tingkat pengguna /
pelanggan, dan
 detail tingkat pengembang sistem.

1/4 Software Specification


Ada 3 kegiatan utama dalam proses
persyaratan rekayasa
Requirements elicitation and analysis
Menghasilkan persyaratan sistem melalui pengamatan sistem
yang ada, diskusi dengan pengguna potensial dan provider,
analisis tugas, dan sebagainya.

Requirements specification
Aktivitas menerjemahkan informasi yang dikumpulkan selama
analisis kebutuhan ke dalam dokumen yang mendefinisikan
serangkaian persyaratan.

Requirements validation
Memeriksa persyaratan untuk realisme, konsistensi, dan
kelengkapan. Selama proses ini, kesalahan dalam dokumen
persyaratan tidak dapat dihindari. Kemudian harus diubah
untuk memperbaiki masalah ini.

1/4 Software Specification


Analisis persyaratan berlanjut selama
definisi, spesifikasi, dan tuntutan baru
muncul sepanjang proses.

Dalam metode agile, spesifikasi


persyaratan bukanlah kegiatan
terpisah tetapi dilihat sebagai bagian
dari pengembangan sistem.

Persyaratan ditentukan secara


informal untuk setiap peningkatan
sistem sebelum peningkatan itu
dikembangkan.

1/4 Software Specification


Ini adalah proses mengembangkan
sistem yang dapat dijalankan untuk
pengiriman ke pelanggan.

Kadang-kadang ini melibatkan


kegiatan terpisah dari desain
perangkat lunak dan pemrograman.

2/4 Software Design &


Implementation
Dalam pendekatan agile, desain dan
implementasi dihubungkan, tanpa
dokumen desain formal yang
diproduksi selama proses.

Perangkat lunak masih dirancang,


tetapi desain dicatat secara informal
pada kertas catatan dan notebook
programmer.

2/4 Software Design &


Implementation
SOFTWARE DESIGN
Deskripsi dari struktur perangkat lunak yang
akan diimplementasikan, model data dan
struktur yang digunakan oleh sistem,
antarmuka antara komponen sistem dan
algoritma yang digunakan.
Desainer tidak tiba pada desain langsung jadi
tetapi mengembangkan desain secara
bertahap.

Aktivitas proses desain adalah disisipkan dan


saling tergantung. Informasi baru tentang
desain terus-menerus dihasilkan, dan ini
mempengaruhi keputusan desain sebelumnya.
Oleh karena itu, rework desain tidak dapat
dihindari.

2/4 Software Design &


Implementation
4 kegiatan dari proses desain untuk sistem informasi
Architectural design
Mengidentifikasi struktur keseluruhan sistem, komponen utama (kadang-kadang
disebut subsistem atau modul), hubungan, dan bagaimana didistribusikan.

Database design
Merencanakan struktur data sistem dan bagaimana cara diwakili dalam database.
Pekerjaan di sini tergantung pada apakah database yang ada akan digunakan kembali
atau database baru akan dibuat.
Interface design
Tentukan antarmuka antara komponen sistem. Spesifikasi antarmuka ini harus jelas.
Dengan antarmuka yang tepat, sebuah komponen dapat digunakan oleh komponen
lain tanpa perlu mengetahui bagaimana implementasinya. Setelah spesifikasi
antarmuka disepakati, komponen-komponen dapat dirancang dan dikembangkan
secara terpisah.
Component selection and design
Mencari komponen yang dapat digunakan kembali dan, jika tidak ada komponen sesuai
yang tersedia, merancang komponen perangkat lunak baru. Ini bisa menjadi daftar
perubahan yang harus dilakukan pada komponen yang dapat digunakan kembali atau
model desain terperinci yang dinyatakan dalam UML. Model desain kemudian dapat
digunakan untuk secara otomatis menghasilkan implementasi.

2/4 Software Design &


Implementation
Untuk sistem-sistem kritis, hasil dari
proses desain adalah dokumen desain
rinci yang menetapkan deskripsi
sistem yang tepat dan akurat.

Jika pendekatan berbasis model


digunakan, hasil desain berupa
diagram desain.

Ketika metode pengembangan agile


digunakan, hasil dari proses desain
mungkin bukan dokumen spesifikasi
terpisah tetapi dapat direpresentasikan
dalam kode program.
2/4 Software Design &
Implementation
IMPLEMENTATION

Pengembangan program untuk menerapkan


suatu sistem mengikuti secara alami dari
desain sistem.

Alat pengembangan perangkat lunak dapat


digunakan untuk menghasilkan program
kerangka dari desain, pengembang hanya
perlu menambahkan detail operasi dari
setiap komponen program.

Pemrograman adalah kegiatan individu, dan


tidak ada proses umum yang biasanya
diikuti. Beberapa programmer memulai
dengan komponen dipahami.

2/4 Software Design &


Implementation
Biasanya, para programmer melakukan
pengujian terhadap kode yang telah mereka
kembangkan. Hal ini sering kali
mengungkapkan adanya cacat program
(bug) yang harus dihilangkan dari program
tersebut.
Menemukan dan memperbaiki cacat
program disebut debugging.
Pengujian cacat dan debugging adalah
proses yang berbeda.
 Pengujian menetapkan adanya cacat.
 Debugging berkaitan dengan
menemukan dan memperbaiki cacat
tersebut.

2/4 Software Design &


Implementation
Verifikasi dan Validasi (V & V) bertujuan untuk menunjukkan bahwa sebuah sistem
sesuai dengan spesifikasinya dan memenuhi harapan dari pelanggan sistem.

Uji program, di mana sistem dieksekusi menggunakan data uji simulasi, adalah
teknik validasi utama. Validasi juga dapat melibatkan pemeriksaan proses, seperti
inspeksi dan peninjauan, di setiap tahap proses perangkat lunak mulai dari definisi
kebutuhan pengguna hingga pengembangan program.

3/4 Software Validation


Komponen sistem diintegrasikan untuk Sistem tidak boleh diuji sebagai satu unit
monolitik.

Untuk perangkat lunak kustom, pengujian pelanggan melibatkan pengujian sistem


dengan data pelanggan nyata.

Untuk produk yang dijual sebagai aplikasi, pengujian pelanggan terkadang disebut
pengujian beta di mana pengguna terpilih mencoba dan memberikan komentar
tentang perangkat lunak.

3/4 Software Validation


Tahapan dalam proses pengujian adalah:
 Component testing
Komponen yang membentuk sistem diuji oleh para pengembang
sistem. Setiap komponen diuji secara independen, tanpa
komponen sistem lainnya.
 System testing
Komponen sistem diintegrasikan untuk menciptakan sistem
lengkap. Proses ini berfokus pada menemukan kesalahan yang
timbul dari interaksi yang tidak terduga antara komponen dan
masalah antarmuka komponen.
 Customer testing
Tahap akhir dalam proses pengujian sebelum sistem diterima untuk
digunakan secara operasional. Sistem diuji oleh pelanggan sistem
(atau calon pelanggan) daripada dengan data uji simulasi.
Pada perangkat lunak yang dibangun khusus, pengujian pelanggan
mungkin mengungkapkan kesalahan dan kelalaian dalam definisi
persyaratan sistem, karena data nyata menguji sistem dengan cara
yang berbeda dari data uji. Pengujian pelanggan juga dapat
mengungkapkan masalah persyaratan di mana fasilitas sistem
sebenarnya tidak memenuhi kebutuhan pengguna atau kinerja
sistem tidak dapat diterima.
Uji coba pelanggan untuk produk menunjukkan seberapa baik
produk perangkat lunak memenuhi kebutuhan pelanggan.

3/4 Software Validation


Fleksibilitas perangkat lunak adalah
salah satu alasan utama mengapa
semakin banyak perangkat lunak
yang dimasukkan ke dalam sistem
yang besar dan kompleks.

Perubahan dapat dilakukan pada


perangkat lunak kapan saja selama
atau setelah pengembangan sistem.

Secara historis, selalu ada


pemisahan antara proses
pengembangan perangkat lunak dan
proses evolusi perangkat lunak
(pemeliharaan perangkat lunak).

4/4 Software Evolution


Perbedaan antara pengembangan dan
pemeliharaan semakin tidak relevan.
Hanya sedikit sistem perangkat lunak
yang benar-benar baru, dan akan lebih
masuk akal jika melihat pengembangan
dan pemeliharaan sebagai sebuah
kontinum / rangkaian.
Daripada dua proses yang terpisah, akan
lebih realistis jika menganggap rekayasa
perangkat lunak sebagai proses
evolusioner di mana perangkat lunak
terus berubah selama masa pakainya
untuk merespons perubahan
persyaratan dan kebutuhan pelanggan.

4/4 Software Evolution


Perubahan tidak dapat dihindari dalam semua proyek perangkat lunak
besar.
Kebutuhan sistem berubah seiring dengan perubahan bisnis dalam
menanggapi tekanan eksternal, persaingan, dan perubahan prioritas
manajemen.
Ketika teknologi baru tersedia, pendekatan baru untuk desain dan
implementasi menjadi mungkin.
Oleh karena itu, apa pun model proses perangkat lunak yang digunakan,
sangat penting untuk mengakomodasi perubahan pada perangkat lunak
yang sedang dikembangkan.

COPING WITH CHANGE


Perubahan menambah biaya pengembangan perangkat lunak karena
biasanya berarti pekerjaan yang sudah selesai harus dikerjakan ulang. Ini
disebut pengerjaan ulang.

Kemudian mungkin perlu mendesain ulang sistem untuk memenuhi


persyaratan baru, mengubah program yang telah dikembangkan, dan
menguji ulang sistem.

COPING WITH CHANGE


Dua cara mengatasi perubahan dan persyaratan sistem:

System prototyping Incremental delivery

COPING WITH CHANGE


Prototipe adalah versi awal sistem perangkat lunak yang digunakan untuk
mendemonstrasikan konsep, mencoba opsi desain, dan mencari tahu lebih
banyak tentang masalah dan kemungkinan solusinya.
Pengembangan prototipe yang cepat dan berulang-ulang sangat penting
agar biaya terkendali dan sistem dapat bereksperimen dengan prototipe di
awal proses perangkat lunak.

1/2 System Prototyping


Sebuah pendekatan untuk pengembangan perangkat lunak di mana
beberapa peningkatan yang dikembangkan dikirimkan ke pelanggan
untuk digunakan di lingkungan kerja mereka.
Pelanggan menentukan layanan mana yang paling penting dan mana
yang paling tidak penting bagi mereka.
2/2 INCREMENTAL
DELIVERY
 Pelanggan dapat menggunakan peningkatan awal sebagai prototipe dan mendapatkan
pengalaman yang menginformasikan kebutuhan mereka untuk peningkatan sistem selanjutnya.
 Pelanggan tidak perlu menunggu sampai keseluruhan sistem selesai sebelum mereka dapat
memperoleh manfaat darinya.
 Proses ini mendukung manfaat pembangunan bertahap karena relatif mudah untuk memasukkan
perubahan ke dalam sistem.
 Karena layanan dengan prioritas tertinggi diberikan terlebih dahulu dan peningkatan selanjutnya
kemudian diintegrasikan, layanan sistem yang paling penting menerima pengujian paling banyak.

Benefits
 Pengiriman berulang menjadi masalah ketika sistem baru dimaksudkan untuk
menggantikan sistem yang sudah ada. Pengguna memerlukan semua fungsionalitas
sistem lama dan biasanya tidak mau bereksperimen dengan sistem baru yang belum
lengkap.
 Kebanyakan sistem memerlukan serangkaian fungsi dasar yang digunakan oleh
berbagai bagian sistem. Dan mungkin sulit untuk menemukan fasilitas umum yang
dibutuhkan oleh semua kalangan.

Kekurangannya
Peningkatan proses
berarti memahami proses
yang ada dan mengubah
proses tersebut untuk
meningkatkan kualitas
produk dan/atau
mengurangi biaya dan
waktu pengembangan.

PROCESS
IMPROVEMENT
Pendekatan kematangan proses
Berfokus pada peningkatan proses dan
manajemen proyek serta memperkenalkan
praktik rekayasa perangkat lunak yang baik
ke dalam organisasi. Tujuan utama dari
pendekatan ini adalah peningkatan kualitas
produk dan prediktabilitas proses.

Pendekatan agile
Berfokus pada pengembangan berulang dan
pengurangan biaya tambahan dalam proses
perangkat lunak. Karakteristik utamanya
adalah pengiriman fungsionalitas yang cepat
dan responsif terhadap perubahan
kebutuhan pelanggan.

TWO DIFFERENT APPROACH


KONTAN.CO.ID - blu by BCA Digital merilis highlight pertumbuhan disepanjang tahun 2023 dalam acara BCA Expoversary 2024, dengan tema “blu: Partner Menuju
Kedewasaan Finansial”. Pertumbuhan blu by BCA Digital di tahun 2023 setidaknya meliputi pencapaian laba bersih yang mencapai Rp46,04 miliar, pertumbuhan transaksi
hingga kepercayaan nasabah yang tercermin melalui pertumbuhan nasabah sebesar 53,4%, atau yang kini mencapai lebih dari 1,7 juta nasabah.
Yoga Halim, Head of Corporate Planning BCA Digital mengatakan, “Kami senang blu dapat dipercaya menjadi partner sobatblu dalam memenuhi kebutuhan transaksi
keuangannya sehari-hari. blu akan terus berkomitmen dan #SiapJadiPegangan bagi sobatblu dengan terus meningkatkan layanan, penambahan berbagai fitur dan produk
terbaru, hingga perluasan digital ecosystem bersama para mitra untuk mendukung mereka meraih kedewasaan finansial.”
Dukungan blu kepada sobatblu untuk meraih kedewasaan finansial salah satunya diwujudkan melalui komitmen dalam meningkatkan literasi dan inklusi keuangan. Setidaknya,
blu mencatat pertumbuhan literasi sobatblu lewat inisiatif kelas edukasi bluAcademy yang telah diikuti oleh lebih dari 3.500 peserta, di mana hampir 40% peserta mengatakan
telah mendapatkan literasi keuangan yang dibutuhkan.
Inklusi keuangan sobatblu juga terlihat meningkat di tahun 2023, di mana hal ini terlihat dari jumlah frekuensi transaksi sebanyak 73,7 juta kali (ytd), dan jumlah volume
transaksi sebesar Rp181,9 triliun yang mengalami pertumbuhan lebih dari tiga kali lipat dibandingkan tahun sebelumnya.
Peningkatan volume ini terlihat juga dari peningkatan kegiatan transaksi, mulai dari transaksi transfer yang naik 215%, pembayaran menggunakan QRIS yang tumbuh lebih dari
367%, dan transaksi top-up e-money yang tumbuh 282%.
Peningkatan seluruh pertumbuhan ini tak lain didukung oleh hadirnya berbagai produk dan fitur terbaru yang mendukung kebutuhan transaksi keuangan sobatblu untuk
meraih kedewasaan finansialnya. Diantaranya peluncuran kartu bluDebit Card yang melengkapi kebutuhan transaksi sobatblu, dan bluInvest yang bekerjasama dengan mitra
investasi terpercaya Moduit dan FUNDtastic.
Ada juga fitur bluInsurance yang bekerja sama dengan BCA Life, di mana sobatblu bisa membeli asuransi langsung di aplikasi blu. Kemudian, ada bluBisnis untuk mendukung
transaksi bisnis sobatblu, pengajuan pinjaman melalui bluExtra Cash, bayar tagihan PLN, PDAM hingga BPJS dan top-up kartu flazz BCA langsung dari aplikasi blu.
Selain mendukung transaksi keuangan sobatblu melalui produk dan fitur menarik, blu juga telah memperluas layanan digital ecosystem dan in-app payment guna
mempermudah sobatblu melakukan transaksi keuangan dari aplikasi mitra tanpa perlu keluar aplikasi.
Di antaranya adalah peluncuran kerja sama lewat blUnion dengan berbagai mitra dari beragam sektor industri, mulai dari pembayaran kebutuhan investasi emas bersama
EmasKita, food and beverage (FnB) bersama Fore dan Kopi Kenangan, hingga pendidikan yang bekerja sama dengan ITHB, UPH, dan Talenta Nusantara.
Tak hanya itu, blu juga bekerjasama dengan partner pembayaran kredit kendaraan, BAF (Bussan Auto Finance). Di mana, seluruh pembayaran dapat dilakukan dengan mudah
hanya dengan melakukan linkage pada akun rekening blu dengan masing-masing aplikasi mitra.
Untuk terus meningkatkan inklusi keuangan nasabah setia, blu juga secara rutin menyelenggarakan promo menarik yang dapat dinikmati nasabah. Seperti pada periode bulan
Maret 2024, sobatblu bisa menikmati promo cashback di restoran Wingstop Rp10 ribu, Kopi Kenangan 40% dan bioskop Cinepolis 50% dengan metode pembayaran QRIS,
diskon Rp15 ribu di Grab pakai bluVirtual Card, dan cashback 25% di McDonald’s dan Indomaret jika melakukan pembayaran menggunakan bluDebit Card.
Tentang blu by BCA Digital
PT Bank Digital BCA atau BCA Digital sebelumnya bernama Bank Royal, hadir sejak 2020 setelah diakuisisi oleh PT Bank Central Asia. BCA Digital merupakan the next-
generation bank tanpa cabang yang fokus melayani segmen digital savvy melalui aplikasi mobile perbankan digital blu. blu by BCA Digital diluncurkan pada Juli 2021 untuk
memberikan kemudahan kepada para nasabah agar bisa melakukan transaksi finansial maupun non finansial melalui ponsel.
Beberapa fitur di dalamnya seperti bluSaving, bluDeposit, bluGether, bluInvest, bluInsurance, bluBisnis, bluDebit Card dan bluVirtual Card dirancang untuk membantu nasabah
memiliki kontrol lebih serta kebebasan mengatur finansial mereka.
Aplikasi blu bisa diakses melalui Google Play Store dan Apple App Store. blu by BCA Digital tak hanya hadir sebagai direct digital banking, tetapi juga sebagai bank as a service
(BaaS), dimana nasabah bisa melakukan beragam transaksi perbankan mulai dari membuka rekening, transfer, hingga top up e-money dari platform partner, tanpa berpindah
aplikasi. Saat ini, blu sudah berkolaborasi dengan partners dari beragam industri seperti Blibli, CGV, MRT Jakarta, Kopi Kenangan, Fore, FUNDtastic, Moduit, EmasKITA, Talenta
Nusantara, serta tiga universitas; Binus University, ITHB, dan UPH.

TUGAS https://pressrelease.kontan.co.id/news/blu-by-bca-digital-umumkan-pertumbuhan-
bisinis-di-sepanjang-tahun-2023
1. Sebutkan dan jelaskan terkait dengan proses model yang digunakan berdasarkan kasus di atas dalam hal
SDLC (Software Development Life Cycle)
2. Jelaskan struktur organisasi yang terlibat di dalam SDLC mulai dari Planning sampai dengan Implementasi?
3. Pada fase testing di dalam SDLC Process berdasarkan kasus diatas, terdapat struktur organisasi testing yang
dibutuhkan beserta job descriptionnya, mohon dijelaskan yang Anda ketahui perihal dengan hal tersebut?
4. Sebutkan dan jelaskan perbedaan dari White Box Testing dengan Black Box Testing serta menurut Anda
berdasarkan kasus diatas termasuk ke dalam jenis testing yang seperti apa dan jelaskan?

TUGAS KELOMPOK

Anda mungkin juga menyukai