73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

82
SIMULASI SISTEM PENGAMBILAN DAN PEMANGGILAN NOMOR ANTRIAN PADA DOKTER PRAKTEK (STUDI KASUS PADA APOTIK MATAHARI) TUGAS AKHIR Oleh : SEPTIAN B SIAGIAN 06 411 133 PROGRAM STUDI TEKNIK INFORMATIKA STRATA SATU FAKULTAS ILMU KOMPUTER DAN MANAJEMEN UNIVERSITAS SAINS DAN TEKNOLOGI JAYAPURA JAYAPURA JANUARI 2011

Transcript of 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

Page 1: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

SIMULASI SISTEM PENGAMBILAN DAN PEMANGGILAN NOMOR ANTRIAN PADA DOKTER PRAKTEK

(STUDI KASUS PADA APOTIK MATAHARI)

TUGAS AKHIR

Oleh :

SEPTIAN B SIAGIAN 06 411 133

PROGRAM STUDI TEKNIK INFORMATIKA STRATA SATU FAKULTAS ILMU KOMPUTER DAN MANAJEMEN

UNIVERSITAS SAINS DAN TEKNOLOGI JAYAPURA JAYAPURA

JANUARI 2011

Page 2: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

SIMULASI SISTEM PENGAMBILAN DAN PEMANGGILAN NOMOR ANTRIAN PADA DOKTER PRAKTEK

(STUDI KASUS PADA APOTIK MATAHARI)

TUGAS AKHIR

Diajukan sebagai salah satu syarat untuk menyelesaikan studi

di Program Studi Teknik Informatika S1

Oleh :

SEPTIAN B SIAGIAN 06 411 133

PROGRAM STUDI TEKNIK INFORMATIKA STRATA SATU FAKULTAS ILMU KOMPUTER DAN MANAJEMEN

UNIVERSITAS SAINS DAN TEKNOLOGI JAYAPURA JAYAPURA

JANUARI 2011

Page 3: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian
Page 4: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

iv

KATA PENGANTAR

Puji syukur pada Tuhan Yesus Kristus yang telah melimpahkan segala

anugerahNya kepada penulis sehingga dapat menyusun Laporan Tugas Akhir

dengan judul “ Simulasi Sistem Pengambilan dan Pemanggilan Nomor Antrian

Pada Dokter Praktek (Studi Kasus Pada Apotik Matahari) “.

Tugas Akhir yang dikembangkan diharapkan dapat memberikan suatu

gambaran tentang penerapan teknologi tentang bagaimana sebuah komputer

mampu mengendalikan rangkaian alat elektronik terhadap kebutuhan kehidupan

sehari-hari.

Dalam penyusunan proposal ini, penulis mendapatkan berbagai bentuk

masukan dan dukungan serta bantuan dari berbagai pihak. Oleh karena itu pada

kesempatan ini penulis menyampaikan ucapan terima kasih dan penghargaan

kepada :

1. Bapak Drs.Ali Kastella,M sebagai rektor Universitas Sains dan Teknologi

Jayapura.

2. Bapak Drs.Suyatno, MT, selaku Dekan Fakultas Ilmu Komputer dan

Manajemen.

3. Ibu Marla S.S. Pieter, M.Cs, selaku Ketua Program Studi Teknik

Informatika S1.

4. Bapak P. Buddy Harianto, M.Kom, selaku pembimbing.

5. Bapak-bapak dan ibu-ibu dosen TI (Secara khusus dosen-dosen Jurusan

Teknik Informatika) yang telah mendidik dan membagikan ilmunya

kepada penulis selama ini.

Page 5: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

v

6. Papa dan Mama tercinta, Kakak dan Adik tercinta Mas Dhany, Mas Ricky,

dan Denis, serta Windy Sekar Sari my sweet heart yang telah banyak

memberikan dukungan berupa moral maupun materil selama penulis

mengikuti studi hingga selesai.

7. Teman-teman yang membantu (Mindarta, Wendry, Viktor, Poetra, Evi,

Halimah, Nita dan semua yang tidak tersebutkan) atas sumbangan pikiran

dan supportnya serta teman-teman seperjuangan ”Teknik Informatika 06”

atas bantuan dan kebersamaannya selama penulis menempuh studi di

Fakultas Ilmu Komputer dan Manajemen.

8. Almamater Tercinta.

Penulis menyadari bahwa penulisan Tugas Akhir ini, masih jauh dari

kesempurnaan karena keterbatasan kemampuan penulis. Oleh karena itu, penulis

mengharapkan saran dan kritik yang membangun guna kesempurnaan penulisan

skripsi ini. Akhirnya besar harapan penulis semoga skripsi ini dapat bermanfaat

bagi kita semua.

Akhir kata, penulis berharap penulisan ini dapat bermanfaat bagi

pembaca.

Jayapura, Januari 2011

Penulis

Page 6: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

MOTTO DAN PERSEMBAHAN

“Janganlah takut sebab Aku menyertai engkau, janganlah bimbang sebab Aku ini

Allahmu; Aku akan meneguhkan, bahkan akan menolong engkau, Aku akan

memegang engkau dengan tangan kananku yang membawa kemenangan”

(Yesaya 41:10)

“Janganlah hendaknya kamu kuatir tentang apapun juga, tetapi

nyatakanlah dalam hal keinginanmu kepada Allah, dalam doa dan

permohonan dengan ucapan syukur. Damai sejahtera Allah yang

melampaui segala akal, akan memelihara hati dan pikiranmu dalam Kristus Yesus.

(Filipi 4:6-7 )

Skripsi Ini ku persembahkan Untuk :

Tuhan Yesus Kristus Atas Anugerah dan Kasih Karunia-Nya.

Tiada yang dapat menggantikan Kasihmu dalam hidup saya.

Papa dan Mama tercinta.

Kakak dan adik tersayang.

Windy Sekar Sari My Sweet Heart.

Almamater FIKOM 06’ – USTJ.

Page 7: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

vii

DAFTAR ISI

Halaman

HALAMAN JUDUL ………………………………………………………….. LEMBAR PERSETUJUAN …………………………………………………... LEMBAR PENGESAHAN …………………………………………………… KATA PENGANTAR ….……………………….…………………………….. PERSEMBAHAN….. ………………………………………………………… DAFTAR ISI …....…………………………………………………………….. DAFTAR TABEL …………………………………………….……………..... DAFTAR GAMBAR …………………………………………………………. INTISARI ……………………………………………………………………..

i ii iii iv vi vii x xi xii

BAB I BAB II

PENDAHULUAN A. Latar Belakang Masalah ……………………………………..... B. Perumusan Masalah ………………………………………….... C. Pembatasan Masalah …………...…………………………….... D. Tujuan Penelitian ...…………………...……….……………..... E. Manfaat Penelitian …………………………...………………... F. Metodologi Penelitian …………………………………...…..... G. Sistematika Penulisan ……………………………………….....

LANDASAN TEORI A. Sistem …………………………………………………..……...

1. Data Flow Diagram (DFD) ……………………………….... a. Diagram Konteks ……………..………………………..... b. Diagram Zero ………………………………………….... c. Diagram Detail atau Diagram Primitif ………………......

2. Entity Relationship Diagram (ERD) ……………………...... a. One To One Relationship ……………………………...... b. One To Many Relationship ……………………………… c. Many To Many Relationship …………………………….

3. Kodefikasi ………………………………………………...... 4. Database …………………………………………………….

B. Definisi Antrian ……………………………………………...... 1. Komponen Dasar Antrian ………………………………...... 2. Disiplin Antrian ……………………………………………..

a. First-Come First-Served atau First-In First-Out ………… b. Last-Come First-Served atau Last-In Last-Out ………….

3. Struktur Antrian ……………………………………………. C. Mikrokontroler ………………………………………………....

1. Gambaran Umum 8051 (MCS-51) ………………………….

1 2 2 3 4 4 7 8 8 9 9 10 11 11 11 11 11 12 12 13 15 15 15 16 16 16

Page 8: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

viii

BAB III

2. Memori ……………………………………………......……. a. Data Memori ……………………………………………. b. Program Memori ………………………………………...

3. Pin-pin Mikrokontroler AT89S51 ………………………...... D. Perangkat Lunak Yang Digunakan …………………………….

1. Borland Delphi 7.0 …………………………………………. 2. Microsoft Access 2003 ……………………………………...

ANALISA PERANCANGAN SISTEM A. Analisa Sistem dan Perancangan ………………………………

1. Analisa Sistem Berjalan ……………………………………. 2. Analisa Kebutuhan …………………………………………. 3. Spesifikasi Perangkat Keras dan Perangkat Lunak ...……….

a. Spesifikasi Perangkat Keras …………………………...... b. Spesifikasi Perangkat Lunak …………………………….

4. Analisa Diagram Alur Kerja Rangkaian Dalam Simulasi …. 5. Perancangan Proses Database ………………………………

a. Diagram Alur Data (DAD) ……………………………… 1) Identifikasi Sumber Data/Informasi, Tujuan serta

Sumber Data/Informasi …………………………….... 2) Diagram Konteks ……………………………………. 3) Diagram Berjenjang ………………………………..... 4) Diagram Overview …………………………………...

a. Diagram Overview Level-0 ………………………. b. Entity Relationship Diagram ……………………… c. Kodefikasi …………………………………………

6. Perancangan Perangkat Keras (Hardware) …………………. a. Power Supply (Tegangan Listrik Sumber Daya) ………... b. Komunikasi dengan PC …………………………………. c. Rangkaian Mikrokontroler AT89S51 …………………… d. 7 (seven) Segment Display ………………………………

7. Perancangan Perangkat Lunak Software …………………... a. Perancangan Form Utama ………………………………. b. Perancangan Setting Shift ………………………………. c. Perancangan Pengolahan Data Dokter ………………….. d. Perancangan Output Nomor Antrian …………………….

B. Implementasi …………………………………………………... 1. Implementasi Form Menu Utama ………………………….. 2. Implementasi Form Setting Shift …………………………... 3. Implementasi Form Pengolahan Data Dokter ……………… 4. Implementasi Nomor Antrian ………………………………

18 18 19 20 23 23 23 25 25 26 28 28 29 30 31 31 31 31 32 32 32 33 33 35 35 35 36 36 39 39 39 40 40 41 41 41 42 42

Page 9: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

ix

BAB IV BAB V

HASIL DAN PEMBAHASAN A. Hasil Penelitian Dan Pembahasan ……………………………..

1. Tampilan Awal Form Utama ……………………………..... 2. Cara Penggunaan dan Kerja Program ………………………

a. Form Setting Shift ………………………………………. b. Form Pengolahan Data Dokter ………………………….. c. Form Utama ……………………………………………..

3. Hasil Uji Port Paralel ………………………………………. 4. Pembahasan …………………………………………………

PENUTUP A. Kesimpulan ……………………………………………………. B. Saran ……………………………………………………………

DAFTAR PUSTAKA ……………………………………………. LAMPIRAN

43 43 44 44 46 52 64 64 66 66 68

Page 10: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

x

DAFTAR TABEL

Tabel 2.1. Simbol-simbol Data yang Digunakan Pada DFD ……………. Tabel 2.2. Keluarga Mikrokontroler AT89Sxx …………………………. Tabel 2.3. Fungsi Pengganti / Fungsi Alternatif Saluran I/O 8 bit Dua

Arah ………………………………………………………….. Tabel 3.1. Identifikasi Kesatuan Luar ……………………………………

10 17 21 31

Page 11: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

xi

DAFTAR GAMBAR

Gambar 2.1. Proses Dasar Antrian …………………………………………. Gambar 2.2. Single Channel-Single Phase ………………………………… Gambar 2.3. Arsitektur Mikrokontroler MCS-51 ………………………….. Gambar 2.4. Pin Mikrokontroler AT89S51 ………………………………... Gambar 2.5. Diagram Blok Mikrokontroler AT89S51 …………………….. Gambar 3.1. Bagan Alir Sistem Berjalan …………………………………... Gambar 3.2. Diagram Block Rangkaian Sistem Antrian AT89S51 ………... Gambar 3.3. Flowchart Simulasi Sistem Pengambilan dan Pemanggilan

Nomor Antrian………………………………………………... Gambar 3.4. Diagram Konteks ……………………………………………... Gambar 3.5. Diagram Berjenjang …………………………………………... Gambar 3.6. Diagram Overview Level-0 …………………………………... Gambar 3.7. Entity Relationship Diagram …………………………………. Gambar 3.8. Skema Power Supply ………………………………………… Gambar 3.9. Skema Komunikasi PC dan Mikrokontroler …………………. Gambar 3.10. Skema Mikrokontroler AT89S51 …………………………… Gambar 3.11. Skema Rangkaian Seven Segment ………………………….. Gambar 3.12. Skematik Perangkat Keras Simulasi Sistem Pengambilan dan

Pemanggilan Nomor Antrian ………………………………... Gambar 3.13. Perancangan Form Menu Utama ……………………………. Gambar 3.14. Perancangan Form Setting Shift …………………………….. Gambar 3.15. Perancangan Pengolahan Data Dokter ……………………… Gambar 3.16. Perancangan Output Nomor Antrian ………………………... Gambar 3.17. Form Menu Utama ………………………………………….. Gambar 3.18. Form Setting Shift …………………………………………... Gambar 3.19. Form Pengolahan Data Dokter ……………………………… Gambar 3.20. Nomor Antrian ……………………………………………… Gambar 4.1. Form Menu Utama …………………………………………… Gambar 4.2. Form Setting Shift ……………………………………………. Gambar 4.3. Settingan Shift Berhasil ………………………………………. Gambar 4.4. Form Setting Dokter ………………………………………….. Gambar 4.5. Menambah atau Mengubah Data Dokter ……………………... Gambar 4.6. Merekam Nama Dokter ………………………………………. Gambar 4.7. Proses Sistem Antrian …………………………………………

14 16 18 20 22 25 27 30 31 32 32 33 35 35 36 37 38 39 39 40 40 41 41 42 42 43 44 44 46 46 49 52

Page 12: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

xii

I N T I S A R I

Apotik Matahari merupakan salah satu apotik yang menangani pasien dengan jumlah pasien yang banyak dalam pelayanan kesehatan yang diberikan sehari-hari. Namun, banyaknya pasien yang datang tidak didukung dengan pelayanan pasien yang memadai. Sehingga yang terjadi menimbulkan ketidak tertiban antrian. Oleh karena itu diperlukan sebuah aplikasi pemanggil nomor antrian yang diperlukan untuk mengatur antrian pada pasien di Apotik Matahari

Tujuan dari penelitian ini adalah membuat simulasi sistem perangkat lunak yang dapat digunakan untuk mengatur atau mengontrol pengambilan dan pemanggilan nomor antrian pada loket antrian

Kinerja perangkat Simulasi Sistem Antrian untuk mengatur dan mengontrol pengambilan dan pemanggilan nomor antrian berdasarkan pada asas tata tertib “masuk pertama, keluar pertama” (FIFO = First-In, First-Out) serta asas tata tertib “masuk terakhir, keluar pertama” (LIFO = Last-In, First-Out). Sistem antrian tidak akan bekerja sebelum menekan tombol daftar. Setelah tombol daftar diaktifkan maka akan keluar print out antrian yang berisi nomor urut antrian.

Sistem akan memanggil nomor antrian yang telah terdaftar, bersamaan dengan bantuan interface parallel port akan memberikan output pada rangkaian seven segment untuk menampilkan sejumlah angka sesuai dengan urutan pemanggilan. Pemanfaatan interface yang digunakan pada simulasi ini menggunakan IC AT89S51 yang dirancang untuk membuat port input dan ouput parallel dengan bit sebesar 8 bit yang akan meneruskan ke seven segment untuk menampilkan angka.

Kata Kunci : FIFO (First-In, First-Out), LIFO (Last-In, Last-Out), Seven

Segment, Mikrokontroler AT89S51.

Page 13: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

1

BAB I

PENDAHULUAN

A. Latar Belakang Masalah

Antrian adalah suatu kejadian yang biasa dalam kehidupan sehari-hari,

hal yang sering dapat dijumpai ialah menunggu di depan loket untuk mendapatkan

tiket kereta api atau tiket bioskop, pada pintu jalan tol, pada bank, pada kasir

supermarket, dan situasi-situasi yang lain merupakan kejadian yang sering

ditemui. Antrian timbul disebabkan kebutuhan akan layanan melenbihi

kemampuan (kapasitas) pelayanan atau fasilitas layanan, sehingga pengguna

fasilitas yang tiba tidak bisa segera mendapat layanan disebabkan kesibukan

layanan. Pada banyak hal, tambahan fasilitas pelayanan dapat diberikan untuk

mengurangi antrian atau untuk mencegah timbulnya antrian. Sebaliknya dengan

memberikan pelayanan tambahan, akan menimbulkan pengurangan keuntungan

yang mungkin sampai dibawah tingkat yang dapat diterima, sehingga yang terjadi

adalah timbulnya antrian yang panjang yang dapat mengakibatkan hilangnya

pelanggan.

Apotik Matahari merupakan salah satu apotik yang menangani pasien

dengan jumlah pasien yang banyak dalam pelayanan kesehatan yang diberikan

sehari-hari. Namun, banyaknya pasien yang datang tidak didukung dengan

pelayanan pasien yang memadai. Sehingga yang terjadi menimbulkan ketidak

tertiban antrian. Oleh karena itu diperlukan sebuah aplikasi pemanggil nomor

antrian yang diperlukan untuk mengatur antrian pada pasien di Apotik Matahari

Page 14: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

2

Metode yang digunakan dalam penelitian ini menggunakan dua

metode yaitu First-Come First-Served (FCFS) atau First-In First-Out (FIFO)

artinya, lebih dulu datang (sampai), lebih dulu dilayani (keluar) serta metode Last-

Come First-Served (LCFS) atau Last-In First-Out (LIFO) artinya, yang tiba

terakhir yang lebih dulu keluar.

B. Perumusan Masalah

Sesuai dengan yang telah diuraikan dalam latar belakang dapat

dirumuskan dalam Tugas Akhir sebagai berikut :

1. Bagaimana membuat suatu program untuk mengendalikan proses

sistem pengambilan dan pemanggilan nomor pada apotik untuk

pelayanan dokter praktek pada pasien.

2. Bagaimana kinerja dari sistem pengambilan dan pemanggilan nomor

antrian pada loket dokter praktek.

C. Pembatasan Masalah

Pembahasan yang dilakukan dalam penyusunan tugas akhir

mempunyai beberapa batasan masalah, diantaranya :

1. Sistem pengambilan dan pemanggilan nomor antrian ini hanya akan

digunakan pada loket antrian di Apotik Matahari khususnya pada

dokter praktek.

2. Pemanggilan nomor antrian hanya akan berlaku pada hari dimana

pasien mengambil nomor antrian tersebut.

3. Setiap pasien yang sudah dipanggil akan dipanggil kembali sesuai

nomor urutannya jika pasien tersebut belum melakukan konsultasi..

Page 15: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

3

4. Metode yang digunakan dalam penelitian ini menggunakan dua

metode yaitu :

a. First-Come First-Served (FCFS) atau First-In First-Out

(FIFO) artinya, lebih dulu datang (sampai), lebih dulu dilayani

(keluar).

b. Last-Come First-Served (LCFS) atau Last-In First-Out (LIFO)

artinya, yang tiba terakhir yang lebih dulu keluar.

5. Bentuk aplikasi berupa simulasi, dimana pemanggilan nomor antrian

dilakukan oleh sistem dan sistem akan menampilkan nomor urut pada

pasien tersebut.

D. Tujuan dan Manfaat Penelitian

1. Tujuan Penelitian

Tujuan dari penelitian ini adalah :

a. Sebagai salah satu syarat akademik untuk memperoleh gelar sarjana

Teknik (ST) pada Program Studi Teknik Informatika Jenjang Strata

Satu (S1) Universitas Sains Dan Teknologi Jayapura.

b. Membuat simulasi sistem perangkat lunak yang dapat digunakan untuk

mengatur atau mengontrol pengambilan dan pemanggilan nomor

antrian pada loket antrian. Perangkat lunak ini menggunakan program

Borland Delphi 7.0 dan Microsoft Office Access 2003.

c. Memudahkan kerja petugas jaga pada Apotik Matahari dalam

mengontrol antrian pasien, agar antrian berjalan dengan lebih teratur

sesuai pemanggilan nomor pada otomatisasi sistem.

Page 16: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

4

2. Manfaat Penelitian

Manfaat yang diperoleh dari simulasi sistem pengambilan dan

pemanggilan nomor antrian, adalah :

a. Bagi mahasiswa, sebagai sarana mengembangkan penerapan ilmu

yang diperoleh dibangku kuliah dalam menganalisa dan

menyelesaikan permasalahan dengan membuat suatu program

aplikasi.

b. Bagi masyarakat, yaitu dapat memberikan gambaran bahwa sistem

pemograman Delphi juga dapat digunakan sebagai pengontrol

melalui port paralel untuk pemanggilan nomor dan penampilan

nomor.

E. Metodologi Penelitian

1. Metode Pengumpulan Data

Untuk memperoleh data serta informasi yang dibutuhkan sehubungan

dengan penulisan tugas akhir ini, maka digunakan metode-metode

pengumpulan data sebagai berikut :

a. Metode Wawancara

Mendapatkan data atau informasi mengenai sistem antrian yang

berlaku pada apotik matahari dengan melakukan tanya jawab secara

langsung dengan narasumber, yaitu petugas jaga pada Apotik Matahari

untuk mendapatkan data tentang proses pemanggilan yang terjadi

dipaotik Matahari.

Page 17: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

5

b. Metode Pustaka

Mendapatkan literature atau buku yang ada hubungannya dengan

penulisan tugas akhir ini.

c. Studi Literatur

Mencari dan mengumpulkan referensi serta dasar teori yang diambil

dari berbagai buku penunjang untuk mendukung pembuatan program.

2. Metode Penyelesaian

a. Analisa Masalah dan Kebutuhan Sistem

Pada tahap ini, mengkaji informasi dan menganalisa masalah antrian

yang terjadi pada apotik matahari. Setelah itu merencanakan proses

dari sistem antrian yang akan dibuat Diagram Alur Data (DAD)

b. Entity Relationship Diagram (ERD)

Pada tahap ini, merupakan pembuatan perancangan sistem dengan

menggunakan metode Entity Relationship Diagram (ERD) yaitu

dengan cara membuat relasi / hubungan yang berkaitan antara satu file

dengan file lainnya berdasar kunci relasi (Relation Key), yang

merupakan kunci utama dari masing-masing file. ER merupakan tahap

yang cukup penting, tanpa tahap ER ini kita tidak dapat melanjutkan

tahap-tahap berikutnya dalam perancangan suatu sistem.

c. Kodefikasi

Pada tahap ini, merupakan pembuatan proses pengkodean untuk

menentukan suatu kunci utama (primary key) dalam suatu pembuatan

database.

Page 18: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

6

d. Perancangan Struktur Database

Pada tahap ini, merupakan pembuatan perancangan struktur database

dengan maksud untuk menunjukkan elemen-elemen data dengan

panjang tipe data, dan subtipe datanya. Dinyatakan dalam sejumlah

karakter untuk membentuk field-field tersebut.

e. Desain Input / Output

Pada tahap ini, merupakan pembuatan perancangan model dari suatu

elemen sistem yang menerima seluruh masukan data, dimana masukan

data tersebut dapat berupa jenis data dan frekuensi pemasukan data

tersebut. Setelah itu merancang hasil dari proses pengolahan data

(output) yang merupakan tujuan dari rancangan sistem tersebut.

f. Pembuatan Program

Pada tahap ini, merupakan pembuatan program / aplikasi dengan

menggunakan bahasa pemrograman sesuai perencanaan proses yang

telah ditentukan dan desain input-output yang telah dirancangkan.

g. Uji Coba Program

Pada tahap ini, akan dilakukan uji coba program yang telah dibuat

sesuai tahap-tahap perancangan sistem yang telah dilakukan dengan

cara menjalankan program yang telah dibuat. Kemudian akan

diketahui apakah program tersebut sudah dapat berjalan sesuai dengan

yang diharapkan atau belum. Jika dari hasil pengujian terdapat

kesalahan atau belum layak digunakan, maka program harus

diperbaiki dahulu.

Page 19: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

7

F. Sistematika Penulisan

Adapun sistematika penulisan Tugas Akhir (TA) ini adalah sebagai berikut :

BAB I PENDAHULUAN

Pada bab ini berisikan Latar Belakang Masalah, Perumusan

Masalah, Pembatasan Masalah, Tujuan Penelitian, Manfaat

Penelitian, Metodologi Penelitian, Sistematika Penulisan

BAB II LANDASAN TEORI

Pada bab ini berisikan teori-teori yang memperkuat tugas

akhir ini di dalam pemecahan masalah.

BAB III ANALISA DAN PERANCANGAN SISTEM

Pada bab ini berisikan struktur analisa, perancangan

software, desain input-output, serta implementasi dari

sistem yang akan dibuat.

BAB IV HASIL DAN PEMBAHASAN

Pada bab ini berisikan hasil dari sistem yang telah dibuat

dan akan dilakukan pengujian alat, pengujian program

dengan melakukan capture sistem pada Komputer..

BAB V PENUTUP

Pada bab ini berisikan kesimpulan dan saran-saran.

Page 20: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

8

BAB II

LANDASAN TEORI

A. Sistem

Sistem berasal dari bahasa Latin (systēma) dan bahasa Yunani

(sustēma) adalah suatu kesatuan yang terdiri komponen atau elemen yang

dihubungkan bersama untuk memudahkan aliran informasi, materi atau energi.

“Sistem dapat diartikan ialah suatu kesatuan yang terdiri atas

komponen atau elemen yang saling berinteraksi, saling terkait, atau

saling bergantung membentuk keseluruhan yang kompleks.”

(Sumber : http://kisaranku.blogspot.com/2010/10/pengertian-sistem-lengkap.html)

Sebagai contoh adalah sistem pencernaan manusia yang terdiri atas

serangkaian komponen-komponen seperti mulut, kerongkongan, lambung,

usus dan anus yang saling berinteraksi dan bekerja sama untuk mencerna

makanan, mengambil sari, dan membuang sisanya. Jadi istilah sistem

terkandung tiga elemen penting, yaitu : Rangkaian Komponen, Interaksi dan

Kerja Sama, dan Tujuan.

Guna menjelaskan proses yang terjadi di dalam sistem yang dirancang,

digunakan model data flow diagram (DFD). Penggambaran data flow

diagram dilakukan mulai dari penggambaran diagram konteks sampai dengan

level yang lebih rendah.

1. Data Flow Diagram (DFD)

Desain Sistem adalah merupakan alat yang digunakan untuk

menggambarkan suatu sistem yang telah ada atau sistem baru yang akan

Page 21: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

9

dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik

dimana data tersebut mengalir ataupun lingkungan fisik dimana data

tersebut akan disimpan.

(Sumber: http://lavorchid.wordpress.com/2009/03/13/beberapa-pengertian-tentang-data-flow-diagram-dfd/).

Dalam merancang suatu sistem, sistem analis memerlukan beberapa

alat bantu, salah satunya adalah Data Flow Diagram (DFD). Data Flow

Diagram merupakan suatu bentuk atau model yang memungkinkan

professional sistem untuk menggambarkan sistem sebagai suatu jaringan

proses fungsional atau sebagai jaringan proses dan fungsi yang

dihubungkan satu sama lain oleh suatu penghubung yang disebut alur data

(Data Flow)

Data Flow Diagram memiliki tingkatan (levelisasi) proses,

Levelisasi DFD sebagai berikut :

a. Diagram Konteks

Merupakan diagram tingkat atas yang terdiri dari proses dan

menggambarkan hubungan terminator dengan sistem yang mewakili

suatu proses. Hubungan antar Terminator dan Data Store tidak

digambarkan.

b. Diagram Zero

Diagram ini merupakan diagram tingkat menengah yang

menggambarkan proses utama dari dalam sistem, yang terdiri dari

hubungan entitas (entity), proses data flow dan penyimpanan data (data

store)

Page 22: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

10

c. Diagram Detail atau Diagram Primitif

Diagram Primitif merupakan diagram paling bawah yang tidak

dapat diuraikan lagi, sedangkan Diagram Detail masih dapat diuraikan.

(Sumber : http://freezcha.wordpress.com/2010/02/27/data-flow-diagram-dfd)

Simbol-simbol yang digunakan dalam DFD dapat dilihat pada tabel

berikut :

Terminator (External / Internal Entity)

Kesatuan (entity) di lingkungan luar sistem yang berupa orang, organisasi atau sistem lainnya yang berada di lingkungan luarnya yang akan memberikan input atau menerima output dari sistem

Process (Proses)

Kegiatan atau kerja yang dilakukan oleh orang, mesin atau komputer dari hasil suatu arus data yang masuk dalam proses untuk dihasilkan arus data yang akan keluar dari proses atau untuk mengubah input menjadi output.

Data Store (Penyimpanan Data)

Simpanan dari data yang dapat berupa file atau database di sistem komputer, arsip atau catatan manual, kotak tempat data di meja seseorang, tabel acuan manual, agenda atau buku

Data Flow (Arus Data)

Menunjukkan arus data yang dapat berupa masukkan untuk sistem atau hasil dari proses sistem

Tabel 2.1. Simbol-simbol data yang digunakan pada DFD (Sumber: http://freezcha.wordpress.com/2010/02/27/data-flow-diagram-dfd)

Page 23: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

11

2. Entity Relationship Diagram (ERD)

Entity Relationship Diagram merupakan suatu model untuk

menjelaskan hubungan antar data dalam basis data berdasarkan objek-

objek dasar data yang mempunyai hubungan antar relasi. Relasi antar dua

file atau dua tabel dikategorikan menjadi tiga macam, yaitu :

a. One to One Relationship

Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan

entitas A berhubungan paling banyak dengan satu entitas pada

himpunan entitas B.

b. One to Many Relationship

Setiap entitas pada himpunan entitas A dapat berhubungan dengan

banyak entitas pada himpunan entitas B, tetapi setiap entitas pada

entitas B dapat berhubungan dengan satu entitas pada himpunan entitas

A.

c. Many to Many Relationship

Setiap entitas pada himpunan entitas A dapat berhubungan dengan

banyak entitas pada himpunan.

3. Kodefikasi

Kodefikasi merupakan suatu tekhnik pengkodean yang digunakan

dalam menentukan suatu kunci utama (primary key) pada suatu pembuatan

program database, system ini sangat berguna dalam pengaksesan data,

karena data sangat bergantung pada primary key.

Page 24: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

12

4. Database

Basis Data terdiri atas 2 kata, yaitu Basis sebagai markas atau

gudang, tempat bersarang/berkumpul. Dan data adalah representasi fakta

dunia nyata yang mewakili suatu objek seperti manusia, barang, hewan,

peristiwa, konsep, keadaan dan sebagainya, yang direkam dalam bentuk

angka, huruf, symbol, teks, gambar, bunyi, atau kombinasinya. Menurut

Fathansyah, dalam bukunya Basis Data, mengemukakan bahwa :

“Basis Data dapat didefinisikan dalam sejumlah sudut pandang

seperti: (Fathansyah, 2007 : 2)

1) Himpunan kelompok data (arsip) yang saling berhubungan

yang diorganisasi sedemikian rupa agar kelak dapat

dimanfaatkan kembali dengan cepat dan mudah.

2) Kumpulan data yang saling berhubungan yang disimpan secara

bersama sedemikian rupa dan tanpa pengulangan (redundansi)

yang tidak perlu, untuk memenuhi berbagai kebutuhan.

3) Kumpulan file / tabel / arsip yang saling berhubungan yang

disimpan dalam media penyimpanan elektronis.”

B. Definisi Antrian

Dalam kehidupan sehari-hari, antrian, queuing atau waiting line, sangat

sering dijumpai. Mengantri kadang memang harus dilakukan bilamana sedang

menunggu giliran, misalnya untuk membeli karcis bioskop, membayar tol,

mengambil atau menyetor uang pada bank, dan lainnya. Antrian dapat juga terjadi

pada barang, misalnya antrian bahan mentah yang akan diproses untuk dijadikan

Page 25: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

13

suatu produk tertentu, komoditi ekspor yang akan dimuat ke kapal laut, ataupun

data yang akan diolah di pusat computer, dan lain sebagainya.

Menurut Siagian, P dalam dalam bukunya Penelitian Operasional : Teori dan

Praktek menjelaskan bahwa : (Siagian, 1987)

“antrian ialah suatu garis tunggu dari nasabah (satuan) yang

memerlukan layanan dari satu atau lebih pelayan (fasilitas layanan)”

(Sumber : http://www.sutanto.staff.uns.ac.id/files/2009/03/zzzzzzzzzzzzz.pdf)

Pada umumnya system antrian dapat diklasifikasikan menjadi system

yang berbeda-beda dimana teori antrian dan simulasi sering diterapkan secara

luas. Klasifikasi menurut Hillier dan Lieberman adalah sebagai berikut :

1. Sistem pelayanan komersial

2. Sistem pelayanan bisnis-industri

3. System pelayanan transportasi

4. System pelayanan social

1. Komponen Dasar Antrian

Komponen dasar proses antrian adalah :

(Sumber: http://www.sutanto.staff.uns.ac.id/files/2009/03/zzzzzzzzzzzzz.pdf)

a) Kedatangan

Setiap masalah antrian melibatkan kedatangan, misalnya orang, mobil,

panggilan telepon untuk dilayani, dan lain-lain. Unsur ini sering

dinamakan proses input. Proses input meliputi sumber kedatangan atau

biasa dinamakan calling population, dan cara terjadinya kedatangan uang

umumnya merupakan variable acak. Menurut Levin, dkk (2002), variable

Page 26: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

14

acak adalah suatu variable yang nilainya bisa berapa saja sebagai hasil dari

percobaan acak. Variable acak dapat berupa diskrit atau kontinu. Bila

variable acak hanya dimungkinkan memiliki beberapa nilai saja, maka ia

merupakan variable acak diskrit. Sebaiknya bila nilainya dimungkinkan

bervariasi pada rentang tertentu, ia dikenal sebagai variable acak kontinu.

b) Pelayan

Pelayan atau mekanisme pelayanan dapat terdiri dari satu atau lebih

pelayan, atau satu atau lebih fasilitas pelayanan. Tiap-tiap fasilitas

pelayanan kadang-kadang disebut sebagai saluran (channel)

(Schroeder,1997). Contohnya, jalan tol. Mekanisme pelayanan dapat

hanya terdiri dari satu pelayan dalam satu fasilitas pelyanan yang ditemui

pada loket seperti pada penjualan tiket di gedung bioskop

c) Antri

Inti dari analisa antrian adalah antri itu sendiri. Timbulnya antrian

terutama tergantung dari sifat kedatangan dan proses pelayanan. Jika tak

ada antrian berarti terdapat pelayan yang menganggur atau kelebihan

fasilitas pelayanan (Mulyono, 1991).

Spp = Satuan penerima pelayan

Gambar 2.1. Proses Dasar Antrian (Sumber: http://www.sutanto.staff.uns.ac.id/files/2009/03/zzzzzzzzzzzzz.pdf)

Page 27: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

15

2. Disiplin Antrian

Penentu antrian lain yang penting adalah disiplin antri. Disiplin antri adalah

aturan keputusan yang menjelaskan cara melayani pengantri. Menurut Siagian,

P (1987), ada 4 bentuk disiplin yang biasa digunakan, yaitu First-Come First

Served (FCFS) atau First-In First-Out (FIFO), Last-Come First-Served atau

Last-In First-Out (LIFO), Service In Random Order (SIRO).

a. First-Come First-Served (FCFS) atau First-In First-Out (FIFO)

First-In First-Out ialah suatu bentuk disiplin antri dimana yang lebih dulu

datang (sampai) akan lebih dulu dilayani (keluar). Misalnya, antrian pada

loket pembelian tiket bioskop.

b. Last-Come First-Served atau Last-In First-Out (LIFO), Service In Random

Order (SIRO)

Last-In First-Out merupakan antrian dimana yang datang paling akhir yang

dilayani paling awal atau paling dahulu, yang juga sering dikenal dengan LCFS

(Last-Come First-Served). Misalnya adalah pada system bongkar muat barang di

dalam truk, dimana barang yang masuk terakhir justru akan keluar terlebih

dahulu.

3. Struktur Antrian

Sedangkan bentuk struktur antrian dari kedua bentuk disiplin tersebut

menggunakan metode Single Channel-Single Phase dimana hanya ada satu

jalur yang memasuki system pelayanan atau ada satu fasilitas pelayanan.

Single Phase berarti hanya ada satu pelayanan.

Page 28: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

16

C. Mikrokontroler

Mikrokontroler adalah single chip computer yang memiliki kemampuan

untuk di program dan digunakan untuk tugas-tugas yang berorientasi control.

Mikrokontroler dapat diartikan sebagai sebuah pengendali yang berukuran

mikro, yang terlihat hampir sama dengan mikroprosesor, namun memilki

beberapa perbedaan diantaranya memiliki banyak komponen yang

terintegrasi di dalamnya seperti RAM, ROM, I/O Port, dan Timer/Counter

yang tidak dimiliki oleh mikroprosesor.

Namun mikrokontroler hanya dapat melaksanakan tugas-tugas yang

lebih spesifik dibandingkan dengan mikroprosesor yang mampu menangani

pemrosesan data input dan output dari berbagai sumber.

1. Gambaran Umum 8051(MCS-51)

Mikrokontroler AT89S51 merupakan salah satu produk dari Atmel

Corp. yang memiliki 2 Kb Flash Programmable and Erasable Read-Only

Memory (PEROM), dengan 8 bit (jalur data). Mikrokontroler ini memiliki

Gambar 2.2. Single Channel - Single Phase (Sumber: http://www.sutanto.staff.uns.ac.id/files/2009/03/zzzzzzzzzzzzz.pdf)

Page 29: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

17

Berikut ini adalah perbandingan mikrokontroler ATMEL keluarga

MCS-51 yang mencakup tipe mikrokontroler, kapasitas memori program,

memori data, jumlah pewaktu 16 bit dan teknologi pembuatannya.

Tabel 2.2 Keluarga Mikrokontroler AT89Sxx

Seri Flash

(KBytes) RAM

(Bytes) EEPROM (KBytes)

Pin I/O

Timer UART SPI ISP

AT89C51 4 128 - 32 2 1 - -

AT89S51 4 128 - 32 2 1 - Ya

AT89C52 8 256 - 32 3 1 - -

AT89S52 8 256 - 32 3 1 - Ya

AT89C2051 2 256 - 15 2 1 - -

AT89S2051 2 256 - 15 2 1 - Ya

AT89C4051 4 256 - 15 2 1 - -

AT89S4051 4 256 - 15 2 1 - Ya

AT89S8252 8 256 2 32 3 1 1 Ya

AT89S8253 12 256 2 32 3 1 1 Ya

Jantung dari mikrokontroler 8051 adalah CPU yang bertugas untuk

membaca memory program dan menjalankan perintah yang tersimpan

didalamnya. CPU ini disusun oleh sebuah unit aritmatika dan logika (ALU =

arithmethic logic unit) yang terhubung dengan yang terhubung dengan SFR

yaitu register A (ACC = Accumulator), register B, PSW (program status

word) dan stack pointer (SP), dan 16 bit program counter (PC) serta DPTR

(data pointer).(Usman, 2008:03)

Menurut Suhata, ST dalam dalam bukunya yang berjudul Aplikasi

Mikrokontroler sebagai pengendali peralatan elektronik via Line Telepon

menjelaskan bahwa :

Page 30: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

18

“ Mikrokontroler adalah Central Processing Unit (CPU) yang disertai

dengan memori serta input / output dan dibuat dalam bentuk Chip “

(Suhata, 2005:07)

Gambar 2.3.Arsitektur Mikrokontroler MCS-51

(Sumber : http://mytutorialcafe.com/mikrokontroller%20organisasi%20memori.htm)

2. Memori

Memori berfungsi untuk menyimpan suatu infomasi, baik berupa

program maupun data. Makin besar kapasitas memori yang dimiliki suatu

sistem, maka kemampuannya untuk menangani suatu program yang lebih

kompleks dan mengolah data akan lebih baik.

Dalam dunia mikrokontroler dikenal dua tipe memori, yaitu data

memory dan program memory. Pemisahan ini dimaksudkan untuk

mempercepat proses kerja mikrokontroler.

a. Data Memory

Data Memory befungsi untuk menyimpan data, terbagi 2 berdasarkan

lokasinya, yaitu Internal Data Memory dan External Data Memory.

Internal Data Memory yang dimiliki MCS-51 sebesar 128 bytes ditambah

Page 31: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

19

dengan SFR sehingga berjumlah 256 bytes. Sedangkan External Data

Memory berupa IC RAM atau ROM yang dapat ditambahkan hingga 64 KB.

Internal data memori terdiri atas: Register Banks, General Purpose

RAM, Bit-addressable RAM dan Special Function Registers (SFR). Register

Banks digunakan sebagai alamat untuk menampung delapan register selebar 1

bytes, yang diberi nama R0-R7. General Purpose RAM merupakan ruang

bebas untuk menyimpan Variabel atau Inisialisasi Stack Pointer, yang hanya

dapat diakses per bytes.

Bit-addressable RAM memiliki fungsi yang sama dengan General

Purpose RAM, tetapi dapat diakses per bytes maupun per bit. Special

Function Register (SFR) merupakan sejumlah register khusus yang

mencakup: Alamat Port, Accumulator, Register B, Timer dan sejumlah

Register Control.

b. Program Memory

Program Memory berfungsi menyimpan kode program. Kapasitas

Internal Program Memory bervariasi, untuk 89C2051 memiliki kapasitas

2KB. Namun jika diperlukan dapat ditambahkan IC RAM atau ROM sebagai

External Data Memory, yang dapat mencapai 64 KB.

Page 32: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

20

3. Pin-pin Mikrokontroler AT89S51

Gambar 2.4 Pin mikrokontroler AT89S51

http://rezutopia.wordpress.com/2009/03/27/mikrokontroler-at89s51/

Susunan pin-pin mikrokontroler AT89S51 diperlihatkan pada gambar

diatas. Penjelasan masing-masing pin adalah sebagai berikut :

1) Pin 1 sampai 8 (Port 1) merupakan port masukan dan keluaran dua

arah berjumlah 8 bit dengan rangkaian pull-up internal dan dapat

juga berfungsi sebagai input dengan memberikan logika 1. Pada

port ini terdapat pin MISO, MOSI dan SCK yang digunakan saat

pemrograman dan verifikasi data.

2) Pin 9 merupakan pin untuk rangkaian reset yang digunakan untuk

mengembalikan kondisi awal mikrokontroler.

3) Pin 10 sampai 17 (Port 3) merupakan saluran I/O 8 bit dua arah

dengan internal pull-up yang memiliki fungsi pengganti. Bila

fungsi pengganti tidak difungsikan, port ini dapat digunakan

Page 33: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

21

sebagai port paralel 8 bit serba guna. Adapun fungsi pengganti

pada port ini diperlihatkan seperti tabel di bawah ini :

Tabel 2.3. Fungsi Pengganti / Fungsi Alternatif Saluran I/O 8 bit Dua Arah

BIT NAMA FUNGSI ALTERNATIF P3.0 RXD Serial Input Port P3.1 TXD Serial Output Port P3.2 INT 0 Eksternal Interupt 0 P3.3 INT 1 Eksternal Interupt 1 P3.4 T0 Timer 0 External Input P3.5 T1 Timer 1 External Input P3.6 WR Eksternal data memori write strobe P3.7 RD Eksternal data memori read strobe

4) Pin 19 (XTAL1) masukan untuk penguat membalik osilator dan

masukan bagi rangkaian operasi detak internal.

5) Pin 18 (XTAL 2) keluaran dari penguat membalik osilator.

6) Pin 20 merupakan ground catu daya mikrokontroler.

7) Pin 21 – 28 merupakan saluran masukan dan keluaran yang

dinamakan sebagai port 2. Pin dapat digunakan tanpa tergantung

dengan pin lainnya.

8) Pin 29 merupakan pin yang berfungsi pada saat mengeksekusi

program yang terletak pada memori eksternal. Pin ini dinamakan

pin PSEN.

9) Pin 30 (ALE/PROG) merupakan penahan alamat memori eksternal

selama mengakses memori eksternal. Pin ini juga berfungsi sebagai

pulsa/sinyal input pemrograman selama proses pemrograman.

10) Pin 31 (EA) merupakan sinyal kontrol untuk pembacaan memori

program.

Page 34: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

22

11) Pin 32 – 39 merupakan terminal I/O pada mikrokontroler dan

disebut sebagai port.

12) Pin 40 merupakan pin tegangan power supply 4-5 VDC.

Gambar 2.5. Diagram Blok Mikrokontroler AT89S51

(Datasheet AT89S51, 2010)

Page 35: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

23

D. Perangkat Lunak Yang Digunkan

1. Borland Delphi 7.0

Bahasa pemograman Borland Delphi 7 adalah paket bahasa

pemograman yang bekerja dalam sistem operasi windows. Delphi

merupakan suatu bahasa pemrograman visual dan merupakan bahasa

pemrograman yang berorientasi obyek.

2. Microsoft Access 2003

Merupakan sebuah pogram aplikasi basis data komputer relasional

(RDBMS / Relational Database Management System) yang ditujukan

untuk kalangan rumahan dan perusahaan kecil hingga menengah.

Microsoft Access merupakan anggota dari Microsoft Office sedangkan

Page 36: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

24

Microsoft Access menggunakan basis data Microsoft Jet Database Engine

dan juga menggunakan tampilan sehingga memudahkan pengguna.

a. Kelebihan

1) Beberapa pengembang aplikasi professional menggunakan

Microsoft Access untuk mengembangkan aplikasi secara cepat atau

yang sering disebut dengan Rapid Application Development / RAD

2) Tool khususnya untuk pembuatan program yang lebih besar dan

aplikasi yang berdiri sendiri untuk para salesman.

3) Dilihat dari segi perspektif programmer keunggulan Microsoft

Acces adalah kompatibilitasnya dengan bahasa pemrograman

Structured Query Language ( SQL ).

4) Microsoft Access mengizinkan pengembangan yang relatif cepat

karena semua tabel basis data, kueri, form, dan report disimpan di

dalam berkas basis data miliknya. Misalnya untuk membuat query,

5) Microsoft menggunakan Query Design Grid, sebuah program

berbasis grafis yang mengizinkan para penggunanya untuk

membuat query tanpa harus mengetahui bahasa SQL nya.

Page 37: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

25

BAB III

PERANCANGAN SISTEM DAN IMPLEMENTASI

A. Analisa Sistem Dan Perancangan

1. Analisa Sistem Berjalan

Berikut adalah Sistem Analisa Berjalan :

Keterangan :

1. Pasien datang dan mendaftarkan diri untuk memeriksa di dokter

sesuai dokter yang di inginkan pasien.

2. Petugas akan meminta pasien untuk menunggu, dan memanggil

pasien untuk periksa/konsultasi di dokter bersangkutan.

3. Pasien datang ke dokter setelah dipanggil oleh petugas.

Berdasarkan prosedur kerja yang berjalan saat ini maka perlu

direncanakan untuk membuat suatu simulasi sistem pengambilan dan

pemanggilan nomor antrian yang lebih baik, sebab berdasarkan

pengamatan proses sistem antrian yang terjadi, pemanggilan pasien

masih dilakukan secara manual. Berikut proses yang akan diubah adalah

sebagai berikut :

Gambar 3.1 Bagan Alir Sistem Berjalan

Page 38: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

26

1. Pasien datang dan mendaftarkan diri untuk memeriksa di dokter

sesuai dokter yang di inginkan pasien.

2. Petugas akan mendaftarkan dan mencetak nomor antrian. Pasien akan

menungu sesuai nomor antrian di display nomor.

3. Pasien datang ke dokter bersangkutan setelah nomor antrian

dipanggil dan ditunjukan oleh display nomor.

2. Analisa Kebutuhan

Pada pendekatan simulasi, untuk menyelesaikan persoalan

sistem antrian akan lebih mudah dilakukan bila dimulai dengan

membangun model percobaan yang berupa prototipe dari suatu sistem

antrian. Selanjutnya untuk melakukannya perlu memperhatikan tiga

unsur penting dalam pemodelan simulasi, yaitu Sistem, Entities, dan

Attributes.

a. Sistem yang akan digunakan yaitu berupa system antrian. Prototype

ini dbuat khusus untuk mengatur antrian agar dapat berjalan secara

tertib.

b. Entities yang dibutuhkan dalam antrian yaitu petugas operator, loket

antrian dan prasarana pendukung. Protipe antrian ini diharapkan

mampu memberikan kemudahan petugas operator dalam

memberikan pelayanan antrian dan orang yang mengantri tidak

menunggu terlalu lama.

Page 39: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

27

c. Attributes berupa prasarana pendukung yang digunakan yaitu

komputer sebagai sarana kontrol, loket antrian, alat cetak nomor

antrian, suara pemanggil nomor antrian dan tampilan display nomor

antrian. Protipe ini harus fleksibel sehingga dalam pelaksanaan

pengoperasian sesuai dengan system antrian berdasarkan asas FIFO

= First-In, First-Out dan LIFO = Last-In, Last-Out.

Dalam Simulasi Sistem Antrian ini menggunakan

mikrokontroler AT89S51 adalah IC (Integrated Circuit) AT89S51

sebagai menampilkan angka hasil di 7 segment dari pemrosesan data di

mikrokontroler yang diperoleh dari PC.

Keterangan Prinsip Kerja pada Diagram Block :

a. Power supply merupakan catu daya untuk mikrokontroler AT89S51.

b. IC MAX232 ini berguna kalau anda mau membuat komunikasi data

antara komputer dengan mikrokontroler.

c. PC ( Personal Computer ) digunakan sebagai interface sistem

antrian. Komputer bertugas mengirimkan data ke Mikrokontroler.

Gambar 3.2 Diagram Block Rangkaian Sistem Antrian dengan AT89S51

Page 40: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

28

d. Rangkaian mikrokontroler menggunakan IC AT89S51, merupakan

alat pengontrol input dan output yang terpasang pada Rangkaian IC

mikrokontroller.

e. 7 Segment 2 Digit bertugas untuk menampilkan angka hasil dari

pemrosesan data di mikrokontroler yang diperoleh dari PC.

3. Spesifikasi Perangkat Keras Dan Perangkat Lunak

a. Spesifikasi Perangkat Keras

Dalam simulasi sistem pengambilan dan pemanggilan

nomor antrian pada dokter praktek ini menggunakan komputer dan

mikrokontroler sebagai penampilan nomor antrian. Berikut ini

merupakan spesifikasi 2 komponen tersebut :

1) Power Supply :

a) Trafo( 220V - 12V AC)

b) Dioda Bridge ( 4 buah dioda 1N4001 )

c) Capacitor 1000uF / 16V

d) IC regulator 7805

e) Adaptor 100-240 VAC, 50-60 HZ

2) Mikrokontroler AT89S51 :

a) IC AT89S51(mikrokontroler 8 bit dari ATMEL) 1 unit

b) Kristal (XTAL) 11.0592 MHz 1 unit

c) Resistor array 1 kOhm (isi 8) 1 unit

d) Capacitor 33pF 2 unit

e) capacitor 10uF & resistor 10 kOhm

Page 41: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

29

3) 7 segment :

a) 7 segment common katoda 8 unit

b) IC 4511 (BCD to 7segment) 8 unit

4) Personal Komputer ( PC ) :

a) Menggunakan Processor Intel Dual Core

b) Memori 2 Gigabyte (minimal 128 Megabyte)

c) Monitor

d) Harddisk (minimal 20 Gigabyte)

e) Serial Port COM & LPT

f) Power Suply

5) Komunikasi dengan PC

a) Konektor DB9 1 unit

b) IC MAX232

c) 4 buah capacitor 1uF

d) Kabel Serial Port COM

6) Printer Dot Matrix

b. Spesifikasi Perangkat Lunak

Sistem operasi yang digunakan adalam Microsoft Windows

Xp SP3, sistem Antrian dibuat menggunakan Bahasa Pemograman

Borland Delphi 7 dan Database Microsoft Access

Page 42: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

30

4. Analisa Diagram Alur Kerja Rangkaian Dalam Simulasi

Dalam Simulasi Sistem Pengambilan dan Pemanggilan Nomor

Antrian akan digambarkan dan dijelaskan diagram alur flowchart untuk

proses mekanisme antrian.

Panggil dan Display Nomor Antrian Yang

Belum Dipanggil

Simpan Data Pasien di Database

Daftar PasienSTART

Ada Nomor Pasien yang belum dipanggil

END

Ya

Cetak Kwitansi

Simpan Status Pemanggilan Nomor

Cek Status Pemanggilan Nomor

Panggil dan Display Nomor Antrian

Selanjutnya

Cek Pasien

Validasi NomorKonsultasi Dokter

Tidak

Ya

Tidak

Diagram alir yang pada gambar 3.3 merupakan proses pada

simulasi. Diagram alir ini menjelaskan bahwa pasien akan datang dan

menerima nomor antrian. Sistem akan melakukan proses output berupa

suara pemanggilan nomor urut yang telah dicetak melalui speaker dan

Gambar 3.3 Flowchart Simulasi Sistem Pengambilan dan Pemanggilan Nomor Antrian

Page 43: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

31

tampilan nomor pada display rangkaian seven segment yang

dihubungkan melalui port parallel.

5. Perancangan Proses dan Database

a. Diagram Alur Data (DAD)

1) Identifikasi Data/Informasi, Tujuan serta Sumber

Data/Informasi.

Berikut ini adalah tabel identifikasi data/informasi,

tujuan serta sumber data sistem informasi:

Tabel 3.1 Identifikasi Kesatuan Luar

Kesatuan Luar Input Output

Petugas - Daftar Shift

Dokter - Data Dokter

Pasien - Mendaftar - Cetak Nomor Antrian

2) Diagram Konteks

Gambar 3.4 Diagram Konteks

Page 44: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

32

3) Diagram Berjenjang

4) Diagram Overview

a) Diagram Overview Level 0

Gambar 3.5 Diagram Berjenjang

Gambar 3.6 Diagram Overview Lv. 0

Page 45: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

33

b. Entity Relationship Diagram

c. Kodefikasi

Untuk mempermudah pengelompokkan pengolahan data dan

laporan, maka perlu diberikan kode kepada setiap key pada setiap

file.

Pengkodean dilakukan untuk field-field di bawah ini :

1) No_Shift pada file Shift.

No_Shift terdiri dari 1 digit.

Bentuk :

x a

Keterangan :

a) Kode Nomor Shift ( Shift 1 dan Shift 2 jika ada 2

shift).

Contoh : 1

Gambar 3.7 Entity Relationship Diagram

Page 46: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

34

2) No_Dokter pada file Dokter.

No_Dokter terdiri 1 digit.

Bentuk :

x a

Keterangan :

a) Kode Nomor Dokter.

Contoh : 1

3) Antrian pada file Pasien

No_Dokter terdiri 2 digit.

Bentuk :

xx a

Keterangan :

a) Kode Nomor Antrian.

Contoh : 01

Page 47: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

35

6. Perancangan Perangkat Keras (Hardware)

a. Power Supply ( tegangan listrik sebagai sumber daya )

Power Suplay ini mengkonversi tegangan 220V AC dari

PLN menjadi 5V DC yang bisa digunakan oleh rangkaian display

tersebut, namun karena kurang praktis, maka sistem diganti dengan

adaptor switching 12V DC, jadi sebenarnya sebagian rangkaian ini

tidak ada di alat. Yang ada hanya IC regulator 7805 yang bertugas

mengkonversi tegangan 12V DC menjadi 5V DC.

b. Komunikasi dengan PC

Komunikasi antara PC dan Mikrokontroler ini penting

karena bagian ini mengkonversi dan meneruskan data serial dari PC-

mikrokontroler dan sebaliknya. Karena mikrokontroler

mengeluarkan dan menerima data serial dengan level tegangan

Gambar 3.8 Skema Power Suply

Gambar 3.9 Skema Komunikasi PC dan Mikrokontroler

Page 48: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

36

5V/0V, sedangkan PC menerima dan mengirim data serial dengan

level tegangan +12V/-12V, maka dibutuhkan bagian ini untuk

konversi tersebut.

c. Rangkaian mikrokontroler AT89S51

Pada sistem minimum Mikrokontroler AT89S51,

mikrokontroler AT89S51 sebagai komponen utama.

d. 7 ( Seven ) Segmen Display

Seven Segment merupakan gabungan dari 7 buah LED

(Light Emitting Diode) yang dirangkaikan membentuk suatu

tampilan angka. Seven Segment LED Display merupakan salah satu

bagian dari simulasi sistem pengambilan dan pemanggilan nomor

antrian yang dapat digunakan untuk menampilkan display angka dari

program yang dibuat yang dikirim melalui modul paralel.

Gambar 3.10 Skema Mikrokontroler AT89S51

Page 49: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

37

Setelah merancang rangkaian rangkaian input-output, maka

rangkaian digabung menjadi satu rangkaian AT89S51. Sehingga dalam

rangkaian terlihat jelas skematik untuk Perangkat Keras Simulasi Sistem

Pengambilan dan Pemanggilan Nomor Antrian.

Gambar 3.11 Skema Seven Segment

Page 50: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

38

Gambar 3.12 Skematik Perangkat Keras Simulasi Sistem Pengambilan dan Pemanggilan Nomor Antrian

Page 51: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

39

7. Perancangan Perangkat Lunak ( Software )

Perancangan system komputer (tampilan system pada pc) :

a. Perancangan Form Utama

Sistem Pengambilan Dan Pemanggilan Nomor AntrianSistem Pengambilan Dan Pemanggilan Nomor Antrian

00Dokter 1

Shift : 1

Masuk

A p o t i k

M AT AHA RI4 Januari 2011R A B U

09:56:42

Daftar / Print

00Dokter 2

Masuk

Daftar / Print

00Dokter 3

Masuk

Daftar / Print

00Dokter 4

Masuk

Daftar / Print

Sistem Antrian Apotik Matahari

Setting Shift

Selesai Selesai Selesai Selesai

Setting Dokter

b. Perancangan Form Setting Shift

ShiftShift

Setting Shift

Jam MulaiNo Shift Jam Selesai Tambah

Ubah

Hapus

Simpan Batal

|< < > >| C

No Shift

00:00Jam Mulai

00:00Jam Selesai

Sistem Antrian

Gambar 3.13 Perancangan Form Menu Utama

Gambar 3.14 Perancangan Form Setting Shift

Page 52: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

40

c. Perancangan Pengolahan Data Dokter

d. Perancangan Output Nomor Antrian (Print)

Gambar 3.16 Perancangan Ouput Nomor Antrian

Gambar 3.15 Perancangan Pengolahan Data Dokter

Page 53: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

41

B. Implementasi

Berikut penerapan rancangan – rancangan form ke dalam program dengan

menggunakan bahasa pemograman Borland Delphi 7 :

1. Implementasi Form Menu Utama

2. Implementasi Form Setting Shift

Gambar 3.17 Form Menu Utama

Gambar 3.18 Form Setting Shift

Page 54: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

42

3. Implementasi Form Pengolahan Data Dokter

4. Implementasi Nomor Antrian

Apotik Matahari Nomor Urut :

01

Dokter Gunawan

07/01/2011; 01:24:34

Gambar 3.20 Nomor Antrian

Gambar 3.19 Form Pengolahan Data Dokter

Page 55: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

43

BAB IV

HASIL DAN PEMBAHASAN

A. Hasil Penelitian dan Pembahasan

1. Tampilan Awal Form Utama

Pada dasarnya Simulasi Sistem pengambilan dan pemanggilan

Nomor Antrian ini merupakan sistem yang bekerja dengan bantuan

Operator/Petugas untuk menentukan Dokter yang akan digunakan untuk

layanan antrian. Kemampuan komputer sebagai sarana kontrol juga

digunakan untuk menghasilkan perintah mencetak urutan nomor dan

mengendalikan tampilan nomor seven segment melalui port paralel DB-

25, agar mengeluarkan nomor sesuai dengan pemanggilan nomor antrian

Gambar 4.1 Form Menu Utama

Page 56: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

44

Form Utama ini merupakan Form dimana tempat terjadinya

proses sistem antrian. Dalam Form Utama ini menampilkan 3 bagian dari

proses sistem. Yaitu, penetuan jam shift operator atau petugas,

pengolahan data dokter yang meliputi penambahan, ubah, hapus dan

mensetting suara yang di gunakan pemanggilan nama dokter.

2. Cara Penggunaan dan Kerja Program

a. Form Setting Shift

Form ini berfungsi untuk mengatur jam kerja shift operator /

petugas dimana memiliki jumlah shift maksimal 2 Shift. Pada form

ini pengguna dapat mengatur jam kerja shift pertama maupun kedua

jika sistem di kerjakan 2 shift, dengan cara mengubah jam shift dan

tekan button simpan.

Gambar 4.2 Form Setting Shift

Gambar 4.3 Settingan Shift berhasil

Page 57: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

45

Berikut penggalan listing program dari form setting shift :

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin form1.timer1.Enabled:=true; form1.timer2.Enabled:=true; form1.timer2.Enabled:=true;

end; procedure TForm2.FormCreate(Sender: TObject); begin jam1_mulai.text:=copy(form1.adotable1.FieldByName('Shi

ft1').Value,1,2); menit1_mulai.text:=copy(form1.adotable1.FieldByName('S

hift1').Value,4,2); jam2_mulai.text:=copy(form1.adotable1.FieldByName('Shi

ft2').Value,1,2); menit2_mulai.text:=copy(form1.adotable1.FieldByName('S

hift2').Value,4,2); jam1_selesai.text:=copy(form1.adotable1.FieldByName('S

hift1').Value,7,2); menit1_selesai.text:=copy(form1.adotable1.FieldByName(

'Shift1').Value,10,2); jam2_selesai.text:=copy(form1.adotable1.FieldByName('S

hift2').Value,7,2); menit2_selesai.text:=copy(form1.adotable1.FieldByName(

'Shift2').Value,10,2); end; procedure TForm2.SimpanClick(Sender: TObject); var s: string; begin s:=jam1_mulai.text + ':'+ menit1_mulai.Text + '-' +

jam1_selesai.Text + ':' + menit1_selesai.Text ; form1.adotable1.edit; form1.adotable1.FieldByName('Shift1').Value:=s; s:=jam2_mulai.Text + ':' + menit2_mulai.Text + '-' +

jam2_selesai.Text + ':' + menit2_selesai.text ; form1.adotable1.FieldByName('Shift2').Value:=s; form1.adotable1.post; MessageBox(0, 'Setting Shift Baru Tersimpan',

'Setting Shift', +mb_OK +mb_ICONINFORMATION);

end; end.

Page 58: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

46

b. Form Pengolahan Data Dokter

Form ini berfungsi untuk mengolah (mengimput / mengubah /

menghapus) data dokter, dengan memasukan nomor dokter, nama

dokter, shift dokter serta spesialis yang di emban oleh dokter

tersebut.

Berikut penggalan listing program dari pengolahan data dokter

(mengimput / mengubah / menghapus) :

//btn tambah procedure TForm3.BitBtn1Click(Sender: TObject); begin Bersih;

Gambar 4.4 Form Setting Dokter

Gambar 4.5 Menambah/Mengubah Data Dokter

Page 59: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

47

StatusInput(true); StatusControl(false); Edit1.SetFocus; status:='tambah'; end; //btn ubah procedure TForm3.BitBtn2Click(Sender: TObject); begin with Form1.ADOQuery1 do begin if IsEmpty then begin MessageDlg('Tidak Data Ada Yang Dapat

Diubah'+#13+'Masukan Data Terlebih Dahulu',mtInformation,[mbOK],0);

Exit; end; end; StatusInput(true); StatusControl(false); Edit1.SetFocus; status:='ubah'; end; //btn hapus procedure TForm3.BitBtn3Click(Sender: TObject); begin with Form1.ADOQuery1 do begin if IsEmpty then begin MessageDlg('Tidak Ada Data Yang Akan

Dihapus',mtError,[mbOK],0); Exit; end; if MessageDlg('Data Ini Ingin Dihapus

?',mtConfirmation,[mbYes,mbNo],0) = mrno then

exit; with Form1.ADOQuery2 do begin Close; SQL.Clear; SQL.Add('delete from dokter where no_dokter =:a

'); Parameters.ParamValues['a']:=Edit1.Text; ExecSQL; end; Segar; Bersih; end; MessageDlg('Data Berhasil

Terhapus',mtInformation,[mbOK],0); end; //btn simpan procedure TForm3.BitBtn4Click(Sender: TObject); begin

Page 60: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

48

if (Edit1.Text='') or (Edit2.Text='') or (Edit3.Text='') then

begin ShowMessage('Data belum lengkap!'+#13+'Lengkapi

data terlebih dahulu!'); exit; end; if status='tambah' then begin with Form1.ADOQuery2 do begin Close; SQL.Clear; sql.Add('select * from dokter where

no_dokter=:a'); Parameters.ParamValues['a']:=Edit1.Text; open; if not isempty then begin showmessage('Data Dokter dengan nomor

'+Edit1.Text+' sudah ada.'); Exit; end else begin Close; SQL.Clear; SQL.Add('insert into Dokter (No_dokter,

Nama_Dokter, Spesialis) values (:a, :b, :c)');

Parameters.ParamValues['a']:=Edit1.Text; Parameters.ParamValues['b']:=Edit2.Text; Parameters.ParamValues['c']:=Edit3.Text; ExecSQL; end; Segar; MessageDlg('Data baru telah

ditambah!',mtInformation,[mbOK],0) end; end else if status='ubah' then begin with Form1.ADOQuery2 do begin Close; SQL.Clear; SQL.Add('update dokter set No_dokter=:a,

Nama_dokter=:b, Spesialis=:c where no_dokter=:d');

Parameters.ParamValues['a']:=Edit1.Text; Parameters.ParamValues['b']:=Edit2.Text; Parameters.ParamValues['c']:=Edit3.Text; Parameters.ParamValues['d']:=temp; ExecSQL; end; Segar;

Page 61: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

49

MessageDlg('Data telah dibaharui!',mtInformation,[mbOK],0);

end; end; //btn batal procedure TForm3.BitBtn5Click(Sender: TObject); begin StatusInput(false); StatusControl(true); Bersih; BitBtn2.Enabled:=False; BitBtn3.Enabled:=False; end; end.

Pengguna juga dapat mengatur (merekam) untuk pemanggilan

suara nama dokter yang akan di proses saat sistem antrian

dijalankan.

Berikut penggalan listing program dari pengolahan data dokter

(mengimput / mengubah / menghapus) :

procedure TForm3.BitBtn4Click(Sender: TObject); begin .............................. // program suara StatusInput(false); StatusControl(false); y:=StrToInt(Edit1.Text); case y of 1 : x:= 'dokter1'; 2 : x:= 'dokter2'; 3 : x:= 'dokter3'; 4 : x:= 'dokter4'; 5 : x:= 'dokter5'; 6 : x:= 'dokter6';

Gambar 4.6 Merekam Nama Dokter

Page 62: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

50

7 : x:= 'dokter7'; 8 : x:= 'dokter8'; 9 : x:= 'dokter9'; else Edit1.Text:= 'sample'; end; WaveFile.Text := ChangeFileExt(ExtractFilePath

(Application.ExeName) + SaveDialog.FileName, x+'.' + SaveDialog.DefaultExt);

btnSelectFile.Enabled:=True; Format.Enabled:=True; WaveFile.Enabled:=True; btnRecord.Enabled := True; BtnSelesai.Enabled := True; btnPlay.Enabled := FileExists(WaveFile.Text); end; procedure TForm3.FormCreate(Sender: TObject); var pcm: TPCMFormat; WaveFormatEx: TWaveFormatEx; begin for pcm:=Succ(Low(TPCMFormat))toHigh(TPCMFormat)do begin SetPCMAudioFormatS(@WaveFormatEx, pcm); Format.Items.Append(GetWaveAudioFormat

(@WaveFormatEx)); end; Format.ItemIndex := Ord(StockAudioRecorder.PCMFormat)

- 1; end; procedure TForm3.FormatChange(Sender: TObject); begin StockAudioRecorder.PCMFormat := TPCMFormat

(Format.ItemIndex + 1);

end; procedure TForm3.btnSelectFileClick(Sender: TObject); begin if SaveDialog.Execute then begin WaveFile.Text := SaveDialog.FileName; btnRecord.Enabled := True; btnPlay.Enabled := FileExists(SaveDialog.FileName); end; end; procedure TForm3.btnRecordClick(Sender: TObject); begin StockAudioRecorder.RecordToFile(WaveFile.Text); end; procedure TForm3.btnPlayClick(Sender: TObject); begin

Page 63: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

51

StockAudioPlayer.PlayFile(WaveFile.Text); end; procedure TForm3.btnPauseClick(Sender: TObject); begin if StockAudioPlayer.Active then StockAudioPlayer.Paused := not

StockAudioPlayer.Paused else StockAudioRecorder.Paused := not

StockAudioRecorder.Paused;

end; procedure TForm3.btnStopClick(Sender: TObject); begin if StockAudioPlayer.Active then StockAudioPlayer.Active := False else StockAudioRecorder.Active := False; end; procedure TForm3.StockAudioPlayerLevel(Sender: TObject; Level: Integer); begin Position.Caption := MS2Str(StockAudioPlayer.Position,

msAh); AudioLevel.Position := Level; end; procedure TForm3.StockAudioRecorderLevel(Sender: TObject; Level: Integer); begin Position.Caption:=MS2Str(StockAudioRecorder.Position,

msAh); AudioLevel.Position := Level; end; end.

Page 64: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

52

c. Form Utama

Dalam Form ini proses sistem antrian akan bekerja, pada saat

operator menekan button daftar/print maka sistem akan

mendaftarkan nomor antrian pasien dan mencetaknya. Operator akan

mendaftarkan dan mencetak nomor sesuai pasien yang datang dan

berobat di setiap dokter yang sudah di siapkan. Dan di dalam form

ini akan berlangsung proses sistem antrian sesuai proses FIFO dan

LIFO. Dimana proses FIFO ialah pasien yang datang itu yang berhak

masuk duluan untuk memeriksa / konsultasi pada dokter dan selesai

terlebih dahulu. Dan proses LIFO ialah di saat pasien tidak berada di

tempat maka nomor pasien tersebut akan di lewati dan akan di

panggil kembali pada saat sistem melakukan pemanggilan ulang.

Berikut penggalan listing program dari form utama :

procedure cek_shift; var v,w,x: integer;

Gambar 4.7 Proses Sistem Antrian

Page 65: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

53

s: string; begin s:= form1.adotable1.FieldByName('Shift1').Value; v:= strtoint(copy(s,1,2)); w:= strtoint(copy(s,7,2)); x:= strtoint(copy(form1.Jam.caption,1,2)); if (x>v) and (x<w) then begin form1.shift.Caption:='1'; end else if x=v then begin v:= strtoint(copy(s,4,2)); x:= strtoint(copy(form1.Jam.caption,4,2)); if x>=v then form1.shift.Caption:='1'; end else if x=w then begin w:= strtoint(copy(s,10,2)); x:= strtoint(copy(form1.Jam.caption,4,2)); if x<=w then form1.shift.Caption:='1'; end; s:= form1.adotable1.FieldByName('Shift2').Value; v:= strtoint(copy(s,1,2)); w:= strtoint(copy(s,7,2)); x:= strtoint(copy(form1.Jam.caption,1,2)); if (x>v) and (x<w) then begin form1.shift.Caption:='2'; end else if x=v then begin v:= strtoint(copy(s,4,2)); x:= strtoint(copy(form1.Jam.caption,4,2)); if x>=v then form1.shift.Caption:='2'; end else if x=w then begin w:= strtoint(copy(s,10,2)); x:= strtoint(copy(form1.Jam.caption,4,2)); if x<=w then form1.shift.Caption:='2'; end; form1.adotable2.Active:=false; if form1.shift.caption='1' then

form1.adotable2.TableName:='Shift1' else form1.adotable2.TableName:='Shift2';

form1.adotable2.Active :=true; end; procedure TForm1.FormCreate(Sender: TObject); var s: string; begin

Page 66: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

54

waktu.caption:=FormatDateTime('dd-mmmm-yyyy',Date); Jam.Caption:=timetostr(time); Hari.Caption:=FormatDateTime('dddd',Date); comport1.Open; comport1.connected:=true; adotable2.first; if adotable2.FieldByName('Antrian').value<>null then begin s:= copy(waktu.caption,1,2); if s <> copy (adotable2.FieldByName

('Tanggal').value, 1,2) then begin adotable2.First; while not adotable2.Recordset.EOF do begin adotable2.edit; adotable2.Delete; end; adotable2.edit; adotable2.Delete; adotable2.Active:=false; adotable2.TableName:='Shift2'; adotable2.Active :=true; adotable2.First; while not adotable2.Recordset.EOF do begin adotable2.edit; adotable2.Delete; end; adotable2.edit; adotable2.Delete; end; end; cek_shift; adotable2.first; nomor[1]:=0; nomor[2]:=0; nomor[3]:=0; nomor[4]:=0; buf[1]:=0; buf[2]:=0; buf[3]:=0; buf[4]:=0; while not adotable2.Recordset.EOF do begin if adotable2.FieldByName('No_Dokter').value=1 then begin nomor[1]:=adotable2.FieldByName('Antrian').value; if adotable2.FieldByName('Status').value=null

then buf[1]:=buf[1]+1; if adotable2.FieldByName('Status').value='A' then begin skip[1]:=buf[1]; total[1]:=buf[1]+1; end; end;

Page 67: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

55

if adotable2.FieldByName('No_Dokter').value=2 then begin nomor[2]:=adotable2.FieldByName('Antrian').value; end; if adotable2.FieldByName('No_Dokter').value=3 then begin nomor[3]:=adotable2.FieldByName('Antrian').value; end; if adotable2.FieldByName('No_Dokter').value=4 then begin nomor[4]:=adotable2.FieldByName('Antrian').value; end; adotable2.next; end; if nomor[1]<>0 then begin adotable2.first; while not adotable2.Recordset.EOF do begin if adotable2.FieldByName('Status').value = '1'

then begin status[1]:=1; mulai1.Enabled:=false; selesai1.Enabled:=true; nomor1.Caption:= inttostr

(adotable2.FieldByName ('Antrian').value);

if length(nomor1.Caption)=1 then nomor1.Caption := '0'+nomor1.Caption;

end else if adotable2.FieldByName('Status').value =

'A' then begin panggil[1]:=1; nomor1.Caption:= inttostr(adotable2.FieldByName

('Antrian').value); if length(nomor1.Caption)=1 then nomor1.Caption

:= '0'+nomor1.Caption; end; if adotable2.FieldByName('Status').value = '2'

then begin status[2]:=1; mulai2.Enabled:=false; selesai2.Enabled:=true; nomor2.Caption:= inttostr(adotable2.FieldByName

('Antrian').value); if length(nomor2.Caption)=1 then nomor2.Caption

:= '0'+nomor2.Caption; end else if adotable2.FieldByName('Status').value =

'B' then begin panggil[2]:=1;

Page 68: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

56

nomor2.Caption:= inttostr(adotable2.FieldByName ('Antrian').value);

if length(nomor2.Caption)=1 then nomor2.Caption := '0'+nomor2.Caption;

end; if adotable2.FieldByName('Status').value = '3'

then begin status[3]:=1; mulai3.Enabled:=false; selesai3.Enabled:=true; nomor3.Caption:= inttostr(adotable2.FieldByName

('Antrian').value); if length(nomor3.Caption)=1 then nomor3.Caption

:= '0'+nomor3.Caption; end else if adotable2.FieldByName('Status').value =

'C' then begin panggil[3]:=1; nomor3.Caption:= inttostr(adotable2.FieldByName

('Antrian').value); if length(nomor3.Caption)=1 then nomor3.Caption

:= '0'+nomor3.Caption; end; if adotable2.FieldByName('Status').value = '4'

then begin status[4]:=1; mulai4.Enabled:=false; selesai4.Enabled:=true; nomor4.Caption:= inttostr(adotable2.FieldByName

('Antrian').value); if length(nomor4.Caption)=1 then nomor4.Caption

:= '0'+nomor4.Caption; end else if adotable2.FieldByName('Status').value =

'D' then begin panggil[4]:=1; nomor4.Caption:= inttostr(adotable2.FieldByName

('Antrian').value); if length(nomor4.Caption)=1 then nomor4.Caption

:= '0'+nomor4.Caption; end; adotable2.next; end; end; end; //Proses FIFO dan LIFO procedure PLAY1; begin form1.PRINT1.Enabled:=false; sndPlaySound('nomor.wav', SND_NODEFAULT); suarax := copy(form1.nomor1.Caption,1,1);

Page 69: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

57

if suarax='0' then begin suarax := copy(form1.nomor1.Caption,2,1); suarax := suara[strtoint(suarax)]+'.wav'; sndPlaySound(PChar(suarax), SND_NODEFAULT); end else begin suarax := copy(form1.nomor1.Caption,1,1); if suarax<>'1' then begin suarax := suara[strtoint(suarax)]+'.wav'; sndPlaySound(PChar(suarax), SND_NODEFAULT); sndPlaySound('puluh.wav', SND_NODEFAULT); suarax := copy(form1.nomor1.Caption,2,1); if suarax<>'0' then begin suarax := suara[strtoint(suarax)]+'.wav'; sndPlaySound(PChar(suarax), SND_NODEFAULT); end; end else begin suarax := copy(form1.nomor1.Caption,2,1); if suarax='1' then begin sndPlaySound('se.wav', SND_NODEFAULT); sndPlaySound('belas.wav', SND_NODEFAULT); end else if suarax='0' then begin sndPlaySound('se.wav', SND_NODEFAULT); sndPlaySound('puluh.wav', SND_NODEFAULT); end else begin suarax := suara[strtoint(suarax)]+'.wav'; sndPlaySound(PChar(suarax), SND_NODEFAULT); sndPlaySound('belas.wav', SND_NODEFAULT); end; end; end; sndPlaySound('dokter.wav', SND_NODEFAULT); sndPlaySound('dokter1.wav', SND_NODEFAULT); form1.PRINT1.Enabled:=true; end; .............................. PLAY2/ PLAY3/ PLAY4 procedure TForm1.Timer1Timer(Sender: TObject); begin if status[1]=0 then begin if panggil[1]=0 then begin adotable2.First; index:=0;

Page 70: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

58

while not adotable2.Recordset.EOF do begin if (adotable2.FieldByName('Antrian').value <>

null) and (adotable2.FieldByName ('Status').value = null) then

begin if adotable2.FieldByName('No_Dokter').value=1

then begin if index = skip[1] then begin nomor1.Caption:=inttostr(adotable2.

FieldByName('Antrian').value); if length(nomor1.Caption)=1 then

nomor1.Caption := '0'+nomor1.Caption;

nomor1.Refresh ; comport1.WriteStr('*1'+nomor1.Caption); adotable2.edit; adotable2.FieldByName('Status').value:='A'; adotable2.post; panggil[1]:=1; PLAY1; end; index:=index+1; end; end; adotable2.next; end; if index<>0 then if skip[1]=index then begin skip[1]:=0; total[1]:=total[1]-1; end; end else begin jeda[1]:= jeda[1]+1; if jeda[1]=10 then PLAY1; if jeda[1]=20 then PLAY1; if jeda[1]=30 then PLAY1; if jeda[1]=40 then PLAY1; if jeda[1]=50 then begin panggil[1]:=0; jeda[1]:=0; adotable2.First; while not adotable2.Recordset.EOF do begin if (adotable2.FieldByName('Antrian').value =

strtoint(nomor1.Caption)) and (adotable2. FieldByName ('No_Dokter').value=1) then

begin adotable2.edit; adotable2.FieldByName('Status').value:=null; adotable2.post;

Page 71: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

59

adotable2.next; skip[1]:=skip[1]+1; if skip[1]>=total[1] then begin total[1]:=total[1]+1; if total[1]=2 then skip[1]:=1 else

skip[1]:=0; end; nomor1.Caption := '00'; break; end; adotable2.next; end; end; end; end ; ...................... status[2]/ status[3]/ status[4] end; //Proses Cetak Nomor Antrian procedure TForm1.PRINT1Click(Sender: TObject); var x:string; begin nomor[1]:=nomor[1]+1 ; adotable2.Append ; adotable2.FieldByName('Antrian').value:=nomor[1]; adotable2.FieldByName('No_Dokter').value:=1; adotable2.FieldByName('Tanggal').value:=

DateToStr(Date); adotable2.FieldByName('Jam').value:= timetostr(time); adotable2.Post ; richedit1.Clear ; with ADOQuery2 do begin Close; SQL.Clear; sql.Add('select * from dokter where no_dokter=1'); open; if isempty then x:='Dokter 1' else x:=FieldValues['Nama_Dokter']; end; with richEdit1 do begin RichEdit1.paragraph.Alignment:=taCenter; SelStart := GetTextLen; SelAttributes.Size := 10; SelAttributes.Style := [fsUnderline]; SelText := 'Apotik Matahari' + #13#10; SelText := 'Nomor Urut :' + #13#10; SelAttributes.Size := 72; SelAttributes.Style := [fsBold]; if nomor[1]>9 then SelText := inttostr(nomor[1])

+#13#10 else SelText := '0'+inttostr(nomor[1]) +#13#10;

Page 72: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

60

SelAttributes.Size := 8; SelText := #13#10; SelAttributes.Style := [fsItalic]; SelText := x; SelText := #13#10; SelText := #13#10; SelText := waktu.caption +'; '+ Jam.Caption; end; richedit1.Print('Print'); end; ...................... PRINT2/ PRINT3/ PRINT4 procedure TForm1.Timer2Timer(Sender: TObject); var v,w,x: integer; s: string; cek:string; begin cek:=shift.Caption; waktu.caption:=FormatDateTime('dd mmmm yyyy',Date); Jam.Caption:=timetostr(time); Hari.Caption:=FormatDateTime('dddd',Date); s:= adotable1.FieldByName('Shift1').Value; v:= strtoint(copy(s,1,2)); w:= strtoint(copy(s,7,2)); x:= strtoint(copy(waktu.caption,1,2)); if (x>v) and (x<w) then begin shift.Caption:='1'; end else if x=v then begin v:= strtoint(copy(s,4,2)); x:= strtoint(copy(Jam.caption,4,2)); if x>=v then shift.Caption:='1'; end else if x=w then begin w:= strtoint(copy(s,10,2)); x:= strtoint(copy(Jam.caption,4,2)); if x<=w then shift.Caption:='1'; end; s:= adotable1.FieldByName('Shift2').Value; v:= strtoint(copy(s,1,2)); w:= strtoint(copy(s,7,2)); x:= strtoint(copy(Jam.caption,4,2)); if (x>v) and (x<w) then begin shift.Caption:='2'; end else if x=v then begin v:= strtoint(copy(s,4,2)); x:= strtoint(copy(Jam.caption,4,2));

Page 73: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

61

if x>=v then shift.Caption:='2'; end else if x=w then begin w:= strtoint(copy(s,10,2)); x:= strtoint(copy(Jam.caption,4,2)); if x<=w then shift.Caption:='2'; end; if cek <> shift.Caption then begin for x:=1 to 4 do begin nomor[x]:=0; status[x]:=0; panggil[x]:=0; jeda[x]:=0; skip[x]:=0; total[x]:=1; end; nomor1.caption:='00'; nomor2.caption:='00'; nomor3.caption:='00'; nomor4.caption:='00'; mulai1.Enabled:=true; mulai2.Enabled:=true; mulai3.Enabled:=true; mulai4.Enabled:=true; selesai1.Enabled:=false; selesai2.Enabled:=false; selesai3.Enabled:=false; selesai4.Enabled:=false; adotable2.Active :=false; adotable2.TableName:='Shift2'; adotable2.Active :=true; adotable2.First; while not adotable2.Recordset.EOF do begin adotable2.edit; adotable2.Delete; end; adotable2.edit; adotable2.Delete; end; end; procedure TForm1.selesai1Click(Sender: TObject); begin status[1]:=0; mulai1.Enabled:=true; selesai1.Enabled:=false; adotable2.first; while not adotable2.Recordset.EOF do begin

Page 74: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

62

if adotable2.FieldByName('Antrian').value = strtoint(nomor1.Caption) then

begin adotable2.edit; adotable2.FieldByName('Status').value:='X'; adotable2.post; break; end; adotable2.Next; end; nomor1.Caption:='00'; panggil[1]:=0; end; ...................... selesai2/ selesai3/ selesai4 procedure TForm1.Mulai1Click(Sender: TObject); begin status[1]:=1; total[1]:=total[1]-1; Mulai1.enabled:=false; selesai1.Enabled:=true; adotable2.First; while not adotable2.Recordset.EOF do begin if adotable2.FieldByName('Antrian').value=strtoint(nomor1.Caption) then begin adotable2.edit; adotable2.FieldByName('Status').value:='1'; adotable2.Post; break; end; adotable2.next; end; end; ...................... Mulai2/ Mulai3/ Mulai4 procedure TForm1.FormShow(Sender: TObject); begin with ADOQuery2 do begin Close; SQL.Clear; sql.Add('select * from dokter where no_dokter

=:a'); Parameters.ParamValues['a']:=1; open; if isempty then begin Dokter1.Caption:='Dokter 1'; Mulai1.Enabled:=False; PRINT1.Enabled:=False; end else begin Dokter1.Caption:=FieldValues['Nama_Dokter'];

Page 75: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

63

Mulai1.Enabled:=True; PRINT1.Enabled:=True; end; Close; SQL.Clear; sql.Add('select * from dokter where no_dokter =2'); open; if isempty then begin Dokter2.Caption:='Dokter 2'; Mulai2.Enabled:=False; PRINT2.Enabled:=False; end else begin Dokter2.Caption:=FieldValues['Nama_Dokter']; Mulai2.Enabled:=True; PRINT2.Enabled:=True; end; Close; SQL.Clear; sql.Add('select * from dokter where no_dokter =3'); open; if isempty then begin Dokter3.Caption:='Dokter 3'; Mulai3.Enabled:=False; PRINT3.Enabled:=False; end else begin Dokter3.Caption:=FieldValues['Nama_Dokter']; Mulai3.Enabled:=True; PRINT3.Enabled:=True; end; Close; SQL.Clear; sql.Add('select * from dokter where no_dokter =4'); open; if isempty then begin Dokter4.Caption:='Dokter 4'; Mulai4.Enabled:=False; PRINT4.Enabled:=False; end else begin Dokter4.Caption:=FieldValues['Nama_Dokter']; Mulai4.Enabled:=True; PRINT4.Enabled:=True; end; end; end; end.

Page 76: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

64

3. Hasil Uji Port Paralel

Ketika memberi masukan high, maka pada pin paralel akan

mengeluarkan tegangan 5 volt. Simulai ini menggunakan seven segment

sebagai penanda. Bila port itu aktif (high) maka led pada seven segment

tersebut akan menyala. Dalam prosesnya sisteme mengirim data masing2

display setiap 1 detik , alat menerima lewat serial RS-232. Untuk format

data yang dikirim :

*1XX = mengirim data untuk display nomor 1

*2XX = mengirim data untuk display nomor 2

*3XX = mengirim data untuk display nomor 3

*4XX = mengirim data untuk display nomor 4

dimana XX adalah angka yang ditampilkan di masing2 display. Baud rate

yang dipakai adalah 9600 bps. Berikut penggalan listing program yang

digunakan untuk mengkoneksikan komputer dengan alat yang terletak

pada form utama :

procedure TForm1.Timer3Timer(Sender: TObject); begin comport1.WriteStr('*1'+nomor1.Caption); comport1.WriteStr('*2'+nomor2.Caption); comport1.WriteStr('*3'+nomor3.Caption); comport1.WriteStr('*4'+nomor4.Caption); end;

4. Pembahasan

Simulasi sistem pengambilan dan pemanggilan nomor antrian

pada dokter praktek di apotik matahari berbasis Delphi menggunakan 3

jendela visual yaitu Jendela Halaman Utama, Jendela Halaman

Pengaturan Shift dan Jendela Halaman Pengolahan Data Dokter. Pada

Page 77: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

65

jendela halaman utama mempunyai empat belas perintah tombol untuk

menampilkan form setting shift, seting dokter dan 4 tombol untuk daftar

dan cetak nomor antrian dan 4 tombol untuk masuk konsultas pada

dokter dan 4 tombol pasien telah selesai konsultasi yang digunakan oleh

operator dan satu tombol perintah keluar dari program simulasi antrian.

Sistem ini terhubung dengan mikrokontroler IC AT89S51 melalui

konektor DB9, yang akan meneruskan data untuk ditampilkan pada 7

segment yang telah tersedia. Dan dari hasil yang telah di uji maka

simulasi sistem pengambilan dan pemanggilan nomor antrian dapat

berjalan dengan baik dengan melihat proses antrian FIFO dan LIFO.

Page 78: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

66

BAB V

PENUTUP

A. Kesimpulan

Berdasarkan penelitian yang telah dilakukan dapat disimpulkan sebagai

berikut :

1. Simulasi sistem antrian ini merupakan sebuah bentuk simulasi yang berguna

untuk mengatur jalannya sebuah antrian agar berjalan sebagaimana mestinya

2. Simulasi sistem antrian ini menggunakan Mikrokontroler AT89S51 ialah

sebuah rangkaian simulasi yang menggunakan Seven Segment sebagai alat

untuk menampilkan nomor antrian, dimana untuk menampilkan antrian

tersebut dibutuhkan system antrian yang dikendalikan oleh operator lewat

computer. Cara kerja system antrian ini menggunakan asas FIFO dan LIFO.

3. Kelebihan dari Aplikasi dan Rangkaian Simulasi Antrian ini ialah mampu

melanjutkan ke nomor yang sama pada saat lampu mati.

4. Kekurangan dari Rangkaian Simulasi Antrian yang menggunakan Seven

Segment harus di restart terlebih dahulu sebelum memasuki shift baru.

B. Saran

Adapun masukan-masukan yang dapat diberikan untuk pengembangan

sistem ini ke depan adalah sebagai berikut :

Page 79: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

67

1. Agar rangkaian yang digunakan lebih efektif gunakan IC PPI

(Programmable Peripheral Interface) 8255. IC yang dirancang untuk

membuat port input dan output parallel. IC ini mempunyai 24 bit I/O

yang terorganisir menjadi 3 port tiap portnya mempunyai 8 bit. Sehingga

apabila tampilan angka antrian pada rangkaian seven segmen hanya 2

digit, dengan IC PPI dapat ditampilkan lebih dari 2 digit hingga batasan

sampai 6 digit angka antrian.

2. Menambahkan tombol reset pada aplikasi untuk mereset rangkaian pada

saat pergantian shift.

Page 80: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian

68

DAFTAR PUSTAKA

Devina I. R, 2009, Mikrokontroler AT89S51, http://rezutopia.wordpress.com/2009/03/27/mikrokontroler-at89s51/, diakses tanggal 10 Maret 2010 Freezchas Blog, 2010, Simbol-simbol Data pada DFD, http://freezcha.wordpress.com/2010/02/27/data-flow-diagram-dfd, diakses pada tanggal 6 januari 2011 Kisaran Blog, 2010, Pengertian Sistem – Definisi Sistem, http://kisaranku.blogspot.com/2010/10/pengertian-sistem-lengkap.html, diakses tanggal 6 Januari 2011 My Tutorial Cafe, 2010, Tutorial Mikrokontroler MCS-51 ATMEL ISP, http://mytutorialcafe.com/mikrokontroller%20serial1.htm, diakses tanggal 26 Oktober 2010 Sekedar Berbagi Blog, 2009, Beberapa Pengertian Tentang Data Flow Diagram, http://lavorchid.wordpress.com/2009/03/13/beberapa-pengertian-tentang-data-flow-diagram-dfd/, diakses tanggal 6 Januari 2011 Sutanto, 2009, Teori Simulasi Antrian, http://www.sutanto.staff.uns.ac.id/files/2009/03/zzzzzzzzzzzzz.pdf, diakses pada tanggal 25 Februari 2010 Kakiay J.T, 2004, Dasar Teori Antrian Untuk Kehidupan Nyata, Andi Yogyakarta

Page 81: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian
Page 82: 73814724 Simulasi Sistem Pengambilan Dan Pemanggilan Nomor Antrian