System Development Life Cycle (SDLC)

Inovasi Sistem Informasi & New Technology



Disusun Oleh:
Anggraeni Tri Windyastuti
10116879
2KA21
Fakultas Ilmu Komputer & Teknologi Informasi
                                                         Universitas Gunadarma         



BAB I
PENDAHULUAN
1.      Latar Belakang
Perkembangan teknologi seperti sekarang ini sangat bermanfaat dan telah mengalami perkembangan sangat pesat khususnya dalam bidang informatika. Dimana dengan perkembangan ini, bidang informatika tidak lagi hanya menghasilkan pengembangan program perangkat lunak saja, tetapi juga dapat menghasilkan pengembangan dalam bidang permodelan yang bersifat komplek dan menyeluruh.

Pembuatan sebuah perangkat lunak yang baik haruslah memiliki teknik analisa kebutuhan dan teknik permodelan yang baik pula. Hal tersebut dimaksudkan supaya terwujudnya suatu perangkat lunak yang baik dan bermanfaat. Dengan hal tersebut maka perlulah suatu pengenalan mengenai permodelan dalam suatu pembangunan suatu Perangkat Lunak (software). Terdapat banyak permodelan mengenai pembangunan suatu Perangkat Lunak seperti SDLC.

2.      Perumusan Masalah
Dari pemaparan latar belakang, maka dapat diambil perumusan masalah yaitu menganalisa mengenai pengertian SDLC serta tahapan-tahapan yang ada di dalam SDLC.

3.      Tujuan
1.      Mahasiswa dapat mengetahui apa itu SDLC
2.      Mahasiswa dapat mengetahui tahapan-tahapan dalam SDLC
3.      Mahasiswa dapat mengetahui contoh dari SDLC

BAB II
PEMBAHASAN
Pengertian SDLC
System Development Life Cycle (SDLC) adalah suatu pendekatan yang memiliki tahap atau bertahap untuk melakukan analisa dan membangun suatu rancangan sistem dengan menggunakan siklus yang lebih spesifik terhadap kegiatan penggunan (Kendall & Kendall, 2006).
Metode SDLC adalah metode yang menggunakan pendekatan sistem yang disebut pendekatan air terjun (waterfall approach) dimana setiap tahapan sistem akan dikerjakan secara berurut menurun dari perencanaan, analisa, desain, implementasi, dan perawatan (Aji Supriyanto 2005:272).
Siklus hidup pengembangan sistem (System Development Life Cycle / SDLC) merupakan suatu bentuk yang digunakan untuk menggambarkan tahapan utama dan langkah-langkah di dalam tahapan tersebut untuk proses pengembangannya. Siklus hidup pengembangan system merupakan proses evolusioner yang diikuti dalam menerapkan sistem atau subsistem informal berbasis komputer. SDLC dilakukan dengan pendekatan sistem secara teratur dan dilakukan secara top-down, oleh karenanya sering disebut pendekatan air terjun (waterfall approach) bagi pengembangan dan penggunaan sistem.
Tahapan SDLC
Setiap pengembang mempunyai strategi yang berlainan, namun demikian pada dasarnya siklus hidup pengembangan sistem informasi terdapat 5 (lima) tahapan, yaitu:
1.      Perencanaan Sistem (System Planning)
2.      Analisis Sistem (System Analysis)
3.      Perancangan Sistem (System Design)
4.      Implementasi Sistem (System Implementation)
5.      Penggunaan Sistem (System Utilization)
Tahap Perencanaan Sistem (System Planning)
Perencanaan sistem merupakan tahap paling awal yang memberikn pedoman dala melakukan langkah selanjutnya. Perencanaan sistem menyangkut estimasi dari kebutuhan-kebutuhan fisik, tenaga kerja dan dana yang dibutuhkan untuk mendukung pengembangan sistem ini serta mendukung operasinya setelah diterapkan.
Perencanaan sistem dapat terdiri dari perencanaan jangka pendek meliputi periode 1 sampai 2 tahun dan perencanaan jangka panjang meliputi periode sampai dengan 5 tahun. Perencanaan sistem biasanya ditangani oleh staf perencanaan sistem, bila tidak ada dapat juga dilakukan oleh departemen sistem.
Proses perencanaan sistem dapat dikelompokkan dalam 3 proses utama, yaitu:
a)      Merencanakan proyek-proyek sistem yang dilakukan oleh staf perencanaan sistem
b)      Menentukan proyek-proyek sistem yang akan dikembangkan dan dilakukan oleh komite pengarah
c)      Mendefinisikan proyek-proyek sistem dikembangkan dan dilakukan oleh analis sistem
Tahap Analisis Sistem (System Analysis)
Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevalusi permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikan.
Tahap analisis merupakan tahap yang kritis dan sangat penting, karena kesalahan didalam tahap ini akan menyebabkan juga kesalahan di tahap selanjutnya. Langkah-langkah di dalam tahap analisis sistem hampir sama dengan langkah-langkah yang dilakukan dalam mendefinisikan proyek-proyek sistem yang akan dikembangkan di tahap perencanaan sistem. Perbedaannya pada analisis sistem ruang lingkup tugasnya lebih terinci. Didalam tahap analisis sistem terdapat langkah-langkah dasar yang harus dilakukan oleh Analis Sistem, yaitu:
a)      Identify, yaitu mengidentifikasikan masalah, mengidentifikasikan penyebab masalah, mengidentifikasikan titik keputusan, mengidentifikasikan personil-personil kunci.
b)      Understand, yaitu memahami kerja dari sistem yang ada, menentukan jenis penelitian, merencanakan jadwal penelitian, mengatur jadwal wawancara, mengatur jadwal observasi, mengatur jadwal pengambilan sampel, membuat penugasan penelitian, membuat agenda wawancara, mengumpulkan hasil penelitian.
c)      Analyze, yaitu menganalisis sistem, menganalisis kelemahan sistem, menganalisis kebutuhan informasi pemakai/manajemen.
d)      Report, yaitu membuat laporan hasil analisis yang bertujuan untuk memberi laporan bahwa analisis telah selesai dilakukan, meluruskan kesalahan pengertian mengenai apa yang telah ditemukan dan dianalisis oleh analis sistem tetapi tidak sesuai menurut manajemen, meminta pendapat-pendapat dan saran-saran dari pihak manajemen, meminta persetujuan kepada pihak manajemen untuk melakukan tindakan selanjutnya.
Tahap Perancangan Sistem (System Design)
Setelah tahap analisis sistem selesai dilakukan, maka analis sistem telah mendapatkan gambaran dengan jelas apa yang harus dikerjakan. Tiba waktunya sekarang bagi analis sistem untuk memikirkan bagaimana membentuk sistem tersebut. Tahap ini disebut dengan perancangan sistem (system design). Tahap perancangan sistem ini mempunyai tujuan utama yaitu untuk memenuhi kebutuhan kepada pemakai sistem, untuk memberikan gambaran yang jelas dan rancang bangun yang lengkap kepada pemrogrma kompter dan ahli-ahli teknik lainnya yang terlibat. Tahap perancangan sistem merupakan tahap penentuan proses dan data yang diperlukan oleh sistem baru. Untuk sistem berbasis komputer biasanya dalam rancangan ada spesifikasi jenis peralatan yang akan digunakan. Adapun langkah-langkah dalam tahap perancangan sistem ini meliputi:
a)      Menyiapkan rancangan sistem yang terinci
Analis bekerja sama dengan pemakai dan mendokumentasikan rancangan sistem baru dengan alat-alat yang telah dijelaskan dalam modul teknis. Penggambaran dilakukan dari yang besar dan secara bertahap secara rinci dengan pendekatan top-down dan ini biasanya dilakukan untuk rancangan terstruktur (structured design).
b)      Mengidentifikasikan berbagai alternatif konfigurasi sistem
Analis harus mengidentifikasikan konfigurasi (bukan merek atau model) peralatan komputer yang akan memberikan hasil terbaik bagi sistem untuk menyelesaikan pemrosesan.
c)      Mengevaluasi berbagai alternatif konfigurasi sistem
Analis bekerja bersama manajer mengevaluasi berbagai alternatif dan dipilih yang paling memungkinkan subsistem memenuhi kriteria kinerja, dengan kendala-kendala yang ada.
d)      Memilih konfigurasi yang terbaik
Analis mengevaluasi semua konfigurasi subsistem dengan menyesuaikan kombinasi peralatan sehingga semua subsistem menjadi satu konfigurasi tunggal. Setelah di analisis kemudian direkomendasikan kepada manajer untuk disetujui. Persetujuan dilakukan oleh Komite pengarah SIM.
e)      Menyetujui usulan penerapan
Analisis menyiapkan usulan penerapan yang mengikhtisarkan tugas-tugas penerapan yang harus dilakukan, keuntungan yang diharapkan dan biayanya.
f)       Menyetujui atau menolak penerapan sistem
Jika keuntungan dari sistem melebihi biayanya, penerapan akan disetujui.
Tahap Implementasi Sistem (System Implementation)
Setelah dianalisis dan dirancang secara rinci dan teknologi telah diseleksi dan dipilih. Tiba saatnya sistem untuk diimplementasikan. Tahap implementasi system merupakan tahap meletakkan sistem supaya siap untuk dioperasikan. Tahap ini termasuk juga kegiatan menulis kode program jika tidak digunakan paket perangkat lunak aplikasi.                                                                                      
Implementasi sistem merupakan kegiatan untuk memperoleh dan mengintegrasikan sumber daya fisik dan konseptual yang menghasilkan suatu sistem yang bekerja. Adapun langkah-langkah dalam tahap ini, meliputi:
a)      Merencanakan penerapan
Sebelum sistem baru digunakan, manajer dan spesialis infomasi memahami dengan baik pekerjaan yang diperlukan untuk menerapkan rancangan sistem.
b)      Mengumumkan penerapan
Proyek penerapan diumumkan kepada para pegawai dengan cara yang sama seperti penelitian sistem. Tujuannya untuk menginformasikan pegawai mengenai keputusan untuk menerapkan sistem baru dan meminta kerjasama pegawai.
c)      Mendapatkan sumberdaya perangkat keras
Rancangan sistem disediakan bagi para pemasok berbagai jenis peralatan komputer yang terdapat pada konfigurasi yang disetujui. Setiap pemasok diberikan request for proposal (REF).
d)      Mendapatkan sumberdaya perangkat lunak
Dapat membuat sendiri oleh programmer dari dokumen yang disiapkan analis sistem atau menggunakan perangkat lunak aplikasi jadi (prewritten application software).
e)      Menyiapkan database
DBA bertanggungjawab untuk semua kegiatan yang berhubungan dengan data, dan ini mencakup persiapan database.
f)       Menyiapkan fasilitas fisik
Fasilitas di sini adalah lantai yang ditinggikan, pengendalian suhu ruangan dan kelembaban khusus, keamanan, peralatan pendeteksi api dan pemadam kebakaran, dsb.
g)      Mendidik peserta dan pemakai
Baik peserta (operator pemasukan data, pegawai koding, dan administrasi) dan pemakai harus dididik tentang peran mereka dalam sistem. Pendidikan sebaiknya setelah siklus hidup dimulai, tepat sebelum bahan-bahan yang dipelajari mulai diterapkan.
h)      Masuk ke sistem baru
Proses menggantikan sistem lama ke sistem baru disebut cutover. Ada 4 pendekatan dasar: percontohan (pilot project), serentak, bertahap, dan paralel.
Tahap Penggunaan Sistem (System Utilization)
Pada tahap ini terdiri dari 3 yaitu:
a)      Menggunakan sistem
Pemakai menggunakan sistem untuk mencapai tujuan yang diidentifikasikan pada tahap perencanaan.
b)      Audit sistem
Penelitian apakah sistem baru memenuhi kriteria kinerja. Studi ini disebut “penelaahan setelah penerapan” (post implementation).
c)      Memelihara sistem
Selama manajer menggunakan sistem, berbagai modifikasi dibuat sehingga sistem terus memberikan dukungan yang diperlukan. Modifikasi ini disebut pemeliharaan sistem. Ada tiga alasan untuk pemeliharaan: memperbaiki kesalahan, menjaga kemutakhiran sistem dan meningkatkan sistem.
Contoh Metodologi atau Model Pengembangan Sistem
Berikut ini adalah contoh Metodologi atau model pengembangan sistem, baik yang terstruktur maupun yang berbasis obyek:
1)      Agile Model
(Widodo Jurnal : 2006:1) pada dekade ke 90-an diperkenalkan metodologi baru yang dikenal dengan nama agile methods. Metodologi ini sangat revolusioner perubahannya jika dibandingkan dengan metode sebelumnya. Agile Methods dikembangkan karena pada metodologi tradisional terdapat banyak hal yang membuat proses pengembangan tidak dapat berhasil dengan baik sesuai tuntutan user.
            Kelebihan Metode Agile
a)      Meningkatkan rasio kepuasan pelanggan
b)      Bisa melakukan review pelanggan mengenai software yang dibuat lebih awal
c)      Mengurangi resiko kegagalan implementasi software dari non-teknis
d)      Besar kerugian baik secara material atau immaterial tidak terlalu besar jika terjadi kegagalan
Kelemahan Metode Agile
a)      Agile jarang dipraktekkan secara langsung
b)      Interaksi dengan customers yang berlebihan
c)      Agile sulit diimplementasikan dalam proyek yang berskala besar
d)      Membutuhkan manajemen tim yang terlatih
e)      Lemah dalam perencanaan arsitektur, 2 Scrum dan Extreme Programming
f)       Keterbatasan waktu dalam perencanaan proyek

2)      Metodologi Waterfall
Metodologi Waterfall merupakan model klasik yang sederhana dengan aliran sistem yang linier. Output dari setiap tahap merupakan input bagi tahap berikutnya. Model in pertama kali diperkenalkan oleh Winston Royce tahun1970, sekarang model ini lebih dikenal dengan Linier Sequential Model. Karakteristik dari metodologi waterfall ini meliputi beberapa bagian, yaitu:
·         Aktivitas mengalir dari satu fase ke fase lainnya secara berurutan.
·         Setiap fase dikerjakan terlebih dahulu sampai selesai, jika sudah selesai baru mulai menuju fase berikutnya. 
Tahapan penelitian pada model waterfall meliputi metodologi, berupa:
a)      System Engineering, menetapkan segala hal yang diperlukan dalam pelaksanaan proyek.
b)      Analisis, menganalisis hal-hal yang diperlukan untuk pembuatan atau pengembangan perangkat lunak.
c)      Design, tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh programmer. Tiga atribut yang penting dalam proses perancangan, yaitu: struktur data, arsitektur perangkat lunak dan prosedur rinci/algoritma.
d)      Coding, menerjemahkan data yang telah dirancang/algoritma ke dalam bahasa pemrograman yang telah ditentukan.
e)      Testing, uji coba terhadap program yang telah dibuat.
f)       Maintenance, perubahan atau penambahan program sesuai dengan permintaan user.

Kelebihan Metodologi Waterfall
Metode ini masih lebih baik digunakan walaupun sudah tergolong kuno, daripda menggunakan pendekatan asal-asalan. Selain itu, metode ini juga masih masuk akal jika kebutuhan sudah diketahui dengan baik.
Kelemahan Metodologi Waterfall
·         Pada kenyataannya, jarang mengikuti urutan sequential seperti pada teori. Iterasi sering terjadi menyebabkan masalah baru.
·         Sulit bagi pelanggan untuk menentukan semua kebutuhan secara eksplisit.
·         Pelanggan harus sabar, karena pembuatan perangkat lunak akan dimulai ketika tahap desain sudah selesai. Sedangkan pada tahap sebelum desain bisa memakan waktu yang lama.
·         Kesalahan di awal tahap berakibat sangat fatal pada tahap berikutnya.

3)      Metodologi Prototype
Model ini dikembangkan karena adanya kegagalan yang terjadi akibat pengembangan project/aplikasi menggunakan sistem waterfall. Kegagalan yang terjadi biasanya dikarenakan adanya kekurangpahaman atau bahkan sampai kesalahpahaman pengertian developer aplikasi mengenai user requirement yang ada. Tahapan metodologi prototype antara lain:
a)      Pengumpulan Kebutuhan dan Perbaikan, menetapkan segala kebutuhan untuk pembangunan perangkat lunak.
b)      Desain cepat, tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh user.
c)      Bentuk Prototype, menerjemahkan data yang telah dirancang ke dalam bahasa pemrograman (program contoh atau setengah jadi).
d)      Evaluasi Pelanggan Terhadap Prototype, program yang sudah jadi diuji oleh pelanggan, dan bila ada kekurangan pada program bisa ditambahkan.
e)      Prototype, perbaikan program yang sudah jadi, sesuai dengan kebutuhan konsumen. Kemudian dibuat program kembali dan di evaluasi oleh konsumen sampai semua kebutuhan user terpenuhi.
f)       Produk Rekayasa, program yang sudah jadi dan seluruh kebutuhan user sudah terpenuhi.
Kelebihan Metode Prototype
·         Developer belajar langsung mengenai kebutuhan sistem dari customer/user.
·         Hasil produk yang lebih akurat (lebih sesuai dengan permintaan user).
·         Desain sistem lebih fleksibel.
·         Iteraktif dengan adanya simulasi prototype.
·         Untuk pengembangan lebih lanjut (jika terjadi perubahan), developer hanya perlu mengubah prototype.
·         Jika customer sudah “puas”, prototype dibuat menjadi system secara sempurna untuk dijadikan ‘Final Product’.
Kelemahan Metode Prototype
·         Proses bisa jadi berlanjut terus menerus tanpa henti (mengikuti keinginan customer).
·         Bisa jadi customer malah menginginkan prototype system dikirim.
·         Reputasi yang buruk sebagai sebuah metode yang bersifat “Quick and Dirty”.
·         Kemungkinan perawatan secara keseluruhan bisa saja terabaikan.
·         Pengembangan yang berlebihan untuk prototype.

BAB III
PENUTUP
Kesimpulan
Siklus hidup pengembangan sistem (System Development Life Cycle / SDLC) merupakan suatu bentuk yang digunakan untuk menggambarkan tahapan utama dan langkah-langkah di dalam tahapan tersebut untuk proses pengembangannya.
Pada dasarnya siklus hidup pengembangan sistem informasi terdapat 5 (lima) tahapan, yaitu: Perencanaan Sistem (System Planning), Analisis Sistem (System Analysis), Perancangan Sistem (System Design), Implementasi Sistem (System Implementation), Penggunaan Sistem (System Utilization).

Saran
Sebelum kita melakukan maupun membangun sebuah perangkat lunak. Ada baiknya kita mengetahui dulu pengembangan sistem informasi (SDLC) dalam menunjang pembuatan perangkat lunak tersebut. Hal ini dilakukan agar kita dapat menghasilkan suatu perangkat lunak yang baik dan bermanfaat bagi penggunanya.

Daftar Pustaka

Komentar