Tuesday, July 9, 2013

Software Development Life Cycle



SDLC atau Software Development Life Cycle adalah proses mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan sistem-sistem perangkat lunak sebelumnya (berdasarkan best practice atau cara-cara yang sudah teruji baik)
  1. Inisialisasi (initiation)
  2. Pengembangan konsep sistem (system concept development)
  3. Perencanaan (planing)
  4. Analisis kebutuhan (requirements analysis)
  5. Desain (design)
  6. Pengembangan (development)
  7. Integrasi dan pengujian (integration and test)
  8. Implementasi (implementation)
  9. Operasi dan pemeliharaan (operation and maintenance)
  10. Disposisi (disposition)


Pemilihan Metode Pengembangan Rekayasa Perangkat Lunak



Kesuksesan dari sebuah proyek secara spesifik sangat ditentukan dalam pengelolaan empat unsur utama yaitu Scope, Time, Quality, dan Cost yang dapat digambarkan dalam “Segitiga Kesuksesan Proyek”, dan keempat unsur tersebut satu sama lain saling terkait (terpengaruh) atau saling berbanding lurus artinya besar kecilnya batas wilayah proyek akan mempengaruhi lama tidaknya waktu pekerjaan proyek, besar kecilnya biaya proyek dan menentukan kualitas tidaknya suatu produk hasil pekerjaan proyek.

Maksud dari tolok ukur kesuksesan proyek dapat dijelaskan sebagai berikut :
  1. Scope (Batas Wilayah / Ruang lingkup) pekerjaan proyek, dapat memahami bataan wilayah pekerjaan proyek yang akan dikerjakan dari analisis permasalahan, analisis kelemahan, analisis kebutuhan maupun analisis kelayakan dari sistem yang akan dibangun atau dikembangkan.
  2. Time (Waktu) pekerjaan proyek, dapat memenuhi batas waktu dari penjadualan proyek yang telah disepakati dalam dokumen perencanaan dari kontrak pekerjaan yang bersangkutan, bisa menggunakan Gantt Chart, PERT (Program Evaluation and Review Technique) atau CPM (Critical Path Method).
  3. Quality (Kualitas) proses pekerjaan atau hasil akhir pekerjaan (produk) proyek dapat memenuhi batasan standar tertentu yang disepakati melalui perencanaan atau dokumen kontrak yang ada, seperti ISO, SII, CISCO, SAI, dan sebagainya.
  4. Cost (Biaya) pelaksanaan proyek dapat memenuhi batas anggaran yang telah direncanakan atau yang telah disepakati berdasarkan perhitungan atau penilaian investasi yang ditanamkan dengan menggunakan Payback Period, Average Rate of Return, ROI, NPV, dan sebagainya.


Monday, April 15, 2013

Metodologi Penelitian Rekayasa Perangkat Lunak

Metode USDP mengikuti tahapan-tahapan yang terdefinisi dalam konsep SDLC. USDP merupakan metode rekayasa perangkat lunak berorientasi objek yang bisa dikatakan masih baru. proses awal dari pengembangan perangkat lunak menggunakan metode USDP ini adalah diawali dengan pembuatan diagram use case, yang pada prinsipnya dibuat untuk mendapatkan spesifikasi kebutuhan pengguna. Itulah sebabnya pengembangan rekayasa perangkat lunak dengan metode ini menggunakan pemodelan UML. Dalam metode USDP, meskipun urutan langkah-langkah pengembangan perangkat lunak sudah tersusun dan saling terkait antara satu langkah dengan langkah lainnya, namun dalam pengerjaan setiap langkah tidak ada batasan pengerjaan setiap langkah seperti metode waterfall.

Metode Agile merupakan metode rekayasa perangkat lunak yang mengikuti siklus hidup SDLC. Metode ini lebih cenderung mirip dengan metode spiral atau prototype. Metode Agile bisa dibilang metode pengembangan proyek jangka pendek, karena pada metode ini hampir setiap tahapannya dikerjakan secara berurutan namun tidak begitu detail seperti metode waterfall hingga mendapatkan hasil berupa produk yang nantinya akan dikonsultasikan dengan pengguna/user untuk dilakukan perbaikan-perbaikan hingga mendapatkan hasil jadi yang sesuai dan memberikan kepuasan kepada user. Pada dasarnya kelebihan metode agile adalah memberikan kepuasan pada pelanggan/user. Namun jika dilihat dari segi teknis, kelemahan metode ini adalah pengembang harus siap dengan perubahan-perubahan yang kapan saja bisa diminta oleh user, karena pada metode ini semua perubahan itu harus diterima meskipun perangkat lunak sudah terbentuk secara utuh.