belajarlah dari kesalahan karena dari kesalahan kita bisa mencari kebenaran

tentang saya

Foto saya
sekayu, palembang/sumater selatan, Indonesia
nama saya jumaida sekarang saya menjalani profesi sebagai mahasiswa agama saya islam

Rabu, 10 Oktober 2018

TENTANG REKAYASA PERANGKAT LUNAK


PENJELASAN TENTANG ANALISIS SISTEM,KEBUTUHAN PERANGKAT LUNAK DAN ANALISIS KEBUTUHAN PERANGKAT LUNAK   

Analisis sistem

Analisis sistem adalah mendefinisikan kebutuhan-kebutuhan terkait dengan sistem yang akan dikembangkan.Hasil akhir dari tahap analisis adalah sebuah dokumen yang menjelaskan mengenai spesifikasi kebutuhan sistem informasi atau SRS (Software Requirement Specification).


Kebutuhan Perangkat Lunak

Jenis kebutuhan perangkat lunak dapat dibagi dalam 2 jenis,
1.     Kebutuhan Fungsional ( Functional Requirement)
2.     Kebutuhan Non Fungsional (Non Functional Requirement)

Functional  Requirement
Mendeskripsikan layanan, fitur atau fungsi yang disediakan atau diberikan oleh sistem bagi penggunanya. Kebutuhan fungsional awal merupakan fungsi atau layanan yang merepresentasikan goal dari pengguna ketika hendak menggunakan sistem.
Contoh pada Sistem Mesin ATM :
1.     Mengecek saldo
2.     Menarik uang
3.     Mentransfer uang
4.     Melakukan pembayaran

Non-Functional  Requirement
Mendeskripsikan sekumpulan batasan, karakteristik dan properti pada sistem, baik dalam lingkungan pengembangan maupun operasional, atau atribut kualitas yang harus dipenuhi oleh sistem. Contoh pada mesin ATM :
1.     Pengguna baru membutuhkan waktu belajar maksimal 10 menit untuk dapat menggunakan fungsi-fungsi utama sistem
2.     Sistem harus tetap berfungsi minimal 10 jam setelah pasokan listrik dari PLN terhenti
3.     Waktu yang dibutuhkan untuk kembali beroperasi setelah sistem mati minimal 2 menit
IEEE 803:1993 mengelompokkan kebutuhan non-fungsional ke dalam sejumlah kategori  kualitas  dari  suatu  perangka t lunak.
Kategori tsb secara umum dibagi dalam 2 kelompok, yaitu :
  • Faktor kualitas eksternal perangkat lunak. Kategori kualitas yang bisa diobservasi atau menjadi ketertarikan utama dari pelanggan. Diantaranya :
1.     Ketepatan (correctness)
2.     Robustness
3.     Unjuk Kerja (performance)
4.     Ketersediaan dan kualitas antarmuka(interface)
5.     Keandalan(Reability)
6.     Ketersediaan (Availability)
7.     Faktor kualitas internal perangkat lunak.

Kategori kualitas yang bisa diobservasi atau menjadi ketertarikan utama dari pengembang. Diantaranya :
1.     Kemudahan membaca/memahami struktur perangkat lunak(readibility)
2.     Kemampuan untuk dilakukan pengujian (testability)
3.     Ketersediaan dan kualitas dokumentasi (documentation)
4.     Kemudahan pemeliharaan(maintainability)
5.     Adaptasi terhadap lingkungan berbeda (portability)

Proses-proses  dalam  Rekayasa  Kebutuhan Daur hidup perangkat lunak (software life cycle – SLC) terdiri dari dua siklus kehidupan utama, yaitu :
1.     Daur hidup pengembangan perangkat lunak (Software Development Life Cycle – SDLC)
2.     Daur hidup pengoperasian perangkat lunak (Software Operational Life Cycle – SOLC).
Kedua siklus perangkat lunak tersebut dihubungkan oleh dua proses, yaitu proses studi kelayakan (feasibility study) dan proses peluncuran (deployment). Secara umum dapat kita ilustrasikan seperti berikut :

Penelitian Hofmann dan Lehner (2001) merekomendasikan langkah-langkah yang dilakukan untuk meningkatkan keberhasilan tahapan spesifikasi kebutuhan, diantaranya :
1.     Lakukan aktivitas dalam spesifikasi kebutuhan sepanjang durasi proyek
2.     Gunakan anggota lepas waktu untuk mendukung anggota penuh waktu (sumber daya yang memiliki kompetensi khusus).
3.     Terapkan kombinasi proses prototype dan berbasis model untuk membantu pemangku kepentingan (terutama pelanggan dan penggguna), untuk mendapatkan gambaran dari solusi yang diajukan.
4.     Sesering mungkin lakukan umpan balik dari pemangku kepentingan, mengevaluasi artifak dan material asal dari sistem lama atau yang sedang berjalan, serta sesering mungkin menggunakan panduan dari ahli
5.     Gunakan metoda pemodelan terkini (misalnya object Oriented atau Aspect Oriented) yang dikombinasikan dengan model-model dasar (seperti ERD, diagram transisi status, dan Petri-Net)
6.     Lakukan perbaikan evolusioner terhadap spesifikasi dengan menggunakan mock-ups, prototipe, peer reviews, walkyhtough, dan skenario, serta ibatkan pengguna (end user), pelanggan dan ahli teknis maupun ranah permasalahan. Rata-rata iterasi dari proses spesifikasi kebutuhan yang efektif adalah 3 iterasi.

Contoh tujuan bisnis dari proyek pembuatan Automatic Teller Machine (ATM) yang menjadi abstraksi solusinya :
1.     Peningkatan kepuasan pelanggan dalam hal melakukan transaksi perbankan 24 jam
2.     Pengurangan kasir
3.     Perluasan jaringan perbankan dengan cara yang ekonomis

ANALISIS KEBUTUHAN PERANGKAT LUNAK

Analisis kebutuhan (requirements analysis) merupakan langkah awal untuk menentukan gambaran perangkat yang akan dihasilkan ketika pengembang melaksanakan sebuah proyek pembuatan perangkat lunak. Perangkat lunak yang baik dan sesuai dengan kebutuhan pengguna sangat tergantung pada keberhasilan dalam melakukan analisis kebutuhan. Untuk proyek- proyek perangkat lunak yang besar, analisis kebutuhan dilaksanakan setelah aktivitas sistem information engineering dan software project planning.
·Analisis kebutuhan perangkat lunak dapat diartikan sebagai:üProses mempelajari kebutuhan pemakai untuk mendapatkan definisi kebutuhan sistem  atau perangkat lunak [IEE93]. üProses untuk menetapkan fungsi dan unjuk kerja perangkat lunak, menyatakan antarmuka perangkat lunak dengan elemen-elemen sistem lain, dan menentukan  kendala yang harus dihadapi oleh perangkat lunak [PRE01]. Analisa kebutuhan yang baik belum tentu menghasilkan perangkat lunak yang baik,  tetapi analisa kebutuhan yang tidak tepat menghasilkan perangkat yang tidak berguna. Mengetahui adanya kesalahan pada  analisis kebutuhan pada tahap awal memang jauh lebih baik, tapi kesalahan analisis kebutuhan yang diketahui ketika sudah memasuki penulisan kode atau pengujian, bahkan hampir masuk dalam tahap penyelesaian merupakan malapetaka besar bagi pembuat perangkat lunak. Biaya dan waktu yang diperlukan akan menjadi sia sia. Analisa kebutuhan adalah suatu proses untuk mendapatkan informasi, mode, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. Kedua belah pihak, yaitu klien dan pembuat perangkat lunak terlibat aktif dalam tahap ini. Informasi dari klien yang akan menjadi acuan untuk melakukan desain perangkat lunak.Analisis kebutuhan merupakan satu di antara banyak aktivitas kritis pada proses rekayasa kebutuhan perangkat lunak untuk memahami ranah permasalahan dari sistem yang
berjalan dan ranah solusi dari sistem yang akan dibuat (Yenet.al, 1998).Ada tiga faktor yang harus dipenuhi ketika melakukan analisis kebutuhan ini, yaitu lengkap, detail, dan benar.Lengkap artinya semua yang diharapkan oleh klien telah didapatkan oleh pihak yang melakukan analisis. Detail maksudnya adalah berhasil mengumpulkan informasi yang terperinci. Semua data dari analisis kebutuhan ini haruslah benar, sesuai apa yang dimaksud oleh klien, bukan benar menurut apa yang dipikirkan oleh pihak analisis.Analisis kebutuhan yang dilakukan terhadap perangkat lunak akan menghasilkan
spesifikasi perangkat lunak tersebut. Analisa kebutuhan ini terdiri dari lima langkah pokok:
1)Identifikasi Masalah
2)Evaluasi dan sintesis
3)Pemodelan
4)Spesifikasi
5)Review
·Tujuan Analisis Kebutuhan
·        :Memahami masalah yang akan dibuat perangkat lunaknya secara menyeluruh (komprehensif).
·        Mendefinisikan apa yang harus dikerjakan oleh perangkat lunak untuk memenuhi
           keinginan pemakai.
Ada tiga tujuan utama dari proses analasis kebutuhan yang dapat diformulasikan sebagai
beriukut :
1.     Mengelola hasil elistasi kebutuhan untuk menghasilkan dokumen spesifikasi
kebutuhan yang isi keseluruhannya sesuai dengan apa yang diinginkan pengguna. (Liu and Yen, 1996)
2.     Mengembangkan persyaratan kualitas yang memadai dan rinci, dimana para manajer dapat membuat pekerjaan proyek yang realistis dan staf teknis dapat melanjutkan dengan perancangan, implementasi dan pengujian (Wiegers, 2003).
3.     Membangun pemahaman tentang karakteristik ranah permasalahan dan sekumpulan kebutuhan untuk menemukan solusi.Ketiga tujuan tersebut dapat dicapai oleh perekayasa kebutuhan dengan melalui serangkaian tahapan-tahapan aktivitas. Tahapan aktivitas tersebut dijelaskan sebagai berikut.
·Tahap Analisis Kebutuhan
Tahap analisis adalah tahapan pengumpulan kebutuhan-kebutuhan dari semua elemen
sistem perangkat lunak yang akan di bangun. Tahap kebutuhan perangkat lunak dimulai dengan [DAV93]:
1)    Adanya masalah yang membutuhkan penyelesaian:
·Orientasi aplikasi, misalnya inventory
·Orientasi bisnis, misalnya produk baru, peramalan pendapatan
·Orientasi peningkatan produk, misalnya pemeliharaan
2)    Munculnya ide untuk membuat sebuah perangkat lunak baru.Tahap kebutuhan berakhir apabila deskripsi lengkap dari perilaku eksternal perangkat lunak yang akan dibangun sudah didapat, termasuk dokumentasi seluruh antarmuka perangkat lunak dengan lingkungannya (perangkat keras, perangkat lunak lain, pemakai) yang dicatat dalam Spesifikasi Kebutuhan Perangkat Lunak.Secara teknis pelaksanaan pekerjaan analisis kebutuhan perangkat lunak pada dasarnya terdiri dari urutan aktivitas:
1)    Mempelajari dan memahami persoalan
2)    Mengidentifikasi kebutuhan pemakai
3)    Mendefinisikan kebutuhan perangkat lunak
4)    Membuat dokumen spesifikasi kebutuhan
5)    Mengkaji ulang (review) kebutuhan
1)                         Mempelajari dan Memahami Masalah
Pada tahap ini, masalah yang akan dibuat perangkat lunaknya dipelajari sehingga dapat ditentukan:
·Siapa pemakai yang akan menggunakan perangkat lunak
·Dimana perangkat lunak akan digunakan
·Pekerjaan apa dari pemakai yang akan dibantu oleh perangkat lunak
·Dari dan sampai mana cakupan pekerjaan tersebut, dan bagaimana mekanisme
pelaksanaannya
·Apa yang menjadi kendala atau keterbatasannya dilihat dari sisi teknologi yang akan
digunakan atau dari sisi hukum dan standar Cara yang digunakan untuk dapat memahami masalah biasanya adalah:
·Wawancara dengan pemakai
·Observasi atau pengamatan lapangan
·Kuesioner
·Mempelajari referensi atau dokumen-dokumen yang digunakan, seperti dokumen hasil analisis dan perancangan sistemHasil pemahaman masalah tersebut selanjutnya digambarkan dalam bentuk model-model tertentu sesuai dengan jenis masalahnya. Sebagai contoh, untuk masalah bisnis dapat menggunakan flowmap atau business use case, sementara untuk masalah matematika dapat mengunakan, misalnya, graf.
2)                Mengidentifikasi Kebutuhan Pemakai Sebenarnya, tahap identifikasi kebutuhan pemakai (user requirement) ini pada prakteknya dilaksanakan bersamaan dengan pemahaman masalah. Cara yang digunakan pun relatif sama. Hanya saja, subtansi yang ditanyakan biasanya adalah:
·Data atau informasi apa yang akan diproses
·Fungsi apa yang diinginkan
·Kelakuan sistem apa yang diharapkan
·Antarmuka apa yang tersedia (user interfaces, hardware interfaces, software interfaces
, dan communications interfaces)
Untuk dapat menangkap kebutuhan pemakai dengan baik, utamanya kesamaan persepsi, dibutuhkan:
·komunikasi dan brainstorming yang intensif
·prototypeperangkat lunak, atau screen snapshot
·data atau dokumen yang lengkap
4.     Mendefinisikan Kebutuhan Perangkat Lunak
Saat mengidentifikasi kebutuhan pemakai, informasi yang diperoleh belum
terstruktur. Pemakai akan mengungkapkan apa yang dibutuhkannya dengan bahasa sehari-hari yang biasa digunakan pemakai. Sebagai contoh, ungkapan kebutuhan pemakai di Bagian Akuntansi, misalnya:
·Saya ingin data yang dimasukkan oleh Bagian Penjualan bisa langsung dijurnal.
·Informasi neraca bisa saya lihat kapan saja.Pada tahap ini, kebutuhan pemakai
yang belum terstruktur tersebut dianalisis, diklasifikasikan, dan diterjemahkan menjadi kebutuhan fungsional, antarmuka, dan unjuk kerja perangkat lunak. Sebagai gambaran, kebutuhan “data yang dimasukkan oleh Bagian Penjualan dapat langsung dijurnal” setel
ah dianalisis, diklasifikasikan, dan diterjemahkan, mungkin memberikan hasil:
1)Kebutuhan fungsional:
·entry dan rekam data transaksi penjualan.retrieve nilai transaksi penjualan untuk periode tertentu (sesuai periode yang  diinputkan melalui keyboard).
·rekamnilai akumulasi transaksi penjualan periode tertentu ke jurnal umum
berikut account pasangannya (kas).
3)                Kebutuhan antarmuka:
·antarmuka pemakai untuk merekam data penjualan.
·antarmuka pemakai untuk menyajikan dan menjurnal informasi nilai transaksi penjualan periode tertentu.
·jaringan lokal untuk menghubungkan perangkat lunak aplikasi di Bagian Penjualan dengan perangkat lunak aplikasi di Bagian Akuntansi.
3)Kebutuhan unjuk kerja:
·ada otoritas pemakaian perangkat lunak dan akses data.
·proses jurnal hanya dapat dilakukan sekali setelah data transaksi penjualan direkam. Selanjutnya, kebutuhan tersebut diubah menjadi model atau gambar tertentu dengan  memanfaatkan teknik analisis dan alat bantu tertentu. Sebagai gambaran, kebutuhan
fungsional dapat dimodelkan dengan menggunakan:
·Data Flow Diagram, kamus data, dan spesifikasi proses jika menggunakan teknik  terstruktur.
·Diagram Use Case dan skenario sistem jika menggunakan pendekatan objek.
5.     Membuat Dokumen Spesifikasi Kebutuhan
Semua kebutuhan yang telah didefinisikan selanjutnya dibuatkan dokumentasinya, yaitu Spesifikasi Kebutuhan Perangkat Lunak (SKPL) atau
Software Requirements
Specification (SRS). SKPL yang dibuat harus dapat menyatakan secara
lengkap apa yang  dapat dilakuka n oleh perangkat lunak, termasuk deskripsi lengkap dari semua antarmuka  yang digunakan. SKPL bisa terdiri dari banyak dokumentasi yang saling melengkapi.
5.Mengkaji Ulang (Review) KebutuhanProses untuk memeriksa (validasi) SKPL apakah sudah konsisten, lengkap, dan sesuai dengan apa yang diinginkan pemakai. Proses ini mungkin dilakukan lebih dari satu kali. Dan sering kali muncul kebutuhan
-kebutuhan baru dari pemakai. Untuk itu, diperlukan negosiasi antara pihak pengembang dengan pemakai sesuai prinsip “win-win solution” sampai kebutuhan tersebut dapat disepakati kedua bel ah pihak

Tidak ada komentar:

Posting Komentar