Kamis, 02 Maret 2017

Metode Synchronize & Stabilize

Metode Synchronize & Stabilize













Model Synchronize and Stabilize
mendefinisikan sebuah pendekatan menyeluruh untuk mengembangkan dan mengelola sistem perangkat lunak skala besar.

Model Synchronize and Stabilize adalah metodologi Pengembangan Sistem Life Cycle di mana tim bekerja secara bersamaan pada modul aplikasi individu. Mereka sering melakukan sinkronisasi kode mereka dengan tim lain, dan debug atau "menstabilkan" kode mereka secara teratur sepanjang proses pembangunan. Fitur khusus dari model ini adalah bahwa spesifikasi lengkap hanya ketika produk siap. Model ini telah digunakan secara luas oleh banyak organisasi pengembangan produk yang inovatif.

Keuntungan Model Synchronize and Stabilize
- Pendekatan pembangunan sistem periodik membuka jalan untuk menguji perangkat lunak untuk kedua fungsionalitas dan kinerja.
- Pemantauan proyek akan mudah karena ada tonggak menengah.
- Masalah integrasi yang dihadapi dalam proyek-proyek besar menggunakan model lainnya dieliminasi dalam model ini.
- Karena rilis menengah, produk dapat dibuat kaya fitur dengan memasukkan umpan balik yang diperlukan.

 Kekurangan Model Synchronize and Stabilize
- Sebuah tim pengujian independen paralel perlu berada di tempat.
- Dokumen spesifikasi rinci akan tersedia hanya pada saat rilis.
- Sistem Periodik membangun meminta proses ketat untuk didefinisikan untuk integrasi berbagai modul.

Pada akhirnya, setiap hari dilakukan proses sinkronisasi, yaitu menggabungkan bagian-bagian yang terpisah tersebut kemudian ditesting. Proses stabilisasi dilakukan pada akhir pembangunan setiap bagian. Kesalahan yang terjadi akan diperbaiki, dan tidak akan ada perubahan spesifikasi.


sumber : http://dwiwijaya97.blogspot.co.id/2017/02/metode-synchronize-stabilize.html

Metode Fountain

Metode Fountain
















Model Fontain merupakan perbaikan logis dari model waterfall, langkah langkah dan urutan prosedurnya pun masih sama. Namun pada model Fountain ini kita dapat mendahulukan sebuah step ataupun melewati step tersebut, akan tetapi ada yang tidak bisa anda lewati stepnya seperti kita memerlukan design sebelum melakukan coding jika itu di lewati maka akan ada tumpang tindih dalam siklus SDLC.

Langkah – Langkah dalam Model Fountain:

• User requirements analysis ( Analisis Kebutuhan Pengguna), disini kita sebagai programmer dalam mengembangkan sistem harus menganalisa kebutuhan terhadap pengguna baik itu dalam cara penggunaan yang mudah maupun efisiensi terhadap sistem yang pengguna butuhkan.
• User requirements specifications (Spesifikasi kebutuhan pengguna), dalam tahap ini kita harus tahu apa saja yang dibutuhkan pengguna dalam sistem yang sedang kita kembangkan.
• Software requirements specifications (Spesifikasi persyaratan perangkat lunak), dalam tahap ini kita harus menyesuaikan software yang kita buat jika di lihat dari sisi pengguna. Jika pengguna awam tentunya kita harus menciptakan Software yang mudah digunakan.
• Systems/broad design (logical design), sebelum pengimplementasi dalam coding kita harus mendesain sistem yang akan kita buat / kembangkan.
• Program/detailed design (physical design), dalam tahap ini kita membuat desain yang mendekati fisik atau secara deail.
• Implementation/coding, setelah tahap desain barulah kita mengimplementasikan dalam coding • Program testing: units, dalam tahap ini kita testing / cek kembali unit nit yang dibutuhkan dalam sistem yang sedang kita kembangkan .
• Program testing: system, dalam tahap ini kita test kembali sistem yang telah kita buat. • Program use, dalam tahap ini kita ajarkan ke pengguna program yang telah kita buat.
• Software maintenance, setelah sistem di pasang maka tentunya kita harus rutin mengupdate software / sistem yang telah kita buat agar terhindar dari kesalaha / bugs.

sumber : http://dwiwijaya97.blogspot.co.id/2017/02/metode-fountain.html

Metode iterative

pada kesempatan kali ini saya akan mencoba sekilas membahas tentang apa itu metode iterative.

Metode iterative merupakan suatu metode penyelesaian suatu persamaan atau persoalan matematika yang menggunakan  iterasi dengan nilai awal yang telah ditentukan untuk menghasilkan urutan atau rentetan solusi untuk tiap permasalahan tersebut.
metode iterative ini biasa digunakan untuk menyelesaikan permasalahan yang melibatkan bilangan – bilangan yang sangat besar dan kompleks dimana apabila dikerjakan dengan cara biasa akan sangat menyulitkan. dengan menggunakan metode iterative ini dimaksudkan agar kita dapat menyelesaikan permasalahan tersebut dengan cara yang lebih cepat dan mudah serta membuat kita memahami hal yang kompleks tersebut menjadi lebih simple.
adapun beberapa metode iterative yang ada adalah :
1. metode Jacobi
2. metode Gauss-Seidel
3. metode SOR (Succesive Over Relaxation)
4. Metode False position
5. Metode Newton – Rhapson
6.  Metode Secant
7. metode bisection
sebenarnya masih terdapat beberapa lagi metode lainnya, akan tetapi metode lainnya merupakan penjabaran – penjabaran ataupun gabungan dari metode yang telah ada.
1. metode jacobi 
Metode Iterasi Jacobi merupakan salah satu bidang analisis numerik yang digunakan untuk menyelesaikan permasalahan persamaan linear dan sering dijumpai dalam berbagai disiplin ilmu. Metode Iterasi Jacobi merupakan salah satu metode tak langsung, yaitu bermula dari suatu hampiran penyelesaian awal dan kemudian berusaha memperbaiki hampiran dalam tak berhingga namun langkah konvergen. Metode Iterasi Jacobi ini digunakan untuk menyelesaikan persamaan linear berukuran besar dan proporsi koefisien nolnya besar.
Metode ini ditemukan oleh matematikawan yang berasal dari Jerman,Carl Gustav Jakob Jacobi. Penemuan ini diperkirakan pada tahun 1800-an.
Kalau kita mengubah dalam Sistem Persamaan Linear, maka dapat ditulis sebagai berikut
 A x = b.\,
Kemudian, diketahui bahwa  A = D+\left({L + U} \right), di mana D merupakan matriks diagonal, L merupakan matriks segitiga bawah, dan U merupakan matriks segitiga atas.
Kemudian, persamaan di atas dapat diubah menjadi :
 D x+\left({L + U} \right)x = b.
Kemudian,
 x = D^{ - 1} \left[b -\left({L + U} \right)x \right],<br />
Jika ditulis dalam aturan iteratif, maka metode Jacobi dapat ditulis sebagai :
<br />
x^{(k+1)}  = D^{ - 1} \left[b-\left({L + U} \right)x^{(k)}\right],<br />
di mana k merupakan banyaknya iterasi. Jika x^{(k)} menyatakan hampiran ke- k penyelesaian SPL, maka x^{(0)} adalah hampiran awal.
<br />
x^{(k)}_i  = \frac{1}{a_{ii}} \left(b_i -\sum_{j\ne i}a_{ij}x^{(k-1)}_j\right),\, i=1,2,\ldots,n.<br />
sumber : http://id.wikipedia.org/wiki/Metode_Jacobi
2. metode Gauss-Seidel
Metode Gauss-Seidel digunakan untuk menyelesaikan sistem persamaan linear (SPL) berukuran besar dan proporsi koefisien nolnya besar, seperti sistem-sistem yang banyak ditemukan dalam sistem persamaan diferensial. Metode iterasi Gauss-Seidel dikembangkan dari gagasan metode iterasi pada solusi persamaan tak linier.
Teknik iterasi jarang digunakan untuk menyelesaikan SPL berukuran kecil karena metode-metode langsung seperti metode eliminasi Gauss lebih efisien daripada metode iteratif. Akan tetapi, untuk SPL berukuran besar dengan persentase elemen nol pada matriks koefisien besar, teknik iterasi lebih efisien daripada metode langsung dalam hal penggunaan memori komputer maupun waktu komputasi. Dengan metode iterasi Gauss-Seidel sesatan pembulatan dapat diperkecil karena dapat meneruskan iterasi sampai solusinya seteliti mungkin sesuai dengan batas sesatan yang diperbolehkan.
contoh persoalan metode gaus :
2×1 + 3×2 + 5×3 = 23
3×1 + 4×3 +   x3 = 14
6×1 + 7×2 + 2×3 = 26

Formula :

3. metode SOR (Succesive Over Relaxation)
Dalam aljabar linear numerik , metode Succesive Over Relaxation (SOR) adalah varian dari metode Gauss-Seidel untuk memecahkan sistem persamaan linier  yang digunakan untuk mecapai konvergensi lebih cepat.
Formula :
Sebuah \ mathbf x = \ mathbf b
dimana:
A = \ begin {bmatrix} a_ {11} a_ {12 &} & \ cdots & a_ {1n} \ \ a_ {21} a_ {22 &} & \ cdots & a_ {2n} \ \ \ vdots & \ vdots & \ ddots & \ vdots \ \ a_ {} n1 n2 & a_ {} & \ cdots & a_ {nn} \ end {bmatrix}, \ qquad \ mathbf {x} = \ begin {bmatrix} x_ {1} \ \ x_2 \ \ \ vdots \ \ x_n \ end {bmatrix}, \ qquad \ mathbf {b} = \ begin {bmatrix} b_ {1} \ \ b_2 \ \ \ vdots \ \ b_n \ end {bmatrix}.
Maka A dapat diuraikan menjadi diagonal  D komponen, dan komponen L dan U:
A = D + L + U,
dimana
D = \ begin {bmatrix} a_ {11} & 0 & \ cdots & 0 \ \ 0 & a_ {22} & \ cdots & 0 \ \ \ vdots & \ vdots & \ ddots & \ vdots \ \ 0 & 0 & \ cdots & a_ {nn} \ end {bmatrix}, \ quad L = \ begin {bmatrix} 0 & 0 & \ cdots & 0 \ \ a_ {21} & 0 & \ cdots & 0 \ \ \ vdots & \ vdots & \ ddots & \ vdots \ \ a_ {} n1 n2 & a_ {} & \ cdots & 0 \ end {bmatrix}, \ quad U = \ begin {bmatrix} a_ {0 & 12 &} \ cdots & a_ {1n } \ \ 0 & 0 & \ cdots & a_ {2n} \ \ \ vdots & \ vdots & \ ddots & \ vdots \ \ 0 & 0 & \ cdots & 0 \ end {bmatrix}.
Sistem persamaan linier dapat ditulis kembali sebagai:
(D + \ omega L) \ mathbf {x} = \ omega \ mathbf {b} - [\ omega U + (\ omega-1) D] \ mathbf {x}
untuk ω konstan> 1.
maka
\ Mathbf {x} ^ {(k +1)} = (A + \ omega L) ^ {-1} \ besar (\ omega \ mathbf {b} - [\ omega U + (\ omega-1) D] \ mathbf {x} ^ {(k)} \ besar).
bentuk segitiga (D + ωL), unsur-unsur dari x (k +1) dapat dihitung secara berurutan menggunakan subtitusi :
x ^ {(k +1)} _i = (1 - \ omega) x ^ {(k)} _i + \ frac {\ omega} {a_ {ii}} \ left (B_i - \ sum_ {j> i} a_ {ij} x ^ {(k)} _j - \ sum_ {j <i} a_ {ij} x ^ {(k +1)} _j \ right), \ quad i = 1,2, \ ldots, n .
kelebihan  : metode umum dan mudah dimengerti
kekurangan : keakurasian data dan nilai konvergensi tidak dapat dipastikan

4. Metode False position
Metode False Postion adalah istilah untuk metode pemecahan masalah pada aljabar dan kalkulus. Simplenya, metode ini dimulai dengan mencoba mengeavluasi masalah dengan uji  nilai (false) untuk variabel, dan juga mengatur nilai yang sesuai. Dalam aljabat, metode False Position biasanya juga mengarahkan kepada basic metode trial dan error pemecahan persamaan, dengan uji nilai subtitusi untuk variabel dalam persamaan. Denga persamaan sebagai berikut :
File:False position method.svg
Kelebihan metode ini : konvergen terjamin
Kekurangan metode ini : juga lambat dalam proses konvergen
5. Metode Newton – Rhapson
Dalam analisis numerik, metode Newton ( merupakan metode yang paling dikenal untuk mencari hampiran terhadap akar fungsi riil. Metode Newton sering konvergen dengan cepat, terutama bila iterasi dimulai “cukup dekat” dengan akar yang diinginkan. Namun bila iterasi dimulai jauh dari akar yang dicari, metode ini dapat meleset tanpa peringatan. Implementasi metode ini biasanya mendeteksi dan mengatasi kegagalan konvergensi.
Diketahui fungsi ƒ(x) dan turunannya ƒ ‘(x), kita memulai dengan tebakan pertama, x0 . Hampiran yang lebih baik x1 adalah
x_{1} = x_0 - \frac{f(x_0)}{f'(x_0)}.\,\!
Misalkan ƒ : [a, b] → R adalah fungsi terturunkan yang terdefinisi pada selang [a, b] dengan nilai merupakan bilangan riil R. Rumus untuk menghampiri akar dapat dengan mudah diturunkan. Misalkan kita memiliki hampiran mutakhir xn. Maka kita dapat menurunkan hampiran yang lebih baik, xn+1 dengan merujuk pada diagram di kanan. Kita tahu dari definisi turunan pada suatu titik bahwa itu adalah kemiringan garis singgung pada titik tersebut, yaitu:
Di sini, f ‘ melambangkan turunan fungsi f. Maka dengan aljabar sederhana kita mendapatkan
Kita memulai proses dengan nilai awal sembarang x0. Metode ini biasanya akan mengerucut pada akar, dengan syarat tebakan awal cukup dekat pada akar tersebut, dan bahwa ƒ'(x0) ≠ 0.

6.  Metode Secant
Sama seperti metode newton-raphson, metode secant adalah salah satu dari metode numerik untuk mencari solusi persamaan dari sebuah fungsi.
Metoda secant merupakan salah satu metoda yang digunakan untuk mencari nilai akar dari persamaan y=f(x). Metoda ini dapat dipahami dengan menggunakan bantuan model segitiga dalam penyelesainnya seperti berikut, dengan X0 dan X1 merupakan batas yang dijadikan acuan awal untuk mencari nilai X yang sebenarnya :

Misalkan dengan menggunakan gambar ilustrasi di atas kita dapat mengambil persamaan dari sifat segitiga sebangun sebagai berikut :

dimana :
BD = f(x1)
BA = x1-x0
CD = f(x1)
CE = x1-x2
Dan jika dirubah, rumusnya akan menjadi :

Dari rumus di atas bisa kita lihat bahwa yang dicari adalah Xn+1,( Xn+1) ini merupakan nilai X yang dicari sebagai pendekatan terhadap nilai X yang sebenarnya seperti untuk nilai X2 kemudian X3 pada gambar dibawah, semakin lama nilai Xn+1 akan mendekati titik X yang sebenarnya.

Jika perhitungan di atas terus dilakukan maka pada akhirnya akan di dapat nilai X yang paling mendekati dengan jumlah eror dan iterasi yang bisa kita tentukan sesuai dengan flowchart algoritma di bawah.

gambar dibawah merupakan grafik yang terbentuk dari persamaan Y = f(x), maka untuk mencari titik X pada titik  Y=0 rumus secant yang telah kita turunkan tadi bisa langsung digunakan disini.

jika kita melihat grafik diatas kita dapat memperkirakan bahwa X yang akan kita cari berada di antara titik X=0,8 dan X=0,9. maka dua titik ini bisa dijadikan batas untuk mencari nilai X yang kita cari.

setelah melakukan iterasi sebanyak tiga kali maka kita akhirnya menemukan nilai X = 0882543 yang merupakan pendekatan terhadap akar dari Y=f(x).
7. metode bisection
Metode Bisection atau disebut juga dengan metode bagi dua merupakan salah satu jenis metode pencarian instrumental dimana selang/range selalu dibagi dua atau membagi range menjadi 2 bagian.Ide awal metode ini adalah metode table, dimana suatu area dibagi menjadi N bagian. Pada Metode Bisection ini jika suatu fungsi berubah tanda pada suatu selang, maka nilai fungsi dihitung pada titik tengah, kemudian lokasi akar ditentukan sebagai titik tengah selang bagian terjadinya perubahan tanda.
>>Prinsip dari Metode Bisection adalah :
– membagi range menjadi 2 bagian, dari dua bagian ini dipilih bagian mana yang mengandung akar dan membuang bagian yang tidak mengandung akar. Hal ini dilakukan berulang -ulang hingga diperoleh akar persamaan. Berikut adalah langkah-langkah dalam menyelesaikan Metode Bisection (metode bagi dua), yaitu :
– Langkah 1 : Pilih a sebagai batas bawah dan b sebagai batas atas untuk taksiran akar sehingga terjadi perubahan tanda fungsi dalam selang interval.
– Langkah 2 : Taksiran nilai akar baru yaitu c diperoleh dari :
Atau perumusan akar dengan
– Langkah 3 : Menentukan daerah yang berisi akar fungsi:
* Jika |f(c)| ≤ toleransi, maka harga c adalah harga x yang dicari, bila tidak dilanjutkan ke tahap 4.
– Langkah 4 :
 Jika f(c) > 0, maka a baru = a dan b baru = c, sehingga daerah akar fungsi a < x < c
 Jika f(c) < 0, maka a baru = c dan b baru = b, sehingga daerah akar fungsi c < x < b. Kmudian kembali ke tahap 2 tadi.
Kelebihan metode ini : Sangat Simple, konvergen terjamin
Kekurangan metode ini : proses converge lamban.
 
sumber : https://randywicaksono.wordpress.com/2012/03/29/metode-iterative/

Rabu, 22 Februari 2017

Metode Build And Fix

Build And Fix
Dari sangat banyaknya metode – metode dari SDLC, kami akan membahas  metode yang paling lemah dari semua metode yang ada. Dan merupakan awal dan menjadi bahan pengembangan untuk metode – metode SDLC yang selanjutnya. Metode itu adalah metode SDLC Build and Fix.
Metode Build and fix pertama kali di pakai oleh perusahaan Volkswagen pada tahun 1950 – 1960 untuk memproduksi dan memasarkan serta membuat customer merasa puas dengan produk mereka. Oleh karena itu, Volkswagen selalu melakukan update terhadap produk mereka tanpa melakukan tes apakah mobil itu dirasa cocok oleh customer atau tidak. Maka dari itu, customerlah yang menentukan sendiri sikap mereka terhadap produk Volkswagen apakah sudah sesuai ataukah harus ada perbaikan di sana sini karena adanya laporan dari beberapa masalah / problem ( bisa di sebut juga : damage control ). Metode ini berjalan dengan sangat baik. Tapi, ini tergantung bagaimana setiap pelanggan, user, client memperlakukan produk anda. Setiap pernyataan terhadap produk anda akan berbeda – beda dari setiap customer  karena di proses awal tidak di lakukan proses testing dan analisa terlebih dahulu. Hal inilah yang membuat perusahaan mobil Volkswagen selalu melakukan update terbaru atau hanya sekedar melakukan pembenahan, perbaikan produk – produk mereka hanya untuk memenuhi keinginan kepuasan customer. 
Hal itu semua sangat sama dengan pengembangan produk dari sebuah software. Karena software yang di kembangkan dengan Build and fix, tidak memiliki identitas dari kualitas software itu sendiri. hal itu di karenakan software tersebut tidak menjalani proses testing sebelumnya dan menggunakan end user sebagai tester.
Didalam Build and fix sendiri juga tidak ada tahap analisis. Dimana seharusnya di metode  - metode SDLC lainnya selalu ada dan sangat di perlukan sekali karena merupakan langkah yang paling vital. Tanpa menganalisis terlebih dahulu, seorang developer tidak dapat mengetahui system yang akan dibuat dan juga tidak mengetahui keperluan dari user itu seperti apa dan sampai sejauh mana. Oleh karena itu, di dalm metode ini seorang developer langsung masuk ketahap design.
Tahap design dalam Build and fix di bagi menjadi dua yaitu :
1.      Functional design
Dalam Functional design, seorang developer melakukan perancangan fungsi terhadap produk yang akan dibuatnya. Initinya adalah, software seperti apa yang akan dibuat dan untuk apa.
2.      Technical Design
Dalam Technical Design, seorang developer melakukan perancangan teknis terhadap produk yang akan dibuatnya. Initinya adalah, software yang dibuat akan berjalan seperti apa dan bagaimana.
Setelah melakukan proses design, seorang developer yang memakai metode build and Fix memasuki proses implementasi. Arti dari implementasi disini sendiri adalah, melaksanakan dan membuat produk berdasarkan rencana rancangan design yang telah di tetapkan sebelumnya. Setelah produk yang dibuat jadi, maka developer memasuki tahap pemasaran / peluncuran / Deployment. Di tahap ini, seorang developer memasarkan atau menjual produk yang telah jadi ke customer dan digunakan oleh customer untuk dalam tahapan Usage. Ditahapan Usage inilah, customer juga bertindak sebagai tester. Jika dalam penggunaannya di ketahui ada masalah atau ada kekurangan maka customer melaporkan masalah tersebut ke vendor dari produk yang telah dipasarkan oleh developer sebagai sebuah kerusakan dan kekurangan dari produk yang bersangkutan. Dari laporan itu, pihak vendor mengevaluasi kerusakan yang dilaporkan oleh customer. Dengan bantuan dari developer, vendor lalu memperbaiki kerusakan yang dialami oleh customer. Dari laporan kerusakan dan serba kekurangan itu developer dapat memperbarui produk mereka demi kepuasan pelanggan.
Karena Build and fix lebih mengarah kepada “ damage control ” dan kepuasan pelanggan maka build and fix mulai ditinggalkan. Meskipun masih banyak juga pengembang software yang menggunakan metode ini. Pastinya, pengembang software yang memakai metode ini adalah pengembang software yang bonafit atau berbudget besar. Karena di metode ini, developer harus menggelontorkan banyak sekali modal hanya untuk di pembiayaan maintenance saja
         Bisa dilihat dari diagram diatas, planning di dalam Build and fix sangatlah sedikit. Menyusul berikutnya requirements yang juga tidak terlalu di perhatikan. Begitu juga analisis yang begitu sangat sedikit prosesnya dan cenderung masuk ke bagian design yang ada di urutan ke-empat. proses implementasi, integrasi masih begitu di perlukan dalam metode ini. Dan yang paling mencolok adalah maintenance yang begitu besar.
Proses Build and fix dapat di persingkat gambar alur tahapan prosesnya menjadi seperti berikut :

Kelebihan dari Build and fix sendiri sangatlah minim. Karena kelebihan itu sendiri merupakan gambaran dari kelemahannya. Karena seperti kita ketahui, build and fix dibuat tanpa melalui tahapan analisis dulu. Karena itu Build and fix sangat cocok di gunakan ketika harus membuat software yang tidak memiliki kompleksitas tinggi sehingga mengurangi kesempatan program untuk mengalami error, bug, hang, atau semacamnya. Dengan begitu pihak pengembang dapat mengurangi seminimal mungkin pembiayaan untuk maintenance.
Oleh karene itu, build and fix memiliki kelemahan tidak cocok ketika di pakai untuk membuat produk dengan kompleksitas tinggi dan dengan ukuran yang besar. Biaya yang di butuhkan akan menjadi sangat membengkak dan membesar ketika build and fix di gunakan untuk membuat projek berskala besar. Karena semakin besar produk yang di hasilkan maka, akan sangat sering maintenance di lakukan.  Kembali lagi ke masalah utama dari build and fix adalah metode ini tidak memasukkan analisa sebagai tahapan awalnya dan testing dalam pembuatannya, maka produk yang di hasilkan dengan metode ini sangat standart atau bahkan cenderung buruk. Jikapun kalau produk yang di hasilkan berkualitas sangat bagus, pasti produk tersebut di buat oleh pengembang – pengembang software yang berpengalaman dan berkantong tebal ( yang tentunya harus melalui berbagai update  ).
Karena begitu banyak kelemahannya, Build and fix menjadi sangat cocok untuk digunkan sebagai metode pembelajaran dalam membuat suatu produk. Karena produk yang dibuat harus berukuran kecil ( produk disini berarti software ) .
Kesimpulan dari Build and Fix method
Build and fix merupakan metode yang pertamanya ( sebelum digunakan sebagai metode pengembangan software ) digunakan bertujuan untuk memberikan kepercayaan kepada konsumen dengan memberikan layanan berupa perbaikan dan perawatan secara continue terhadap produk yang di gunakan oleh konsumen. Jadi proses maintenance terus berjalan hingga kepuasan customer terpenuhi.
Selain itu, karena build and fix tidak melakukan analisa dan testing sebelumnya, para developer pengguna metode ini menggunakan konsumen mereka sebagai tester untuk mengetahui kekurangan dan juga sebagai feedback untuk upgrade produk yang telah dihasilkan sebelumnya.  
Karena banyak sekali kelemahan dari metode ini, maka metode ini sangat cocok digunakan hanya sebatas untuk pembelajaran dalam membuat software berskala kecil / mikro.
Increment Method dapat menjadi Build and Fix Model, karena kemampuannya untuk selalu mendapat perubahan selama proses rekayasa. Karena proses pertama dari increment method yang melihat dari kemungkinan “ feasibility ”

Sumber : http://ziziramzi7.blogspot.co.id/2012/10/v-behaviorurldefaultvmlo.html

Selasa, 21 Februari 2017

Metode RAD (Rapin Aplication Development)


Rapin Aplication Development (RAD) Model

Rapin Aplication 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 :
  1. Bussiness modeling
    Aliran informasi di antara fungsi – fungsi bisnis dimodelkan dengan suatu cara untuk menjawab pertanyaan – pertanyaan berikut : informasi apa yang mengendalikan proses bisnis? Informasi apa yang di munculkan? Siapa yang memunculkanya? Ke mana informasi itu pergi? Siapa yang memprosesnya?
  2. Data modeling
    Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modelling disaring ke dalam serangkaian objek data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (disebut atribut) masing – masing objek diidentifikasi dan hubungan antara objek – objek tersebut didefinisikan.
  3. Prosess modelling
    Aliran informasi yang didefinisikan di dalam fase data modeling ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek data.
  4. Aplication generation
    RAD mengasumsikan pemakaian teknik generasi ke empat. Selain menciptakan perangkat lunak dengan menggunakan bahasa pemrograman generasi ketiga yang konvensional, RAD lebih banyak memproses kerja untuk memkai lagi komponen program yang ada (pada saat memungkinkan) atau menciptakan komponen yang bisa dipakai lagi (bila perlu). Pada semua kasus, alat – alat bantu otomatis dipakai untuk memfasilitasi konstruksi perangkat lunak.
  5. Testing and turnover
    Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.
Keunggulan metode spiral :
  1. Dimungkinkan dalam proses pembuatan membutuhkan waktu yang sangat singkat (60-90 hari).
  2. Menghemat biaya, karena penekannya adalah penggunaan komponen-komponen yang sudah ada.
  3. RAD menggunakan kembali komponen-komponen yang sudah ada, maka beberapa komponen program sudah diuji sehingga kita dapat melakukan penghematan waktu dalam uji coba.
Kelemahan metode RAD :
  1. Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.
  2. RAD menuntut pengembangan dan pelanggan yang memiliki komitmen di dalam aktifitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal. RAD menekankan perkembangan komponen program yang bisa dipakai kembali.
  3. Tidak semua aplikasi sesuai untuk RAD.
  4. RAD menjadi tidak sesuai jika risiko teknisnya tinggi. Hal ini terjadi bila sebuah aplikasi baru memforsir teknologi baru atau bila perangkat lunak baru membutuhkan tingkat interoperabilitas yang tinggi dengan program komputer yang ada. https://erihadiyana.files.wordpress.com/2008/11/gambar-42.jpg

http://circleboundaries.blogspot.co.id/2014/08/macam-macam-model-pengembangan.html

Metode Spiral

Spiral Modeling

Model spiral adalah model proses software yang evolsioner yang merangkai sifat iteratif dari prototype dengan cara kontrol dan aspek sistematis dari model sekuensial linear. Model ini berpotensi untuk pengembangan versi software secara cepat. Di alam model spiral, software dikembangkan dalam dalam suatu deretan pertambahan. Selama awal iterasi, rilis inkremental bisa merupakan sebuah model atau prototype kertas. Selama iterasi berikutnya, sedikit semi sedikit dihasilkan versi sistem rekayasa yang lebih lengkap. Model spiral dibagi menjadi sejumlah aktifitas kerangka kerja, disebut juga wilayah tugas. 6 wilayah tugas yaitu  :
  1. Komunikasi Pelanggan.
    Tugas-tugaas yang dibutuhkan untuk membangun komunikasi yang efektif di antara pengembang dan pelanggan.
  2. Perencanaan
    Tugas-tugaas yang dibutuhkan untuk membangun komunikasi yang efektif di antara pengembang dan pelanggan.
  3. Analisis Resiko
    Tugas-tugas yang dibutuhkan untuk menarik resiko-resiko, baik manajemen maupun teknis.
  4. Perekayasaan
    Tugas-tugas yang dibutuhkan untuk membangun satu atau lebih representasi dari aplikasi tersebut.
  5. Konstruksi Saat Peluncuran
    Tugas-tugas yang dibutuhkan untuk membangun satu atau lebih representasi dari aplikasi tersebut.
  6. Evaluasi Pelangganan.
    Tugas-tugas yang dibutuhkan untuk memperoleh umpan balik dari pelanggan dengan didasarkan pada evaluasi representasi software,yang dibuat selama masa perekayasaan, dan diimplementasikan selama masa pemasangan.
Spiral Model. Klik untuk memperbesar.
Keunggulan metode spiral :
  1. Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
  2. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
  3. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
Kelemahan metode spiral :
  1. Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
  2. Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
  3. Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute.
Sumber : http://circleboundaries.blogspot.co.id/2014/08/macam-macam-model-pengembangan.html

Metode Prototype

Prototype

Metode Prototype merupakan metode pengembangan perangkat lunak yang memodelkan dari sistem kerja suatu perangkat lunak yang belum lengkap dari pihak user. Para pengembang perangkat lunak melakukan koordinasi dan pertemuan-pertemuan yang secara intensif dengan user guna menampung informasi yang akan dijadikan dasar dalam perancangan perangkat lunak. Prototype dari perangkat lunak yang dihasilkan kemudian dipresentasikan kepada  dan user diberikan kesempatan untuk memberikan masukan masukan sehingga perangkat lunak yang dihasilkan nantinya betul-betul sesuai dengan keinginan dan kebutuhan user.

Perubahan dan presentasi prototype ini dapat dilakukan berkali-kali sampai dicapai kesepakatan bentuk perangkat lunak yang akan dipakai.
https://erihadiyana.files.wordpress.com/2008/11/gambar-21.jpg

Metode pengembangan perangkat lunak ini dimulai dengan pengumpulan kebutuhan. Pendekatan prototyping model digunakan jika pemakai hanya mendefenisikan secara umum dari perangkat lunak tanpa merinci kebutuhan input, pemrosesan dan output-nya, sementara pengembang tidak begitu yakin akan efisiensi algoritma, adaptasi sistem operasi, atau bentuk antarmuka manusia-mesin yang harus diambil. Cakupan aktivitas dari prototyping model terdiri dari :
  1. Mendefinisikan objektif secara keseluruhan dan mengidentifikasi kebutuhan yang sudah diketahui.
  2. Melakukan perancangan secara cepat sebagai dasar untuk membuat prototype.
  3. Menguji coba dan mengevaluasi prototype dan kemudian melakukan penambahan dan perbaikan-perbaikan terhadap prototype yang sudah dibuat.
Secara ideal prototype berfungsi sebagai sebuah mekanisme untuk mengidentifikasi kebutuhan perangkat lunak.

Tahapan Metode Prototyping

  • Pemilihan Fungsi. Mengacu pada pemilahan fungsi yang harus ditampilkan oleh prototyping. Pemilahan harus selalu dilakukan berdasarkan pada tugas-tugas yang relevan yang sesuai dengan contoh kasus yang akan diperagakan.
  • Penyusunan Sistem Informasi. Bertujuan memenuhi permintaan kebutuhan akan tersedianya prototype.
  • Evaluasi.
  • Penggunaan Selanjutnya

 Jenis-Jenis Prototyping

  1. Feasibility prototyping. Digunakan untuk menguji kelayakan dari teknologi yang akan digunakan untuk sistem informasi yang akan disusun.
  2. Requirement prototyping. Digunakan untuk mengetahui kebutuhan aktivitas bisnis user. Misalnya dalam sebuah perusahaan terdapat user direktur, manajer, dan karyawan. Maka penggunaan sistem dapat dibedakan berdasarkan user tersebut sesuai dengan kebutuhannya.
  3. Desain Prototyping. Digunakan untuk mendorong perancangan sistem informasi yang  akan digunakan.
  4. Implementation prototyping. Merupakan lanjutan dari rancangan protipe, prototype ini langsung disusun sebagai suatu system informasi yang akan digunakan.
Keunggulan metode prototyping :
  1. User dapat berinteraksi aktif.
  2. Penentuan kebutuhan lebih mudah diwujudkan.
  3. Mempersingkat waktu pengembangan.
Kelemahan metode prototyping :
  1. Proses analisis dan perancangan terlalu singkat.
  2. Mengesampingkan alternatif pemecahan masalah.
  3. Bisanya kurang fleksible dalam mengahadapi perubahan.
  4. Prototype yang dihasilkan tidak selamanya mudah dirubah.
  5. Prototype terlalu cepat selesai.
Metode pengembangan perangkat lunak model prototype dirancang agar dapat menerima perubahan-perubahan dalam rangka menyempurnakan prototype yang sudah ada sehingga pada akhirnya dapat menghasilkan perangkat lunak yang dapat diterima dan perubahan-perubahan yang terjadi dapat dianggap merupakan bagian dari proses pengembangan itu sendiri.


Sumber : http://circleboundaries.blogspot.co.id/2014/08/macam-macam-model-pengembangan.html