Anda di halaman 1dari 10

Kelompok 4 Kelas JIBA

Nama :

- Albert (2440116656)
- Erwin Tiopan Napitupulu (2440124954)
- Farrakhan Mohammad (2440119834)
- Enrico Didan Ramadhani (2401966621)
- Reita Aulia Jasmine (2440124582)
-

Tugas Kelompok ke-1

(Minggu 3 / Sesi 4)

1. Sebutkan faktor yang mempengaruhi pemilihan model proses pada sebuah proyek
pengembangan perangkat lunak? Jelaskan jawaban anda!
2. Jelaskan hubungan antara model proses, metode pemrograman dan tools yang
digunakan dalam proyek pengembangan perangkat lunak.
3. Jelaskan perbedaan model proses extreme programming (XP) dengan scrum!
4. Jelaskan persamaan model proses extreme programming (XP) dengan scrum!
5. Jelaskan dan berikan template laporan untuk pengujian black-box test, white box test
dan user acceptance test!
6. Sebutkan dan jelaskan tools untuk stress test, security test!
7. Bagaimana kriteria tester yang anda inginkan dalam team anda!
8. Bagaimana pola pelaporan ke manager yang akan anda lakukan dalam proyek testing
sebuah sistem!

---oOo---

Jawab

1. Faktor yang mempengaruhi pemilihan model proses pada sebuah proyek


pengembangan perangkat lunak yaitu penggunaan bahasa pemrograman dalam
pengembangan system. Hal ini sangat esensi dalam siklus Hidup Pengembangan
Sistem. Pada tahapan Coding dan Testing difasilitasi bahasa yang terpilih dan pada
Tahapan Pemeliharaan lebih mudah dikerjakan. Apalagi dihubungkan dengan biaya
dalam pengembangan perangkat lunak. Pragmatik dalam Pemilihan Bahasa
Pemrograman mengandung perihal berikut :

ISYS6507 – Testing and System Implementation


- Sponsor Requirement, Permintaan Sponsor
- Knowledge of coders, Pengetahuan yang mudah dipahami Programmer
- Languages used in previous and/or concurrent projects, Bahasa Pemrograman
yang digunakan proyek sebelumnya atau proyek yang berbarengan terkait
dengan Pengetahuan Programmer
- Availability and quality of language compiler, Ketersediaan dan kualitas
Kompiler Bahasa Pemrograman yang sesuai target hardware yang digunakan
- Availability of supporting software development tools, Ketersediaan Alat
Bantu Perangkat lunak Pendukung Editor, Debugger, Linker dan yang lainnya
- Portability, Sistem yang dikembangkan dapat beroperasi di berbagai
mesinkomputer dan berjalan pada aneka Sistem Operasi yang berbeda

Siklus pengembangan perangkat lunak atau sering disebut juga dengan siklus hidup
perangkat lunak. Model proses perangkat lunak (atau disebut juga paradigma rekayasa
perangkat lunak) adalah suatu strategi pengembangan yang memadukan lapisan
proses, metode, dan alat serta tahap-tahap generik. Model proses untuk rekayasa
perangkat lunak dipilih berdasarkan sifat proyek dan aplikasi, metode dan alat yang
digunakan, serta pengendalian dan hasil yang diinginkan. Berikut adalah beberapa
model proses pengembangan perangkat lunak.

Kemudian factor pengaruh lain nya yaitu rancangan kebutuhan aplikasi dan waktu
pengerjaan nya. Beberapa aplikasi memerlukan proses berulang-ulang agar menjadi
pertimbangan dalam memilih model proses yang cocok dengan perangkat lunak yang
akan dibuat serta disesuaikan waktu nya.

2. Hubungan antara model proses, metode pemrograman dan tools yang digunakan
dalam proyek pengembangan perangkat lunak merupakan suatu bagian dari rekayasa
perangkat lunak (software engineering). Dalam Rekayasa Perangkat Lunak dilakukan
Proses Perangkat Lunak dengan menggunakan model Proses yang merupakan Daur
Hidup Rekayasa Perangkat Lunak. Model Proses ini terdiri dari beberapa karakteristik
pendekatan proses. Dalam Proses pembangunan Perangkat Lunak perlu diketahui
Biaya yang dikeluarkan. Perangkat Lunak (Software) adalah source code pada suatu
program atau sistem. Perangkat lunak tidak hanya dokumentasi terhadap source code
tapi juga dokumentasi terhadap sesuatu yang dibutuhkan selama pengembangan,
instalasi, penggunaan dan pemeliharaan sebuah sistem. Engineering atau Rekayasa
adalah aplikasi terhadap pendekatan sistematis yang berdasar atas ilmu pengetahuan
dan matematis serta aplikasi tentang produksi terhadap struktur,mesin, produk, proses

ISYS6507 – Testing and System Implementation


atau sistem. Proses Perangkat Lunak dapat dikatakan sebagai aktifitas yang saling
terkait (koheren) untuk menspesifikasikan, merancang, implementasi dan pengujian
sistem perangkat lunak. Rekayasa Perangkat Lunak dilatar belakangi adanya
kebutuhan dari manusia dengan tuntutannya disamping dengan adanya perkembangan
hardware dan software yang ada semakin meningkat. Krisis Perangkat lunak yang
dipengaruhi dari berbagai pihak Engineer dengan latar belakang disiplin ilmu masing-
masing membuat pengaruh yang besar terhadap perkembangan perangkat lunak. Hal
ini membuat keinginan dipengaruhi oleh sisi pandang dari pihak developer, sponsor
dan pengguna.

3. Perbedaan model proses extreme programming (XP) dengan scrum.


XP dan scrum adalah 2 metodelogi yang termasuk dalam model Agile. Namun ada
perbedaan diantara kedua metode ini.
Berikut perbedaan antara XP dengan scrum:

Extreme programming scrum


Iterasi XP lebih pendek (1-2 minggu). Scrum sprint berlangsung 2-4 minggu.

Tim XP lebih fleksibel terhadap Biasanya tim scrum tidak memungkinkan


perubahan dalam iterasi. Misalnya; fitur perubahan dalam sprint. Misalnya;
yang belum mulai bekerja kapan saja setelah perencanaan sprint, set item sprint
dapat ditukar dengan beberapa fitur lain. itu tetap tidak berubah.
Urutan fitur yang dikembangkan oleh XP Urutan diputuskan oleh tim scrum.
adalah prioritas pelanggan.
Lebih banyak menitikberatkan pada Lebih banyak menitik beratkan pada
proses engineering. 8 dari 12 praktik manajemen proses dan peningkatan
dalam XP menitik beratkan pada secara organisasi.
pemrograman.

4. Persamaan model proses extreme programming (XP) dengan scrum.


XP dan scrum adalah dua metodologi yang termasuk kedalam model Agile. Tentu
persamaan dari kedua model ini terletak pada tujuan dan manfaat dari model Agile itu
sendiri, yaitu; - keduanya berfokus pada menghasilkan perangkat lunak yang
berfungsi dalam waktu singkat.
- Menekankan pentingnya komunikasi yang sering antar tim.
- Pengujian dilakukan pararel dengan pengembangan.

ISYS6507 – Testing and System Implementation


- Pengembangan berulang dan menggunakan umpan balik dari pengguna
sebagai mekanisme kontrol utama.
- Memberikan versi produk yang berfungsi sangat awal dengan memecah sistem
menjadi sub-bagian yang sangat kecil dan dapat dikelola, sehingga pelanggan
dapat menyadari beberapa manfaat sejak dini.

5. Black box : pengujian black box adalah pengujian yang berfokus pada persyaratan
fungsional perangkat lunak. Pengujian Black-box dirancang untuk memvalidasi
persyaratan fungsional tanpa memperhatikan cara kerja internal suatu program.
Berikut contoh pengujian black box pada belanja online :

No Pengujian Test Case Hasil yang Hasil Kesimpulan


. diharapkan pengujian

1 Melihat transaksi Memilih Muncul Sesuai valid


icon riwayat harapan
transaksi transaksi

2 Saat klik menu Tap icon Muncul Sesuai Valid


utama menu halaman harapan
utama akun dan
aktivitas
lainnya

3 Kotak pencarian Menginpu Hasil Sesuai valid


t barang keluar harapan
yang sesuai
dicari keyword

4 Melihat notifikasi Tekan Muncul Sesuai valid


tombol notifikasi harapan
notifikasi yang
masuk

5 Melihat barang Tekan Muncul Sesuai Valid


yang belum di keranjang barang harapan
bayar yang
masih
belum di
proses
(dibayar)

6 Melakukan login Username Masuk ke Sesuai Valid


: admin menu harapan
Password : utama
user123

ISYS6507 – Testing and System Implementation


White box : filosofi desain kasus uji yang menggunakan struktur kontrol yang
dideskripsikan sebagai bagian dari desain tingkat komponen untuk mendapatkan
kasus uji.

Contoh dari white box testing :

User Acceptance Testing (UAT) : merupakan proses verifikasi bahwa solusi yang
dibuat dalam sistem sudah sesuai untuk pengguna.

ISYS6507 – Testing and System Implementation


6. Stress testing juga dikenal sebagai pengujian daya tahan untuk menentukan batas, di
mana sistem atau perangkat lunak atau perangkat keras rusak. Tujuan dari stress
testing adalah mencoba memecahkan sistem dan menemukan keadaan di mana sistem
akan crash.
Tools dari stress testing yaitu :
a. Loadview : merupakan salah satu solusi lebih lengkap yang tersedia di pasar
dan saat ini didasarkan pada model layanan cloud. Ini berarti bahwa apapun

ISYS6507 – Testing and System Implementation


jenis simulasi yang Anda butuhkan dari mereka, Anda hanya membayar untuk
layanan - tidak ada investasi untuk perangkat keras atau apapun.
b. K6 cloud : adalah alat pengujian beban sumber terbuka berbasis cloud yang
disediakan sebagai layanan. Salah satu hal yang membuat alat ini menarik
adalah harganya menggunakan model penggunaan variabel yang berarti biaya
masuknya relatif rendah tergantung pada kebutuhan Anda.
c. Neo Load : tool ini dapat melakukan simulasi ribuan pengguna
untukmengevaluasi kinerja aplikasi yang sedang dimuat dan menganalisis
wakturespons. Tool ini juga mendukung cloud-integrated performance, load
dan stress testing, dan juga mudah untuk digunakan, hemat biaya, dan
memberikanskalabilitas yang baik
d. Jmeter : merupakan open source testing tool dan merupakan aplikasi
Javamurni yang digunakan untuk melakukan berbagai jenis pengujian seperti
load, functional, stress, dan jenis pengujian lainnya. Diperlukan JDK
(JawaDevelopment Kit) versi 5 atau lebih agar Jmeter dapat digunakan.

Security test adalah teknik pengujian untuk menentukan jika sistem informasi
melindungi data dan mempertahankan fungsi sebagaimana dimaksud, dengan
melakukan pengujian keamanan.
Tools dari security test yaitu :
a. Zed Attack Proxy (ZAP), merupakan security testing tool aplikasi web multi-
platform dan berupa open source. ZAP digunakan untuk menemukan
sejumlahkerentanan keamanan suatu aplikasi web selama tahap
pengembangan danpengujian. Berkat GUI-nya yang intuitif, ZAP dapat
digunkan dengan mudaholeh pemula. Selain itu, ZAP juga dapat digunakan
untuk mencegat proxy untuk menguji halaman web secara manual. ZAP
memperhatikan : Application error disclosure, Cookie not HttpOnly flag,
Missing anti-CSRF tokens and security headers dan Private IP disclosure
b. SQL map : merupakan tools untuk security testing yang mengizinkan
mengotomatiskan proses mendeteksi dan memanfaatkan kerentanan injeksi
SQL di database situs web, SQLMap sepenuhnya gratis untuk digunakan
c. Metasploit adalah Kumpulan alat penetrasi yang digunakan oleh pakar
keamanan cyber untuk mengelola evaluasi keamanan dan menemukan
kerentanan. dan digunakan untuk mengevaluasi kondisi keamanan
infrastruktur Anda

ISYS6507 – Testing and System Implementation


d. Nessus adalah alat berbayar, digunakan untuk memindai kerentanan di sistem
Anda. Mudah digunakan, ini juga menyediakan pemindaian cepat dan akurat
untuk sistem Anda. Hanya dengan mengklik tombol, itu juga dapat memberi
Anda hasil yang lengkap dan akurat tentang kelemahan jaringan Anda.

7. Berikut adalah kriteria tester yang kami inginkan dalam team kami yaitu antara lain
Hard Skills dan Soft Skills.

Hard Skills yang dibutuhkan tester yaitu :


- Mengerti Software Engineering
Memiliki pengetahuan teknis (Sotware Engineering) dapat membantu dalam
memberikan informasi kepada Software Programmer dan Engineer.
- Memahami Proses Bug Tracking, Ticketing dan Testing
- Memahami Produk
Untuk menguji efisiensi dari suatu produk, seorang tester harus mengenali
produk dengan baik. Termasuk bagaimana pengguna menggunakannya dan
apa yang diharapkan oleh pengguna dari produk tersebut.
- Time Management
Mampu bekerja dengan memahami apa yang perlu dilakukan segera atau apa
yang bisa dilakukan setelahnya adalah hal yang penting bagi seorang tester.

Soft Skills yang dibutuhkan tester yaitu :

- Komunikasi
Sebagai seorang tester memiliki kemampuan untuk berkomunikasi dengan
baik merupakan hal yang penting. Dalam melakukan pekerjaan, tester akan
berkomunikasi langsung dengan tim Product dan tim Development.
- Kemampuan Analisis dan Berpikir Logis
Saat melakukan tes terhadap suatu aplikasi, tester juga perlu mencari tahu apa
kekurangan dari aplikasi tersebut. Akan cukup membantu jika seorang tester
memiliki pemikiran yang logis, kreatif dan berwawasan luas.
- Memiliki Rasa Ingin Tahu dan Keinginan Untuk Belajar
- Kreatif
Dalam melakukan pengujian, seorang tester butuh kreativitas untuk
menemukan peluang di mana bug bersembunyi.
- Presisi dan Toleransi

ISYS6507 – Testing and System Implementation


Seorang tester harus dapat berorientasi pada detail untuk validasi produk yang
diberikan oleh Product Manager atau Designer agar dapat menguji dengan
skenario yang berbeda.
- Memiliki Etos Kerja
Etos kerja adalah salah satu skills yang penting dimiliki oleh setiap karyawan,
termasuk seorang tester. Dengan memiliki etos kerja yang bagus karyawan
tersebut akan mampu mengerjakan pekerjaan sesuai targetnya, fokus dan
teratur.
- Mampu Bekerja Dalam Tim
Mampu bekerja dalam tim artinya tester dapat menjalin kerja sama dengan
baik. Tester perlu menyampaikan serta menjelaskannya dengan cara yang
sopan dan diplomatis sehingga tidak ada yang merasa disalahkan. Selain itu
tester juga perlu mampu bekerja dengan baik dan sesuai jadwal agar tidak
mengganggu alur kerja rekan yang lain.

8. Pola pelaporan ke manager yang akan anda lakukan dalam proyek testing sebuah
system yaitu :
a. Menyampaikan berita buruk dengan cara yang baik.
Sangat penting untuk menghindari konflik dengan anggota tim proyek ketika
membahas masalah yang ada. Hasil laporan harus disajikan dengan baik dan
hati hati tanpa menyinggung tim pengembang
b. Akurasi dan audensi
Peningkatan akutasi dalam pengujian dan data catat yang dohasilkan oleh tim
informasi yang dikumpulkan dan rangkum semua data yang ada
c. Menyampaikan melalui dashboard hasil pengujian
Menceritakan laporan dengan menggunakan metric dan angka.

Sumber :

- http://klimaks.kwad5.com/skill-yang-harus-dimiliki-oleh-seorang-software-
tester-atau-quality-assurance/
- https://hackr.io/blog/top-10-open-source-security-testing-tools-for-web-
applications
- https://medium.com/doku-insight/security-testing-ee3476b09022

ISYS6507 – Testing and System Implementation


- https://www.webhostingsecretrevealed.net/id/blog/web-tools/load-testing-
tools/
- https://endangcahyapermana.wordpress.com/2017/03/14/pengujian-uat-user-
acceptance-test/
- https://glints.com/id/lowongan/black-box-testing/#:~:text=Black%20box
%20testing%20juga%20dikenal,menilai%20kebutuhan%20dan%20spesifikasi
%20software.
- https://socs.binus.ac.id/2020/07/02/teknik-dalam-white-box-dan-black-box-
testing/
- https://id.sawakinome.com/articles/technology/difference-between-extreme-
programming-and-scrum-2.html
- https://sites.google.com/site/idscrum/scrum-vs/scrum-vs-xp
- https://www.todaysoftmag.com/article/995/scrum-with-extreme-programming

ISYS6507 – Testing and System Implementation

Anda mungkin juga menyukai