BAB 2 LANDASAN TEORI Pada bab ini akan dijelaskan tentang landasan teori yang mendukung penyelesaian aplikasi untuk tugas akhir ini. Ada beberapa sub pokok pembahasan lainnya yang menjadi landasan dalam pembuatan tugas akhir ini. 2.1 Pengertian Aplikasi Perangkat lunak aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. 2.2 Pengenalan Android Android adalah sistem operasi yang berbasis Linux untuk telepon seluler seperti telepon pintar dan komputer tablet. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Universitas Sumatera Utara 6 Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD). 2.2.1 Sejarah dan Versi-Versi Android Pada Juli 2005, Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri Android Inc. bekerja pada Google, di antaranya Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google hendak memasuki pasar telepon seluler. Di perusahaan Google, tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang bersiap menghadapi persaingan dalam pasar telepon seluler. Sejak munculnya sistem operasi Android, sistem operasi Android terus mengalami peningkatan versi diawali dengan versi beta hingga versi yang baru saja di release yaitu versi 4.1 Jelly Bean. a. Android Beta Pertama kali dirilis pada tanggal 5 November 2007, kemudian pada 12 November 2007 Software Development Kit (SDK) dirilis oleh Google. b. Android 1.0 (Astro) Pertama kali dirilis pada 23 Spetember 2008. Sebenarnya Android versi pertama ini akan dinamai dengan nama "Astro" tapi karena alasan hak cipta dan trademark Universitas Sumatera Utara 7 nama"Astro" tidak jadi disematkan pada versi pertama dari OS Android ini. HTC Dream adalah ponsel pertama yang menggunakan OS ini. c. Android 1.1 (Bender) Versi ini dirilis pada 9 Maret 2009, yang muncul dengan pembaruan terhadap estetika pada aplikasi, jam alarm, voice search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan email. Namun versi Android kedua ini juga mengalami masalah penamaan yang sama dengan versi pertamanya. Pada awalnya Android ini akan diberi nama "Bender" akan tetapi karena alasan melanggar trademark, nama "Bender" tidak jadi disematkan pada versi Android ini. Awalnya versi OS Android ini dirilis untuk perangkat T-Mobile G1 saja. Versi ini merupakan update untuk memperbaiki beberapa bugs, mengganti API dan menambahkan beberapa fitur. Berikut penampakan home screen OS Android v.1.1. d. Android versi 1.5 (Cupcake) Pertama kali dirilis pada 30 April 2009. Cupcake atau dalam terjemahan bebas berarti kue cawan. Mulai versi Android ini penamaan menggunakan nama makan pencuci mulut (dessert) mulai digunakan, karena ini merupakan versi yang ketiga maka penamaan diawali dengan huruf "C" dan jadilah "Cupcake" menjadi nama resmi dari versi OS Android ketiga ini. Ada beberapa pembaruan dan juga penambahan beberapa fitur pada versi ini yaitu adanya kemampuan untuk merekam dan menonton video pada modus kamera, mengupload video ke Youtube dan gambar ke Picasa secara langsung, dukungan Bluetooth A2DP, animasi layar, dan keyboard pada layar. OS ini berbasiskan pada kernel Linux 2.6.27. e. Android versi 1.6 (Donut) Versi ini dirilis pada September 2009. Donut dikenal juga dengan kue berlubang dipakai sebagai nama alias dari versi Android 1.6. Versi ini dirilis mempunyai kemampuan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Serta ada tambahan fitur galeri yang Universitas Sumatera Utara 8 memungkinkan pengguna untuk memilih foto yang akan dihapus. Versi ini telah mampu diintegrasikan dengan CDMA / EVDO, 802.1x, VPN, Gestures, dan Text-tospeech engine. f. Android 2.0/2.1 Eclair Versi ini dirilis pada 9 Desember 2009. Eclair adalah kue sus yang berbentuk panjang dengan toping coklat diatasnya. Ada penambahan fitur untuk pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1. Beberapa versi updatenya antara Android v.2.0 kemudian v2.0.2 dan terakhir v.2.1. g. Android versi 2.2 (Froyo) Versi ini dirilis pertamakali pada 20 Mei 2010. Froyo (Frozen yoghurt) adalah yoghurt (susu yang dibuat melalui fermentasi bakteri) yang dibekukan mirip seperti ice cream. Froyo dipakai sebagai nama alias dari sistem operasi Android versi 2.2. Pada versi ini sudah support terhadap Adobe Flash Player 10.1. Peningkatan pada kecepatan membuka dan menutup aplikasi, serta penggunaan SD Card sebagai tempat penyimpanan aplikasi. Ketika Android Froyo hadir mulai muncul banyak diskusi yang membahas mengenai persaingan antara Android dengan iOS yang akan semakin ketat di masa yang akan datang. Beberapa versi update yang dirilis antara lain Android v.2.2.1 hingga v.2.2.3. h. Android 2.3 Gingerbread Versi ini dirilis pada 6 Desember 2010. Gingerbread adalah kue yang terbuat dari jahe, biasanya berbentuk boneka sering disajikan sebangai teman minum kopi. Gingerbread dipakai sebagai nama alias dari sistem operasi Android versi 2.3 Terjadi banyak peningkatan pada versi Android yang satu ini dibandingkan dengan versi sebelumnya. Dirancang untuk memaksimalakan kemampuan aplikasi dan game. Serta Universitas Sumatera Utara 9 mulai digunakannya Near Field Communication (NFC). Perbaikan terhadap dukungan layar resolusi WXGA dan diatasnya. Beberapa versi update yang dirilis antara lain v.2.3.3 hingga v.2.3.7. Sampai saat ini Android Gingerbread merupakan versi Android yang memiliki pengguna terbanyak dibandingkan dengan seri Android lainnya, yaitu mencapai 65% dari seluruh versi Android yang dirilis. i. Android versi 3.0 (Honeycomb) Versi ini dirilis pada 22 Februari 2011. Honeycomb atau sarang madu adalah bagian dari hasil lebah yang dimanfaatkan selain dari madunya itu sendiri. Honeycomb dipakai sebagai nama alias dari sistem Android versi 3.0 Android versi ini merupakan OS yang didesain khusus untuk pengoptimalan pengunaan pada tablet PC. j. Android versi 4.0 (Ice Cream Sandwich) Versi dirilis pada 19 Oktober 2011. Ice Cream, tentu saja kita tahu karena ini adalah minuman atau tapatnya makanan yang sangat disukai terutama oleh anak kecil . Ice Cream dipakai sebagai nama alias dari Android versi 4.0. Smartphone yang pertama kali mengunakan OS Android ini adalah Samsung Galaxy Nexus. Secara teori semua perangkat seluler yang menggunakan versi Android sebelumnya, Gingerbread, dapat di-update ke Android Ice Cream Sandwich. Namun sayangnnya sampai saat ini kebanyak smartphone yang menggunakan Android ICS merupakan smartphone kelas high-end yang dijual dengan harga cukup mahal. Mungkin karena alasan inilah distribusi versi Android satu ini tidak lebih dari 8% sampai pertangahn tahun 2012. k. Android versi 4.1 (Jelly Bean) Versi Android Jelly Bean adalah versi Android yang terbaru. Android Jelly Bean yang diluncurkan pada acara Google I/O lalu membawa sejumlah keunggulan dan fitur baru. Penambahan baru diantaranya meningkatkan input keyboard, desain baru fitur pencarian, UI yang baru dan pencarian melalui Voice Search yang lebih cepat. Tak ketinggalan Google Now juga menjadi bagian yang diperbarui. Google Now memberikan informasi yang tepat pada waktu yang tepat pula. Salah satu Universitas Sumatera Utara 10 kemampuannya adalah dapat mengetahui informasi cuaca, lalu-lintas, ataupun hasil pertandingan olahraga. Sistem operasi Android Jelly Bean 4.1 muncul pertama kali dalam produk tablet Asus, yakni Google Nexus 7. 2.3 Client Server Diawal perkembangannya perangkat komputer adalah barang yang mahal dan mewah. Pengembangan dan pengoperasiannya rumit dan terpusat. Namun seiring dengan berjalannya waktu yang tadinya prosesnya tersentralisasi dikembangakan menjadi proses terdistribusi sampai pada end user. Hal ini sangat dipengaruhi oleh adanya perkembangan teknologi LAN (Local Area Network) di pertengahan tahun 1980 an. Dengan LAN sebuah PC dapat melakukan komunikasi satu dengan lainnya dan dapat saling berbagi resource baik perangkat keras ataupun database. LAN mampu memberikan interkonektivitas yang tidak pernah ada sebelumnya. Untuk dapat melakukan hal tersebut dibutuhkan sebuah komputer proses yang memfasilitasi dan melayani proses sharing semua resource yang ada. Perangkat ini disebut dengan Server. Untuk melakukan Sharing File biasanya dibutuhkan sebuah File Server begitu juga untuk sharing Printer dibutuhkan sebuah Printer Server. Namun ternyata hal seperti ini belumlah cukup. Jumlah PC yang bertambah dengan sangat cepat seiring dengan berkembangnya sebuah organisasi. Jumlah end user dan client juga bertambah banyak. Kebutuhan akan perangkat menjadi bertambah pula, tidak hanya membutuhkan sebuah printer server, juga dibutuhkan server-server lainnya seperti server pengolahan gambar, server pengolahan suara, dan lainnya. Server-server ini dengan database dan aplikasinya harus dapat diakses oleh beberapa PC, ataupun diakses oleh sebuah komputer mainframe melalui sebuah LAN. Sistem seperti ini disebut Sistem Client Server. Universitas Sumatera Utara 11 2.3.1 Pengertian Client Server Client Server adalah salah satu model komunikasi dua komputer atau lebih yang berfungsi melakukan pembagian tugas. Client bertugas untuk melakukan input, update, penghapusan, dan menampilkan data sebuah database. Sementara server bertugas menyediakan pelayanan untuk melakukan manajemen, yaitu menyimpan dan mengolah database. Client mengirim permintaan ke server, server menerjemahkan pesan, kemudian berusaha memenuhi permintaan (Gallaugher&Ramanathan,1996) Atau Client Server adalah suatu arsitektur dimana sumber daya server menyediakan komputasi untuk banyak komponen client. Client dan Server bisa berjalan pada mesin yang sama atau berbeda, ditulis dalam berbagai bahasa dan menggunakan sistem operasi yang berbeda. (Blaha & Premeriani,1998). Dengan pendekatan Client Server setiap PC dapat melakukan secara independen sebuah pemrosesan lokal dan mensharing perangkat enterprise melalui LAN. Untuk kasus yang lebih luas kemampuan akses dapat dilakukan melalui MAN (Metropolitan Area Network) atau WAN (Wide Area Network). Sebuah database dan program applikasi enterprise misalnya diletakan pada sebuah server dimana setiap end user dapat melakukan akses melalui Client Processor, LAN dan Server. Aplikasi Client Server merupakan jawaban atas berkembangnya teknologi informasi, di mana sebuah perusahaan ataupun instansi memilik banyak departemen dan harus terhubung satu sama lain dalam melakukan akses data. 2.3.2 Komponen Dasar Client Server Pada dasarnya, Client server dibentuk oleh tiga komponen dasar, yaitu client, middleware, dan server. Secara sederhana, hubungan antara ketiga komponen tersebut dapat digambarkan sebagai berikut : Universitas Sumatera Utara 12 a. Client Client merupakan terminal yang digunakan oleh pengguna untuk meminta layanan tertentu yang dibutuhkan. Peran Client adalah mengirimkan pesan berupa permintaan layanan ke server. b. Middleware Middleware merupakan komponen perantara yang memungkinkan client dan server untuk saling terhubung dan berkomunikasi satu sama lain. Middleware memiliki peran yang strategis karena dengan adanya middleware maka client dapat mengirimkan pesan atau permintaan kepada server, menerjemahkan pesan dari client agar dapat dimengerti oleh server, menerjemahkan hasil proses dari server agar dapat dipahami oleh client dan mengirimkan hasil proses yang telah diterjemahkan kembali ke client. c. Server Server merupakan pihak yang menyediakan layanan. Server berperan menerima pesan permintaan layanan dari client, memproses permintaan tersebut dan mengirimkan hasil permintaan kepada client. 2.4 Pengenalan Yii Framework Yii adalah framework (kerangka kerja) PHP berbasis-komponen, berkinerja tinggi untuk pengembangan aplikasi Web berskala-besar. Yii menyediakan reusability maksimum dalam pemrograman Web dan mampu meningkatkan kecepatan pengembangan secara signifikan. Nama Yii (dieja sebagai /i:/) singkatan dari "Yes It Is!". Yii adalah framework pemrograman umum Web yang bisa dipakai untuk mengembangkan semua jenis aplikasi Web. Dikarenakan sangat ringan dan dilengkapi dengan mekanisme caching yang canggih, Yii sangat cocok untuk Universitas Sumatera Utara 13 pengembangan aplikasi dengan lalu lintas-tinggi, seperti portal, forum, sistem manajemen konten (CMS), sistem e-commerce, dan lain-lain. Seperti kebanyakan PHP framework, Yii adalah MVC framework. Yii melampaui framework PHP lain dalam hal efisiensi, kekayaan-fitur, dan kejelasan dokumentasi. Yii didesain dengan hati-hati dari awal agar sesuai untuk pengembangan aplikasi Web secara serius. Yii bukan berasal dari produk pada beberapa proyek maupun konglomerasi pekerjaan pihak-ketiga. Yii adalah hasil dari pengalaman kaya para pembuat pada pengembangan aplikasi Web dan investigasi framework pemrograman Web dan aplikasi yang paling popular. 2.5 Pengenalan Netbeans IDE 7.2 Netbeans merupakan sebuah aplikasi Integrated Development Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang berjalan di atas swing. Swing merupakan sebuah teknologi Java untuk pengembangan aplikasi desktop yang dapat berjalan pada berbagai macam platform seperti windows, linux, Mac OS X dan Solaris. Sebuah IDE merupakan lingkup pemrograman yang di integrasikan ke dalam suatu aplikasi perangkat lunak yang menyediakan Graphic User Interface (GUI), suatu kode editor atau text, suatu compiler dan suatu debugger. Netbeans juga digunakan oleh programmer untuk menulis, meng-compile, mencari kesalahan dan menyebarkan program netbeans yang ditulis dalam bahasa pemrograman java namun selain itu dapat juga mendukung bahasa pemrograman lainnya dan program ini pun bebas untuk digunakan dan untuk membuat professional desktop, enterprise, web, and mobile applications dengan Java language, C/C++, dan bahkan dynamic languages seperti PHP, JavaScript, Groovy, dan Ruby. NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra. Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama. Dan saat ini pun netbeans memiliki 2 produk yaitu Platform Netbeans dan Netbeans IDE. Platform Netbeans merupakan framework yang dapat digunakan kembali (reusable) untuk menyederhanakan Universitas Sumatera Utara 14 pengembangan aplikasi desktop dan Platform NetBeans juga menawarkan layananlayanan yang umum bagi aplikasi desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap aplikasi. 2.6 Andoid SDK (Software Development Kit) Android SDK mencakup perangkat tools pengembangan yang komprehensif. Android SDK terdiri dari debugger, libraries, handset emulator, dokumentasi, contoh kode program dan tutorial. Saat ini Android sudah mendukung arsitektur x86 pada Linux (distribusi Linux apapun untuk desktop modern), Mac OS X 10.4.8 atau lebih, Windows XP atau Vista. Persyaratan mencakup JDK, Apache Ant dan Python 2.2 atau lebih. IDE yang didukung secara resmi adalah Eclipse 3.2 atau lebih dengan menggunakan plugin Android Development Tools (ADT), dengan ini pengembang dapat menggunakan IDE untuk mengedit dokumen Java dan XML (Extensible Markup Language) serta menggunakan peralatan command line untuk menciptakan, membangun, melakukan debug aplikasi Android dan pengendalian perangkat Android (misalnya reboot, menginstal paket perangkat lunak). Android SDK telah dirilis pada tanggal 12 November 2007. Dan pada tanggal 15 Juli 2008 tim Android Developer Challenge dengan sengaja mengirimkan e-mail ke semua pendatang baru di Android Developer Challenge untuk mengumumkan bahwa rilis SDK terbaru telah tersedia pada halaman download. E-mail tersebut juga ditujukan kepada pemenang Android Developer Challenge putaran pertama. Sebuah penyataan bahwa Google telah menyediakan rilis SDK terbaru untuk beberapa pengembang. Pada tanggal 18 Agustus 2008, Android SDK 0.9 beta dirilis. Rilis ini menyediakan API yang telah diperbarui dan diperluas, perbaikan pada tools pengembangan dan disain terbaru untuk tampilan home. Petunjuk untuk mengupgrade SDK sudah tersedia pada rilis sebelumnya. Pada tanggal 23 September 2008, Android 1.0 SDK telah dirilis. Pada tanggal 9 Maret 2009, Google merilis versi 1.1 untuk ponsel Android. Rilis terbaru tersebut termasuk dukungan untuk pencarian dengan suara, harga aplikasi, perbaikan jam alarm, perbaikan pengiriman e-mail pada gmail, perbaikan notification dan peta. Universitas Sumatera Utara 15 2.7 Eclipse Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platformindependent). Berikut ini adalah sifat dari Eclipse: a. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X. b. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. c. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. 2.7.1 Strukutur Aplikasi Eclipse (Juno) 2.7.1.1 Tampilan Lembar Kerja Eclipse (Juno) Gambar 2.1 Tampilan Lembar Kerja Eclipse (Juno) Universitas Sumatera Utara 16 2.7.1.2 Tampilan Menu Bar Gambar 2.2 Tampilan Menu Bar 2.7.1.3 Tampilan Tool Bar Gambar 2.3 Tampilan Toolbar 2.7.1.4 Tampilan Jendela Project Gambar 2.4 Tampilan Jendela Project 2.7.1.5 Tampilan Jendela Navigator 2.5 Tampilan Jendela Navigator Universitas Sumatera Utara 17 2.7.1.6 Tampilan Jendela Source Code Gambar 2.6 Tampilan Jendela Source Code 2.7.1.7 Tampilan Graphical Layout Gambar 2.7 Tampilan Graphical Layout 2.8 Flow Chart Flow chart adalah penggambaran secara grafik dari langkah-langkah dan urutanurutan prosedur dari suatu program. Flow chart menolong analis dan programmer untuk memecahkan masalah ke dalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian Flow chart biasanya mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut. Petunjuk untuk membuat flow chart bila seorang analisis Universitas Sumatera Utara 18 dan programmer akan membuat flow chart, ada eberapa petunjuk yang harus diperhatikan, seperti : 1. Flow chart digambarkan dari halaman atas ke bawah dan kiri ke kanan. 2. Aktifitas yang digambarkan harus didefinisikan secara hati – hati dan defenisi ini harus dapat dimengerti oleh pembacanya. 3. Kapan aktifitas dimulai dan berakhir harus ditentukan secara jelas. 4. Setiap langkah dari aktifitas harus diuraikan dengan menggunakan deksripsi kata kerja. 5. Setiap langkah dari aktifitas harus berada pada urutan yang benar. 6. Lingkup, range dan aktifitas yang sedang digambarkan harus ditelusuri dengan hati - hati. Percabangan - percabangan yang memotong aktifitas yang sedang digambarkan tidak perlu digunakan dan percabangannya diletakkan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangan tidak berkaitan dengan sistem. 7. Gunakan symbol – symbol flowchart yang standard. Berikut ini adalah gambar simbol – simbol standar dalam flow chart beserta dengan arti dari masing – masing simbol : Tabel 2.1 Simbol – Simbol Flow Chart Simbol Keterangan Simbol ini dipergunakan untuk menunjukkan awal kegiatan atau akhir kegiatan atau berhentinya suatu program. Terminal/Interupt (Mulai/Berhenti) Universitas Sumatera Utara 19 Untuk mewakili data input dan menuliskan output-nya Input/Output (data/hasil) Suatu simbol yang melambangkan diprosesnya suatu data. Process (Pengolahan) Dipakai untuk menuliskan jika adanya percabangan, seperti if, case. Decision (Keputusan) Untuk program-program yang sering dipergunakan sebuah program berulang kali, biasanya dibuat program terpisah dengan sebuah sub program (subroutine). Untuk menghubungkan Prefendefined program utama dengan subroutine dipergunakan symbol ini. Bila suatu flow-chart sangat panjang dan diputus di tengah sebelum selesai, jika disambung dalam halaman yang sama lagi, maka digunakan symbol ini. Connector (Penghubung) Universitas Sumatera Utara 20 Bila suatu flow-chart dihubungkan dengan garisgaris ini. Garis-garis ini menunjukkan akar selanjutnya yang akan dituju. Bila arahnya ke bawah atau ke kanan tidak perlu memakai tanda panah. Bila ke atas atau ke kiri, tanda panah harus dipakai, untuk membedakannya. Flow lines (Garis Alir) Universitas Sumatera Utara