Specialized Process Model, Agile Method, dan Scrum | Pengertian, Kelebihan, dan Kekurangannya

Specialized Process Model




Pengertian Specialized Process Model


Specialized process model adalah sebuah gambaran atau kerangka kerja  yang mempresentasikan proses dalam rekayasa perangkat lunak agar mudah dipahami dan proses dapat dilakukan sesuai dengan aturannya. Berbagai macam model telah diajukan dengan menyesuaikan dengan berbagai macam kondisi yang mungkin dalam pengembangan perangkat lunak.

Specialized Process Model ini dibagi lagi menjadi 4 tipe yaitu:
  • Component-Based Development:
Computer Based Development (CBD) adalah sebuah prosedur yang berfokus pada  pengembangan sistem berbasis komputer dengan bantuan komponen perangkat lunak yang reusable / bisa digunakan kembali. Dengan CBD ini, fokus dalam pembuatan program bergeser dari pemrograman perangkat lunak ke penyusunan sistem perangkat lunak. Dengan metoda ini, pengembangan software lebih efisien mulai dari cost dan waktu, serta kualitas yang dihasilkan lebih baik.
  • Formal Methods
Formal Methods adalah sebuah metode yang digunakan untuk memodelkan suatu sistem yang kompleks sebagai sebuah bentuk matematika. Dengan membangun model  secara matematis dari suatu sistem yang kompleks, developer bisa tidak hanya melakukan verifikasi pada sistem dengan cara yang lebih menyeluruh (daripada  melalui pengujian empiris) melainkan juga menggunakan matematika sebagai pelengkap dalam pengujian sistem untuk memastikan sistem berjalan dengan benar. Dengan metoda ini, pengembangan software bisa lebih teperinci.
  • Aspect-Oriented Software Development
Aspect-Oriented Software Development (AOSD) adalah merupakan sebuah metoda yang membantu mengatasi masalah modularitas yang terjadi pada metode pembuatan perangkat lunak lain, seperti model prosedural, terstruktur atau berorientasi objek. Metode ini memiliki banyak kelebihan diantara lain memungkinkan untuk pengembangan dan evolusi perangkat lunak pada tingkat yang lebih tinggi, dan juga dengan kontrol dan fleksibilitas yang lebih juga.
  • Unified Process
Unified Process merupakan sebuah framework yang dapat diperpanjang serta disesuaikan untuk organisasi atau proyek tertentu. ,merupakan metode proses pengembangan sistem yang bersifat use-case-driven. unified process ini bis dikatakan menyempurnakan proses dari RUP(Rational Unified Process), Unified Process berfokus pada arsitektur perangkat lunak. Kelebihan dari unified process ini adalah  dapat diaplikasikan pada berbagai skala proyek, mulai dari skala kecil sampai dengan skala besar.


Agile Method



Pengertian Agile Method

Agile Method atau Agile Development Method adalah sekelompok metodologi pengembangan perangkat lunak yang didasarkan pada prinsip-prinsip yang sama atau pengembangan sistem jangka pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam bentuk apapun.

Langkah-langkah pengembangan dalam agile development method adalah sebagai berikut:

1. Perencanaan, pada langkah ini pengembang dan klien membuat rencana tentang kebutuhan dari perangkat lunak yang akan dibuat.

2. Implementasi, bagian dari proses dimana programmer melakukan pengkodean perangkat lunak.

3. Tes perangkat lunak, disini perangkat lunak yang telah dibuat di tes oleh bagian kontrol kualitas agar bug yang ditemukan bisa segera diperbaiki dan kualitas perangkat lunak terjaga.

4. Dokumentasi, setelah dilakukan tes perangkat lunak dilakukan proses dokumentasi untuk mempermudah proses maintenance kepadanya.

5. Depeloyment, yaitu proses yang dilakukan oleh penjamin kualitas untuk menguji kualitas sistem. setelah sistem memenuhi syarat maka perangkat lunak siap di depeloyment.

6. Pemeliharaan, langkah terakhir yaiyu pemeliharaan. Tidak ada perangkat lunak yang 100% bebas dari bug, oleh karena itu sangat penting agar perangkat lunak dipelihara secara berkala.

Kelebihan Agile Method

1. Meningkatkan kepuasan kepada klien.

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

3. Pembangunan sistem dibuat lebih cepat.

4. Mengurangi resiko kegagalan implementasi software dari segi non-teknis.

5. Jika pada saat pembangunan sistem terjadi kegagalan kerugian dari segi materi relatif kecil.

Kekurangan Agile Method

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

2. Agile tidak akan berjalan dengan baik jika komitmen tim kurang.

3. Tidak cocok dalam skala tim yang besar (>20 orang).

4. Perkiraan waktu rilis dan harga perangkat lunak sulit ditentukan.


Scrum Method




Pengertian Scrum Method

Scrum adalah salah satu metode rekayasa perangkat lunak dengan menggunakan prinsip-prinsip pendekatan Agile yang bertumpu pada kekuatan kolaborasi tim, incremental product dan proses literasi untuk mewujudkan hasil akhir.

Adapun berikut langkah-langkah dalam scrum method yaitu;

1. Sprint planning meeting (product owner, customer, scrum master)

2. Scrum master dan anggota tim memecah product backlog menjadi task-task yang lebih kecil (sprint backlog), dan kemudian memilih task-task dari sprint backlog yang akan dikerjakan beserta estimasi waktunya untuk 1 sprint.

3. Tim mengerjakan sprint backlog yang sudah dipilih.

4. Scrum master memfasilitasi daily scrum.

5. Melakukan sprint review dan sprint resprostective setiap selesai 1 sprint.

Metode Scrum memiliki prinsip yaitu;

1. Ukuran tim yang kecil melancarkan komunikasi, mengurangi biaya, dan memberdayakan satu sama lain. Proses dapat beradaptasi terhadap perubahan teknis dan bisnis.

2. Proses menghasilkan beberapa software increment.

3. Pembangunan dan orang yang membangun dibagi dalam tim yang kecil.

4. Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun.

5. Proses scrum mampu menyatakan bahwa produk selesai kapanpun diperlukan.

Kelebihan Scrum Method

1. Keperluan berubah dengan cepat.

2. Tim berukuran kecil sehingga melancarkan komunikasi, mengurangi biaya dan memberdayakan satu sama lain.

3. Pekerjaan terbagi-bagi segingga dapat diselesaikan dengan cepat.

4. Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun.

5. Proses scrum mampu menyatakan bahwa produk selesai kapanpun duperlukan

Kekurangan Scrum Method

Developer harus selalu siap dengan perubahan akan selalu diterima.


No comments:

Post a Comment