Senin, 26 Maret 2018

Analisis Sistem dan Metode


Analisis Sistem

Sistem Analis merupakan individu kunci dalama proses pengembangan sistem. Sistem analis mempelajari masalah dan kebutuhan dari organisasi untuk menentukan bagiaman orang, data, proses, komunikasi dan teknologi informasi dapat meningkatkan pencapaian bisnis. Sesorang Sistem Analis juga merupakan orang yang paling bertanggu jawab pada proses analisa dan perancangan sistem informasi.
·         Keahlian analisa
-          Memahami Organisasi
-          Keahlian memecahkan masalah
-     Pemahaman sistem untuk melihat organisasi dan sistem informasi sebagai sebuah sistem.
·         Keahlian teknis
-          Memahami potensi dan limitasi dari suatu teknologi
·        Keahlian Managerial
-          Kemampuan untuk mengatur proyek, sumber daya resiko dan perubahan.
Yang perlu diperhatikan oleh sistem analis yaitu :
-          Mempelajari permasalahan yang ada secara terinci
-          Menentukan pendekatan yang akan digunakan dalam memecahkan masalah
-          Membuat suatu petimbangan apakah perlu atau tidak menggunakan cara komputerisasi\

Tanggung jawab dari seorang sistem analis yaitu :
-          Pengambilan data yang efektif dari sumber bisnis
-          Aliran dari informasi yang berguna kembali ke proses bisnis dan penggunanya




Fungsi Sistem Analis : 
-          Mengidentifikasi masalah – masalah dari pemakai user
-          Menyatakan secara spesifik sasaran yang harus dicapai untuk memenuhi kebutuhan user
-          Memilih alternatife – alternatife metode pemecahan masalah
-          Merencanakan dan menerapakan rancangan sistemnya sesuai dengan permintaan user.
Tujuan analisis sistem :
-          Memberikan pelayanan kebutuhan informasi kepada fungsi manajerial didalam pengendalian
-          Membantu para pengambilan  keputusan
-          Mengavalusasi sistem yang telah ada
-          Menyusun suatu tahap rancangan pengembangan sistem

Analisi Sistem Sangat bergantung pada teori sistem umum sebagai sebuah landasan konseptual :
-          Definisikan Masalah
-          Pahami sistem tersbut dan buat definisi nya
-          Alternatife
-          Pilih alternatife
-          Terapkan alternatife
-          Mengavaluasikan

1.      Metode Water Fall
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.

Kelebihan Water Fall :
-          Mudah untuk dimengerti dan mudah untuk digunakan
-          Dapat digunakan untuk staff yang belum berpengalaman
-          Kualitas dari sistem yang dihasilkan akan baik.
-          Dokumen pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya.
Kekuranan Water Fall :
-          Diperlukan majemen yang baik.
-          Kesalahan kecil akan menjadi masalah besar jika tidak diketahui sejak awal pengembangan.
-          Pelanggan sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat mengakomodasi ketidakpastian pada saat awal pengembangan.

2.      Model V
Teknik model V sering disebut sebagai pengembangan dari teknik waterfall. Disebut sebagai perluasan karena tahap-tahapnya mirip dengan yang terdapat dalam model waterfall. Jika dalam model waterfall proses dijalankan secara linear, maka dalam model V proses dilakukan bercabang. Dalam model V ini digambarkan hubungan antara tahap pengembangan software dengan tahap pengujiannya. “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.
Kelibihan V Model :
-          Merupakan model pengembangan terstruktur.
-          Setiap fase dapat diimplementasikan dengan dokumentasi yang detail dari fase sebelumnya.
-          Aktivitas pengujian dapat dimulai di awal proyek, sehingga mengurangi waktu proyek.
Kekurangan V Model :
-          Dokumentasi harus cukup detail agar fase selanjutnya dapat berjalan dengan baik.

3.      Model Prototyping
Prototype 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. Metode ini biasa digunakan jika apabila klien hanya memberikan kebutuhan umum software saja, tanpa memberikan detail berupa input, proses, dan output. Namun dalam prosesnya cenderung lambat karena user akan menambah komponen dari luar sistem. Sehingga kepastian penyelesaian project pun tidak jelas. 

Kelebihan Prototyping Model :
-          Adanya komunikasi baik antara pengembang dengan pelanggan.
-          Pengembang dapat bekerja lebih baik untuk memenuhi kebutuhan pelanggan.
-          Pelanggan berperan aktif dalam pengembangan sistem.
-          Menghemat waktu dalam pengembangannya.
Kekurangan Prototyping Model :
-          Kualitas sistem kurang baik karena hanya mengedepankan aspek kenyamanan user.
-          Pengembang kadang-kadang menggunakan implementasi yang sembarangan.
-          Tidak mencerminkan proses perancangan yang baik.
  
4.      Model Spiral
Model Spiral, merupakan model pengembangan system yang digambarkan berupa spiral. Model spiral ini tidak merepresentasikan rangkaian tahapan dengan penelusuran balik (back-tracking), tidak ada fase – fase tahapan yang tetap seperti spesifikasi atau perancangan. Setiap untaian pada pada spiral menunjukkan fase software process. Dimana model ini merupakan gabungan dari model waterfall dan prototype.

Kelebihan Spiral Model :
-          Dapat digunakan untuk sistem yang besar
-          Sangat cocok sebagai mekanisme mengurangi resiko
Kekurangan Spiral Model :
-          Terlalu banyak memikirkan resiko yang akan terjadi
-          Masih jarang digunakan  
-          Metode ini lambat dan mahal karena setiap tahapan yang dilalui harus    mengikutsertakan pemesan

5.      Model Rapid Application Development(RAD)
Metode ini merupakan model pengembangan system yang melakukan beberapa penyesuaian terhadap SDLC pada beberapa bagian sehingga lebih cepat untuk sampai ke tangan pengguna system.

                Kelebihan Metode RAD :
                -  Waktu pengembangan yang lebih singkat.
                -  Biaya yang relatif lebih murah

             Kekurangan Metode RAD :
             -  Tidak cocok untuk proyek skala besar
             -  Proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
             -  Sistem yang tidak bisa dimodularisasi tidak cocok untuk model 
             -  Resiko teknis yang tinggi juga kurang cocok untuk model ini

Ketika RAD digunakan biasanya dana dilakukan oleh professional dengan dana yang besar dan pengerjaan yang cepat baik untuk projek besar maupun projek kecil.

6.      Model Incremental
Model Incremental, merupakan model pengembangan system yang dipecah sehingga model pengembangannya secara increment / bertahap berdasarkan kemampuan fungsional. Model ini adalah mem Selain itu juga merupakan perbaikan dari model waterfall dan sebagai standar pendekatan top – down. 

            Kelebihan Model Incremental :
-          Bersifat interatif atau perulangan.
-          Mampu mengakomodasi perubahan secara fleksibel.
-          Prioritas tinggi pada pelayanan system adalah yang paling diuji.
-          Model ini cocok jika jumlah anggota tim pengembangan / pembangunan software terbatas.
-          Resiko untuk kegagalan proyek secara keseluruhan lebih rendah
Kekurangan Model Incremental :
-          Inkremen harus relative lebih kecil (tidak lebih dari 20.000 baris kode) dan setiap inkremen harus menyediakan sebagian dari fungsional system.
-          Adanya kesulitan untuk memetakan persyaratan pelanggan pada inkremen dengan ukuran yang benar.
-          Butuh waktu yang relatif lebih lama untuk menghasilkan produk yang lengkap

7.      Model Agile
Agile methods adalah salah satu dari beberapa metode yang digunakan dalam pengembangan sooftware. Agile method adalah jenis pegembangan sistem jangka pendek yang memerlukan adaptasi cepat dan pengembang terhadap perubahan dalam bentuk apapun.
            Dalam Agile Software Development interaksi dan personel lebih penting dari pada proses dan alat, software yang berfungsi lebih penting daripada dokumentasi yang lengkap, kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap tanggap terhadap perubahan lebih penting daripada mengikuti rencana. Agile Method juga dapat diartikan sekelompok metodologi pengembangan software yang didasarkan pada prinsip-prinsip yang sama atau pengembangan system jangka pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam bentuk apapun. Metode ini jg merupakan membuang beberapa tahapan yang tidak mempunyai nilai/value dan menekankan pada pengembangan sederhana dan iterative/berulang. 

Kelebihan Agile Model :
-          Meningkatkan kepuasan kepada klien
-          Pembangunan system dibuat lebih cepat
-          Mengurangi resiko kegagalan implementasi software dari segi non – teknis
-          Jika pada saat pembangunan system terjadi kegagalan,kerugian dari segi materi relative kecil

Kekurangan Agile Model :
-          Kebutuhan software sulit diprediksi dari awal dan selalu akan berubah. Selain itu, prioritas klien juga sering berubah seiring berjalannya proyek.
-          Desain dan pembangunan sering tumpang tindih. Sulit diperkirakan seberapa jauh desain yang diperlukan sebelum pembangunan.
-          Analisis, desain, pembangunan dan testing tidak dapat diperkirakan seperti yang diinginkan

8.      Extreme Programing (XP) Model
Merupakan bagian dari metode agile software development. Dimana model ini mengambangkan  sistem dengan statis atau dinamis requirement dan aktivitas utamanya adalah coding.

Keuntungan Extreme Programming Model :
-          Menjalin Komunikasi yang Baik dengan Klien.
-          Meningkatkan Komunikasi dan Sifat Saling Menghargai antar Developer.
-          Dapat menampilkan prototype

Kelemahan Extreme Programming Model :
-          Membutuhkan banyak programmer
-          Developer harus selalu siap dengan perubahan karena perubahan selalu diterima
-          Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga).