Pengembangan aplikasi remote spesifikasi desktop berbasis client server

(1)

SPESIFIKASI DESKTOP BERBASIS CLIENT SERVER

Oleh : Nurul Farhanah

106091002866

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA 2011


(2)

Skripsi ini terkhusus penulis persembahkan kepada mereka yang telah mendukung, baik moril maupun materiil, dalam menyelesaikan skripsi ini.

1. Teteh-tetehku Nunik, Isna, Zakiah, Hayatun, adik-adikku Zaenal, Imad, Ajat, ketiga kakak iparku Ka’didin, Abang Ozy, A’Jajang serta 4 keponakanku Anindya, Al-Ghifari, Aiman, Aufa yang telah menjadi tempat penulis melepaskan penat dalam penyusunan Skripsi ini.

2. Teman-Teman seperjuangan KKN 15 2009, Teknik Informatika UIN 2006, TI-Network, TI-A 2006 atas dukungan kalian semua.

3. Kepada sahabat-sahabatku yang selalu memotivasi selama ini Finna, Rizka Deti, Ofie, Mia, Shelvi, Jemi, Atieq, Ferry, Vsank, Qori, Desti, Ulan, Bana, Efa, Tri, Idam. 4. Untuk sahabat kecilku Vivi, Ita, Dini, Danis, Reagy, Yanti, Opick, Dessy, temen SD,

SMP ICM, MAN 2 Bogor, special thanks Mufti Noviar Awal buat waktu dan tenaganya dan Umay Bin Rohim buat semua support semangatnya.

5. Teman-teman satu dosen Pembimbing yang selalu mensupport dan saling mendo’akan.


(3)

syarat untuk memperoleh gelar Sarjana Komputer pada Program Teknik Informatika Jakarta, Februari 2011 Tim Penguji,

Penguji I Penguji II

Yusuf Durrachman M.Sc, MIT Viva Arifin, MMSI

NIP. 197105222006041002 NIP. 19730810 200604 2 001 Tim Pembimbing,

Pembimbing I Pembimbing II

Herlino Nanang, M.T, CCNA Andrew Fiade, M.Kom

NIP. 197312092005011002 NIP. 198208112009121004 Mengetahui,

Dekan Ketua Program Studi

Fakultas Sains Dan Teknologi Teknik Informatika

DR. Syopiansyah Jaya Putra, M.Sis Yusuf Durrachman M.Sc, MIT NIP. 196801172001121001 NIP. 197105222006041002


(4)

Skripsi

Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer

Fakultas Sains dan Teknologi

Universitas Islam Negeri Syarif Hidayatullah Jakarta Oleh

Nurul Farhanah 106091002866

Menyetujui,

Pembimbing 2

Andrew Fiade, M.Kom NIP. 198208112009121004 Pembimbing 1

Herlino Nanang, M.T, CCNA NIP. 197312092005011002

Mengetahui,

Ketua Program Studi Teknik Informatika

Yusuf Durachman, MSc, M.IT NIP. 197105222006041002


(5)

ATAU LEMBAGA MANAPUN.

Jakarta, Februari 2011

Nurul Farhanah 106091002866


(6)

dan Andrew Fiade, MKom.

Dalam sebuah jaringan komputer terdapat keinginan untuk mengorganisir jaringan secara terpusat berbasis client server, mengetahui spesifikasi komputer, penggunaan cpu, alokasi memori yang digunakan dan hardisk yang tersedia pada tiap komputer, dan mengendalikan client oleh servernya. Sehingga timbul masalah bagaimana cara spek komputer client dapat dikirim ke server, bagaimana mengendalikan komputer client dan memonitoring komputer client dan diharapkan menghasilkan aplikasi yang membantu dalam penghematan waktu dan tenaga dalam mengontrol aktivitas user pada jaringan. Maka dibuat aplikasi sederhana untuk melakukan pengecekan terhadap speksifikasi komputer client, pengendalian, dan pengawasan terhadap komputer yang berada pada jaringannya menggunakan bahasa pemrograman Delphi 7.0. Metodologi penelitian yang digunakan dalam pembuatan aplikasi ini adalah Rapid Aplication Development. Aplikasi ini dapat berjalan pada system operasi windows.

Kata Kunci : Client Server, Speksifikasi komputer, remote


(7)

Kuasa dan telah memberikan berkah dan anugerahNya kepada penulis sehingga penulis mampu melaksanakan tugas untuk menyelesaikan skripsi ini dengan sebaik-baiknya. Shalawat serta salam tak lupa juga penulis haturkan kepada junjungan kita Nabi Muhammad SAW.

Skripsi ini penulis buat sebagai syarat kelulusan dalam menempuh pendidikan jenjang Strata-1 (S1) di Universitas Islam Negeri Syarif Hidayatullah Jakarta. Selain itu juga penulis berharap apa yang penulis teliti, yang dijelaskan di dalam skripsi ini, dapat dipergunakan dengan baik oleh semua pihak yang membutuhkan, sehingga perkembangan ilmu pengetahuan dan teknologi khususnya di Program Studi Teknik Informatika UIN Syarif Hidayatullah Jakarta dapat lebih maju dan lulusannya dapat bekerja secara kooperatif dengan semua elemen informatika dari seluruh dunia.

Pada kesempatan ini, penulis mengucapkan terima kasih kepada pihak-pihak yang telah membantu penulis menyelesaikan skripsi ini :

1. Bapak Dr. Syopiansyah jaya Putra M.Sis selaku Dekan Fakultas Sains dan Teknologi.

2. Bapak Yusuf Durrachman M.Sc, MIT selaku ketua Program Studi Teknik Informatika atas kesempatan untuk dapat melakukan penelitian di Program Studi Teknik Informatika UIN Jakarta.


(8)

vii

4. Bapak dan Ibu penguji yang memberikan kritik dan saran pada skripsi ini. 5. Dosen-Dosen Fakultas Sains dan Teknologi yang telah mengajarkan

kepada penulis berbagai macam ilmu yang dapat penulis terapkan dalam penulisan skripsi ini.

6. Ayah Tercinta di Surga (Alm) Bapak Nawawi Iskandar dan Ibu Tersayang RM Muchlishoh, yang telah memberikan dukungan moril, semangat dan materiil sehingga memperlancar proses penyusunan skripsi ini.

Penulis menyadari masih terdapat banyak kekurangan dalam penelitian ini, baik penulisan maupun aplikasinya sendiri. Oleh karena itu penulis mengharapkan saran dan kritik yang dapat membangun skripsi ini lebih baik lagi.

Jakarta, Februari 2011


(9)

Halaman judul ... i

Persetujuan pembimbing ... ii

Halaman pengesahan ... iii

Halaman pernyataan ... iv

Abstrak ... v

Kata Pengantar ... vi

Daftar isi... viii

Daftar gambar ... xii

Daftar tabel ... xiv

Daftar lampiran ... xv

BAB I PENDAHULUAN 1.1. Latar Belakang ... 1

1.2. Perumusan Masalah ... 2

1.3. Pembatasan Masalah ... 3

1.4. Tujuan Penelitian ... 3

1.5. Manfaat Penelitian ... 4

1.6. Metodologi Penelitian ... 5

1.7. Sistematika Penulisan ... 7


(10)

2.3. Client-Server ... 10

2.4. Socket Programming ... 12

2.5. Internet Direct (Indy) ... 13

2.6. Protokol ... 16

2.6.1 Protokol TCP... 18

2.6.2 Protokol UDP... 20

2.7. Port Address ... 21

2.8. Borland Delphi 7.0 ... 22

2.9. Library WinAPI Sistem Windows ... 28

2.10.Unified Modelling Language (UML)... 29

2.11.Metode RAD ... 31

2.12.Studi Literature ... 32

BAB III METODOLOGI PENELITIAN 3.1. Metode Pengumpulan Data ... 37

3.1.1. Studi Pustaka... 37

3.1.2. Studi literature... 37

3.2. Metode Pengembangan Sistem ... 40

3.2.1. Perencanaan Syarat-Syarat ... 41

3.2.2. Perancangan ... 42


(11)

x BAB IV PEMBAHASAN

4.1. Fase Perencanaan syarat-syarat... 45

4.2. Fase Perancangan ... 46

4.2.1. Use case Diagram ... 46

4.2.2. Use case Scenario ... 48

4.2.3. Sequence Diagram ... 49

4.2.4. Perancangan User interface ... 51

4.3. Fase Konstruksi... 54

4.4. Fase Pengujian ... 75

4.4.1. Spesifikasi Komputer ... 75

4.4.2. Tipe jaringan yang digunakan ... 76

4.4.3. Hasil Pengujian ... 77

4.4.4. Pengujian Blackbox (Pengujian Mandiri) ... 88

BAB V KESIMPULAN DAN SARAN 5.1. Kesimpulan ... 90

5.2. Saran ... 91 DAFTAR PUSTAKA


(12)

Gambar 2.2 Format header TCP... 20

Gambar 2.3 Three Way Handshake (sumber Craig Hunt 1992) ... 20

Gambar 2.4 Format header UDP ... 21

Gambar 3.1 Fase-fase RAD ... 41

Gambar 3.2 Fase-fase metodologi RAD ... 44

Gambar 4.1 Usecase Diagram remote desktop komputer... 46

Gambar 4.2 Usecase Koneksi ... 47

Gambar 4.3 Usecase ambil data memori client ... 47

Gambar 4.4 Usecase remote desktop dan monitoring client ... 47

Gambar 4.5 Usecase Tutup Koneksi ... 48

Gambar 4.6 Sequence Diagram untuk koneksi ... 50

Gambar 4.7 Sequence Diagram untuk Ambil data hardware client ... 51

Gambar 4.9 Sequence Diagram untuk monitoring client ... 52

Gambar 4.10 Sequence Diagram untuk tutup koneksi ... 53

Gambar 4.11Aplikasi untuk server ... 54

Gambar 4.12 Aplikasi untuk client ... 54

Gambar 4.13 Koneksi remote desktop ... 54

Gambar 4.14 Remote control client ... 59

Gambar 4.15 Desain form aplikasi client... 56

Gambar 4.16 Tampilan apabila terjadi tutup koneksi ... 59


(13)

xiii

Gambar 4.20 Tampilan remote control client ... 72

Gambar 4.21 Tampilan untuk memulai remote control ... 73

Gambar 4.22 Tipe jaringan yang digunakan... 76

Gambar 4.23 interface aplikasi client... 76

Gambar 4.24 interface aplikasi server ... 77

Gambar 4.25 interface terkoneksi... 78

Gambar 4.26 Interface terkoneksi pada aplikasi client ... 79

Gambar 4.27 interface ambil data memori client ... 79

Gambar 4.28 interface ambil data memori client1...80

Gambar 4.29 Tampilan spesifikasi komputer client yang terhubung ...81

Gambar 4.30 Tampilan spesifikasi beberapa komputer client yang terhubung ... 81

Gambar 4.31 Interface pada saat monitoring client ...82

Gambar 4.32 Tampilan untuk memilih client yang akan di-monitoring...83

Gambar 4.33 Tampilan desktop komputer client yang di-remote...83

Gambar 4.34 tampilan menu dalam form remote client ...84

Gambar 4.35 tampilan menjalankan aplikasi pada client...84

Gambar 4.36 tampilan tutup koneksi pada server...84


(14)

Table 2.1 Jenis-jenis protocol berdasarkan layernya ... 17

Tabel 4.1. Use case Scenario Koneksi... 49

Tabel 4.2. Use case Scenario ambil data memori client... 49

Tabel 4.3. Use case Scenario Remote desktop dan monitoring client... 49

Tabel 4.4. Use case Scenario tutup koneksi ... 50

Tabel 4.5. Spesifikasi komputer untuk pengujian ... 75

Tabel 4.6. Hasil pengujian terhadap aplikasi spesifikasi basis client server .. 89


(15)

1.1 Latar Belakang

Local Area Network biasa disingkat LAN adalah sebuah jaringan komputer yang hanya mencakup wilayah kecil, seperti jaringan komputer laboratorium, gedung, kantor, dalam rumah, sekolah atau yang lebih kecil. Setiap node atau komputer dalam sebuah jaringan LAN mempunyai daya komputasi sendiri, dimana setiap komputer juga dapat mengakses sumber daya sesuai dengan hak akses yang telah diatur.

Akses terhadap komputer yang berada dalam satu jaringan dapat berupa pengaksesan terhadap file ataupun aplikasi. Termasuk pula pengaksesan dalam spesifikasi komputer yang sedang diakses. Akses terhadap spesifikasi komputer dalam satu jaringan bisa melalui pengontrolan atau pengendalian host-host dengan menggunakan aplikasi remote monitoring atau remote control komputer. Namun, remote monitoring pun memiliki keterbatasan dalam mengetahui spesifikasi komputer secara langsung.

Jaringan LAN client server adalah suatu sistem jaringan komputer yang memanfaatkan sebuah server atau beberapa server untuk dijadikan sebagai pusat pengontrol host atau node lainnya, dan juga server akan berfungsi sebagai penyedia fasilitas-fasilitas yang diperlukan untuk host/workstation di dalam suatu jaringan, dan workstation yang bertindak sebagai client hanya bisa menerima dan menggunakan fasilitas yang


(16)

disediakan oleh server komputer tersebut. Selain fasilitas yang disediakan server, bisa juga terjadi komunikasi antara client-server melalui chatting baik itu memakai aplikasi chatting portable ataupun memakai aplikasi chatting bawaan sistem operasi windows (contoh : net meeting).

Keinginan server untuk dapat mengorganisir jaringan secara terpusat, mengetahui spesifikasi komputer, penggunaan cpu, alokasi memori yang digunakan dan hardisk yang tersedia pada tiap komputer, keinginan untuk dapat berkomunikasi, serta keinginan untuk dapat mengendalikan serta mengontrol aktifitas client merupakan alasan dibuatnya aplikasi yang dapat memantau sekaligus mengetahui spesifikasi komputer pada client.

Aplikasi ini merupakan penggabungan dari konsep aplikasi remote monitoring dan aplikasi pendeteksi spesifikasi komputer yang telah ada sebelumnya. Dengan adanya aplikasi ini, diharapkan dapat mengefisiensikan waktu dalam melakukan pengecekan spesifikasi komputer client, sekaligus dapat memantau serta mengendalikan aktivitas yang sedang dilakukan oleh client.

Dengan latar belakang masalah tersebut, maka dengan ini penulis mengajukan judul skripsi : “Pengembangan Aplikasi Remote Spesifikasi Desktop Berbasis Client Server”.


(17)

1.2 Perumusan Masalah

Berdasarkan latar belakang permasalahan tersebut, dapat dirumuskan masalah yang harus dipecahkan yaitu :

1. Bagaimana menampilkan keterangan spesifikasi komputer client yang di kirim ke komputer server?

2. Bagaimana server dapat me-remote komputer client?

3. Aktivitas remote apa saja yang dapat dilakukan oleh server?

1.3 Pembatasan Masalah

Untuk menghindari meluasnya ruang lingkup yang dibahas pada penelitian ini, maka diberikan batasan masalah sebagai berikut:

1. Percobaan terhadap aplikasi ini hanya akan dilakukan dalam sebuah jaringan LAN.

2. Aplikasi ini terbagi 2, yaitu aplikasi client dan aplikasi server. 3. Aplikasi dijalankan dalam sistem operasi Windows.

4. Perangkat lunak yang akan digunakan untuk membangun aplikasi ini adalah Borland Delphi 7.

5. Antarmuka perangkat lunak akan dikembangkan dalam bahasa Inggris karena alasan banyaknya istilah asing yang bila dialih-bahasakan ke bahasa Indonesia akan menimbulkan kerancuan.

6. Methodologi yang digunakan pada penelitian ini adalah Rapid Aplication Development (RAD).


(18)

1.4 Tujuan Penelitian

Tujuan yang ingin dicapai oleh penulis dari penelitian ini adalah : 1. Menghasilkan sebuah aplikasi remote LAN yang dapat mengirim data

spesifikasi komputer client yang akan di tampilkan di aplikasi server. 2. Dengan aplikasi ini diharapkan server dapat memantau aktivitas user

melalui remote monitoring client yang merupakan dasar dari pengembangan aplikasi remote ini.

1.5 Manfaat Penelitian

Manfaat yang didapat dari penelitian ini adalah : 1. Bagi Penulis

a. Mengetahui lebih mendalam tentang remote LAN (tentang pembuatan, fungsi dan kegunaannya).

b. Menambah pengalaman, memperluas wawasan dalam mengembangkan potensi diri.

2. Bagi Pengguna

a. Mengefisiensikan waktu untuk mengetahui spesifikasi tiap-tiap node dalam jaringan LAN.

b. Mengakses komputer client dengan me-remote komputer client c. Monitoring terhadap komputer client


(19)

3. Bagi Universitas

a. Dapat menjadi sumbangan karya ilmiah dalam disiplin ilmu teknologi informasi.

b. Dapat dijadikan sebagai bahan bacaan atau acuan bagi peneliti lain yang berminat mengkaji permasalahan atau topik yang sama.

1.6 Metodologi Penelitian 1.6.1 Pengumpulan Data

Dalam melakukan pengumpulan data, penulis menggunakan dua metode, yaitu :

1. Studi Pustaka

Mengumpulkan data dari buku-buku di perpustakaan ataupun dari internet.

2. Studi Literature

Berdasarkan pengamatan penulis, pada penelitian sebelumnya terdapat beberapa penelitian yang hampir serupa dengan judul Pengembangan Aplikasi Remote Spesifikasi Komputer Berbasis Client Server, yaitu Rancang Bangun Aplikasi Remote untuk Administrasi LAN. literature aplikasi yang digunakan sebagai acuan adalah aplikasi remote monitoring. Pada aplikasi ini sepenuhnya me-remote jaringan LAN, dari aplikasi tersebut maka peneliti mengembangkan aplikasi remote LAN yang bisa memberikan informasi tentang memori client secara otomatis.


(20)

1.6.2 Pengembangan Aplikasi

Dengan mengacu pada latar belakang penelitian, perumusan dan pembatasan permasalahan, serta tujuan dan manfaat penelitian yang ada, penulis memutuskan untuk menggunakan model Rapid Aplication Development (RAD). Secara garis besar, RAD ini terdiri dari beberapa tahapan, yaitu:

a. Fase Perencanaan Syarat-Syarat

Fase dimana menentukan tujuan dan syarat-syarat terbentuknya suatu sistem.

b. Fase Perancangan

Fase di mana perancangan proses-proses yang akan terjadi dalam aplikasi, perancangan basis data dan perancangan antarmuka.

c. Fase Konstruksi

Pada tahapan ini dilakukan tahap pengkodean terhadap rancangan-rancangan yang telah didefinisikan.

d. Fase Pelaksanaan

Pada tahap ini dilakukan pengujian terhadap sistem dan pengenalan terhadap aplikasi.

Model RAD ini sebenarnya hampir sama dengan model waterfall, bedanya siklus pengembangan yang ditempuh model ini sangat pendek dengan penerapan teknik yang cepat.


(21)

1.7 Sistematika Penulisan

Dalam skripsi ini, penulis menjabarkan penelitian “Pengembangan Aplikasi Remote Spesifikasi Desktop Berbasis Client Server” dalam 5 (lima) bab, yaitu :

BAB I PENDAHULUAN

Bab ini berisi pengantar berupa latar belakang dilakukannya penelitian, perumusan masalah, pembatasan masalah, tujuan, serta manfaat yang dapat diambil dari penelitian ini.

BAB II LANDASAN TEORI

Bab ini berisi pembahasan teori-teori yang digunakan sebagai panduan dasar dalam pengembangan sistem ini.

BAB III METODOLOGI PENELITIAN

Bab ini berisi metodologi penelitian yang digunakan serta langkah-langkah yang digunakan terkait dengan penelitian yang dilakukan.

BAB IV ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi hasil pengujian aplikasi yang meliputi spesifikasi komputer, sistem operasi, bahasa pemograman dan design jaringan yang digunakan pada saat pengujian dalam bentuk screen shoot.


(22)

BAB V KESIMPULAN DAN SARAN

Bab ini merupakan bab penutup yang berisi kesimpulan serta saran yang dapat membantu pengembangan aplikasi ini di masa yang akan datang.


(23)

2.1 Pengembangan

Pengembangan adalah kegiatan ilmu pengetahuan dan teknologi yang bertujuan memanfaatkan kaidah dan teori ilmu pengetahuan yang telah terbukti kebenarannya untuk meningkatkan fungsi, manfaat, dan aplikasi ilmu pengetahuan dan teknologi yang telah ada, atau menghasilkan teknologi baru (Undang-undang Republik Indonesia Nomor 18 Tahun 2002).

Pengembangan dapat juga berarti memperbaiki, menggabungkan, menambahkan atau menggantikan sistem yang rusak. Pada penelitian ini pengembangan yang dilakukan adalah mengembangkan aplikasi remote monitoring dengan menambahkan remote spesifikasi data komputer berbasis client server.

2.2 Aplikasi

Program aplikasi adalah program siap pakai. Program yang direka untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain. Contoh-contoh aplikasi ialah program pemproses kata dan Web Browser. Aplikasi akan menggunakan sistem operasi (OS) komputer dan aplikasi yang lainnya yang mendukung.


(24)

Aplikasi adalah program yang digunakan orang untuk melakukan sesuatu pada sistem komputer, meskipun aplikasi disertakan sebagai bagian dari sistem operasi. [wiki.freepascal.2010]

Dari pengertian aplikasi diatas dapat dipahami bahwa ciri dari aplikasi antara lain siap pakai sehingga pada penelitian ini aplikasi remote yang diharapkan dapat langsung dipakai dan tentunya mudah dalam menggunakan atau pemakaian.

2.3 Client- Server

Client-server yaitu jaringan komputer dengan komputer yang didedikasikan khusus sebagai server. Sebuah service/layanan bisa diberikan oleh sebuah komputer atau lebih.

Server adalah komputer yang dapat memberikan service ke client, sedangkan client adalah komputer yang mengakses beberapa service yang ada di server. Ketika client membutuhkan suatu service yang ada di server, dia akan mengirim request kepada server lewat jaringan. Jika request tersebut dapat dilaksanakan, maka server akan mengirim balasan berupa service yang dibutuhkan untuk saling berhubungan menggunakan socket.

1. Karakteristik Server a. Pasif


(25)

c. Menerima request, memproses mereka dan mengirimkan balasan berupa service

2. Karakteristik Client a. Aktif

b. Mengirim request

c. Menunggu dan menerima balasan dari server

Gambar 2.1 Contoh client server dengan 5 client 1 server

Client/Server merupakan teknologi pendistribusian kerja aplikasi antara dua komputer atau lebih, yang dihubungkan oleh jaringan komunikasi, dimana yang satu akan bertindak sebagai client atau peminta layanan, dan yang lainnya sebagai server, atau pemberi layanan. Baik client ataupun server memiliki pemroses atau CPU sendiri, sedangkan jaringan yang digunakan bisa berupa jaringan lokal (LAN) ataupun jaringan yang lebih luas lagi (WAN). [Nurrachyanto, Edy. 2010]


(26)

Dalam model Client/Server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah, tapi masih merupakan sebuah kesatuan yakni komponen client dan komponen server.

2.4 Socket Programming

Socket adalah sebuah endpoint untuk komunikasi didalam jaringan. Sepasang proses atau thread berkomunikasi dengan membangun sepasang socket, yang masing-masing proses memilikinya. Socket dibuat dengan menyambungkan dua buah alamat IP melalui port tertentu. Secara umum socket digunakan dalam client/server system, dimana sebuah server akan menunggu client pada port tertentu. Begitu ada client yang menghubungi server maka server akan menyetujui komunikasi dengan client melalui socket yang dibangun.

Socket Programming adalah protokol yang mempunyai metode untuk membuat koneksi antara perangkat dalam jaringan. Terdapat dua tipe socket yang paling sering digunakan yaitu “Stream Socket” dan “Datagram Socket” yang lebih dikenal dengan “SOCK_STREAM” and “SOCK_DGRAM”. Datagram Socket disebut dengan “Connectionless socket” sedangkan Stream Socket lebih reliable dibandingkan Datagram Socket karena terciptanya komunikasi dua arah yang memungkinkan kecilnya data error pada saat transmisi data. [unamedplayer. 2010]

Socket Programming merupakan pemrograman ke arah protocol jaringan untuk menghubungkan komunikasi antara proses remote dan


(27)

local. Salah satu library yang digunakan saat menggunakan socket programming adalah winsock (windows socket). Winsock dapat didefinisikan dan didokumentasikan oleh standard API (Application Programming Interface). Socket programming juga untuk mengetahui bagaimana menggunakan socket API.

Pemograman socket Diantaranya dapat mengimplementasikan protocol jaringan UDC, HTTP, ICMP, DNS.

2.5 Internet Direct (Indy)

Indy digunakan untuk membuat aplikasi yang menggunakan protocol jaringan. Indy adalah komponen open source yang terdiri dari protocol internet yang sudah begitu popular, seperti HTTP, FTP, SMTP, TCP, UDP, Gopher, Whois dan lain–lain. Karena open source maka semua kode program yang ada dapat dikembangkan kembali. Kemudahan indy yang lain yaitu mendukung protocol sampai 120 protokol. (pujon online- www.pherie.my-php.net)

Protokol jaringan adalah software yang digunakan untuk menghubungkan komputer dalam jaringan supaya dapat saling berkomunikasi. Protokol terdiri dari aturan-aturan yang dipakai dalam berkomunikasi. Protokol yang banyak digunakan untuk menghubungkan komputer dalam jaringan, antara lain ATM, Apple Talk, DCL, Net BEUI, NWLink IPX/SPX, TCP/IP, dan lain-lain.


(28)

Komponen internet direct (indy) digunakan untuk aplikasi jaringan berbasis Client Server. Aplikasi jaringan yang dibuat dengan komponen indy terhubung dalam sebuah jaringan Local Area Network (LAN), komponen indy terbagi menjadi dua group utama yaitu indy server dan indy client dimana indy server ditempatkan pada aplikasi server sedangkan indy client ditempatkan pada aplikasi client.

Internet langsung (Indy) adalah seperangkat komponen Internet open source, meliputi hampir semua protokol Internet yang populer. Ditulis dengan Delphi Indy, yang termasuk dalam Delphi 6, Kylix 1 dan C + + Builder 6 dan di atas dalam semua versi lingkungan pengembangan Borland.

Komponen dalam internet direct atau indy antara lain : 1. IdICMPClient

Internet Control Message Protocol (ICMP) adalah protokol yang bertugas mengirimkan pesan-pesan kesalahan dan kondisi lain yang memerlukan perhatian khusus. Pesan atau paket ICMP dikirim jika terjadi masalah pada layer IP dan layer atasnya (TCP/UDP).


(29)

2. TIdIPWatch

Komponen ini digunakan untuk mendapatkan informasi IP Address yang terdapat dalam komputer yang sedang aktif.

3. Proxy HTTP

Hypertext Transfer Protocol (HTTP) merupakan protokol komunikasi yang digunakan untuk men-transfer informasi pada World Wide Web. Fungsi originalnya adalah menyediakan cara untuk mem-publish dan menerima halaman HTML hypertext. HTTP merupakan protokol request/response antara client dan server. Client membuat sebuah HTTP request, seperti web browser. Server – merupakan komputer yang menyimpan atau membuat file HTML. Sebuah client HTTP akan menginisialisasi sebuah request dengan membangun sebuah koneksi TCP ke port

80 (default) , Sebuah Server HTTP akan „mendengarkan‟ port.

Saat menerima request, server akan mengirimkan kembali status seperti : “(HTTP/1.1 200) OK”, dan sebuah message untuk dirinya sendiri.

4. Whois

Merupakan sebuah protocol query yang berbasis TCP yang digunakan untuk melakukan query ke database untuk menentukan pemilik dari sebuah domain name, alamat IP.


(30)

Kegunaaan dari data yang diberikan oleh WHOIS (hasil query), dapat digunakan untuk melakukan validasi untuk Certificate Authority misalnya untuk registrasi ecommerce dan sebagainya.

5. TIdUdpServer dan TIdUdpClient

UDP (User Datagram Protocol ) merupakan salah satu protokol lapisan transport TCP/IP yang mendukung komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara host-host dalam jaringan yang menggunakan TCP/IP.

[Andrew fiade.2010]

2.6 Protokol

Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer. Protokol dapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras.

Dalam membuat protokol ada tiga hal yang harus dipertimbangkan, yaitu efektivitas, kehandalan, dan Kemampuan dalam kondisi gagal di network. Agar protokol dapat dipakai untuk komunikasi diberbagai pembuat perangkat maka dibutuhkan standarisasi protokol. Banyak lembaga dunia yang bekerja untuk standarisasi protokol. Yang saat ini


(31)

banyak mengeluarkan standarisasi protokol yaitu IETF, ETSI, ITU, dan ANSI. [Wikipedia. 2010]

Macam-macam Protokol berdasarkan layernya sebagai berikut : Table 2.1 Jenis-jenis protocol berdasarkan layernya

Layer Protokol dan Fungsi

Physical Layer

ETHERNET Berfungsi untuk mendefinisikan media transmisi jaringan, metode pensinyalan, sinkronisasi bit, arsitektur jaringan

Data-link Layer

 PPP (Point to Point Protocol) mengontrol proses pengiriman frame dari pengirim ke penerima agar tidak terjadi penumpukan frame yang menyebabkan hilangnya frame sebelumnya, hal ini terjadi karena buffer penerima belum mengambil frame yang harus diterimanya

ETHERNET Berfungsi untuk mendefinisikan media transmisi jaringan, metode pensinyalan, sinkronisasi bit, arsitektur jaringan

Network Layer

 ICMP (Internet Control Message Protocol) bertugas mengirimkan pesan-pesan kesalahan dan kondisi lain yang memperhatikan perhatian khusus

 ARP (Address Resolution Protocol) bertugas menemukan hardware address suatu host dengan alamat IP tertentu  RARP (Reverse Address Resolution Protocol) bertugas

menerjemahkan hardware address menjadi IP address suatu host.

 IP (Internet Protocol) bertugas untuk menyediakan cara terbaik untuk membawa datagram dari sumber ketujuan, tanpa

memperdulikan apakah mesin yang bersangkutan berada pada jaringan yang sama atau tidak, atau apakah terdapat jaringan-jaringan lainnya antara sumber dengan tujuan atau tidak. Transport

Layer

 UDP (User Datagram Protocol) Conectionless oriented atau protocol yang melakukan proses pengiriman data dengan cara tanpa adanya nomor urut atau pesan acknowledgment

 TCP (Transmission Control Protocol) Conection oriented protocol yang menggaransi tiap pengiriman data, maksudnya Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket positive acknowledgment dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP (protocol


(32)

data unit dalam protokol TCP) akan ditransmisikan ulang

Session Layer  RPC (Remote Procedure Call) Protocol Berfungsi untuk

mendefinisikan bagaimana koneksi dapat dibuat, dipelihara, atau dihancurkan

Presentation Layer

 XDR (External Data Representation) Protocol Berfungsi untuk mentranslasikan data yang hendak ditransmisikan oleh aplikasi ke dalam format yang dapat ditransmisikan melalui jaringan. Protokol yang berada

 VTP Fungsi dari VTP untuk presentation layer adalah : a. Membuat dan memelihara struktur data

b. Translating karakteristik terminal ke bentuk standard Application

Layer

 NIS (Network Information System)

 NFS (Network File System) dapat mengizinkan klien-klien untuk menemukan dan mengakses berkas yang disimpan di dalam server jaringan jarak jauh

 POP3 protokol untuk mengambil surat elektronik dari server.  IMAP sejenis dengan POP3 tetapi memiliki fitur yang lebih

lengkap.

 HTTP (Hypertext Transfer Protocol, lebih sering terlihat sebagai http) adalah protokol yang dipergunakan untuk mentransfer dokumen dalam World Wide Web (WWW). Protokol ini adalah protokol ringan, tidak berstatus dan generik yang dapat

dipergunakan berbagai macam tipe dokumen.

2.6.1 Protokol TCP

Transport Control Protokol (TCP) merupakan protokol yang berada pada layer transport dari layer TCP/IP. TCP adalah protokol yang bersifat byte stream, connection-oriented dan reliable dalam pengiriman data. TCP menggunakan komunikasi byte stream artinya data dinyatakan sebagai suatu urutan byte. connection-oriented berarti sebelum terjadi proses pertukaran data antar komputer terlebih dahulu harus dibentuk suatu hubungan. Sebagai contoh


(33)

analogi adalah proses pendialan nomor telepon dan akhirnya terbentuk suatu hubungan.

Kehandalan TCP dalam mengirim data didukung oleh mekanisme yang disebut Positive Acknowledgemenr with Re-transmission data yang dikirim akan dipecah dalam bagian kecil dan diberi nomor urut sebelum dikirimkan ke layer berikutnya. TCP selalu meminta konfirmasi setiap kali selesai mengirimkan data, apakah sampai tujuan dan tidak rusak. jika berhasil maka akan dilakukan pengiriman segment berikutnya. jika gagal atau hilang atau rusak maka akan dilakukan pengiriman ulang. Berikut ini format header TCP

Gambar 2.2 Format header TCP

Model komunikasi dua arah antara komputer sisi kirim dan sisi terima sebelum terjadi proses pengiriman data disebut handshake. tipe handshake yang digunakan dalam TCP adalah Three-way handshake, karena menggunakan tiga segmen yaitu pembentukan


(34)

koneksi, sinkronisasi segmen dan pemberitahuan besar data yang diterima pada saat antara sisi kirim dan sisi terima. Proses sederhana three way handshake sebagai berikut.

Gambar 2.3 Three Way Handshake (sumber Craig Hunt 1992)

2.6.2 Protokol UDP

User Datagram Protokol (UDP) merupakan protokol yang juga berada pada layer transport selain TCP. Protokol ini bersifat connectionless dan unreliable dalam pengiriman data. connectionless berarti tidak diperlukannya suatu bentuk hubungan terlebih dahulu untuk mengirimkan data. Unreliable berarti pada protokol ini data tidak dijamin akan sampai pada tujuan yang benar dan dalam kondisi yang benar pula. Kehandalan pengiriman data pada protokol ini menjadi tanggung jawab dari program aplikasi pada layer diatasnya. Format header UDP sebagai berikut :


(35)

Gambar 2.4 Format header UDP

Jika dibandingkan dengan TCP, UDP adalah protokol yang lebih sederhana karena proses yang digunakan lebih sedikit. oleh karena itu aplikasi yang menggunakan protokol UDP dapat mengirimkan data tanpa melalui proses koneksi terlebih dahulu. header yang dimiliki oleh UDP pun lebih kecil. Protokol UDP sering diimplementasikan untuk aplikasi yang mengarah proses realtime seperti aplikasi multimedia.

2.7 PortAddress

Aplikasi Internet cukup banyak. Agar tidak bentrok satu sama lain maka masing-masing aplikasi telah di beri jalur khusus yang diberi nama port. Port dapat dianalogikan dengan “virtual slot” di dalam “stack” TCP/UDP. Port digunakan untuk memetakan koneksi antara 2 host, antara layer TCP/UDP dan aplikasi actual yang berjalan pada host.

Port Number merupakan nomor dengan tipe integer yang digunakan sebagai identifikasi atau layanan dari client yang ingin melakukan komunikasi.


(36)

Port diberi nomor 0 s.d 65535. Port dengan range 0-1023 dinamai reserved” atau “privilegedport. Artinya port-port di wilayah tersebut sudah digunakan untuk berbagai aplikasi yang khas, seperti telnet, mail, web, ftp, dan sebagainya. Sedangkan sisanya(1024 s.d 65535) disebut sebagai “dynamic” atau “unprivilegedport.

Port 0 s.d 1023 hampir selalu digunakan sebagai port untuk aplikasi server yang sudah umum. Sebagai contoh, server FTP menggunakan port 21/20, SMTP menggunakan port 25, HTTP menggunakan port 80, dan seterusnya. Port dengan range 1024 s.d 65535 biasanya bersifat dinamis. Contohnya, ketika client melakukan koneksi ke server maka port yang digunakan oleh client adalah port dinamis.

Ketika aplikasi (server) siap untuk menerima request yang datang. Maka dimulai koneksi ke port number. Ini alasannya beberapa aplikasi atau protocol digunakan sebagai interchangeably dengan kata port. Ketika client akan melakukan pembicaraan ke server, maka client harus mengetahui aplikasi tersebut (IP address) dan port untuk mendengarkan.

2.8 Borland Delphi 7.0

Delphi adalah sebuah bahasa pemrograman dan lingkungan pengembangan perangkat lunak. Produk ini dikembangkan oleh CodeGear sebagai divisi pengembangan perangkat lunak milik Embarcadero, divisi tersebut sebelumnya adalah milik Borland. Bahasa Delphi, atau dikenal pula sebagai object pascal (pascal dengan ekstensi pemrograman


(37)

berorientasi objek (PBO/OOP)) pada mulanya ditujukan hanya untuk Microsoft Windows, namun saat ini telah mampu digunakan untuk mengembangkan aplikasi untuk Linux dan Microsoft .NET framework (lihat di bawah). Dengan menggunakan Free Pascal yang merupakan proyek opensource, bahasa ini dapat pula digunakan untuk membuat program yang berjalan di sistem operasi Mac OS X dan Windows CE.

Umumnya delphi lebih banyak digunakan untuk pengembangan aplikasi desktop dan enterprise berbasis database, tapi sebagai perangkat pengembangan yang bersifat general-purpose ia juga mampu dan digunakan dalam berbagai jenis proyek pengembangan software.

Delphi menawarkan Rapid Application development (RAD), dimana pemogram dapat menghasilkan aplikasi dengan cepat pada lingkungan visual. Programmer banyak bekerja dengan menyusun form, banyak menggunakan mouse dengan sedikit menggunakan keyboard. saat dirilis tahun 1995 untuk windows 16-bit. Delphi 2, dirilis setahun kemudian, mendukung lingkungan windows 32-bit, dan versi c++, C++Builder, dirilis beberapa tahun kemudian.

Borland Delphi 1

Delphi 1, dirilis pada 1995 untuk 16-bit Windows 3.1 dan merupakan contoh awal dari apa yang kemudian dikenal sebagai Rapid Application Development (RAD) tool. Delphi 1 adalah penerus dari Turbo Pascal dan Borland Pascal. Delphi kode ditulis dalam dialek bahasa pemrograman Pascal yang dikenal sebagai Object Pascal .


(38)

Borland Delphi 2

Delphi 2, dirilis pada 1996 , didukung lingkungan 32-bit Windows. Ini termasuk Delphi 1 dibundel bersama-sama untuk menciptakan 16-bit Windows 3.1 aplikasi.

Borland Delphi 3

Dirilis pada tahun 1997, memperkenalkan beberapa fitur baru seperti teknologi code insight, DLL Debugging, template komponen, komponen DecisionCube dan TeeChart, teknologi WebBroker dan integrasi dengan COM melalui interface. Delphi 3 dinyatakan sebagai tools yang sangat komprehensif untuk pengembangan pemrograman visual dan client/server.

Borland Delphi 4

Dirilis pada tahun 1998, memperkenalkan teknologi docking, anchoring dan constraining pada komponen. Menambahkan fitur AppBrowser, array dinamis, method overloading, mendukung Windows 98, peningkatan dukungan OLE dan COM sebagai dukungan tambahan untuk koneksi database.

Borland Delphi 5

Borland Delphi 5 dirilis pada 1999 . Kylix

Pada 2001, dirilis Delphi versi Linux, bernama Kylix. Kylix didasarkan pada kerangka kerja lintas-platform baru CLX, VCL bukan sebagai Delphi.


(39)

Borland Delphi 6

Upaya untuk mendukung pengembangan lintas platform Linux dan Windows maka dibuat alternative dengan merilis Delphi 6 dan menambahkan support Linux dengan produk Delphi. Delphi 6 termasuk versi CLX sama seperti (CLX 1) sebagai Kylix versi pertama. Sejak CLX dibuat sebelum Delphi 6, set fitur yang didasarkan pada VCL 5 yang menciptakan beberapa kerugian bagi CLX yang tidak memiliki beberapa fitur dibandingkan dengan VCL 6 dikirimkan dengan Delphi 6.

Borland Delphi 7

Delphi 7, dirilis pada bulan Agustus 2002, menjadi versi standar yang digunakan oleh pengembang Delphi lebih dari satu versi lain. Ini adalah salah satu IDE paling sukses yang dibuat oleh Borland karena stabilitas, kecepatan dan persyaratan perangkat keras rendah dan tetap aktif digunakan untuk tanggal ini.

Delphi 7 menambahkan dukungan untuk Windows XP Tema, dan menambahkan lebih banyak dukungan untuk membangun aplikasi Web. Ini juga merupakan versi terakhir dari Delphi yang dapat digunakan tanpa aktivasi.

Kebutuhan Sistem Agar delphi versi 7.0 ini dapat dioperasikan dengan baik anda membutuhkan perangkat keras dan perangkat lunak dengan spesifikasi tertentu. Delphi memerlukan perangkat keras (Hardware) dengan ruang hard disk dan memori yang relatif besar untuk untuk pembuatannya tetapi untuk pemakaiannya/menggunakan hasil file


(40)

Aplikasinya tidaklah membutuhkan spesifikasi yang besar, tergantung besar kecilnya program yang kita terapkan pada komputer tersebut, Spesifikasi minimal yang dibutuhkan antara lain :

 Processor pentium 233 MHz atau yang lebih tinggi.

 Sistem operasi windows XP, windows 2000 atau windows 98.  Memori membutuhkan RAM 64 MB untuk edisi Architect,

Enterprise, dan propesional, kecuali untuk personal 32 MB disarankan 128 MB.

 Untuk Hard disk minimal size yang kosong sebesar 500 Megabyte.

 Mouse,Keybord.dan lain-lain. Kelebihan Borland Delphi 7.0

Borland delphi 7.0 merupakan pilihan bagi sebagian kalangan programmer untuk membuat aplikasi. Hal ini disebabkan kelebihan yang ada pada borland delphi 7.0 berikut ini beberapa kelebihan borlan delphi 7.0 antara lain :

 Berbasis Objek Oriented programming, seperti bagian yang ada pada program dipandang sebagai suatu objek yang mempunyai sifat-sifat yang dapat diubah dan diatur, sehingga kita dapat membuat tampilan sebuah program dengan desain kita sendiri tanpa harus membuat codding yang panjang.

 Suatu file EXE, setelah anda merancang program pada IDE Delphi akan mengkomplikasinya pada sebuah file executable


(41)

tunggal. Program yang anda buat dapat langsung didistribusikan dan dijalankan pada komputer lain tanpa perlu menyertakan file lain, kecuali file yang beretensi *.exe atau Applikasi tersebut membutuhkan file lain seperti database, koneksi atau file pendukung lainnya, ini merupakan kelebihan yang sangat berarti.  Borland delphi 7.0 hadir bersama borland Kylix 3 yang berbasis

Linux, bila ingin berganti flattform dari Windows ke Linux maka aplikasi yang dibuat di Delphi dapat dijalankan di Kylix 3 yang dikarenakan kedua produk tersebut merupakan produk Borland.[Joshua,Adriel Favian. 2010]

Dalam penggunaan Borland Delphi 7.0 untuk perancangan aplikasi ini diperlukan tambahan beberapa komponen yaitu NMM dan alite skin.

NMM (Network-Integrated Multimedia Middleware) merupakan opensource. NMM memungkinkan seorang programmer untuk membuat aplikasi multimedia terdistribusi: lokal dan remote perangkat multimedia atau komponen perangkat lunak dapat dikontrol secara transparan.

NMM tersedia untuk Linux, Windows, MacOS, serta sistem operasi lainnya. dapat digunakan sebagai teknologi untuk secara lokal memungkinkan operasi aplikasi multimedia, tetapi lebih penting untuk semua jenis sistem multimedia jaringan dan didistribusikan - mulai dari sistem embedded dan mobile, untuk PC, untuk cluster komputasi skala besar.


(42)

Alite alpha skin control merupakan komponen standard dan unik yang digunakan untuk desain pengembangan aplikasi multimedia. Komponen ini bersifat open source maka dapat di unduh di http://www.alphaskins.com/dwnld.php. Kelebihan dari komponen ini adalah mudah untuk memberikan tampilan yang lebih menarik. Instalasi kedua komponen ini dapat dilihat pada lampiran

2.9 Library WinAPI Sistem Windows

API adalah sebuah library atau fungsi windows untuk mengeksekusi sebuah perintah yang ada di dalam semua tampilan windows , sebagai contoh untuk tampilan desktop ,screen saver ,shutdown computer.

Antarmuka Pemrograman Aplikasi Windows (berasal dari Bahasa Inggris: Windows Application Programming Interface), yang sering disebut sebagai WinAPI atau Windows API adalah sekumpulan antarmuka pemrograman aplikasi yang dibuat oleh Microsoft dalam inti sistem operasi Microsoft Windows buatannya. Semua program Windows, kecuali program konsol, harus berinteraksi dengan Windows API tanpa melihat dengan bahasa apa ia dibuat.

Hampir pada setiap peluncuran versi baru Windows, Microsoft memperkenalkan API baru terhadap Windows API. Meskipun demikian, nama dari panggilan API tersebut tetap dipertahankan dan konsisten antara satu versi dengan versi yang lainnya, dan perubahan nama pun mungkin


(43)

dilakukan jika memang terjadi di sana perubahan besar-besaran pada platform Windows itu sendiri. Microsoft pun kemudian akan mengubah nama keluarga Win32 API yang digunakan saat ini menjadi Windows API, dan membuatnya dapat digunakan oleh semua versi API sistem operasi Windows.[Wikipedia.2009]

2.10 Unified Modelling Language (UML)

UML adalah sebuah "bahasa" yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.

UML berorientasi objek menerapkan banyak level abstraksi, tidak bergantung proses pengembangan, tidak tergantung pada bahasa dan teknologi, pemaduan beberapa notasi di beragam metodologi.

UML mendefinisikan diagram-diagram berikut ini : 1. Use case diagram

2. Class diagram 3. Behaviour diagram :

a. statechart diagram b. activity diagram 4. Interaction diagram :

a. sequence diagram b. collaboration diagram 5. Component diagram


(44)

6. Deployment diagram

Kelebihan UML :

1. Dapat merepresentasikan sebuat object di kehidupan dalam bentuk document analisa.

2. Berorientasi object karena pendekatannya dimulai dari object oriented programming metode pemrograman saat ini, dimana sebelumnya metode programming adalah terstrutur & sequential, sehingga UML lebih jelas menggambarkan apa yang dapat di analisa dalam OOP.

3. Ada beberapa software yang dapat lansung men-create source/coding (code generator) tanpa melakukan programming telebih dahulu asal proses analisa jelas dan sudah dipetakan ke dalam UML

4. Sebagai bahasa UML digunakan untuk komunikasi, yaitu alat untuk menangkap pengetahuan (semantik) mengenai suatu subjek dan mengapresiasikan subjek sebagai suatu komunikasi. subjek merupakan sistem yang dibahas.


(45)

2.11 Metode RAD

Pada penelitian ini membatasi metode yang digunakan adalah Rapid Application Development (RAD). RAD merupakan salah satu metode pengembangan suatu sistem informasi dengan waktu yang relatif singkat. Tujuan utama dari semua metode system development adalah memberikan suatu sistem yang dapat memenuhi harapan dari para pemakai.

Pada metode ini terdiri dari 4 tahapan yaitu : a. Fase Perencanaan Syarat-Syarat

Fase dimana menentukan tujuan dan syarat-syarat yang dibutuhkan untuk memenuhi kebutuhan dalam pengembangan system.

b. Fase Perancangan

Fase dimana perancangan proses-proses yang akan terjadi dalam aplikasi, perancangan use case dan perancangan antarmuka. c. Fase Konstruksi

Pada tahapan ini dilakukan tahap pengkodean terhadap rancangan-rancangan yang telah didefinisikan.

d. Fase Pelaksanaan

Pada tahap ini dilakukan pengujian terhadap sistem dan pengenalan terhadap aplikasi.


(46)

2.12 Studi literature

1. Rancang Bangun Aplikasi Remote untuk Administrasi LAN yang ditulis oleh Ryan Aniestyo Hermoko, Fathul Wahid, M. Andri Setiawan dari Universitas Islam Indonesia. Mereka menyempurnakan aplikasi Pengendali PC Jarak Jauh pada LAN. Pada penelitian ini meremote semua aktivitas yang dilakukan oleh client.

2. Literature aplikasi yang digunakan sebagai acuan adalah aplikasi remote monitoring yang digunakan untuk mengendalikan dan memantau aktivitas komputer client sesuai nomer IP-nya. Selain itu literature aplikasi yang digunakan adalah aplikasi pendeteksi spesifikasi komputer antara lain PC-Wizard, CPU-Z, Everest, Speecy, dan juga DX-Diag. Aplikasi-aplikasi tersebut dapat menampilkan spesifikasi komputer. Kedua literature aplikasi ini yang menjadi dasar peneliti mengembangkan aplikasi remote LAN yang dapat mengetahui spesifikasi komputer client yang terhubung pada server.

3. Net Support Manager merupakan aplikasi yang dapat mengetahui spesifikasi komputer berbasisclient server. Aplikasi ini menampilkan beberapa spesifikasi komputer terhadap satu komputer client saja. Peneliti mengembangkan aplikasi sejenis yang dapat mengetahui spesifikasi semua komputer client yang terhubung sekaligus dapat memantau dan mengendalikan client.


(47)

4. Analisa remote Desktop pada Jaringan LAN di SMK Triguna Jakarta Selatan oleh Lidia Putri, penulis menganalisa cara kerja remote desktop pada jaringan. Remote desktop dijalankan untuk host yang akan di remote. 5. Remote Network Monitoring (RMON) MIB dikembangkan oleh IETF untuk mendukung analisis monitoring dan protokol LAN. difokuskan pada OSI Layer 1 dan Layer 2 Ethernet dan informasi dalam jaringan Token Ring. Kemudian dilanjutkan pengembangannya menjadi RMON2 dengan menambahkan dukungan untuk Jaringan-dan pemantauan Aplikasi-layer. 6. Sistem Monitoring Dan Pengontrolan Server Jarak Jauh Menggunakan

Mobile Phone. Sistem monitoring sebuah sistem jaringan memiliki peranan yang sangat penting dalam memberikan informasi yang riil dan terbaru pada suatu jaringan. Dengan adanya sistem monitoring tersebut, pengelola jaringan dapat mengetahui jika terjadi kepadatan jaringan (network traffic) yang cukup besar. Perancangan sistem monitoring menggunakan mobile phone diharapkan bisa memberikan kemudahan bagi pengelola jaringan untuk dapat mengetahui kepadatan jaringan dari jarak jauh. Selain dapat memeriksa kondisi pada jaringan, seorang pengelola jaringan juga dapat melakukan proses pengontrolan seperti memulai ulang komputer (restart) dan mematikan komputer (shutdown). Kelebihan aplikasi ini adalah mobile, menggunakan operating system linux. Kekurangannya adalah pengontrolan tidak diikuti dengan peringatan bisa berupa aplikasi chatting.


(48)

7. PC (Personal Computer) Remote Access Menggunakan Ponsel (Telepon Selular) Pada Jaringan Berbasis Media Bluetooth. Aplikasi PC Remote Access ini menggunakan media Bluetooth sebagai media transmisi data antara aplikasi client yang terdapat pada ponsel dengan aplikasi server yang terdapat pada PC dimana aplikasi client yang terdapat pada ponsel dapat mengendalikan beberapa fungsi dasar aplikasi pada PC server dengan aplikasi server didalamnya. Data dikirimkan dari aplikasi client pada ponsel melalui media bluetooth. Data yang diterima aplikasi server dari aplikasi client akan diterjemahkan oleh aplikasi server menjadi sebuah perintah sehingga user dapat mengendalikan PC server melalui aplikasi client yang terdapat pada perangkat mobile. Kelebihan : Media transmisi yang digunakan adalah Bluetooth. Kekurangannya terbatas satu merek /vendor, client dapat me-remote server sedangkan untuk server tidak dapat me-remote client.

8. Manajemen Jaringan Dengan Memanfaatkan Aplikasi Remote Administrator (Radmin) Sebagai Maintenance System Di Pt.Wahana Esa Shambada. Perkembangan teknologi informasi dan komunikasi yang begitu pesat sejalan dengan kemajuan sistem komputer merupakan kebutuhan yang penting dalam menunjang efisiensi kerja di segala bidang. Pada jaringan komputer, efisiensi kerja dapat terganggu karena adanya masalah (trouble), seperti masalah pada suatu aplikasi yang mengharuskan aplikasi tersebut di instal ulang. Permasalahan pada jaringan komputer akan dapat menimbulkan kerugian yang tidak sedikit. Untuk mengatasi


(49)

masalah (troubleshooting) tersebut maka, salah satu solusi yaitu dengan menggunakan suatu perangkat lunak yang dapat remote / me-monitoring client dari server. Salah satu perangkat lunak tersebut adalah Remote Administrator (Radmin). Kelebihan yang dimiliki Radmin yaitu kemampuan dalam me-remote / me-monitoring komputer client dari server yang sangat dibutukan oleh technical support karena dapat memudahkan dalam penanganan terjadinya troubleshooting dari jarak jauh dengan menggunakan desktop sharing hingga 655336 warna. Kelebihan dari aplikasi ini server memantau atau me-monitoring semua client. Pada aplikasi ini belum ada fitur chatting untuk dapat berkomunikasi dengan client.

9. Sistem RMM (Remote Maintenance Monitoring) Sebagai Alat Bantu Teknisi Untuk Memantau Kinerja Peralatan NDB Di Bandara Husein Sastranegara Bandung. Sistem RMM (Remote Maintenance and Monitoring) adalah suatu sistem yang berbasis client server dimana kedua komputer tersebut di implementasikan pada dua lokasi yang terpisah (berjauhan). Komputer server berada dilokasi peralatan NDB dan komputer client ditempatkan di ruang teknisi di bandara Husein.S. Aplikasi ini diimplementasikan sebagai pengganti sistem lama yang tidak efektif dan efisien. Ada empat komponen utama dalam sistem ini yaitu : rangkaian ADC sebagai pengubah sinyal analog dari NDB ke digital, komputer server, pengguna yang bertindak sebagai pengelola data pada komputer client dan ponsel sebagai media komunikasi (gateway)


(50)

pengganti kabel. Dari hasil pengujian Sistem RMM menunjukan adanya peningkatan efektivitas dan efisiensi yang cukup signifikan dibandingkan dengan sistem lama, sehingga dapat disimpulkan bahwa Sistem RMM mampu membantu baik teknisi sebagai pelaksana dilapangan maupun PT (Persero) Angkasa Pura II sebagai pengelola fasilitas navigasi udara di Bandara Husein Sastranegara dalam meningkatkan efisiensi dan efektifitas operasional perawatan NDB. Kelebihan remote ini ponsel sebagai media komunikasi (gateway) pengganti kabel sehingga pekerjaan lebih efisien. Kekurangan dari aplikasi ini membutuhkan device baru untuk komunikasi. 10.Network LookOut Administrator. Memiliki kemampuan untuk mengambil

kendali dari komputer remote dengan mengendalikan mouse dan keyboard. Anda dapat merekam layar komputer remote bahkan ketika Anda tidak pemantauan mereka. Selain itu dapat menunjukkan mereka desktop server, dapat berkomunikasi dengan chatting tetapi belum dilengkapi dengan pengontrolan. [2011]


(51)

BAB III

METODOLOGI PENELITIAN

3.1. Metode Pengumpulan Data 3.1.1 Studi Pustaka

Dalam melakukan pengumpulan data, penulis menggunakan teknik studi pustaka. Pada tahapan pengumpulan data dengan cara studi pustaka, penulis mencari referensi-referensi yang relevan dengan objek yang akan diteliti. Pencarian referensi dilakukan di perpustakaan, maupun secara online melalui internet. Setelah mendapatkan referensi-referensi yang relevan tersebut, penulis lalu mencari informasi-informasi yang dibutuhkan dalam penelitian ini dari referensi-referensi tersebut. Informasi yang didapatkan digunakan dalam penyusunan landasan teori, metodologi penelitian serta pengembangan aplikasinya secara langsung. Pustaka-pustaka yang dijadikan acuan dapat dilihat di Daftar Pustaka.

3.1.2 Studi Literature

Berdasarkan pengamatan penulis, pada penelitian sebelumnya terdapat beberapa penelitian yang hampir serupa dengan judul Pengembangan Aplikasi Remote Spesifikasi Komputer Berbasis Client Server antara lain :


(52)

1. Rancang Bangun Aplikasi Remote untuk Administrasi LAN yang ditulis oleh Ryan Aniestyo Hermoko, Fathul Wahid, M. Andri Setiawan dari Universitas Islam Indonesia. Mereka menyempurnakan aplikasi Pengendali PC Jarak Jauh pada LAN. Pada penelitian ini meremote semua aktivitas yang dilakukan oleh client.

2. Literature aplikasi yang digunakan sebagai acuan adalah aplikasi remote monitoring yang digunakan untuk mengendalikan dan memantau aktivitas komputer client sesuai nomer IP-nya. Selain itu literature aplikasi yang digunakan adalah aplikasi pendeteksi spesifikasi komputer antara lain PC-Wizard, CPU-Z, Everest, Speecy, dan juga DX-Diag. Aplikasi-aplikasi tersebut dapat menampilkan spesifikasi komputer. Kedua literature aplikasi ini yang menjadi dasar peneliti mengembangkan aplikasi remote LAN yang dapat mengetahui spesifikasi komputer client yang terhubung pada server.

3. Net Support Manager merupakan aplikasi yang dapat mengetahui spesifikasi komputer berbasis client server. Aplikasi ini menampilkan beberapa spesifikasi komputer terhadap satu komputer client saja. Peneliti mengembangkan aplikasi sejenis yang dapat mengetahui spesifikasi semua komputer client yang terhubung sekaligus dapat memantau dan mengendalikan client.


(53)

4. Analisa remote Desktop pada Jaringan LAN di SMK Triguna Jakarta Selatan oleh Lidia Putri, penulis menganalisa cara kerja remote desktop pada jaringan. Remote desktop dijalankan untuk host yang akan di remote.

5. Remote Network Monitoring (RMON) MIB dikembangkan oleh IETF untuk mendukung analisis monitoring dan protokol LAN.

6. Sistem Monitoring Dan Pengontrolan Server Jarak Jauh Menggunakan Mobile Phone oleh Antonius Tanawijaya. Kelebihan aplikasi ini adalah mobile, menggunakan operating system linux. Kekurangannya adalah pengontrolan tidak diikuti dengan peringatan bisa berupa aplikasi chatting.

7. PC (Personal Computer) Remote Access Menggunakan Ponsel (Telepon Selular) Pada Jaringan Berbasis Media Bluetooth oleh Arie Januar Smaratul Fuad. Kelebihan : Media transmisi yang digunakan adalah Bluetooth. Kekurangannya terbatas satu merek /vendor, client dapat me-remote server sedangkan untuk server tidak dapat me-remote client.

8. Manajemen Jaringan Dengan Memanfaatkan Aplikasi Remote Administrator (Radmin) Sebagai Maintenance System Di Pt.Wahana Esa oleh Predi Aferi Hasan. Kelebihan dari aplikasi ini server memantau atau me-monitoring semua client. Pada


(54)

aplikasi ini belum ada fitur chatting untuk dapat berkomunikasi dengan client.

9. Sistem RMM (Remote Maintenance Monitoring) oleh Supriyanto. Kelebihan remote ini ponsel sebagai media komunikasi (gateway) pengganti kabel sehingga pekerjaan lebih efisien. Kekurangan dari aplikasi ini membutuhkan device baru untuk komunikasi.

10. Network LookOut Administrator. Memiliki kemampuan untuk mengambil kendali dari komputer remote dengan mengendalikan mouse dan keyboard. Kelebihannya adalah dapat menunjukkan mereka desktop server, dapat berkomunikasi dengan chatting tetapi belum dilengkapi dengan pengontrolan.

3.2. Metode Pengembangan Sistem

Metode pengembangan sistem yang penulis gunakan dalam penelitian ini adalah metode Rapid Application Development (RAD).

Pemilihan metode penelitian Rapid Application Development (RAD) ini dilakukan dengan alasan aplikasi yang akan dikembangkan merupakan aplikasi yang berskala kecil/menengah, serta terfokus pada lingkup tertentu. Pemilihan metodologi ini juga dengan alasan bahwa aplikasi ini tidak membutuhkan proses komputasi yang kompleks.


(55)

Kelebihan Rapid Application Development adalah :

1. Pengguna dapat memperoleh/menggunakan sistem lebih awal 2. Pengguna dapat merencanakan beberapa tambahan untuk versi

setelahnya

3. Memerlukan biaya yang lebih sedikit dan berkonsentrasi pada sudut pandang user

4. Menyediakan kemungkinan perubahan secara tepat sesuai permintaan user

5. Bukan aplikasi dengan komputasi yang komplek dan user mengetahui pasti area yang harus di miliki aplikasi.

Fase Model pengembangan RAD yang dibuat oleh James Martin melingkupi fase-fase sebagai berikut (Kendall & Kendall, 2003):

Gambar 3.1 Fase-fase RAD

Tahapan-tahapan yang dilakukan oleh penulis dalam melakukan penelitian pengembangan aplikasi ini adalah :

3.2.1 Fase Perencanaan Syarat-Syarat

Pada tahap ini dilakukan pengidentifikasian tujuan aplikasi serta mengidentifikasi syarat-syarat yang ditimbulkan dari tujuan tersebut.


(56)

3.2.2Fase Perancangan

Pada tahap ini dilakukan beberapa tahapan yaitu: a) Perancangan Sistem

Perancangan proses-proses yang akan terjadi di dalam system menggunakan diagram UML yakni dengan membuat beberapa diagram yaitu: Use Case Diagram dan Sequence Diagram. b) Perancangan Antar Muka Pemakai (User Interface)

Antar muka pemakai memberikan fasilitas komunikasi antar pemakai dan aplikasi atau sistem, memberikan berbagai fasilitas informasi dan berbagai keterangan yang bertujuan untuk membantu mengarahkan alur penelusuran masalah sampai ditemukan solusi.

3.2.3Fase Konstruksi

Pada tahapan ini dilakukan pembuatan program terhadap rancangan yang telah didefinisikan hasil dari perancangan. Pembuatan program yang dilakukan menggunakan bahasa pemrograman Borland Delphi 7.0

3.2.4 Fase Pelaksanaan

a) Konfigurasi Client-Server

Mengidentifikasi jenis jaringan dan topologi yang digunakan kemudian menentukan PC server dan PC client.


(57)

Pada tahapan ini dilakukan pengujian terhadap aplikasi yang telah dibuat, pada pengujian aplikasi ini peneliti menggunakan pengujian black-box yaitu suatu pengujian yang berfokus pada persyaratan fungsional perangkat lunak (Pressman, 2002). c) Tanggapan User

Meminta tanggapan user terhadap aplikasi ini kemudian mengevaluasinya.


(58)

Gambar 3.2 Fase-fase metodologi penelitian dengan pengembangan aplikasi menggunakan RAD Aplikasi Monitoring Pengumpulan Data Tujuan Membuat Aplikasi monitoring hardware Fase Perencanaan Syarat-syarat Fase Perancangan Syarat-syarat : Borland Delphi 7.0 Analisis Kebutuhan Fase Konstruksi Fase Pelaksanaan Perancangan Proses dengan UML Perancangan Antarmuka Pembuatan Pengkodean Konfigurasi Client Server

Usecase dan squencial Diagram

Pengujian black box Metode RAD

Tanggapan User kurang


(59)

BAB IV PEMBAHASAN

4.1Fase Perencanaan syarat-syarat

Dalam fase perencanaan ini ditentukan permasalahan yaitu keinginan untuk mengorganisir jaringan secara terpusat berbasis client server, mengetahui spesifikasi komputer, penggunaan cpu, alokasi memori yang digunakan dan hardisk yang tersedia pada tiap komputer, dan mengendalikan dan monitoring client oleh servernya.

Syarat-syarat yang dibutuhkan untuk dapat membuat aplikasi sesuai yang diinginkan diatas, maka yang dibutuhkan adalah pemilihan bahasa pemograman untuk pembuatan aplikasi yaitu Delphi 7.0, tambahan library NMM untuk remote control dan alite skin untuk tampilan.

Selain itu, kita menentukan port yang digunakan pada aplikasi ini. Dalam pembuatan aplikasi ini port yang akan digunakan adalah port dynamic” atau “unprivilegedport yaitu Port dengan range 1024 s.d 65535. Pemilihan port ini karena port ini tidak banyak digunakan secara umum pada jaringan contohnya berbagai aplikasi yang khas, seperti telnet, mail, web, ftp, dan sebagainya.


(60)

4.2 Fase Perancangan 4.2.1Use case Diagram

Use Case Diagram digunakan untuk menjelaskan apa yang akan dilakukan oleh sistem serta aktor-aktor yang akan berhubungan dengan proses-proses yang ada pada aplikasi. Use case ini diperlukan untuk kebutuhan dokumentasi dan arah pengembangan selanjutnya. Dibawah ini adalah use case untuk beberapa aplikasi yang diinginkan.


(61)

1. Use case Diagram untuk koneksi

Gambar 4.2 Use case Koneksi

2. Use case Diagram untuk ambil data memori client

Gambar 4.3 Use case ambil data memori client

3. Use case Diagram untuk remote desktop dan monitoring client


(62)

4. Use case Diagram untuk tutup koneksi

Gambar 4.5 Use case Tutup Koneksi

4.2.2 Use case Scenario

Use case scenario merupakan penjelasan yang lebih terperinci mengenai masing-masing use case yang terjadi di dalam sistem. Use case scenario ini terdiri dari:

1. Nama use case adalah nama use case yang akan dideskripsikan. 2. Aktor yang terlibat.

3. Trigger.

4. Precondition yang penting bagi use case untuk memulai. 5. Action.

6. Postcondition yang menjelaskan state dari sistem setelah use case berakhir.

Setelah menjelaskan use case pada bahasan sebelumnya, maka berikut ini akan dijelaskan spesifikasi use case yang telah ditentukan.


(63)

1. Koneksi

Table 4.1 Use case Scenario Koneksi

2. Ambil data memori client

Table 4.2 Use case Scenario ambil data memori client

3. Remote desktop dan monitoring client

Table 4.3 Use case Scenario Remote desktop dan monitoring client

Nama Usecase Koneksi

Aktor yang terlibat Server , Client

Trigger Actor ingin saling terhubung

Pre condition IP address dan port telah terdeteksi

Action Hubungkan

Post condition Terhubung, IP aktif

Nama Use case ambil data memori client Aktor yang terlibat Server , Client

Trigger Server hendak mengetahui informasi tentang Client

Pre condition Actor telah saling terkoneksi

Action

Client mengecek spesifikasi dirinya, Server dapat langsung memanggil informasi yang telah di tulis oleh Client

Post condition Data dari Client dapat ditampilkan

Nama Usecase Remote desktop dan monitoring

client

Aktor yang terlibat Client, Server

Trigger Server akan me-remote desktop dan monitoring Client

Pre condition Actor telah saling terkoneksi

Action View full Client


(64)

4. Tutup Koneksi

Table 4.4 Use case Scenario tutup koneksi

4.2.3Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar aplikasi. Sequence diagram untuk aplikasi remote spesifikasi komputer berbasis client server sebagai berikut :

1. Koneksi

Gambar 4.6 Sequence Diagram untuk koneksi

Pada diagram sequence koneksi, telah terdeteksi IP Address dan port ketika aplikasi berjalan. Kemudian client meminta supaya

Nama Use case Tutup koneksi

Aktor yang terlibat Server , Client

Trigger Salah satu atau kedua actor ingin memutuskan koneksi

Pre condition Kedua actor telah terhubung

Action Tutup koneksi


(65)

dapat terhubung dengan server, maka terjadi proses cek koneksi ke server. Pengecekan koneksi ini dengan memeriksa port dan IP yang sama. Analogi koneksi antara client dan server ini seperti pendialan nomor telepon yang dituju, apabila telah diijinkan untuk melakukan komunikasi maka terbentuk suatu hubungan.

2. Ambil data spek client

Gambar 4.7 Sequence Diagram untuk Ambil data spek client Pada diagram sequence ambil data spek client, dimana antara client dan server telah saling terhubung. Client mengecek spesifikasi dirinya kemudian server dapat memanggil data-data tersebut dari client dan hasilnya akan ditampilkan antara lain sistem operasi, resolusi layar, jenis komputer, nama user,


(66)

kapasitas memori, directory windows dan sistem32, kecepatan CPU, BrandID CPU, serta vendor CPU.

3. Remote monitoring client

Gambar 4.8 Sequence Diagram untuk remote desktop client Diagram sequence untuk remote monitoring client diatas menggambarkan bahwa antara client dan server saling terkoneksi, maka server dapat melakukan remote monitoring terhadap client. Remote desktop dapat mengendalikan client secara penuh dengan menggunakan mouse dan keyboard server. Setelah client dan server saling terkoneksi maka server memilih untuk me-monitoring client sesuai dengan nomer IP yang akan dipantau, monitoring ini untuk mengawasi aktivitas client.


(67)

4. Tutup Koneksi

Gambar 4.10 Sequence Diagram untuk tutup koneksi

Diagram sequence diatas menggambarkan urutan tutup koneksi antara client dan server. Keduanya dapat melakukan pemutusan koneksi.


(68)

4.2.4Perancangan User interface 1. Tampilan aplikasi server

Gambar 4.11 Aplikasi untuk server 2. Tampilan aplikasi client

Gambar 4.12 aplikasi untuk client 3. Tampilan Remote control dan Monitoring

Gambar 4.13 Remote client

Tempat menampil

kan spesifikas

i komputer

berupa memo

IP address Port Koneksi

Remote Ambil data

Tutup Koneksi

Ip address port

Koneksi ke server

Tempat untuk tampilan remote conection exit


(69)

4. Tampilam koneksi remotecontrol client

Gambar 4.14 remote control client

4.3 Fase Konstruksi

Berdasar syarat-syarat kebutuhan dan perancangan untuk pembuatan aplikasi remote spek basis client server ini, bahasa yang digunakan adalah Delphi 7.0 dengan tambahan komponen NMM dan Alite untuk skin atau tampilan. Instalasi komponen dapat dilihat pada lampiran.

Pembuatan aplikasi ini dibagi menjadi 2 bagian yaitu konstruksi untuk aplikasi server dan untuk aplikasi client. Konsep yang digunakan untuk menampilkan spek client melalui remote pada aplikasi ini konsep server menjadi client dan sebaliknya client menjadi server. pada aplikasi ini server yang lebih aktif, client menunggu request dan server menerima layanan.

Berikut ini akan membahas proses konstruksi pengkodean pada form-form yang akan dibangun. Pada aplikasi server dibutuhkan beberapa form sedangkan pada aplikasi client hanya dibuat satu buah form.

host port


(70)

Form pada server antara lain adalah form utama yaitu form server, form remote, dan form koneksi remote, Berikut ini fase konstruksi aplikasi remote spesifikasi berbasis client server :

1. Form client (untuk aplikasi client)

Tahap pertama adalah membuat desain form client menggunakan objek-objek yang ada pada komponen pallete seperti berikut ini :

Gambar 4.15 Desain form aplikasi client

Komponen yang digunakan untuk membuat aplikasi client seperti tampak pada gambar diatas antara lain : label, button, edit, IdTCPServer, IdThreadMgr, IdIPWatch, NMMRCserver, untuk tampilan digunakan skinProvider dan skinManager. Proses pengkodean terhadap komponen-komponen diatas di bawah ini :

1. Tambahkan kode program untuk button ‟aktifkan‟ sebagai berikut : procedure TForm1.Button1Click(Sender: TObject);

begin

koneksiserver.koneksiindy; koneksiserver.nmm ; end;


(71)

Button ‟aktifkan‟ berfungsi untuk merequest koneksi kepada server. Apabila server telah menerima atau menanggapi request dari client maka akan tampil ”IP Client Aktif” pada aplikasi client.

Proses koneksi pada aplikasi ini menggunakan indy. Koneksi client ke server dibuat fungsi baru (tersendiri) pada unit ‟koneksiserver‟. Berikut adalah kode program untuk ‟koneksiindy‟, yang dipanggil seperti pada procedure diatas.

a. Unit koneksiserver (untuk menghubungkan client dan server) function koneksiindy:string;

var

ports:integer;

Bindings: TIdSocketHandles; begin

ports:=strtoint(form1.edit2.Text); // input dari user.

Bindings := TIdSocketHandles.Create(form1.IdTCPServer1); try

with Bindings.Add do begin

IP := form1.edit1.Text; Port := ports;

end; Try

form1.IdTCPServer1.Bindings := Bindings; form1.IdTCPServer1.Active := True; except on E:Exception do

ShowMessage(E.Message); end;

finally

Bindings.Free;

form1.label4.Caption:=' IP Client Aktif'; end;


(72)

b. Fungsi nmm (NMM untuk remote control)

Data kode diatas, port yang digunakan telah diinisialisasi dalam program, nomor port yang digunakan adalah nomor port “dynamic” atau “unprivileged”.

2. Untuk button ‟tutup koneksi‟ ditambahkan kode program sebagai berikut :

Button ‟tutup koneksi‟ ini digunakan ketika akan memutuskan hubungan

dengan server. Jika koneksi telah terputus maka akan tampil jendela baru seperti berikut ini :

function nmm:string; begin

form1.Server.Port:= 3123; form1.Server.Active:= true; end;

function koneksipenuh:string; begin

form1.Server.Port:= strtoint(form1.Edit3.Text); form1.Server.Active:= true;

end;

procedure TForm1.Button2Click(Sender: TObject); begin

try //non aktifkan server

IdTCPServer1.Bindings := Bindings; IdTCPServer1.Active := false; Bindings.Free;

except on E:Exception do

ShowMessage('koneksi telah terputus'); end;

label4.Caption:=' IP Client Tidak Aktif'; end;


(73)

Gambar 4.16 Tampilan apabila terjadi tutup koneksi

3. Untuk komponen IdIPwatch digunakan untuk mengecek atau mendeteksi IP address komputer dimana aplikasi ini berjalan, berikut adalah kode program untuk mengecek IP sebuah komputer atau host.

4. IdTCPServer bisa digunakan untuk pengiriman data. Pengiriman data disini untuk mengirimkan data spesifikasi komputer client kepada server. Pada Aplikasi saat dijalankan client aktif atau dalam posisi Listening, menerima koneksi dari server dan menampilkan Alamat IP client di treeview (ada pada aplikasi server). server akan menerima pesan yang dikirimkan oleh client dan menampilkannya dalam treeview aplikasi server:

procedure TFormserver.FormCreate(Sender: TObject); begin

edit1.Text:=idipwatch1.LocalIP; end;


(74)

Pada kode program diatas terjadi pemanggilan fungsi-fungsi untuk mengecek data spesifikasi komputer client. Algoritma yang digunakan untuk penampilkan data spesifikasi komputer client adalah algoritma looping/pengulangan dan selection/pemilihan.

Algoritma looping/pengulangan digunakan untuk mengecek komputer client yang akan ditampilkan spesifikasi komputernya. Pengulangan ini apabila terjadi koneksi antara client dan server. perintah

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);

var

Pesan,pesan2:string;

convert:string; //untuk keyboard dan mouse penonaktikan Begin

While Athread.Connection.Connected do Begin

Pesan:=athread.Connection.readln; if pesan = 'cekmemori2' then begin Athread.connection.writeln(IdIPWatch1.LocalIP); Athread.connection.writeln(idipwatch1.LocalName); Athread.connection.writeln(informasi.GetMetrics); Athread.connection.writeln(informasi.GetCPU); Athread.connection.writeln(informasi.Getbrandidcpu); Athread.connection.writeln(informasi.Getvendoridcpu); convert := Format(' %f MHz',

[informasi.GetCPUSpeed]); Athread.connection.writeln(convert); Athread.connection.writeln(informasi.GetMemory); Athread.connection.writeln(informasi.memfree); Athread.connection.writeln(informasi.memoripakai); Athread.connection.writeln(informasi.GetOS); Athread.connection.writeln(informasi.GetWindowsPath); Athread.connection.writeln(informasi.GetSystemPath); end; end; end;


(75)

looping atau pengulangan yang digunakan adalah while-do. pemakaian perintah while hanya diperlukan satu kondisi untuk menjalankan looping dan perintah yang di looping pada perintah while adalah perintah setelah kondisi client konek atau terhubung dengan server.

Algoritma selection digunakan untuk menampilkan data spesifikasi komputer di komputer server. Algoritma ini ditandai dengan perintah if-then. Perintah if jika cek memori dipanggil dari aplikasi server. Perintah selection terjadi setelah looping/pengulangan terhadap koneksi client ke server, kemudian terjadi kondisi untuk membaca pesan cek memori.

Pada source code di atas, ketika dipanggil cek memori maka akan memanggil fungsi-fungsi yang tergabung dan dideklarasikan pada unit informasi. Berikut adalah fungsi-fungsi yang dipanggil :

1. Function Getbrandidcpu adalah fungsi yang digunakan untuk mengetahui brand cpu yang digunakan pada sebuah komputer.

function Getbrandidcpu:string; var

_eax, _ebx, _ecx, _edx: Longword; i: Integer;

b: Byte;

s, s1, s2, s3, s_all: string; begin asm mov eax,$80000003 db $0F db $A2 mov _eax,eax mov _ebx,ebx mov _ecx,ecx mov _edx,edx end;

s := ''; s1 := ''; s2 := ''; s3 := '';


(76)

begin

b := lo(_eax); s3 := s3 + chr(b); b := lo(_ebx); s := s + chr(b); b := lo(_ecx); s1 := s1 + chr(b); b := lo(_edx); s2 := s2 + chr(b); _eax := _eax shr 8; _ebx := _ebx shr 8; _ecx := _ecx shr 8; _edx := _edx shr 8; end;

s_all := s_all + s3 + s + s1 + s2; asm mov eax,$80000004 db $0F db $A2 mov _eax,eax mov _ebx,ebx mov _ecx,ecx mov _edx,edx end;

s := ''; s1 := ''; s2 := ''; s3 := '';

for i := 0 to 3 do begin

b := lo(_eax); s3 := s3 + chr(b); b := lo(_ebx); s := s + chr(b); b := lo(_ecx); s1 := s1 + chr(b); b := lo(_edx); s2 := s2 + chr(b); _eax := _eax shr 8; _ebx := _ebx shr 8; _ecx := _ecx shr 8; _edx := _edx shr 8; end;

if s2[Length(s2)] = #0 then setlength(s2, Length(s2) - 1); result:=s_all + s3 + s + s1 + s2; end


(77)

2. Function getCPU adalah fungsi yang digunakan untuk mengetahui tipe prosesor yang digunakan pada sebuah komputer.

3. Fungsi getspeedcpu digunakan untuk mengetahui kecepatan dalam menjalankan aplikasi yang ada.

function GetCPU: string; var

sysinfo: SYSTEM_INFO; str: string;

begin

GetSystemInfo(sysinfo);

case sysinfo.dwProcessorType of 386:str:='386'; 486:str:='486'; 586:str:='Pentium'; end; Result :=str; end;

function GetCPUSpeed: Double; const

DelayTime = 500; var

TimerHi, TimerLo: DWORD; PriorityClass, Priority: Integer; begin

PriorityClass := GetPriorityClass(GetCurrentProcess); Priority := GetThreadPriority(GetCurrentThread);

SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS); SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL); Sleep(10); asm dw 310Fh

mov TimerLo, eax mov TimerHi, edx end;

Sleep(DelayTime);


(78)

4. Function Getcurrentuser digunakan untuk mendeteksi username yang digunakan oleh komputer.

5. Fungsi getmemory akan dipanggil untuk mengecek besarnya kapasitas suatu memori dalam hardisk di komputer client.

function GetCurrentUser: string; var

lpName: PAnsiChar; lpUserName: PAnsiChar; lpnLength: DWORD; begin

Result := ''; lpnLength := 0; lpName:=''; // warning

WNetGetUser(nil, nil, lpnLength); // È¡µÃ×Ö´®³¤¶È if lpnLength > 0 then

begin

GetMem(lpUserName, lpnLength);

if WNetGetUser(lpName, lpUserName, lpnLength) = NO_ERROR then

Result := lpUserName;

FreeMem(lpUserName, lpnLength); end;

end;

function GetMemory: string; var

meminfo: Memorystatus; begin

meminfo.dwLength :=SizeOf(Memorystatus); GlobalMemoryStatus(meminfo);

Result :=inttostr(meminfo.dwTotalPhys div 1024)+'KB'; end;

asm

dw 310Fh

sub eax, TimerLo sbb edx, TimerHi mov TimerLo, eax mov TimerHi, edx end;

SetThreadPriority(GetCurrentThread, Priority); SetPriorityClass(GetCurrentProcess, PriorityClass); Result := TimerLo / (1000 * DelayTime);


(79)

6. Fungsi getOS, digunakan untuk mengetahui sistem operasi yang digunakan oleh suatu komputer.

7. Fungsi getwindowspath untuk mengetahui path dari directory windows pada komputer client.

8. Fungsi GetSystemPath untuk mengetahui path dari system32 pada komputer client.

function GetOS: string; var

osInfo: OSVERSIONINFO; begin

osInfo.dwOSVersionInfoSize:=SizeOf(OSVERSIONINFO); GetVersionEx(osInfo);

result:='Windows '+IntToStr(osInfo.dwMajorVersion)+'.'+ IntToStr(osInfo.dwMinorVersion);

end;

function GetWindowsPath: string; var

WindowsDir: array [0..255] of char; begin

GetWindowsDirectory(WindowsDir,255); Result :=WindowsDir;

end;

function GetSystemPath : string; var

SysDir: array [0..255] of char; begin

GetSystemDirectory(SysDir,255); Result :=SysDir;


(80)

9. Fungsi memoripakai untuk mengetahui kapasitas memori yang sedang dipakai.

10. Fungsi resolusi layar client

5. Button chatting apabila di klik akan memanggil form chatting. Kode untuk form chatting terlampir. Berikut kode untuk memanggil form chatting

function memoripakai : string; var

meminfo: TMemoryStatus; begin

GlobalMemoryStatus(meminfo);

result:= inttostr(meminfo.dwMemoryLoad )+'%';

end;

function GetMetrics: string; begin

Result :=inttostr(GetSystemMetrics(SM_CXSCREEN)) +'X'+inttostr(GetSystemMetrics(SM_CYSCREEN)); end;

procedure TForm1.Button3Click(Sender: TObject); begin

Form_Client_Main.show; Form1.hide;


(1)

B.Proses instalasi komponen NMM

1. Extract library NMM di computer anda 2. Buka program Delphi 7.0

3. Buka NMM70.dpk lalu klik “compile” dan “install”

4. Kemudian install pula dengan cara yang sama untuk NMMRC70.dpk and NMMAudio70.dpk

5. Lalu tambahkan library path NMM pada Delphi sebagai berikut 6. Pilih menu tools, environment options

Environment option ini berada pada speedbar pada delphi, environment digunakan untuk menyesuaikan path atau directory library yang ditambahkan.


(2)

7. Muncul tab environment option, klik library

Untuk menyesuaikan directory library yang ditambahkan maka pilih menu library, dan diisi serta disesuaikan library path-nya.

8. Klik library path yang ada, maka akan muncul tab baru berupa directory untuk memilih komponen NMM dengan lokasi yang sesuai.


(3)

9. Klik button sesuai gambar panah pada nomor 4, lalu akan muncul browse for folder, pilih directory tempat NMM source disimpan. Contoh (C:NMM/NMM.pub/Source).

10.Kemudian klik ok, dan pilih add, maka akan tampil tambahan library seperti dibawah ini, selesei klik ok.


(4)

C.Proses instalasi komponen Alite untuk skin Delphi 7.0

1. Download open source alite ini di http://www.alphaskins.com/dwnld.php 2. Kemudian ekstrak dari rar-nya. Simpan di drive C, dan copy folder skins

dalam Alite ke drive C. 3. Buka program Delphi 7.0

4. Pilih menu tools, environment options

Environment option ini berada pada speedbar pada delphi, environment digunakan untuk menyesuaikan path atau directory library yang ditambahkan.


(5)

Untuk menyesuaikan directory library yang ditambahkan maka pilih menu library, dan diisi serta disesuaikan library path komponen alite.

6. Klik library path yang ada, maka akan muncul tab baru berupa directory untuk memilih komponen Alite dengan lokasi yang sesuai.

7. Klik button sesuai gambar panah pada nomor 4, lalu akan muncul browse for folder, pilih directory tempat Alite source disimpan. Contoh (C:ALite/D7). Ini untuk Delphi 7.0


(6)

8. Setelah klik ok. Klik add seperti dibawah ini :