Loading...

Thursday, 18 October 2012

Metodologi adalah :

Kesatuan metode-metode , prosedur-prosedur, konsep-konsep pekerjaan, aturan-aturan dan postulat-postulat yg digunakan oleh suatu ilmu pengetahuan , seni, atau disiplin lainnya.

Metode adalah :

Suatu cara / teknik yg sistematik untuk mengerjakan sesuatu.

Metodologi pengembangan sistem yang ada biasanya dibuat atau diusulkan oleh :

Ø Penulis buku

Ø Peneliti

Ø Konsultan

Ø Systems house

Ø Pabrik software

Metodologi pengembangan sistem diklasifikasikan menjadi 3 golongan yaitu :

Ø Functional decomposition methodologies ( metodologi Pemecahan fungsional )

Ø Data oriented methodologies ( metodologi orientasi data )

Ø Prescriptive methodologies

Ø Functional decomposition methodologies ( metodologi Pemecahan fungsional )

Menekankan pada pemecahan dari sistem ke dalam subsistem subsistem yg lebih kecil, sehingga lebih mudah dipahami, dirancang dan diterapkan. Yang termasuk metodologi ini :

Ø HIPO (Hierarchy Input Process Output )

Ø Stepwise refinement (SR) atau Iterative Stepwise Refinement ( ISR)

Ø Information hiding

PENGEMBANGAN SISTEM

Pengembangan Sistem dapat berarti menyusun suatu sistem yg baru untuk menggantikan sistem yg lama secara keseluruhan atau memperbaiki sistem yg telah ada.

Sebab Perlunya pengembangan Sistem :

1. Adanya permasalahan (problem) yang timbul pada sistem yang lama.

Permasalahan yang timbul dapat berupa :

ü Ketidakberesan

ü Pertumbuhan Organisasi

2. Untuk meraih kesempatan (opportunities)

3. Adanya instruksi-instruksi (directives)

PRINSIP PENGEMBANGAN SISTEM

Prinsip Pengembangan Sistem :

1. Sistem yang dikembangkan adalah untuk manajemen.

2. Sistem yang dikembangkan adalah investasi modal yang besar.

3. Sistem yang dikembangkan memerlukan orang yang terdidik

4. Tahapan kerja dan tugas yang harus dilakukan dalam proses pengembangan sistem

5. Proses Pengembangan Sistem tidak harus urut

6. Jangan Takut membatalkan proyek

7. Dokumentasi harus ada untuk pedoman dalam pengembangan sistem

TAHAPAN PENGEMBANGAN SISTEM

Tahapan Utama Siklus hidup Pengembangan Sistem terdiri dari:

1. Perencanaan Sistem (systems planning )

2. Analisis Sistem (systems analysis )

3. Perancangan Sistem (systems design )

4. Seleksi Sistem (systems selection )

5. Implementasi & pemeliharaan sistem (system implementation & maintenance )

Tahapan - tahapan diatas sebenarnya merupakan tahapan didalam pengembangan sistem teknik (engineering systems ).

Siklus hidup pengembangan sistem dengan langkah - langkah utamanya adalah sebagai berikut :

clip_image002

Gambar 1:siklus pengembangan sistem

JENIS-JENIS MODEL PENGEMBANGAN SISTEM

1. Prototype

Prototyping merupakan salah satu metode pengembangan perangkat lunak yang banyak digunakan. Dengan metode prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama proses pembuatan sistem.

Sehingga terjadi seorang pelanggan hanya mendefinisikan secara umum apa yang dikehendakinya tanpa menyebutkan secara detal output apa saja yang dibutuhkan, pemrosesan dan data-data apa saja yang dibutuhkan. Sebaliknya disisi pengembang kurang memperhatikan efesiensi algoritma, kemampuan sistem operasi dan interface yang menghubungkan manusia dan komputer.

Untuk mengatasi ketidakserasian antara pelanggan dan pengembang , maka harus dibutuhakan kerjasama yanga baik diantara keduanya sehingga pengembang akan mengetahui dengan benar apa yang diinginkan pelanggan dengan tidak mengesampingkan segi-segi teknis dan pelanggan akan mengetahui proses-proses dalm menyelasaikan sistem yang diinginkan. Dengan demikian akan menghasilkan sistem sesuai dengan jadwal waktu penyelesaian yang telah ditentukan.

Kunci agar model prototype ini berhasil dengan baik adalah dengan mendefinisikan aturan-aturan main pada saat awal, yaitu pelanggan dan pengembang harus setuju bahwa prototype dibangun untuk mendefinisikan kebutuhan. Prototype akan dihilangkan sebagian atau seluruhnya dan perangkat lunak aktual aktual direkayasa dengan kualitas dan implementasi yang sudah ditentukan

Tahapan-tahapan Prototyping

Tahapan-tahapan dalam Prototyping adalah sebagai berikut:

1. Pengumpulan kebutuhan

Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.

2. Membangun prototyping

Membangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan format output)

3. Evaluasi prototyping

Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginann pelanggan. Jika sudah sesuai maka langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulangu langkah 1, 2 , dan 3.

4. Mengkodekan sistem

Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai

5. Menguji sistem

Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur dan lain-lain

6. Evaluasi Sistem

Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan . Jika ya, langkah 7 dilakukan; jika tidak, ulangi langkah 4 dan 5.

7. Menggunakan sistem

Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.
Keunggulan prototyping :

1. Adanya komunikasi yang baik antara pengembang dan pelanggan

2. Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan

3. Pelanggan berperan aktif dalam pengembangan sistem

4. Lebih menghemat waktu dalam pengembangan sistem

5. Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya.

6. Menghasilkan syarat yang lebih baik dari produksi yang dihasilkan oleh metode ‘spesifikasi tulisan’.

7. User dapat mempertimbangkan sedikit perubahan selama masih bentuk prototipe.

8. Memberikan hasil yang lebih akurat dari pada perkiraan sebelumnya, karena fungsi yang diinginkan dan kerumitannya sudah dapat diketahui dengan baik.

9. User merasa puas. Pertama, user dapat mengenal melalui komputer. Dengan melakukan prototipe (dengan analisis yang sudah ada), user belajar mengenai komputer dan aplikasi yang akan dibuatkan untuknya. Kedua, user terlibat langsung dari awal dan memotivasi

clip_image004

semangat untuk mendukung analisis selama proyek berlangsung.

Gambar 2: Tahap-tahap metode prototyping

Kelemahan prototyping :

1. Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan pemeliharaan untuk jangja waktu lama.

2. Pengembang biasanya ingin cepat menyelesaikan proyek. Sehingga menggunakan algoritma dan bahasa pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakan cetak biru sistem .

3. Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik

Waktu Penggunaan

Metode ini sering digunakan pada dunia riil. Karena metode ini secara keseluruhan akan mengacu kepada kepuasan user. Bisa dikatakan bahwa metode ini merupakan metode waterfall yang dilakukan secara berulang-ulang.

2. Waterfall model

Waterfall model, yang sering disebut juga classic life cycle atau Sekuensial Linear, menyampaikan suatu pendekatan yang berurutan untukpengembangan perangkat lunak. Pengembangan dimulai dariperencanaan sistem (rekayasa sistem), analisa kebutuhan, desain,penulisan program, pengujian dan perawatan sistem. Sekuensial modeladalah paradigma tertua dalam rekayasa perangkat lunak. Namun, padadua dekade terakhir dengan banyaknya kritik terhadap model proses initelah memunculkan keraguan dari para pengguna model ini mengenai kehandalan model proses ini.

clip_image006
Gambar 3: Tahap-tahap metode waterfall model

Tahapan-tahapan Waterfall model adalah:

1. Rekayasa dan pemodelan system/informasi (SystemEngineering)

Kerja dimulai dengan membangun syarat dari semua elemen sistemdan mengalokasikan beberapa subset dari kebutuhan ke perangkatlunak tersebut. Pandangan system ini penting ketika perangkatlunak harus berhubungan dengan elemen-elemen yang lain sepertiperangkat lunak, manusia, dan database. Rekayasa informasimencakup juga pengumpulan kebutuhan pada tingkat bisnisstrategis dan tingkat area bisnis.

2. Analisis kebutuhan perangkat lunak. (Analysis)

Proses pengumpulan kebutuhan diintensifkan dan difokuskan,khususnya pada perangkat lunak. Untuk memahami sifat programyang dibangun, perekayasa perangkat lunak (analisis) harusmemahami domain informasi, tingkah laku, unjuk kerja, dan antarmuka (interface) yang diperlukan. Kebutuhan baik untuk systemmaupun perangkat lunak didokumentasikan dan dilihat lagi denganpelanggan.

3. Desain (Design)

Desain perangkat lunak sebenarnya adalah proses multi langkahyang berfokus pada empat attribute sebuah program yang berbeda;strktur data, arsitektur perangkat lunak,representasi interface dandetail (algoritma) procedural. Proses desain menerjemahkan syarat/kebutuhan kedalam sebuah representasi perangakat lunak yangdapat diperkirakan demi kualitas sebelum dimulai pemunculankode. Sebagai mana persyaratan, desain didokumentasikan danmenjadi bagian dari konfigurasi perangkat lunak.

4. Generasi Kode (Coding).

Disain harus diterjemahkan kedalam bentuk mesin yang bisadibaca. langkah pembuatan kode melakukan tugas ini. Jika desaindilakukan dengan cara yang lengkap, pembuatan kode dapatdiselesaikan secara mekanis.

5. Pengujian (Testing) .

Sekali kode dibuat, pengujian program dimulai. Proses pengujianberfokus pada logika internal perangkat lunak, memastikan bahwapernyataan sudah diuji, dan pada eksterna fungsional – yaitumengarahkan pengujian untuk menemukan keslahan-kesalahan danmemastikan bahwa input yang dibatasi akan mamberikan hasilactual yang sesuai dengan hasil yang dibutuhkan.

6. Pemeliharaan (Maintenance).

Perangkat lunak akan mengalami perubahan setelah disampaikankepada pelanggan (perkecualian yang mungkin adalah perangkatlunak yang dilekatkan) perubahan akan terjadi karena kesalahan-kesalahan ditentukan, karena perangkat lunak harus disesuaikanuntuk mengakomodasi perubahan-perubahan didalam lingkungan eksternalnya ( contohnya perubahan yang dibutuhkan karenaperangkat pheriperal system operasi yang baru), atau karenapelanggan membutuhkan perkembangan fungsional atau unjukkerja. Pemeliharaan perangkat lunak mengaplikasikan lagi setiapfase program sebelumnya dan tidak membuat yang baru lagi.

Keunggulan Waterfall model

1. Mudah aplikasikan

2. Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan

3. software yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.

4. Document pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya.

Kelemahan Waterfall model

1. Jarang sekali proyek riil mengikuti aliran sekuensial yang dianjurkan model karena model ini bisa melakukan itersi tidak langsung . Hal ini berakibat ada perubahan yang diragukan pada saat proyek berjalan.

2. Pelanggan sulit untuk menyatakan kebutuhan secara eksplisit sehingga sulit untuk megakomodasi ketidakpastian pada saat awal proyek.

3. Sebuah kesalahan jika tidak diketahui dari awal akan menjadi masalah besar karena harus mengulang dari awal.

4. membutuhkan keahlian yang baik atau yang telah berpengalaman dalam mengembangkan perangkat lunak, dalam arti metode ini kurang cocok bagi pemula.

5. Diperlukan majaemen yang baik, karena proses pengembangan tidak dapat berulang sebelum menghasilkan suatu produk, yaitu aplikasi. Jadi apabila dalam suatu proses seperti perancangan tidak selesai tepat waktu, maka akan mempengaruhi keseluruhan proses pengembangan perangkat lunak.

6. Iterasi sering terjadi menyebabkan masalah baru

7. Client kesulitan untuk menyatakan semua ke inginannya secara eksplisit diawal tahap pengembangan

8. Hasil software yang dikembangkan baru akan diketahui lama setelah proyek pengembangan dimulai

Waktu Penggunaan:

Waterfall model sering digunakan penganalisa sistem pada umumnya. Untuk proyek pembuatan sistem baru. Inti dari metode waterfall adalah pengerjaan dari suatu sistem dilakukan secara berurutan atau secara linear. Jadi jika langkah satu belum dikerjakan maka tidak akan bisa melakukan pengerjaan langkah 2, 3 dan seterusnya. Secara otomatis tahapan ke-3 akan bisa dilakukan jika tahap ke-1 dan ke-2 sudah dilakukan.

Contoh kasus:

Sebuah perusahaan pemasaran dibidang agribisnis membutuhkansoftware yang dapat mengolah data penjualan, distrbusi, suplai, serta halyang berhubungan dengan persedian barang. Perusahaan ini telah berdiricukup lama dengan pengelolaan administrasi yang cukup baik namunmasih secara secara konvensional. Dalam perkembangannya, sistemkonvensional yang digunakan selama ini tidak mampu lagi mengelolaseluruh urusan serta data yang dibutuhkan dalam pengelolaanadministrasi tersebut. Perusahaan ini berencana akanmengimplementasikan seluruh kegiatan dan urusan administrasinya kedalam sebuah software yang terintegrasi ke seluruh bagian dalamperusahaan tersebut. Untuk mewujudkan rencana tersebut, perusahaanitu menawarkan proyek pembuatan software ini kepada konsultan bidangIT. Pada tahap pertama konsultan yang ditunjuk ini menganalisa danmengkaji semua elemen-elemen yang terkait dalam proyek pembuatansoftware tesebut. Selanjutnya perusahaan meberikan semua informasidan data yang akan digunakan dan dibutuhkan dalam software ini.Konsultan kemudian menganalisis system database dan mendefinisikankebutuhan yang harus dipenuhi oleh system yang akan dibangun. Setelahseruruh kebutuhan selsai dikumpulkan secara lengkap, maka hal lain yangsangat penting yang akan dirancang adalah antarmuka dari sebuahsystem agar dapat dimplementasikan dengan mudah. Dengan selesainyapembuatn desain antarmuka dari system tersebut, langkah selnajutnyakonsultan memterjemahkan desain tersebut kedalam coding-coding padasuatu bahasa pemrograman. Setelah pengkodean selesai maka dilakukanuji coba terhadap system yang telah dibuat. Bila pada system terjadikesalahan maka system yang telah dibuat akan danalisis kembali sampaipada tahap pengujian. Bila system telah dirasa sempurna dan sesuaidengan permintaan, maka system diserahkan kepada perusahaan dansiap diimplementasikan dalam sistem administrasi perusahaan itu. Dalamperjalanannya, dibutuhkan perawatan terhadap system yang telahdibangun karena akan ada kemungkinanan perubahan system yangdisebabkan kesalahan-kesalahan yang ditemukan dikumudian hari.pada tahap awal dan akhir dari model ini:Model sekuensial linier(clasic life cycle/waterfall model),terdiri dari tahapan perencanaan sistem (rekayasa sistem), analisakebutuhan, desain, penulisan program, pengujian dan perawatan sistem.

3. RAD Model

Metodologi yang banyak digunakan untuk membangun perangkat lunak bisnis, dimana tahap awal merupakan anlisa terhadap kebutuhan bisnis saat ini, kemudian pengumpulan data

clip_image008

digunakan sebagai bahan perancangan sampai terbentuknya suatu perangkat lunak aplikasi yang membantu dalam pengambilan keputusan manajer.

Gambar 4: Tahap-tahap metode RAD Mode

Tahapan Model RAD

1. Bussiness Modelling

Tahap ini digunakan untuk mencari aliran informasi yang dapat menjawab pertanyaan berikut:

Ø Informasi apa yang menegndalikan proses bisnis?

Ø Informasi apa yang dimunculkan?

Ø Di mana informasi digunakan ? dan

Ø Siapa yang memprosenya ?

2. Data Modelling

Tahap ini menjelaskan objek data yang dibutuhkan dalam proyek. Karakteristik (atribut) masing-masing data diidentifikasikan dan hubungan anta objek didefinisikan.

3. Process Modelling

Aliran informasi pada fase data modelling ditransformasikan untuk mendapatkan aliran informasi yang diperlukan pada implementasi fungsi bisnis. Pemrosesan diciptakan untuk menambah, memodifikasi, menghapus, atu mendapatkan kembali objek data tertentu.

4. Aplication Generation

Selain menggunakan bahasa pemrograman generasi ketiga, RAD juga memakai komponen program yang telah ada atau menciptakan komponen yang bisa dipakai lagi.

5. Testing and Turnover

Karena menggunakan kembali komponen yang telah ada, maka akan mengurangi waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.

Keunggulan Model RAD:

1. Setiap fungsi mayor dapat dimodulkan dalam waktu tertentu kurang dari 3 bulan dan dapat dibicarakan oleh tim RAD yang terpisah dan kemudian diintegrasikan sehingga waktunya lebih efisien

2. RAD mengikuti tahap pengembangan sistem seperti umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen yang ada sehingga pengembang tidak perlu membuat dari awal lagi dan waktu yang lebih singkat

Kelemahan Model RAD :

1. Model yang besar (skala proyek), membutuhkan resources yg baik dan solid

2. Membutuhkan komitmen pengembang dan user yang sama agar cepat selesai sesuai dengan rencana.

Waktu Penggunaan

Metode RAD digunakan untuk membangun perangkat lunak bisnis, proyek yang tidak memerlukan kinerja tinggi dan yang membutuhkan waktu singkat dalam pembuatan software.

4. Component Based Model

Dalam metode component based development ini, menitik beratkan pada penggunaan kembali dari komponen-komponen yang dibangun dalam sebuah aplikasi. Komponen di sini, dapat berupa fungsi tertentu atau sebuah kelompok yang berhubungan

clip_image010

dengan fungsi tertentu.

Gambar 5: Tahap-tahap metode Based Model

Tahapan Component Based Model

1. Identifikasi

identifikasi class-class yang akan digunakan kembali dengan menguji class tersebut dengan data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru.

2. Class

Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class baru, maka class baru dibuat dengan metode berorientasi objek.

3. Membangun

Software dengan class-class yang sudah ditentukan atau class baru yang dibuat, integrasikan.

Keunggulan Component Based Model:

1. Lebih memungkinkan untuk mengurangi beban biaya dan waktu pengembangan.

2. Menggunakan model reuse, pada komponen yang sudah mewakili kebutuhan umum

Kelemahan Component Based Model:

1. Model ini bersifat iteratif atau berulang-ulang prosesnya.

2. Sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini.

Waktu Penggunaan

Dalam metode ini, menitik beratkan pada penggunaan kembali dari komponen-komponen yang dibangun dalam sebuah aplikasi, pada model ini juga menggunakan pemrograman berorientasi objek, dimana banyak class yang dibangun dan menjadi komponen dalam suatu software. Class-class tersebut bersifat reusable artinya bisa digunakan kembali. Model ini bersifat iteratif atau berulang-ulang prosesnya.

5. Extreme Programming

Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan software yang rumit dan sulit dalam implementasi.

Tahapan Extreme Programing (XP)

1. Coding

2. Pengujian

3. Mendengarkan

4. Merancang

clip_image012

Gambar 6: Tahap-tahap metode Extreme Programming

Keunggulan Extreme Programming :

1. Communication/Komunikasi : Komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming). Developer didampingi oleh pihak klien dalam melakukan coding dan unit testing sehingga klien bisa terlibat langsung dalam pemrograman sambil berkomunikasi dengan developer. Selain itu perkiraan beban tugas juga diperhitungkan.

2. Simplicity/ sederhana: Menekankan pada kesederhanaan dalam pengkodean: “What is the simplest thing that could possibly work?” Lebih baik melakukan hal yang sederhana dan mengembangkannya besok jika diperlukan. Komunikasi yang lebih banyak mempermudah, dan rancangan yang sederhana mengurangi penjelasan.

3. Feedback / Masukan/Tanggapan: Setiap feed back ditanggapi dengan melakukan tes, unit test atau system integration dan jangan menunda karena biaya akan membengkak (uang, tenaga, waktu).

4. Courage / Berani: Banyak ide baru dan berani mencobanya, berani mengerjakan kembali dan setiap kali kesalahan ditemukan, langsung diperbaiki.

Kelemahan Extreme Programming:

1. Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.

2. Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga)

6. V-Shaped Model

V-Shaped Model sering disebut sebagai pengembangan dari teknik waterfall. V-Shaped Model untuk verifikasi dan validasi dan merupakan model standar yang bayak dipakai di negara-

clip_image014

negara Eropa seperti standar untuk proyek pertahanan dan administrasi federal di Jerman.

Gambar 7: Tahap-tahap metode V-Shaped Model

Tahapan V-Shaped Model

Tahapan V-Shaped Model membentuk seperti huruf V sehingga urutan tahapannya ada yang sejajar tetapi berlangsung secara urut dan membentuk huruf V, berikut tahapan dari V-Shaped ModelI :

1. System Test Planning : Requirements yang setara dengan System Testing

2. Integration Test Planning : High Level Design yang setara dengan Integration Testing

3. Unit Test Planning : Low Level Design yang setara dengan Unit Testing

4. Implementation

Kelebihan V-Shaped Model

1. Kemudahan penggunaannya

2. Dilakukannya verifikasi dan validasi pada tahap-tahap awal pengembangannya, sehingga user dapat terlibat dalam pembuatannya

3. Setiap output mampu di test pada tahap awal dan

4. Mudah dimonitor karena memiliki milestones yang jelas

Kelemahan V-Shaped Model

1. Tidak dapat digunakan untuk permasalahan yang terjadi secara bersamaan

2. Tidak dapat digunakan untuk perubahan-perubahan besar dalam persyaratan

3. Tidak bisa menganalisis resiko

Waktu Penggunaan

Model ini umumnya digunakan pada sistem yang menuntut kehandalan tinggi, pada sistem yang semua persyaratannya diketahui, dan bisa dimodifikasi untuk menyesuaikan dengan perubahan setelah fase analisis, serta solusi dan teknologinya telah jelas diketahui.

7. Dynamic Software Development Method (DSDM)

Dynamic Software Development Method (DSDM) pada dasarnya merupakan suatu metodelogi pengembangan perangkat lunak yang didasarkan pada metodelogi RAD.

Tahapan Dynamic Software Development Method (DSDM)

1. Feasibility study

2. Business study – prioritized requirements

3. Functional model iteration

4. Risk analysis

5. Time-box plan

6. Design and build iteration

7. Implementation

clip_image015

Gambar 8: Tahap-tahap metode Dynamic Software Development Method (DSDM)

Kelebihan Dynamic Software Development Method (DSDM)

1. Menyajikan kerangka kerja (framework) untuk membangun dan memelihara sistem dalam waktu yang terbatas melalui penggunaan prototyping yang incremental dalam lingkungan yang terkondisikan

2. Membangun software dengan cepat

3. DSDM dapat dikombinasikan dengan XP menghasilkan kombinasi model proses yang mengikuti DSDM dan praktek yang sejalan dengan XP

Kelemahan Dynamic Software Development Method (DSDM)

1. Setiap iterasi bergantung pada prototype sebelumya

2. Menentukan scope dari suatu prototype proyek tidak pernah selesai

3. Dokumentasi sering kali tidak lengkap fokus pada pembuatan prototype

4. Isu-isu mengenai system backup and recovery, system performance dan system security kurang/tidak diperhatikan dan sering terlupakan

Waktu Penggunaan

Dynamic Sofware Development Method (DSDM) digunakan untuk proyek yang membutuhkan waktu singkat dan tidak memerlukan kinerja tinggi, ini karena DSDM berdasar pada model RAD.

8. Model Spiral

Model spiral merupakan model proses perangkat lunak yang memadukan wujud pengulangan dari model prototyping dengan aspek pengendalian dan sistematika dari linear clip_image016
sequential model.

Gambar 9: Tahap-tahap metode Spiral Model

Tahapan Model Spiral

1. Komunikasi pelanggan

Untuk membangun komunikasi antara pelanggan dan kebutuhan yang diinginkan oleh pelanggan.

2. Perencanaan

Untuk mendefinisikan sumber daya, ketepatan waktu, dan proyek informasi lain yg berhubungan.

3. Analisis Resiko

Untuk menafsirkan resiko manajemen dan teknis.

4. Perekayasaan

Untuk membangun satu atau lebih representasi dari apikasi tersebut.

5. Konstruksi dan peluncuran

Untuk mengkonstruksi, menguji, memasang, dan memberi pelayanan kepada pemakai.

6. Evaluasi Pelanggan

Untuk mendapatkan umpan balik dari pelanggan.

Kelebihan Model Spiral

1. Untuk pengembangan sistem dan perangkat lunak skala besar

2. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses

Kelemahan Model Spiral

1. Sulit untuk meyakinkan pemakai (saat situasi kontrak) bahwa penggunaan pendekatan ini akan dapat dikendalikan

2. Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses

3. Belum terbukti apakah metode ini cukup efisien karena usianya yang relatif baru

Waktu Penggunaan

Metode spiral digunakan untuk penciptaan prototipe yang tepat, proyek yang beresiko tinggi, persyaratan yang komplek, bagi pengguna yang tidak yakin akan kebutuhan mereka, serta perubahan signifikan yang diharapkan (research dan exploration).

9. Model Incremental

Model Incremental merupakan kombinasi linear sequential model dan filosofi pengulangan

clip_image018

dari prototyping model.

Gambar 10: Tahap-tahap metode Incremental Model

Tahapan Model Incremental

1. Requirement

2. Specification

3. Architecture Design

Kelebihan Model Incremental

1. Biasanya digunakan bila pembuat software tidak banyak/kekurangan pembuat

2. Mampu mengakomodasi perubahan kebutuhan customer

Kelemahan Model Incremental

1. Hanya akan berhasil jika tidak ada staffing untuk penerapan secara menyeluruh

2. Penambahan staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut

3. Hanya digunakan untuk proyek dengan skala kecil

Waktu Penggunaan

Metode Incremental banyak digunakan untuk proyek dengan teknologi terbaru, proyek yang membutuhkan jadwal pengembangan yang panjang, untuk kebutuhan yang memerlukan fungsi dasar, serta resiko, pendanaan, jadwal, kompleksitas program, atau kebutuhan untuk realisasi kemanfaatannya.

10. Model Agile

Model Agile merupakan suatu metode konvensional untuk membangun berbagai jenis perangkat lunak dan berbagai macam tipe proyek pengembangan perangkat lunak, yang dapat melakukan pengiriman atau penyampaian hasil dari implementasi sistem melalui perangkat lunak dengan cepat.

Tahapan Agile Model

1. Perencanaan

2. Requirements analysis

Ø Design

Ø Coding

Ø Testing

Ø Dokumentasi

Gambar 11: Tahap-tahap metode clip_image020
Agile Model

Kelebihan Agile Model

1. Meningkatkan rasio kepuasan pelanggan

2. Bisa melakukan review pelanggan mengenai software yang dibuat lebih awal

3. Mengurangi resiko kegagalan implementasi software dari non-teknis

4. Besar kerugian baik secara material atau imaterial tidak terlalu besar jiak terjadi kegagalan

Kelemahan Agile Model

Dokumentasi harus cukup detail agar fase selanjutnya dapat berjalan dengan baik

Waktu Penggunaan

Metode Agile digunakan untuk proyek yang memberikan kepuasan pelanggan karena resiko kegagalan yang kecil dan lebih cepat dalam penyelesaian software serta perubahan yang cepat dari software yang dibangun untuk meningkatkan kualitas software yang lebih baik.

11. Model Joint Application Development (JAD)

Joint Application Development (JAD) merupakan sebuah teknik yang berfokus pada

clip_image022

keterlibatan dan komitmen pengguna dalam menentukan kebutuhan dan merancang (desain) aplikasi.

Gambar 12: Tahap-tahap metode JAD Model

Tahapan Model JAD

1. Requirement

Perencanaan-perencanaan kebutuhan apa saja yang dibutuhkan dalam perancangan suatu sistem. Sistem yang terlibat dalam teknik JAD adalah sponsor, business users, system analyst (tim developer), system experts, fasilitator.

2. Design

JAD didesain untuk mendapatkan informasi yang spesifik, biasanya melalui pertanyaan closed-ended.

3. Implementasi

Tahapan untuk mewujudkan sistem secara fisik. Tahapan ini meliputi kegiatan untuk mempersiapkan sesi JAD dan menjalankan JAD.

4. Verification

Tahapan pengujian dari performa sistem, apakah sistem sudah sesuai dengan kebutuhan dan bekerja dengan baik. Selain itu juga pengujian bagi pemakai apakah mudah digunakan (user friendly) terhadap pemakai.

5. Maintenance

Tahapan akhir dalam fase JAD yang digunakan untuk pemeliharaan sistem.

Kelebihan Model JAD

1. Penerapan JAD jika pengembang dan user bekerjasama dalam satu tim akan sangat mendukung penerapan prototyping

2. Penentuan keperluan oleh sekumpulan pemegang saham

3. Melibatkan kerjasama tim proyek, pengguna dan pengurusan

4. Memberikan dukungan yang besar dan penerimaan sistem yang baru dapat menghasilkan sistem dengan kualitas yang lebih tinggi

5. Dapat mengurangi scope creep hingga 50%

6. Keterlibatan banyak user akan memudahkan proses implementasi sistem baru dengan biaya training yang lebih rendah

Kelemahan Model JAD

1. Dana yang diperlukan untuk membangun sistem lebih mahal

2. Dalam analisa sistem akan memakan waktu yang lebih lama, karena sangat sulit untuk mendapatkan waktu dan ketersediaan user dalam forum diskusi JAD

3. Pendekatan JAD memiliki banyak masalah yang disebabkan oleh proses kelompok membuat seseorang yang mendominasi forum, sedangkan yang lainnya akan menjadi “penonton” saja dan tidak memberikan kontribusi dalam pembahasan (analisa sistem)

Waktu Penggunaan

Model JAD digunakan untuk proyek yang mmbutuhkan teknik analisis dan perancangan sistem dengan menekankan pengembangan partisipasi antara system owners, users, designer, dan builders.

Selain 11 model metode pengembangan system diatas masih banyak lagi jenis-jenis model pengembangan system lainnya yang mungkin belum di ketahui detailnya mengenai tahapan, kelebihan, kelemahan, dan penggunaan waktunya.

Beberapa model metode pengembangan sistem yang lain :

  1. CODE AND FIX
  2. OUT-SOURCING
  3. IN-SOURCING
  4. CO-SOURCING

METODOLOGI PENGEMBANGAN SISTEM

Read more..

Thursday, 2 February 2012

MARKETPLACE WINDOWS PHONE 7


Marketplace Windows Phone adalah salah satu aplikasi yang digunakan untuk mendistribusikan musik digital, konten video, podcast, dan aplikasi dari pihak ketiga untuk  handset Windows phone. Nah bagaiamana caranya Marketplace pada  Windows Phone ini dapat di akses?, pengaksesan Marketplace ini sangatlah mudah kita cukup menggunakan Zune Software client atau Marketplace hub. Zune Software itu sendiri berfungsi untuk melakukan sinkronisasi dengan semua perangkat  dengan fungsionalitas Zune. Zune Software menggunakan desain Microsoft Metro sebagai prinsip desain bahasanya. Marketplace ini dikelola dan disetujui oleh Microsoft .
Sedangkan untuk pemutar musik dan video, Zun Marketplace menawarkan lagu hingga 14 juta lagu hingga 320 kbit/s dalam DRM-free dengan format MP3 dari empat kelompok besar music yaitu EMI, Warner Music Group, Universal Music  Group dan Sony BMG. Sedangkan label music yang lebih kecil menawarkan film dari paramount, Universal, warner Broters, dan Studio-studio lain serta menawarkan acara televise dari jaringan televise popular.
Selain itu Microsoft juga menawarkan product lain yang tak kalah menariknya yaitu Zune Pass yaitumusik berlangganan yang memungkinkan pelanggan untuk mendownload  lagu dengan jumlah yang tidak terbatas selama langganan mereka aktif.
Read more..