Apa Perbedaan Kebutuhan Fungsional dan Non Fungsional

Sebelum membahas Perbedaan Kebutuhan Fungsional dan Non Fungsional, terlebih dahulu sobat perlu mengetahui apa itu kebutuhan perangkat lunak dan apa itu analisis kebutuhan perangkat lunak. Kebutuhan Perangkat Lunak adalah kondisi, kriteria, batasan-batasan, syarat, atau kemampuan yang harus dimiliki oleh produk perangkat lunak yang akan dibangun untuk memenuhi apa yang diinginkan atau disyaratkan pemakai.

Dalam menentukan kebutuhan perangkat lunak pastinya kita akan melalui analisis kebutuhan perangkat lunak, Analisis Kebutuhan Perangkat Lunak adalah langkah (tahap) awal dari siklus hidup pengembangan perangkat lunak, tahap ini akan menghasilkan spesifikasi / kebutuhan / kondisi yang akan dimiliki oleh perangkat lunak yang akan dikembangkan dengan mempertimbangkan semua kebutuhan dari seluruh stakeholder.

Untuk mempermudah tahap Analisis Kebutuhan Perangkat Lunak dalam menentukan kebutuhan sebuah sistem, maka dibagilah kebutuhan sistem menjadi dua jenis kebutuhan, yaitu Kebutuhan Fungsional dan Kebutuhan NonFungsional.

Beda Kebutuhan Fungsional dan Non Fungsional
Kebutuhan Fungsional adalah kebutuhan yang berisi proses-proses apa saja / layanan apa saja yang nantinya harus disediakan oleh sistem, mencackup bagaimana sistem harus bereaksi pada input tertentu dan bagaimana perilaku sistem pada situasi tertentu.

Kebutuhan Fungsional Sangat bergantung dari jenis perangkat lunak, pengguna sistem, dan jenis sistem dimana perangkat lunak tersebut digunakan. Kebutuhan Fungsional dapat dicari dari pertanyaan: Apa yang harus sistem lakukan ?. karena kebutuhan fungsional harus dapat menggambarkan layanan-layanan yang bisa diberikan sistem kepada pengguna secara mendetail

Sedangkan Kebutuhan Non Fungsional adalah kebutuhan yang menitikberatkan pada properti prilaku yang dimiliki oleh sistem. kebutuhan fungsional juga sering disebut sebagai batasan layanan atau fungsi yang ditawarkan sistem seperti batasan waktu, batasan pengembangan proses, standarisasi dan lain lain.

Secara umum kebutuhan non fungsional suatu perangkat lunak terdiri dari empat macam, yaitu:

  1. Usability
    Usability adalah kebutuhan non fungsional terkait dengan kemudahan penggunaan sistem atau perangkat lunak oleh user.

  2. Portability
    Portability ialah kemudahan dalam pengaksesan sistem khususnya terkait dengan faktor waktu dan lokasi pengaksesan, serta perangkat atau teknologi yang digunakan untuk mengakses. Perangkat atau teknologi tersebut meliputi perangkat lunak, perangkat keras, dan perangkat jaringan.

  3. Reliability
    Reliability merupakan kebutuhan terkait kehandalan sistem atau perangkat lunak termasuk juga faktor keamanan (security) sistem.

  4. Supportability
    Supportability ialah kebutuhan terkait dengan dukungan dalam penggunaan sistem atau perangkat lunak.

Kebutuhan Fungsional adalah kebutuhan yang berisi proses-proses apa saja / layanan apa saja yang nantinya harus disediakan oleh sistem, mencackup bagaimana sistem harus bereaksi pada input tertentu dan bagaimana perilaku sistem pada situasi tertentu.

Sedangkan Kebutuhan Non Fungsional adalah kebutuhan yang menitikberatkan pada properti prilaku yang dimiliki oleh sistem. kebutuhan fungsional juga sering disebut sebagai batasan layanan atau fungsi yang ditawarkan sistem seperti batasan waktu, batasan pengembangan proses, standarisasi dan lain lain.

Definisi Analisis Kebutuhan adalah “Penguraian kebutuhan-kebutuhan yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan dan hambatan sehingga dapat diusulkan perbaikan.” “ Focus on what not how.”

Tahap analisa kebutuhan adalah tahap untuk mengidentifikasi apa saja yang perlu dilakukan oleh sistem serta apa yang dibutuhkan dan diinginkan oleh pengguna dari sistem. Berikut ini adalah analisa kebutuhan dalam website Nesialish Football.

Langkah- langkah Analisis Kebutuhan :

  1. Identifikasi Kegiatan yang bertujuan untuk memilah masalah mana yang akan dipecahkan dari kebutuhan yang didapat.
  2. Pemahaman Mempelajari prosedur manual yang akan digunakan sebagai dasar dalam pemodelan sistem.
  3. Pemodelan (core of analysis) Membentuk hasil pemahaman kebutuhan menjadi model-model (alat bantu) analisis kebutuhan perangkat lunak yang nantinya akan digunakan sebagai dasar perancangan perangkat lunak.
  4. Pelaporan Pembuatan laporan dengan format standar yang berisi hasil-hasil dari setiap langkah analisis kebutuhan.

Pendekatan Analisis Kebutuhan :

  1. Pendekatan Analisis Terstruktur/Process Oriented Pendekatan analisis yang berfokus pada rekayasa proses dan data.
  2. Pendekatan Analisis Berorientasi Objek Pendekatan analisis yang berfokus pada rekayasa objek (atribut dan method) beserta relasinya.

Analisis kebutuhan sistem meliputi analisis kebutuhan fungsional dan non-fungsional. Kebutuhan fungsional mendeskripsikan fungsi-fungsi yang harus dilakukan oleh sebuah sistem untuk mencapai tujuan. Sedangkan kebutuhan non-fungsional mendeskripsikan fitur lain seperti karakteristik, batasan sistem, performa, dokumentasi dan yang lainnya agar sistem berjalan sukses (Whitten, 2007) .

Analisis Kebutuhan Non Fungsional

Definisi Analisis Kebutuhan Non Fungsional adalah “Penguraian kebutuhan-kebutuhan Penguraian kebutuhan non fungsional (batasan sistem) menjadi kebutuhan yang lebih detail berdasarkan pada fakta dan kebutuhan yang ada.”

Analisa kebutuhan non-fungsional merupakan analisa yang dibutuhkan untuk menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen-elemen atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan dibangun sampai dengan sistem tersebut diimplementasikan. Analisa kebutuhan ini juga menentukan spesifikasi masukan yang diperlukan sistem, keluaran yang dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan sehingga menghasilkan suatu keluaran yang diinginkan.

Kebutuhan non-fungsional terbagi menjadi beberapa analisa yaitu analisa perangkat keras, perangkat lunak dan analisa user.

  1. Analisa Perangkat Keras

Analisis Kebutuhan Perangkat Keras adalah “Penguraian kebutuhan-kebutuhan non fungsional yang berhubungan dengan spesifikasi perangkat keras dan berhubungan dengan proses pembangunan perangkat lunak.”

  • Kebutuhan Non Fungsional: SKPL-NF-002 - Sistem dibangun dengan spesifikasi grafis yang tinggi
  • Fakta Perangkat Keras (Yang ada di lingkungan sistem):
  1. Komputer dengan VGA on board 128 MB.
  2. Monitor LCD dengan resolusi 1366x768
  • Kebutuhan Perangkat Keras:
  1. Komputer dengan VGA dedicated 1 GB
  2. Monitor LCD dengan resolusi 1366x768.
  • Kesimpulan (Hasil perbandingan fakta dengan kebutuhan): Dibutuhkan pengadaan perangkat keras berupa VGA dedicated 1 GB berdasarkan kebutuhan non fungsional dengan kode SKPL-NF-002.

  • Server

  1. Menggunakan minimal AMD Radeon 1,5 GHz atau sekelasnya.
  2. Menggunakan RAM minimal 2GB.
  3. Tersedia Hardisk untuk penyimpanan, minimal 100 MB untuk server, diluar basis data.
  4. Mouse, keyboard, dan monitor sebagai tampilan antar muka.
  • Client
  1. Menggunakan Intel Pentium 4 atau sekelasnya.
  2. Menggunakan RAM minimal 256 MB.
  3. Mouse, keyboard, dan monitor sebagai tampilan antar muka.
  1. Analisa Perangkat Lunak

Analisis Kebutuhan Perangkat Lunak adalah “Penguraian kebutuhan-kebutuhan non fungsional yang berhubungan dengan spesifikasi perangkat lunak dan berhubungan dengan proses pembangunan perangkat lunak.”

  • Kebutuhan Non Fungsional: SKPL-NF-001 - Sistem yang dibangun berbasis web dinamis
  • Fakta Perangkat Lunak (Yang ada di lingkungan sistem):
  1. Sistem operasi platform windows
  2. Belum ada web server
  3. Code Editor berupa notepad.
  • Kebutuhan Perangkat Lunak:
  1. Sistem operasi (platform bebas)
  2. Web Server WAMP versi 2 sebagai web server
  3. Code Editor berupa Adobe Dreamweaver CS6.
  • Kesimpulan (Hasil perbandingan fakta dengan kebutuhan): Dibutuhkan pengadaan perangkat lunak berupa WAMP versi 2 dan Adobe Dreamweaver CS6 berdasarkan kebutuhan non fungsional dengan kode SKPL-NF-001.

  • Analisa perangkat lunak yang dibutuhkan dalam membangun website ini adalah:

  1. MySql sebagai database.
  2. Sistem Operasi Windows 8.
  3. XAMPP versi 1.7.1 sebagai aplikasi pendukung untuk menjalankan sistem aplikasi website online.
  4. Adobe Dreamweaver CS5 sebagai editor pengerjaan kode.
  5. Adobe Photoshop CS3 sebagai editor untuk mendesain banner, logo dan sebagainya.
  6. Microsoft Visio 2007 dan Microsoft Word 2010
  1. Analisa User/Pengguna

Analisis Kebutuhan Pengguna adalah “Penguraian kebutuhan-kebutuhan non fungsional yang berhubungan dengan spesifikasi pengguna dan berhubungan dengan proses pembangunan perangkat lunak.”

  • Kebutuhan Non Fungsional: SKPL-NF-003 – Admin sistem minimal memiliki kemampuan untuk mengatasi permasalahan di sistem.
  • Kesimpulan (Hasil perbandingan fakta dengan kebutuhan): Diisi kebutuhan perangkat pikir apabila terdapat ketidakcocokan spesifikasi pengguna antara fakta dan kebutuhan.

Pengguna sistem ini adalah anggota dari Nesialish Football yang selaku sebagai administrator yang terlibat pada sistem yang sedang berjalan saat ini dibutuhkan untuk mengelola aplikasi pengolahan data website yang akan dibangun. Administrator bertugas mengelola berita yang akan di hapus maupun ditampilkan, mengelola iklan yang akan di pasang di dalam website, dan mengelola keaktifan anggota.

Analisis Kebutuhan Fungsional

Analisa terhadap kebutuhan fungsional dari sistem dimaksudkan untuk mengetahui alur informasi yang berlaku pada sistem berjalan tersebut sehingga didapatkan pemahaman akan kerja dari sistem.

  1. Administrator
  • Dapat memasukkan berita yang akan di tampilkan yang meliputi judul, kategori berita, kategori negara berita, isi berita, dan gambar berita
  • Dapat mengelola anggota.
  • Dapat mengelola iklan yang akan di tampilkan.
  1. Anggota
  • Dapat membaca berita yang telah ditampilkan oleh administrator.
  • Dapat melakukan login anggota.
  • Dapat memberikan komentar apabila anggota telah login.
  1. Sistem
  • Memvalidasi input data login administrator dan anggota.
  • Memvalidasi input data berita.
  • Menampilkan isi konten berita.

Definisi Analisis Terstruktur

  1. Mengasumsikan data dan proses yang mengubah data sebagai entitas yang terpisah.
  2. Objek data dimodelkan dengan cara mendefinisikan atribut dan relasi yang dimiliki.
  3. Proses-proses yang memanipulasi objek data dimodelkan dengan cara menggambarkan bagaimana proses-proses tersebut mengubah data sebagai aliran objek melalui sistem.

Langkah-langkah Analisis Sistem Yang Sedang Berjalan

  1. Analisis Masalah
    Definisi Analisis Masalah adalah “Mengumpulkandan memilah-milah masalahmasalah yang merupakan inti dari ide pembangunan perangkat lunak.”

  2. Analisis Prosedur Manual
    Definisi Analisis Prosedur Manual adalah “Menuliskan skenario tentang prosedur-prosedur yang berlaku. Manual belum tentu prosedur yang tidak menggunakan komputer sebagai alat bantu.”

    Contoh Analisis Prosedur Manual : Prosedur Penjualan Barang

  • Pembeli memilih barang yang ada di counter kemudian menyerahkannya ke kasir.
  • Kasir mencatat data penjualan di mesin kasir. Mesin kasir akan menampilkan informasi jumlah pembayaran kepada kasir.
  • Kasir memberitahukan jumlah pembayaran kepada pembeli untuk kemudian pembeli membayar sesuai dengan jumlah pembayaran.
  • Kasir mencatat data pembayaran di mesin kasir. Mesin kasir akan mencetak nota penjualan barang yang berisi informasi penjualan barang.
  1. Analisis Aliran Dokumen Manual
    Definisi Analisis Aliran Dokumen Manual adalah “Pencatatan dan pemodelan alur dokumen-dokumen manual yang digunakan pada suatu prosedur manual. Alat bantu yang bisa digunakan adalah flowmap”.

  2. Analisis Aturan Bisnis
    Definisi Analisis Business Rule adalah “Identifikasi dan pencatatan terhadap aturan-aturan baik tertulis ataupun lisan yang berlaku di lingkungan sistem dan memberikan pengaruh terhadap pembangunan sistem.”

    Contoh Analisis Business Rule : Aturan Bisnis Penjualan Barang

  • Diskon 10% akan diberikan apabila merupakan anggota/member.
  • Diskon khusus akan diberikan pada barang-barang yang berlabel sale.
  • Pembayaran bisa dilakukan secara tunai atau menggunakan kartu kredit.

Tools Analisis Sistem yang sedang berjalan : Flowmap dapat dijadikan Tools untuk melakukan analisis system yang sedang berjalan secara manual.
Flowmap: Rules Of Thumb

  1. Memodelkan aliran dokumen pada sistem yang sedang berjalan.
  2. Bentuk dokumen bisa manual atau berupa file komputer.
  3. Satu alur aliran dokumen terdiri dari input - proses - output.
  4. Apabila ada kondisi yang dikenakan alur pada poin 3 tetap diperhatikan.
  5. Tidak boleh ada dokumen yang hilang dalam runtunan prosesnya.
Referensi