BAB III ARSITEKTUR DAN ANALISA SISTEM PONSEL SEBAGAI MOBILE PRESENTATION BERBASIS BLUETOOTH Pada bab ini pembahasan akan difokuskan pada tahap analisis yang merupakan tahapan dari identifikasi sistem yang dikembangkan, persyaratan sistem, arsitektur sistem, hingga pembuatan use case diagram. 3.1 Arsitektur Sistem Sistem ponsel sebagai Mobile Presentation berbasis Bluetooth merupakan sebuah aplikasi yang diharapkan dapat dijalankan di semua peralatan yang mendukung MIDP 2.0 dan JABWT. Aplikasi ini memungkinkan suatu peralatan dapat berperan sebagai mouse.
Gambar 3.1 Arsitektur system 3.2 Identifikasi Kebutuhan Komunikasi Untuk mengimplementasikan komunikasi, terlebih dahulu dilakukan identifikasi beberapa peralatan, baik perangkat keras maupun perangkat lunak, yaitu . 3.2.1 Identifikasi Kebutuhan Perangkat Lunak 1. Emulator J2ME, merupakan aplikasi yang menyediakan fasilitas untuk melakukan kompilasi kode program yang dibuat dengan J2ME dan menyediakan emulator untuk mensimulasi aplikasi. 2. Editor Java, merupakan perangkat lunak yang digunakan untuk menulis kode program aplikasi berbasis Java;
20
3. Editor Visual Studio 6, merupakan perangkat lunak yang digunakan untuk menulis kode program aplikasi berbasis VC++. 4. PC Suite untuk telepon seluler, merupakan aplikasi yang menyediakan antarmuka untuk berkomunikasi dengan telepon seluler yang digunakan, termasuk fasilitas untuk transfer data dan instalasi aplikasi; 5. Pustaka yang mengimplementasikan JABWT untuk platform J2SE, Pustaka ini digunakan untuk membangun komunikasi di PC, yang digunakan untuk keperluan pengujian sistem; 3.2.2 Identifikasi Kebutuhan Perangkat Keras 1. Telepon seluler yang mendukung CLDC 1.0, MIDP 2.0, dan JABWT, sebagai media deployment. 2. USB Bluetooth Dongle, merupakan peralatan Bluetooth yang digunakan oleh PC untuk melakukan transmisi data ke peralatan seluler yang memiliki Bluetooth Protocol Stack; 3. PC (komputer desktop), merupakan peralatan di mana emulator J2ME, editor Java, dan PC Suite di-install. 3.3 Business Use Case Business use case merupakan fungsionalitas utama suatu sistem secara global (proses bisnis) yang berineteraksi dengan pihak yang terlibat. Business use case memiliki elemen yang terdiri dari business actor dan business use case.
Business actor
menggambarkan peran yang dilakukan oleh seseorang/sesuatu, yang dengannya sistem secara global berinteraksi.
Sedangkan business use case merupakan
fungsionalitas (proses bisnis) yang disediakan sistem untuk business actor. Model ini diilustrasikan dengan business use case diagram, yang menggambarkan relasi antara business actor dan business use case pada domain fungsional [10].
21
3.4 Sistem Use Case Sistem use case digunakan untuk mendukung business use case sehingga fungsionalitas sistem dalam berinteraksi dengan pihak lain yang terlibat dijabarkan lebih mendalam sampai ke tahap spesifik untuk perangkat lunak. Sistem use case memiliki elemen sistem actor dan sistem use case. Sistem actor menggambarkan peran yang dimainkan oleh seseorang/sesuatu, yang dengannya sistem secara lengkap berinteraksi. Sedangkan sistem use case merupakan fungsionalitas yang disediakan sistem untuk sistem actor. Model ini diilustrasikan dengan sistem use case diagram, yang menggambarkan relasi antara sistem actor dan sistem use case pada domain fungsional [3].
Terima Service
Handphone
Aktifkan Service
Aktifkan Bluetooth
Kirim Perintah
Gerakkan Halaman Komputer
Terima Perintah
Powerpoint
Gambar 3.2 Business use case diagram.
Tabel 3.1 Deskripsi use case Komponen Use Case
Deskripsi
Handphone
Pengguna aplikasi yang telah di-install di peralatan yang mendukung CLDC 1.0, MIDP 2.0, JABWT, memanggil program Bodiv1, handphone menerima semua bluetooth device termasuk dekstop dan menerima semua service.
KomputerDekstop
Mengaktifkan
service
22
powerpoint
WSASetService,
Komponen Use Case
Deskripsi menerima permintaan koneksi dari handphone, dan membuka InputStream. Disaat bersamaan handphone membuka koneksi dengan OutputStream, terjadi kirim terima data dari handphone ke dekstop. Menerima perintah , menggerakan halaman
PowerPoint
3.5 Activity Diagram Activity Diagram menggambarkan interaksi antar obyek di dalam dan di sekitar sistem Komputer
BluetoothPC
Start
Aktifkan WinSock
WinSock Diaktifkan
Aktifkan Socket
Ikat Socket Ke Bluetooth
Ambil Alamat Socket Bluetooth
Socket Valid
Socket Bluetooth Diaktifkan
Alamat Socket Bluetooth Disediakan
End
Gambar 3.3 Activity Diagram Komputer: Aktifkan Bluetooth
23
Handphone
BluetoothHP
Start
Ambil Data Bluetooth
Data Bluetooth Diberikan
Set Bluetooth Agar Dapat Di-search
Bluetooth Jadi 'Discoverable'
Buka Koneksi Bluetooth dengan GUID Bodi
Koneksi Terbuka
End
Gambar 3.4 Activity Diagram Handphone: Aktifkan Bluetooth
Komputer
Serv ice
Start
Definisikan GUID Bodi
Aktifkan Remote Address Bluetooth
GUID Bodi Aktif
Remote Address Bluetooth Aktif
Panggil Fungsi WSASetService
Service Aktif
End
Gambar 3.5 Activity Diagram Komputer: Aktifkan Service
24
Handphone
Dev ice
Serv ice
Start
Cari Device dengan DiscoveryAgent
Device Diketemukan
Cari Service Di Setiap Device
Service Diketemukan
Cek Service dengan GUID Bodi
Service GUID Bodi Disimpan
End
Gambar 3.6 Activity Diagram Handphone: Terima Service
Hanphone
Dev ice
Serv ice
Layar
Start
Pilih Device yang Diinginkan
Device Terpilih
Ambil Alamat Device Berdasarkan Service
Tekan Tombol 'UP' atau 'DOWN'
Layar Menjadi Hitam (Ready)
Muncul 'UP' atau 'DOWN' Koneksi Terbuka Perintah 'UP' atau 'DOWN' Terkirim
End
Gambar 3.7 Activity Diagram Handphone: Kirim Perintah
25
Komputer
Socket
File
Start
Terima Sinyal Koneksi
Buka Sinyal Koneksi
Terima Data
Simpan Dalam 'Bodi.txt'
End
Gambar 3.8 Activity Diagram Komputer: Terima Perintah
Pow erpoint
File
Start
Cek Keberadaan File 'Bodi.txt'
File Mengandung 'UP' atau 'DOWN'
End
Gambar 3.9 Activity Diagram Powerpoint: Terima Perintah
Pow erpoint
File
Start
Gerakkan Halaman 'UP' atau 'DOWN'
File Dihapus
End
Gambar 3.10 Activity Diagram Powerpoint: Gerakkan Halaman
26
3.6 Sequence Diagram
WinSock
Socket
Ikat Socket ke Bluetooth
: Komputer WSAStartup socket bind getsockname
Gambar 3.11 Sequence Diagram Komputer: Aktifkan Bluetooth
: Handphone
Ambil Data Bluetooth
Set Discoverable Bluetooth
Buka Koneksi Bluetooth
getLocalDevice setDiscoverable(GIAC) Connector.open(GUID Bodi)
Gambar 3.12 Sequence Diagram Handphone: Aktifkan Bluetooth
27
GUID Bodi
Remote Address Bluetooth
: Komputer
Set Service
GUID Bodi = 'F0E0D0C0B0A000908070605040302010 SOCKADDR_BTH WSASetService
Gambar 3.13 Sequence Diagram Komputer: Aktifkan Service
: Handphone
Cari Device
Cari Service
Seleksi Service
discoveryAgent.startInquiry discoveryAgent.searchServices seleksiServices
Gambar 3.14 Sequence Diagram Handphone: Terima Service
28
: Handphone
Pilih Device
Ambil Service
Layar Hitam
chooseDevice service.getConnectionUrl graphic.setColor pressButton Koneksi Terbuka
Perintah Dikirim
Gambar 3.15 Sequence Diagram Handphone: Kirim Perintah
Sinyal Koneksi
File
: Komputer listen recv CreateFile
WriteFile
Gambar 3.16 Sequence Diagram Komputer: Terima Perintah
29
File
: Powerpoint FileInfo.Exist
File.StreamReader("UP" or "DOWN")
Gambar 3.17 Sequence Diagram Powerpoint: Terima Perintah
: Powerpoint
Halaman
File
Move('UP' or 'DOWN')
FileInfo.Delete
Gambar 3.18 Sequence Diagram Powerpoint: Gerakkan Halaman
30
3.7 Class Diagram Komposisi kelas dan hubungan antar-kelas digambarkan dengan menggunakan class diagram [10]. Diagram ini memuat atribut dan metoda yang dimiliki suatu kelas.
Bodiv6
ArahCanvas
Gabung
Arah
Deteksi
Anggota
Gambar 3.19 Class diagram : hubungan antar class
31
Bodiv6 display : Display logoImage : Image awalForm : Form keluarCMD : Command lanjutCMD : Command aboutCMD : Command aboutString : String about : About gabung : Gabung uuidBodi : UUID url : String url2 : String deviceVector : Vector namaVector : Vector jenisVector : Vector serviceVector : Vector joinBool : Boolean
Gabung gabungForm : Form kembaliCmd : Command lanjutCMD : Command gabungSTR : StringItem midlet : Bodiv6 deteksi : Deteksi localDEvice : LocalDevice notifier : StreamConnectionNotifier record : ServiceRecord accepterThread : Thread isSuksesGabung : Boolean isBatalGabung : boolean commandAction() run() destroy()
Bodiv6() starApp() commandAction() destroyApp() show() keluar() kosongVector()
Deteksi deteksiForm : Form kembaliCmd : Command cariCMD : Command stopCMD : Command cariGauge : Gauge ddeviceChoice : ChoiceGroupi serviceChoice : ChoiceGroup jum : int jumSvc : int discoveryAgent : DiscoveryAgent processorThread : Threrad isBatalDeteksi : Boolean isBatalAmbilNamaDevice : boolean nilaiPencariDevice : int mulaiCari : int mulaiCariDevice : int keadaan : int midlet : Bodiv6 Anggota : anggota commandAction() run() searchDevices() deviceDiscovered() inquiryCompleted() servicesDiscovered() serviceSearchCompleted() batalcari() destroy()
ArahCanvas
Arah
display : Display g : Graphics arahStr : String height : int width : int upy : int upx : int downy : int downx : int thread : Thread keyDitekan : boolean connection : StreamConnection os : OutputStream midlet : Bodiv6
midlet : Bodiv6 arahCanvas : ArahCanvas anggota : Anggota gabungSTR : StringItem kembaliCMD : Command
Anggota
commandAction() Arah()
anggotaForm : Form kembaliCmd : Command lanjutCMD : Command deviceChoice : ChoiceGroup hpImage : Image pcImage : Image nbImage : Image servRecord : ServiceRecord[] urlConn : String[] midlet : Bodiv6 arah : Arah commandAction() tampilAnggota() tampilImage() ambilService()
ArahCanvas() paint() keyPressed() run() bukaKoneksi() tutupConn() tutupos() kirimArah()
Gambar 3.20 Class diagram .
32
3.8 Component Diagram Component diagram mengambarkan struktur dan hubungan antar komponen perangkat lunak, termasuk ketergantungan (dependency).
Komponen perangkat
lunak dapat berupa modul yang berisi kode, baik source code atau binary code, baik library maupun executable, baik yang muncul pada compile time, link time, maupun run time. Umumnya komponen terbentuk dari beberapa kelas, tapi dapat juga dari komponen-komponen yang lebih kecil. Untuk aplikasi berbasis Java, komponen yang digunakan berupa file .Java yang terbentuk dari satu atau lebih kelas.
Komputer Handphone Bluetooth File 'Bodi.txt' Powerpoint
Gambar 3.21 Component Diagram 3.9 Deployment Diagram Deployment diagram menggambarkan bagaimana komponen sistem di-deploy dalam infrastruktur sistem dan dimana komponen akan terletak (pada mesin, server, atau pada perangkat keras apa), serta bagaimana arsitektur sistem yang digunakan. peralatan Bluetooth
PC
Bluetooth Dongle <
>
<>
Gambar 3.22 Deployment diagram : arsitektur deployment.
33