commit to user 5
BAB II
LANDASAN TEORI
2.1 Single Sign On (SSO)
SSO adalah sebuah mekanisme yang membuat pengguna hanya perlu mengingat satu username dan password yang autentik untuk membuka beberapa layanan sekaligus SSO perlu terautentikasi sekali, kemudian autentikasi akan terjadi otomatis ketika user membuka website lain melalui sebuah session (Rudy. 2009).
Keuntungan yang diperoleh dari SSO antara lain:
1. Mengurangi password fatigue (kejenuhan terhadap password) berupa username dan password yang berbeda-beda.
2. Mengurangi waktu yang terbuang karena memasukkan password yang sama berulang kali.
3. Mengurangi IT Costs yang berkaitan dengan banyaknya pertanyaan mengenai lupa password.
4. Keamanan pada semua level masuk, keluar dan akses terhadap sistem tanpa meminta ulang password.
5. Catatan (log) yang terpusat.
2.2 Central Authentication Service (CAS)
CAS merup akan sebuah sistem autentikasi y ang aslinya dibuat oleh Universitas Yale untuk menyediakan sebuah jalan yang aman untuk masuk kedalam sebuah aplikasi. CAS kemudian diimplementasi sebagai sebuah open source komponen server Java dan mendukung library dari client untuk Java, PHP, Perl, Apache, uPortal, dan lainnya. CAS server sebuah dasar untuk beberapa framework keamanan dan solusi SSO. (Ragil Widiharso, 2010)
Central Auth entication Servise (CAS) dibentuk sebagai sebu ah ap likasi web yang berdiri sendiri. Untuk lebih jelasnya dapat dilihat pada gambar 2.1.
commit to user
Gambar 2.1 Cara Kerja SSO dengan CAS
2.2.1 Otentikasi CAS dengan TGC
Proses otentikasi SSO dengan menggunakan CAS yang sederhana adalah dengan menggunakan Ticket Granting Cookie (TGC). Dimana dengan menggunakan CAS ketika proses otentikasi berhasil, maka akan diteruskan kembali pada aplikasi web klien CAS dengan tiket yang disimpan di cookie. Tiket tersebut akan hanya berlaku pada periode waktu tertentu, dan nilanya akan berubah-ubah setiap kali login. Prosesnya secara rinci adalah sebagai berikut :
1. Pertama pengguna atau user yang belum terotentikasi akan mengakses aplikasi web yang telah terpasang aplikasi klien CAS dengan cara melakukan proses login, maka selanjutnya akan diteruskan menuju halaman login CAS server yang meminta pengisian username dan password.
2. Jika username dan password benar maka CAS server akan mengirimkan TGC ke pada browser yang digunakan oleh user.
PROSES OTENTIKASI : 1. REQUEST USER 2. REDIRECT AUTENTICATION 3. TICKET FORWARDING 4. TICKET VALIDATIAN
commit to user
Gambar 2.2 Pengiriman TGC
3. TGC dapat dikatakan sebagai passpor pengguna terhadap CAS server. Dengan menggunakan TGC inila membuat web browser mendapatkan hak akses aplikasi web tanpa perlu adanya otentikasi kembali. Ini hanya merupakan identitas session antara CAS server dengan web browser. 4. Sebagai presentasi dari TGC, CAS server memberikan Service Ticket
(ST) yang hanya dapat digunakan untuk aplikasi web dengan klien CAS yang memerlukannya tadi, yang mana dikirimkan bersamaan dengan diteruskan kembali ke halaman aplikasi web dengan klien CAS tersebut.
Gambar 2.3 Validasi Dengan ST
5. Proses selanjutnya ST akan divalidasi oleh klien CAS, maka data username yang dapat digunakan untuk mengakses aplikasi web dengan klien CAS.
commit to user
Gambar 2.4 Penerusan Ke Klien
Melalui mekanisme ticketing ini tidak aka nada lagi informasi password yang disimpan dalam session maupun cookie, karena telah digantikan oleh tiket, yang hanya dapt digunakan satu kali saja untuk setiap aplikasi (OneTime-Ticket) (Saputro, et al., 2012).
2.3 Lightweight Directory Access Protocol (LDAP)
Lightweight Directory Access Protocol (LDAP) dapat dikatakan sebagai sebuah protokol yang mengatur mekanisme pengaksesan layanan direktori yang dapat digunakan untuk mendeskripsikan banyak informasi seperti informasi tentang people, organizations, roles, services, dan banyak entitas lainnya. LDAP sendiri menggunakan model client-server, dimana klien mengirimkan identifier data pada server menggunakan protokol TCP/IP dan server mencoba mencarinya pada DIT (Directory Information Tree) yang tersimpan di server.
Suatu directory service akan memiliki komponen yang dijadikan sebagai root. Untuk sebuah root, secara umum di tunjukkan dengan attribut dc(Domain Component) atau o(Organization) mungkin juga ou(Organization Unit). Selanjutnya pada bagian daun (leaf) biasanya akan berisi item dengan atribut uid (User ID) ataupun cn (Common Name). Directory service biasanya menyimpan informasi dalam bentuk struktur tree yang dinamakan Directory Information Tree (DIT). Untuk alamat relatif sering disebut sebagai RDN (Relative Distinguish Name) sedangkan alamat yang absolut disebut DN (Distinguish Name) (Carter, 2003).
commit to user
2.3.1 Struktur Direktori LDAP
Dalam terminologi komputer, directory service bisa dikatakan sebagai suatu database tempat penyimpanan data, yang dapat dipergunakan sebagai pemberi informasi-informasi yang berkaitan dengan objeknya. Suatu direktori dapat berisi kumpulan informasi tentang user seperti username, first name, phone number, User ID, mail address dan lain sebagainya. Informasi pada LDAP akan disimpan pada entry. Layaknya entry pada basis data umunya, setiap entry memiliki beberapa atribut. Setiap atribut dapat memiliki satu ataupun lebih dari satu nilai. Pada basis data anda akan memiliki primary key untuk membedakan suatu entry dengan entry lainnya, sedangkan dalam LDAP memiliki Distinguished Name (DN) yang di gunakan untuk mendiskripsikan letak atribut dalam struktur LDAP (Carter, 2003) .
Gambar 2.5 Contoh tree direktori LDAP
Garis besar entry direktori pada gambar diatas mempunyai sebuah RDN yaitu cn=gerald carter. Sebagai catatan bahwa nama atribut akan sama dengan nilai yang dimasukkan dalam RDN. DN untuk node ini akan menjadi cn=gerald carter, ou=people, dc=plainjoe, dc=org (Carter, 2003).
commit to user
2.3.2 Otentikasi LDAP
Pada otentikasi menggunakan metode otentikasi LDAP terdapat mekanisme binding. LDAPv3 mendukung 3 jenis otentikasi yaitu :
1. Anonymous : Klien yang mengirimkan suatu permintaan ke server LDAP tanpa melakukan mekanisme bind maka akan diperlakukan sebagai klien anonim dimana klien tersebut hanya dapat melihat tampilan sebagai tamu. 2. Simple authentication : mekanisme ini melakukan otentikasi ke server
LDAP dengan mengirimkan identitas dirinya yang valid berupa username dan password pada saat login. Kemudian melakukan bind atau membuka sesi pada koneksi server LDAP.
3. Simple authentication and Security Layer (SASL) : untuk mengatasi masalah keamanan pada simple authentiucation, maka digunakan mekanisme ini dengan cara melakukan enkripsi pada saluran transmisi. Hal ini didukung dengan adanya Secure Socket Layer (SSL) (Cartealy, 2013).
2.4 Hubungan CAS dengan LDAP
Sistem Single Sign On yang berbasis CAS hanya dapat melakukan proses otentikasi, tidak dapat melakukan penyimpanan, pengaturan dan pengintegrasian data–data pengguna seperti username dan password. Agar dapat melakukan otentikasi terhadap suatu pengguna, CAS melakukan otentikasi dengan menggunakan back-end seperti sistem basis data atau juga bisa menggunakan sistem direktori terpusat (LDAP). Otentikasi menggunakan sistem direktori terpusat, memiliki dua mekanisme, yaitu dengan cara otentikasi secara langsung ke pengguna LDAP (Fast Bind LDAP) dan dengan cara otentikasi LDAP melaui pencarian beberapa subtree dan menggunakannya untuk otentikasi secara langsung (Bind LDAP). Mekanisme Fast Bind LDAP digunakan bilamana ingin dilakukan otentikasi secara langsung kepada pengguna dengan RDN tertentu. Contoh cn=%u, dc=mycompany,dc=com, dimana %u merupakan username yang didapat dari field username halaman login CAS Server. Dalam konfigurasi CAS digunakan Fast Bind Ldap Authentication Handler untuk melakukan hal ini. FastBindLdapAuthenticationHandler terdiri dari
commit to user
filter properti dari LDAP filter yang akan digunakan pada proses pencarian. Untuk mencari username digunakan "%u".
ignorePartialResultExceptio–properti ini memberitahu Spring LDAP untuk mengabaikan pengecualian terhadap pencarian parsial yang mana mungkin terjadi saat terkoneksi ke Active Directory.
contextSource – referensi ke LdapContextSource yang mana berisi setting koneksi ke server LDAP.
Mekanisme yang kedua yaitu Bind LDAP digunakan untuk mencari RDN pengguna berdasarkan pencarian yang telah ditentukan lalu menggunakannya dengan password dari halaman login CAS. Mekanismem ini biasanya digunakan untuk otentikasi terhadap banyak pengguna dengan subtree yang berbeda-beda akan tetapi memiliki komponen dasar DN yang sama. Dalam konfigurasi CAS digunakan BindLdapAuthenticationHandler untuk melakukan hal ini. BindLdapAuthenticationHandler memiliki beberapa properti.
filter – properti yang berupa LDAP filter yang digunakan untuk pencarian
ignorePartialResultException - properti ini memberitahu Spring LDAP untuk mengabaikan pengecualian terhadap pencarian parsial yang mana mungkin terjadi saat terkoneksi ke Active Directory. contextSource - referensi ke LdapContextSource yang mana berisi
setting koneksi ke server LDAP.
searchContextSource – digunakan untuk operasi pencarian pada LDAP, properti ini mendukung koneksi berbasis pool pada LDAP allowMultipleAccounts – Mengijinkan lebih dari satu akun uang
dapat dikembalikan.
maxNumberOfResults – maksimum jumlah pencarian.
searchBase – dasar pencarian yang mana merupakan titik awal dimana pencarian akan dilakukan.
timeout – batas waktu lamanya pencarian (Saputro, et al., 2012).
commit to user
2.5 Domain Name System ( DNS)
Nama DNS server merupakan dasar untuk nama root dari LDAP direktori Domain Name System (DNS) membentuk suatu bagian dar i dasar untuk namespace LDAP, dan ini juga merupakan contoh yang baik untuk sebuah namespace. Mengeksplorasi bagaimana DNS bekerja akan menolong dalam menemukan garis besar tentang LDAP. Nama DNS dari d irektori LDAP server dap at menjadi bagian p alin g penting dalam menentukan nama dari direktori root, dimana merupakan direktori berbasiskan DN. Meskipun DNS digunakan dalam penamaan memp engaruh i dari imp lementasi namespace LDAP. Sebuah direktori berbasiskan DN tidak harus sama dengan nama DNS dar i direktori server, dan keduany a biasany a tidak cocok ketika sebuah direktori disebarkan meny eberangi bany ak server yang diinginkan. Disamping dari koneksi ini pada namespace, DNS juga dapat menjalankan sebuah aturan kritis dalam proses LDAP client menemukan lokasi LDAP direktori server. DNS tidak harus digunakan dalam lokasi server, tetap i seringkali digun akan.
DNS memetakan nama manusia pada nama komp uter. DNS adalah sebuah penyebaran direktori servis y ang dikelola oleh ribuan server diseluruh dunia. Ada milyaran dokumen dalam direktori ini, dimana peta dan alamat IP pada satu nama komputer dan sebalikny a. Alamat IP adalah angka y ang merupakan nama dimana satu komputer digunakan untuk menghubungi komputer yang lain.
Sebuah urutan tingk atan DNS dip ekerjakan untuk meny ediakan dasar yang bersih untuk pemecahan nama yang berwenang. Dokumen ini disebarkan melewati jutaan file y an g disebut zones. Setiap zone menamp ung sebuah copy dar i dokumen untuk namespace DNS untuk jika ini berwenang. Dengan kata lain, setiap zone mengijinkan perubahan pada hanya sebagian kecil dari seluruh namespace DNS. Dokumen komputer host.mycompany.com milik dari zone my company . My company zone milik dari zone com. Dan zone com milik dar i zone root. Zone root merupakan zone teratas dari semua DNS. File zone disimpan dalam DNS server y ang berwenang untuk zone itu. Setiap zone parent adalah yang berwenang dalam membedakan DNS server mana yang berwenang untuk
commit to user
setiap zone child. Zone root memegang dokumen wewenang untuk setiap zone DNS pada level satu. Ini berbentuk sebuah urutan tingkatan, dimana komp uter client dapat melakukan query dengan jaminan yang masuk akal untuk mendap atkan wewenan g resolusi nama (Arkills, 2003).
Gambar 2.6 Tingk atan dari Zone DNS
Urutan tingkatan dalam resolusi DNS menyediakan sebuah jalan yang tepat bagi komputer client untuk melakukan resolusi nama. Namespace DNS menyediakan sebuah sistem yang baik untuk mengatur dokumen nama komputer dan untuk memecahkan lok asi dari nama komputer. Komputer client biasanya diarahkan untuk melakuk an query wewenan g DNS server dari zona lokal untuk resolusi nama. Sebagai contoh, komputer host.mycompany.com akan diubah untuk melakukan query DNS server untuk mycompany.com. Seh arusnya host.mycompany.com ingin tahu alamat IP untuk unknown.whitehouse.gov, ini p ertama kali akan bertany a p ada DNS server di mycompany.com. mycompany.com akan menunjuk p ada DNS server com. DNS server com akan mengarah pada DNS server root. DNS server root akan mengarah pada DNS server gov. DNS server gov akan mengarah pada DNS server whitehouse.gov. DNS server whitehouse.gov kemudian akan menjawab clien t den gan men gir imkan alamat IP dari unknown.whitehouse.gov. Biasany a DNS server menyembunyikan informasi tentang zone penting seperti root dan
commit to user
DNS server level satu, sehingga pada kenyataannya proses penggambarannya akan mengikuti banyak jalur yang lebih pendek. Ada beberapa tipe dasar dari DNS. Untuk p enjelasanny a dap at dilihat p ada table dibawah ini (Arkills, 2003).
Tabel 2.1 Tipe Dasar Dokumen DNS
DNS digunakan untuk mendaftarkan sebuah direktori servis. Satu maksud penting dari LDAP menggunakan namespace DNS adalah dengan mendaftarkan sebuah nama domain DNS untuk menghubungkan sebuah host atau zone, secara tidak sen gaja juga mend aftar untuk sebuah namespace direktori servis. Ada p ersamaan dalam namespace p engir iman email den gan dokumen M X dan banyak servis berbasiskan jaringan lainny a. Ketika mendaftar sebuah dokumen untuk mycompany.com dengan sebuah wewenang dar i DNS server, mycompany.com mungkin men jadi sebuah namespace direktori servis y ang aktif (Arkills, 2003).
2.6 Mail Server
Mail server (juga dikenal sebagai sebuah mail transfer agent atau MTA, mail router atau mailer Internet) adalah aplikasi yang menangani pengantaran pesan mail. Mesin ini senantiasa menerima pesan dari email client yang digunakan user, atau mungkin dari server email lainnya (Danphi, 2010).
Mail Server adalah pusat kendali sistem email. Sebuah komputer yang didedikasikan untuk menjalankan aplikasi tersebut juga disebut sebagai mail
commit to user
server. Microsoft Exchange, qmail, Senmail dan Zimbra adalah salah satu contoh program-program Mail Server. Mail server merupakan salah satu fungsi server yang paling banyak digunakan di perusahaan. Hal ini mengingat fungsi email sendiri yang bisa mengurangi biaya surat-menyurat, lebih efisien dibandingkan ko munikasi manual dan dapat menyertakan attachment yang berguna sebagai pelengkap dan dokumen tambahan terkait dengan isi email. (Mangunkusumo, et al., 2013).
2.6.1 Protokol Email
Protokol yang umum digunakan email antara lain adalah protokol SMTP, POP3 dan IMAP. SMTP (Simple Mail Transfer Protocol) digunakan sebagai standar untuk menampung dan mendistribusikan email, sedangkan POP3 (Post Office Protocol v3) dan IMAP (Internet Mail Application Protocol) digunakan agar user dapat mengambil dan membaca hostname server. Email secara remote yaitu tidak diperlukanya login ke dalam sistem shell mesin mail server, akan tetapi cukup dengan menghubungi port tertentu yang mengimplementasikan protokol POP3 atau IMAP (Cartealy,2013).
2.6.2 Zimbra Collaboration Suite
Zimbra atau yang sekarang dikenal sebagai Vmware Zimbra (setelah diakuisisi vmware pada 2010) merupakan sebuah solusi email, kontak serta kolaborasi. Sederhannya, zimbra merupakan sebuah paket yang terintegrasi dengan sistem operasi untuk menyediakan keperluan email server beserta kolaborasi.
Server zimbra terdiri dari berbagai aplikasi seperti Postfix, Mysql, OpenLDAP, Jetty, ClamAV dan yang lainnya. Bisa dikatakan zimbra merupakan solusi mudah untuk membangun sebuah Mail server tanpa harus membangun dari awal menggunakan postfix/dovecot kemudian membuat webmail menggunakan squirrelmail atau roundcube. Zimbra akan langsung berfungsi ketika selesai diinstall, dan manajemennya pun cukup mudah. Kelebihan dan Keuntungan menggunakan Mail Server Zimbra:
commit to user
1. Berbasis Open Source (tidak perlu membayar biaya Lisensi Software). 2. Jumlah User/Mailbox tidak terbatas.
3. Berjalan di atas Operating System Linux.
4. Mudah dalam pengaturan dan pemeliharaan dengan Zimbra Web Concole (ZWC).
5. Terintegrasi dengan AntiVirus dan AntiSpam.
6. Satu Server fisik dengan Multi Domain account client .
7. Tampilan webmail yang bagus dan mendukung 2 tipe tampilan (Advanced/Full AJAX dan Standard/HTML).
8. Memiliki pembatasan Quota MailBox per User. Terdapat Tambahan Plug-in Zimlets yang bisa di sesuaikan pengunaanya (Vavai, 2010).
2.7 Pengertian Email
Electronic mail (e-mail) merupakan salah satu layanan yang tersedia di internet. Layanan ini digunakan untuk saling korespondensi antar teman, relasi, lembaga dan lain sebagainya. Dengan Email data dikirim secara elektronik sehingga sampai di tujuan dengan sangat cepat. email dapat mengirim file-file berupa program, gambar, graphik dan lain sebagainya. Sebuah email juga dapat mengirim pesan ke lebih dari satu orang sekaligus pada saat bersamaan.
Konsep E-mail adalah seperti mengirim surat dengan pos biasa, dimana kita mengirimkan ke kantor pos dengan dibubuhi alamat yang kita tuju. Dari Kantor Pos tersebut akan disampaikan ke Kantor Pos yang terdekat dengan alamat yang dituju dan akhirnya sampai ke alamat tersebut. Dan si penerima hanya membuka kotak pos-nya saja yang ada didepan rumah. Disini si Pengirim tidak tahu apakah si orang yang dituju tersebut sudah menerima surat tersebut, sampai surat itu dibalas.
Setiap pengguna layanan email dapat memiliki alamat E-mail dengan dua cara, yaitu menggunakan :
1. Web mail, yaitu E-mail yang dapat diperoleh dengan mendaftarkan diri pada site-site yang menyediakan E-mail space pada servernya baik
commit to user
yang gratis atau berbayar seperti Gmail, yahoo mail, mailcity, usanetmail, cmpnetmail, dan lain-lain.
2. POP mail, yaitu E-mail yang dapat diperoleh bila kita mendaftarkan diri pada mail server tertentu (biasanya dengan beberapa syarat tertentu), misalnya milik ISP atau milik instansi dimana kita sedang bekerja. Browser untuk POP mail biasanya menggunakan browser tersendiri seperti Netscape Messenger atau Microsoft Internet Mail. Alamat email diperlukan dalam proses pengiriman email. Sistem pengalamatan pada email menggunakan format identitas dan domain yang digabung menggunakan karakter @, seperti [email protected]
Pengiriman email dilakukan oleh protokol SMTP (Simple Mail Transfer Protocol) merupakan protokol di jaringan TCP/IP yang mengatur bagaimana email berpindah di antara host dan pemakai. Email disampaikan kepada penerima yang dituju. Sementara penerimaan email dilakukan oleh beberapa protokol yaitu POP (Post Office Protocol) dan IMAP (Internet Message Access Protocol). Protokol POP dipakai untuk mengambil email yang tersimpan pada mailbox untuk kemudian dibaca dengan menggunakan aplikasi email. IMAP memiliki fungsi yang sama dengan POP, hanya IMAP memiliki fitur yang lebih banyak daripada POP (tuxkeren, 2012) .
commit to user
2.8 CentOS
CentOS (Community ENTerprise Operating System) merupakan Distro Linux Open Source yang dipergunakan dalam skala Enterprise dan dibuat dari source code Red Hat Enterprise (RHEL) yang dikembangkan oleh sebuah komunitas yang disebut CentOS Project. Kedekatanya dengan RHEL menyebabkan CentOS memiliki dukungan yang nyaris sama, sehingga beberapa vendor hardware dan Software yang saat ini support dengan RHEL akan berlaku sama dengan CentOS (Fatahna, 2011).
Tabel 2.2 Versi Release CentOS
2.9 SSH
SSH adalah aplikasi pengganti remote login seperti telnet, rsh, dan rlogin, yang jauh lebih aman. Dikembangkan pertamakali oleh OpenBSD project dan versi rilis selanjutnya adalah port di-manage oleh team porting ke sistem operasi lainnya, termasuk sistem operasi Linux. Fungsi utama aplikasi ini adalah untuk mengakses mesin secara remote. Bentuk akses remote yang bisa diperoleh adalah akses pada mode teks maupun mode grafis/X apabila konfigurasinya mengijinkan. Dengan SSH, semua percakapan antara server dan klien di-enkripsi. Artinya, apabila percakapan tersebut disadap, penyadap tidak mungkin memahami isinya (Cartealy, 2013).
2.10 Flowchart
Flowchart merupakan sebuah diagram dengan simbol-simbol grafis yang menyatakan tipe operasi program yang berbeda. Sebagai representasi dari sebuah
commit to user
program, flowchart maupun algoritma dapat menjadi alat bantu untuk memudahkan perancangan alur urutan logika suatu program, memudahkan pelacakkan sumber kesalahan program, dan alat untuk menerangkan logika program.
Tujuan utama penggunaan flowchart adalah untk menggambarkan suatu tahapan penyelesaian masalah secara sederhana, terurai, rapi dan jelas dengan menggunakan simbol – simbol yang standar. flowchart merupakan diagram alir yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah.
System Flowchart Adalah urutan proses dalam sistem dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data.
Table 2.3 Simbol-simbol flowchart Sistem
No Simbol Keterangan Fungsi
1 Terminator Pemulaan atau akhir dari program.
2 Decision Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya.
3 Preparation Proses inisiasi atau pemberian harga awal.
4 Proses Proses perhitungan atau proses pengolahan data.
5 Input/output data Proses input atau output data, parameter, informasi
6 Predefined Process (Sub Program)
Permulaan sub program atau proses menjalankan sub program.
commit to user Lanjutan Tabel 2.3
No Simbol Keterangan Fungsi
7 Garis Alir (Flow Line)
Arah aliran program
8 On page connector Penghubung bagian-bagian flowchart yang berada pada satu halaman.
9 Off page-connector Penghubung bagian-bagian flowchart yang berada pada halaman yang berbeda.
Jika seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti :
a. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan. b. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi
ini harus dapat dimengerti oleh pembacanya.
c. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.
d. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja, misalkan melakukan penggandaan diri.
e. Setiap langkah dari aktivitas harus berada pada urutan yang benar.
f. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati. Percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama.
g. Gunakan simbol-simbol flowchart yang standar. (Fatansyah, 2001).