People Innovation Excellence
 

BDD (Behavior Driven Development)

Dalam pengembangan suatu sistem ada methodology yang bernama TDD (Test Driven Development), yaitu adalah methodology pengembangan dimana kita mengutamakan komponen-komponen yang akan di test untuk membuat suatu sistem yang baik untuk Stakeholder/Customer. Tetapi ada juga methodology lain yang kebalikan dari TDD, ia berfokus kepada “Behavior” sebuah sistem, methodology tersebut adalah BDD (Behavior Driven Development). “Behavior” dalam konteks ini adalah hal-hal yang Stakeholder/Customer harapkan dapat dilakukan oleh suatu sistem. “Behavior” juga dapat dibilang sebagai kontrak, contoh: kita ditugaskan membuat mesin ATM. Maka sebagai Team yang mengimplentasi Behavior Driven Development  hal pertama yang kita lakukan adalah membuat suatu Statements yang berisikan Context (Starting State), Event (Apa yang User lakukan), Outcome (Apa yang diharapkan). Maka dalam pembuatan mesin ATM tersebut yang dibuat adalah :

Context :

  • Akun berisikan dana yang cukup.
  • Dan kartu valid.
  • Dan mesin ATM berisikan uang yang cukup.

Event :

  • Saat pemegang akun menarik uang sejumlah X.

Outcome :

  • Maka mesin akan dipastikan mengeluarkan uang sejumlah X.
  • Mesin akan dipastikan mengurangi akun sebanyak X.
  • Mesin akan mengembalikan kartu.

Ketiga hal tersebut adalah kontrak kerja kita, dan sebagai Team kita harus memastikan bahwa mesin ATM yang harus kita buat dapat memenuhi kondisi diatas.oleh karena itu Team akan melakukan Behavior Test yaitu adalah test dimana team harus memastikan bahwa sistem berkerja sesuai dengan yang diharapkan. Perlu dicatat dalam hal ini, error dalam suatu komponen dapat ditoleransi jika pada akhirnya sistem melakukan apa yang di tuliskan dalam kontrak / Behavior Test.

Proses yang dilakukan saat melakukan BDD adalah:

  • Membuat serangkain Behavior Test
  • Memastikan bahwa system melewati Behavior Test
  • Melihat jika sistem telah melewati Behavior Test tersebut maka produk sudah bisa di

Perlu dicatat bahwa saat kita melakukan pengembangan dengan BDD maka point utama dari sistem kita adalah Behavior Test, jika suatu sistem dapat melewati Behavior Test walau dengan fitur minimalis, maka produk sudah dapat di release.

Keuntungan dari menggunakan BDD adalah:

  • Lebih berinterkasi dengan Stakeholder/Customer
  • Jika suatu Function berubah, tidak perlu dilakukan test lagi selama fungsi tersebut tidak mengubah hasil akhir.
  • Behavior Test dapat dilakukan dengan Software apapun yang mirip, berbeda dengan Unit Test.

Kelemahan dari BDD adalah:

  • Membutuhkan waktu yang lama untuk mengetest sautu
  • Kesulitan dalam melacak akar permasalahan jika terjadi suatu

Published at : Updated
Leave Your Footprint

    Periksa Browser Anda

    Check Your Browser

    Situs ini tidak lagi mendukung penggunaan browser dengan teknologi tertinggal.

    Apabila Anda melihat pesan ini, berarti Anda masih menggunakan browser Internet Explorer seri 8 / 7 / 6 / ...

    Sebagai informasi, browser yang anda gunakan ini tidaklah aman dan tidak dapat menampilkan teknologi CSS terakhir yang dapat membuat sebuah situs tampil lebih baik. Bahkan Microsoft sebagai pembuatnya, telah merekomendasikan agar menggunakan browser yang lebih modern.

    Untuk tampilan yang lebih baik, gunakan salah satu browser berikut. Download dan Install, seluruhnya gratis untuk digunakan.

    We're Moving Forward.

    This Site Is No Longer Supporting Out-of Date Browser.

    If you are viewing this message, it means that you are currently using Internet Explorer 8 / 7 / 6 / below to access this site. FYI, it is unsafe and unable to render the latest CSS improvements. Even Microsoft, its creator, wants you to install more modern browser.

    Best viewed with one of these browser instead. It is totally free.

    1. Google Chrome
    2. Mozilla Firefox
    3. Opera
    4. Internet Explorer 9
    Close