Anda di halaman 1dari 11

LAPORAN UTS TESTING DAN IMPLEMENTASI

Disusun Oleh:
Devi Alfiana Sari/1905102012

PROGRAM STUDI SISTEM


INFORMASIFAKULTAS TEKNIK
UNIVERSITAS PGRI MADIUN
MARET 2023
1.menurut anda apa hubungan antara SDLC dengan testing implementasi
sistem?
Menurut saya Siklus Pengembangan Perangkat Lunak (SDLC, Software Development Life
Cycle) adalah rangkaian proses dan tahapan yang digunakan dalam pengembangan perangkat
lunak. Testing implementasi sistem adalah salah satu tahap kunci dalam SDLC. Hubungan antara
SDLC dan testing implementasi sistem adalah sebagai berikut:

1. Tahap dalam SDLC: Testing implementasi sistem biasanya terjadi pada tahap terakhir
dari SDLC, yang dikenal sebagai tahap pengujian atau validasi. Pada tahap ini, perangkat
lunak yang telah dikembangkan akan diuji untuk memastikan bahwa sistem berfungsi
dengan benar sebelum diperkenalkan kepada pengguna akhir.

2. Validasi dan verifikasi: Testing implementasi sistem adalah bagian dari validasi dan
verifikasi dalam SDLC. Validasi adalah proses memastikan bahwa sistem yang
dikembangkan sesuai dengan persyaratan dan kebutuhan pengguna, sementara verifikasi
adalah proses memastikan bahwa perangkat lunak tersebut mematuhi spesifikasi teknis.

3. Tujuan pengujian: Testing implementasi sistem bertujuan untuk mengidentifikasi


kesalahan, cacat, dan masalah lainnya dalam perangkat lunak sebelum diperkenalkan
kepada pengguna. Hal ini memungkinkan untuk memperbaiki masalah sebelum mereka
mengganggu operasi sistem yang sebenarnya.

4. Jenis pengujian: Ada berbagai jenis pengujian yang dapat dilakukan selama tahap
implementasi sistem, termasuk pengujian fungsional, pengujian integrasi, pengujian
performa, dan sebagainya. Masing-masing jenis pengujian memiliki fokus dan tujuan
yang berbeda.

5. Siklus pengujian: Pengujian implementasi sistem biasanya melibatkan serangkaian iterasi


atau siklus pengujian. Hasil dari setiap siklus pengujian digunakan untuk memperbaiki
dan mengembangkan perangkat lunak sehingga sesuai dengan persyaratan yang
ditetapkan.

Dengan demikian, hubungan antara SDLC dan testing implementasi sistem adalah bahwa
pengujian implementasi sistem adalah bagian penting dari proses pengembangan
perangkat lunak yang terstruktur dan sistematis, yang dikenal sebagai SDLC. Testing
implementasi sistem membantu memastikan bahwa perangkat lunak yang dikembangkan
memenuhi persyaratan, berfungsi dengan baik, dan siap untuk digunakan oleh pengguna
akhir.
2.apa yang dimaksud dengan BUG? berikan contohnya?
Bug adalah kesalahan atau kecacatan dalam perangkat lunak yang menyebabkan perilaku
yang tidak diinginkan atau tidak sesuai dengan yang diharapkan. Bug dapat muncul
dalam berbagai bentuk, seperti kesalahan pemrograman, masalah konfigurasi, atau
kegagalan sistem. Ketika bug muncul dalam perangkat lunak, dapat menyebabkan
berbagai masalah, termasuk crash, penurunan kinerja, atau perilaku yang tidak konsisten.

Contoh-contoh bug dalam perangkat lunak termasuk:

1. Null Pointer Exception: Ini adalah jenis bug yang muncul ketika program mencoba
mengakses atau menggantikan nilai null (kosong) dari variabel pointer. Ini dapat
menyebabkan program crash atau perilaku yang tidak diinginkan. Contohnya, jika sebuah
program mencoba mengakses objek yang tidak ada, maka akan memunculkan Null
Pointer Exception.

2. Infinite Loop: Bug ini terjadi ketika program masuk ke dalam loop yang tidak pernah
berakhir. Sebagai contoh, jika ada kesalahan dalam kondisi keluar dari loop, maka
program akan terjebak dalam loop tanpa henti.

3. Kesalahan perhitungan: Kesalahan perhitungan dapat menyebabkan hasil yang tidak


benar dalam perangkat lunak. Misalnya, jika suatu program mengalami bug perhitungan,
maka operasi aritmetika yang dijalankan oleh program dapat menghasilkan hasil yang
tidak sesuai dengan yang seharusnya.

4. Crash Aplikasi: Bug dapat menyebabkan program atau aplikasi crash, artinya aplikasi
berhenti bekerja secara tiba-tiba dan keluar tanpa pemberitahuan. Ini sering terjadi karena
kesalahan pemrograman atau akses ilegal ke memori.

5. Tampilan yang Tidak Benar: Bug juga dapat menyebabkan tampilan yang tidak benar
dalam antarmuka pengguna. Misalnya, jika suatu aplikasi mengalami bug tampilan, maka
elemen-elemen tampilan mungkin tidak ditampilkan dengan benar atau tampak
terdistorsi.

6. Kegagalan Fungsionalitas: Kesalahan dalam logika atau implementasi perangkat lunak


dapat mengakibatkan kegagalan fungsi yang seharusnya berjalan dengan benar. Sebagai
contoh, jika sebuah program untuk mengirim email mengalami bug, maka email mungkin
tidak terkirim dengan benar.
Penting untuk mengidentifikasi dan memperbaiki bug dalam perangkat lunak karena
mereka dapat mengganggu kinerja sistem, mengakibatkan kerugian finansial, atau bahkan
mempengaruhi pengalaman pengguna. Pengujian perangkat lunak adalah salah satu cara
untuk menemukan dan memperbaiki bug sebelum perangkat lunak diperkenalkan kepada
pengguna.

3.apabila ada seorang pentester sistem informasi apa yang pertama kali ingin
diuji? bagaimana cara anda memulainya? Jelaskan?
Penting untuk memahami bahwa pendekatan pengujian sistem informasi dapat bervariasi
tergantung pada tujuan pengujian, lingkup sistem, dan batasan yang ada. Namun, dalam
umumnya, langkah pertama yang ingin diuji oleh seorang pentester sistem informasi
adalah identifikasi dan pemahaman terhadap sistem yang akan diuji. Berikut adalah
langkah-langkah umum yang dapat diambil oleh seorang pentester saat memulai
pengujian sistem informasi:

1. Pemahaman terhadap Sistem: Pentester perlu memahami secara mendalam sistem yang
akan diuji. Ini mencakup pemahaman tentang tujuan sistem, arsitektur, komponen-
komponen utama, teknologi yang digunakan, dan data yang diolah oleh sistem tersebut.

2. Pemahaman tentang Lingkungan: Pentester perlu memahami lingkungan di mana sistem


beroperasi, termasuk konfigurasi perangkat keras, jaringan, dan infrastruktur yang
mendukung sistem. Ini membantu dalam menilai potensi risiko dan ancaman yang
relevan.

3. Identifikasi Risiko dan Ancaman: Pentester perlu mengidentifikasi risiko potensial yang
mungkin dihadapi sistem. Risiko ini dapat berupa masalah keamanan seperti kerentanan,
serangan yang mungkin terjadi, dan dampak yang mungkin terjadi jika keamanan sistem
terganggu.

4. Penentuan Tujuan dan Lingkup Pengujian: Berdasarkan pemahaman sistem dan risiko
yang diidentifikasi, pentester perlu menentukan tujuan pengujian dan lingkup pengujian.
Apakah pengujian akan fokus pada pengujian penetrasi, analisis kerentanan, atau
pengujian keamanan lainnya? Pentester juga harus menentukan berbagai skenario
serangan yang akan diuji.

5. Identifikasi dan Analisis Kerentanan: Pentester akan mencoba mengeksploitasi potensi


kerentanan dalam sistem dengan menggunakan berbagai teknik. Ini dapat melibatkan
pengujian penetrasi, pemindaian keamanan, atau pemeriksaan kode sumber, tergantung
pada metode yang sesuai untuk situasi yang diberikan.

6. Pelaporan dan Rekomendasi: Setelah mengidentifikasi kerentanan, pentester akan


mendokumentasikan temuan mereka dalam laporan pengujian. Laporan ini akan
mencakup deskripsi kerentanan, risiko yang terkait, bukti eksploitasi (jika ada), dan
rekomendasi untuk memperbaiki atau mengatasi kerentanan tersebut.

7. Validasi dan Pengujian Ulang: Setelah perbaikan dilakukan, pentester dapat melakukan
validasi untuk memastikan bahwa kerentanan telah diperbaiki dengan benar dan tidak ada
kerentanan baru yang muncul sebagai akibat dari perubahan tersebut.

8. Pelaporan Akhir: Setelah validasi selesai, pentester akan menyusun laporan akhir yang
mencantumkan hasil pengujian setelah perbaikan, serta rekomendasi akhir dan langkah-
langkah yang diperlukan untuk meningkatkan keamanan sistem.

Dalam semua tahapan pengujian sistem informasi, pentester perlu mematuhi etika dan
kebijakan keamanan yang berlaku, serta mendapatkan izin yang diperlukan dari pemilik
sistem atau organisasi yang memiliki sistem tersebut. Keamanan sistem informasi adalah
aspek yang sangat penting, dan pentester bertanggung jawab untuk membantu
mengidentifikasi dan mengatasi kerentanan sehingga sistem dapat tetap aman dari
serangan dan risiko potensial.

4.sebutkan dan jelaskan macam-macam metode pentesting?


Pentesting, singkatan dari penetration testing atau pengujian penetrasi, adalah proses
pengujian sistem komputer, jaringan, aplikasi, atau infrastruktur untuk mengidentifikasi
dan menguji kerentanan keamanan yang mungkin ada. Ada beberapa metode pentesting
yang digunakan untuk mencari kerentanan dan menguji keamanan sistem. Berikut adalah
beberapa metode pentesting yang umum:

1. Pentesting Jaringan (Network Pentesting): Metode ini fokus pada pengujian keamanan
jaringan dan perangkat keras. Pentester mencoba untuk mengidentifikasi kerentanan
dalam perangkat jaringan, router, firewall, serta menganalisis protokol dan lalu lintas
jaringan. Tujuan akhir adalah untuk menguji kemampuan sistem dalam menghadapi
serangan yang mungkin datang dari jaringan eksternal atau internal.

2. Pentesting Aplikasi (Application Pentesting): Ini adalah metode pengujian yang


berfokus pada pengujian keamanan aplikasi perangkat lunak, termasuk aplikasi web,
perangkat lunak klien, atau aplikasi seluler. Pentester mencoba mengeksploitasi
kerentanan perangkat lunak, seperti kerentanan berbasis web, kerentanan SQL Injection,
Cross-Site Scripting (XSS), dan lainnya.

3. Pentesting Sosial (Social Engineering Pentesting): Metode ini mencoba untuk


mengeksploitasi manusia daripada teknologi. Ini melibatkan teknik manipulasi psikologis
untuk mendapatkan informasi sensitif atau akses ke sistem. Contohnya termasuk
phishing, rekayasa sosial, dan uji coba kecerdasan sosial.
4. Pentesting Fisik (Physical Pentesting): Pentesting fisik berfokus pada pengujian
keamanan fisik seperti gedung, ruangan server, dan perangkat keras fisik. Pentester
mencoba untuk masuk ke area yang seharusnya terkunci atau terbatas aksesnya tanpa
izin. Ini dapat mencakup pencurian perangkat keras, pencurian data, atau tindakan fisik
lainnya.

5. Pentesting Aplikasi Seluler (Mobile Application Pentesting): Metode ini berfokus


pada pengujian keamanan aplikasi seluler di berbagai platform seperti Android dan iOS.
Pentester mencari kerentanan seperti ketidakamanan penyimpanan data, ancaman
pencegatan, atau kerentanan sumber daya server.

6. Pentesting Cloud (Cloud Pentesting): Dalam konteks komputasi awan (cloud


computing), pentesting ini difokuskan pada menguji keamanan solusi cloud, seperti
penyedia layanan cloud publik, platform, dan infrastruktur. Pentester mencoba untuk
mengidentifikasi kerentanan dalam konfigurasi cloud, manajemen identitas, serta
perlindungan data.

7. Pentesting Jaringan Nirkabel (Wireless Network Pentesting): Metode ini fokus pada
pengujian keamanan jaringan nirkabel, seperti jaringan Wi-Fi. Pentester mencoba untuk
mengidentifikasi kerentanan dalam enkripsi nirkabel, konfigurasi router, dan
perlindungan akses jaringan nirkabel.

8. Pentesting IoT (Internet of Things Pentesting): Metode ini berfokus pada pengujian
keamanan perangkat IoT, yang cenderung memiliki batasan sumber daya. Pentester
mencoba untuk mengidentifikasi kerentanan perangkat IoT yang mungkin dieksploitasi
oleh penyerang.

Pentesting adalah langkah penting dalam menjaga keamanan sistem dan jaringan, serta
membantu organisasi untuk mengidentifikasi dan mengatasi potensi kerentanan sebelum
penyerang melakukannya. Pilihan metode pentesting akan bergantung pada jenis sistem
yang diuji dan tujuan pengujian keamanan yang diinginkan.

5.jelaskan dan sertakan contoh dari prinsip-prinsip pengujian sistem?


Pengujian sistem adalah proses penting dalam pengembangan perangkat lunak yang
bertujuan untuk memastikan bahwa sistem berfungsi dengan benar, memenuhi
persyaratan, dan terbebas dari kerentanan atau bug yang dapat menyebabkan masalah.
Prinsip-prinsip pengujian sistem adalah pedoman yang membantu dalam merancang,
melaksanakan, dan mengelola pengujian secara efektif. Berikut adalah beberapa prinsip
pengujian sistem beserta contohnya:
1. Tujuan Pengujian (Testing Objectives): Prinsip ini mengharuskan pengujian memiliki
tujuan yang jelas dan terdefinisi dengan baik. Tujuan pengujian dapat berupa verifikasi
persyaratan, identifikasi kerentanan keamanan, atau memastikan kinerja yang sesuai.

Contoh: Dalam pengujian aplikasi perbankan, tujuannya mungkin adalah untuk


memverifikasi bahwa sistem dapat mengelola transaksi keuangan dengan benar dan
aman.

2. Perencanaan Pengujian (Testing Planning): Perencanaan pengujian adalah kunci


keberhasilan pengujian sistem. Ini mencakup penentuan strategi pengujian, sumber daya
yang dibutuhkan, jadwal pengujian, dan lingkup pengujian.

Contoh: Sebelum merilis perangkat lunak, tim pengujian merencanakan berapa lama
pengujian akan berlangsung, bagaimana pengujian akan diotomatisasi, dan berapa banyak
uji kasus yang harus dijalankan.

3. Pemilihan Uji Kasus (Test Case Selection): Prinsip ini menekankan pentingnya
memilih uji kasus yang relevan dan representatif untuk menguji berbagai aspek perangkat
lunak.

Contoh: Dalam pengujian perangkat lunak e-commerce, uji kasus mungkin mencakup
pengujian fungsional seperti menambahkan barang ke keranjang belanja, proses
checkout, dan pengujian keamanan untuk melindungi data pelanggan.

4. Ketidakberpihakanan (Impartiality): Pengujian harus dilakukan secara obyektif tanpa


kepentingan yang bias. Prinsip ini memastikan bahwa pengujian tidak dipengaruhi oleh
kepentingan atau bias pihak yang melakukan pengujian.

Contoh: Tim pengujian yang independen harus memeriksa perangkat lunak yang
dikembangkan oleh tim pengembangan yang berbeda untuk memastikan pengujian yang
obyektif.

5. Reproduksi Bug (Bug Reproduction): Jika bug ditemukan, prinsip ini meminta agar
bug dapat direproduksi atau direplikasi dengan konsisten. Ini memungkinkan tim
pengembangan untuk memahami dan memperbaiki bug.

Contoh: Jika pengujian mengidentifikasi bug yang menyebabkan aplikasi crash saat
mengunggah file gambar, tim pengujian harus mencatat langkah-langkah yang diperlukan
untuk mengulangi bug tersebut.

6. Dokumentasi Pengujian (Testing Documentation): Semua hasil pengujian, termasuk


temuan kerentanan dan uji kasus yang berhasil, harus didokumentasikan secara lengkap
dan akurat.
Contoh: Setelah mengidentifikasi kerentanan keamanan dalam aplikasi web, tim
pengujian harus membuat laporan yang mencakup deskripsi kerentanan, potensi
dampaknya, dan rekomendasi untuk mengatasi masalah tersebut.

7. Pengetahuan Domain (Domain Knowledge): Pengujian yang efektif memerlukan


pemahaman tentang domain bisnis dan teknis yang terkait dengan sistem yang diuji.

Contoh: Dalam pengujian sistem medis, pentester perlu memahami peraturan, standar,
dan praktik medis yang relevan agar dapat menguji sistem dengan benar.

Prinsip-prinsip pengujian sistem ini membantu menjaga kualitas dan integritas perangkat
lunak serta memastikan bahwa sistem dapat beroperasi dengan baik dan aman sesuai
dengan persyaratan yang ditetapkan.

6.sebutkan dan jelaskan tahapan pentesting?


Tahapan pengujian penetrasi (pentesting) adalah langkah-langkah yang dilakukan dalam
suatu proses pengujian keamanan untuk mengidentifikasi kerentanan sistem dan menguji
kekuatan keamanan. Berikut adalah tahapan pentesting yang umum:

1. Perencanaan (Planning): Tahap ini melibatkan perencanaan seluruh pengujian.


Pentester bekerja sama dengan klien atau pemilik sistem untuk memahami tujuan
pengujian, lingkup pengujian, sasaran yang akan diuji, serta jadwal pengujian.
Perencanaan juga melibatkan pemilihan metode pengujian yang sesuai.

2. Pengumpulan Informasi (Information Gathering): Di tahap ini, pentester mencoba


untuk mengumpulkan sebanyak mungkin informasi tentang target pengujian, termasuk
alamat IP, nama domain, infrastruktur jaringan, teknologi yang digunakan, dan sumber
daya terkait. Ini membantu dalam identifikasi potensi kerentanan dan titik masuk yang
mungkin.

3. Analisis (Analysis): Analisis awal dilakukan untuk menentukan di mana titik masuk
yang mungkin dan kerentanan sistem potensial dapat ditemukan. Pentester juga
mengevaluasi informasi yang telah dikumpulkan untuk merencanakan serangan yang
mungkin digunakan.

4. Pengujian (Testing): Di tahap ini, pentester menjalankan serangkaian uji kasus yang
sesuai dengan tujuan pengujian dan kerentanannya yang telah diidentifikasi. Ini termasuk
uji penetrasi, pemindaian kerentanan, uji serangan, serta pengujian keamanan yang
sesuai.

5. Eksploitasi (Exploitation): Jika kerentanan ditemukan, tahap ini melibatkan eksploitasi


kerentanan untuk menunjukkan kepada pemilik sistem potensi dampak dan
kerentanannya. Ini biasanya hanya dilakukan dengan izin dari pemilik sistem.
6. Pengujian Berlanjut (Post-Exploitation): Setelah kerentanan dieksploitasi, pentester
dapat mencoba mengeksploitasi lebih lanjut untuk mendapatkan akses lebih dalam ke
sistem. Tujuan adalah untuk menilai sejauh mana kerentanannya dapat dimanfaatkan.

7. Pengumpulan Bukti dan Dokumentasi (Reporting): Setelah pengujian selesai,


pentester mengumpulkan bukti serangan, hasil pengujian, serta temuan kerentanan dalam
sebuah laporan. Laporan ini akan mencantumkan deskripsi kerentanan, dampaknya,
rekomendasi, dan bukti eksploitasi jika diperlukan.

8. Pembersihan (Cleanup): Jika ada dampak yang disebabkan oleh pengujian penetrasi,
pentester harus membersihkan jejaknya dan mengembalikan sistem ke kondisi semula.

9. Presentasi Hasil (Presentation): Pentester dapat memberikan presentasi kepada klien


atau pemilik sistem untuk menjelaskan hasil pengujian, kerentanan yang ditemukan, dan
rekomendasi untuk memperbaikinya.

10. Verifikasi (Verification): Setelah kerentanan diperbaiki, pentester dapat melakukan


verifikasi untuk memastikan bahwa kerentanan telah ditangani dan sistem telah
diperbaiki dengan benar.

11. Pelaporan Akhir (Final Reporting): Setelah verifikasi selesai, pentester menghasilkan
laporan akhir yang mencantumkan hasil pengujian setelah perbaikan, serta rekomendasi
akhir dan langkah-langkah yang diperlukan untuk meningkatkan keamanan sistem.

Penting untuk diingat bahwa pentesting harus dilakukan secara etis, dengan izin dari
pemilik sistem, dan sesuai dengan peraturan hukum yang berlaku. Tujuannya adalah
untuk membantu meningkatkan keamanan sistem dan mengidentifikasi potensi
kerentanan sebelum penyerang dapat mengeksploitasi mereka.

7.carilah contoh sistem informasi dan lakukan pengujian black box?


Pengujian Black Box

NO Aktivitas Penguji Realisasi yang Hasil Pengujian Kesimpulan


diharapkan

1. Username dan password Sistem akan menolak Sesuai harapan, sistem [x]Diterima
tidak diisi kemudian klik proses login dan akan akan menolak apabila
tombol “masuk” mucul notif “Username username dan password [ ]Ditolak
dan Password harus diisi, tidak diinputkan
silahkan coba lagi!”

2. Mengetikkan Username Sistem menerima akses Sesuai harapan, sistem [x]Diterima


dan Password dengan login dan kemudian menerima akses login
benar, kemudian klik menampilkan halaman dan masuk ke halaman [ ]Ditolak
tombol “masuk” utama data siswa utama data siswa

3. Klik “Tambah Data Akan muncul “tambah Sesuai harapan [x]Diterima


Siswa” data absensi siswa”
[ ]Ditolak

4. Klik “Simpan” pada Data akan tersimpan Tombol “Simpan” sesuai [x]Diterima
tambah data absensi yang diharapkan
[ ]Ditolak
siswa

5. Klik “Kembali” pada Akan kembali ke halaman Sesuai harapan [x]Diterima


tambah data siswa data siswa
[ ]Ditolak

6. Klik tombol “perbaharui” Muncul halaman edit data Sesuai harapan [x]Diterima
absensi siswa, kemudian
[ ]Ditolak
data siswa bisa diedit atau
diperbaharui

7. Klik tombol “kembali” Maka akan kembali ke Sesuai harapan [x]Diterima


pada edit data absensi tampilan data siswa
[ ]Ditolak
siswa

8 Klik tombol hapus pada Maka data siswa akan ke Tombol “hapus”sesuai [x]Diterima
data siswa hapus yang diharapkan
[ ]Ditolak

9 Klik tombol “Kembali” Maka akan kembali ke Tombol “kembali” sesuai [x]Diterima
form login yang diharapkan
[ ]Ditolak

Anda mungkin juga menyukai