Pengembangan sistem merupakan penyusunan suatu sistem yang baru untuk menggantikan sistem yang lama secara keseluruhan atau memperbaiki sistem yang telah ada. Bila dalam operasi sistem yang sudah dikembangkan masih timbul permasalahan-permasalahan yang tidak dapat diatasi dalam tahap pemeliharaan sistem, maka perlu dikembangkan kembali suatu sistem untuk mengatasinya dan proses ini kembali ke proses yang pertama. Siklus ini disebut dengan Siklus Hidup suatu Sistem. Siklus Hidup Pengembangan Sistem dapat didefinisikan sebagai serangkaian aktivitas yang dilaksanakan oleh profesional dan pemakai sistem informasi untuk mengembangkan dan mengimplementasikan sistem informasi. Siklus hidup pengembangan sistem informasi saat ini terbagi atas enam fase, yaitu
1. Analis system (system analis) Analisis sistem (system analyst) adalah orang yang dididik khusus untuk mengembangkan sistem secara profesional. Alasan menggunakan SDLC dalam penggunaaan ini adalah karena metode ini digunakan untuk mengembangkan sistem teknologi informasi yang kompleks. Sistem teknologi yang kompleks perlu dianalis orang yang ahli dibidangnya sehingga permasalahan dapat dipecahkan dan kebutuhan pemakai sistem dapat diidentifikasikan dengan benar.Tahapan di analisis sistem terdiri dari kegiatan-kegiatan sebagai berikut ini. a. Studi Pendahuluan Kegiatan awal dari analisi sistem adalah studi awal atau studi pendahuluan tentang jenis, ruang lingkup dan pemahaman awal dari proyek sistem teknologi informasi. Studi pendahuluan ini menghasilkan
sistem secara awal, perkiraan biaya yang dibutuhkan dan waktu yang diperlukan.
b. Studi Kelayakan Setelah mengumpulkan data dan mendokumentasikan fakta, sistem analisis mengetahui apa yang sesungguhnya dilakukan oleh sistem, Selanjutnya, sistem analis melakukan study kelayakan untuk
memperhitungkan apakah organisasi atau instansi di mana sistem tersebur dibuat dapat melanjutkan ketahap berikutnya dalam proses pengembangan sistem atau tidak. Studi kelayakan merupakan suatu tinjauan sekilas pada faktor-faktor utama yang akan mempengaruhi kemampuan sistem untuk mencapai tujuan yang diinginkan.
c. Mengidentifikasi permasalahan dan kebutuhan informasi pemakai Langkah selanjutnya adalah mengidentifikasi masalah disistem lama supaya dapat diperbaiki di sistem yang baru. Mengidentifikasi masalah dilakukan dengan penyebab masalahnya. Penyebab masalahnya
merupakan sumber dari permasalahan yang harus diperbaiki. Selanjutnya memahami sistem yang ada untuk mendapatkan data dan menganalisis permasalahannya.
d. Menganalisis hasil penelitian Langkah selanjutnya menganalisis hasil penelitian. Menganalisis hasil penelitian adalah menemukan penyebab permasalahan sistem yang tidak berfungsi sehingga dapat cepat digantikan dengan sistem yang baru.
a. Perancangan sistem secara umum adalah memberikan gambaran umum kepada pemakai sistem tentang sistem teknologi informasi yang baru.
Perancangan sistem secara umum lebih diarahkan kepada pemakai sistem untuk menyetujuinya ke perancangan sistem selanjutnya. Yang dirancang di tahap perencanaan sistem secara umu adalah menggambarkan bentuk dari sistem teknologi informasinya secara logika atau secara konsep dan mengidentikasikan komponenkomponen dari sistem teknologi informasi.
b. Perancangan sistem terinci dimaksudkan untuk menggambarkan bentuk secara fisik dari komponen-komponen sistem teknologi informasi yang akan dibangun oleh pemrogam dan ahli teknik lainnya.
3. Impelementasi sistem Tahap ini merupakan tahap meletakkan sistem supaya siap dioperasikan. Implementasi sistem juga merupakan proses mengganti atau meninggalkan sistem yang lama dengan mengganti sistem yang baru. Untuk menggantikan sistem yang lama ke sistem yang baru diperlukan suatu pendekatan atau strategi supaya berhasil.
4. Operasi dan perawatan sistem Setelah sistem diiplementasi dengan berhasil, sistem akan
dioperasikan dan di rawat. Sistem perlu dirawat karena beberapa hal, yaitu a. Sistem mengandung kesalahan yang belum diperbaiki,sehingga
kesalahan sistem perlu diperbaiki. b. Sistem mengalami perubahan karena peemintaan baru dari pemakaian sistem. c. Sistem mengalami perubahan karena perubahan lingkungan luar. Biaya perwatan sistem sering diabaikan karena biaya perawatan sistem merupakan biaya yang cukup besar.jadi sebisa mungkin kita harus merawatnya denga teliti agar suatu sistem dapat bertahan dengan lama.
Beberapa alat berbentuk grafik yang sifatnya umum, yaitu dapat digunakan disemua metodologi yang ada. Alat-alat ini berupa suatu bagan, diantaranya :
1. Bagan untuk menggambarkan aktivitas (activity charting) : a. Bagan alir sistem (System Flowchart) b. Bagan alir program (Program Flowchart) - Bagan alir logika program (Program logic Flowchart) - Bagan alir program komputer (Detailed computer program Flowchart) c. Bagan alir kerta kerja (Paperwork Flowchart) atau disebut juga Bagan alir formulir d. Bagan alir hubungan database (Database relationship Flowchart) e. Bagan alir proses (Process Flowchart) f. Gant chart 2. Bagan untuk menggambarkan tata letak (Layout charting) 3. Bagan untuk menggmbarkan hubungan personil (Personal relationship charting) : a. Bagan distribusi kerja (Working distribution chart) b. Bagan organisasi (Organization chart)
1. Teknik manajemen proyek, yaitu CPM (Critical Path Method) dan PERT (Program Evaluation and Review Technique). Teknik ini digunakan untuk penjadwalan proyek
2. Teknik untuk menemukan fakta (Fact finding technique), yaitu teknik yang dapat digunakan untuk mengumpulkan data dan menemukan fakta-fakta dalam kegiatan mempelajari sistem yang ada. Teknik ini diantaranya adalah Wawancara (Interview) Persiapan yang dilakukan : buat janji pertemuan pastikan orang yang akan diwawancarai pokok permasalahan
Pada saat wawancara yang perlu diperhatikan : Siapa yang akan diwawancarai Pokok permasalahan Tanggapan Kapan akan bertemu kembali
3. Teknik analisis biaya/manfaat (Cost Effectiveness Analysis atau Cost Benefit Analysis) adalah suatu teknik yang digunakan untuk menghitung biaya yang berhubungan dengan pengembangan sistem informasi seperti ; biaya pengadaan biaya persiapan biaya proyek biaya operasi
serta manfaat yang didapat dari sistem informasi seperti ; manfaat mengurangi biaya manfaat mengurangi kesalahan
manfaat meningkatkan kecepatan aktivitas manfaat meningkatkan perencanaan dan pengendalian manajemen
4. Teknik untuk menjalankan rapat Tujuan dari rapat dalam pengembangan sistem diantaranya adalah untuk ; mendefinisikan masalah mengumpulkan ide-ide memecahkan permasalahan-permasalahan menyelesaikan konflik-konflik yang terjadi menganalisis kemajuan proyek mengumpulkan data atau fakta perundingan-perundingan
Tahapan pelaksanaan kegiatan ; - merencanakan rapat - menjalankan rapat - menindaklanjuti hasil rapat
5. Teknik Inspeksi / Walkthrough Proses dari analisis dan desain sistem harus diawasi. Pengawasan ini dapat dilakukan dengan cara memverifikasi hasil dari setiap tahap pengembangan sistem. Verifikasi hasil kerja secara formal disebut dengan (inspection) sedangkan yang tidak formal disebut Walkthrough. Inspeksi
Setelah proposal pengembangan sistem informasi disetujui maka ditentukan hardware dan software yang akan digunakan dan bagaimana cara mendapatkannya 6. Merancang sistem informasi baru Kegiatan perancangan sistem informasi baru umumnya meliputi: input, proses, output, bahan yang digunakan, metode dan prosedur serta pengendalian intern 7. Mengkomunikasikan dan mengimplementasikan sistem informasi baru Hasil penyusunan sistem informasi adalah sebuah software komputer yang siap pakai digunakan sesuai dengan kebutuhan users, selanjutnya analis harus memperkenalkan paket sistem informasi tersebut untuk dioperasikan (pelatihan users dll) 8. Memelihara dan melakukan perbaikan/peningkatan sistem informasi baru Pemeliharaan yang dilakukan adalah dengan melakukan perbaikan-perbaikan pada kesalahan atau kegagalan yang timbul dalam penggunaan sistem informasi.
Fungsi SDLC 1) 2) Mengidentifikasikan masalah-masalah dari user Menyatakan secara spesifik sasaran yang harus dicapai
untuk memenuhi kebutuhan user 3) 4) Memilih alternatif-alternatif metode pemecahan masalah Merencanakan dan menerapkan rancangan sistemnya sesuai dengan
permintaan user Prinsip pengembangan system Ada beberapa prinsip yang tidak boleh dilupakan yaitu : 1. Sistem untuk manajemen 2. Investasi modal yang besar 3. Sistem yang dikembangkan memerlukan orang yang terdidik 4. Tahapan kerja dan tugas-tugas yang harus dilakukan dalam proses pengembangan system 5. Proses pengembangan system tidak harus urut Jangan takut membatalkan proyek 7. Dokumentasi harus ada dan pedoman dalam pengembangan system
1.
CPM dan PERT 2. Teknik menemukan fakta -> untuk mengumpulkan dan menentukan
data/fakta : a. Wawancara b. Observasi c. Daftar pertanyaan d. Pengumpulan sampel 3. Teknik analisis biaya/manfaat 4. Teknik menjalankan rapat 5. Teknik inspeksi
Metode Prototyping Prototyping adalah salah satu pendekatan dalam rekayasa perangkat lunak yang secara langsung mendemonstrasikan bagaimana sebuah perangkat lunak atau komponen-komponen perangkat lunak akan bekerja dalam
lingkungannya sebelum tahapan konstruksi aktual dilakukan (Howard, 1997). Reusable prototype : Prototype yang akan ditransformasikan menjadi produk final. Throwaway prototype : Prototype yang akan dibuang begitu selesai menjalankan maksudnya. Input/output prototype : Prototype yang terbatas pada antar muka pengguna (user interface). Processing prototype : Prototype yang meliputi perawatan file dasar dan prosesproses transaksi. System prototype : Prototype yang berupa model lengkap dari perangkat lunak.
Tahap-tahap dalam prototyping boleh dikata merupakan tahap-tahap yang dipercepat. Strategi utama dalam prototyping adalah kerjakan yang mudah terlebih dahulu dan sampaikan hasil kepada pengguna sesegera mungkin. Harris (2003) membagi prototyping dalam enam tahapan seperti terlihat pada gambar. Tahapan-tahapan secara ringkas dapat dijelaskan sebagai berikut: Identifikasi kandidat prototyping. Kandidat dalam kasus ini meliputi user interface (menu, dialog, input dan output), file-file transaksi utama, danfungsifungsi pemrosesan sederhana. Rancang bangun prototype dengan bantuan software seperti word processor, spreadsheet, database, pengolah grafik, dan software CASE (Computer-Aided System Engineering). Uji prototype untuk memastikan prototype dapat dengan mudah dijalankan untuk tujuan demonstrasi. Siapkan prototype USD (Users System Diagram) untuk mengidentifikasi bagian-bagian dari perangkat lunak yang di-prototype-kan. Evaluasi dengan pengguna untuk mengevaluasi prototype dan melakukan perubahan jika diperlukan. Transformasikan prototype menjadi perangkat lunak yang beroperasi penuh dengan melakukan penghilangan kode-kode yang tidak dibutuhkan, penambahan program-program yang memang dibutuhkan dan perbaikan dan pengujian perangkat lunak secara berulang. Keuntungan menggunakan model Prototype dalam pembuatan sebuah software adalah karena model ini bisa: 1.membuat komunikasi antara developer dan customer lebih mudah 2.memecahkan masalah penerimaan customer terhadap software 3.memberikan pada customer bukti awal konsep software 4.menciptakan kejelasan pada tahap awal desain software
5.mengumpulkan user requirement yang valid dari customer 6.menambahkan partisipasi yang membangun dari pihak user 7.mengelola perubahan user requirement 8.mengatasi ketidakjelasan produk 9.membuat kualitas software lebih terjamin Meskipun demikian, model Prototype ini juga mempunyai kekurangan, yaitu 1.sulitnya menentukan berapa kali harus bertemu dengan customer 2.proyek bisa dijalankan tanpa batasan waktu yang jelas 3.harus mengatasi konflik antara developer dan customer 4.mengukur tahapan pembuatan software tanpa batasan yang jelas 5.permintaan yang berlebihan dari customer bisa muncul 6.customer tidak peduli terhadap proyek software Metode Rapid Application Development (RAD) Rapid Application Development (RAD) adalah sebuah model proses perkembangan software sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi kecepatan tinggi dari model sekuensial linier di mana perkembangan cepat dicapai dengan menggunakan pendekatan kontruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan sistem fungsional yang utuh dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari). Karena dipakai terutama pada aplikasi sistem konstruksi, pendekatan RAD melingkupi fase fase sebagai berikut : bussiness modeling, data modeling, process modeling, application generation dan testing and turnover. 1. Keuntungan RAD Beberapa keuntungan dalam menggunakan metode RAD adalah sebagai berikut: - Membeli sistem yang baru memungkinkan untuk lebih menghemat biaya ketimbang mengembangkan sendiri. - Proses pengiriman menjadi lebih mudah, hal ini dikarenakan proses
pembuatan lebih banyak menggunakan potongan-potongan script. - Mudah untuk diamati karena menggunakan model prototype, sehingga user lebih mengerti akan sistem yang dikembangkan. - Lebih fleksibel karena pengembang dapat melakukan proses desain ulang pada saat yang bersamaan. - Bisa mengurangi penulisan kode yang kompleks karena menggunakan wizard. - Keterlibatan user semakin meningkat karena merupakan bagian dari tim secara keseluruhan. - Mampu meminimalkan kesalahan-kesalahan dengan menggunakan alatalat bantuan (CASE tools). - Mempercepat waktu pengembangan sistem secara keseluruhan karena cenderung mengabaikan kualitas. - Tampilan yang lebih standar dan nyaman dengan bantuan softwaresoftware pendukung. 2. Kerugian RAD Beberapa kerugian dalam menggunakan metode RAD adalah sebagai berikut : - Dengan melakukan pembelian belum tentu bisa menghemat biaya dibandingkan dengan mengembangkan sendiri. - Membutuhkan biaya tersendiri untuk membeli peralatan-peralatan penunjang seperti misalnya software dan hardware. - Kesulitan melakukan pengukuran mengenai kemajuan proses. - Kurang efisien karena apabila melakukan pengkodean dengan menggunakan tangan bisa lebih efisien. - Ketelitian menjadi berkurang karena tidak menggunakan metode yang formal dalam melakukan pengkodean. - Lebih banyak terjadi kesalahan apabila hanya mengutamakan kecepatan diban dingkan dengan biaya dan kualitas. - Fasilitas-fasilitas banyak yang dikurangi karena terbatasnya waktu yang
tersedia. - Sistem sulit diaplikasikan di tempat yang lain. - Fasilitas yang tidak perlu terkadang harus disertakan, karena menggunakan komponen yang sudah jadi, sehingga hal ini membuat biaya semakin meningkat. Metode Soft systems Soft systems theory disebut juga sebagai soft systems methodology (SSM). Teori ini dikembangkan oleh Peter Checkland. SSM merupakan pendekatan iteratif untuk menggambarkan masalah soft . Masalah soft merupakan masalah yang melibatkan elemen sosial dan politis yang membuat identifikasi dan penyelesaian masalah menjadi kabur. SSM menyediakan kerangka kerja untuk menggambarkan masalah yang mengandung efek sosial atau politis yang besar dan melakukan analisis menggunakan konsep aktifitas manusia sebagai alat untuk mengetahui situasi masalah untuk menghailkan tindakan yang akan meningkatkan situasi. SSM mengandung tujuh tahap untuk menyelesaikan masalah soft yaitu: 1. 2. 3. Menentukan dan memahami situasi masalah Menyatakan situasi masalah Memilih sudut pandang untuk melihat situasi dan menghasilkan
menggambarkan setiap akar masalah. 5. 6. 7. Membandingkan model dengan dunia nyata. Menyatakan perubahan yang diharapkan dan mungkin dilakukan. Melakukan tindakan untuk meningkatkan situasi dunia nyata.
SSM telah diterapkan dalam banyak kasus untuk menggambarkan masalah yang kompleks sekalipun seperti dalam paper [2]. Paper ini membahas tentang penelitian yang memakai SSM sebagai cara yang efektif dan efisien dalam melakukan analisis masalah kompleks terkait dengan manajemen teknologi penginderaan jauh di Australia. SSM menghasilkan model yang mewakili teknologi penginderaan jauh. Model ini menyediakan kerangka kerja untuk
mengembangkan sistem ahli. Pengembangan sistem ahli biasanya dilakukan dengan metode prototyping. Padahal metode ini masih terbatas dan masih dipengaruhi faktor manusia. SSM berhasil menghasilkan definisi akar masalah dari situasi masalah pergantian teknologi penginderaan jauh di industri Australia, kemudian dihasilkan diagram model konseptualnya. Maka paper ini
menyimpulkan bahwa SSM cocok untuk mendapatkan pengetahuan dalam pengembangan sistem ahli. SSM juga digunakan untuk melakukan pendekatan pada desain sistem informasi berbasis komputer seperti dalam paper [3]. Dalam paper ini dilakukan penggabungan teknik SSM, Unified Modelling Language (UML), dan pola penerapan Naked Objects untuk meneliti dan memodelkan proses bisnis menggunakan sistem software berbasis model domain ini. SSM digunakan sebagai metode pembimbing untuk menjelajahi situasi masalah dan mengahilkan suatu bahasa soft yang digunakan sebagai dasar pengembangan model domain berorientasi objek. UML digunakan untuk mengembangkan lagi model domain dan model ini akan diimplementasikan dalam software sesuai dengan pola Naked Objects. Selama ini banyak terjadi kegagalan sistem pendukung software akibat buruknya pemodelan proses bisnis. Alasannya adalah kecenderungan untuk berkonsentrasi pada aspek teknis model bukannya memahami kebutuhan bisnis. Maka diperlukan pendekatan sistematik untuk menangkap informasi yang dibutuhkan untuk proses bisnis. Pendekatan yang dipakai adalah Soft Domain-Driven Design (SDDD) yang menggabungkan ketiga teknik di atas. SDDD menghasilkan kerangka kerja yang bertujuan untuk meneliti, menganalisis, dan memodelkan domain bisnis sehingga dapat kita dapat mengimplementasikannya sebagai sistem pendukung software. Paper ini memberikan evaluasi dan pengembangan lebih lanjut dari kerangka kerja SDDD pada Peer-Tutorial-System (PTS). Hal tersebut menunjukkan bahwa kerangka kerja ini dapat diaplikasikan pada situasi masalah nyata