RANCANG BANGUN ANTARMUKA GRAFIS
NETWORK MAPPER
Skripsi
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Diajukan oleh:
INNOSENSIO YUDHA PRATAMA 075314042
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
GRAPHICAL USER INTERFACE DESIGN AND
IMPLEMENTATION OF NETWORK MAPPER
A Thesis
Presented as Partial Fullfillment of the Requirements To Obtain the Sarjana Komputer Degree In Department of Informatics Engineering
Created by:
INNOSENSIO YUDHA PRATAMA 075314042
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
HALAMAN PERSEMBAHAN
TUHAN YESUS KRISTUS
Melalui berkat, penyertaan, serta bimbinganNya selama ini, akhirnya tugas
akhir ini dapat terselesaikan dengan baik. Segala puji dan syukur aku haturkan
kepada Dikau, ya Tuhan.
BUNDA MARIA
Sembilan hari lamanya aku memohon kepadaMu, Bunda dan Engkau
menjawab doaku itu. Sungguh suatu kebesaran dan cinta yang Dikau
tunjukkan.
ORANG TUA
Jarak, waktu, dan situasi yang telah memisahkan mereka tak menjadi
penghalang untuk memberikan perhatian, cinta, serta dukungan kepadaku.
Sungguh, apalah aku ini tanpa mereka. Terima kasih Papa, Mama.
KEKASIH dan PARA SAHABAT
Mereka orang-orang yang selama ini memberikan banyak pengalaman,
keceriaan, juga dukungan.
MOTTO
Pasrah saja, jadilah seperti air.
Aja rumangsa bisa, ning bisaa rumangsa
ABSTRAK
Network Mapper NMAP merupakan perangkat lunak dengan antarmuka berbasis teks yang banyak digunakan para administrator jaringan komputer untuk membantu menyelesaikan pekerjaan mereka. Tampilan antarmuka berbasis teks dari NMAP akan menyulitkan para adminstrator muda yang baru mempelajari ilmu jaringan komputer.
Pada tugas akhir ini, dibuat rancang bangun antarmuka grafis untuk Network Mapper dengan menggunakan metodologi prototyping. Antarmuka grafis Network Mapper ini dibangun dengan menggunakan bahasa pemrograman visual basic.NET.
ABSTRACT
Network Mapper NMAP is a software with text-based user interface that is
widely used by computer network administrators to help completing their job. The
text-based user interface would complicate the new and young administrators in
studying computer networks.
In this final project, a graphical user interface design Network Mapper was
developed using prototyping methodology. This graphical user interface design
for Network Mapper then was implemented using a visual basic.NET
programming language.
By using this graphical user interface for Network Mapper, users can
generate the commands and their parameters manually. Commands can then be
executed, and the results of the scan can be printed or saved into a file.
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa karena atas segala limpahan berkah serta bimbingan-Nya penulis dapat menyelesaikan skripsi dengan judul “RANCANG BANGUN ANTARMUKA GRAFIS NETWORK MAPPER”.
Penulisan skripsi ini diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Program Studi Teknik informatika Universitas Sanata Dharma Yogyakarta.
Dengan terselesaikannya penulisan skripsi ini, penulis mengucapkan banyak terima kasih kepada pihak-pihak yang telah membantu memberikan dukungan, baik berupa masukan ataupun berupa saran. Ucapan terima kasih ditujukan kepada
1. Orang tuaku yang tercinta yang telah memberikan segala dukungannya, secara moral, spiritual, dan juga material.
2. Bapak Iwan Binanto, M.Cs selaku dosen pembimbing yang telah memberikan dukungan, bantuan, dan dorongan baik ketika dalam proses perkuliahan sampai dengan penyelesaian skripsi ini.
3. Bapak Yosef Agung Cahyanta,.S.T,M.T. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
4. Ibu Ridowati Gunawan S.Kom,.M.T. selaku Ketua Jurusan Teknik Informatika Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
6. Bapak Bele Bau dan Antonius Dewangga yang turut mendukung persiapan ujian pendadaran.
7. Seluruh staff dan dosen Teknik Informatika Universitas Sanata Dharma yang telah memberikan bekal ilmu dan arahan selama penulis menempuh studi.
8. Seluruh teman-teman sesama mahasiswa, Teknik Informatika, angkatan 2007, 2006, 2005, 2008, 2009, 2010, Psikologi, angkatan 2007, 2008, Farmasi angkatan 2008, teman-temanku di kost, semua yang telah memberikan dukungan, motivasi, dan bantuan dalam menyelesaikan skripsi ini.
9. Semua pihak yang telah membantu penulisan baik secara langsung maupun tidak langsung, yang tidak dapat penulis sebut satu-persatu.
Dengan segala kerendahan hati, saya menyadari bahwa tugas akhir ini masih jauh dari sempurna, oleh sebab itu berbagai saran dan kritik untuk perbaikan tugas akhir ini sangat saya harapkan. Akhir kata semoga tugas akhir ini bermanfaat bagi semua pihak. Terima kasih.
Yogyakarta, 27 Februari 2012
DAFTAR ISI
LEMBAR JUDUL ... i
TITLE PAGE ... ii
HALAMAN PERSETUJUAN ... iii
HALAMAN PENGESAHAN ... iv
HALAMAN PERSEMBAHAN ... v
HALAMAN MOTTO ... vi
PERNYATAAN KEASLIAN KARYA TULIS ... vii
LEMBAR PERNYATAAN PERSETUJUAN ... viii
ABSTRAK ... ix
ABSTRACT ... x
KATA PENGANTAR ... xi
DAFTAR ISI ... xiii
DAFTAR GAMBAR ... xviii
DAFTAR TABEL ... xxii
1.1.Latar Belakang Masalah ... .. 1
1.2. Rumusan Masalah ... . 3
1.3. Batasan Masalah ... . 3
1.4. Tujuan dan Manfaat ... . 4
1.5. Metodologi Penelitian ... . 4
1.5.1. Prototyping ... . 5
1.5.1.1. Requirement Gathering ... . 5
1.5.1.2. Quick Design ... . 6
1.5.1.3. Mockup Test Drive ... . 6
1.6. Sistematika Penulisan ... . 7
II. TINJAUAN PUSTAKA ... 9
2.1. NMAP ... . 9
2.2.Interaksi Manusia dan Komputer (IMK) ... 10
2.2.1. Manusia ... 11
2.2.2. Komputer ... 12
2.2.3. Interaksi ... 12
2.3.Antarmuka Pengguna (User Interface) ... 12
2.4. Delapan Aturan Emas ... 13
2.5.Text Based dan GUI ... 16
2.5.1. Text Based atau Command-Line Interface ... 16
2.5.2. GUI ... 17
2.5.3. Komparasi ... 19
2.7.VB.NET ... 22
2.8. PENGOLAHAN KUESIONER ... 24
III. ANALISA dan PERANCANGAN SISTEM ... 28
3.1. GAMBARAN UMUM SISTEM ... 28
3.2. ANALISA SISTEM ... 29
3.3. ANALISA KEBUTUHAN ... 30
3.4. ANALISA SUMBER DAYA ... 30
3.4.1. PERANGKAT KERAS yang DIBUTUHKAN ... 31
3.4.2. PERANGKAT LUNAK yang DIBUTUHKAN ... 31
3.5. PERANCANGAN SISTEM ... 32
3.5.1. DIAGRAM ALIR ... 32
3.5.1.1. JALANKAN SCAN PROFIL ... 33
3.5.1.2. JALANKAN SCAN LANJUTAN ... 34
3.5.1.3. JALANKAN SCAN TERBIMBING ... 35
3.5.1.4. CETAK ... 36
3.5.1.5. PRATINJAU ... 36
3.5.1.6. SIMPAN KELUARAN ... 37
3.5.1.7. BUKA HALAMAN BANTUAN ... 37
3.5.1.8. BUKA HALAMAN “TENTANG” ... 38
3.5.2. USE CASE ... 38
3.5.2.1. DIAGRAM USE CASE ... 38
3.5.2.2. DEFINISI AKTOR ... 40
3.6. DESAIN ANTARMUKA ... 57 3.6.1. SPLASH SCREEN ... 57 3.6.2. DESAIN ANTARMUKA JENDELA SCAN MODE PROFIL 58
3.6.3. DESAIN ANTARMUKA JENDELA BANTUAN MODE
PROFIL ... 59
3.6.4. DESAIN ANTARMUKA JENDELA SCAN MODE
LANJUTAN ... 59
3.6.5. DESAIN ANTARMUKA JENDELA BANTUAN MODE
LANJUTAN ... 61
3.6.6. DESAIN ANTARMUKA JENDELA SCAN MODE
TERBIMBING ... 61
3.6.7. DESAIN ANTARMUKA JENDELA BANTUAN MODE
TERBIMBING ... 62 3.6.8. DESAIN ANTARMUKA “TENTANG NMAP GRAFIKAL” 63
IV. IMPLEMENTASI dan HASIL ... 64
4.1. FASE KONSTRUKSI dan PERCOBAAN ITERASI PERTAMA 64 4.1.1. IMPLEMENTASI PROGRAM ... 64 4.1.2. IMPLEMENTASI ANTARMUKA ... 101 4.2. FASE KONSTRUKSI dan PERCOBAAN ITERASI KEDUA ... 112 4.2.1. IMPLEMENTASI PROGRAM ... 114 4.2.2. IMPLEMENTASI ANTARMUKA ... 116
5.1. KUESIONER ... 120
5.1.1. MENGGUNAKAN KUESIONER PENELITIAN SEBELUMNYA ... 120
5.1.2. PENGUJIAN VALIDITAS dan RELIABILITAS ... 122
1. MEMODIFIKASI KUESIONER ... 122
2. UJI INSTRUMEN ... 123
3. UJI VALIDITAS ... 125
4. UJI RELIABILITAS ... 129
5.1.3. HASIL UJI VALIDITAS dan RELIABILITAS ... 134
5.1.4. DATA HASIL dari SAMPLE RESPONDEN ... 135
5.1.5. INTEPRETASI SKOR ... 138
VI. PENUTUP dan KESIMPULAN ... 141
6.1. KESIMPULAN ... 141
6.2. SARAN ... 142
DAFTAR PUSTAKA
DAFTAR GAMBAR
Gambar 1.1 : Model Prototyping ... 5
Gambar 2.1 : Screenshot NMAP ... 17
Gambar 2.2 : Tampilan Text Based yang Diubah ke dalam Bentuk Grafis ... 18
Gambar 2.3 : Visual Studio 2005 ... 22
Gambar 2.4 : Bahasa Pemrograman VB.NET ... 24
Gambar 3.1 : Proses Sistem yang Akan Dibuat ... 29
Gambar 3.2 : Diagram Alir Jalankan Scan Profil ... 33
Gambar 3.3 : Diagram Alir Jalankan Scan Lanjutan ... 34
Gambar 3.4 : Diagram Alir Jalankan Scan Terbimbing ... 35
Gambar 3.5: Diagram Alir Cetak ... 36
Gambar 3.6 : Diagram Alir Pratinjau ... 36
Gambar 3.7 : Diagram Alir Simpan Keluaran ... 37
Gambar 3.8 : Diagram Alir Buka Halaman Bantuan ... 37
Gambar 3.9 : Diagram Alir Buka Halaman “Tentang” ... 38
Gambar 3.11 : Desain Splash Screen ... 57
Gambar 3.12 : Desain Jendela Scan Mode Profil ... 58
Gambar 3.13 : Desain Jendela Bantuan Mode Profil ... 59
Gambar 3.14 : Desain Jendela Scan Mode Lanjutan ... 60
Gambar 3.15 : Desain Jendela Bantuan Mode Lanjutan ... 61
Gambar 3.16 : Desain Jendela Scan Mode Terbimbing ... 62
Gambar 3.17 : Desain Jendela Bantuan Mode Terbimbing ... 62
Gambar 3.18 : Desain Antarmuka “Tentang NMAP Grafikal” ... 63
Gambar 4.1 : Splash Screen ... 101
Gambar 4.2 : Form Mode Scan Profil ... 102
Gambar 4.3 : Pesan Kesalahan Belum Memilih Profil Scan ... 102
Gambar 4.4 : Pesan Kesalahan Isian Target Mode Profil ... 103
Gambar 4.5 : Jendela Bantuan Mode Profil ... 103
Gambar 4.6 : Form Mode Scan Lanjutan ... 104
Gambar 4.7 : Pesan Kesalahan Isian Target Mode Lanjutan ... 105
Gambar 4.8 : Jendela Bantuan Mode Lanjutan ... 106
Gambar 4.10 : Pesan Kesalahan Isian Target Mode Terbimbing ... 107
Gambar 4.11 : Jendela Bantuan Mode Terbimbing ... 108
Gambar 4.12 : Jendela Dialog Penyimpanan ... 109
Gambar 4.13 : Jendela Dialog Cetak ... 110
Gambar 4.14 : Jendela Pratinjau ... 111
Gambar 4.15 : Jendela “Tentang NMAP Grafikal” ... 112
Gambar 4.16 : Splash Screen Revisi 1 ... 116
Gambar 4.17 : Form Depan Mode Scan Profil Revisi 1 ... 117
Gambar 4.18 : Form Bantuan Mode Profil Revisi 1 ... 118
Gambar 4.19 : Jendela “Tentang NMAP Grafikal” Revisi 1 ... 119
Gambar 5.1 : Hasil Uji Validitas Kategori Perceived Usefulness ... 126
Gambar 5.2 : Hasil Uji Validitas Kategori Perceived Ease of Use ... 128
Gambar 5.3 : Kegunaan Persepsi Bernomor Ganjil ... 129
Gambar 5.4 : Kegunaan Persepsi Bernomor Genap ... 130
Gambar 5.5 : Hasil Uji reliabilitas Perceived Usefulness ... 131
Gambar 5.6 : Persepsi Kemudahan Penggunaan Bernomor Genap ... 132
DAFTAR TABEL
Tabel 3.1 : Definisi Aktor ... 34
Tabel 5.1 : Tabel Data Hasil Responden Kategori Perceived Usefulness ... 124
Tabel 5.2 : Tabel Data Hasil Responden Ketgori Perceived Ease of Use ... 124
Tabel 5.3 : Tabel Hasil Responden Sample Perceived Usefulness ... 135
Tabel 5.4 : Tabel Hasil Responden Sample Perceived Ease of Use ... 136
Tabel 5.5 : Intepretasi Skor Perceived Usefulness ... 139
BAB I
PENDAHULUAN
1.1. Latar Belakang Masalah
Ilmu pengetahuan dan teknologi berkembang dengan pesat, hal ini salah satunya dapat dilihat pada ilmu dan teknologi informatika. Penggunaan teknologi yang terkomputerisasi banyak diminati oleh banyak kalangan karena dapat membantu memenuhi kebutuhan mereka untuk menyelesaikan suatu permasalahan.
untuk membantu pengguna dalam mempelajari cara penggunaannya. Kedua, sistem dapat memudahkan pengguna dalam menyelesaikan permasalahan yang dihadapi. Sistem yang digunakan haruslah tepat guna, yang berarti pengguna dapat menyelesaikan sesuatu dan mendapat respon atau timbal balik sesuai dengan apa yang diinginkannya melalui sistem tersebut.
Kalangan informatika khususnya yang mendalami ilmu jaringan komputer tentu akan membutuhkan dan menggunakan berbagai tools atau perangkat lunak yang dapat membantu mereka menyelesaikan permasalahan. Namun, terdapat tools atau perangkat lunak yang menggunakan tampilan antarmuka berupa text based.
Antarmuka perangkat lunak text based memiliki kesulitan tersendiri untuk dipelajari dan digunakan, satu hal yang pasti ialah perangkat lunak ini memiliki banyak parameter pengaturan yang harus secara manual diketikan dengan tepat dan bahkan sensitive case. Hal ini tentu menyulitkan para profesional muda atau administrator jaringan baru karena diharuskan untuk membaca serta mengerti arti dan efek dari setiap perintah berikut tata cara pengetikannya. Sangat rentan bagi pengguna untuk melakukan kesalahan seperti lupa dengan option/parameter perintah apa yang harus digunakan atau salah mengetikannya sehingga terjadi error.
berbasis text yang telah ada sebelumnya yaitu NMAP (Network Mapper) yang berjalan pada sistem operasi Microsoft Windows.
Program atau aplikasi yang akan dibangun akan mengubah atau lebih tepatnya melakukan konversi format text DOS ke dalam bentuk ANSI dalam sistem operasi windows, sehingga dapat dibuat antarmuka grafis berdasar pada tool NMAP tersebut. Pembuatan apilkasi ini akan menyesuaikan dengan teori-teori interaksi manusia dan komputer, sehingga hasil akhirnya diharapkan memenuhi semua kriteria dalam ilmu tersebut.
1.2. Rumusan Masalah
Dari latar belakang di atas, dapat diambil rumusan masalahnya adalah bagaimana merancang bangun antarmuka grafis untuk NMAP agar lebih mudah digunakan.
1.3. Batasan Masalah
Penulis membatasi topik sebagai berikut:
1. Luaran yang dihasilkan berupa aplikasi dengan tampilan desktop.
3. Keluaran yang dihasilkan sistem berupa hasil asli (data mentah) dari scan NMAP.
4. Terdapat sembilan buah profil pilihan scan pada sistem yang akan dibuat.
1.4. Tujuan dan Manfaat
Tujuan dari penelitian ini adalah untuk merancang dan membangun tampilan antarmuka grafis pada NMAP yang sebelumnya berupa text based dengan menggunakan bahasa pemrograman VB.NET pada Visual Studio 2005. Diharapkan penelitian ini memberikan manfaat yang baik bagi penulis, pembaca atau pengguna, dan Universitas Sanata Dharma, Yogyakarta.
1.5. Metodologi Penelitian
Dalam melakukan suatu kegiatan selalu dibutuhkan cara atau metode, dengan maksud agar kegiatan tersebut dapat terlaksana dengan baik dan sesuai dengan yang diharapkan.
1.5.1. Prototyping
Seringkali, pengguna mendefinisikan satu set tujuan umum bagi perangkat lunak namun tidak mengidentifikasi secara rinci kebutuhan atau requirements input, proses, ataupun outputnya. Di lain pihak, pengembang mungkin tidak yakin terhadap efisiensi algoritma, sistem operasi yang mungkin digunakan, atau bentuk interaksi manusia dan komputer yang bagaimana yang harus digunakan. Dalam hal ini, metode prototyping mungkin menawarkan pendekatan yang terbaik.
Tahapan dalam metode ini adalah sebagai berikut:
Gambar 1.1 Model Prototyping
1.5.1.1. Requirements Gathering (Listen to Customers)
apa saja yang akan dibutuhkan, dan menguraikan definisi area-area lebih lanjut yang dipesan.
1.5.1.2. Quick Design (Mockup)
Sebuah “desain cepat” kemudian digunakan. Hal ini untuk memfokuskan pada aspek-aspek perangkat lunak yang akan terlihat pengguna (misal input dan format output). Penulis akan merancang tampilan aplikasi dengan menyesuaikan data yang masuk pada tahap sebelumnya.
1.5.1.3. Mockup Test Drive
Desain cepat mengarah ke pembangunan prototipe.
Alur dalam metodologi ini akan terus berjalan dan berputar sebagai iterasi hingga pengguna merasa bahwa aplikasi yang dibangun sudah sesuai dengan yang diinginkan.
Pada tugas akhir ini digunakan kuesioner untuk mengetahui respon dari pengguna terhadap uji coba sistem. Metode kuesioner yang digunakan mengacu pada metode yang dibuat oleh Fred F. Davis (1989).
1.6. Sistematika Penulisan
Sistematika penulisan pada tugas akhir ini adalah sebagai berikut:
BAB I : PENDAHULUAN
Menguraikan dan menjelaskan tentang: Latar belakang permasalahan, rumusan masalah, pembatasan masalah, tujuan dan manfaat, metodologi penelitian, serta sistematika penulisan.
BAB II : TINJAUAN PUSTAKA
BAB III : ANALISA dan PERANCANGAN SISTEM
Menerangkan mengenai analisa aplikasi yang dibuat, mulai dari analisa kebutuhan sistem hingga pembuatan model.
BAB IV : IMPLEMENTASI SISTEM
Menerangkan mengenai proses perancangan, implementasi, hingga pengujian sistem.
BAB V : ANALISA HASIL
Bab ini berisi tentang analisa sistem serta kelebihan dan kekurangan sistem.
BAB VI : PENUTUP
BAB II
TINJAUAN PUSTAKA
2.1. NMAP
Nmap ("Network Mapper") merupakan sebuah tool open source untuk eksplorasi jaringan dan audit keamanan dan dirancang untuk memindai jaringan-jaringan yang besar secara cepat, meskipun berfungsi dengan baik pula terhadap host tunggal. Nmap menggunakan paket IP raw untuk menentukan host-host apa sajakah yang terdapat dalam jaringan, layanan apa (nama dan versi aplikasi) yang disediakan oleh host, sistem operasi (dan versi OS) yang sedang berjalan, jenis paket filter / firewall yang sedang digunakan, dan puluhan karakteristik lain. Pada umumnya Nmap digunakan untuk audit keamanan, namun banyak administrator sistem dan jaringan menggunakannya untuk hal lain seperti pencatatan jaringan, mengelola jadwal upgrade layanan, dan pemantauan host atau uptime layanan.
(listening) koneksi / paket pada port tersebut. Filtered berarti bahwa firewall, filter, atau penghalang jaringan lainnya memblokir port sehingga Nmap tidak bisa mengatakan apakah port terbuka atau tertutup . Closed berarti tidak ada aplikasi yang mendengarkan port, meskipun port bisa terbuka kapan saja. Port diklasifikasikan sebagai unfiltered ketika mereka responsif terhadap probe Nmap, tetapi Nmap tidak dapat menentukan apakah port tersebut terbuka atau tertutup. Nmap melaporkan kombinasi status open|filtered dan closed|filtered ketika tidak dapat menentukan mana di antara dua status tersebut yang menggambarkan keadaan sebuah port. Tabel port mungkin juga menyertakan rincian versi software ketika parameter pilihan deteksi versi diminta.
Selain tabel port, Nmap dapat memberikan informasi lebih lanjut tentang target, termasuk nama reverse DNS, sistem operasi, jenis perangkat, dan alamat MAC. (Lyon, 2010).
2.2. Interaksi Manusia dan Komputer (IMK)
Definisi dari interaksi manusia dan komputer adalah sebagai berikut: 1. Sekumpulan proses, dialog, dan kegiatan di mana melaluinya
pengguna memanfaatkan dan berinteraksi dengan komputer. 2. Suatu disiplin ilmu yang menekankan pada aspek desain, evaluasi,
dan implementasi dari sistem komputer interaktif untuk kegunaan manusia dengan mempertimbangkan fenomena-fenomena di sekitar manusia itu sendiri.
3. Suatu studi ilmiah tentang masyarakat di dalam lingkungan kerjanya.
2.2.1. Manusia
Manusia dipandang sebagai sistem yang memproses informasi, yang bisa dijelaskan sebagai berikut:
1. Informasi diterima dan ditanggapi dengan proses masukan-keluaran (input-output).
2. Informasi disimpan di dalam ingatan (memory).
3. Informasi diproses dan diaplikasikan dengan berbagai cara.
Proses pemasukan dan pengeluaran yang terjadi pada manusia merupakan suatu pandangan yang terdiri dari dua tahap, yaitu:
2.2.2. Komputer
Komputer didefinisikan sebagai perangkat elektronik yang dapat dipakai untuk mengolah data dengan perantaraan sebuah program yang mampu memberikan informasi dan hasil dari pengolahaan tersebut. Komputer dapat pula diartikan sebagai suatu mesin yang menerima input untuk diproses dan menghasilkan output.
2.2.3. Interaksi
Interaksi membantu manusia, apa yang terjadi antara pengguna dan sistem komputer. Sistem interaksi menerjemahkan antara apa yang diinginkan oleh pengguna terhadap sistem yang ada. Hubungan antara pengguna dan komputer dijembatani oleh antarmuka pengguna (user interface).
2.3. Antarmuka Pengguna (User Interface)
antara keduanya. Pengguna hanya boleh berinteraksi dengan produk melalui antarmuka pengguna.
Peran antarmuka pengguna dalam kedaya-gunaan (usability) suatu sistem sangatlah penting. Oleh karenanya bentuk dan pembangunan antarmuka pengguna perlu dilihat sebagai salah satu proses utama dalam keseluruhan pembangunan suatu sistem.
Rekayasa bentuk antarmuka pengguna merupakan satu proses yang kompleks yang memerlukan daya kreatifitas yang tinggi, pengalaman, analisis yang terperinci, dan pemahaman terhadap kebutuhan pengguna. Antarmuka pengguna bisa diatur dengan menggunakan pilihan dari pembuat komputer, analis sistem, pemrogram, ataupun oleh pengguna itu sendiri. Walau bagaimanapun kebanyakan antarmuka pengguna direkayasa dan dibangun dengan menggunakan komputer.
2.4. Delapan Aturan Emas
Untuk meningkatkan kedayagunaan atau usability dari aplikasi maka penting untuk memiliki antarmuka yang dirancang dengan baik.
1. Konsistensi
Urutan tindakan yang konsisten mutlak diperlukan pada situasi-situasi yang serupa; Semua bagian antarmuka seperti menu dan halaman bantuan memiliki perintah yang konsisten secara keseluruhan.
2. Shortcut atau jalan pintas
Semakin meningkat frekuensi penggunaan suatu aplikasi, membuat pengguna ingin mengurangi jumlah interaksi dan meningkatkan kecepatan dalam berinteraksi dengan aplikasi tersebut. Secara singkat, tombol fungsi, perintah tersembunyi, dan fasilitas makro sangat membantu untuk pengguna expert.
3. Umpan balik yang informatif
Untuk setiap tindakan, harus ada umpan balik dari sistem. Untuk tindakan minor yang sering, umpan balik cukup sederhana, sedangkan untuk tindakan mayor dan jarang, respon harus lebih substansial.
4. Desain dialog untuk menghasilkan suatu penutupan
mereka, dan indikasi yang jelas untuk urutan tindakan yang berikutnya.
5. Penanganan error yang sederhana
Sedapat mungkin, sistem didesain sehingga pengguna dihindarkan dari membuat kesalahan yang serius. Jika kesalahan dibuat, sistem harus dapat mendeteksi kesalahan dan menawarkan mekanisme yang mudah dipahami untuk penanganan kesalahan.
6. Pembalikan tindakan
Fitur ini mengurangi kecemasan, karena pengguna tahu bahwa kesalahan dapat dibatalkan, sehingga mendorong eksplorasi.
7. Pengguna merupakan satu-satunya pengontrol sistem
Pengguna yang berpengalaman memiliki keinginan yang kuat untuk menguasai sistem sepenuhnya dan sistem merespon mereka. Sistem didesain untuk membuat pengguna sebagai orang yang mengontrol bukan yang merespon.
8. Mengurangi beban memori jangka pendek
2.5. Text Based dan GUI
Berikut akan dijelaskan perbedaan antara antarmuka berbasis text atau dalam bahasa inggris disebut text based atau command-line interface dengan antarmuka berbasis grafis atau bisa juga disebut graphical user interface.
2.5.1. Text Based atau Command-Line Interface
Merupakan sebuah mekanisme untuk berinteraksi dengan sistem operasi komputer atau perangkat lunak dengan mengetikkan perintah untuk melakukan tugas-tugas tertentu. Metode ini disebut sebagai metode "memasukkan" perintah, yaitu sistem menunggu pengguna untuk memasukkan perintah teks dan menekan tombol "Enter". Interpreter kemudian menerima, mengurai, dan menjalankan perintah yang diminta. Command-line interpreter dapat dijalankan dalam terminal text atau dalam sebuah jendela emulator terminal sebagai client remote shell. Output yang ditampilkan kepada pengguna berbentuk baris text pada antarmuka text based. Output bisa berupa jawaban jika perintah yang dimasukkan merupakan pertanyaan, atau hasil operasi yang dilakukan.
sistem dengan sumber daya yang tidak memadai untuk mendukung antarmuka grafis.
Antarmuka berbasis text sering digunakan oleh programmer dan administrator sistem dalam lingkungan teknik dan ilmiah yang secara teknis bersifat advanced.
Gambar 2.1 Screenshot Nmap
2.5.2. GUI
untuk pengguna melalui ikon grafis dan indikator visual. Memasukkan perintah dalam GUI biasanya dilakukan melalui manipulasi langsung pada elemen grafis.
Istilah GUI secara historis terbatas pada lingkup tampilan layar dua dimensi berresolusi yang mampu menampilkan informasi umum. Istilah GUI sebelumnya mungkin telah berlaku untuk jenis-jenis antarmuka berresolusi tinggi non-generic lainnya seperti video game atau tampilan volumetrik layar datar.
2.5.3. Komparasi
GUI diperkenalkan sebagai reaksi untuk mendalami kurva belajar (learning curve) dari command-line interface (CLI). Antarmuka berbasis text dapat memiliki banyak baris perintah operasi yang rumit yang dapat diselesaikan dengan menggunakan urutan singkat kata-kata dan simbol. Hal ini memungkinkan efisiensi dan produktivitas yang lebih baik. Tetapi untuk mencapai tingkat ini (menghasilkan sebuah GUI) membutuhkan waktu yang tidak singkat karena perintah-perintah yang tidak mudah ditemukan dan tidak bersifat mnemonic (dapat dihafal). Jendela aplikasi, ikon, menu, dan pointing device, di sisi lain, hadir dengan berbagai widget yang mewakili dan dapat menjalankan perintah yang tersedia untuk sistem.
Fitur-fitur dalam GUI ini secara ekstensif menggunakan modus-modus seperti mengklik atau mengetik pada posisi tertentu di layar yang dapat didefinisikan ulang sepanjang waktu. Sedangkan command line interface hanya menggunakan modus dalam bentuk yang terbatas, seperti direktori saat ini dan variabel-variabel.
Kebanyakan sistem operasi modern menyediakan baik GUI dan beberapa tingkatan CLI, meskipun GUI biasanya lebih banyak menjadi perhatian.
“pembungkus” dari CLI. Hal ini umum terutama dengan aplikasi yang dirancang untuk sistem operasi UNIX. Dengan cara ini para pengembang dapat tetap fokus pada fungsionalitas produk mereka tanpa harus merisaukan tentang rincian antarmuka seperti merancang ikon dan penempatan tombol. Mendesain program-program dengan cara ini juga memungkinkan pengguna untuk menjalankan program non-interaktif, misalnya di dalam Shell script.
2.6. Visual Studio 2005
Microsoft Visual Studio adalah satu set lengkap alat pengembangan untuk membangun aplikasi web ASP.NET, layanan Web XML, aplikasi desktop, dan aplikasi berbasis mobile (bergerak). Bahasa pemrograman tingkat tinggi di antaranya Visual Basic, Visual C++, Visual C#, dan Visual J # menggunakan Integrated Development Environment (IDE) yang sama. Hal ini memungkinkan untuk saling berbagi tools dan fasilitas yang sama dalam membangun solusi pemrograman bahasa campuran (mised-language). (Microsoft, 2011).
semua tingkatan aplikasi, termasuk menambahkan dukungan untuk sistem source-control (seperti Subversion dan VisualSafe) dan menambah toolset.
Visual Studio membolehkan untuk memasukkan berbagai jenis fungsionalitas. Fungsionalitas khusus dikodekan dengan VSPackage. Ketika diinstal, fungsionalitas ini berjalan sebagai service. IDE menyediakan tiga buah service, yaitu SVsSolution, yang menyediakan kemampuan untuk melakukan perhitungan terhadap project dan solution; SVsUIShell, yang menyediakan fungsionalitas windowing dan antarmuka; dan SVsShell, yang berkaitan dengan registrasi VSPackages. Selain itu, IDE juga bertanggung jawab untuk melakukan koordinasi dan komunikasi antar service. Semua editor, desainer, jenis project dan tools lainnya diimplementasikan sebagai VSPackages. Visual Studio menggunakan COM untuk mengakses VSPackag es. SDK dalam Visual Studio juga mencakup Managed Package Framework (MPF), yang merupakan sebuah set “pembungkus” pada COM-interface yang memungkinkan package untuk ditulis dalam bahasa yang CLI compliant. Namun bagaimanapun juga, MPF tidak menyediakan semua fungsionalitas yang terpapar di antarmuka Visual Studio COM.
Gambar 2.3 Visual Studio 2005
2.7. VB.NET
Visual basic merupakan sebuah bahasa pemrograman yang diperuntukkan bagi sistem operasi microsoft windows yang telah berumur lebih dari dua dekade pada saat ini. Debut pertamanya adalah pada 20 Maret 1991. Bahasa ini berakar pada bahasa pemrograman Ruby yang dikembangkan oleh Alan Cooper pada tahun 1988.
VB.NET merupakan bahasa pemrograman pertama dengan konsep berbasis obyek. Untuk benar-benar memanfaatkan VB. NET, seorang programmer perlu memahami prinsip-prinsip pemrograman berorientasi obyek dan bagaimana framework .NET bekerja.
VB.NET memiliki banyak keunggulan, di antaranya adalah:
2. Keterbacaan (readability). VB. NET menggunakan kata-kata yang mudah terbaca dan dimengerti oleh manusia.
3. Pengguna VB.NET masih memiliki background-compilation kode. Ini berarti, pengguna mendapatkankan umpan balik secara langsung dari compiler.
4. VB. NET bersifat case insensitive dan memiliki editor cerdas yang dapat mengubah secara otomatis penulisan deklarasi.
5. Tidak terdapat perubahan yang signifikan dari pendahulunya, yaitu VB6 yang lebih dahulu populer. Hal ini memudahkan programmer yang telah mempelajari VB6 untuk tidak terlalu banyak beradaptasi kembali dengan bahasa yang baru.
Gambar 2.4 Bahasa Pemrograman VB.NET
2.8. Pengolahan Kuesioner
Terdapat berbagai teknik yang dapat digunakan dalam pengumpulan data, salah satunya adalah teknik angket atau kuesioner. Teknik angket atau kuesioner adalah suatu pengumpulan data dengan memberikan atau menyebarkan daftar pertanyaan atau pernyataan kepada responden dengan harapan mendapatkan respon atas daftar pertanyaan tersebut (Umar, 2007). Kuesioner dapat berupa angket, checklist, ataupun skala.
A. Kuesioner yang digunakan
pengumpulan data yang digunakan adalah teknik kuesioner berupa skala. Kuesioner yang digunakan menggunakan yang telah ada sebelumnya, yaitu milik Fred F. Davis (1989) tentang penerimaan suatu teknologi, yang di dalamnya difokuskan pada dua konstruk teoritis, yaitu perceived usefulness dan perceived case of use.
Perceived usefulness adalah suatu tingkatan dimana seseorang percaya bahwa penggunaan suatu sistem tertentu akan meningkatkan prestasi kerja orang tersebut. Sedangkan perceived case of use adalah suatu tingkatan dimana seseorang percaya bahwa dengan menggunakan suatu teknologi tertentu akan membebaskan dari usaha.
Pada kuesioner Davis, jawaban dari responden menggunakan tipe skala Likert 7, yaitu “Sangat setuju sekali”, “Sangat setuju”, “Setuju”, “Ragu-ragu”, “Tidak setuju”, “Sangat tidak setuju”, “Sangat tidak setuju sekali”.
Skala Likert atau summated rating scale meminta responden untuk menyatakan kadar setuju atau tidak setuju tentang pernyataan-pernyataan terhadap obyek tertentu. Umumnya skala Likert dibuat dalam 5 atau 7 kategori atau tingkatan, dari yang sangat setuju sampai sangat tidak setuju.
B.Interpretasi skor
(s) dan varians (s2), skor minimum (Xmin) dan maksimum (Xmaks). Deskripsi data ini memberikan gambaran penting mengenai keadaan distribusi skor skala pada kelompok subyek yang dikenai pengukuran dan berfungsi sebagai sumber informasi mengenai keadaan subyek pada aspek atau variabel yang diteliti.
Menurut Azwar (2000), sekalipun skala psikologis (kuesioner berupa skala) yang ditentukan lewat prosedur penskalaan akan menghasilkan angka-angka pada level pengukuran interval, namun dalam interpretasinya hanya dapat dihasilkan kategori-kategori atau kelompok-kelompok skor yang berada pada level ordinal. Skor mentah (raw score) yang dihasilkan suatu kuesioner merupakan penjumlahan dari skor item-item dalam kuesioner tersebut. Jika berdiri sendiri, maka skor mentah belum dapat bercerita banyak mengenai individu yang diukur. Untuk memberikan makna yang memiliki nilai diagnostic, skor mentah perlu diderivasi dan diacukan pada suatu norma kategorisasi.
Mengkategorisasi subyek secara normatif dengan memanfaatkan statistik deskriptif memiliki beberapa cara, dimana yang digunakan penulis adalah kategorisasi berdasarkan model distribusi normal.
di sebelah kiri mean (bertanda negatif) dan tiga bagian berada di sebelah kanan mean (bertanda positif).
Terdapat dua kategorisasi dalam cara ini, yaitu kategorisasi Jenjang (ordinal) dan kategorisasi bukan jenjang (nominal). Penulis menggunakan kategori jenjang karena menggunakan skala Likert yang memiliki makna ketegorisasi berjenjang.
Tujuan kategorisasi jenjang adalah menempatkan individu ke dalam kelompok-kelompok yang terpisah secara berjenjang menurut suatu kontinum berdasar atribut yang diukur. Misalnya dari rendah ke tinggi atau dari sangat puas ke sangat tidak puas. Banyaknya jenjang kategori diagnosis yang akan dibuat biasanya tidak lebih dari lima tapi juga tidak kurang dari tiga.
BAB III
ANALISA dan PERANCANGAN SISTEM
Bab ini berisi tentang analisis dari sistem yang akan dibuat dan kebutuhan yang diperlukan dalam pembuatan sistem serta berisi tentang perancangan desain sistem network mapper dengan antarmuka grafis.
3.1. Gambaran Umum Sistem
Sistem yang akan dibuat merupakan aplikasi network mapper dengan antarmuka grafis (grafikal) yang menggunakan tool yang telah ada sebelumnya, yaitu nmap yang memiliki antarmuka text based.
Perangkat lunak atau tool yang digunakan, yaitu nmap (text based), berperan sebagai inti dari sistem yang akan dibuat, berguna untuk menjalankan perintah yang dimasukkan lalu menghasilkan keluaran yang diminta.
3.3. Analisa Kebutuhan
Analisa kebutuhan dalam pembuatan nmap grafikal ini dilakukan untuk menentukan segala sesuatu yang dibutuhkan dalam pembuatan sistem terhadap pengguna.
Kebutuhan pengguna pada sistem ini adalah sebagai berikut:
1. Pengguna dapat menggunakan sistem untuk menjalankan perintah nmap beserta parameternya.
2. Pengguna dapat menyimpan hasil scan ke dalam bentuk file *.txt. 3. Pengguna dapat mencetak hasil scan.
4. Pengguna dapat melakukan pratinjau terhadap hasil scan.
5. Pengguna dapat mencari tahu cara penggunaan program melalui menu “Bantuan”.
6. Pengguna dapat melihat profil program dan penulis melalui menu “Tentang”.
3.4. Analisa Sumber Daya
3.4.1. Perangkat Keras yang Dibutuhkan
Perangkat keras yang berada di bawah ini merupakan perangkat keras yang digunakan penulis dalam pembuatan sistem:
• Prosesor Intel Core i5
• Harddisk sebesar 640 GB
• VGA ATI Mobility Radeon
• RAM 4 GB
Perangkat keras di bawah ini merupakan perangkat keras minimal yang dibutuhkan untuk dapat menjalankan sistem yang dibuat:
• Prosesor Intel Pentium 4
• Harddisk kapasitas tersisa 200 MB
• RAM 512 MB
3.4.2. Perangkat Lunak yang Dibutuhkan
Perangkat lunak yang digunakan dalam pembuatan sistem ini adalah sebagai berikut:
• Sistem operasi Windows 7.
• Compiler menggunakan visual studio 2005.
• Acrobat PDF Reader.
• Engine NMAP textbased.
Perangkat lunak minimal yang dibutuhkan agar dapat menjalankan sistem adalah:
• Sistem operasi Windows XP.
• Acrobat PDF Reader.
• Engine NMAP textbased
3.5. Perancangan Sistem
3.5.1. Diagram Alir
Berisi konsep pembuatan program, sehingga proses pembuatannya dapat menjadi terstruktur dan didapatkan keluaran seperti yang diinginkan. Konsep ini tertuang dalam bentuk diagram alir yang menunjukkan tahapan-tahapan penyelesaian masalah.
3.5.1.1. Jalankan Scan Profil
Gambar 3.2 Diagram Alir Jalankan Scan Profil
3.5.1.2. Jalankan Scan Lanjutan
3.5.1.3. Jalankan Scan Terbimbing
3.5.1.4. Cetak
Gambar 3.5 Diagram Alir Cetak
3.5.1.5. Pratinjau
Mulai
Pilih menu “Pratinjau”
Proses pratinjau
Selesai
3.5.1.6. Simpan Keluaran
Mulai
Pilih menu “Simpan”
Isi nama file
Tentukan direktori penyimpanan
Proses simpan
Selesai Klik “Save”
Gambar 3.7 Diagram Alir Simpan Keluaran
3.5.1.7. Buka Halaman Bantuan
3.5.1.8. Buka Halaman “Tentang”
Gambar 3.9 Diagram Alir Buka Halaman “Tentang”
3.5.2. Use Case
Use case pada dokumen ini ada dalam dua bentuk, yaitu use case diagram dan use case naratif. Kedua use case ini menunjukkan fungsi-fungsi dari sistem serta bagaimana sistem berinteraksi dengan pengguna.
3.5.2.1. Diagram Use Case
Use case pengguna
Use case nmap grafikal
Pengguna
Gambar 3.10 Use Case Pengguna
Mode scan
Jalankan scan profil
Jalankan scan lanjutan
Cetak
Pratinjau
Simpan keluaran Jalankan scan terbimbing
Buka halaman “Bantuan”
3.5.2.2. Definisi Aktor
Tabel 3.1 Definisi Aktor
Nama use case Deskripsi use case
Pengguna Aktor yang menjalankan sistem, yaitu nmap grafis.
3.5.2.3. Use Case Naratif
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Jalankan mode scan profil
TIPE USE CASE
Sistem Bisnis
ID USE CASE: 1
PRIORITAS: Tinggi
SUMBER: -
AKTOR BISNIS PRIMER: Pengguna
AKTOR LAIN yang
BERPERAN:
-
STAKEHOLDERS LAIN
yang TERTARIK:
-
scan yang disediakan oleh sistem.
KONDISI AWAL: Sistem berada pada mode scan profil.
PEMICU: Digunakan saat pengguna ingin melakukan proses scan berdasar profil yang telah disediakan sistem.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Step 1:
Pengguna
menjalankan aplikasi.
Step 3:
Pengguna memilih satu profil scan yang diinginkan. berada pada mode scan standar.
AKTIFITAS LAIN: Alt-step 3:
Alt-step 5:
Jika pengguna tidak memasukkan target yang akan di-scan atau tidak memilih salah satu profil, maka sistem akan menampilkan pesan kesalahan.
Alt-step 5:
Jika pengguna menekan tombol “Kosongkan”, maka sistem akan kembali pada tampilan default mode standar.
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil melakukan proses scan pada mode standar.
KONDISI AKHIR: • Pengguna berhasil melakukan scan. • Pengguna menerima pesan kesalahan.
PROSEDUR BISNIS: Pengguna harus memilih salah satu profil scan lalu memasukkan target.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
• Harus dapat diakses oleh pengguna.
• Harus dapat menjalankan perintah masukan.
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
lanjutan Sistem Bisnis ID USE CASE: 2
PRIORITAS: Tinggi
SUMBER: -
AKTOR BISNIS PRIMER: Pengguna
AKTOR LAIN yang
DESKRIPSI Memilih parameter perintah scan dan target secara advanced untuk kemudian di-generate menjadi satu baris perintah utuh.
KONDISI AWAL: Sistem berada pada mode scan lanjutan.
PEMICU: Digunakan saat pengguna ingin melakukan proses scan dengan terlebih dulu memilih parameter perintah secara advanced.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Pengguna memilih
AKTIFITAS LAIN: Alt-step 3:
Pengguna menutup windows form mode scan lanjutan.
Alt-step 4:
Jika pengguna tidak memasukkan target yang akan di-scan, maka sistem akan menampilkan pesan kesalahan.
Alt-step 6:
sistem akan mengosongkan textbox perintah untuk mengulangi pemilihan perintah.
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil melakukan proses scan pada mode scan lanjutan.
KONDISI AKHIR: • Pengguna berhasil melakukan scan. • Pengguna menerima pesan kesalahan.
PROSEDUR BISNIS: Pengguna memilih parameter perintah scan, memasukkan target dan men-generate perintah scan. Sistem menjalankan perintah.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
• Harus dapat diakses oleh pengguna. • Harus dapat menerima masukan.
• Harus dapat men-generate perintah scan.
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Jalankan mode scan terbimbing
TIPE USE CASE
Sistem Bisnis
ID USE CASE: 3
PRIORITAS: Tinggi
SUMBER: -
AKTOR LAIN yang
DESKRIPSI Memilih kemampuan scan dan target untuk kemudian di-generate menjadi satu baris perintah utuh.
KONDISI AWAL: Sistem berada pada mode scan terbimbing.
PEMICU: Digunakan saat pengguna merasa bingung dengan dua mode lain dan membutuhkan bantuan untuk menghasilkan baris perintah yang di-generate berdasarkan kemampuan scannya.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Step 4: mode scan standar lalu menjalankan baris perintah yang telah
di-generate .
AKTIFITAS LAIN: Alt-step 3:
Pengguna menutup windows form mode scan terbimbing.
Alt-step 4:
Jika pengguna tidak memasukkan target yang akan di-scan, maka sistem akan menampilkan pesan kesalahan.
Alt-step 6:
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil melakukan proses scan pada mode scan terbimbing.
KONDISI AKHIR: • Pengguna berhasil melakukan scan. • Pengguna menerima pesan kesalahan.
PROSEDUR BISNIS: Pengguna memilih kemampuan scan, memasukkan target dan men-generate perintah scan. Sistem menjalankan perintah.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
• Harus dapat diakses oleh pengguna. • Harus dapat menerima masukan. • Dapat men-generate perintah scan.
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Cetak TIPE USE CASE Sistem Bisnis ID USE CASE: 4
PRIORITAS: Tinggi
SUMBER: -
AKTOR BISNIS PRIMER: Pengguna
AKTOR LAIN yang
BERPERAN:
STAKEHOLDERS LAIN
yang TERTARIK:
-
DESKRIPSI Mencetak keluaran proses scan yang dihasilkan oleh sistem.
KONDISI AWAL: Sistem aktif.
PEMICU: Digunakan saat pengguna ingin mencetak keluaran scan yang telah dilakukan.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
AKTIFITAS LAIN: Alt-step 3:
Pengguna tidak jadi menjalankan proses cetak dengan menutup windows form print atau menekan tombol “Cancel”.
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil melakukan proses cetak.
KONDISI AKHIR: • Pengguna berhasil melakukan proses cetak.
PROSEDUR BISNIS: Pengguna memilih pilihan cetak lalu menekan tombol “Print” untuk mencetak.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
• Harus dapat diakses oleh pengguna.
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Pratinjau TIPE USE CASE Sistem Bisnis ID USE CASE: 5
PRIORITAS: Tinggi
SUMBER: -
AKTOR BISNIS PRIMER: Pengguna
AKTOR LAIN yang
BERPERAN:
STAKEHOLDERS LAIN
yang TERTARIK:
-
DESKRIPSI Melakukan pratinjau sebelum menjalankan proses cetak untuk mengetahui tampilan dokumen setelah tercetak.
KONDISI AWAL: Sistem aktif.
PEMICU: Digunakan saat pengguna ingin melakukan pratinjau sebelum mencetak.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Step 1:
AKTIFITAS LAIN: Alt-step 2:
Pengguna menutup windows form print preview.
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil melakukan proses pratinjau.
KONDISI AKHIR: • Pengguna berhasil melakukan proses pratinjau.
PROSEDUR BISNIS: Pengguna memilih pilihan pratinjau.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Simpan Keluaran TIPE USE CASE Sistem Bisnis ID USE CASE: 6
PRIORITAS: Tinggi
SUMBER: -
AKTOR BISNIS PRIMER: Pengguna
AKTOR LAIN yang
DESKRIPSI Menyimpan keluaran hasil proses scan ke dalam bentuk file *.txt.
KONDISI AWAL: Sistem aktif.
PEMICU: Digunakan saat pengguna ingin menyimpan keluaran ke dalam bentuk file *.txt.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Step 1:
Pengguna memilih
Step 2:
pilihan “Simpan”.
Step 3:
Pengguna memilih tipe file dan nama file yang akan disimpan.
Step 4:
Pengguna menekan tombol “OK”
windows form save as.
Step 5:
Sistem menyimpan file dan menutup windows form save as.
AKTIFITAS LAIN: Alt-step 3:
Pengguna menutup windows form save as.
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil melakukan proses simpan keluaran.
KONDISI AKHIR: • Pengguna berhasil melakukan proses simpan keluaran.
PROSEDUR BISNIS: Pengguna memilih pilihan simpan keluaran lalu memasukkan nama file beserta ekstensi. Pengguna menyimpan file dengan menekan tombol “OK”
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Buka halaman “Bantuan”
TIPE USE CASE
Sistem Bisnis
ID USE CASE: 7
PRIORITAS: Tinggi
SUMBER: -
AKTOR BISNIS PRIMER: Pengguna
AKTOR LAIN yang
BERPERAN:
-
STAKEHOLDERS LAIN
yang TERTARIK:
-
DESKRIPSI Membuka menu pilihan bantuan yang berisi pedoman bagi pengguna untuk menggunakan sistem.
KONDISI AWAL: Sistem aktif.
PEMICU: Digunakan saat pengguna ingin mendapatkan bantuan untuk menggunakan sistem.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Pengguna memilih pilihan “Bantuan”.
Sistem menampilkan form baru yang berisi
tampilan bantuan berbentuk pdf.
AKTIFITAS LAIN:
-KESIMPULAN: Use case ini berhenti apabila pengguna berhasil memilih pilihan “Bantuan”.
KONDISI AKHIR: • Pengguna mendapatkan tampilan bantuan.
PROSEDUR BISNIS: Pengguna memilih menu pilihan “Bantuan”.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
• Harus dapat diakses oleh pengguna.
Rancang Bangun Antarmuka Grafis Network Mapper
Penulis : Innosensio Yudha Pratama Tanggal : 18 Juli 2011
Versi : 1.0
NAMA USE CASE: Buka halaman “Tentang”
TIPE USE CASE
Sistem Bisnis
ID USE CASE: 8
PRIORITAS: Tinggi
SUMBER: -
AKTOR LAIN yang
DESKRIPSI Membuka halaman “Tentang” yang berisi informasi aplikasi dan pembuat.
KONDISI AWAL: Sistem aktif.
PEMICU: Digunakan saat pengguna ingin mendapat informasi tentang aplikasi dan pembuat.
URUTAN AKTIFITAS
NORMAL:
AKSI AKTOR RESPON SISTEM
Step 1:
AKTIFITAS LAIN: Alt-step 2:
Pengguna menutup windows form “Tentang” dengan menekan tombol (X) atau “OK”.
KESIMPULAN: Use case ini berhenti apabila pengguna berhasil membuka windows form “Tentang”.
PROSEDUR BISNIS: Pengguna memilih menu pilihan “Tentang”.
BATASAN
IMPLEMENTASI dan
SPESIFIKASI:
• Harus dapat diakses oleh pengguna.
3.6. Desain Antarmuka
Desain antarmuka merupakan gambaran antarmuka sistem yang akan dibuat.
3.6.1. Splash Screen
Splash screen adalah sebuah form yang hanya didesain tanpa diberi kode program. Fungsinya adalah sebagai pembuka dan memperkenalkan nama program, versi, dan nama pembuatnya.
Gambar 3.11 Desain Splash Screen
NMAP GRAFIKAL
Versi
3.6.2. Desain Antarmuka Jendela Scan Mode Profil
Jendela scan mode profil merupakan jendela utama dan yang pertama kali muncul ketika program dijalankan. Pada jendela ini, terdapat dua buah menu form, yaitu menu “Scan” dan “Bantuan”, isian target yang akan di-scan, textbox yang akan berisi perintah nmap yang telah di-generate, pilihan profil scan, dua buah tombol, yaitu tombol “Jalankan” dan “Kosongkan”, dan sebuah multiple textbox yang akan berisi hasil scan. Isian target yang akan di-scan dan pilihan profil scan harus diisi/dipilih ketika menggunakan mode scan profil, apabila ketentuan ini ada yang dilanggar, maka sistem akan menampilkan pesan kesalahan.
Gambar 3.12 Desain Antarmuka Jendela Scan Mode Profil
Scan Bantuan
Jalankan
Kosongkan Mode Profil
Target :
Perintah :
3.6.3. Desain Antarmuka Jendela Bantuan Mode Profil
Jendela bantuan mode profil merupakan jendela yang menampilkan berkas pdf yang berisi tentang bantuan dalam menggunakan program NMAP Grafikal mode scan profil.
Gambar 3.13 Desain Antarmuka Jendela Bantuan Mode Profil
3.6.4. Desain Antarmuka Jendela Scan Mode Lanjutan
dapat menekan tombol “Ulangi” untuk mengulangi memilih pilihan scan. Apabila pengguna tidak mengisi target, sistem akan menampilkan pesan kesalahan.
Gambar 3.14 Desain Antarmuka Jendela Scan Mode Lanjutan
Bantuan
Perintah : Generate Ulangi
3.6.5. Desain Antarmuka Jendela Bantuan Mode Lanjutan
Jendela bantuan mode lanjutan merupakan jendela yang menampilkan berkas pdf yang berisi tentang bantuan dalam menggunakan program NMAP Grafikal mode scan lanjutan.
Gambar 3.15 Desain Antarmuka Jendela Bantuan Mode Lanjutan
3.6.6. Desain Antarmuka Jendela Scan Mode Terbimbing
Gambar 3.16 Desain Antarmuka Jendela Scan Mode Terbimbing
3.6.7. Desain Antarmuka Jendela Bantuan Mode Terbimbing
Jendela bantuan mode terbimbing merupakan jendela yang menampilkan berkas pdf yang berisi tentang bantuan dalam menggunakan program NMAP Grafikal mode scan terbimbing.
Gambar 3.17 Desain Antarmuka Jendela Bantuan Mode Terbimbing
Bantuan
Perintah : Generate Ulangi
3.6.8. Desain Antarmuka “Tentang NMAP Grafikal”
Jendela ini berisi uraian singkat tentang profil Pembuat, tentang apa itu NMAP, dan tentang program “NMAP Grafikal”.
Gambar 3.18 Desain Antarmuka “Tentang NMAP Grafikal”
Pembuat :
NMAP :
BAB IV
IMPLEMENTASI dan HASIL
Bab ini merupakan tahap pengkodean dari perancangan pada bab sebelumnya dan hasil implementasi program serta pengolahan hasil kuesioner dari responden (pengguna).
Dalam membangun aplikasi ini, implementasi sistem dibagi menjadi 2 yaitu implementasi program NMAP Grafikal pada visual studio 2005 dan implementasi program sesuai dengan hasil masukan dari kuesioner.
4.1. Fase Konstruksi dan Percobaan Iterasi Pertama
4.1.1. Implementasi Program
1. Form Depan (Mode Profil)
Form depan atau mode profil merupakan antarmuka utama dan yang pertama kali muncul ketika program dijalankan. Di dalam form depan ini terdapat method-method utama yang akan memproses masukan dari pengguna.
Option Explicit On Private m_OutputThread As Thread Private m_ErrorThread As Thread Private m_TextToAdd As String
Private Sub MainForm_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
Me.AcceptButton = Me.btnPerintah cmbProfil.Focus()
cmbProfil.SelectedItem = "<Profil scanning, pilih salah satu>"
Setelah variabel, modules, dan lingkungan selesai dibentuk, langkah berikutnya adalah membuat method-method yang akan digunakan dalam program. Method pertama yang akan dijalankan adalah “streamInput(String)”. Method ini merupakan method yang bertugas menerima masukan dari pengguna berupa perintah NMAP dalam format ANSI dan meneruskannya ke NMAP core (textbased), yang akan menjalankan perintah tersebut.
Ketika NMAP core (textbased) selesai menjalankan perintah, maka akan dihasilkan keluaran yang berformat DOS. Keluaran ini akan dibaca baris-perbaris oleh method “StreamOutput()” dan diubah formatnya ke dalam bentuk ANSI oleh method “ConvertOem(String)”.
Private Sub StreamInput(ByVal Text As String) m_Process.StandardInput.WriteLine(Text) m_Process.StandardInput.Flush()
Apabila terdapat kesalahan dalam pembacaan keluaran yang dihasilkan NMAP core, method “StreamError()” akan menampilkannya.
Proses berikutnya, setelah membaca keluaran yang telah dihasilkan NMAP core, adalah menampilkannya ke dalam program agar dapat disajikan ke pengguna. Terdapat dua buah method yang bertugas untuk ini, yaitu “AddText(String)” yang akan menangkap apa yang dihasilkan oleh “StreamOutput()” kemudian diteruskan ke method “AddTextToTextBox()” yang akan menampilkan keluaran ke textbox di dalam program.
Profil perintah NMAP dan parameter yang dihasilkan, mengambil contoh profil perintah pada apilkasi yang sudah ada sebelumnya, yaitu zenmap. Berikut ini merupakan kode program yang mengatur tentang pemilihan pilihan profil perintah NMAP melalui combobox:
Private Sub AddText(ByVal Text As String) Try
Private Sub AddTextToTextBox()
txtResults.AppendText(m_TextToAdd & ControlChars.NewLine)
txtResults.SelectionStart = txtResults.Text.Length
Private Sub cmbProfil_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
cmbProfil.SelectedIndexChanged
ElseIf cmbProfil.SelectedItem Is "Scan intens" Then profil = "nmap -T4 -A -v"
ElseIf cmbProfil.SelectedItem Is "Scan secara lengkap (mungkin lambat)" Then
profil = "nmap -sS -sU -T4 -A -v -PE -PP -PS80,443 -PA3389 -PU40125 -PY -g 53 --script all"
txtCommand.Text = profil
ElseIf cmbProfil.SelectedItem Is "Scan intens dan UDP" Then
Di dalam program ini, pengguna disediakan fitur/menu untuk menyimpan hasil scan ke dalam file berekstensi *.txt. Di dalam kode program, terlebih dahulu diset properties dari “SaveFileDialog1” yang merupakan fitur yang disediakan oleh visual studio untuk bahasa pemrograman ElseIf cmbProfil.SelectedItem Is "Scan intens tanpa ping" Then
ElseIf cmbProfil.SelectedItem Is "Scan ping" Then profil = "nmap -sn"
ElseIf cmbProfil.SelectedItem Is "Scan secara cepat" Then profil = "nmap -sV -T4 -O -F --version-light"
ElseIf cmbProfil.SelectedItem Is "Traceroute" Then profil = "nmap -sn --traceroute"
ElseIf cmbProfil.SelectedItem Is "<Profil scanning, pilih salah satu>" Then
VB.NET. Kemudian diset pula kode program yang akan melakukan penyimpanan file.
System.Object, ByVal e As System.EventArgs) Handles PrintToolStripMenuItem1.Click
printHasil = txtResults.Text
If PrintDialog1.ShowDialog = DialogResult.OK Then PrintDocument1.Print()
End If End Sub
Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
Dim rectDraw As New RectangleF(e.MarginBounds.Left, e.MarginBounds.Top, e.MarginBounds.Width,
e.MarginBounds.Height)
Dim sizeMeasure As New SizeF(e.MarginBounds.Width, e.MarginBounds.Height - PrintFont.GetHeight(e.Graphics)) strFormat.Trimming = StringTrimming.Word
e.Graphics.MeasureString(printHasil, PrintFont, sizeMeasure, strFormat, intChars, intLines)
stringForPage = printHasil.Substring(0, intChars)
Pengguna dapat menggunakan fitur/menu pratinjau (print preview) untuk melakukan pengecekan sebelum memutuskan untuk mencetak hasil scan.
2. Form Mode Scan Lanjutan
Form mode scan lanjutan merupakan form yang berisi pilihan-pilihan perintah NMAP yang lengkap, diciptakan bagi pengguna yang menginginkan untuk memilih perintah-perintah NMAP secara advanced. Di dalam mode ini, pilihan-pilihan perintah dikategorikan ke dalam 6 buah tab, sehingga dapat menimbulkan kesan rapi dan memudahkan pengguna. Dalam penggunaannya, ketika pengguna memilih opsi atau pilihan yang ada, maka keterangan bantuan akan muncul.
Dalam membangun form ini, terlebih dulu dilakukan definisi terhadap variabel dan set lingkungan.
Private Sub PrintPreviewToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PrintPreviewToolStripMenuItem2.Click
printHasil = txtResults.Text Dim pratinjau As New
Windows.Forms.PrintPreviewDialog()
pratinjau.Document = PrintDocument1 pratinjau.Show()
Berikut merupakan kode program untuk masing-masing tab yang ada dalam form ini.
Tab “Scan” memiliki 10 buah pilihan perintah. Tab ini mengkategorikan pilihan perintah yang berhubungan dengan metode-metode scanning NMAP.
Public Class FormScanLanjutan Dim param As String = "nmap"
Dim target, scanTCP, scanNonTCP, timing, A, O, V, I, b, n, IPv6 As String
Dim Pn, PP, PE, PM, PA, PS, PU, PO, PY As String Dim exclude, iR, p, F As String
Dim d, s, SourcePort, interfacee As String
Dim TTL, fragmen, verbosity, debugging, packettrace, r, traceroute, maxRetries As String
Dim hostTimeout, maxProbeTimeout, minProbeTimeout, initialProbeTimeout, maxHostgroup, minHostgroup, _ maxParallelism, minParallelism, maxScanDelay, scanDelay As String
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
cmbScanNonTCP.SelectedIndex = 0 cmbScanTCP.SelectedIndex = 0 cmbScanTiming.SelectedIndex = 0 btnUlang.Enabled = False
#Region "Tab Scan"
Private Sub cmbScanTCP_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
cmbScanTCP.SelectedIndexChanged
If cmbScanTCP.SelectedIndex = 1 Then scanTCP = " -sA"
txtKeterangan.Clear()
txtKeterangan.Text = "Mengirim probe dengan flag ACK. Port akan memiliki tanda filtered atau unfilterd. Berguna untuk memetakan aturan firewall."
ElseIf cmbScanTCP.SelectedIndex = 2 Then scanTCP = " -sF"
txtKeterangan.Clear()
txtKeterangan.Text = "Mengirim probe dengan bit set FIN. FIN scan dapat membedakan port yang tertutup, terbuka, atau filtered pada beberapa sistem."
ElseIf cmbScanTCP.SelectedIndex = 3 Then scanTCP = " -sM"
txtKeterangan.Clear()
txtKeterangan.Text = "Mengirim probe dengan FIN dan ACK bit set. Parameter ini dapat membedakan port yang terbuka, tertutup, atau filtered terhadap beberapa turunan sistem BSD."
ElseIf cmbScanTCP.SelectedIndex = 4 Then scanTCP = " -sN"
txtKeterangan.Clear()
txtKeterangan.Text = "Mengirim probe dengan men-set header flag TCP = 0. Null scan dapat membedakan port yang tertutup, terbuka, atau filtered pada beberapa sistem."
ElseIf cmbScanTCP.SelectedIndex = 5 Then scanTCP = " -sS"
txtKeterangan.Clear()
txtKeterangan.Text = "Mengirim probe dengan men-set flag SYN. Merupakan metode scan paling populer dan paling bermanfaat secara umum. Cara kerjanya dengan menghindari koneksi TCP secara penuh."
ElseIf cmbScanTCP.SelectedIndex = 6 Then scanTCP = " -sT"
txtKeterangan.Clear()
txtKeterangan.Text = "Scan menggunakan system call connect. Mirip SYN scan tapi kurang tersembunyi karena membuat koneksi TCP secara penuh. Merupakan parameter default ketika pengguna tidak memiliki hak untuk paket raw atau ketika melakukan pemeriksaan jaringan IPv6."
ElseIf cmbScanTCP.SelectedIndex = 7 Then scanTCP = " -sW"
txtKeterangan.Clear()
txtKeterangan.Text = "Sama dengan ACK scan,
ElseIf cmbScanTCP.SelectedIndex = 8 Then scanTCP = " -sX"
txtKeterangan.Clear()
txtKeterangan.Text = "Mengirim probe dengan flag FIN, PSH, dan URG, pencahayaan paket seperti sebuah pohon Natal. Xmas scan dapat membedakan port yang tertutup, terbuka, atau filtered pada beberapa sistem."
Else : scanTCP = ""
txtKeterangan.Clear()
txtKeterangan.Text = "Sorot atau klik menu yang akan dipilih untuk melihat deskripsinya."
End If End Sub
Private Sub cmbScanNonTCP_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
cmbScanNonTCP.SelectedIndexChanged
If cmbScanNonTCP.SelectedIndex = 1 Then scanNonTCP = " -sU"
txtKeterangan.Clear()
txtKeterangan.Text = "Scan port UDP yang pada umumnya lebih lambat dan lebih sulit untuk di-scan daripada TCP, dan sering diabaikan oleh auditor keamanan."
ElseIf cmbScanNonTCP.SelectedIndex = 2 Then di-scan (dengan nama reverse DNS jika tersedia)."
ElseIf cmbScanNonTCP.SelectedIndex = 4 Then scanNonTCP = " -sn"
txtKeterangan.Clear()
txtKeterangan.Text = "Melompati fase port
scanning. Fase lain (host, script scan, traceroute) mungkin masih berjalan."
ElseIf cmbScanNonTCP.SelectedIndex = 5 Then scanTCP = " -sY"
txtKeterangan.Clear()
txtKeterangan.Text = "SCTP adalah protokol lapisan 4 yang digunakan sebagian besar untuk aplikasi telephony. Merupakan penyetaraan SCTPdari TCP SYN stealth scan." ElseIf cmbScanNonTCP.SelectedIndex = 6 Then scanNonTCP = " -sZ"
txtKeterangan.Clear()
txtKeterangan.Text = "SCTP adalah protokol lapisan 4 yang digunakan sebagian besar untuk aplikasi telephony." Else : scanNonTCP = ""
txtKeterangan.Clear()
txtKeterangan.Text = "Sorot atau klik menu yang akan dipilih untuk melihat deskripsinya."