Identifikasi Kerumitan pada Software Development

Mizan Rizqia
TLabCircle
Published in
3 min readFeb 21, 2019

Pernahkah sobat melakukan Software Development yang dirasa sangat rumit sampai-sampai membuat tidur tidak nyenyak? Bagaimanakah cara sobat menyelesaikan Software Development tersebut? Ehm.. Sebaiknya sebelum kita melakukan software development, kita mengidentifikasi kerumitan dalam software development tersebut.

Stacey Matrix

Pada kesempatan kali ini kita akan membahas sedikit mengenai Stacey Matrix untuk mengidentifikasi complex domain.

Stacey Matrix

Stacey Matrix adalah sebuah diagram untuk pemodelan situasi yang komplek/rumit dalam manajemen. Pemodelan ini pertama kali dikembangkan oleh Ralph D. Stacey. Oleh karena itu dinamakan Stacey Matrix.

Stacey Matrix terdiri dari sumbu x dan sumbu y. Masing-masing memiliki arti sendiri.

Close to Certainly / Dekat dengan Kepastian

Pada sumbu x. Paling kiri diartikan dengan dekat dengan kepastian. Artinya semakin ke kiri akan semakin dekat dengan hal yang pasti.

Far from Certainly / Jauh dari Kepastian

Pada sumbu x. Paling kanan diartikan dengan jauh dari kepastian. Artinya semakin ke kanan akan semakin jauh dengan hal yang pasti.

Close to Agreement / Dekat dengan Kesepakatan

Pada sumbu y. Paling bawah diartikan dengan dekat dengan kesepakatan. Artinya semakin bawah maka akan dekat dengan kesepakatan.

Far from Agreemenet / Jauh dari Kesepakatan

Pada sumbu y. Paling atas diartikan dengan jauh dari kesepakatan. Artinya semakin ke atas akan semakin jauh dari kesepakatan.

Stacey Matrix Pada Software Development

Dari teori dasar Stacey Matrix tersebut, kita bisa implementasikan dalam software development. Kira-kira jika dimodifikasi sedikit pada sumbu x dan sumbu x gambarnya akan menjadi seperti ini

Dari gambar di atas, pada sumbu x diibaratkan sebagai garis yang menggambarkan kepastian teknologi. Semakin ke kanan akan menggambarkan pemilihan teknologi untuk menyelesaikan suatu permasalahan menjadi tidak pasti. Pada sumbu y diibaratkan sebagai garis yang menggambarkan kepastian requirement/kebutuhan. Semakin ke atas menggambarkan kebutuhan yang tidak pasti.

Pada gambar di atas, kompleksifitas dalam software development dapat dikelompokkan menjadi 4 domain. Mari kita bahas satu-satu persatu.

Simple Domain

Pada simple domain, semua masalah sudah diketahui dan bisa diselesaikan dengan Best Practices yang ada. Pada domain ini requirement sudah jelas, kemudian teknologi yang akan digunakan juga sudah jelas, orang-orangnya juga sudah jelas. Pada domain ini, kita bisa menggunakan metodologi projek manajemen klasik seperti waterfall. Contoh projek pada simple domain ini adalah Pembuatan website sederhana untuk Company Profile dengan wordpress.

Complicated Domain

Pada complicated domain, terdapat hal yang tidak pasti. Namun lebih banyak hal-hal yang predictable (bisa diprediksi) dari pada hal-hal yang tidak pasti tersebut. Misalnya requirement berubah sedikit, teknologi berubah sedikit juga. Masalah tidak semudah pada simple domain dan seorang ahli (expert) dibutuhkan untuk menganalisis pada situasi ini. Pada domain ini, kita bisa menggunakan Kanban, Six Sigma, CMMi untuk membantu kita dalam menyelesaikan masalah pada domain ini.

Complex Domain

Pada complex domain, terdapat banyak hal yang tidak diketahui dari pada hal yang diketahui. Misalnya penggunaan teknologi yang belum yakin dan requirement yang berubah-ubah dengan cepat. Banyak hal yang belum bisa diprediksi dengan tepat. Biasanya best practices sudah tidak relevan untuk menyelesaikan permasalahan pada domain ini. Pada domain ini, kita bisa menggunakan agile seperti scrum untuk memantu kita dalam menyelesaikan masalah pada domain ini.

Chaos Domain

Pada Chaos Domain, terdapat sangat banyak hal yang tidak pasti, tidak bisa diprediksi, dan banyak perdebatan. Biasanya tidak ada kejelasan terkait requirement, teknologi, dan orang. Biasanya tidak ada masalah

— -

Yup.. mengidentifikasi masalah berdasarkan kerumitan masalah dapat membantu kita dalam menentukan cara penyelesaian masalah tersebut dengan benar.

Semoga artikel ini bermanfaat. Bila sobat ada kritik, saran, atau curhat terkait pengalamannya dalam software development. Silahkan isi komentar di bawah.

Referensi:

http://www.piyushrahate.com/stacey-matrix-complex-domain/
https://christophelecoent.wordpress.com/2012/07/22/gordon-ramsays-kitchen-nightmares-and-agile-coaching-a-recipe-for-success/
https://lifebytwobytwo.com/2018/02/08/the-stacey-matrix-of-process-complexity/

--

--