Minggu, 17 April 2016

PENGUJIAN SISTEM INFORMASI

1. APA ITU PENGUJIAN ???
Pengujian adalah proses untuk menemukan error pada perangkat lunak sebelum dikirim kepada pengguna.Pengujian Software adalah kegiatan yang ditujukan untuk mengevaluasi atribut atau kemampuan programdan memastikan bahwa itu memenuhi hasil yang dicari, atau suatu investigasi yang dilakukan untukmendapatkan informasi mengenai kualitas dari produk atau layanan yang sedang diuji (under test),Pengujian perangkat lunak juga memberikan pandangan mengenai perangkat lunak secara obyektif danindependen, yang bermanfaat dalam operasional bisnis untuk memahami tingkat risiko padaimplementasinya. 

2. ARTI PENGUJIAN
  • Proses pengujian berfokus pada logika internal  software
  • memastikan bahwa semua pernyataan sudah diuji
  • dan pada eksternal fungsional yaitu mengarahkan pengujian untuk menemukan kesalahan –kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yangsesuai dengan hasil yang dibutuhkan 
   Pemeliharaan Software akan mengalami perubahan setelah disampaikan kepada pelanggan.Perubahanakan terjadi karena kesalahan – kesalahan ditentukan, karena software harus disesuaikan untukmengakomodasi perubahan – perubahan di dalam lingkungan eksternalnya (contohnya perubahan yangdibutuhkan sebagai akibat dari perangkat peripheral atau sistem operasi yang baru), atau karena pelangganmembutuhkan perkembangan fungsional atau unjuk kerja.

3. TUJUAN PENGUJIAN
   diharapkan dengan minimal tenaga dan waktu untuk menemukan berbagai potensi kesalahan dancacat.Harus didasarkan pada kebutuhan berbagai tahap pengembangan, desain dan dokumen lain atauprogram yang dirancang untuk menguji struktur internal, dan menggunakan contoh-contoh ini untukmenjalankan program untuk mendeteksi kesalahan. 
  • Pengujian sistem informasi harus mencakup pengujian perangkat lunak, pengujian perangkatkeras dan pengujian jaringan.pengujian Hardware, jaringan pengujian berdasarkan indikatorkinerja spesifik yang akan, digunakan di sini, pengujian lebih jauh adalah pengujian perangkatlunak.  
  • Sesegera mungkin dan terus diuji.Pengujian tidak dalam pengembangan aplikasi dilakukansetelah selesai.Karena kompleksitas asli masalah, keragaman tahap perkembangan sertakoordinasi antara peserta dan faktor lainnya, membuat rambut di semua tahapan pembangunanmungkin mengalami kesalahan.Oleh karena itu, tes yang harus dijalankan melalui berbagaitahap perkembangan secepat mungkin untuk memperbaiki kesalahan, menghilangkan bahayayang tersembunyi.
  • Pengujian * harus dihindari oleh orang-orang asli yang bekerja atau komitmen kelompok, disatu sisi, pengembang sering enggan untuk memanggil pekerjaan mereka diakui, dan percayabahwa perangkat lunak mereka sendiri dikembangkan tidak ada kesalahan; sisi lain,pengembang kesalahan adalah pada sayamenguji, mudah untuk program sesuai dengan idemereka sendiri untuk mengembangkan ide-ide pengujian, memiliki keterbatasan.
    • Pengujian harus dilakukan oleh personel khusus untuk melaksanakan, akan lebihobyektif dan lebih efektif.
    • Desain uji program, tidak hanya untuk menentukan input data, tetapi jugaberfungsi sesuai dengan sistem untuk menentukan output yang diharapkan.Hasilaktual dibandingkan dengan hasil yang diharapkan dapat ditemukan dalam bendauji sudah benar.
    • Desain uji kasus, tidak hanya untuk merancang kondisi masukan efektif danmasuk akal, tetapi juga termasuk kegagalan yang tidak masuk akal dari kondisiinput.Test, orang sering digunakan sesuai dengan, kondisi normal yang wajaruntuk pengujian, sementara mengabaikan uji keadaan normal, tidak masuk akaldan tak terduga, dan ini mungkin tersembunyi.
    • Dalam program tes, tidak hanya melakukan prosedur pengujian yang dilakukan,tetapi juga untuk menguji apakah prosedur yang dilakukan tidak harusdilakukan.Efek samping dari kerja tambahan akan mempengaruhi efisiensiprosedur, kadang-kadang menimbulkan potensi bahaya atau kesalahan. 
  • Melakukan sesuai dengan rencana uji ketat, untuk menghindari uji sewenang-wenang.Rencanapengujian harus mencakup konten pengujian, penjadwalan, staf, lingkungan pengujian, alat-alat tes dan informasi tes.Ketat sesuai dengan rencana pengujian dapat; kemajuan sertifikasi,sehingga semua pihak dapat dikoordinasikan.
  • Jauhkan rencana uji, uji kasus, sebagai bagian dari dokumentasi perangkat lunak, untukpemeliharaan kenyamanan.
  • Uji kasus secara hati-hati dirancang, dapat kembali pengujian atau pengujian tambahandengan mudah.Ketika Zi benar sebelum uji kasus, atau memodifikasi dasar, dan kemudianmenguji.
4. PROSES PENGUJIAN STANDAR
  • menyiapkan rencana uji.Dalam rencana,uji,kita sepenuhnya harus mempertimbangkan waktukeseluruhan proyek pembangunan dan pengembangan ke anak serta beberapa faktor manusiadan kondisi obyektif, membuat rencana uji layak.Utama isi isi rencana uji , penjadwalanlingkungan pengujian, uji dan persyaratan yang dibutuhkan untuk menguji pengaturanpelatihan.
  • penyusunan kerangka uji.Uji garis didasarkan pada ujian.Ini jelas menetapkan secara rincisistem dalam tes untuk fitur atau fitur dari masing-masing harus menyelesaikan item tes dasardan kriteria uji penyelesaian.
  • Menurut garis besar rancangan dan pengujian untuk menghasilkan uji kasus.Bila dalam desainuji kasus, kasus uji dapat disajikan di depan teknik pemanfaatan dan desain, sehingga dalamdokumentasi pengujian desain dan isinya diukur item, data input, proses pengujian, output yangdiharapkan dan sebagainya.  
  • untuk melaksanakan ujian.Tahap implementasi dari tes ini adalah terdiri dari serangkaiansiklus uji.Dalam setiap siklus uji, penguji dan pengembang akan didasarkan pada programpersiapan pra-tes dan menyiapkan ujian yang baik, perangkat lunak uji, atau peralatan untuktes lengkap.
  • membuat laporan uji.Test selesai, untuk membentuk laporan pengujian yang sesuai, utamagaris-garis besar tes yang ditetapkan kesimpulan tes yang cacat dan kesalahan, jugamemberikan beberapa saran, seperti metode modifikasi dapat digunakan, perubahan bebankerja yang diproyeksikandan memodifikasi petugas yang bertanggung jawab. 

5. TUJUAN PENGUJIAN
  • Melakukan pengujian terhadap sistem informasi / program aplikasi / aplikasi sebelumdigunakan.
  • Menguji dan membandingan dengan sistem sebelumnya, untuk memunculkan keunggulan padasistem yang lama dan mengurangi kesalahan pada sistem yang baru. Sistem yang baru lebihbaik dari pada sistem yang lama.
  • Merevisi sistem yang diuji, sampai sistem benar-benar dapat menyelesaikan  masalah padasistem / organisasi (revisi sistem sebelum sistem digunakan).
  • Sistem yang sudah digunakan, berarti sudah melalui pengujian sistem dan sistem layakdioperasikan / digunakan. 
  6. WHY TESTING ???   

    • Kita bukanlah seorang programmer yang baik
    • Kita mungkin tidak dapat cukup berkonsentrasi untuk menghindari kesalahan
    • Kita kadang-kadang lupa menggunakan pemrograman terstruktur secara penuh
    • Kita kadang buruk dalam mengerjakan sesuatu
    • Kita seharusnya dapat membedakan apa yang dikatakan programmer lain/pelanggan dan apa yang sebenarnya mereka pikirkan
    • Kita harus merasa bersalah apabila seseorang harus menguji koding kita
    • Pengujian merupakan suatu perizinan terhadap kesalahan
    • Manusia adalah sarang kesalahan
    7. DEFINISI TESTING
    • Suatu proses yang dilakukan untuk menilai apakah yang dirancang telah sesuai dengan apa yang diharapkan
    • Suatu kegiatan untuk mengevaluasi keunggulan dan kelermahan terhadap sesuatu yang diuji (kualitas produk) 
    • Mengevaluasi terhadap urutan kegiatan yang sistematis dalam mencapai tujuan sistem.
    • Mengevaluasi keseimbangan jumlah pelaksanaan kegiatan dengan beban kerja dalam sesuatu prosedur kegiatan
    8. TESTING & EVALUASI
    • Hal-hal yang terlibat dalam suatu kegiatan untuk mencapai tujuan yang diharapkan untuk si pengguna 
    • Bertujuan melakukan pengujian terhadap sistem informasi apakah sudah memenuhi kebutuhan user atau sistem informasi sudah layak digunakan dengan melalui : 
      • Uji analisis 
      • Uji perancangan 
      • Uji implementasi
    9. TUJUAN TESTING
    • Testing dilakukan untuk memastikan mutu dari suatu produk yaitu menguji apakah produk (dalam hal ini sistem informasi) yang dihasilkan telah sesuai dengan mutu yang dipersyaratkan.  
    • Testing dilakukan untuk memastikan atau menjaga mutu suatu produk
    • Testing merupakan proses analisa dan entitas software, pada testing ini bertujuan untuk mendeteksi adanya perbedaan antrar kondisi software yang ada dengan kondisi yang diinginkan, untuk melihat kerusakan suatu produk melakukan evaluasi fitur fitur dari software.
    10. TESTING SISTEM
    • Melakukan proses evaluasi terhadap sistem yang sudah ada apakah sistem sudah sesuai yang diharapkan user 
    • Menilai dan mengevaluasi terhadap output atau hasil sistem
    • Menguji terhadap input, pengelolaan (proses) dan output sistem 
    • Melakukan penilaian dan evaluasi terhadap komponen sistem prosedur pelaksanaan kegiatan dan mutu atau kwalitas hasil sistem
    11. SASARAN TESTING
    • Aplikasi sistem informasi yang sudah melakukan uji kelayakan sistem, maka aplikasi sistem informasi akan terjadi peningkatan : 
      • Kinerja(Performance) 
      • Nilai mutu informasi(Information) 
      • Nilai ekonomis(Economi) 
      • Pengendalian diri(Control) 
      • Efisiensi 
      • pelayanan(Service)
    12. TESTING & SISTEM INFORMASI
    Elemen kritis dari jaminan kwalitas dan mempresentasikan kajian pokok dari spesifikasi, desain dan pengkodean atau pengujian terhadap aplikasi sistem informasi berdasarkan komponen. Sistem informasi yaitu pengujian model, pengujian output, database, teknologi dan pengujian kendali terhadap aplikasi sistem informasi. Sehingga memberikan sistem informasi yang berkwalitas terhadap user.

    13. TESTING KOMPONEN SISTEM INFORMASI

    • Model / prosesMenguji hasil rancangan tentang proses atau model dari suatu sistem informasi yang akan dibuat dengan program aplikasi. Contoh menguji flow chart KRS.
    • Output, Menguji hasil rancangan dengan laporan yang disajikan aplikasi, apakah sudah memberikan informasi sesuai dengan kebutuhan user. Contoh KRS (MHS,DOSEN, PA,MTK,DOSEN PA, JADWAL, IPK, dll).
    • Input, Pengujian terhadap jumlah atau variable data yang dibutuhkan output, contoh data MHS, data DOSEN, MTK, dll.
    • Database, Menguji atribut data , relasi antar file atau hubungan elemen data, jumlah database yang sesuai untuk menghasilkan output dan menampung data sesuai dengan form entri.
    • Teknologi, Pengujian terhadap kemampuan peralatan yang digunakan, kemampuan software dalam menjalankan aplikasi, sehingga mampu memberikan informasi yang iteraktif kepada user.
    • Control/Kendali, Menguji terhadap keamanan dan hak akses dari aplikasi dan dapat memonitor. 
    14. TESTING DAN IMPLEMENTASI SISTEM INFORMASI
    Elemen kritis dari jaminan kwalitas dan mempresentasikan kajian pokok dari spesifikasi, desain dan pengkodean atau pengujian terhadap aplikasi sistem informasi berdasarkan komponen. Sistem informasi yaitu pengujian model, pengujian output, database, teknologi dan pengujian kendali terhadap aplikasi sistem informasi. Sehingga memberikan sistem informasi yang berkwalitas terhadap user. 

    15. KONSEP TESTING & IMPLEMENTASI SISTEM INFORMASI

    • Pengujian terhadap model sistem informasi
    • Pengujian terhadap logika , output , relasi data dalam menghasilkanlaporan informasi kepada user
    • Pengujian terhadap tahapan analisis
    • Pengujian tehadap tahapan perancangan
    • Pengujian terhadap keunggulan dan kelemahan software dan hardware yang digunakan 
    • Pengujian terhadap kasus yang dibahas
    16. TESTING DESAIN SISTEM INFORMASI
    • Kecocokan format laporan dengan tahap perancangan dan hasil analisis 
    • Kesesuaian variable data yang dituangkan pada format form entri pada tahap perencanaan dan hasil sistem.
    • Kesesuaian model pada perencanaan dan analisis (jumlah data yang mengalir , kerangka berfikir program / flowchart) proses matematis dalam pemakaian rumus 
    • Database dapat menampung jumlah yang dibutuhkan pada perencanaan dan kesesuaian data pada hasil analisis
    • Teknologi, pengujian untuk dapat menjalankan aplikasi yang sudah dibentuk dan pengujian fungsi dari masing masing komponen computer (alat I-P-O, storage, keterlitian dan kevalitan angka)
    • Control sistem
    • Keamanan akses sistem dan data
    • Kecepatan pengolahan data dan pencarian informasi serta pendristribusian laporan
    • Kapasistas penyimpanan memory
    • Umur sistem
    • Pengujian terhadap enkripsi data
    • Keamanan ruangan, suhu, alat, keamanan dll.


        17. TESTING ANALISIS SISTEM INFORMASI
        • Tahap analisis
        • Sistem kerja
        • Pola manajemen
        • Gaya kepemimpinan (leadership) 
        • Gaji atau status sosial karyawan
        • Struktur organisasi 
        • Homogen bidang ilmu 
        • Heterogen bidang yang paling mengisi sistem
        18. TAHAPAN TESTING
        A.Unit Testing 
        Unit testing dilaksanakan untuk mengetahui kesalahan dalam logika atau fungsi setiap
        komponen (individual component).
        B.Module System Testing 
        Module Testing diujikan pada komponen-komponen yang saling terhubung dan saling
        bergantung satu dengan yang lainnya. Tipe-tipe kesalahan yang mungkin terjadi, seperti
        GUI, input/output, struktur data, aritmatika, kendali logika, dll.
        C.Sub System Testing (Integration Testing) 
        Integrasi program meliputi prosedur-prosedur yang disertakan untuk menghubungkan
        modul-modul menjadi subsistem maupun sistem lengkap.
        D.Acceptance Testing
         Testing formal yang dilakukan untuk menentukan apakah sistem telah memenuhi kriteria
        penerimaan dan memberdayakan pelanggan untuk menentukan apakah sistem dapat diterima atau tidak.

        19. PENDEKATAN TESTING
        • Incremental testing, modul dapat ditambahkan pada modul lainnya untuk ujicoba individual, biasanya berupa penulisan modul baru. Terdapat dua metode untuk mengaplikasikan Incremental testing, yaitu : Top-down dan Bottom-Up 
        • Nonincremental testing, seluruh modul dalam program dapat dibangun terlebih dahulu, kemudian digabungkan dan diujicobakan sebagai satu entitas.
        20. FURPS 
        Adalah faktor-faktor kualitas yang dibuat oleh perusahaan Hewlett-Packard ;:

        • Functionality, diperkirakan dengan mengevaluasi sejumlah feature dan kemampuan program, fungsi-fungsi umum yang disediakan, dan keamanan terhadap keseluruhan system 
        • Usability, diperkirakan dengan mempertimbangkan faktor manusia, keseluruhan estetika, konsistensi, dan dokumentasi.
        • Reliability, dievaluasi dengan mengukur frekuensi dan penanganan kesalahan, keakuratan hasil output, jangka waktu antar kesalahan (Mean Time Between Failure), kemampuan untuk recover dari kesalahan dan kemampuan prediksi program. 
        • Performance, diukur dengan mengevaluasi kecepatan pemrosesan, waktu, respon,konsumsi sumberdaya, keluaran dan efisiensi.
        • Supportablity, kombinasi kemampuan untuk memperpanjang program, kemampuan adaptasi dan kemampuan layanan (ketiga atribut ini merepresentasikan –maintainability) sebagai tambahan untuk kemampuan ujicoba, kesesuaian, kemampuan penyusunan (kemampuan untuk mengorganisir dan mengatur elemen-elemen penyusunan software).      
            21. OBYEKTIFITAS TESTING
            • Test case yg baik adalah yg mempunyai probabilitas yg tinggi untuk menemukan error yg tak diketemukan
            • Pengujian merupakan suatu proses eksekusi program yang ditujukan untuk menemukan error
            • Uji yg sukses adalah yg dapat ‘membuka’ error yang tak diketemukan
            22. PENDEKATAN TEST CASE 
            • White Box Testing (pengujian kode) berfokus pada struktur kontrol program Dijamin semuaindependent path (jalur bebas) telah dijalankan setidaknya satu kali Menjalankan semua keputusan logis pada sisi true & false Menjalankan semua looping Melakukan struktur data internal untuk menjamin validitas
            • Black Box Testing (pengujian fungsi) berfokus pada kebutuhan fungsional softwarememungkinkan perancang untuk memperoleh kondisi2 input yg secara penuh menguji semua kebutuhan fungsional suatu program
             23. BLACK BOX
             

            Black box testing adalah pengujian yang dilakukan hanya mengamati hasil eksekusi melalui data uji dan memeriksa fungsional dari perangkat lunak. Jadi dianalogikan seperti kita melihat suatu koatak hitam, kit hanya bisa melihat penampilan luarnya saja, tanpa tau ada apa dibalik bungkus hitam nya. Sama seperti pengujian black box, mengevaluasi hanya dari tampilan luarnya(interface nya) , fungsionalitasnya.tanpa mengetahui apa sesungguhnya yang terjadi dalam proses detilnya (hanya mengetahui input dan output).

            Kelebihan black box testing
            • Dapat memilih subset test secara efektif dan efisien
            • Dapat menemukan cacat
            • Memaksimalkan testing investmen
            Kelemahan black box testing
            • Tester tidak pernah yakin PL tersebut benar-benar lulus uji
             

              Perbedaan BLACK BOX DAN WHITE BOX 

              WHITE BOX

              • Dilakukan oleh penguji yang mengetahui tentang QA.
              • Melakukan testing pada software/program aplikasi menyangkut security dan performance program tersebut (meliputi tes code, desain implementasi, security, data flow, software failure).
              • Dilakukan seiring dengan tahapan pengembangan software atau pada tahap testing.
              BLACK BOX
              • Dilakukan oleh penguji Independent.
              • Melakukan pengujian berdasarkan apa yang dilihat, hanya fokus terhadap fungsionalitas danoutput. Pengujian lebih ditujukan pada desain software sesuai standar dan reaksi apabilaterdapat celah-celah bug/vulnerabilitas pada program aplikasi tersebut setelah dilakukan white box testing. 
              • Dilakukan setelah white box testing