480 likes | 1.02k Views
Analisis Kebutuhan Perangkat Lunak ( software requirement analysis). 7. 1. KEBUTUHAN ( Requirement) Sesuatu yang diminta , dibutuhkan Menurut IEEE (the institute of electrical and electronics engineers)
E N D
AnalisisKebutuhanPerangkatLunak(software requirement analysis) 7
1. KEBUTUHAN (Requirement) Sesuatu yang diminta , dibutuhkan Menurut IEEE (the institute of electrical and electronics engineers) • Kondisiataukemampuanygdiperlukanpemakaiuntukmenyelesaikanpersoalanuntukmencapaisebuahtujuan • Kondisiataukemampuan yang harusdimilikiataudipunyaiolehsistemataukomponensistemuntukmemenuhikontrak, standar, spesifikasi, ataudokumen formal lainnya.
kebutuhanperangkatlunak adalahkondisi, kriteria, syaratataukemampuan yang harusdimilikiolehperangkatlunakuntukmemenuhiapa yang disyaratkanataudiinginkanpemakai.
Secarakategoris, adatigabuahjeniskebutuhanperangkatlunak [IEE93] : 1. Kebutuhanfungsional (functional requirement) Disebutjugakebutuhanoperasional, yaitukebutuhan yang berkaitandenganfungsiatauprosestransformasi yang harusmampudikerjakanolehperangkatlunak.
Contoh… • Perangkatlunakharusdapatmenyimpansemuarincian data pesananpelanggan. • Perangkatlunakharusdapatmembuatlaporanpenjualansesuaidenganperiodewaktutertentu. • Perangkatlunakharusmampumenyajikaninformasijalurpengirimanbarangterpendek.
2. Kebutuhanantarmuka (interface requirement) Kebutuhanantarmuka yang menghubungkanperangkatlunakdenganelemenperangkatkeras, perangkatlunak, atau basis data.
Contoh… • Perangkatuntukmemasukkan data dapatberupa keyboard, mouse atau scanner. • Akseskebasisdatamenggunakan ODBC (Open Database Connectivity).
3. Kebutuhanunjukkerja (performance requirement) Kebutuhan yang menetapkankarakteristikunjukkerja yang harusdimilikiolehperangkatlunak, misalnya: kecepatan, ketepatan, frekuensi.
Contoh… • Perangkatlunakharusbisamengolah data sampai 1 juta record untuktiaptransaksi. • Perangkatlunakharusdapatdigunakanoleh multiuser sesuaidenganotoritas yang diberikanpada user. • Waktutanggappenyajianinformasimaksimalselamasatumenit.
sangatmempengaruhisuksesataugagalnyapelaksanaanpengembanganperangkatlunak. • Menuruthasil survey DeMarco, 56% kegagalanproyekpengembanganperangkatlunakdikarenakanketidaklengkapanpendefinisiankebutuhandariperangkatlunaktersebut.
2. ANALISA KEBUTUHAN AnalisisKebutuhan PL merupakanaktifitasawaldarisiklulhiduppengembangan PL Untukproyekbesaranalisiskebutuhandilaksanakansetelahaktifitassistem information engineering dansoftware projek planning
AnalisaKebutuhan.. • Prosesmempelajarikebutuhanpemakaiuntukmendapatkandefinisikebutuhansistematauperangkatlunak [IEE93]. • Prosesuntukmenetapkanfungsidanunjukkerjaperangkatlunak, menyatakanantarmukaperangkatlunakdenganelemen-elemensistem lain, danmenentukankendala yang harusdihadapiperangkatlunak [PRE01].
Tujuanpelaksanaananalisiskebutuhanadalah 1) Memahamimasalahsecaramenyeluruh (komprehensif) yang adapadaperangkatlunak yang akandikembangsepertiruanglingkupprodukperangkatlunak(product space) danpemakai yang akanmenggunakannya. 2) Mendefinisikanapa yang harusdikerjakanolehperangkatlunakuntukmemenuhikeinginanpelanggan.
TahapanAnalisisKebutuhan Secarateknispelaksanaanpekerjaananalisiskebutuhanperangkatlunakpadadasarnyaterdiridariurutanaktivitas:
1. Mempelajaridanmemahamipersoalan a) siapapemakai yang menggunakanperangkatlunak. b) dimanaperangkatlunakakandigunakan . c) pekerjaanapasajadaripemakai yang akandibantuolehperangkatlunak. d) apasajacakupandaripekerjaantersebut, danbagaimanamekanismepelaksanaannya. e) apa yang menjadikendaladilihatdarisisiteknologi yang digunakanataudarisisihukumdanstandar.
2. Mengidentifikasikebutuhanpemakai • fungsiapa yang diinginkanpadaperangkatlunak. • data atauinformasiapasaja yang akandiproses. • kelakuansistemapa yang diharapkan. • antarmukaapa yang tersedia (software interfaces, hardware interfaces, user interfaces, dan communication interfaces)
3. Mendefinisikankebutuhanperangkatlunak a) sayaingin data yang dimasukkanolehbagianpenjualanbisalangsungdijurnal. b) Informasineracakeuanganbisasayalihatkapansaja.
Sebagaicontoh, kebutuhan “data yang dimasukkanolehbagianpenjualanbisalangsungdijurnal” setelahdianalisis, diklasifikasikandanditerjemahkan,
pendefinisiankebutuhan: a) Kebutuhanfungsional - Entridanrekam data transaksipenjualan. - Retrieve data transaksipenjualanuntukperiodetertentu (periodesesuaidenganinputanperiode yang diinputkanpada keyboard). - Rekam data akumulasitransaksipenjualanperiodetertentukejurnalumumberikut account pasangannya (kas).
b) Kebutuhanantarmuka - Antarmukapemakaiuntukmemasukkandanmerekam data penjualan. - Antarmukapemakaiuntukmenyajikandanmenjurnalinformasitransaksipenjualanpadaperiodetertentu. - Antarmukauntukjaringanlokal yang menghubungkanperangkatlunakaplikasidibagianpenjualandenganperangkatlunakaplikasidibagianakutansi.
c) Kebutuhanunjukkerja - prosesjurnalhanyabisadilakukansekalisetelah data transaksipenjualandirekam. - Adanyaotoritaspemakaianperangkatlunakdanakses data sesuaidenganbagianpekerjaanmasing-masing.
Kebutuhandimodelkan / digambarkandenganteknikanalisisdanalat bantu tertentu • contohkebutuhanfungsionaldapatdimodelkandenganmenggunakan - Data flow diagram,kamusdata,danspesifikasiprosesjikamenggunakananlisistertsruktur - Use case diagram danskenariosistemjikamenggunkananalisisberorientasiobjek.
4. Membuatdokumenspesifikasikebutuhanperangkatlunak Semuakebutuhan yang telahdidefinisikanselanjutnyadibuatdokumentasinyayaituSpesifikasiKebutuhanPerangkatLunak (SKPL) atau Software Requirement Specification (SRS).
5. Mengkajiulang (review) kebutuhan • Prosesuntukmengkajiulang (validasi) kebutuhanapakah SKPL sudahkonsisten, lengkap, dansesuaidengan yang diinginkanolehpemakai.
Sedangkanmenurut Pressman [PRE01], analisiskebutuhanperangkatlunakdapatdibagimenjadi lima area pekerjaan, yaitu: a) Pengenalanmasalah b) Evaluasidansistesis c) Pemodelan d) Spesifikasi e) Tinjauulang (review)
MetodeAnalisis Metodeatauteknikuntukmelakukananalisiskebutuhanperangkatlunakdapatdikelompokkanberdasarkanpendekatan yang diambilpadasaatmelakukanaktivitastersebut
Salahsatumetode yang paling populeruntukpendekataniniadalahAnalisisTerstruktur (Structured Analysis) • BerorientasiAliran Data (Data Flow Oriented atau Functional Oriented) • BerorientasiStruktur Data (Data Structured Oriented) • BerorientasiObjek (Object Oriented)
BerorientasiAliran Data (Data Flow Oriented atau Functional Oriented) Padametodeini, hasilanalisisdanperancangandimodelkandenganmenggunakanbeberapaperangkatpemodelanseperti: - Data Flow Diagram (DFD) danKamus Data (data dictionary) untukmenggambarkanfungsi-fungsidarisistem (system functions). - Entity-Relationship Diagram (ERD) untukmenggambarkan data yang disimpan (data stored). - State Transition Diagram (STD) untukmenggambarkanperilakusistem. - Structure Chart untukmenggambarkanstruktur program.
BerorientasiObjek (Object Oriented) • Berbedadenganpendekatan-pendekatansebelumnya, pendekatanberorientasiobjekmemandangsistem yang akandikembangkansebagaisuatukumpulanobjek yang berkorespondensidenganobjek-objekdunianyata. • Padapendekatanini, informasidanproses yang dipunyaiolehsuatuObjek “dienkapsulasi” (dibungkus) dalamsatukesatuan. • Beberapametodepengembangansistem yang berorientasiobjekinidiantaranyaadalah: - Object Oriented Analysis (OOA) dan Object Oriented Design (OOD) dari Peter Coaddan Edward Yourdon (1990). - Object Modeling Technique (OMT) dari James Rumbaugh (1987). - Object Oriented Software Engineering (OOSE).
SpesifikasiKebutuhanPerangkatLunak / Software Requirements Specification (SRS) sebuahdokumen yang berisipernyataanlengkapdariapa yang dapatdilakukanolehperangkatlunak, tanpamenjelaskanbagaimanahaltersebutdikerjakanolehperangkatlunak.
TujuanPembuatan SRS • Pemakaipotensial (pelanggan) darisistem • Pengembangsistem
Tujuan…… • mendefinisikankeinginan yang biasanyadinyatakandalambentukpenjelasanumum. • Tujuankedua: - Saranakomunikasiantarapelanggan, pemakai, analis, danperancangperangkatlunak. - Dasaruntukmerencanakandanmelaksanakanaktivitaspengujiansistem. - Acuanuntukmelakukanperbaikandanperubahanperangkatlunak.
SyaratPembentukan SRS • Mudahdiidentifikasi • Diuraikandenganjelas, simple, sederhana, dan concise (jelas, tidak ambiguous) • Bisadivalidasidanbisadites (test reliable, test accessable) • Mampuuntukditelusurikembali (tracebility)
hal-halygharusdihindarisaatpembentukan : • Over specification (penjelasanberlebihdanberulang-ulangsehinggamenjaditidakjelas) • Tindakanunconcistency (sepertimenggunakanistilah yang tidakkonsisten) • Ambiguity dalamkataataukalimatsepertimenyatakanketerukuran • kebutuhansecaratidakjelasmisalkanmenggunakankata-kata :minimal, maksimal, optimal, cepat, user friendly, efisien, fleksibledanlainnya. • Menuliskan “mimpi-mimpi”, yaituhal-hal yang tidakbisadilakukan
AtributPenulisan SRS yang Baik • Dokumen SRS yang baik (sempurna) akanditulissecara: 1) Benar (correct) 2) Tepat (precise) 3) Unambiguouity 4) Lengkap (complete) 5) Bisadiverifikasi (verifiable) 6) Konsisten 7) Understandable 8) Bisadimodifikasi (modifiedable)
9) Dapatditelusuri (traceable) 10) Harusdapatdibedakanbagian what (bagianspesifikasi) dan how (bagian yang menjelaskanbagaimanamenyelesaikan what tadi). 11) Dapatmencakupdanmelingkupiseluruhsistem 12) Dapatmelingkupisemualingkunganoperasional, misalnyainteraksifisikdanoperasional. 13) Bisamenggambarkansistemseperti yang dilihatolehpemakai. 14) Harustoleran (bisamenerima) terhadapketidaklengkapan, ketidakpastian (ambiguous) danketidakkonsistenan. 15) Harusbisadilokalisasidengansebuah coupling, yaituhubunganketergantunganantaradua model yang tidakterlaluerat.
Ada 9 macamorang yang terlibatdalampembuatan SKPL: • Pemakai (user) • Client • System analyst (system engineer) • Software engineer • Programmer • Test integration group • Maintenance group • Technical Support • Staff dan Clerical Work
Keberhasilanpengembanganperangkatlunakbisadilihatdari 10 aspekatautitikpandang: 1) Ketelitiandaripembuatnya 2) Kualitasdarispesifikasiperangkatlunak yang dihasilkan (baik, jikaadasedikitkesalahan) 3) Integritas 4) Ketelitian 5) Prosespembuatan yang mantap 6) Mudahdikembangkan 7) Jumlahversitidakbanyak
8) Ketelitiandari model pengembangan yang digunakanuntukmeramalatributperangkatlunak 9) Efektivitasrencanatesdanintegrasi 10) Tingkat persiapanuntuksistemperawatan (mempersiapkanpencarian bugs)
Dokumen SRS format dokumen SRS bakumenurut ANSI/IEEE std 830 1984 adalah:
AnalisisTerstruktur Salahsatumetodeteknisuntukmelaksanakananalisiskebutuhantersebut
AnalisisTerstruktur (Structured Analysis) merupakansalahsatuteknikanalisis yang mengunakanpendekatanberorientasifungsi.
PerangkatPemodelanAnalisisTerstruktur adalahalat bantu pemodelan yang digunakanuntukmenggambarkanhasilpelaksanaanAnalisisTerstruktur. - Diagram Aliran Data atau Data Flow Diagram (DFD) - Kamus Data atau Data Dictionary - Structured English - TabelKeputusanatau Decision Table - PohonKeputusanatau Decision Tree