Apa arti "desain hilir / hulu" dalam pengembangan perangkat lunak?
Apa arti "desain hilir / hulu" dalam pengembangan perangkat lunak?
Jawaban:
Komponen hulu adalah bagian lain dari sistem yang bergantung pada komponen Anda untuk melakukan tugasnya. Jika desain komponen hulu berubah, kemampuan komponen Anda berfungsi dapat terpengaruh. Jika komponen hulu memiliki bug, bug ini dapat dimanifestasikan dalam komponen Anda.
Komponen hilir adalah bagian dari sistem yang dapat dipengaruhi oleh komponen Anda. Perubahan pada komponen Anda dapat beriak ke komponen yang hilir dari komponen Anda.
Pertimbangkan aplikasi yang terdiri dari tingkat basis data dan tingkat aplikasi. Tingkatan basis data akan dianggap sebagai hulu dari tier aplikasi.
Hulu = ke atas sumur (asal perangkat lunak) Hilir = ke bawah ke lautan (kasus penggunaan)
Pengembang Open Source yang "hilir" membangun aplikasi dan alat pada produk jadi. Mereka yang hulu sebenarnya mengerjakan produk yang akan dirilis.
Jika Anda mengembangkan perangkat lunak: Anda bergantung pada stabilitas pengembangan hulu. Dan mereka yang bekerja pada perangkat lunak Anda adalah pengembang hilir.
Saya pikir ini adalah jargon rekayasa perangkat lunak lebih dari bahasa Inggris, tetapi cara saya memahaminya "desain hilir" adalah di mana pengembang aplikasi mengambil alat yang telah dikembangkan dan menggunakannya untuk menyelesaikan aplikasi mereka. Menggunakan pustaka perangkat lunak yang sudah diproduksi di mana keputusan tentang apa kemampuan perpustakaan akan dilakukan sudah hilir.
Dengan "desain hulu" pengembang aplikasi dikonsultasikan dan dilibatkan dalam pengembangan perpustakaan sebelum pekerjaan aplikasi bahkan benar-benar dimulai. Jika Anda akan menjadi perusahaan perangkat lunak yang berfokus pada perangkat lunak audio, misalnya, Anda mungkin perlu mengembangkan perpustakaan untuk mencakup berbagai perangkat lunak yang Anda rencanakan untuk dikembangkan. Akan menyenangkan jika pengembang perpustakaan dapat duduk bersama pengembang aplikasi sehingga pengembang aplikasi dapat memberikan masukan ke dalam apa yang mereka inginkan.
Hulu lebih disesuaikan, yang membuatnya jauh lebih mahal tetapi berpotensi menghasilkan produk akhir yang lebih baik.