analisis dan perancangan web sevice dan hibernate ( aplikasi … · 2013-07-13 · web sevice dan...

12
iv UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2005/2006 ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) RAYMON RAINTJUNG 0600644141 ANTHONY LESMANA 0600649092 FABIO TESTY 0600668085 Abstrak Tujuan dari penulisan ini adalah untuk membuat aplikasi data provider saham yang dapat menyajikan data ke aplikasi client dengan platform, hardware, dan bahasa pemrograman yang berbeda-beda. Metodologi yang digunakan untuk mengembangkan aplikasi ini adalah dengan menggunakan metode Analisis dan Perancangan yang meliputi analisa ORM dan Web Service, serta perancangan aplikasi server sebagai penyedia data saham. Adapun hasil yang dicapai dalam sistem penelitian ini adalah sebuah aplikasi data provider saham yang dapat menyediakan data-data saham kepada berbagai aplikasi client pada platform, hardware, dan bahasa pemrograman yang berbeda-beda. Dengan penerapan aplikasi data provider saham yang menggunakan web service dan ORM, diharapkan para developer dapat membuat aplikasi enterprise dengan berbasikan RAD (Rapid Application Development) dan mudah untuk di-maintenance. Kata Kunci : Analisis, Perancangan, Web Service, Hibernate.

Upload: trinhtuyen

Post on 27-Apr-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

iv

UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika

Skripsi Sarjana Komputer

Semester Ganjil tahun 2005/2006

ANALISIS DAN PERANCANGAN

WEB SEVICE DAN HIBERNATE

( APLIKASI DALAM DATA PROVIDER SAHAM )

RAYMON RAINTJUNG 0600644141

ANTHONY LESMANA 0600649092

FABIO TESTY 0600668085

Abstrak

Tujuan dari penulisan ini adalah untuk membuat aplikasi data provider saham

yang dapat menyajikan data ke aplikasi client dengan platform, hardware, dan bahasa

pemrograman yang berbeda-beda. Metodologi yang digunakan untuk mengembangkan

aplikasi ini adalah dengan menggunakan metode Analisis dan Perancangan yang

meliputi analisa ORM dan Web Service, serta perancangan aplikasi server sebagai

penyedia data saham. Adapun hasil yang dicapai dalam sistem penelitian ini adalah

sebuah aplikasi data provider saham yang dapat menyediakan data-data saham kepada

berbagai aplikasi client pada platform, hardware, dan bahasa pemrograman yang

berbeda-beda. Dengan penerapan aplikasi data provider saham yang menggunakan web

service dan ORM, diharapkan para developer dapat membuat aplikasi enterprise dengan

berbasikan RAD (Rapid Application Development) dan mudah untuk di-maintenance.

Kata Kunci :

Analisis, Perancangan, Web Service, Hibernate.

Page 2: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

v

PRAKATA

Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena atas rahmat

dan karunia-Nya lah, kami dapat menyelesaikan penyusunan skripsi ini dalam rangka

memenuhi persyaratan penyelesaian Jenjang Strata-1 di Universitas Bina Nusantara,

Jakarta.

Tidak lupa kami sampaikan terima kasih kepada orang tua kami atas segala

dukungan, nasehat, petunjuk, doa, saran dan bimbingan serta kesempatan yang telah

diberikan selama penulisan skripsi ini. Rasa terima kasih juga kami tujukan kepada :

1. Orang tua kami yang telah mendukung kami secara tidak langsung dalam

pembuatan skripsi ini.

2. Rektor Universitas Bina Nusantara, Prof. Dr. Drs. Gerardus Polla, M. App.Sc.

3. Dekan Fakultas Ilmu Komputer Universitas Bina Nusantara, Ir.Sablin

Yusuf,M.Sc,M.Comp.Sc

4. Ketua Jurusan Teknik Informatika, H. Muhammad Subekti, BE, M. Sc.

5. Sekretaris Jurusan Teknik Informatika, Fredy Purnomo, S.Kom., M.Kom.

6. Bapak Wiedjaja, S.Kom, selaku dosen pembimbing yang telah banyak

meluangkan waktu untuk memberikan pengarahan, nasehat, saran, kritik, dan

perhatian yang besar serta masukan yang sangat berharga dalam penyusunan

skripsi ini.

7. Dosen-dosen Universitas Bina Nusantara, yang telah membimbing selama

perkuliahan sehingga banyak memberikan masukan kepada kami untuk

menyelesaikan skripsi ini.

Page 3: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

vi

8. Teman-teman dan semua pihak yang tidak dapat disebutkan satu persatu yang

telah membantu dengan memberikan saran, nasehat, dorongan, semangat, dan

kritik yang membangun serta bantuan lain baik langsung maupun tidak langsung.

Dalam skripsi ini, kami menyadari masih adanya kekurangan. Oleh karena itu

kami masih membuka kritik dan saran yang membangun demi kesempurnaan skripsi ini.

Akhirnya dengan segala kerendahan hati, kami berharap semoga skripsi ini dapat

berguna dan bermanfaat bagi pihak-pihak yang memerlukannya.

Jakarta, Januari 2006

Penulis

Page 4: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

vii

DAFTAR ISI

Halaman Judul Luar ....................................................................................................... i

Halaman Judul Dalam .................................................................................................... ii

Halaman Persetujuan Hardcover .................................................................................... iii

Abstrak ........................................................................................................................... iv

Prakata ............................................................................................................................ v

Daftar Isi ........................................................................................................................ vii

Daftar Tabel ................................................................................................................... xii

Daftar Gambar ................................................................................................................xiv

BAB 1 PENDAHULUAN

1.1 Latar Belakang .......................................................................................... 1

1.2 Ruang Lingkup .......................................................................................... 2

1.3 Tujuan dan Manfaat .................................................................................. 3

1.4 Metodologi ................................................................................................ 3

1.5 Sistematika Penulisan ............................................................................... 4

BAB 2 LANDASAN TEORI

2.1 Saham ........................................................................................................ 6

2.2 J2EE ........................................................................................................... 7

2.3 System Architecture .................................................................................. 8

2.3.1 Arsitektur 2-Tier ............................................................................... 9

2.3.2 Arsitektur 3-Tier .............................................................................. 10

2.3.3 Arsitektur n-Tier ............................................................................... 11

Page 5: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

viii

2.3.4 Arsitektur Enteprise .......................................................................... 13

2.4 Penerapan MVC ........................................................................................ 15

2.4.1 Model …………..……..................................................................... 15

2.4.1.1 The Paradigm Mismatch…………..…… ............................... 16

2.4.1.2 Alternatif-alternatif pada Persistence Layer…………..…….. 26

2.4.1.3 Object Relational Mapping (ORM)…………..…… .............. 29

2.4.1.3.1 Apa itu ORM?…………..…….......................................... 30

2.4.1.3.2 Permasalahan-permasalahan Umum ORM…………..…..32

2.4.1.3.3 Mengapa ORM?…………..……....................................... 34

2.4.1.3.4 Hibernate…………..…….................................................. 36

2.4.2 View……..……..…… ...................................................................... 37

2.4.3 Controller…………..…… ................................................................ 38

2.5 HTTP (Hyper Text Transfer Protocol)…………..……............................ 38

2.6 Common Gateway Interface(CGI)…………..…….................................. 40

2.7 Java Servlets…………..…….................................................................... 40

2.8 Java Server Pages(JSP) ............................................................................. 41

2.9 JSP Tags…………..…….......................................................................... 42

2.10 Java Beans…………..……..................................................................... 42

2.11 Java Server Faces…………..…… .......................................................... 44

2.12 Web Service…………..…… .................................................................. 49

2.12.1 Karakteristik Web Service…………..…… ................................... 51

2.12.2. Teknologi-teknologi Utama Pada Web Service…………..……... 53

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Spesifikasi Rumusan Rancangan ............................................................... 56

Page 6: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

ix

3.2 Analisis Masalah .......... ............................................................................. 57

3.2.1 Penggunaan SQL dalam Java ........................................................... 57

3.2.2 Pengembangan Aplikasi Interface dan MVC dalam Web ............... 58

3.2.3 Penyajian Data dan Integritas Aplikasi ............................................ 59

3.2.3 Analisis Data Provider Saham ......................................................... 59

3.3 Usulan Pemecahan Masalah...................................................................... 60

3.3.1 Object Relational Mapping(ORM) .................................................. 60

3.3.2 Java Server Faces ............................................................................. 61

3.3.3 Web Service...... ............................................................................... 66

3.4 Perancangan Aplikasi Server .................................................................... 67

3.4.1 Gambaran Umum.............................................................................. 67

3.4.2 UseCase dari Sistem Aplikasi Saham ............................................... 68

3.4.3 Class Diagram dari Sistem Aplikasi Saham...................................... 72

3.4.4 Sequence Diagram ............................................................................ 82

3.4.4.1 Sequence Register .................................................................... 82

3.4.4.2 Sequence Update Account ....................................................... 83

3.4.4.3 Sequence Download Data ........................................................ 84

3.4.4.4 Sequence Penyajian Data ......................................................... 85

3.5 Spesifikasi Modul Aplikasi Server ........................................................... 86

3.5.1 Spesifikasi Modul Download Data .................................................. 86

3.5.2 Spesifikasi Modul Registrasi ............................................................ 87

3.5.3 Spesifikasi Modul Update Account .................................................. 87

3.5.4 Spesifikasi Modul Penyajian Data ................................................... 88

3.6 Perancangan Layar ................................................................................ 89

Page 7: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

x

3.7 Perancangan Basis Data ............................................................................ 90

3.7.1 Tabel Master User …………..…….................................................. 90

3.7.2 Tabel Master Stock …………..…… ................................................ 91

3.8 Perancangan ORM............... ................................................................... ...92

3.8.1 Tipe Data Hibernate .......................................................................... 98

3.8.2. Generator Class pada Hibernate....................................................... 99

3.9. Perancangan Web Service.......................................................................100

BAB 4 IMPLEMENTASI DAN EVALUASI

4.1 Implementasi Sistem..... .......................................................................... .102

4.1.1 Kebutuhan Perangkat Keras........................................................... .102

4.1.2 Kebutuhan Perangkat Lunak..... ..................................................... .103

4.2 Cara Pneggunaan Aplikasi Data Provider Saham.....................................104

4.2.1 Proses Registrasi...... ...................................................................... .104

4.2.1.1 Halaman Login...................................................................... .105

4.2.1.2 Halaman Register...... ............................................................ .105

4.2.1.3 Halaman Utama..................................................................... 106

4.2.2 Proses Pembuatan Web Service.................................................... . 108

4.2.3 Proses Gambaran Web Service.......................................................111

4.2.3.1 Fungsi-fungsi yang disediakan dalam Web Service.............. 111

4.2.3.2 Return Value dan Parameter dari fungsi yang

disediakan oleh Web Service..................................................112

4.2.3.3 Definisi Tipe Data Baru pada Web Service............................113

4.2.3.4 Lokasi pengaksesan Web Service...........................................115

4.2.3.5 Metode pengaksesan Web Service..........................................115

Page 8: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

xi

4.2.4 Proses Pengaksesan Data melalui Web Service...............................116

4.3 Evaluasi.....................................................................................................120

BAB 5 KESIMPULAN DAN SARAN

5.1 Simpulan ................................................................................................ 125

5.2 Saran ....................................................................................................... 126

DAFTAR PUSTAKA………………………………………………………………...127

RIWAYAT HIDUP…………………………………………………………………..128

Page 9: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

xii

DAFTAR TABEL

Tabel 2.11.1. JSF Core Tags 46

Tabel 2.11.2 JSF HTML Tags 46

Tabel 2.11.3 Basic HTML Tag Attributes 47

Tabel 2.11.4 HTML Pass-Through Attributes 48

Tabel 2.11.5 DHTML Event Attributes 49

Tabel 3.4.2.2 Use Case Description dari Use Case Download Data 68

Tabel 3.4.2.3 Use Case Description dari Use Case Registrasi 68

Tabel 3.4.2.4 Use Case Description dari Use Case Update Account 69

Tabel 3.4.2.5 Use Case Descrption dari Use Case Penyajian Data 70

Tabel 3.7.1.1 Master user 90

Tabel 3.7.1.2 Contoh Tabel User 90

Tabel 3.7.2.1 Tabel User Stock 91

Tabel 3.7.2.2 Contoh Tabel Stock 91

Tabel 3.8.1.1 Tabel Java Primitive Mapping Types 97

Tabel 3.8.1.2 Tabel Date and Time Mapping Types 97

Tabel 3.8.1.3 Tabel Large Object Mapping Types 98

Tabel 3.8.1.4 Tabel Various JDK Mapping Types 98

Tabel 3.8.2.1 Tabel Generator Class 99

Page 10: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

xiii

Tabel 4.3.1 Uji Kecepatan Data untuk 1 Concurrency User 119

Tabel 4.3.2 Uji Kecepatan Data untuk 5 Concurrency User 119

Tabel 4.3.3 Uji Kecepatan Data untuk 10 Concurrency User 120

Tabel 4.3.4 Uji Kecepatan Data untuk 15 Concurrency User 120

Tabel 4.3.5 Uji Kecepatan Data untuk 20 Concurrency User 121

Tabel 4.3.6 tabel Perbandingan Concurrency User dengan

Rata-rata Waktu Pengaksesan 121

Page 11: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

xiv

DAFTAR GAMBAR

Gambar 2.2.1.1 Arsitektur 2-Tier 8

Gambar 2.2.2.1 Arsitektur 3-Tier 10

Gambar 2.2.3.1 Arsitektur n-Tier 11

Gambar 2.2.4.1 Arsitektur Enterprise 13

Gambar 2.3.1.1.1 UML class diagram sederhana untuk entity user

dan billing details 15

Gambar 2.3.1.1.2 User memiliki class Address 17

Gambar 2.3.1.1.3 Penggunaan inheritance untuk strategi billing yang berbeda 19

Gambar 2.1.1.1 Hubungan SOAP, UDDI, dan WSDL 54

Gambar 3.4.1.1 Gambaran Umum Rancangan Aplikasi Server 66

Gambar 3.4.2.1 Use Case Diagram 67

Gambar 3.4.3.1 Class Diagram Aplikasi Data Provider Saham 71

Gambar 3.4.3.2 Class User 72

Gambar 3.4.3.3 Class Stock 73

Gambar 3.4.3.4 Class StockDownloader 74

Gambar 3.4.3.5 Class YahooStockDownloader 74

Gambar 3.4.3.6 Class DownloadSchedulerJob 76

Gambar 3.4.3.7 Class DownloadScheduler 76

Gambar 3.4.3.8 Class StockCore 77

Gambar 3.4.3.9 Class UserBackingBean 79

Gambar 3.4.3.10 Class HibernateUtil 80

Page 12: ANALISIS DAN PERANCANGAN WEB SEVICE DAN HIBERNATE ( APLIKASI … · 2013-07-13 · WEB SEVICE DAN HIBERNATE ( APLIKASI DALAM DATA PROVIDER SAHAM ) ... diharapkan para developer dapat

xv

Gambar 3.4.4.1.1 Sequence Diagram Register 82

Gambar 3.4.4.2.1 Sequence Diagram Update Account 83

Gambar 3.4.4.3.1 Sequence Diagram Download Data 84

Gambar 3.4.4.4.1 Sequnce Diagram Penyajian Data 85

Gambar 3.6.1 Halaman Login 88

Gambar 3.6.2 halaman Register 88

Gambar 3.6.3 Halaman Utama 89

Gambar 4.2.1.1 Halaman Login 104

Gambar 4.2.1.2 Halaman Register 105

Gambar 4.2.1.3 Halaman Utama 106

Gambar 4.2.4.1 Contoh Tampilan Aplikasi Client 118

Grafik 4.3.7 Grafik Kenaikan Rata-rata Laman Waktu Pengaksesan 122