MODEL-MODEL PENGEMBANGAN PERANGKAT LUNAK


  • Minggu, 13 Oktober 2019

MODEL-MODEL PENGEMBANGAN PERANGKAT LUNAK

A. Model Waterfall

1. Analisa dan Interpretasi Data

        Metode Waterfall pertama kali diperkenalkan oleh Royce pada tahun 1970 (Petersen et.al., 2009) dengan 7 (tujuh) tahapan yang berurut walaupun juga mempunyai feedback loop antar tahapan jika diperlukan, seperti terlihat pada gambar 1 (Royce, 1970). Metode ini mengalami banyak perbaikan dan perubahan diantaranya adalah perubahan langkah dari 7 (tujuh) menjadi 5 (lima) tahapan (Pressman, 2010), (Sommerville, 2011) seperti terlihat pada gambar 2a dan 2b. 
        Metode Waterfall yang dibahas pada subbab ini merupakan metode Waterfall versi Sommerville (2011). Pertimbangan menggunakan versi Sommerville karena metode ini merupakan versi terbaru dari metode Waterfall pada makalah ini. Metode ini mempunyai tahapan-tahapan sebagai berikut: a. Requirements analysis and definition
Layanan sistem, kendala, dan tujuan ditetapkan oleh hasil konsultasi dengan pengguna yang kemudian didefinisikan secara rinci dan berfungsi sebagai spesifikasi sistem.

a. System and software design

Tahapan perancangan sistem mengalokasikan kebutuhan-kebutuhan sistem baik perangkat keras maupun perangkat lunak dengan membentuk arsitektur sistem secara keseluruhan. Perancangan perangkat lunak melibatkan identifikasi dan penggambaran abstraksi sistem dasar perangkat lunak dan hubungannya. 

b. Implementation and unit testing

Pada tahap ini, perancangan perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Pengujian  melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya.

c. Integration and system testing

Unit-unit  individu program atau program digabung dan diuji sebagai sebuah sistem lengkap untuk memastikan apakah sesuai dengan kebutuhan perangkat lunak atau tidak. Setelah pengujian, perangkat lunak dapat dikirimkan ke customer.

d. Operation and maintenance

Biasanya (walaupun tidak  selalu), tahapan ini  merupakan tahapan yang paling panjang. Sistem dipasang dan digunakan secara nyata. Maintenance melibatkan pembetulan kesalahan yang tidak ditemukan pada tahapan-tahapan sebelumnya, meningkatkan implementasi dari unit sistem, dan meningkatkan layanan sistem sebagai kebutuhan baru.

Gambar 1. Metode Waterfall versi Royce (1970) 

Gambar 2. Metode Waterfall versi Pressman (2010)

Gambar 3. Metode Waterfall versi Sommerville (2011)

  •     Kekurangan Metode Waterfall
     Kekurangan menggunakan metode waterfall adalah metode ini tidak memungkinkan untuk banyak revisi jika terjadi kesalahan dalam prosesnya. Karena setelah aplikasi ini dalam tahap pengujian, sulit untuk kembali lagi dan mengubah sesuatu yang tidak terdokumentasi dengan baik dalam tahap konsep sebelumnya.
  • Kelebihan Metode Waterfall
   Kelebihan menggunakan metode air terjun (waterfall) adalah metode ini memungkinkan untuk departementalisasi dan kontrol. proses pengembangan model fase one by one, sehingga meminimalis kesalahan yang mungkin akan terjadi. Pengembangan bergerak dari konsep, yaitu melalui desain, implementasi, pengujian, instalasi, penyelesaian masalah, dan berakhir di operasi dan pemeliharaan.

  • Contoh Implementasi
     Selama implementasi, struktur dan alur kerja dilaksanakan dengan mempertimbangkan kondisi dan tujuan kerangka kerja sistemik. Desain perangkat lunak menjadi program yang terkait langsung dengan sistem operasi, satu atau lebih bahasa pemrograman, dan infrastruktur. Hasilnya biasanya berupa perangkat lunak operasional, seringkali sebagai versi beta.

B. Model Prototyping


1. Penelitian Terkait


      Penelitian sebelumnya telah dilakukan dalam paper (Khaled, 2009) yang melakukan perbandingan beberapa alat pemodelan kebutuhan seperti Rational Rose, ArgoUML, MagicDraw, dan Enterprise Architect. Perbandingan dilakukan untuk memilih yang cocok dalam mendukung aktivitas dalam perancangan arsitektur sistem. Menulis dokumentasi, dan pemodelan proses bisnis. Dalam (Supakkul & Chung, 2012) ditemukan banyak sintak atau notasi yang digunakan dan diperlukan untuk melakuakan pemodelan dalam pengembangan sistem perangkat lunak. Terdapat beberapa kondisi aplikasi yang hanya mendukung satu atau sedikit notasi. Hal tersebut memungkinkan analis dalam memilih aplikasi yang tepat dalam memodelkan kebutuhan. Penelitian lain dalam (Auer, Tschurtschenthaler, & Biffl, 2003) menggunakan aplikas UMLet yang merupakan aplikasi pemodelan kebutuhan perangkat lunak berorientasi objek. Aplikasi tersebut cocok digunakan di dunia pendidikan maupun industri. Aplikasi pemodelan yang dikustomisasi juga terdapat pada (David & Idasiak, 2009) yang membangun aplikasi bernama sysML yang mempunyai tujuan dalam proses analisis, spesifikasi, merancang dan memverifikasi sistem yang membingungkan. Terkait dengan dunia industri, dalam (Silingas, 2008) dilakukan penelitian mengenai pengembangan aplikasi yang terkait dengan kerangka kerja di dunia industri, dengan menggunakan pendekatan baru yang mendukung strategi tersebut.  

2. Metodologi

           Metode pengembangan sistem yang digunakan dalam penelitian ini adalah metode prototyping. Penggunaan metode ini didasarkan pada keuntungan dalam mendapatkan umpan balik yang cepat dari customer.
Gambar 4. Model prototyping (Pressman & Maxim, 2014) 
        Gambar 1 menunjukkan tahapan dalam model prototyping. Tahapan awal dalam model ini adalah perencanaan yang dilakukan secara cepat kemudian dilanjutkan dengan perancangan. Setelah taapan perancangan dilakukan, kemudian dilanjutkan dengan melakukan pembuatan prototype aplikasi. Setelah itu prototype akan diberikan kepada customer untuk direview dan diberikan umpan balik. Model protoyping memiliki keuntungan dalam hal komunikasi yang intens antara pengguna dan pengembang, membantu analis dalam menentukan kebutuhan pengguna yang sebenarnya dan meminimalkan kesalahan persepsi.  

  • Kelebihan Prototyping adalah:

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 system
4.      Lebih menghemat waktu dalam pengembangan system
Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya. 
  • Kekurangan Prototyping adalah :

1.  Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara keseluruhan dan juga belummemikirkan kemampuan pemeliharaan untuk jangja waktu lama.
2.      Pengembang    biasanya          ingin    cepat    menyelesaikan            proyek.            Sehingga menggunakanalgoritma dan bahasa pemrograman yang sederhana untuk membuat prototyping lebihcepat selesai tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakancetak biru sistem
Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik

  •     Contoh Implementasi
           Pengembangan perangkat lunak meliputi beberapa tahapan pengembangan seperti perencanaan, analisis, perancangan, implementasi, pengujian, dan pemeliharaan. Khususnya dalam tahap analisis dilakukan pemodelan kebutuhan baik terstruktur maupun pemodelan berorientasi objek.

C. Model V


1. Landasan Teori

    Informasi merupakan data yang telah dikelola menjadi suatu bentuk yang berharga bagi penerimanya dan bermanfaat dalam pengambilan dalam pengambilan keputusan pada saat ini ataupun pada waktu yang akan mendatang (Davis, 1995).
     Informasi merupakan data yang telah dikelola menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya (Kristanto, 1999).
   Informasi merupakan data yang telah dikelola menjadi suatu bentuk yang berarti bagi penerimanya dan bermanfaat dalam pengambilan keputusan pada waktu yang akan mendatang (Jogiyanto, 1999). Dalam pembuatan perangkat lunak ini ada kerangka sistem informasi yang akan dikerjakan, untuk variabel yang akan digunakan dapat dilihat pada Tabel 1. 

Tabel 1. Variabel yang digunakan untuk merancang sistem

Gambaran kerangka sistem informasi yang digunakan untuk mengimplemntasikan perangkat lunak ini dapat dilihat pada Gambar 5. 

Gambar 5. Kerangka Sistem Informasi management pendaftaran anggota 
perpustakaan Kabupaten Kudus 

2. Metodologi

Metode yang dilaksanakan dalam kegiatan ini dapat dilihat pada Gambar 6. 

Gambar 6. Metode sistem informasi management pendaftaran anggota
perpustakaan Kabupaten Kudus 

      Keuntungan V Model
1.  Bahasa yang digunakan untuk merepresentasikan konsep V model menggunakan bahasan formal. Contoh : dengan menggunakan objek model ataupun frame-frame 
     meminimalisasikan kesalahan pada hasil akhir karena ada test pada setiap prosesnya
2.  Penyesuaian yang cepat pada projek yang baru
3.  Memudahkan dalam pembuatan dokumen projek
4.  Biaya yang murah dalam perawatan dan modifikasinya
5.  V Model sangat fleksibel. V Model mendukung project tailoring dan penambahan dan pengurangan method dan tool secara dinamik. Akibatnya sangat mudah untuk melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan sangat mudah untuk menambahkan method dan tool baru atau menghilangkan method dan tool yang dianggap sudah obsolete.
6.  V Model dikembangkan dan di-maintain oleh publik. User dari V Model berpartisipasi dalam change control board yang memproses semua change request terhadap V Model.

Kekurangan V Model
1.   Aktifitas V-Model hanya difokuskan pada projectnya saja, bukan pada keseluruhan organisasi. V-Model adalah proses model yang hanya dikerjakan sekali selama project saja, bukan keseluruhan organisasi.
2.   Prosesnya hanya secara sementara. Ketika project selesai, jalannya proses model dihentikan. Tidak berlangsung untuk keseluruhan organisasi.
3.   Metode yang ditawarkan terbatas. Sehingga kita tidak memiliki cara pandang dari metode yang lain. Kita tidak memiliki kesempatan untuk mempertimbangkan jika ada tools lain yang lebih baik.
4.   oolnya tidak selengkap yang dibicarakan. SDE (Software Development Environment).Tidak ada tools untuk hardware di V-Model. Tool yang dimaksud adalah “software yang mendukung pengembangan atau pemeliharaan / modifikasi dari system IT.
5.   V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.

          Implementasi V Model
      Pengujian yang gunakan untuk mengimplementasikan perangkat lunak adalah dengan memastikan bahwa kinerja masing-masing sistem dari hasil pembuatan perangkat keras maupun perangkat lunak dapat berfungsi sesuai dengan yang diharapkan.

D. Fountain Model


1. Pengertian


        Fountain Model merupakan model yang memungkinkan pekerjaan saling tumpang tindih dalam siklus pengembangan sistem tentunya dengan melihat pertimbangan yang ada dan disesuaikan dengan kebutuhan pengembangan. Beberapa tahapan dan pengulangan yang terjadi tersebut akan berjalan secara pararel. Model fountain ini merupakan siklus hidup berorientasi objek sehingga akan lebih fokus pada bagian-bagian keseluruhan sistem yang dikenal dengan nama subsistem. (Rifqi, 2018)
        Metode fountain model merupakan model metode perangkat lunak yang diterapkan untuk pembangunan sistem yang bersifat object oriented. Tahapan-tahapan pengembangan yang dilakukan adalah anal isis kebutuhan, spesifikasi Kebutuhan user, perancangan sistem, perancangan program, coding, unit testing, sistem testing, implementasi, pemeliharaan dan pengembangan lebih lanjut.
Tahapan-tahapan tersebut saling terkait dan saling mempengaruhi (life cycle). (Iwan Rijayana, 2010)

Alur Proses
  • Tahap Requirement Analysis : Menganalisis kebutuhan sistem dan semua yang berkaitan dengan proses yang terjadi pada sistem yang diperlukan untuk membangun sistem sehingga dapat berjalan dengan baik dan maksimal.
  • Tahap User Requirement Specification : MenjeJaskan tentang kebutuhan dari sisi pengguna (user), sehingga user dapat menjalan sistem dengan baik.
  • Tahap Software Requirement Specification : Menjelaskan tentang kebutuhan sistem dari sisi software sehingga sistem yang ada dapat berjalan dengan baik dan maksirnal.
  • Tahap Sistem Design : Pada tahap perancangan ini diberikan gambaran umum yang jelas kepada pengguna dan rancang bangun yang lengkap tentang sistem yang akan dikembangkan kepada pihak-pihak yang terlibat dalam pengembangan sistem. Perancangan disini dilakukan dengan permodelan menggunakan metode Object Orientied dengan tools UML (Unified Modeling Language).
  • Tahap Program Design : Proses perancangan dan pembuatan kerangka program yang mengacu pada tahap sebelumnya, sehingga program yang dibuat dapat memenuhi kebutuhan dari sistem dan mencakup penyelesaian masalah yang ada.
  • Tahap Unit Testing : Proses pengujian terhadap setiap unit yang ada pada system sehingga dapat unit tersebut dapat melakukan kerja sesuai dengan yang diharapkan.
  • Tahap Coding : Proses penterjemahan tahap perancangan ke dalam bahasa pemrograman. Proses coding meliputi unit-unit yang ada pada keseluruhan system.
  • Tahap Testing : Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain, dan pengkodean.
  • Tahap Program Use : Proses pengaplikasian dan pemakaian program yang telah dibuat untuk memastikan apakah tujuan yang semula telah terpenuhi,
  • Tahap Maintenance : Pada tahap maintenance, setelah dilakukan pengujian dan sistem diyakini telah valid, selanjutnya sistem tersebut didistribusikan kepada pengguna. Banyak software tidak dapat bertahap 10 sampai 15 tahun, meskipun software tersebut dibuat dengan dengan desain dan teknik pengkodean terbaik saat dibuat. Software akan memburuk dengan semestinya ketika pindah platform sistem operasi berbeda, kebutuhan baru dari pengguna atau software tidak cukup bisa menjawab kebutuhan fungsional.
  • Tahap Further Development : pada tahap ini dijelaskan kemungkinan yang ada untuk proses pengembangan sistem.

Kelebihan Fountain Model
       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

Kekurangan Fountain Model
       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

Manfaat Fountain Model
      Hampir sama dengan Waterfall, namun cara kerja dari usernya saja yang berbeda

Contoh Implementasi Fountain Model
      Apllkasi Ensiklopedia Hewan Vertebrata Berbasis Multimedia (Iwan Rijayana, 2010)
     
Gambar 7. Metode Fountain Model

E. Model Spiral

1.         Dalam proyek perangkat lunak berskala sedang dan besar kadang perubahan dari perangkat lunak tidak dapat dihindari, kebutuhan perangkat lunak berubah seiring dengan penyesuaian bisnis proses agar dapat memenuhi tuntutan eksternal. Perubahan dapat terjadi diberbagai sisi, prioritas manajemen bisa berubah, desain dan implementasi dapat berubah sesuai dengan perkembangan teknologi. Aktivitas proses terjadi berulang-ulang secara berkala agar dapat menangani perangkat lunak yang merespon perubahan yang terjadi.
2.        Dua jenis proses yang sudah secara eksplisit didesain untuk mendukung iterasi proses adalah(Sommerville, 2004):
a.     Incremental delivery : diamana proses pesifikasi perangkat lunak, desain dan implementasi, dipecah-pecah menjadi rangkaian-rangkaian tahapan yang akan dikerjakan sesuai dengan urutan.
b.     Spiral Development : proses pengembangan sistem yang berbentuk spiral bergerak secara spiral mulai dari pemikiran-pemikiran awal yang ada pada bagian dalam bergerak keluar menuju ke bagian paling luar yang merupakan proses penyelesaian pengembangan sistem.
Alur Proses
Model Spiral terdiri dari beberapa tahapan yaitu perencanaan, analisis dan desain, pembuatan prototype, pengujian dan penggabungan (Kusmiati & Ansori, 2015)
  • Tahap Perencanaan, pada tahap ini, peneliti menentukan nama dari aplikasi ini. Aplikasi ini diberi nama Aplikasi Pemasangan Layanan RESA menggunakan Model Spiral. Aplikasi bertujuan untuk mempermudah dalam pengolahan data serta mempercepat proses birokrasi dalam pemasangan layanan RESA.
  • Tahap Analisis dan Desain, pada tahap ini melakukan analisis pada bagaimana proses pemasangan layanan RESA yang berjalan saat ini, pengumpulan data, mengetahui kekurangan dan permasalahannya. Selain itu, pada tahap ini peneliti melakukan desain aplikasi yang akan dibuat.
  • Membangun Prototype, pada tahap ini membangun prototype yang terdiri dari prototype form pemasangan, memo pemasangan, surat jalan pemasangan serta laporan hasil pemasangan layanan RESA.
  • Pengujian Aplikasi, pada tahap ini melakukan pengujian aplikasi dengan menggunakan metode black-box untuk memastikan form dan menu berfungsi dengan baik.
Gambar 8. Proses Model Spiral(Sommerville, 2004)
Kelebihan Spiral Model
  • Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan kebutuhan.
  • Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
  • Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer. 
  • Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
  • Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk.
  • Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif.
  • Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi permaslahan yang serius.
Kekurangan Spiral Model
  • Banyak konsumen (Client) tidak percaya bahwa pendekatan secara evolusioner dapat dikontrol oleh kedua pihak. Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh konsumen dan developer.
  • Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses.
  • Belum terbukti apakah metode ini cukup efisien karena usianya yang relatif baru.
  • Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
  • Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute.
Manfaat Spiral Model
Model ini dapat terus digunakan meskipun software sudah dikirimkan karena proses (siklus)dapat berputar lagi jika ada perubahan pada software sampai tidak ada permintaan perupbahan pada software oleh client.

Contoh Implementasi Spiral Model
Aplikasi penentuan jarak minimum dengan mengimplementasikan metode Dynamic Programming menggunakan Spiral Model.

F. Model Extreme Programming

           Metode Extreme Programming sering juga dikenal dengan metode XP. Metode ini dicetuskan oleh Kent Beck, seorang pakar software engineering. Extreme programming adalah model pengembangan perangkat lunak yang menyederhanakan berbagai tahapan pengembangan sistem menjadi lebih efisien, adaptif dan fleksibel. (Fatoni & Dwi, 2016)

Alur Proses
Nilai dasar metode extreme programming :
  • Communication : Memfokuskan komunikasi yang baik antara programmer dengan user maupun antar programmer.
  • Courage : Pengembang perangkat lunak harus selalu memiliki keyakinan, keberanian dan integritas dalam melakukan tugasnya.
  • Simplicity : Lakukan semua dengan sederhana.
  • Feedback : Mengandalkan feedback sehingga dibutuhkan anggota tim yang berkualitas.
  • Quality Work : Proses berkualitas berimplikasi pada perangkat lunak yang berkualitas sebagai hasil akhirnya.
Metode Extreme Programming sering juga dikenal dengan metode XP. Metode ini dicetuskan oleh Kent Beck, seorang pakar software engineering. Extreme programming adalah model pengembangan perangkat lunak yang menyederhanakan berbagai tahapan pengembangan sistem menjadi lebih efisien, adaptif dan fleksibel. Nilai dasar metode extreme programming :
1.   Communication : Memfokuskan komunikasi yang baik antara programmer dengan user maupun antar programmer.
2.   Courage : Pengembang perangkat lunak harus selalu memiliki keyakinan, keberanian dan integritas dalam melakukan tugasnya.
3.   Simplicity : Lakukan semua dengan sederhana.
4.   Feedback : Mengandalkan feedback sehingga dibutuhkan anggota tim yang berkualitas.
5.  Quality Work : Proses berkualitas berimplikasi pada perangkat lunak yang berkualitas sebagai hasil akhirnya.

Gambar 9. Extreme Programming

Aspek Dasar Extreme Programming 

Gambar 10. Aspek Dasar Extreme Programming 
Penerapan Extreme Programming bisa dilakukan di banyak perusahaan atau organisasi. Sebuah organisasi seperti software house atau pengembangan sebuah software dapat menerapkan extreme programming karena extreme programming mengedepankan extreme programming life cycle
Kerangka Kerja Extreme Programming 

                                                  Gambar 11 Kerangka Kerja Extreme Programming 


Kelebihan Extreme Programming
  • Meningkatkan kepuasan kepada klien
  • Pembangunan system dibuat lebih cepat
  • Menjalin komunikasi yang baik dengan client.
  • Meningkatkan komunikasi dan sifat saling menghargai antar developer.
Kekurangan Extreme Programming
  • Cerita-cerita yang menunjukkan requirements dari pelanggan kemungkinan besar tidak lengkap sehingga Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
  • Tidak bisa membuat kode yang detail di awal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga).
  • XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user.
Manfaat Extreme Programming
Extreme Programming tepat untuk dipergunakan untuk pembuatan program yang:
  • Membutuhkan perubahan yang cepat (misalnya: Game Mobile)
  • Proyek beresiko tinggi dengan tantangan yang berat
  • Tim programmer sedikit, yaitu sekitar 2–10 orang
  • Adanya permintaan dari pelanggan secara langsung
Contoh Implementasi Extreme Programming
    Untuk mencapai kesederhanaan, XP membatasi pengembang perangkat lunak melakukan perancangan hanya untuk kebutuhan - kebutuhan yang sifatnya mendesak alih - alih melakukan perancangan kebutuhan - kebutuhan yang diperlukan di masa depan. Tujuannya adalah untuk menciptakan rancangan yang sederhana yang dapat dengan mudah diimplementasikan dalam bentuk kode - kode program secara cepat. Jika rancangan tersebut selanjutnya harus ditingkatkan, rancangan yang bersangkutan dapat di refaktorisasi di waktu yang lain. 

G. Model Agile

Pengertian
Dalam situasi pembangunan software harus membangun sistem bisnis yang besar dan penting. Jangkauan dan kompleksitas sistem harus dimodelkan sehingga dapat dimengerti, masalah dapat dibagi menjadi lebih kecil dan kualitas dapat dijaga pada tiap langkah pembangunan software. Agile Modeling adalah suatu metodologi yang praktis untuk dokumentasi dan pemodelan sistem software. Agile Modeling adalah kumpulan nilai- nilai, prinsip dan praktek-praktek untuk memodelkan software agar dapat diaplikasian pada software development proyek secara efektif. (Wulan, 2016)

Alur Proses
Agile model memiliki beberapa fitur pada saat melakukan pengembangan perangkat lunak diantaranya adalah: (Ependi, 2015)
  • Iterasi yang cepat dan pengiriman software yang befungsi secara regular memastikan kepuasan pelanggan.
  • Perubahan yang telat dapat ditangani dengan mudah dan juga diterima secara terbuka.
  • Perkembangan dinilai berdasarkan implementasi software.
  • Komunikasi pelanggan dan pengguna ditekankan secara bertatap muka.
  • Setiap pertemuan dengan anggota tim dilakukan secara bertatap muka.
  • Setiap anggota tim pengembang adalah orang yang berkomitmen dan bermoivasi timggi serta kompeten dan dapat dipercaya.

Gambar 4. Tahap model Agile Software Development

Kelebihan Agile Model
  • Dapat melakukan review pelanggan mengenai software yang dibuat lebih awal.
  • 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 relatif kecil.
Kekurangan Agile Model
  • Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
  • Agile tidak akan berjalan dengan baik jika komitmen tim kurang.
  • Tidak cocok dalam skala tim yang besar (>20 orang).
  • Perkiraan waktu release dan harga perangkat lunak sulit ditentukan.
Manfaat Agile Model
  • Metodologi pengembangan Agile memberikan kesempatan untuk menilai arah proyek melalui siklus pengembangan
  • Dengan berfokus pada pengulangan siklus kerja disingkat serta produk fungsional mereka menghasilkan, metodologi tangkas digambarkan sebagai “berulang” dan “incremental”.
  • Dalam paradigma tangkas, setiap aspek persyaratan pembangunan, desain, dan lain-lain terus ditinjau kembali selama pemakaian.
Contoh Implementasi Agile Model

           Pengukuran utama dari keberhasilan sebuah perangkat lunak adalah apakah perangkat lunak yang dibangun sesuai dengan tujuan yang dimaksudkan pada perangkat lunak tersebut. Requirement engineering merupakan proses menemukan tujuan tersebut, dengan mengidentifikasi stakeholders dan kebutuhannya, dan mendokumentasikannya dalam bentuk yang dapat dianalisis, dikomunikasikan, dan diimplementasikan


Daftar Pustaka

1]         T. Informatika and U. S. Dharma, “ANALISA METODE CLASSIC LIFE CYCLE (                WATERFALL ) UNTUK PENGEMBANGAN PERANGKAT LUNAK                                    MULTIMEDIA Abstrak,” pp. 1–6, 2012.

[2]      E. Wijayanti, D. N. Sari, T. Informatika, F. Teknik, and U. M. Kudus, “MODEL V UNTUK PERANGKAT LUNAK MANAGEMENT PENDAFTARAN ANGGOTA DI PERPUSTAKAAN DAERAH KABUPATEN KUDUS,” vol. 9, pp. 31–36, 2018.

[3]      I. M. S. Raharja and A. Sn, “PERBANDINGAN PROSES PENGEMBANGAN PERANGKAT LUNAK,” vol. 2012, no. semnasIF, pp. 103–109, 2012.

[4]      A. Fatoni, D. Dwi, and I. Pendahuluan, “RANCANG BANGUN SISTEM EXTREME PROGRAMMING SEBAGAI METODOLOGI PENGEMBANGAN SISTEM,” vol. 3, no. 1, pp. 1–4, 2016.

[5]      N. Made and S. Iswari, “Tinjauan Proses Elisitasi Kebutuhan Perangkat Lunak Menggunakan Metode Agile,” vol. IV, no. 1, pp. 33–36, 2012.

[6]      R. Wahyudi, U. A. Purwokerto, A. Pendukung, P. Harga, P. Untuk, and U. Mikro, “IMPLEMENTASI EXTREME PROGRAMMING PADA SISTEM RESERVASI TIKET,” no. October, 2018.

[7]      E. R. Subhiyakto, D. W. Utomo, and M. Tujuan, “PERANGKAT LUNAK MENGGUNAKAN METODE PROTOTYPING,” no. 207, pp. 57–62, 2014.

Comments

Popular posts from this blog

algoritma kriptografi kunci public XTR