1 / 44

TESTING & IMPLEMENTASI SISTEM

TESTING & IMPLEMENTASI SISTEM. “ Pengembangan & Perancangan Perangkat Lunak ” Diema HS, S. Kom. Pengembangan Perangkat Lunak. Secara umum , diketahui bahwa dalam suatu siklus pengembangan perangkat lunak selalu terdapat empat proses utama , yaitu :. Plan. Act. Do. Check.

Télécharger la présentation

TESTING & IMPLEMENTASI SISTEM

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TESTING & IMPLEMENTASI SISTEM “ Pengembangan & PerancanganPerangkatLunak” Diema HS, S. Kom

  2. PengembanganPerangkatLunak

  3. Secaraumum, diketahuibahwadalamsuatusikluspengembanganperangkatlunakselaluterdapatempatprosesutama, yaitu : Plan Act Do Check

  4. Pelaksanaankegiatanpadatahapanalisis, desaindanimplementasi di dalamsikluspembuatanperangkattidakmenjaminbahwasuatuperangkatlunakakanbebasdarikesalahan (fault free), untukmengurangiataubahkanmenghilangkankesalahanpadaperangkatlunakdiperlukansuatutahappengujian. Kesalahan yang terjadijugatidakhanyakesalahan yang dapatmenyebabkanfungsiperangkatlunaktidakdapatberjalan (error), tetapidapatjugaberartipenggunaanperangkatlunaksukaruntukdimengerti user danproses pelacakan kesalahan sukar untuk dilakukan.

  5. Pengembanganperangkatlunak (Software development) merupakansalahsatudaritahaprancangan system rinci/detail dariSiklusHidupPengembanganSistem (Software Development Life CycleatauSDLC). • Tim proyek system mungkinmulaimencaripaketperangkatlunakkomersial yang sesuaiataumendukungspesifikasirancangan system danberjalanpadarancanganarsitekturkomputernya. Paketperangkatlunakkomersialsecaraluastersediauntukaplikasifungsispesifikdanaplikasibisnis yang telahditetapkansecarabaku. • Tetapiuntukrancangansistem yang terkaitdengankebutuhankhususatauunik (memenuhikeperluanpemakaidanspesifikasirancangansistem) makapaketperangkatlunakkomersialmungkintidaksesuaiataumendukungkebutuhanpemakaisecaralangsung. Perangkatlunak yang diharapkanuntukmendukungrancangansistemtersebutharusdibuatsendiridariawal (scratch)

  6. KETERKAITAN PENGEMBANGAN DENGAN PENGUJIAN

  7. TipePengembanganSistem (ProyekPerangkatLunak) • Tipeproyekpengembanganperangkatlunakharusdisesuaikandenganlingkunganataumetodologi/paradigma yang digunakandalampengembanganperangkatlunak. • TipePengembanganSistem : A. Pengembangansistembiasa Karakteristik : Menggunakanmetodologipengembangan system User mengetahui requirement Pengembanganmenentukanstruktur SiasatPengujian : Pengujiandilakukanpadaakhirtiap-tiaptahap Melakukanverifikasitiap-tiapspesifikasi yang diperlukan Mengujistrukturdanfungsi

  8. B. PengembanganIteratif (Prototyping/CASE) Karakteristik : Requirement tidakdiketahui Struktur didefinisikan di awal pengembangan SiasatPengujian : Verifikasialat Bantu CASE yang digunakan Verifikasikebutuhantiap prototype Mengujifungsionalitas C. PemeliharaanSistem Karakteristik : Memodifikasistruktur SiasatPengujian : Mengujistruktur Mengeluarkanmetodekerja yang terbaik Memerlukanpengujianregresi

  9. D. Kontrak/Pembelian Software • Karakteristik : Strukturtidakdiketahui • Banyakterjadi defect • Fungsionalitastercantumdalamdokumen • Terdapatberbagai document • SiasatPengujian : Verifikasifungsi yang diperlukan • Pengujianfungsionalitas • Pengujiandi dalamlingkungankerja

  10. MenentukanLingkupProyek • Menentukanlingkupsuatuproyekditentukanberdasarkankeseluruhanaktivitas yang tersangkutdalampembangunan system perangkatlunak. • Lingkupproyekmenggambarkankarakteristik yang diperlukansecaralebihrinci, denganmenekankanpadadaftar requirements yang telahditentukanterlebihdahulu.

  11. Perbedaanlingkupproyek : A. PengembanganSistembaru a) Apakahakanmengotomatisasiprosesbisnis yang manual b) Prosesbisnis yang mana yang akandipengaruhioleh system baru c) Area bisnis yang mana yang akandipengaruhioleh system baru d) Program Perantaradengan system lama e) Sistem yang lama akanterpengaruhatautidak B. Perubahan system yang telahada a) Apakah hanya melakukan koreksi b) Apakahhanyamelakukanprosesrekayasa PL secarastandar c) Pengoreksianuntukmengetahui defect dalamrangkaperluasan system d) Apakahterdapat system yang terpengaruh e) Adakahresikoataukemunduran system

  12. SumberPerangkatLunakAplikasi • PerangkatLunakKomersialdari Vendor • PerangkatLunakPesanan (customized software) dikembangkansecara in-house atauolehkontraktorpemrograman independent

  13. A. PerangkatLunakKomersialdari Vendor • Paket (off-the-self) yang tersediabisaditerapkandalamberbagaikebutuhanbisnis. Beberapapaketbersifatgenerikdanmultifungsional yang memungkinkanparapemakaimemprogramsofwaretersebutuntukkebutuhannyasendiri. Paket-pakettersebutmengotomisasifungsi-fungsibisnisdasar yang umumnyatidakterlalubervariasidarisatuorganisasidenganorganisasi lain. Contohjenispaketadalah spreadsheet dan DBMS.

  14. Keuntungan/kelebihandariPerangkatLunakKomersial : • Implementasi yang cepat Software tersebutbersifatsiap, teruji, danterdokumentasi. Paket yang dibelibiasanyapengimplementasiannyajauhlebihcepatdaripadamengembangkan program yang samasecara in-house ataumenyuruhkontraktorindependenuntukmengembangkannyasehinggasecarapotensialmembantumemecahkanbacklog (penimbunanpekerjaan yang belumselesai). • PenghematanBiaya Satupaketperangkatlunakkomersialbisadijualkepadabanyakorganisasisehinggabiayapengembanganditanggungolehbanyakpemakai, danbiaya total suatupaketakanlebihmurahdaripada program pesanan yang sama • Estimasibiayadanwaktu Biayaatauhargapaketkomersialtelahdiketahui, dantanggalpengimplementasian-nyamudahdiestimasi. Sebaliknya program pesananbiasanyacenderungmelampauiestimasiwaktudanbiaya. • Reliabilitas Sebelumditerbitkandipasaranumum, paketperangkatlunakkomersialpastitelahdiujisecarateliti. Melaluipenggunaan yang ekstensifolehsejumlahorganisasi, segalakesalahan yang dijumpaitelahdideteksidandikoreksisehinggapeluangkesalahannyalebihsedikit.

  15. Kerugian/kelemahan : • KesesuaianRancangansistem yang tidakbaik Paket software komersialdibuatuntukberbagaiorganisasi, dantidakuntukorganisasitertentumakapaketinimungkinmempunyaibeberapafungsi yang tidakdiperlukanataumungkintidakmempunyaifungsi yang diperlukansehinggapakettersebutharusdimodifikasi. Jika vendor tidakmembuatkodesumber (source code) yang bisadigunakanuntukpenyesuaiandantidakmenyediakanlayananpenyesuaianmakarancangansistemmungkinharusdiubah agar sesuaidenganpakettersebut. Jikahaliniterjadisebaiknyamengembangkan program secara in-house agar programnyabisamemenuhispesifikasirancangansistem yang tepat. • Ketergantungan Vendor Jikaorganisasimemerlukanperubahanpaketnyamakaorganisasiakantergantungpada vendor dalamperolehandukungannya, danjika vendor telahtiadamakaorganisasiakankesulitanmencaridukungannya.

  16. Biayatidaklangsungdarikerusakan SDLC Seringkaliapa yang ingindicapai, manajementidakmelaksanakan SDLC menyeluruhataumungkinmelewatitahap SDLC, dansecaralangsungmenujukepaketperangkatlunakkomersialStrategiiniseringkalimengakibatkanpaketperangkatlunakkomersialtidakberjalansesuai yang diharapkandanmasalahsistemsertaorganisasional yang terjadisebelumimplementasipakettersebuttetapmunculsehinggamenimbulkankesulitanatauharusdibayarkemudianyaituadanyapeningkatanbiayaimplementasi, operasi, danpemeliharaan.

  17. Penilaian KinerjaPengoperasian, Dokumentasi, Kemudahanpembelajaran, Kemudahanpenggunaan (pengendaliandanpenanganankesalahan, dukungan)

  18. B. PerangkatLunakPesanan (customized software) • Jika system yang sedangdikembangkantidakbisadidukungolehpaket software makaharusmemesandariperusahaanjasa/kontraktorindependenataumembangunsendiriperangkatlunak (in-house) agar sesuaidenganrancangansistemnya. • Mengikuti SWDLS (Software Development Life Cycle) • Rancangan (Design) • Kode (Code) • Uji (Test)

  19. SiklusHidupPengembanganPerangkatLunak (Software Development Life Cycle) • System Development Life Cycle

  20. Membangunperangkatlunakmengikutitigatahap SWDLC • Rancangan (design) : Bagiandarirancangansistemterinci yang akandikonversike program aplikasi yang dapatdigunakansebagaipedomanoleh programmer dalammenulis program. Alat (tools) rancangan program yang pokokadalah : • Baganterstruktur • BahasaInggristerstruktur • TabelKeputusan • PohonKeputusan • Persamaan/miripbahasapemrograman (Pseudocode) • Kamus data

  21. Kode (Code): • Menulisstatemendalambahasapemrograman, misal3GL, 4GL, Pemrograman Object • Uji(Test) • Pengujianterhadapsemuamodulkodeuntukmendeteksikesalahan,misalWhite Box, Black Box

  22. Macam-MacamPerangkatLunak • PerangkatLunakBerdasarkanPemakai • Generik: Perangkatlunak yang bisadigunakansecaraumum • Spesifik: Perangkatlunak yang dibuatberdasarkanpesanan • PerangkatLunakBerdasarkanFungsional • Interfacing • Operating System • PerangkatLunakAplikasi • CASE Tools – – – – – –

  23. MengorganisasiProyekPengembanganperangkatlunak • Perancangdananalissistemterlibatdalamtimpengembanganperangkatlunakdanharusmengetahuibagaimana program inidikodedanbagaimanahasilakhirnya. Untukitudiperlukanketerampilanpengorganisasiandalamtimproyek. Pengorganisasianproyekpengembanganperangkatlunakmemerlukankomunikasi, integrasidankoordinasi yang baik. Pengorganisasiantimpemrogramanmenggunakanpendekatanorganisasional.

  24. PendekatanOrganisasional • Tigacarauntukmengorganisasitimpemrograman, yaitu : • Tim Pengembangan Program ( Program development team) • Tim programmer kepala (chief programmer team) • Tim pemrogramanbersama (Egoless programming team)

  25. Tim Pengembangan Program • tersusunatas 2 perancang, 1 pengkode, 2 penguji. Interface danlintasankomunikasiberadaantaraperancangdanpengkode, pengkodedanpenguji, perancangdanpenguji. Interface danlintasankomunikasikemanajertimhanyamemberikanrekapitulasidaninformasikinerjakarenamanajertidakterlibatlangsungdalampekerjaan yang sebenarnya. Jadi total interface danlintasankomunikasiada lima, dansatu interface manajemen.

  26. Tim programmer kepala • terdiridari lima programmer pendukungmempunyai lima interface danlintasankomunikasi, danlebihmungkinmemenuhi deadline yang ketat.

  27. Tim pemrogramanbersama • terdiridari lima programmer. Jumlah interface danlintasankomunikasi = n(n-1)/2= 5(5-1)/2=10

  28. MerencanakanproyekSiklusHiduppengembanganperangkatlunak • Perangkat yang digunakanadalahtekniktinjauan dan evaluasi program (PERT) • PERT : untuk menentukan rangkaian atau urutanpelaksanaantugaspengembanganperangkat lunak dan untuk mengestimasikan lamanyawaktu yang diperlukandariawal sampaiselesainyapelaksanaantugas

  29. Langkahmenyusunjaringan PERT • Identifikasisemuatugas • Mengestimasiwaktu • Menetapkanrangkaiantugas • Menentukanjalurkritis

  30. FungsidalamPengembanganPerangkatLunak • Software Development Management (terdiridaribanyakfungsidantim), yaitu • Software Project Manager: pertamaberhubungandengankonsumen, menetapkananggarandanjadwalpelaksanaanproyekperangkatlunak. • Software Engingeering Analyst berhubungandengankonsumensecaralebihrinci; bertugasmendeskripsikanataumenggalifungsidanunjukkerjasoftware yang akandibangun. Designer : bertugasmerancangalgoritma/prosedur yang tepatuntukfungsitersebutdisesuaikandenganhardware atausoftware pendukung yang ada. Programmer : mengimplementasikanalgoritmadalambentukkode-kode program menggunakanbahasapemograman.

  31. Software Configuration Management : memantaufungsi-fungsi/prosedurproseduryang telahditentukan, mencatatkonfigurasipadatahap-tahap/ waktuwaktutertentuberdasarkankenyataan yang ada. System Administrator : bertugasmelakukanpengelolaanterhadapsistempadasaatdiimplementasikan. • Software Quality Software Test Engineer : bertugasmelakukanpengujiansistem. Software Quality Assurance: bertugasmelakukanpengawasanapakahsoftware yang dibanguntelahberjalansesuaidenganfungsidankebutuhannya

  32. DokumenRencanaPengembanganPerangkatLunak (RPPL) • Padaumumnyasebelummelakukanpengembanganataupembangunansuatuperangkatlunak, terlebihdahuludibuat proposal proyekpengembanganataupembangunanperangkatlunaktersebut. Hal inibertujuanuntukmemberikangambaransecararingkasmengenaiperangkatlunak yang akandikembangkanataudibangun. Format/kerangkadaridokumenRencanaPengembanganPerangkatLunak (RPPL) adalahsebagaiberikut :

  33. DokumenRencanaPengembanganPerangkatLunak (RPPL)

  34. PerancanganPerangkatLunak

  35. TahapanRancanganPerangkatLunak • 2 Pendekatanrancanganperangkatlunak • Rancanganperangkatlunakterstruktur • Rancangan perangkat lunak berorientasi objek Tahaprancanganperangkatlunak :

  36. PerancanganTerstruktur • OrientasipadaProsesdan Data • Alatperancanganperangkatlunakterstuktur : • Kamus data • Model data logik • ERD • DFD • STD • Baganterstruktur

  37. PerancanganTerstruktur • Karakteristikrancanganuntuk program terstruktur • Moduldisusunsecarahirarkis (baganstruktur,diagramjackson,diagramwarnier/orr) • MenggunakanLogika CALL-based atau PERFORM-based • Menggunakan control flow (alurkendali) danrancangan top-to-bottom danpengkodean top-to-bottom atau bottom-to-top • Merancangrepetisiatau loop dalamsatumodul • Menerapkankonsepsikendalistandar (untukurutan, seleksi, repetisi)

  38. RancanganPerangkatLunakBerorientasiObyek • AdalahStrategiperancangandimanaperancangsistemmemikirkan ‘benda’ danbukanoperasiataufungsi. • OrientasipadaObyek • Alat yang digunakan : DFD, ERD, STD,BaganTerstruktur, SE/Pseodocode • Tahapan: • MendeskripsikanObyek, Kelas, AtributdanDaftarOperasi • MemodelkanrelasiantaraObyekdanKelas • MemodelkanPewarisan

  39. Objekdankelasobjek • Objek • Memberi identitas kepada orang atau benda • Merepresentasikanentitasdariaplikasi yang dirancang • KelasObjek • Dibuatuntukmenurutdefinisikelasobjek • Definisi kelas objek berfungsi sebagai template untukmembuatobjek

  40. Objekdankelasobjek • Superkelas : kumpulankelas • Subkelas : kejadian dari suatu kelas • Inheritance : kemampuanuntukmendefinisikansubkelasobjekdarisuatukelasobjek • Didefinisikanpada UML

  41. Representasialternatifdarikelasberorientasiobjek

  42. Tahapanperancanganberorientasiobjek • MendefinisikanKontekssistemdan model penggunaan • Merancangarsitektursistem • Mengidentifikasiobyekutamasistem • Mengembangkan model desain • Menspesifikasi interface obyek

  43. TERIMA KASIH ATAS PERHATIAN ANDA

More Related