X-Sync (XML Syncronization) pada sistem penjualan perusahaan : studi kasus di PT. NKI Prembun - USD Repository

  

X – SYNC ( XML SYNCRONIZATION )

PADA SISTEM PENJUALAN PERUSAHAAN

(Studi Kasus di PT. NKI Prembun)

  

SKRIPSI

Ditujukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika

  

Disusun Oleh:

  

X – SYNC ( XML SYNCRONIZATION )

  

IN COMPANY SELLING SYSTEM

(Case Study in PT. NKI Prembun)

A Thesis

  Presented as Partial Fulfillment of the Rrequirements to Obtain the Sarjana Teknik Degree in Department of Informatics Technology

  

HALAMAN PERSETUJUAN

SKRIPSI

X – SYNC ( XML SYNCRONIZATION )

  

PADA SISTEM PENJUALAN PERUSAHAAN

(Studi Kasus di PT. NKI Prembun)

  Disusun Oleh : Nama : Henricus Eko Prabowo NIM : 035314004

  

SKRIPSI

X – SYNC ( XML SYNCRONIZATION )

  

PADA SISTEM PENJUALAN PERUSAHAAN

(Studi Kasus di PT. NKI Prembun)

  Dipersiapkan dan disusun oleh : Nama : Henricus Eko Prabowo NIM : 035314004

  Telah dipertahankan di depan panitia penguji pada tanggal 12 Desember 2007 dan dinyatakan memenuhi syarat

  Susunan Panitia Penguji : Nama Lengkap Tanda Tangan Ketua : Ridowati Gunawan, S.Kom., M.T. ....................

  Anggota : Alb. Agung Hadhiatma, S.T., M.T. ....................

PERNYATAAN KEASLIAN KARYA

  Dengan ini saya sebagai penulis menyatakan dengan sesungguhnya bahwa judul, isi dan gagasan yang tertuang dalam skripsi ini belum pernah dipakai untuk mendapatkan gelar kesarjanaan di tempat lain baik di Indonesia maupun di luar negeri. Pemikiran, metode atau hasil penelitian orang lain yang diambil disebutkan dengan jelas sebagai acuan. Hasil – hasil penelitian, jurnal, makalah, buku, termasuk informasi di internet yang dipakai sebagai acuan dan bahan literatur ditulis dalam daftar pustaka.

  Yogyakarta, Desember 2007 Penulis Henricus Eko Prabowo

HALAMAN PERSEMBAHAN

HALAMAN MOTTO

  ! " # !

  

LEMBAR PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

  Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma : Nama : Henricus Eko Prabowo Nomor Mahasiswa : 035314004

  Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :

  “X-SYNC ( XML-SYNCRONIZATION ) PADA SISTEM PENJUALAN PERUSAHAAN”

  Studi Kasus di PT. NKI Prembun beserta perangkat yang diperlukan ( bila ada ). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikannya secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataan ini yang saya buat dengan sebenar – benarnya. Dibuat di Yogyakarta Pada tanggal : 15 Februari 2008 Yang menyatakan

  

ABSTRAKSI

  Sebuah perusahaan dagang suatu ketika pasti akan berkembang menjadi perusahaan yang mempunyai cabang di beberapa lokasi. Sebuah sistem informasi yang tadinya hanya ditujukan untuk menangani data pada satu lokasi kantor akan menjadi tidak relevan lagi mengingat semakin besarnya volume transaksi yang terjadi dan lokasi yang terdistribusi. Sistem sinkronisasi ini dibuat untuk menangani siklus penjualan pada suatu perusahaan yang memiliki beberapa kantor cabang. Sistem ini dibangun menggunakan teknologi XML sebagai format pertukaran data yang akan menjadi sarana antara aplikasi Java Client dan Java Server untuk berkomunikasi. Sistem menggunakan MySQL Server sebagai databasenya sedangkan komunikasi dibangun diatas jaringan TCP / IP. Tujuan sistem ini adalah untuk efisiensi proses pertukaran data antar kantor yang terpisah secara geografis agar data pada setiap kantor dapat selalu sinkron.

  Kata kunci: penjualan,java,socket, XML,internet.

  

ABSTRACT

  Someday, The commerce company will develop become the company which has subdivision in some locations. The information system at the begining is only to handle data in one office will become not relevant again considering bigger and bigger the volume of transaction which is happened and location which is distributed. This synchonization system is made to handle the selling cyclus in the company which has some subdivision office. This system is built use the XML technology as the format of exchange data which will be the medium between Java client and java server application to communicate. The system use MySQL server as its database while communication is built base on TCP / IP network. The aim of this system is to efficiency the process of exchange data between separated office in a geography manner so that data in every office can always synchronous.

  Kata kunci: Selling,java,socket, XML,internet.

KATA PENGANTAR

  Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa yang telah melimpahkan berkat-Nya sehingga penulis dapat menyelesaikan Laporan Tugas Akhir ini. Penulisan tugas akhir ini ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Jurusan Teknik Informatika.

  Terselesaikannya penulisan tugas akhir ini tidak lepas dari peran serta beberapa pihak, baik secara langsung maupun secara tidak langsung. Oleh karena itu, penulis ingin menyampaikan terima kasih kepada pihak-pihak yang telah ikut membantu dalam penulisan tugas akhir ini, baik dalam memberikan bimbingan, semangat, kasih sayang, kritikan, maupun saran, antara lain kepada:

  1. Ir. Gregorius Heliarko, S.J., S.S., B.S.T., M.A., M.Sc, Selaku Dekan Fakultas Teknik Universitas Sanata Dharma Yogyakarta.

  2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik Informatika Universitas Sanata Dharma.

  3. Ibu Ridowati Gunawan, S.Kom., M.T., selaku Dosen Pembimbing I, yang telah banyak membantu terutama dalam memberikan bimbingan, dukungan,

  6. Pak Bele yang telah memberikan bantuannya terutama pada saat menjelang dan pada saat pendadaran.

  7. Kedua orang tua dan kedua adik penulis, yang selalu mendoakan, memberikan semangat dan dorongan kepada penulis untuk dapat menyelesaikan penulisan laporan tugas akhir ini.

  8. Patricia Wenny Megarani, yang selalu ada untuk menemani dan memberikan keceriaan terutama saat stress mulai datang.

  9. Teman – teman terdekat dan seperjuangan yang selama kuliah selalu memberi semangat, keceriaan dan kehangatan, Diean, Nug, Ciblek, Breg.

  10. Teman – teman yang membantu dalam proses penyusunan tugas akhir, Abe, Jansen, Arie, Pakdhe.

  11. Teman – teman yang hadir saat penulis ujian pendadaran, Ruth, Diean, Breg, Ipil, acied, Gepenk, Dhea, Nug, Anice, Hana, Hendro yang memberi pinjaman jas.

  12. Teman – teman jurusan Teknik Informatika angkatan 2003 yang telah berjuang bersama, Albert CP (Abe), Jun (Odol), Bergas, Hendrik (Ciblek), Elen, Jeje, Dion, Adwi, Danang, Heni, Angga Thukul, Marchel, Irvan,

  13. Pak Darmadi, yang selalu ramah dan menghibur penulis ketika memasuki area laboratorium.

  14. Dan seluruh pihak yang telah ikut ambil bagian dalam penyelesaian laporan tugas akhir ini.

  Penulis menyadari segala keterbatasan dalam menyelesaikan laporan tugas akhir ini. Oleh karena itu, penulis ingin menyampaikan mohon maaf apabila terdapat kesalahan dan kekurangan. Untuk itu, penulis mengharapkan kritik dan saran yang membangun dari seluruh pihak yang membutuhkan laporan tugas akhir ini.

  Akhir kata, semoga laporan tugas akhir ini dapat memberikan manfaat bagi siapa saja yang membutuhkannya. Atas segala perhatiannya dan kerjasamanya, penulis ucapkan terima kasih.

  Yogyakarta, Desember 2007 Penulis

DAFTAR ISI

  HALAMAN JUDUL i

  DAFTAR GAMBAR xviii

  4

  3 V. Metodologi Penelitian

  2 IV. Tujuan dan Manfaat Penelitian

  2 III. Batasan Masalah

  1 II. Rumusan Masalah

  DAFTAR TABEL xxii

  DAFTAR ISI xiii

  HALAMAN JUDUL ii

  KATA PENGANTAR x

  ABSTRACT ix

  ABSTRAKSI viii

  HALAMAN MOTTO vii

  PERNYATAAN KEASLIAN KARYA v HALAMAN PERSEMBAHAN vi

  HALAMAN PENGESAHAN iv

  HALAMAN PERSETUJUAN iii

BAB 1. PENDAHULUAN I. Latar Belakang Masalah

  2.8. Pengertian Sistem Penjualan

  16

  2.9. Pengembangan Perangkat Lunak Berorientasi Objek

  17

  2.9.1. Konsep Objek

  17

  2.9.1.1. Object Oriented Analysis (OOA)

  17

  2.9.1.2. Object Oriented Design (OOD)

  18

  2.9.2. UML (Unified Modelling Languange)

  20

  2.9.2.1. Use Case

  20

  2.9.2.2. Class Diagram

  22

  2.9.2.3. Sequence Diagram

  22

  2.10. Perancangan Database

  22

  2.11. TCP / IP

  23

  2.12. Pemrograman Berorientasi Objek menggunakan Java

  25

  2.13. Pemrograman Client / Server dengan Java

  37

  2.13.1. Pemrograman Client / Server

  37

  2.13.2. Java Socket

  38

  2.13.3. Socket

  39

  2.13.4. Server Socket

  39

  2.14. MySQL

  40

  2.14.1. DDL

  41

  2.14.2. DML

  41

  2.15. Parser dan DOM

  42 BAB 3. ANALISIS DAN DESAIN

  3.2.2.2. Use Case Diagram Kantor Pusat

  53

  3.2.2. Class Diagram

  54

  3.2.2.1. Class Diagram Kantor Cabang

  54

  3.2.2.2. Class Diagram Kantor Pusat

  55

  3.2.3. Sequence Diagram

  56

  3.2.3.1. Sequence Digram Kantor Cabang

  56

  3.2.3.2. Sequence Diagram Kantor Pusat

  61

  3.2.3.3. Sequence Diagram Penjualan

  70

  3.2.4. Perancangan Database

  72

  3.2.4.1. Desain Fisik Database

  72

  3.2.4.1.1. Kantor Cabang

  72

  3.2.4.1.2. Kantor Pusat

  73

  3.2.4.2. Struktur Tabel Database

  74

  3.2.5. Perancangan Proses Pertukaran Data

  81

  3.2.6. Perancangan Dokumen XML

  83

  3.2.7. Perancangan Input

  87

  3.2.7.1. Kantor Cabang

  87

  3.2.7.2. Kantor Pusat

  93 BAB 4.

IMPLEMENTASI SISTEM

  4.1. Karakteristik Sistem

  99

  4.2. Perangkat Lunak yang Digunakan Dalam Pembuatan 103

  Sistem

  (FrameTambahCustomer.java)

  4.6.6. Form Data Barang (IframeDataBarang.java) 119

  4.6.7. Form Penjualan (IFrameDataPenjualan.java) 123

  4.6.8. Form Laporan (IFramelaporan.java) 125

  4.7. Aplikasi Server 126

  4.7.1. Komunikasi Client Server (SocketConnectionServer.java) 126

  4.7.2. Form Login (LginDulu.java) 130

  4.7.3. Form Menu Utama (MainMenu_Pusat.java) 131

  4.7.4. Form Data Customer (IFrameDataCustomer.java) 133

  4.7.5. Form Tambah Customer (FrameTambahCustomer.java) 133

  4.7.6. Form Data Barang (IFrameDataBarang.java) 134

  4.7.7. Form Tambah Barang (FrameTambahBarang.java) 136

  4.7.8. Form Petugas (FramePetugas.java) 138

  4.7.9. Form Kantor (FrameKantor.java) 140

  4.7.10. Form Penjualan (IFramePenjualan.java) 142

  4.7.11. Form Laporan (LaporanIFrame.java) 143

  4.8. Tampilan Halaman Output 143

  4.8.1. Nota Penjualan 143

  4.8.2. Laporan Penjualan 144

BAB 5. ANALISIS HASIL

  

DAFTAR GAMBAR

  48 Gambar 3. 2. Use Case Diagram Administrasi Cabang

  56 Gambar 3. 10. Sequence Diagram Maintain Customer : View Data

  55 Gambar 3. 9. Sequence Diagram Login Petugas

  54 Gambar 3. 8. Class Diagram Kantor Pusat

  53 Gambar 3. 7. Class Diagram Kantor Cabang

  52 Gambar 3. 6. ER Diagram Kantor Pusat

  51 Gambar 3. 5. ER Diagram Kantor Cabang

  50 Gambar 3. 4. Use Case Diagram Input Penjualan

  49 Gambar 3. 3. Use Case Diagram Adminstrasi Kantor Pusat

  44 Gambar 3. 1. Use Case Diagram

  Gambar 2. 1. Struktur XML

  22 Gambar 2. 9. Struktur Pohon DOM

  21 Gambar 2. 8. Simbol Association

  21 Gambar 2. 7. Simbol Actor

  20 Gambar 2. 6. Simbol Use-Case

  19 Gambar 2. 5. Simbol Control Object

  18 Gambar 2. 4. Simbol Interface Object

  10 Gambar 2. 3. Simbol Entity Object

  8 Gambar 2. 2. Diagram Hirarki XML

  56 Gambar 3. 20. Sequence Diagram Maintain Customer : Insert Data

  62 Gambar 3. 21. Sequence Diagram Maintain Data Petugas : Insert Petugas

  71 Gambar 3. 32. Struktur Fisik Database Cabang

  89 Gambar 3. 39. User Interface Cabang Tambah Customer – Data Pribadi

  88 Gambar 3. 38. User Interface Cabang Data Customer – Lokasi Tempat Tinggal

  88 Gambar 3. 37. User Interface Cabang Data Customer – Data Umum

  87 Gambar 3. 36. User Interface Menu Utama Kantor Cabang

  82 Gambar 3. 35. User Interface Cabang Login Petugas

  73 Gambar 3. 34. Proses Pertukaran Data

  72 Gambar 3. 33. Struktur Fisik Database Pusat

  70 Gambar 3. 31. Sequence Diagram Input Penjualan

  63 Gambar 3. 22. Sequence Diagram Maintain Data Petugas : Edit Petugas

  70 Gambar 3. 30. Sequence Diagram Cek Persediaan Barang

  69 Gambar 3. 29. Sequence Diagram Lihat Data Customer

  68 Gambar 3. 28. Sequence Diagram Cetak Laporan

  67 Gambar 3. 27. Sequence Diagram Maintain Data Barang

  66 Gambar 3. 26. Sequence Diagram Cek Order

  65 Gambar 3. 25. Sequence Diagram Maintain Data Kantor : Edit Kantor

  64 Gambar 3. 24. Sequence Diagram Maintain Data Kantor : Insert Kantor

  63 Gambar 3. 23. Sequence Diagram Maintain Data Petugas : Delete Petugas

  89 Gambar 3. 48. User Interface Data Customer Pusat – Data Umum

  94 Gambar 3. 49. User Interface Data Customer Pusat – Lokasi Tempat Tinggal

  94 Gambar 3. 50. User Interface Tambah Customer Pusat – Data Pribadi

  95 Gambar 3. 51. User Interface Tambah Customer Pusat – Data Tempat Tinggal

  95 Gambar 3. 52. User Interface Data Barang Pusat – Data Umum

  96 Gambar 3. 53. User Interface Data Barang Pusat – Proses Order

  96 Gambar 3. 54. User Interface Tambah Barang – Data Umum

  97 Gambar 3. 55. User Interface Tambah Barang – Info Stok

  97 Gambar 3. 56. User Interface Data Kantor

  98 Gambar 3. 57. User Interface Data Petugas

  98 Gambar 3. 58. User Interface Penjualan Pusat

  99 Gambar 3. 59. User Interface Laporan Pusat

  99 Gambar 3. 60. Output Nota Penjualan 100 Gambar 3. 61. Output Laporan Penjualan 101 Gambar 4. 1. Form Login Aplikasi Cabang 110 Gambar 4. 2. Form Menu Utama Aplikasi Cabang 111 Gambar 4. 3. Form Data Customer Aplikasi Cabang 114 Gambar 4. 4. Form Tabel Search Customer Aplikasi Cabang 115 Gambar 4. 5. Form Tambah Customer Aplikasi Cabang 117 Gambar 4. 6. Form Data Barang Tab Data Umum Aplikasi Cabang 119 Gambar 4. 15. Dialog Tambah Group Aplikasi Server 137 Gambar 4. 16. Dialog Tambah Kategori Aplikasi Server 137 Gambar 4. 17. Dialog Tambah Kelompok Aplikasi Server 137 Gambar 4. 18. Form Data Petugas Aplikasi Server 138 Gambar 4. 19. Dialog Input Petugas Aplikasi Server 140 Gambar 4. 20. Frame Data Lokasi Kantor Aplikasi Server 141 Gambar 4. 21. Dialog Input Data Kantor Aplikasi Server 142 Gambar 4. 22. Print Out Nota Penjualan 144 Gambar 4. 23. Print Out Laporan Penjualan 145

  

DAFTAR TABEL

  74 Tabel 3. 3. Tabel Lokasi_Tempat_Tinggal (Cabang & Pusat)

  78 Tabel 3. 11. Tabel Info_Stok ( Cabang )

  77 Tabel 3. 10. Tabel Kelompok ( Cabang & Pusat )

  77 Tabel 3. 9. Tabel Kategori ( Cabang & Pusat )

  76 Tabel 3. 8. Tabel Group( Cabang & Pusat )

  76 Tabel 3. 7. Tabel Barang( Cabang & Pusat )

  76 Tabel 3. 6. Tabel Detil_Penjualan ( Cabang & Pusat )

  75 Tabel 3. 5. Tabel Jual ( Pusat )

  75 Tabel 3. 4. Tabel Jual ( Cabang )

  74 Tabel 3. 2. Tabel Customer ( Pusat )

  Tabel 2. 1. Operator Aritmatika dalam Java

  45 Tabel 3. 1. Customer ( Cabang )

  30 Tabel 2. 8. Operator Precedence dalam Java

  29 Tabel 2. 7. Operator Assignment dalam Java

  28 Tabel 2. 6. Operator Bitwise dalam Java

  28 Tabel 2. 5. Operator Shift dalam Java

  27 Tabel 2. 4. Operator Kondisional dalam Java

  27 Tabel 2. 3. Operator Relasional dalam Java

  27 Tabel 2. 2. Operator Aritmatika yang lain dalam Java

  78 Tabel 4. 3. Fungsi Menu Transaksi Aplikasi Cabang 112 Tabel 4. 4. Fungsi Menu Help Aplikasi Cabang 112 Tabel 4. 5. Fungsi Menu File Aplikasi Server 132 Tabel 4. 6. Fungsi Menu Master Aplikasi Server 132 Tabel 4. 7. Fungsi Menu Transaksi Aplikasi Server 132 Tabel 4. 8. Fungsi Menu Help Aplikasi Server 132

BAB 1 PENDAHULUAN

1.1 Latar Belakang

  Pada perusahan dagang terlebih perusahaan dengan banyak cabang, keunggulan komputer dibutuhkan untuk meningkatkan kinerja perusahaan.

  Dengan kemudahan dan kecepatan akses informasi, maka manajemen perusahaan dapat menentukan langkah - langkah yang harus diambil secara cepat dan tepat. Dari sisi penjualan, penggunaan teknologi komputer diharapkan dapat meningkatkan kualitas pelayanan dan kuantitas penjualan.

  Pada penulisan tugas akhir ini, diambil studi kasus di PT. NKI Prembun. Perusahaan ini adalah perusahaan yang bergerak di bidang perdagangan dan pendistribusian onderdil kendaraan bermotor dan alat – alat pertanian. Lokasi perusahaan ini adalah di kota Prembun, Jawa Tengah. Perusahaan ini adalah perusahaan yang memiliki beberapa cabang, tetapi sebagai sebuah perusahaan yang cukup besar ternyata pencatatan data penjualannya masih dilakukan secara manual yaitu dengan menggunakan

  Berdasarkan kenyataan tersebut, penulis tertarik untuk mengambil topik “X – Sync ( XML Syncronization ) Pada Sistem Penjualan Perusahaan”.

  1.2 Rumusan Masalah

  Dalam penulisan tugas akhir ini ada dua permasalahan, yaitu :

  1. Bagaimana menganalisis, mendesain, dan mengimplementasikan Sistem Informasi Siklus Penjualan.

  2. Bagaimana cara agar aplikasi pada kantor cabang dan aplikasi pada kantor pusat dapat saling bertukar data dan kemudian menyimpan data tersebut ke database.

  1.3 Batasan Masalah

  Dalam penulisan tugas akhir ini, batasan masalah meliputi hal – hal sebagai berikut :

  1. Perangkat lunak yang digunakan adalah Java sebagai bahasa pemrograman, XML sebagai format pertukaran data dan MySQL

  5. Sistem tidak menangani masalah yang disebabkan oleh fisik jaringan dan oleh pihak ketiga.

1.4 Tujuan dan Manfaat Penelitian

  Tujuan dari penulisan Tugas Akhir “X – Sync ( XML Syncronization ) Sinkronisasi Data Berbasis XML Pada Sistem Penjualan Perusahaan” ini adalah :

  1. Mengimplementasikan sistem penjualan berbasis komputer dengan menggunakan Java dan MySQL pada perusahaan distribusi menggunakan tahap rekayasa perangkat lunak berorientasi obyek.

  2. Mengimplementasikan pertukaran data antar aplikasi client server Java dengan menggunakan format data XML.

  Manfaat dari pembuatan sistem ini adalah : Bagi pengguna sistem, akan dicapai efisiensi dan kemudahan dalam proses pengiriman dan penerimaan data antar kantor karena dilakukan secara on-

  line . Efisiensi dan kecepatan tercapai karena proses sinkronisasi dilakukan

1.5 Metodologi Penelitan

  Metodologi yang akan digunakan dalam penyusunan tugas akhir ini adalah sebagai berikut :

  1. Peninjauan (survey) kebutuhan program.

  Pengumpulan data – data dan informasi dari perusahaan yang bersangkutan mengenai proses penjualan dan siklus pendapatan yang dibutuhkan untuk pembuatan sistem yang baru.

  2. Studi literatur, meliputi : a. Pendalaman konsep.

  Memahami dan mendalami konsep tentang XML dan aplikasinya, juga tentang cara pembuatan dokumen XML dari suatu database di kantor pusat untuk kemudian dipertukarkan dengan database di kantor cabang.

  b. Mempelajari perangkat lunak yang terlibat.

  Mempelajari konsep – konsep bahasa pemrograman Java untuk membangun suatu aplikasi bisnis dengan tampilan GUI (graphical

  User Interface ). Pemahaman tentang pengaksesan database server

  1. Pembuatan Use Case Diagram, Class Diagram, dan Sequence Diagram.

  2. Perancangan database.

  3. Perancangan user interface.

  b. Implementasi

1.6 Sistematika Penulisan

  Sistematika yang dipakai dalam penulisan tugas akhir ini terbagi dalam enam bagian dengan garis besarnya sebagai berikut :

BAB 1 PENDAHULUAN Berisi tentang latar belakang, rumusan masalah, batasan masalah, tujuan penulisan, metodologi penelitian dan sistematika penulisan. BAB 2 LANDASAN TEORI Bab ini berisi landasan teori yang dipakai untuk pembahasan penulisan tugas akhir. BAB 3 ANALISIS DAN PERANCANGAN SISTEM Bab ini merupakan bab yang membahas tentang analisis dan

BAB 5 ANALISIS IMPLEMENTASI Bab ini bersi tentang analisis implementasi dari aplikasi yang dibuat dan berisi tentang kelebihan dan kekurangan program. BAB 6 KESIMPULAN DAN SARAN Bab ini berisi kesimpulan yang menjawab tujuan tugas akhir dan berisi saran yang berguna untuk pengembangan program.

BAB 2 Landasan Teori

  2.1. Sinkronisasi Database

  Sinkronisasi database adalah proses yang melibatkan dua atau lebih database yang dilakukan untuk menjaga agar pertukaran informasi atau data antar database dapat mencapai suatu fungsi sesuai dengan aturan yang telah ditetapkan.

  2.2. Struktur dasar XML

  XML ( eXtensible Markup Languange ) adalah markup languange yang menyediakan format untuk mendeskripsikan data terstruktur atau terurut. Fasilitas yang disediakan XML ini membuat isi ( content ) sebuah data menjadi lebih mudah dimengerti. Seperti halnya HTML, XML jug menggunakan elemen yang ditandai tag pembuka ( diawali dengan ‘<’ dan diakhiri dengan ‘>’ ), tag penutup ( diawali dengan ‘</’ diakhiri ‘>’ ) dan atribut elemen ( parameter yang dinyatakan dalam tag pembuka ). Hanya

2.3. Struktur dasar XML

  Struktur dasar dokumen XML pada gambar 2.1 berikut :

  <?xml version=”1.0” encoding=”iso-8859-1”?> <!-Dokumen Ini menjelaskan tentang isi buku--> <Buku Judul=”Pengenalan XML”

  Penulis=”Moh Junaedi”> <pengantar/>

<Bab No=”1”>Berkenalan Dengan XML</Bab>

<Bab No=”2”>Lebih Dekat Dengan XML</Bab>

<Bab No=”3”>Elemen - Elemen XML</Bab> . . . . </Buku>

Gambar 2.1 Struktur XML

  Sebuah struktur atau dokumen XML terdiri dari bagian yang disebut dengan node. Node – node itu adalah :

  1. Root node adalah node yang melimgkupi keseluruhan dokumen.

  Comment Standard Header

  Attribute root Node Elemen Kosong

  3. Atribute node adalah node yang termasuk nama dan nilai atribut ditulis pada tag awal sebuah elemen atau pada tag tunggal.

  4. Text node adalah text yang merupakan isi dari sebuah elemen, ditulis diantara tag pembuka dan tag penutup.

  5. Comment node adalah baris yang tidak dieksekusi oleh parser.

2.4. Sintaks XML

  Dibandingkan dengan HTML, XML lebih banyak aturan. Kalau

  user menulis sebuah dokumen HTML, beberapa kesalahan penulisan masih

  ditolerir. Ketika menulis suatu dokumen XML, sintaks – sintaks yang ada tidak boleh dilanggar, sintaks – sintaks tersebut antara lain :

  Heading standard

  1. untuk Document XML Setiap membuat dokumen XML diawali dengan heading standard

  XML. Formatnya adalah sebagai berikut :

  <?xml version=”1.0” encoding=”iso-8859-1”?>

  Penjelasan : xml version=”1.0” berarti bahwa file xml ini dibuat sesuai dengan aturan versi 1.0 dan encoding menunjukkan bahwa file XML

  <root> <child> <subchild></subchild> </child>

  </root>

  Bentuk Mengenai diagram hirarki XML tampak pada Gambar 2.2

  Root Element

Child element 1 Child element 2 Child element 3 Child element 4

Subchild Subchild element element

Gambar 2.2 Diagram Hirarki XML

  

( Moh Junaedi, Pengantar XML,Ilmu Komputer.com, hlm 8 )

Tag 3. pada XML harus lengkap berpasangan.

  Pada HTML beberapa elemen tidak harus berpasangan. Contoh berikut merupakan kesalahan yang masih dapat ditoleransi oleh HTML.

  <p> paragraph pertama

  Tag tunggal hanya diperbolehkan untuk elemen kosong. Contoh

  penulisan elemen kosong adalah sebagai berikut :

  <anggota nama=”Henry”/> 4.

  XML membedakan antara huruf besar dan huruf kecil. Pada XML, <tanggal> berbeda dengan <Tanggal>. Tag pembuka dan

  tag penutup harus sama susunan huruf besar dan kecilnya. Format

  penulisannya adalah sebagai berikut :

  <contoh>Penulisan yang salah</Comtoh> <contoh>Penulisan betul</contoh>

  5. Penyarangan tag harus benar.

  Penulisan tag pada XML harus mengikuti aturan Last In First Out

  (LIFO) . Pada XML user tidak diperbolehkan membuat tag yang saling

  bersilangan seperti format berikut :

  <p><b>Huruf tebal</p><b>

  Tetapi harus disusun seperti format berikut :

  < p><b>Huruf tebal</b></p>

  Bila tetap dipaksakan juga, browser akan menampilkan pesan error.

  Dalam contoh kalimat “Kami pergi bersama” meskipun digunakan spasi beberapa kali, tetap akan dianggap sebagai satu spasi. Sedangkan pada XML akan ditampilkan sama persis dengan kalimat asalnya.

  7. Nilai atribut harus diletakkan diantara tanda petik.

  Seperti HTML, XML memiliki atribut. Nilai atribut harus diletakkan diantara dua tanda petik. Tanda petik yang digunakan bisa tanda petik tunggal ataupun tanda petik ganda. Contoh format penulisannya sebagai berikut :

  <pesan dari=”Henry”> atau <pesan dari=’Henry’>

  8. Penamaan tag dan atribut.

  Nama tag bisa terdiri dari huruf, angka dan underscore(“_”). Karakter awal nama tag harus berupa huruf atau underscore(“_”), tidak diawali dengan kata xml atau XML, (misalnya:<xmlstring>) dan tidak mengandung spasi. Aturan penamaan atribut sama dengan aturan penamaan tag.

  9. Menyisipkan komentar

  2.5. Jenis Dokumen XML

  Ada dua jenis dokumen XML, yaitu dokumen XML yang well

  formed dan dokumen XML yang valid. Dokumen XML yang well formed adalah dokumen yang memenuhi standar dan aturan sintaks pada XML.

  Dokumen XML yang valid adalah yang memenuhi aturan DTD. DTD adalah suatu aturan yang mendefinisikan bagaimana seharusnya struktur isi suatu dokumen XML. Sesuai namanya DTD berfungsi untuk mendefinisikan tipe dokumen XML. Pada saat mempelajari salah satu bahas pemrograman atau scripting, user diperkenalkan dengan deklarasi variabel, deklarasi fungsi dan deklarasi tipe data. Serupa dengan itu, DTD mendefinisikan struktur dokumen XML dengan daftar elemen yang digunakan.

  Di dalam tulisan ini yang akan digunakan adalah dokumen XML yang well formed.

  2.6. Keuntungan dan Keunggulan XML

  Berikut adalah keuntungan dan keunggulan XML : dokumen XML merupakan data yang menerangkan data itu sendiri.

  Tag – tag pada XML menjelaskan mengenai isi datanya. Berbeda

  dengan HTML yang mencampurkan antara data dan presentasi data tersebut. Misalnya ada tag di HTML yang menjelaskan bagaimana

  browser menampilkan data untuk ditulis miring.

  Contoh :

  <i>dono</i> Namun tag di XML menjelaskan data itu sendiri. <nama>dono</nama>

  Di contoh HTML, tidak diketahui apakah dono adalah suatu kota, julukan atau nama seseorang. Namun di XML, sangat jelas bahwa dono merupakan nama.

  3. Penyederhanaan Aplikasi Saat ini, banyak aplikasi memiliki ukuran besar dan menghabiskan sumber daya memori. Biasanya aplikasi pengolah kata maupun gambar harus mengakomodasikan berbagai format file. XML, yang terbuka, akan memudahkan aplikasi untuk mengolah data. Karakteristik dari suatu sistem adalah ( Jogiyanto.H M, 1995 ) :

1. Komponen sistem

  Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi yang artinya saling bekerjasama membentuk satu kesatuan.

  2. Batas sistem

  Merupakan daerah yang membatasi antara suatu sistem dengan sistem yang lainnya atau lingkungan luarnya.

  3. Lingkungan luar sistem

  Lingkungan luar dapat bersifat menguntungkan dan dapat juga bersifat merugikan dimana keduanya dapat mempengruhi operasi sistem.

  4. Penghubung sistem

  Merupakan media penghubung antara satu subsistem dengan subsistem yang lainnya sehingga dapat berintegrasi membentuk satu kesatuan.

  Melaui penghubung ini memungkinkan sumber – sumber daya mengalir dari satu subsistem ke subsistem yang lain. Keluaran dari suatu subsistem akan menjadi masukan untuk subsistem yang lain melalui penghubung.

  5. Masukan sistem

  7. Pengolah sistem Merupakan pengolah inputan sehingga menjadi keluaran yang berguna.

  8. Sasaran sistem

  Suatu sistem mempunyai tujuan atau sasaran dimana sasaran dari sistem ini sangat menentukan sekali masukan yang dibutuhkan sistem dan keluaran yang akan dihasilkan sistem.

  Informasi adalah data yang telah disaring dan diorganisasikan oleh suatu proses dan untuk maksud tertentu menjadi sebuah bentuk yang berarti bagi penerimanya dan bermanfaat dalam pengambilan keputusan pada saat ini ataupun pada saat yang akan datang. Data adalah fakta mentah mengenai orang, kejadian, dan hal-hal penting dalam organisasi. Tiap fakta dengan sendirinya secara relatih tidak ada artinya ( Whitten, 2004).

  Sistem Informasi adalah suatu sistem di dalam organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat managerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan (Robert Leitch dan Roscoe Davis, 1983). mengurangi persediaan barang. Proses yang membentuk sistem penjualan adalah :

  2.8.1. Prosedur order penjualan

  2.8.2. Prosedur pencatatan penjualan 2.8.3. prosedur stok barang

  Informasi yang umumnya diperlukan oleh manager dari kegiatan transaksi penjualan adalah :

  1. Jumlah pendapatan penjualan menurut jenis produk atau kelompok produk selama jangka waktu tertentu.

  2. Jumlah harga produk yang dijual selama jangka waktu tertentu.

2.9. Pengembangan Perangkat Lunak Berorientasi Objek

2.9.1. Konsep Objek

  Pendekatan berorientasi obyek pada pengembangan sistem didasarkan pada konsep tentang obyek yang telah ada pada sebuah lingkungan sistem.

  Obyek sendiri dapat diartikan sesuatu yang dapat dilihat, disentuh gambar-gambar yang mengintruksikan obyek-obyek sistem dari berbagai macam perspektif, seperti struktur, behavior, dan interaksi obyek.

2.9.1.2.Object Oriented Design (OOD)

  Pendekatan yang digunakan untuk menentukan solusi perangkat lunak dalam hal menggabungkan obyek, attribute, dan metodenya.

  Pada Object Oriented Design (OOD) ini dibagi menjadi tiga obyek yaitu:

1. Entity Object

  Adalah sebuah obyek yang berisikan informasi yang berhubungan dengan bisnis yang bersifat menetap dan disimpan pada sebuah

  database

  . Entity object memuat informasi tentang tentang obyek tersebut yang disebut attribute. Entity object bersifat menetap/persisten yang dapat diartikan bahwa obyek tersebut “aktif/hidup” setelah mengeksekusi sebuah progam dan disimpan

  2. Interface Object

  Adalah sebuah obyek yang menyediakan media di mana pengguna dapat berkomunikasi dengan sistem. Pengguna dapat berkomunikasi menggunakan antarmuka/interface. Tugas dari Interface Entity adalah:

  1. Menterjemah inputan dari pengguna ke dalam informasi sehingga dapat dipahami oleh sistem dan digunakan untuk memproses peristiwa bisnis.

  2. Mengambil data yang berkaitan dengan peristiwa bisnis dan menterjemahkan data tersebut kepada pengguna.

  Simbol Interface Object:

  : I nte rface Object

Gambar 2.4 Simbol Interface Object

  3. Control Object

  : Control Obj ect Gambar 2.5

  Simbol Control Object 2.9.2.

  UML (Unified Modelling Language) UML merupakan konfensi/perjanjian tentang sekumpulan modeling digunakan untuk menspesifikan dan menjelaskan sustem software dan hardware dalam bentuk objek (Whitten, 2004). UML tidak menemukan sebuah metode untuk mengembangkan sistem tetapi hanya berupa notasi.

  UML mendefinisikan diagram-diagram berikut:

  1. Use-Case

  Use-Case adalah permodelan yang mengidentifikasikan dan

  menggambarkan fungsi-fungsi sistem dengan menggunakan alat (Whitten,

  Komponen-komponen use-case diagram adalah:

  1. Use-Case menggambarkan langkah-langkah yang secara tindakan saling terkait (skenario), baik terotomatisasi maupun secara manual, untuk tujuan melengkapi satu tugas bisnis tunggal(Whitten, 2004).

  

UseCase

Gambar 2.6

  Simbol Use-Case

  2. Actor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi (Whitten,2004).

  

Actor

Gambar 2.7 Simbol Actor

  3. Association (Gabungan) adalah hubungan antara pelaku/actor

  UseCase Actor

Gambar 2.8 Simbol Association

  2. Class Diagram Merupakan gambar grafis mengenai struktur objek statis dari suatu sistem, menunjukan kelas-kelas objek yang menyusun sebuah sistem dan juga hubungan antar kelas objek tersebut (Whitten, 2004).

  3. Sequence Diagram Menjelaskan interaksi objek yang disusun dalam suatu urutan waktu.

  Diagram ini secara khusus berasosiasi dengan use case.

  Sequence Diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu didalam use case (Whitten, 2004).

  Ketika menentukan entity dan relasinya dibutuhkan analisis data tentang informasi yang ada dalam spesifikasi mendatang (Harianto, 1994).

  Pada perancangan model konseptual penekanan tinjauan dilakukan pada struktur data dan relasi antar file. Pendekatan yang dilakukan pada perancangan model konseptual adalah menggunakan model data relational. Terdapat dua buah teknik yaitu :

  Teknik Normalisasi - Teknik Entity Relationship -

  Di laporan ini hanya akan dibahas teknik entity relationship karena teknik entity relationship merupakan teknik yang sederhana karena relasi tidak perlu diuji secara terus menerus. Pada teknik ini hubungan antara file direlasikan dengan kunci relasi ( relation key), yang merupakan kunci utama dari masing-masing file.

2.11. TCP / IP

  TCP / IP bekerja pada 2 layer network yang berbeda, TCP (Transfer control Protokol) bekerja pada layer 4 (Transport layer) dan IP sampai ke tujuan sangat dimungkinkan bahwa data yang sampai tidak urut. Tipe koneksi seperti ini disebut dengan connectionless. Komputer Pengirim tidak akan mengetahui apakah data sampai di tujuan atau tidak.

  Untuk membantu mencapai komputer tujuan, setiap komputer dalam jaringan TCP/IP harus diberikan IP address. IP address harus unik untuk setiap komputer, tetapi tidak menjadi halangan bila sebuah komputer mempunyai beberapa IP address. IP address terdiri atas 8 byte data yang mempunyai nilai dari 0-255 yang sering ditulis dalam bentuk [xx.xx.xx.xx] (xx mempunyai nilai dari 0-255).

  Berbeda dengan InterNet Protokol (IP), TCP mempunyai prinsip kerja seperti "virtual circuit" pada jaringan telepon. TCP lebih mementingkan tata-cara dan keandalan dalam pengiriman data antara dua komputer dalam jaringan. Dalam hal ini, TCP mengatur bagaimana cara membuka hubungan komunikasi, jenis aplikasi apa yang akan dilakukan dalam komunikasi tersebut (misalnya mengirim e-mail, transfer file dsb.) Di samping itu, juga mendeteksi dan mengoreksi jika ada kesalahan data. TCP mengatur seluruh proses koneksi antara satu komputer dengan komputer yang lain dalam sebuah jaringan

2.12. Pemrograman Berorientasi Object Menggunakan Java

  Java merupakan pemrograman berorientasi objek (OOP), dengan kata lain rancangan java merupakan suatu teknik yang memusatkan rancangan pada data (objek) dan interface.

  1. Objek Objek merupakan perangkat lunak yang berisikan variabel serta kumpulan dari metode-metode.

  2. Message Objek melakukan interaksi serta komunikasi menggunakan message atau pesan.

  3. Class Class merupakan bentuk dasar yang mendefiniskan variabel serta meode- metode dari semua objek. TM

  Sintaks-sintaks Dasar Bahasa Pemrograman Java adalah :

  1. Variabel dalam Java

  a) Tipe Variabel Variabel merupakan container yang digunakan untuk menyimpan

  4. int 5. long 6. char 7. float 8. double Sedangkan tipe variabel reference, meliputi tipe class, tipe array, dan tipe interface. Ada pula tipe variabel data yang khusus yang disebut dengan null types, namun variabel dalam Java tidak akan pernah memiliki tipe null ini.

  b) Konstanta Variabel dalam Java bisa dijadikan konstanta, sehingga nilainya tidak akan dapat diubah-ubah dengan mendeklarasikan variabel tersebut sebagai variabel final. Berikut cara pendeklarasian variabel yang dijadikan konstanta:

  final <tipe data> <nama variabel> = <nilai>

  2. Operator dalam Java

  / op1 / op2 Membagi op1 dengan op2 % op1 % op2 Menghasilkan sisa hasil bagi antara op1 dengan op2

Tabel 2.1 Operator Aritmatika dalam Java

  Selain operator di atas, operator berikut juga termasuk dalam operator aritmatika:

  Operator Penggunaan Deskripsi

  • op++ nilai op dinaikkan 1 setelah dilakukan operasi pada op
  • op nilai op dinaikkan 1 sebelum ++

    dilakukan operasi pada op

    • op-- nilai op diturunkan 1 setelah

      dilakukan operasi pada op

    • op nilai op diturunkan 1 sebelum --

      dilakukan operasi pada op

      • op mengubah nilai - op menjadi negatifnya, jika op positif maka menjadi negatif, jika op negatif maka menjadi positif

Tabel 2.2 Operator Aritmatika yang lain dalam Java

  b) Operator Relasional Operator relasional dalam Java dapat digunakan untuk sama dengan dari nilai op2 != op1 != op2 Menghasilkan true jika nilai op1 tidak sama dengan nilai op2

Tabel 2.3 Operator Relasional dalam Java

  c) Operator Kondisional Operator kondisional dalam Java terdiri dari 6 jenis sebagaimana digambarkan dalam tabel berikut:

  Operator Penggunaan Deskripsi && op1 && op2 menghasilkan true jika op1 dan op2, keduanya bernilai true || op1 || op2 menghasilkan true jika op1 atau op2, salah satunya bernilai true ! !op1 menghasilkan true jika op1 bernilai false

  & op1 & op2 bitwise AND, menghasilkan true jika op1 dan op2, keduanya bernilai true | op1 | op2 bitwise OR, menghasilkan true jika op1 atau op2, salah satunya bernilai true

  ^ op1 ^ op2 menghasilkan true jika salah satu di antara op1 atau op2 bernilai true,

namun tidak keduanya

  Tabel 2.4

Operator Kondisional dalam Java op2 Tabel 2.5

  

Operator Shift dalam Java

  e) Operator Bitwise Operator bitwise dalam Java juga digunakan untuk manipulasi bit.

  Ada 4 operator bitwise dalam Java, yaitu:

  Operator Penggunaan Deskripsi & op1 & op2 bitwise AND | op1 | op2 bitwise OR ^ op1 ^ op2 bitwise XOR

  ~ ~op1 bitwose complement Tabel 2.6

  

Operator Bitwise dalam Java

  f) Operator Assignment Operator assignment dalam Java digunakan untuk memberikan sebuah nilai ke sebuah variabel. Operator assignment hanya ‘=’, namun selain itu dalam Java dikenal beberapa shortcut assignment operator yang penting, yang digambarkan dalam tabel berikut:

  Operator Penggunaan Deskripsi g) Urutan Precedence Operator Adapun urutan operator precedence dalam Java, secara lengkap digambarkan dalam tabel berikut: