Kamis, 11 September 2014

SDLC

SDLC (Systems Development Life Cycle, Siklus Hidup Pengembangan Sistem) atau Systems Life Cycle (Siklus Hidup Sistem), dalam rekayasa sistem dan rekayasa perangkat lunak, adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap: rencana(planning),analisis (analysis), desain (design), implementasi (implementation), uji coba (testing) dan pengelolaan (maintenance).[1] Dalam rekayasa perangkat lunak, konsep SDLC mendasari berbagai jenis metodologi pengembangan perangkat lunak. Metodologi-metodologi ini membentuk suatu kerangka kerja untuk perencanaan dan pengendalian pembuatan sistem informasi, yaitu proses pengembangan perangkat lunak. Terdapat 3 jenis metode siklus hidup sistem yang paling banyak digunakan, yakni: siklus hidup sistem tradisional (traditional system life cycle), siklus hidup menggunakan prototyping (life cycle using prototyping), dan siklus hidup sistem orientasi objek (object-oriented system life cycle)

Dalam perkembangannya SDLC dilengkapi oleh berbagai teknik pengembangan
sistem, yaitu:

Prototyping

prototyping adalah proses pembuatan model sederhana untuk software final yang mengijinkan pengguna memiliki gambaran dasar tentang program serta melakukan pengujian awal.

Prinsip mendasar dari prototyping adalah : User dapat menunjukkan fitur yang disukai dan tidak disukai, mengindikasikan apa yang diinginkan pada sistem yang sudah ada dan berjalan lebih mudah dari pada harus mendeskripsikannya secara teoritis. Pengalaman dan penggunaan lebih menghasilkan informasi penting dari pada diagram analisis dan proposal naratif.




Berikut merupakan tahapan dalam proses prototyping :
Identifikasi informasi kebutuhan user yang diketahui dan fitur yang diinginkan dalam sistem.
Mengembangkan prototype kerja.
Menggunakan prototype tanpa penambahan dan perubahan, untuk mengetahui kebutuhan sistem.
Perbaiki prototype berdasarkan informasi yang diperoleh melalui pengalaman user.
Ulangi tahapan ini selama dibutuhkan hingga mendapatkan sistem yang diinginkan. Ketika analis dan user memutuskan bahwa informasi telah cukup dikumpulkan melalui proses prototype, maka ditentukan bagaimana memenuhi kebutuhan yang telah diidentifikasikan.

Terdapat 4 alternatif yang digunakan :
 Prototype di bangun ulang, alternatif ini berarti memprogram ulang mulai dari awal.
Prototype di implementasikan sebagai sistem lengkap. Menampilkan efisiensi dan metode untuk interaksi user mungkin diperlukan.
Proyek diabaikan. Dalam kasus ini prototype menyediakan cukup informasi untuk memperlihatkan bahwa sistem tidak dapat dikembangkan untuk memenuhi tujuan karena alasan teknologi, ekonomi, dan operasional.
Pengembangan prototype yang lain. Informasi yang dikumpulkan menyarankan pendekatan yang sama sekali berbeda, atau fitur yang bertolak belakang.

Jenis-jenis teknik prototyping adalah:

  • Trowaway Prototyping.
  • Evolutionary Prototyping.
  • Incremental Prototyping.


- Keuntungan menggunakan teknik prototyping:

  • Mengurangi waktu dan biaya.
  • Meningkatkan keterlibatan pengguna.
  • Mengurangi kesalahpahaman dan kesalahan interpretasi dengan pengguna.


- Kelemahan menggunakan teknik prototyping:

  • Analisis kurang.
  • Biaya untuk membuat prototyping cukup tinggi.

Waterfall

Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “classic life cycle” atau model waterfall. Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam Software Engineering (SE). Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap desain harus menunggu selesainya tahap sebelumnya yaitu tahap requirement. Secara umum tahapan pada model waterfall dapat dilihat pada gambar berikut :












System / Information Engineering and Modeling 
Permodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definition.

Software Requirements Analysis 
Proses pencarian kebutuhan diintensifkan dan difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan software) harus didokumentasikan dan ditunjukkan kepada pelanggan.

Design 
Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai konfigurasi dari software.
Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya dikerjakan oleh programmer.

Testing / Verification 
Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya.
Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat lainnya.


- Keuntungan menggunakan teknik waterfall:
  • Proses menjadi teratur
  • Estimasi proses menjadi lebih baik
  • Jadwal menjadi lebih menentu

- Kelemahan menggunakan teknik waterfall:
  • Sifatnya kaku, sehingga susah melakukan perubahan di tengah proses
  • Membutuhkan daftar kebutuhan yang lengkap di awal, tapi jarang konsumen bisa memberikan kebutuhan secara lengkap diawal

Spiral

Teknik spiral mencoba menggabungkan model prototyping dan waterfall. Biasa digunakan untuk proyek besar yang mahal dan rumit. Digunakan oleh militer Amerika untuk mengembangkan program Future Combat Systems.

 Keuntungan menggunakan teknik spiral:
  • Pengguna dan developer bisa memahami dengan baik software yang dibangun karena progress dapat diamati dengan baik.
  • Estimasi menjadi lebih realistik seiring berjalannya proyek karena masalah ditemukan sesegera mungkin.
  • Lebih mampu menangani perubahan yang sering terjadi pada software development.
  • Software engineers bisa bekerja lebih cepat pada proyek.

- Kelemahan menggunakan teknik spiral:
  • Membutuhkan waktu yang lama.
  • Membutuhkan dana yang besar.
  • Membutuhkan planning jangka panjang yang baik agar program bisa selesai dengan baik.
V Model

Teknik V model sering disebut sebagai pengembangan dari teknik waterfall. V untuk verifikasi dan validasi dan merupakan model standar yang banyak dipakai di negara-negara Eropa seperti standar untuk proyek pertahanan dan administrasi federal di Jerman.







Formal Method

Teknik formal method adalah teknik yang mengandalkan perhitungan matematika dalam setiap prosesnya. Hanya digunakan pada sistem yang sangat memperhatikan keamanan atau keselamatan dari pengguna. Contoh penggunaan teknik ini adalah aerospace engineering.

-Keuntungan menggunakan teknik formal method adalah meminimalkan resiko dengan adanya perhitungan komputasi.

Sedangkan kerugiannya adalah:
  • Biaya Tinggi.
  • Kompleks
  • Tidak Umum untuk Proyek Software pada umumnya

1 komentar:

  1. Sdlc ~ Sharing Informasi Bersama >>>>> Download Now

    >>>>> Download Full

    Sdlc ~ Sharing Informasi Bersama >>>>> Download LINK

    >>>>> Download Now

    Sdlc ~ Sharing Informasi Bersama >>>>> Download Full

    >>>>> Download LINK zG

    BalasHapus