7 BAB 2 LANDASAN TEORI 2.1 Game 2.1.1 Sejarah Game Manusia

advertisement
7
BAB 2
LANDASAN TEORI
2.1
2.1.1
Game
Sejarah Game
Manusia telah mengenal dan memainkan game sejak zaman dahulu. Di
Sahara ditemukan sebuah papan permainan terbuat dari batu yang berusia ±
5000 tahun. Menurut David Fox dan Roman Verhosek (2002, p1), permainan
Go, yang populer di negara–negara oriental, telah ada sejak 2000 B.C.. Bahkan
permainan mirip Backgamon (Tabula, Nard) dicatat pada script romawi kuno.
Memasuki zaman modern, jenis permainan (game) pun memasuki era baru.
Permainan–permainan seperti Pong, Zork, dan lain–lain muncul di komputer
dan digemari oleh orang banyak.
Game Arcade, yang dipelopori hits seperti Pac-man, berhasil
menjaring jutaan pemain. Tidak mau kalah dengan Arcade, Console systems
seperti Magnavox Odyssey, Atari 2006, Mattel Intellvision dan Calleco Vision
menciptakan game yang bisa dimainkan di rumah. Seiring dengan itu, pada
tahun 1985 Nintendo Entertainment System (NES) menghebohkan orang–orang
dengan grafik dan gameworld yang luar biasa lewat Super Mario Brothers.
Pada perkembangannya, computer gaming menjadi semakin diterima
dan populer melalui beberapa bestseller seperti : Doom, Quake dan Tomb Rider.
Clearly ultra realistic 3D merupakan kunci suksesnya game tersebut.
8
Pada akhir 90-an dan awal 2000-an, dengan berkembangnya game
seperti : Ultima Online, Ragnarok Online dan Everquest menyadarkan kita
bahwa game tidak hanya menarik dengan grafik yang bagus, namun juga dengan
kehadiran pemain lain (multiplayer).
Sementara multiplayer game terus berkembang, muncul paradigma
baru dalam dunia informasi. Dengan banyaknya penggunan handphone, game
turut berkembang dan mendukung pesatnya pemasaran micro device tersebut.
Walaupun grafik yang dapat didukung tidak sebanding dengan console,
handphone
menawarkan
kepraktisan
yang
tidak
bisa
diberikan
oleh
console(David Fox dan Roman Verhosek, 2002, pp1-2).
2.1.2
Game Mobile
Pengembangan global dari game mobile dipelopori oleh game i-Mode.
I-Mode merupakan layanan Internet wireless yang sangat popular di Jepang juga
di negara lain.
Do Communications Over the Mobile Network (DoCoMo) adalah yang
pertama kali memperkenalkan Java dan game pada handphone(Anonymous A).
Jepang merupakan negara pertama yang memperkenalkan warna layar dan
grafik 3-Dimensi (3D) untuk hanphone, yang mana sangat penting dalam
perluasan penjualan game mobile diluar game–game mobile yang sangat
sederhana.
9
Game mobile adalah suatu game komputer yang dimainkan di
handphone, smartphone, PDA, atau handheld. Game mobile bahkan dapat
dimainkan dengan mengunakan teknologi komunikasi yang ada pada alatnya
sendiri, contohnya pesan teks (SMS), pesan multimedia (MMS) atau
pengidentifikasian GPRS(Anonymous B).
2.1.3
Role-Playing Game (RPG)
Role-Playing Game (RPG) merupakan salah satu dari beragam genre
game yang ada saat ini. Karakteristik dari game ber-genre ini adalah
memberikan kesempatan bagi pemain untuk lebih jauh berperan dalam game.
RPG adalah sebuah permainan di mana para pemain memainkan peran tokoh–
tokoh khayalan. Game dengan jenis ini biasanya lebih digemari oleh remaja pria
yang memiliki intelegensia tinggi.
Dalam permainan RPG, jarang ada yang kalah atau menang. Ini
membuat permainan RPG berbeda dari jenis permainan lainnya seperti
monopoli atau ular tangga, permainan kartu, olah raga dan permainan lainnya.
Dalam RPG, karakter memiliki atribut yang bervariasi seperti hit
points, Strength, Magic, Item, equipment, dan lain-lain. Atribut–atribut tersebut
diperlihatkan untuk pemain pada suatu layar status dan diwakili dengan nilai
numeric, malah beberapa game menggambarkan atribut–atribut tersebut dalam
bentuk graphical seperti status bar dan sejenisnya.
10
Gambar 2.1 Contoh Layar Status Yang Menunjukkan Atribut-Atribut Pemain
(Final Fantasy VIII,1999)
Selanjutnya pemain dapat mengembangkan karakter–karakternya
dengan meningkatkan atribut–atribut yang dimilikinya. Peningkatan tersebut
diperoleh sebagai reward dari pemenuhan suatu goal atau tantangan tertentu.
Kondisi–kondisi yang dibutuhkan untuk memperoleh reward tersebut juga
bervariasi, ada game yang berfokus pada ”pembantaian” musuh, namun ada juga
yang memberi reward berdasar pada penyelesaian quest.
Saat ini ada dua sistem yang umum dipakai untuk memberi reward
yaitu : experience system (level-based system), training system (skill-based
system). Experience system merupakan sistem yang masih umum digunakan.
Sistem ini diwariskan dari RPG tradisional. Pada sistem ini karakter
memperoleh experience points melalui suatu pemenuhan goal yang kemudian
11
digunakan untuk meningkatkan skill. Training system diperkenalkan pertama
kali dalam game Dungeon Master. Pada sistem ini skill karakter ditingkatkan
dengan sesering mungkin menggunakannya. Misalnya semakin sering karakter
menggunakan magic maka kekuatan magic-nya semakin terasah. Kedua sistem
ini memiliki kelebihan dan kekurangan masing-masing. Experience system
menawarkan fleksibilitas dan pemerataan dalam pengembangan karakter, namun
tidak realistis, dan sebaliknya pada training system(Anonymous C).
2.2
2.2.1
Java
Sejarah Java
Bahasa pemograman Java pertama, yang dinamakan juga dengan Oak,
lahir dari The Green Project, yang berjalan mulai awal tahun 1991 hingga
musim panas 1992(Anonymous D). Proyek ini dimotori oleh Patrick Naughton,
Mike Sheridan, James Gosling dan Bill Joy berserta sembilan programmer
lainnya dari Sun Microsystems. Proyek ini ditutup dengan menghasilkan sebuah
program Java Oak pertama, yang diperuntukkan sebagai pengkontrol sebuah
peralatan dengan teknologi touch screen, seperti pada PDA sekarang ini.
Teknologi baru ini dinamakan Star Seven (*7).
Era setelah Star Seven selesai, sebuah anak perusahaan TV kabel
bekerjasama dengan beberapa orang dari The Green Project. Dalam rentang
waktu yang singkat ditetapkan bahwa Internet merupakan medium yang
menjebatani kerja dan ide diantara mereka. Mereka menjadikan webbrowser
12
Mosaic, sebagai landasan awal untuk membuat Java browser pertama yang
dinamakan ”Web Runner”. Perkembangan release pertama, Web Runner
berganti nama menjadi Hot Java.
Kesuksesan mereka diikuti dengan untuk pertama kali diberitakan
dalam surat kabar Sun Jose Mercury News pada tanggal 23 Mei 1995.
Sayangnya terjadi perpecahan diantara mereka, tiga dari pimpinan utama proyek
Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc
Andreessen membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela
ruangan kerja ”bapak Java”, James Gosling. Nama oak ini tidak dipakai untuk
versi release Java karena sudah terdaftar software dengan merek dagang itu,
sehingga diambil nama penggantinya menjadi ”Java”, diambil dari nama kopi
tubruk kesukaan bapak Gosling.
2.2.2
Java 2 Standard Edition (J2SE)
Menurut M. Shalahuddin dan Rosa A.S. (2006, p4), Java 2 Standard
Edition (J2SE) adalah inti dari bahasa pemograman Java. Java Development Kit
(JDK) adalah salah satu tool dari J2SE untuk mengkompilasi dan menjalankan
program Java. Di dalamnya terdapat tool untuk mengkompilasi program Java
dan JRE.
13
2.2.3
2.2.3.1
Java 2 Micro Edition (J2ME)
Pengertian J2ME
Java 2 Micro Edition (J2ME) adalah lingkungan pengembangan
yang didesain untuk meletakkan perangkat lunak Java pada barang elektronik
beserta perangkat pendukungnya.
J2ME membawa Java ke dunia informasi, komunikasi dan perangkat
komputasi selain perangkat komputer desktop, yang biasanya lebih kecil.
J2ME bisa digunakan pada handphone, peger, Personal Digital Assistants
(PDA) dan sejenisnya(M. Shalahuddin dan Rosa A.S., 2006, p5).
2.2.3.2
Arsitektur J2ME
Menurut James Keogh, arsitektur J2ME terdiri dari 3 lapisan
perangkat lunak (Gambar 2.2), yaitu :
Gambar 2.2 Lapisan Dari Arsitektur J2ME
(James Keogh, 2003, p6)
14
2.2.3.2.1
Konfigurasi J2ME
Lapisan
pertama
adalah
lapisan
konfigurasi.
Lapisan
ini
mengandung Java Virtual Machine (JVM), yang secara langsung saling
berhubungan dengan sistem operasi. Lapisan ini juga menangani interaksi
antara profile dan JVM.
Konfigurasi
mendefinisikan
minimum
Java
libraries
dan
kapabilitas yang dipunyai oleh para developer J2ME. Artinya antara mobile
device yang Java enabled maka akan ditemui konfigurasi yang sama. Bila
dianalogikan dengan sekelompok mobil, maka sebuah mobil dengan mobil
lainnya memiliki kesamaan, misalnya mempunyai roda, kaca spion, dan
lain–lain.
Roda
dan
kaca
spion
itulah
yang
disebut
sebagai
konfigurasi(Faisal Wiryasantika, 2003, p2).
Jadi konfigurasi hanyalah mengatur hal–hal yang berkaitan dengan
“kesamaan“, bukan mengatur hal–hal yang “membedakan“, sehingga
konfigurasi
memastikan
portabilitas
antar
device.
Menurut
Faisal
Wiryasantika (2003,p3), perkembangan konfigurasi ditentukan oleh Java
Community Process (JCP), inilah badan non-profit yang berkutat dengan
perkembangan teknologi java. Saat ini telah didefinisikan 2 konfigurasi yaitu
connected device configuration (CDC) dan connected limited device
configuration (CLDC).
15
2.2.3.2.1.1
Connected Device Configuration (CDC)
Connected Device Configuration (CDC) bertujuan untuk
mangaplikasikan kemampuan-kemampuan utama dari tiap-tiap jenis
device, dimana target CDC tersebut adalah memiliki minimal memori
2MB termasuk RAM dan ROM. CDC menspesifikasikan penggunaan Java
2 Platform Virtual Machine secara penuh dan disebut juga Compact
Virtual Machine (CVM).
Walaupun CVM mendukung fitur yang sama seperti J2SE Virtual
Machine, CVM dirancang untuk konsumen dan embedded device. Ini
berarti bahwa J2SE Virtual Machine telah dikembangkan ulang untuk
disesuaikan dengan batasan-batasan dari device yang memiliki resource
terbatas(Vartan Piroumian, 2002, p3).
2.2.3.2.1.2
Connected Limited Device Configuration (CLDC)
Tujuan dari Connected Limited Device Configuration (CLDC)
adalah untuk menggambarkan suatu platform Java standar untuk device
dengan spesifikasi memori 160KB. Karena variasi sistem perangkat lunak
yang luas pada berbagai personal device, CLDC membuat asumsi
minimum tentang lingkungan dimana CLDC berada. Sebagai contoh,
sebuah OS mungkin akan mendukung berbagai proses secara bersamaan,
yang lainnya mungkin atau mungkin tidak mendukung sistem file(Vartan
Piroumian, 2002, p7).
16
Gambar 2.3 Hubungan Antara J2SE, CDC dan CLDC
(Vartan Piroumian, 2002, p8)
Dari gambar di atas(Gambar 2.3) kita dapat melihat dan
mengetahui bahwa CLDC merupakan subset dari CDC. Kita juga dapat
mengetahui bahwa CDC dan CLDC merupakan subset dari platform J2SE.
2.2.3.2.2
Profile J2ME
Lapisan kedua adalah lapisan profile. Terdiri dari sekumpulan kecil
Application Programming Interfaces (API). Profile merupakan kebalikan
dari konfigurasi, yaitu mengatur hal–hal yang spesifik untuk sebuah device.
Kembali pada analogi mobil, sebuah mobil BMW tentu memiliki ciri
spesifik yang tidak dimiliki oleh mobil Mercedes.
Profile
terdiri
dari
class–class
Java
yang
menyediakan
implementasi dari fitur–fitur untuk small computing device. Saat ini terdapat
7 profile dalam J2ME, yaitu(James Keogh, 2003, pp13-14) :
17
1. Foundation Profile
Foundation Profile digunakan dengan konfigurasi CDC dan merupakan
inti untuk hampir semua profile yang menggunakan konfigurasi CDC
karena Foundation Profile mengandung class–class dasar Java.
2. Game Profile
Game Profile digunakan dengan konfigurasi CDC dan mengandung
class–class penting untuk pengembangan aplikasi game untuk semua
small computing device yang menggunakan konfigurasi CDC.
3. Mobile Information Device Profile (MIDP)
Mobile
Information
Device
Profile
(MIDP)
digunakan
dengan
konfigurasi CLDC dan mengandung class–class yang menyediakan
tampat penyimpanan lokal, user interface dan kapabilitas jaringan untuk
aplikasi yang berjalan pada mobile computing device seperti Palm OS
device. MIDP digunakan dengan wireless aplikasi Java.
4. Personal Digital Assistants (PDA) Profile
PDA Profile digunakan dengan konfigurasi CLDC dan mengandung
class–class yang menggunakan sumber daya sophisticated yang terdapat
pada PDA. Fitur ini mengandung display yang lebih baik dan memori
yang lebih besar dibandingkan sumber daya yang sama yang terdapat
pada MIDP mobile device.
18
5. Personal Profile
Personal Profile digunakan dengan konfigurasi CDC dan foundation
profile dan mengandung class–class untuk implementasi user interface
yang kompleks. Foundation profile menyediakan class–class dasar dan
personal profile menyediakan class–class untuk implementasi user
interface yang teruji.
6. Personal Basic Profile
Personal basic profile serupa dengan personal profile yaitu digunakan
dengan konfigurasi CDC dan foundation profile. Personal basic profile
menyediakan class–class untuk implementasi user interface yang
sederhana, yaitu user interface yang mampu untuk menampilkan sebuah
window pada waktu yang sama.
7. RMI Profile
RMI profile digunakan dengan konfigurasi CDC dan foundation profile
untuk menyediakan class remote method invocation untuk class–class
dasar yang dimiliki foundation profile.
2.2.3.2.3
Mobile Information Device Profile (MIDP)
Lapisan ketiga adalah Mobile Information Device Profile (MIDP).
Lapisan MIDP mengandung Java API untuk koneksi jaringan pemakai dan
19
sebagai penghubung antar pemakai. Lapisan ini juga mampu mengakses ke
libraries CLDC dan libraries MIDP(James Keogh, 2003, p36).
2.2.4
Java 2 Enterprise Edition (J2EE)
J2EE adalah kombinasi dari beberapa teknologi yang menawarkan
suatu keterpaduan untuk menyatukan sistem di sisi server. Berikut ini adalah
beberapa fungsi dari J2EE, yaitu(Anonymous E) :
1. Mendukung HTML, baik sebagai Java Applet maupun sebagai aplikasi,
yang disokong oleh Java Server Page dan kode Servlet untuk membentuk
HTML dan data terformat lainnya untuk client.
2. Servlet merupakan sebuah program sederhana yang berjalan di server. Istilah
servlet juga ditujukan untuk aplikasi yang berjalan di dalam lingkungan Web
Server, yang dapat disamakan dengan Java Applet yang berjalan di dalam
lingkungan Web Browser.
3. Enterprise JavaBeans (EJBs)
EJB server dapat berfungsi sebagai keamanan dan manajemen memori.
4. Java Database Connectivity (JDBC)
JDBC adalah interface untuk database Java.
5. Java Servlet API
Java Servlet API dapat meningkatkan konsistensi para pengembang tanpa
memerlukan grafis interface pemakai.
20
2.3
Grafik dan Sprite
Salah satu elemen grafik yang penting dalam game adalah sprite.
Menurut Martin Wells (2004, p271), sprite merupakan kumpulan image yang
mewakili berbagai states dalam kesatuan graphikal. Pengertian secara teratur
beberapa sprite akan menghasilkan suatu animasi. Objek bergerak yang sering kita
lihat dalam game, misalnya pemain bola pada game Winning Eleven, atau karakter
game lainnya merupakan contoh dari sprite.
Gambar 2.4 Contoh Sprite Pada Game Suikoden II
(Suikoden II, 1999)
Dalam MIDP, semua image yang digunakan untuk grafik ber-format
PNG. Begitu juga image yang dibuat sprite. PNG merupakan format kompresi
yang menggunakan 24–bit color palette. File PNG yang disimpan akan mencatat
data–data berupa : header dan data part. Oleh karena data header membutuhkan
space yang besar, maka semakin banyak file yang digunakan semakin besar pula
21
space yang perlu dialokasi. Karena hampir semua image menggunakan color
pelette (data yang disimpan header) yang sama, maka untuk menghemat space,
semua frame sprite ditempatkan dalam sebuah filmstrip yang menggunakan satu
header saja(David Fox dan Roman Verhosek, 2002, p228).
Gambar 2.5 Gambaran Penyimpanan File PNG
(Martin J. Wells, 2004, p272)
Gambar 2.6 Contoh Filmstrip
(Anonymous F)
22
2.4
Entity Relationship Diagram (ERD)
Entity Relationship Diagram
mengandung
informasi-informasi
(ERD)
mengenai
merupakan
arsitektur
diagram yang
dari
relational
database(Anonymous G). Karena itu ERD dipakai untuk memahami struktur dari
suatu database. ERD sendiri tidak dapat menjelaskan mengenai aliran data atau
segala sesuatu yang berhubungan dengan bagaimana suatu data berubah. Walau
begitu, meng-explore ERD merupakan langkah awal dalam memahami database
design. Ada 2 komponen utama dalam ERD yaitu entity dan relationship.
2.4.1
Entity
Entity digambarkan sebagai tabel-tabel dengan baris dan kolom.
Masing-masing kolom memiliki nama dan mengandung tipe informasi tertentu,
sedangkan baris-baris mengandung instance khusus yang menggambarkan apa
yang diwakili oleh data tersebut. Tabel ini sendiri harus memiliki nama yang
menggambarkan apa yang di tunjukkannya.
2.4.2
Relationship
Relationship digambarkan dengan garis yang menghubungkan 2
tabel/entity. Setiap garis menjelaskan relationship ke semua arah. Untuk
menghubungkan 2 tabel, maka dibutuhkan connector yang berupa key. Key yang
umumnya digunakan adalah primary key dan foreign key. Primary key
merupakan key unik yang digunakan untuk mengidentifikasi suatu baris dalam
tabel. Sedangkan foreign key digunakan sebagai penunjuk ke tabel lain dengan
tujuan untuk menghubungkan tabel-tabel bersangkutan.
23
2.5
Jenis-Jenis Koneksi
Terdapat beberapa jenis koneksi, yaitu(Forum Nokia, 2003, pp8-13) :
1. Sharing by phone
Game dimainkan oleh lebih dari satu orang dengan menggunakan
sebuah handphone. Konsekuensinya pemain–pemain terebut harus bergantian
dalam menggunakan handphone. Contoh game yang menggunakan sistem ini :
Battle Ship pada Sony Ericson T100.
2.
Hypertext Transfer Protocol (HTTP)
HTTP didukung oleh semua handphone MIDP. HTTP pendukung
yang bertugas dalam MIDP adalah HTTP pendukung client. Ini berarti bahwa
MIDlet bertindak seperti Web browser. HTTP request akan dikirim ke HTTP
server, dan diterima kembali sebagai HTTP response. Pengembang MIDlet
kadang–kadang membuat kesalahan pada corak yang disertakan dalam
implementasi HTTP Internet, dimana biasanya tidak dapat bekerja pada
jaringan mobile :
1. HTTP streaming
Karena implementasi HTTP Internet dibangun di atas protokol
TCP, implementasi HTTP Internet dapat memperoleh keuntungan dan
menulis berulang–ulang dari aliran data melalui HTTP. Bagaimanapun,
jaringan mobile dapat menggunakan implementasi non-TCP (contohnya
WAP), dan implementasi ini tidak menggunakan streaming.
24
2. Delayed Responses
Langkah yang kadang dicoba oleh pengembang MIDlet sewaktu
mereka menemukan bahwa HTTP streaming tidak dapat berfungsi adalah
menunda pengiriman HTTP response dari server sampai terjadi beberapa
event (contohnya : pemain lain berjalan).
3. Multiple HTTP Connections
Handphone sering tidak mempunyai sumber daya untuk
mendukung koneksi HTTP secara yang banyak dibuka, yang sering
memakan banyak resource. HTTP server tidak memiliki cara untuk
memulai koneksi ke HTTP client.
Gambar 2.7 Jaringan MIDP HTTP
(Forum Nokia, 2003, p8)
3.
Secure HTTP (HTTPS)
HTTPS merupakan Secure HTTP. HTTPS digunakan oleh Internet
electronic commerce services dan harus didukung oleh implementasi MIDP
2.0.
25
4.
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP) adalah salah satu pokok dari
protocol Internet. TCP merupkan protokol yang reliable, dan berorientasi pada
koneksi, yang artinya :
1. Data yang dikirim selalu diterima sekali, di order yang tepat, dan bebas
dari error.
2. Koneksi dibangun di antara 2 mesin komunikasi dan terjaga selama durasi
dari komunikasi tersebut.
Kita dapat menganalogikan koneksi TCP seperti percakapan telepon antara
2 mesin komunikasi. Pada Internet, HTTP biasanya diimplementasi
menggunakan TCP.
5.
User Datagram Protocol (UDP)
User Datagram Protocol (UDP), protokol pokok lainnya dari
Internet, UDP merupakan protokol yang tidak reliable, dan berorientasi paket,
yang artinya :
1. Paket data yang dikirim mungkin diterima sekali, lebih dari sekali, tidak
pernah, atau bahkan diterima di order yang salah.
2. Tidak ada koneksi antara mesin komunikasi.
26
6.
Serial Cable
Kegunaan dari serial cable adalah memungkinkan 2 orang
memainkan permainan secara bersamaan, dengan catatan kedua pemain berada
di tempat yang sama.
Gambar 2.8 Komunikasi Dengan Serial Cable Antara Handphone
(Forum Nokia, 2003, p11)
7.
Infra-Red (IrDA)
Kegunaan dari Infra-Red adalah sama dengan serial cable, yaitu
memungkinkan 2 orang memainkan permainan secara bersamaan, dengan
catatan kedua pemain berada di tempat yang sama. Bedanya Infra-Red
menggunakan media infra merah dan masing–masing handphone harus saling
berhadapan.
Gambar 2.9 Komunikasi Infra-Red Antara Handphone
(Forum Nokia, 2003, p11)
27
8.
Bluetooth
Bluetooth adalah teknologi radio jarak pendek yang dapat
memungkinkan hingga 8 device untuk berkomunikasi secara bersama dalam
jarak sekitar 10 meter.
Gambar 2.10 Komunikasi Bluetooth Antara Handphone
(Forum Nokia, 2003, p12)
9.
Short Message Service (SMS)
Short Message Service (SMS) adalah teknologi yang memungkinkan
sebuah handphone untuk bertukaran pesan singkat dengan handphone lain
atau dengan server komputer seperti server game. SMS dikenal dengan bentuk
pesan teksnya, tapi ianya dapat digunakan juga untuk mengirim data biner
seperti ring tone atau data game.
28
Gambar 2.11 Komunikasi SMS Antara Handphone Dan Server
(Forum Nokia, 2003, p12)
10.
Multimedia Messaging Service (MMS)
Multimedia Messaging Service (MMS) adalah versi dari SMS yang
diperbaharui yang memungkinkan pesan memiliki beberapa bagian, meliputi
teks, gambar, suara dan video. MMS diimplementasikan dengan menggunakan
kombinasi dari SMS dan HTTP.
2.6
Flowchart
Findra Kartika Sari Dewi mendefinisikan flowchart sebagai representasi
grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu
permasalahan yang terdiri atas sekumpulan simbol, dimana masing-masing simbol
merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan
input, pemrosesan input, dan diakhiri dengan penampilan output.
29
Berikut ini adalah simbol-simbol yang terdapat dalam flowchart, antara
lain :
1. Simbol Terminator
Simbol terminator digambarkan dengan bangun seperti Gambar 2.12.
Terminator berfungsi untuk menandai awal dan akhir dari suatu flowchart.
Simbol ini biasanya diberi label START untuk menandai awal dari flowchart
dan label STOP untuk menandai akhir dari flowchart.
Gambar 2.12 Simbol Terminator
(Findra Kartika Sari Dewi, 2005, p5)
2. Simbol Proses
Simbol proses digambarkan dengan bangun persegi panjang(Gambar
2.13). Simbol ini digunakan untuk melambangkan kegiatan pemrosesan input.
30
Gambar 2.13 Simbol Proses
(Findra Kartika Sari Dewi, 2005, p3)
3. Simbol Percabangan
Simbol
percabangan
digambarkan
dengan
bangun
belah
ketupat(Gambar 2.14). Simbol ini digunakan untuk pemeriksaan terhadap
suatu kondisi. Dalam simbol ini akan dituliskan keadaan yang harus dipenuhi.
Hasil dari pemeriksaan dalam simbol ini adalah YES atau NO. Jika
pemeriksaan menghasilkan keadaaan benar, maka jalur yang harus dipilih
adalah jalur yang berlabel YES, sedangkan jika pemeriksaan menghasilkan
keadaan salah, maka jalur yang harus dipilih adalah yang berlabel NO.
Gambar 2.14 Simbol Percabangan
(Findra Kartika Sari Dewi, 2005, p4)
31
4. Simbol Input
Simbol input digambarkan dengan bangun jajar genjang (Gambar
2.15). Simbol ini digunakan untuk melambangkan kegiatan penerimaan input.
Gambar 2.15 Simbol Input
(Findra Kartika Sari Dewi, 2005, p3)
5. Simbol Garis Alir
Simbol garis alir digambarkan dengan anak panah(Gambar 2.16).
Simbol ini digunakan untuk menghubungkan setiap langkah dalam flowchart
dan menunjukkan kemana arah aliran diagram. Anak panah ini harus
mempunyai arah dari kiri ke kanan atau dari atas ke bawah.
Gambar 2.16 Simbol Garis Alir
(Findra Kartika Sari Dewi, 2005, p4)
32
2.7
2.7.1
Unified Modelling Language (UML)
Definisi Unified Modelling Language (UML)
Unified Modelling Language (UML) adalah bahasa standar untuk
menuliskan rancangan perangkat lunak(Anonymous H). UML digunakan untuk
menggambarkan, mengembangkan, dan mendokumentasikan artifact dari
sebuah sistem perangkat lunak.
Dengan menggunakan UML kita dapat membuat model untuk semua
jenis aplikasi perangkat lunak, dimana aplikasi tersebut dapat berjalan pada
perangkat keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa
pemograman apapun.
2.7.2 Komponen–Komponen Unified Modelling Language (UML)
Diagram UML dibagi dalam 2 kelompok besar yaitu Behavioral
diagram dan Structural diagram. Behavioral diagram digunakan untuk
menggambarkan, menunjukkan, mengembangkan, dan mendokumentasikan
aspek–aspek dinamis dari suatu sistem.
Behavioral diagram terdiri dari :
1. Use case diagram
2. Sequence diagram
3. Collaboration diagram
4. Statechart diagram
5. Activity diagram
33
Structural diagram digunakan untuk menggambarkan, menunjukkan,
mengembangkan, dan mendokumentasikan aspek–aspek statis suatu sistem.
Structural diagram terdiri dari :
1. Class diagram
2. Component diagram
3. Deplyoment diagram
2.7.2.1
Use Case Diagram
Use Case diagram menggambarkan fungsionalitas yang diharapkan
dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan
bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi
antara aktor dengan sistem. use case merupakan sebuah pekerjaan tertentu,
misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya.
Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang
berinteraksi dengan sistem untuk melakukan pekerjaan–pekerjaan tertentu.
Sebuah use case dapat meng-include fungsionalitas use case lain sebagai
bagian dari proses dalam dirinya. Sebuah use case juga dapat meng-extend use
case lain dengan behaviour-nya sendiri.
34
Gambar 2.17 Contoh Use Case Diagram
(Anonymous H, p1)
2.7.2.2
Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam
sistem yang dirancang, bagaimana masing–masing alir berawal, decision yang
mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat
menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Aktivitas digambarkan dengan menggunakan segiempat dengan
sudut membulat. Decision digunakan untuk menggambarkan behaviour pada
kondisi tertentu. Untuk mengilustrasikan proses–proses paralel (fork dan join)
digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau
vertikal.
35
Gambar 2.18 Contoh Activity Diagram
(Anonymous H, p3)
2.7.2.3
Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan
menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain
berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu
sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut
(metoda/fungsi). Class memiliki 3 area pokok, yakni Nama, Atribut, dan
Metoda.
Atribut dan Metoda dapat memiliki salah satu dari sifat berikut :
1. Private, tidak dapat dipanggil dari luar class yang bersangkutan.
2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak–
anak yang mewarisinya.
3. Public, dapat dipanggil oleh siapa saja.
36
Class dapat merupakan implementasi dari sebuah interface, yaitu
class abstrak yang hanya memiliki metoda. Hubungan antar class dibedakan
menjadi 4, yaitu :
1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan
class yang memiliki atribut berupa class lain. Panah navigability
menunjukkan arah query antar class.
2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas…“).
3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari
class lain dan mewarisi semua atribut dan metoda class asalnya dan
menambahkan fungsionalitas baru, sehingga ia disebut anak dari class
yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
4. Hubungan dinamis, yaitu rangkaian pesan yang di-passing dari suatu class
kepada class lain.
Gambar 2.19 Contoh Class Diagram
(Anonymous H, p2)
37
2.7.2.4
Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam
dan di sekitar sistem berupa message yang digambarkan terhadap waktu.
Sequence diagram terdiri dari dimensi vertikal (waktu) dan dimensi horizontal
(objek–objek
yang
terkait).
Sequence
diagram
digunakan
untuk
menggambarkan skenario atau rangkaian langkah–langkah yang dilakukan
sebagai respons dari sebuah event untuk menghasilkan output tertentu.
Masing–masing objek, termasuk aktor, memiliki lifeline vertikal.
Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya.
Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda
dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses,
biasanya diawali dengan diterimanya sebuah message.
Gambar 2.20 Contoh Sequence Diagram
(Anonymous H, p3)
Download