diantaranya adalah penambahan fasilitas peta atau denah, arah mata angin, dan pencarian jalur terpendek. Diharapkan dengan penambahan fasilitas-fasilitas baru tersebut pengguna akan lebih mudah menggunakan sistem dan mendapatkan informasi yang diinginkan secara cepat.
2 Fase Desain sistem dan perangkat lunak (System and software design)
Dalam fase ini dilakukan kebutuhan sistem diabagi dalam kebutuhan hardware dan kebutuhan software. VRN adalah sistem yang menggunakan Engine 3D yang membutuhkan dukungan hardware yang cukup tinggi.
Dalam sistem yang telah dibuat oleh Nugroho (2004), disebutkan bahwa kebutuhan minimal hardware adalah sebagai berikut:
• Prosesor 1 GHz
• Memori internal 256 MB
• Kartu VGA 32 MB mendukung 3D • Monitor resolusi 800x600 pixel (24 bit) • Hardisk 70 MB
• Keyboard
sedangkan kebutuhan software untuk sistem ini adalah Sistem Operasi Microsoft Windows 98
Desain perangkat lunak melibatkan pengiden-tifikasian dan pendeskripsian dasar abstraksi sistem perangkat lunak dan hubungan mereka.
3 Fase Implementasi dan pengujian unit (Implementation and unit testing)
Selama fase ini, desain software diwujudkan sebagai sebuah set program atau bagian-bagian program. Pengujian unit melibatkan pengujian bahwa tiap unit telah bekerja sesuai dengan spesifikasinya.
Sistem VRN yang baru, akan diimplementasikan dalam 2 unit program. Yaitu Editor, yang berguna untuk mengedit dunia 3D agar tata letak ruangannya selalui sesuai dengan kondisi dan tata letak ruangan pada dunia sebenarnya. Unit tersebut akan dibatasi penggunaannya oleh orang tertentu saja, yang berhak untuk melakukan perubahan-perubahan pada dunia 3D.
Unit kedua adalah sistem navigasi itu sendiri, dimana user secara umum bisa berinteraksi dengan sistem. Dalam pengembangan yang dilakukan untuk saat ini, ditambahkan beberapa fungsi yang belum ada pada sistem sebelumnya, yaitu penambahan denah atau peta yang menginformasikan lokasi pengguna dalam sistem berserta arahnya, dan fungsi untuk mencari
ruangan-ruangan tertentu dengan menggunakan algoritma Djikstra.
4 Fase Integrasi dan pengujian sistem (Integration and system testing)
Fase ini menggabungkan unit-unit program yang ada pada fase sebelumnya, menjadi satu kesatuan sistem yang lengkap. Dalam hal ini, sistem VRN yang terdiri dari 2 unit, yaitu unit editor dan navigasi, akan dikemas menjadi sebuah paket program yang lengkap.
Selanjutnya, akan dilakukan testing atau pengujian terhadap sistem sebelum sistem diserahkan kepada pengguna.
HASIL DAN PEMBAHASAN
Fase Analisi Kebutuhan dan Definisi
Lingkup Masalah
Virtual Room Navigator adalah suatu perangkat lunak yang digunakan untuk merepresentasikan suatu bangunan atau gedung dalam miniatur 3D. Tujuannya adalah untuk memenuhi kebutuhan pengguna akan informasi tata ruang dan tata letak suatu bangunan atau gedung.
Sistem ini telah diterapkan pada Gedung Perpustakaan IPB berupa miniatur gedung dalam bentuk objek 3D, yang penerapannya dilakukan pada lantai dua, tiga, dan empat.
Analisis Pengguna
Pengguna dari sistem VRN dapat dibagi menjadi dua, yaitu
1 Pengelola perpustakaan IPB selaku administrator.
Administrator mempunyai tugas untuk melakukan perubahan yang berkaitan dengan tata letak pada ruangan yang ada. Setiap ada perubahan tata letak ruangan, operator harus melakukan update terhadap objek 3D pada sistem. Sehingga sistem akan selalu sesuai dengan kondisi sebenarnya.
2 Pengunjung perpustakaan.
Pengunjung perpustakaan (pengguna) dapat menggunakan sistem ini untuk menjelajahi gedung perpustakaan secara virtual. Pengguna juga dapat melakukan pencarian jalur terpendek yang bisa ditempuh dari suatu lokasi ke lokasi yang lainnya.
Fungsi sistem
Fungsi sistem secara umum adalah sebagai sarana informasi tata letak suatu bangunan kepada khalayak. Sistem ini juga dapat digunakan untuk mempromosikan suatu gedung yang baru dibangun. Sehingga ada gambaran secara umum bagi pengguna akan bangunan baru tersebut.
Fitur-fitur utama yang ada pada sistem adalah
• Tampilan ruangan dalam bentuk 3D yang dapat dikendalikan oleh pengguna untuk melakukan eksplorasi terhadap seluruh ruangan-ruangan yang ada.
• Tampilan denah yang berguna untuk membantu pengguna untuk mengetahui posisi dan arah pengguna saat ini dalam sistem, sehingga pengguna tidak akan tersesat didalamnya.
• Pencarian jalur terpendek.
Dengan fitur ini, pengguna dapat mencari jalur terpendek yang dapat ditempuh dari posisi saat ini menuju lokasi tertentu yang diinginkan pengguna.
• Editor
Editor adalah fitur yang hanya bisa diakses oleh administrator. Editor ini berguna untuk memperbaharui kondisi suatu ruangan, dan juga digunakan untuk menentukan jalur yang dapat dilalui oleh pengguna melalui fitur pencarian jalur terpendek.
Kebutuhan Antarmuka Eksternal
A Antarmuka Pengguna
Antarmuka pengguna untuk perangkat lunak ini dikembangkan dengan menggunakan modus grafik. Perangkat lunak ini menerima masukan dari pengguna melalui perintah klik pada tetikus (mouse) atau yang diketikkan melalui papan kunci (keyboard). Keluaran dari perangkat lunak ini dapat dilihat pengguna dengan menggunakan monitor secara langsung.
B Antarmuka Perangkat Keras
Kebutuhan minimum perangkat keras yang digunakan untuk menjalankan sistem VRN adalah sebuah PC dengan spesifikasi:
• Prosesor Intel Pentium 4 • Memori internal 256 MB
• Kartu VGA 32 MB yang mendukung aplikasi 3D
• Monitor dengan resolusi 1024 x 768 pixel
• Hard disk 70 MB. C Antarmuka Perangkat Lunak
Kebutuhan perangkat lunak yang dibutuhkan adalah
• Microsoft Windows XP • 3D State Engine
Kebutuhan Fungsional
Kebutuhan fungsional sistem meliputi • Fungsi untuk menampilkan navigator. Ini
adalah fungsi utama yang dapat diakses oleh pengguna biasa. Fitur ini akan langsung ditampilkan pada saat sistem dijalankan.
• Fungsi navigasi.
• Fungsi ini merupakan fungsi utama sistem, yaitu untuk menjelajah ruangan-ruangan di dalam bangunan virtual. Navigasi dilakukan dengan menekan tombol pada keyboard. Fungsi ini memiliki kemampuan untuk menggerakan pandangan user untuk maju, mundur, dan juga untuk memutar. Selama bernavigasi, posisi dan arah user dapat dilihat pada denah yang tersedia. • Fungsi pencarian jalur terpendek.
• Fungsi ini digunakan oleh user untuk mencari rute terpendek yang dapat ditempuh dari posisi user menuju lokasi yang diinginkan user.
• Fungsi untuk mengedit objek 3D.
• Fungsi ini hanya dapat diakeses oleh administrator, dengan melakukan proses login terlebih dahulu. Disini operator dapat pembaharuan terhadap tata letak dan objek-objek yang ada dalam dunia 3D agar sesuai dengan kondisi yang sesungguhnya. Dalam editor ini, administrator juga dapat menentukan jalur-jalur yang dapat ditempuh dalam pencarian jalur terpendek. • Fungsi untuk validasi pengguna.
• Fungsi untuk validasi, apakah user dapat masuk sebagai administrator yang dapat mengakses fungsi editor.
• Fungsi untuk mengubah password.
• Fungsi yang digunakan untuk mengubah password yang diperlukan untuk masuk dalam editor. Fungsi ini hanya dapat diakses oleh administrator yang telah melakukan proses login terlebih dahulu.
Fase Desain Sistem dan Perangkat Lunak Sistem VRN mempunyai dua kategori pengguna, yaitu pengguna biasa dan administrator. Oleh karena itu, sistem akan dibagi dalam dua unit, yaitu navigator dan
editor. Navigator adalah sistem yang digunakan oleh pengguna biasa. Editor adalah unit yang digunakan oleh administrator untuk melakukan pembaharuan terhadap objek-objek pada miniatur 3D. Diagram konteks sistem dapat dilihat pada Gambar 4. Untuk memperjelas Diagram Konteks atau Diagram Aliran Data (DAD) level 0 tersebut, dibuatlah DAD level 1, DAD level 2, dan DAD level 3 untuk proses yang terjadi pada Administrator, yang dapat dilihat pada Lampiran 1, Lampiran 2, Lampiran 3, Lampiran 4, Lampiran 5, dan Lampiran 6. Sedangkan DAD level 1 dan DAD level 2 Pengguna biasa dapat dilihat pada Lampiran 7 dan Lampiran 8.
Gambar 4 Diagram Konteks VRN.
Desain Basis Data
Sistem VRN memerlukan dua basis data, yang masing-masing digunakan untuk menyimpan miniatur 3D dan menyimpan graph. Basis data yang digunakan untuk menyimpan miniature 3D telah disediakan oleh Engine 3DState. Sedangkan basis data yang digunakan untuk menyimpan graph, digunakan Microsoft Access. Tabel yang dibuat adalah tabel Node dan Edge, yang definisinya dapat dilihat pada Lampiran 9.
Navigator
Perancangan antarmuka
Rancangan antarmuka untuk form Navigator dapat dilihat pada Gambar 5.
Gambar 5 Rancangan antar muka navigator.
Menu-menu yang ada pada form navigator • File
Digunakan untuk mengakses menu exit, untuk keluar dari sistem.
• Go to
Menu yang digunakan untuk melakukan pencarian jalur terpendek.
• Administrator
Menu untuk masuk ke dalam mode editor. • Help
Menampilkan bantuan singkat tentang bagaimana cara menggunakan sistem ini.
Perancangan Fungsi/Proses
Fungsi/proses dari Navigator adalah
1 Fungsi menampilkan miniatur 3D dari suatu bangunan.
2 Fungsi/proses melakukan navigasi. 3 Fungsi/proses mencari jalur terpendek 4 Fungsi/proses menampilkan posisi dan
arah user pada denah.
5 Fungsi/proses menampilkan halaman petunjuk penggunaan.
6 Fungsi/proses untuk login ke mode editor. 7 Fungsi/proses untuk keluar dari sistem.
Dalam form navigator, terdapat fungsi untuk melakukan login ke dalam mode editor. Perancangan antarmuka untuk form login dapat dilihat paga Gambar 6
Gambar 6 Rancangan antar muka login.
Editor
Perancangan antarmuka
Rancangan antarmuka untuk form Editor dapat dilihat pada Gambar 7
Menu-menu yang ada pada form Editor: • File
Menu untuk mengakses sub menu untuk menyimpan hasil perubahan, dan menu untuk keluar dari sistem.
• Password
Menu untuk mengakses form untuk mengganti password untuk masuk dalam form Editor VRN Administrator pilihan menu pilihan menu hasil
manajemen tampilan miniatur 3D
Pengguna biasa
Form Login
Username:
File Go to Administrator Help Form Navigator
Tampilan miniatur 3D Denah
Password:
• Logout
Menu untuk keluar dari mode Editor, dan kembali ke mode Navigator.
• Help
Menu untuk menampilkan form yang berisi petunjuk singkat cara pengoperasian program.
Gambar 7 Rancangan antarmuka Editor.
Perancangan Fungsi/Proses Fungsi/Proses dari editor adalah
1 Fungsi/proses melakukan proses editing pada miniatur 3D, yang bisa berupa a Menggeser objek
b Memutar objek
c Merubah ukuran objek (perbesar atau perkecil)
d Menambahkan objek baru. e Menghapus objek.
2 Fungsi/proses menambah atau mengurangi jalur yang akan digunakan dalam proses pencarian jalur terpendek.
Fungsi/proses ini bisa dibagi menjadi beberapa fungsi/proses lagi yaitu:
a Menambahkan node b Menggeser posisi node c Memberi nama node d Menghapus node e Menambah edge f Menghapus edge
3 Fungsi/proses untuk menyimpan hasil perubahan yang telah dilakukan oleh administrator.
4 Fungsi/proses untuk mengubah password yang digunakan untuk masuk kedalam mode editor
5 Fungsi atau proses untuk keluar dari mode editor, dan kembali ke mode navigator
6 Fungsi/proses untuk menampilkan halaman petunjuk penggunaan editor.
Dalam form editor, terdapat fungsi/proses untuk melakukan perubahan password.
Perancangan form untuk ganti password dapat dilihat pada Gambar 8
Gambar 8 Rancangan antarmuka form ganti password.
Fase Implementasi dan Pengujian Unit Kedua bagian yang telah dirancang, yaitu navigator dan editor diimplementasikan menggunakan komputer dengan spesifikasi sebagai berikut:
• Prosesor Intel Pentium D 2.8 GHz • Memori internal DDR2 1 GB • Kartu VGA 256 MB
• Monitor 17” resolusi 1024x768 pixel • Hardisk 250 GB
Perangkat lunak yang digunakan dalam implementasi dapat dilihat pada Tabel 1.
Tabel 1 Perangkat lunak dan fungsinya dalam implementasi
Perangkat Lunak Fungsi Microsoft Windows XP Professional SP2 Sistem Operasi 3Dstate 3D Engine SDK 3D Engine yang memuat fungsi-fungsi pemrosesan objek 3D 3D Webmaker 2.0 Editor miniatur 3D
bangunan Microsoft Visual Basic 6.0 Bahasa pemrograman untuk implementasi sistem Microsoft Office Access 2003
Berkas data untuk penyimpanan password dan graph Adobe Photoshop 7.0 Pengolah gambar tekstur 2D
Microsoft Paint Pengolah gambar tekstur 2D
Form Editor File Password Logout Help
Tampilan miniatur 3D Objek
browser
Objek View
Form Ganti Password Username:
Password lama:
OK Password baru:
Navigator
Navigator diimplementasikan mengguna-kan bahasa pemrograman Microsoft Visual Basic 6.0 pada lingkungan Microsoft Windows XP. Tampilan layar navigator ini dapat dilihat pada Lampiran 10.
Implementasi Algoritma Dijkstra dalam VRN
Algoritma Dijkstra adalah algoritma untuk mencari jalur terpendek pada suatu graph. Graph terdiri dari kumpulan vertek dan edge.
Dalam sistem VRN ini, algoritma Djikstra diimplementasikan menggunakan pendekatan Objek Oriented Programming (OOP). Sehingga akan dibentuk beberapa Class, yaitu 1 cPoint
2 cNode 3 cNodes 4 cEdge 5 cGraph
Hubungan keterkaitan antara 5 class ini digambarkan dengan diagram UML yang dapat dilihat pada Lampiran 11.
cPoint
cPoint adalah class untuk titik atau vertek dalam dunia 3D. Titik dalam dunia 3D dinyatakan dalam 3 koordinat, yaitu x, y dan z. Sehingga struktur class cPoint secara garis besar adalah sebagai berikut:
Class cPoint Atribut: • X Ækoordinat x • Y Æ koordinat y • Z Æ koordinat z Prosedur • setPoint • getPoint cNode
cNode sebenarnya adalah cPoint yang telah ditambah dengan atribut-atribut yang berguna dalam pencarian shortest path. Salah satunya adalah d, yaitu atribut yang berisi nilai perkiraan jarak terpendek sementara dari node yang bersangkutan terhadap node source.
Class cNode Atribut
• Point Æ class cPoint • ID Æ id node • Nama Æ nama node
• d Æ perkiraan jalur terpendek
cNodes
cNodes class yang berisi kumpulan class cNode. Class ini dibuat untuk memudahkan implementasi kumpulan vertek S dan Q.
Dalam class ditambahkan prosedur ExtractNode, yang berfungsi untuk mengambil node yang mempunyai cost (nilai d) paling kecil.
ExtractNode
d =Nodes.Item(1).d For each node in Nodes
If node.d < d d=node.d ExtractNode = node Nodes.remove node
Sehingga struktur class cNodes secara garis besar adalah
Class cNodes Atribut
• Nodes Æ kumpulan class cNode Prosedur
• addNode Æ menambahkan node • ExtractNode Æ mengambil node
dengan d terkecil
cEdge
Sesuai dengan namanya, cEdge adalah class untuk edge, yaitu garis yang menghubungkan antara 2 node. Karena graph yang akan dibentuk adalah graph yang mempunyai arah, maka node dibedakan jadi node awal dan node akhir.
Untuk mengetahui jarak antara dua node tersebut digunakan rumus jarak
Jarak= 2 1 2 2 1 2 2 1 2
)
(
)
(
)
(
x
−
x
+
y
−
y
+
z
−
z
Struktur dari Class cEdge adalah sebagai berikut:
Class cEdge Atribut
• Node1 Æ node awal • Node2Æ node akhir Prosedur
• getJarak
cGraph
Ini adalah class untuk implementasi graph, beserta pencarian shortest path-nya menggunakan algoritma Dijkstra.
Strukturnya secara umum adalah sebagai berikut:
Class cGraph Atribut
• myNodes Ækumpulan semua node • myEdges Æ kumpulan semua edge • myPath Æ urutan node yang
merupakan hasil path terpendek dari suatu vertek ke vertek yang lain • S Æ instance dari cNodes,
merupakan kumpulan vertek yang telah ditemukan jalur terpendeknya • Q Æ instance dari cNodes,
merupakan kumpulan vertek yang belum ditemukan jalur terpendeknya • pi Æ array yang berisi predecessor
untuk tiap vertek Prosedur
• Dijkstra Æ proses utama dari algoritma Djikstra
• InitDijkstra Æ inisialisasi Dijkstra • Relaxation Æ proses relaxation • setSourceNode
• getShortestPath Æ mencari path terpendek dari source node ke node tertentu
Dijkstra
Prosedur utama untuk algoritma Dijkstra. Source code-nya adalah sebagai berikut: Private Sub Djikstra()
Dim u As cNode 'inisialisasi InitDjisktra
While Q.Count <> 0
'ambil node dengan d (cost) paling kecil Set u = Q.ExtractNode
'tambahkan node u ke S S.addNode u
'untuk semua node (vertices) yang terhubung dengan u dan berada dalam list Q, ‘hitung ulang d (cost) -> relaxation Relaxation u
Wend End Sub InitDijkstra
Ini adalah implementasi dari algoritma Dijkstra untuk bagian inisialisasi. Implementasinya dalam VB adalah sebagai berikut:
Private Sub InitDjisktra() Dim i As Integer
'd (cost untuk node) = tak hingga (Infinite) selain node source (0)
For i = 1 To myNodes.Count If i <> sNode.ID Then myNodes(i).d = Infinite Else myNodes(i).d = 0 End If Next i
'init pi (predecessor) untuk tiap node ReDim pi(myNodes.Count) As cNode
'kosongkan S, dengan cara set S sebagai instance baru
Set S = New cNodes
'isi Q dengan seluruh nodes pada graph Set Q = New cNodes
For i = 1 To myNodes.Count Q.addNode myNodes(i) Next i
End Sub Relaxation
Implementasi dari algoritma relaxation, yaitu proses menghitung ulang semua cost (d) dalam himpunan vertek Q (V-S) yang
terhubung dengan node u.
Private Sub Relaxation(u As cNode) Dim i As Integer
Dim j As Integer Dim tEdge As cEdge 'untuk tiap2 node dalam Q For i = 1 To Q.Count
'cari node yang terhubung melalui node u
For j = 1 To myEdges.Count Set tEdge = myEdges(j)
If tEdge.Node1.ID = u.ID And tEdge.Node2.ID = Q.Nodes(i).ID Then 'jika terhubung melalui node u, ubah d jika lebih besar dari d(u)+w(u,v)
If Q.Nodes(i).d > u.d + tEdge.getJarak Then myGraph.Nodes(Q.Nodes(i).ID).d = u.d + tEdge.getJarak Set pi(Q.Nodes(i).ID) = u End If End If Next j Next i End Sub
setSourceNode dan getShortestPath
Sepasang prosedur ini digunakan untuk mencari jalur terpendek dari source node ke node-node yang lainnya. Sebelum memanggil prosedur getShortestPath, harus dijalankan dulu setSourceNode dengan input salah satu node pada graph sebagai source node. Kemudian akan dijalankan prosedur Dijkstra untuk mencari seluruh jalur terpendek yang bisa ditempuh dari source node menuju node-node yang lain. Selanjutnya, prosedur getShortestPath akan mengembalikan nilai jalur terpendek dari source node menuju node yang diinginkan.
Public Sub setNodeSource(sourceNode As cNode)
Set myPath = New Collection Set sNode = sourceNode
'lakukan algoritma djisktra Djikstra
End Sub
Public Function getShortestPath(nodeAkhir As cNode) As Boolean
Dim nodePath As cNode
Dim tempPath As New Collection
'temporari path (dalam urutan terbalik)
Set myPath = New Collection
Set nodePath = nodeAkhir
'jika tidak ditemukan path If nodePath.d = Infinite Then dSP = 0
getShortestPath = False Exit Function
End If
'jika ditemukan path tempPath.Add nodePath While nodePath.ID <> sNode.ID Set nodePath = pi(nodePath.ID) tempPath.Add nodePath Wend
dSP = nodeAkhir.d
Dim i As Integer
'buat path dari node awal ke node akhir For i = 0 To tempPath.Count - 1 myPath.Add tempPath.Item(tempPath.Count - i) Next i getShortestPath = True End Function
Ilustrasi Pencarian Jalur Terpendek pada VRN
Ilustrasi pencarian jalur terpendek menuju ruangan/lokasi yang diinginkan dapat dijelaskan sebagai berikut. Pada Lampiran 12, diilustrasikan proses awal pencarian jalur terpendek, dimana user berada pada ruangan E (diilustrasikan sebagai kotak hijau) dan akan mencari jalur yang bisa ditempuh untuk menuju ruangan C. Garis-garis warna biru beserta titik-titik warna merah adalah hasil implementasi graph pada ruangan tersebut.
Pada kasus ini, dapat dilihat bahwa node tujuannya adalah c1. Permasalahan yang
timbul adalah menentukan node awal (source node) untuk pencarian shortest path, karena user tidak tepat berada di atas sebuah node. Untuk mengatasi masalah ini, penulis membuat sebuah node baru yang bersifat sementara dengan lokasi tepat pada lokasi user. Setelah itu dibuat beberapa edge yang bersifat sementara juga dari node baru tersebut menuju node-node lain yang masih berdekatan.
Setalah node dan edge baru tersebut terbentuk, sekarang dapat ditentukan bahwa node awal dari pencarian shortest path ini adalah node yang baru tersebut. Kemudian akan dijalankan algoritma Dijkstra untuk menentukan path terpendek yang dapat ditempuh menuju c1. Ilustrasinya dapat dilihat pada Lampiran 13.
Kontrol Navigasi
Pada bagian navigator ini, pengguna dapat melakukan navigasi dengan menggunakan tombol-tombol keyboard. Tombol yang digunakan adalah tombol panah atas untuk maju, tombol panah bawah untuk mundur, dan tombol kiri dan kanan untuk gerak berputar ke kiri dan ke kanan. Fungsi pencarian jalur terpendek, diimplementasikan melalui menu Go To. Pengguna dapat memilih pilihan ruangan/lokasi yang ada, atau dapat juga dengan mengetikkan secara langsung pada form yang disediakan. Tampilan form untuk pencarian jalur terpendek menuju suatu ruangan/lokasi tertentu dapat dilihat pada Lampiran 14.
Implementasi denah
Denah ditampilkan dalam sebuah area kecil disamping tampilan miniatur 3D. Tampilan ini akan merepresentasikan posisi dan arah dari pengguna dalam sistem miniatur 3D. Implementasi tampilan layar denah dapat dilihat pada Lampiran 15.
Editor
Sama halnya dengan navigator, editor juga diimplementasikan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0. Untuk keperluan penyimpanan password dan graph digunakan database Microsoft Office Access 2003. Tampilan implementasi layar editor dapat dilihat pada Lampiran 16. Sebelum pengguna dapat menggunakan fungsi-fungsi dalam editor, pengguna diharuskan memasukkan kata sandi (password) terlebih dahulu. Tampilan implementasi form login ini dapat dilihat pada Lampiran 17. Untuk melakukan penggantian password, pengguna dapat menggunakan menu Change Password. Implementasi form penggantian password ini dapat dilihat pada Lampiran 18.
Pengujian Unit
Setelah bagian navigator dan editor selesai diimplementasikan, selanjutnya masing-masing bagian akan diuji apakah fungsi/proses pada masing-masing bagian tersebut telah berjalan sebagaimana mestinya. Hasil pengujian untuk bagian navigator dapat dilihat pada Lampiran 19. Sedangkan hasil pengujian bagian editor dapat dilihat pada Lampiran 20.
Fase Integrasi dan Pengujian Sistem Setalah semua bagian-bagian sistem telah selesai diimplementasikan dan diuji, dan telah berjalan sesuai dengan fungsi yang diharapkan, selanjutnya masing-masing bagian ini, yaitu navigator dan editor disatukan menjadi satu kesatuan paket program.
Pengujian sistem (sistem testing) dilakukan untuk memastikan apakah semua kebutuhan fungsional sistem telah terpenuhi. Hasil uji sistem menggunakan metode black box dapat dilihat pada Lampiran 21 dan Lampiran 22.
KESIMPULAN DAN SARAN
Kesimpulan
Sistem Virtual Room Navigator (VRN) yang dikembangkan kali ini merupakan kelanjutan dari sistem VRN sebelumnya, yang telah dikembangkan oleh Nugroho (2004). Pengembangan dilakukan berdasarkan saran-saran yang diberikan oleh pengembang sebelumnya. Fasilitas-fasilitas yang telah ditambahkan pada sistem VRN yang baru ini diantaranya adalah:
• Penambahan fasilitas denah 2D untuk mengetahui lokasi aktual tampak dari atas. • Fasilitas pencarian jalur terpendek untuk
mempermudah pencarian ruangan tertentu. • Fasilitas editor untuk mempermudah
sistem administrator dalam melakukan update miniatur 3D agar selalu sesuai dengan kondisi sesungguhnya.
Saran
Meskipun sistem ini merupakan perbaikan dari sistem sebelumnya, namun sistem ini masih mempunyai banyak kekurangan dan perlu pengembangan lebih lanjut. Pengembangan yang masih perlu dilakukan diantaranya adalah:
• Petunjuk ruangan terdekat yang berubah-ubah sesuai dengan lokasi aktual.
• Integrasi sistem VRN dengan sistem yang lainnya, misalnya dengan sistem pencarian buku.
• Penggantian engine 3D State dengan engine yang lebih baru agar bisa menghasilkan visualisasi yang lebih mendekati kenyataan.
DAFTAR PUSTAKA
Buchanan B, Pawaskar C, Hauck M, Mouton O. 1997. 3D Programming Guide. 3Dstate Ltd, Israel.
Diestel R. 2005. Graph Theory. Springer-Verlag Heidelberg, New York.
Freeland S, Thomas C, Robert L. 1997. Data Structures and Algorithms. McGill University:
School of Computer Science.
http://www.cs.mcgill.ca/~cs251/OldCo urses/1997/topic29/index.html. [7 Desember 2004]
Hadwiger M. 2001. Design and Architecture of a Portable and Extensible Multiplayer 3D Game Engine. Thesis. Institute of Computer Graphics Vienna University of Technology.
Kay R. 2002. System Development Life Cycle. Computer World Inc.
http://www.computerworld.com/action /article.do?command=viewArticleBasi c&articleId=71151&pageNumber=1. [21 Maret 2007]