Difference between revisions of "Sdlc"
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) |
||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
− | '''[[SDLC]]''' adalah kependekan dari '''''[[Software Development Life Cycle]]''''', atau bila di- | + | '''[[SDLC]]''' adalah kependekan dari '''''[[Software Development Life Cycle]]''''', atau bila di-Bahasa Indonesia-kan dapat berarti '''''[[Siklus Hidup Pengembangan Perangkat Lunak]]''''' yang mencakup beberapa tahapan-tahapan penting bagi sebuah keberadaan (baca : eksistensi) perangkat lunak dilihat dari sisi pengembangnya (baca : Software Developer). |
Line 15: | Line 15: | ||
== Kegunaan SDLC == | == Kegunaan SDLC == | ||
− | '''SDLC''' diperlukan untuk mengakomodasi beberapa kebutuhan - baik itu dari kebutuhan pengguna akhir (baca : user requirement) maupun dalam rangka pengadaan perbaikan sejumlah problema yang terkait dengan pengembangan [[perangkat lunak]] itu sendiri (baca : [[software bugs]]). | + | '''SDLC''' diperlukan untuk mengakomodasi beberapa kebutuhan - baik itu dari kebutuhan pengguna akhir (baca : user requirement) maupun dalam rangka pengadaan perbaikan sejumlah problema yang terkait dengan pengembangan [[perangkat lunak]] itu sendiri (baca : [[software bugs]]). Kesemua itu dirangkum pada proses '''SDLC''' yang dapat berupa penambahan fitur baru (baca : kemampuan penggunaan) baik itu secara modular (baca : instalasi parsial atau update dan upgrade perangkat lunak) maupun dengan proses instalasi baru (baca : penggantian perangkat lunak menyeluruh atau software replacement). Dari proses '''SDLC''' juga berapa lama umur sebuah perangkat lunak dapat diperkirakan untuk tetap dipergunakan yang dapat diukur atau disesuaikan dengan kebijakan dukungan (baca : software support) dari pengembang perangkat lunak terkait. |
+ | |||
+ | == Implementasi SDLC == | ||
+ | Secara sederhana proses implementasi '''SDLC''' dapat dilihat dari penamaan sebuah [[perangkat lunak]] - sebagai contoh berikut : | ||
+ | * Sebuah aplikasi contoh "ABCDE" versi 1.0 {alpha|beta|STABLE|i386|x64}, dapat diartikan bahwa aplikasi contoh "ABCDE" tersebut dipublikasikan dalam tahap awal yang ditandai dengan label ''versi 1.0'' atau biasanya disingkat dengan huruf ''v1.0''. Bila dikemudian waktu label versi menjadi ''versi 1.2'' atau ''v1.2'' maka hal tersebut menandakan bahwa perangkat lunak tersebut telah mengalami revisi (baca : perbaikan) dari versi sebelumnya. | ||
+ | * Penambahan akhiran {alpha|beta|STABLE} menunjukkan status pengembangan perangkat lunak tersebut - dimana yang berakhiran '''''alpha''''' menandakan bahwa perangkat lunak tersebut masih dalam pengembangan dalam tahap yang paling awal sehingga kemungkinan akan adanya kesalahan operasional dari perangkat lunak tersebut (baca : software error) masih akan sering dirasakan, dan masih layak di-uji-coba secara terbatas dalam laboratorium. Yang berakhiran '''''beta''''' menandakan bahwa sebuah perangkat lunak tersebut telah siap dipublikasikan dalam lingkup percobaan pada pengguna akhir sembari pengembang menerima masukan evaluasi dari pengguna secara langsung. Penandaan '''''STABLE''''' menunjukkan bahwa sebuah perangkat lunak telah lulus uji coba laboratorium secara baik dan layak untuk dipergunakan di-lingkungan produksi atau pengguna umum. | ||
+ | * Penambahan akhiran {i386|x64|smp|sparc|ppc} menunjukkan dalam lingkungan komputasi berbasis prosesor apa sebuah perangkat lunak di-kembangkan dan untuk di-operasikan (baca : di-install). '''''i386''''' menunjukkan bahwa sebuah perangkat lunak dikembangkan dan di-operasikan untuk lingkungan komputasi berbasis prosesor sekelas Intel 32-bit. '''''x64''''' berarti dikembangkan untuk kelas prosesor Intel 64-bit. '''''[[smp]]''''' berarti perangkat lunak tersebut dapat digunakan untuk oleh komputer [[CPU]] berprosesor dua atau lebih. '''''sparc''''' menunjukkan bahwa perangkat lunak dikembangkan khusus untuk komputer berbasis prosesor [[SUN]] [[SPARC]], '''''ppc''''' khusus untuk komputer berbasis [[CPU]] [[PowerPC]] atau [[PPC]]. | ||
== Kebutuhan SDLC == | == Kebutuhan SDLC == | ||
Penerapan '''SDLC''' yang baik dan benar pada prinsipnya juga membutuhkan biaya baik itu finansial dan non-finansial, baik itu teknis maupun non-teknis yang tidak sedikit. Kesemua hal tersebut wajib diperhitungkan secara cermat agar proses pengembangan [[perangkat lunak]] itu sendiri (yang menjadi inti utama dari '''[[SDLC]]''') tidak terhambat atau bahkan terbengkalai. | Penerapan '''SDLC''' yang baik dan benar pada prinsipnya juga membutuhkan biaya baik itu finansial dan non-finansial, baik itu teknis maupun non-teknis yang tidak sedikit. Kesemua hal tersebut wajib diperhitungkan secara cermat agar proses pengembangan [[perangkat lunak]] itu sendiri (yang menjadi inti utama dari '''[[SDLC]]''') tidak terhambat atau bahkan terbengkalai. | ||
+ | == Limitasi SDLC == | ||
+ | Kadangkala, perkembangan dan penggunaan teknologi antara perangkat keras dan perangkat lunak, dan sesama perangkat lunak tidak sejalan (baca : lebih cepat atau lebih lambat antara satu dengan lainnya, antara mendukung dan tidak mendukung satu dengan lainnya) - sehingga terkadang hasil proses SDLC yang membutuhkan aplikasi pendukung lainnya (baca : [[software dependencies]]) maupun [[perangkat keras]] (baca : [[hardware]]) yang benar-benar mendukung (baca : perangkat keras baru) agak kesulitan dalam proses penyesuaian (baca : serapan) sehingga dapat menyebabkan proses implementasi SDLC "terkesan" stagnan. | ||
== Pranala Menarik == | == Pranala Menarik == | ||
+ | |||
+ | * [[SDLC: Secure]] | ||
+ | * |
Latest revision as of 11:48, 18 May 2022
SDLC adalah kependekan dari Software Development Life Cycle, atau bila di-Bahasa Indonesia-kan dapat berarti Siklus Hidup Pengembangan Perangkat Lunak yang mencakup beberapa tahapan-tahapan penting bagi sebuah keberadaan (baca : eksistensi) perangkat lunak dilihat dari sisi pengembangnya (baca : Software Developer).
Tahapan SDLC
Berikut ini adalah beberapa tahapan-tahapan SDLC secara sederhana dimana tahapan-tahapan (baca : perhitungan atau kalkulasi) yang lebih rumit dan panjang bisa juga terjadi - sebagai berikut :
- Analisa kebutuhan perangkat lunak
- Desain awal perangkat lunak
- Implementasi tahap awal dan evaluasi (biasanya dalam lingkup terbatas seperti laboratorium)
- Implementasi pada pengguna dan evaluasi atau User Acceptance Test UAT (proses yang sangat penting)
- Evaluasi dari penggunaan oleh pengguna.
- Kembali kepada proses desain untuk pengembangan kembali perangkat lunak ke versi yang terbaru
Kesemua proses tersebut diatas berputar dari sebuah titik analisa kebutuhan, yang dilanjut dengan desain, dan dilanjutkan kepada proses implementasi hingga kemudian diputar kembali ke titik desain untuk mengembangkan kembali sebuah perangkat lunak yang lebih baru.
Kegunaan SDLC
SDLC diperlukan untuk mengakomodasi beberapa kebutuhan - baik itu dari kebutuhan pengguna akhir (baca : user requirement) maupun dalam rangka pengadaan perbaikan sejumlah problema yang terkait dengan pengembangan perangkat lunak itu sendiri (baca : software bugs). Kesemua itu dirangkum pada proses SDLC yang dapat berupa penambahan fitur baru (baca : kemampuan penggunaan) baik itu secara modular (baca : instalasi parsial atau update dan upgrade perangkat lunak) maupun dengan proses instalasi baru (baca : penggantian perangkat lunak menyeluruh atau software replacement). Dari proses SDLC juga berapa lama umur sebuah perangkat lunak dapat diperkirakan untuk tetap dipergunakan yang dapat diukur atau disesuaikan dengan kebijakan dukungan (baca : software support) dari pengembang perangkat lunak terkait.
Implementasi SDLC
Secara sederhana proses implementasi SDLC dapat dilihat dari penamaan sebuah perangkat lunak - sebagai contoh berikut :
- Sebuah aplikasi contoh "ABCDE" versi 1.0 {alpha|beta|STABLE|i386|x64}, dapat diartikan bahwa aplikasi contoh "ABCDE" tersebut dipublikasikan dalam tahap awal yang ditandai dengan label versi 1.0 atau biasanya disingkat dengan huruf v1.0. Bila dikemudian waktu label versi menjadi versi 1.2 atau v1.2 maka hal tersebut menandakan bahwa perangkat lunak tersebut telah mengalami revisi (baca : perbaikan) dari versi sebelumnya.
- Penambahan akhiran {alpha|beta|STABLE} menunjukkan status pengembangan perangkat lunak tersebut - dimana yang berakhiran alpha menandakan bahwa perangkat lunak tersebut masih dalam pengembangan dalam tahap yang paling awal sehingga kemungkinan akan adanya kesalahan operasional dari perangkat lunak tersebut (baca : software error) masih akan sering dirasakan, dan masih layak di-uji-coba secara terbatas dalam laboratorium. Yang berakhiran beta menandakan bahwa sebuah perangkat lunak tersebut telah siap dipublikasikan dalam lingkup percobaan pada pengguna akhir sembari pengembang menerima masukan evaluasi dari pengguna secara langsung. Penandaan STABLE menunjukkan bahwa sebuah perangkat lunak telah lulus uji coba laboratorium secara baik dan layak untuk dipergunakan di-lingkungan produksi atau pengguna umum.
- Penambahan akhiran {i386|x64|smp|sparc|ppc} menunjukkan dalam lingkungan komputasi berbasis prosesor apa sebuah perangkat lunak di-kembangkan dan untuk di-operasikan (baca : di-install). i386 menunjukkan bahwa sebuah perangkat lunak dikembangkan dan di-operasikan untuk lingkungan komputasi berbasis prosesor sekelas Intel 32-bit. x64 berarti dikembangkan untuk kelas prosesor Intel 64-bit. smp berarti perangkat lunak tersebut dapat digunakan untuk oleh komputer CPU berprosesor dua atau lebih. sparc menunjukkan bahwa perangkat lunak dikembangkan khusus untuk komputer berbasis prosesor SUN SPARC, ppc khusus untuk komputer berbasis CPU PowerPC atau PPC.
Kebutuhan SDLC
Penerapan SDLC yang baik dan benar pada prinsipnya juga membutuhkan biaya baik itu finansial dan non-finansial, baik itu teknis maupun non-teknis yang tidak sedikit. Kesemua hal tersebut wajib diperhitungkan secara cermat agar proses pengembangan perangkat lunak itu sendiri (yang menjadi inti utama dari SDLC) tidak terhambat atau bahkan terbengkalai.
Limitasi SDLC
Kadangkala, perkembangan dan penggunaan teknologi antara perangkat keras dan perangkat lunak, dan sesama perangkat lunak tidak sejalan (baca : lebih cepat atau lebih lambat antara satu dengan lainnya, antara mendukung dan tidak mendukung satu dengan lainnya) - sehingga terkadang hasil proses SDLC yang membutuhkan aplikasi pendukung lainnya (baca : software dependencies) maupun perangkat keras (baca : hardware) yang benar-benar mendukung (baca : perangkat keras baru) agak kesulitan dalam proses penyesuaian (baca : serapan) sehingga dapat menyebabkan proses implementasi SDLC "terkesan" stagnan.