BAB I PENDAHULUAN - Perpustakaan Fakultas Teknik

74
1 BAB I PENDAHULUAN 1.1 Latar Belakang SMKN 1 Selong adalah sebuah sekolah kejuruan yang menjadi sekolah rujukan yang ada di Kabupaten Lombok Timur. Sekolah rujukan adalah sekolah yang akan menjadi contoh bagaimana sistem belajar mengajar yang baik. Sekolah rujukan ini juga cocok untuk menjadi contoh dalam pemanfaatan teknologi informasi yang baik, terintegrasi, dapat dikembangankan dengan mudah, dan pertukaran data atau informasi antara sistem dapat dilakukan dengan mudah. Sementara itu, pemanfaat teknologi informai pada SMKN 1 Selong belum dilakukan secara maksimal. Pengelolaan data dan informasi yang ada pada SMKN 1 Selong masih dilakukan hanya dengan menggunakan Microsoft Word dan Microsoft Excel yang menyebabkan pegawai dan para guru kesulitan untuk mendapatkan data atau informasi yang dibutuhkan. Hal ini memerlukan sebuah teknologi yang dibutuhkan untuk menunjang proses akademik. Dalam sebuah organisasi pengembangan sebuah sistem tidak dilakukan langsung secara keseluruhan melainkan secara bertahap, hal ini disebabkan oleh kebutuhan organisasi yang terus berubah dari waktu ke waktu. Oleh karena itu dibutuhkan sebuah metode yang dapat digunakan untuk pengembangan sistem yang mendefinisikan kebutuhan-kebutuhan organisasi sejak awa l yang dapat memudahkannya untuk melakukan pengembangan sistem secara berkesinambungan sesuai dengan kebutuhan dan kemampuan organisasi. Selain itu juga dalam suatu organisasi yang dalam hal ini adalah SMKN 1 Selong terdapat banyak data atau informasi yang diigunakan secara bersama, dimana satu data dapat digunakan oleh beberapa bidang dan satu data juga dapat digunakan untuk banyak fungsi. Salah satu contoh data yang yang digunakan dalam beberapa bidang diantaranya adalah data siswa. Data siswa ini dapat dapat digunakan oleh guru untuk membuat daftar nilai dan daftar absensi, data siswa juga diperlukan oleh staff TU untuk merekapitulasi data siswa yang ada disekolah, sedangkan staff perpustakaan menggunakan data siswa sebagai data untuk peminjaman buku. Pada SMKN 1 Selong data siswa hanya bisa didapatkan secara

Transcript of BAB I PENDAHULUAN - Perpustakaan Fakultas Teknik

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

SMKN 1 Selong adalah sebuah sekolah kejuruan yang menjadi sekolah rujukan

yang ada di Kabupaten Lombok Timur. Sekolah rujukan adalah sekolah yang akan

menjadi contoh bagaimana sistem belajar mengajar yang baik. Sekolah rujukan ini

juga cocok untuk menjadi contoh dalam pemanfaatan teknologi informasi yang

baik, terintegrasi, dapat dikembangankan dengan mudah, dan pertukaran data atau

informasi antara sistem dapat dilakukan dengan mudah. Sementara itu, pemanfaat

teknologi informai pada SMKN 1 Selong belum dilakukan secara maksimal.

Pengelolaan data dan informasi yang ada pada SMKN 1 Selong masih dilakukan

hanya dengan menggunakan Microsoft Word dan Microsoft Excel yang

menyebabkan pegawai dan para guru kesulitan untuk mendapatkan data atau

informasi yang dibutuhkan. Hal ini memerlukan sebuah teknologi yang dibutuhkan

untuk menunjang proses akademik.

Dalam sebuah organisasi pengembangan sebuah sistem tidak dilakukan

langsung secara keseluruhan melainkan secara bertahap, hal ini disebabkan oleh

kebutuhan organisasi yang terus berubah dari waktu ke waktu. Oleh karena itu

dibutuhkan sebuah metode yang dapat digunakan untuk pengembangan sistem yang

mendefinisikan kebutuhan-kebutuhan organisasi sejak awa l yang dapat

memudahkannya untuk melakukan pengembangan sistem secara

berkesinambungan sesuai dengan kebutuhan dan kemampuan organisasi.

Selain itu juga dalam suatu organisasi yang dalam hal ini adalah SMKN 1

Selong terdapat banyak data atau informasi yang diigunakan secara bersama,

dimana satu data dapat digunakan oleh beberapa bidang dan satu data juga dapat

digunakan untuk banyak fungsi. Salah satu contoh data yang yang digunakan dalam

beberapa bidang diantaranya adalah data siswa. Data siswa ini dapat dapat

digunakan oleh guru untuk membuat daftar nilai dan daftar absensi, data siswa juga

diperlukan oleh staff TU untuk merekapitulasi data siswa yang ada disekolah,

sedangkan staff perpustakaan menggunakan data siswa sebagai data untuk

peminjaman buku. Pada SMKN 1 Selong data siswa hanya bisa didapatkan secara

2

manual di bagian Tata Usaha bagian kesiswaan, tidak ada sarana yang dapat

digunakan untuk mendapatkan data siswa selain itu. Hal ini dapat memperlambat

kegiatan guru dan pegawai perpustakaan untuk melaskukan pekerjaannya.

SOA (Service Oriented Architecture) merupakan suatu teknologi

pengembangan perangkat lunak dengan pendekatan service. Pada SOA data yang

dibutuhkan didefinikan sejak awal sehingga memudahkan dalam pengembangan

sistem yang berkesinambungan untuk waktu yang akan datang. Fungsi aplikasi

berupa services yang ada pada SOA ini memungkinkan adanya hubungan dan

pertukaran data atau informasi menjadi mudah dan pengembangan sistem secara

terpisah. Hal ini akan memudahkan apabila ada perubahan pada sistem karena SOA

menyediakan kemudahan integrasi beberapa sistem yang berbeda. Selain itu

services yang ada pada SOA bersifat reusable, yang artinya services tersebut dapat

digunakan pada beberapa fitur aplikasi yang berbeda dan dapat digunakan secara

multiplatform.

Oleh karena itu, pada penelitian ini akan dilakukan analisis perencanaan dan

pembangunan SOA pada di SMKN 1 Selong sehingga didapatkan arsitektur dan

services yang dapat digunakan untuk pengembangan sistem secara

berkesinambungan dan memudahkan masing-masing bidang untuk melakukan

pertukaran data dengan mudah. Dimana untuk pengujian services yang dibangun

dengan SOA pada SMKN 1 Selong akan dipilih pengelolaan data siswa sebagai

services yang dapat digunakan secara bersama oleh fitur aplikasi pada bagian tata

usaha dan bagian perpustakaan.

1.2 Rumusan Masalah

Berdasarkan uraian yang telah dipaparkan dalam latar belakang, maka dapat

dirumuskan permasalahan yang akan dibahas dalam penelitian ini adalah sebagai

berikut :

1. Bagaimana melakukan analisis Service Oriented Achitecture pada Sekolah

Menengah Kejuruan Negeri 1 Selong sehingga didapatkan arsitektur untuk

pengembangan sistem infomasi yang berkesinambungan?

3

2. Bagaimana menguji service yang telah dibangun pada modul tata usaha dan

modul perpustakaan di Sekolah Menengah Kejuruan Negeri 1 Selong?

1.3 Tujuan

Adapun tujuan dari penelitian ini adalah sebagai berikut :

1. Melakukan analisis Service Oriented Architecture pada Sekolah Menengah

Kejuruan Negeri 1 Selong sehingga didapatkan arsitektur untuk pengembangan

sistem yang berkesinambungan.

2. Mengimplementasikan service yang didapatkan dari Service Oriented

Architecture untuk diuji coba pada modul tata usaha dan modul perpustakaan di

Sekolah Menengah Kejuruan Negeri 1 Selong.

1.4 Manfaat

Adapun manfaat yang didapatkan dari penelitian ini adalah sebagai berikut :

1. Mempermudah dalam melakukan pengelolaan dan pertukaran informasi atau

data.

2. Mempermudah melakukan pengembangan sistem.

3. Mempermudah untuk menangani perubahan-perubahan pada sistem yang terjadi

secara terus-menerus.

4. Menghasilkan rancangan Service Oriented Architecture yang bisa digunakan

untuk pengembangan sistem yang berkesinambungan.

1.5 Batasan Masalah

1. Penelitian berfokus analisis perancangan Service Oriented Architecture pada

Sekolah Menengah Kejuruan Negeri 1 Selong.

2. Penerapan Service Oriented Architecture dalam penelitian ini dilakukan

menggunakan teknologi Web Service.

3. Tidak membahas keamanan pada arsitektur Service Oriented Architecture.

4. Pengujian dilakukan pada fitur perpustakaan dan fitur pengelolaan data siswa

untuk menguji apakah service sudah berjalan sesuai dengan kebutuhan atau

tidak.

4

1.6 Sistematika Penulisan

Untuk memberikan gambaran isi laporan tugas akhir ini penulis menguraikan

isi susunan berdasarkan garis besar yang terdiri dari lima bab. Dimana setiap bab

nya akan dibagi dalam beberapa bab. Sistematika penulisan ini dibuat tersusun agar

mudah dipahami oleh semua pihak. Adapun susunannya sebagai berikut :

BAB I : PENDAHULUAN

Bab ini menjelaskan tentang latar belakang, rumusan masalah,

tujuan, batasan masalah, manfaat serta sistematika penulisan yang

digunakan untuk menyusun laporan tugas akhir.

BAB II : TINJAUAN PUSTAKA DAN DASAR TEORI

Bab ini berisi tentang teori-teori yang mendasari pembahasan

secara detail yang berkaitan langsung dengan judul yang diangkat.

Teori-teori yang mendukung laporan penelitian ini bersumber dari

buku, jurnal, e-book dan dari situs-situs web resmi yang berkaitan

dari pembahasan dan permasalahan yang diangkat.

BAB III : METODE PENELITIAN

Bab ini berisi tentang pelaksanaan, alat, bahan, jalannya

perencanaan dan hasil yang diharapkan.

BAB IV : HASIL DAN PEMBAHASAN

Bab ini berisi tentang analisis dan pembahasan hasil penelitian

yang telah dilakukan.

BAB V : KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran-saran berdasarkan hasil

pembahasan yang diperoleh.

5

BAB II

TINJAUAN PUSTAKA

2.1 Tinjauan Pustaka

Penelitian sebelumnya yang berkaitan dengan sistem menggunakan SOA telah

banyak dilakukan, diantaranya adalah :

Penelitian pertama dilakukan oleh Fachry Frisandi (2011) dengan judul

Implementasi Service Oriented Architecture (SOA) Pada Pengembangan Sistem

Pembelajaran Mobile. Dalam penelitian ini penerapan Service Oriented

Architecture (SOA) dapat meningkatkan kualitas sistem pembelajaran mobile dari

segi fleksibelitas dan kemampuan pengembangan lintas platform.

Pengimplementasian SOA pada sistem ini juga menghasilkan sistem yang lebih

adaptif terhadap perubahan logic bisnis maupun logic aplikasi pada saat runtime

sehingga tidak mempengaruhi atau menghambat service consumer dalam

melakukan request terhadap suatu service. Penerapan SOA dalam penggunaan

service dalam pengimplementasian aplikasi client berbasis web dan mobile

menunjukkan efektivitas dan fleksibelitas dalam pembuatan aplikasi [1].

Penelitian kedua dilakukan oleh Muldan Kharisma, Araedea, dan Husni

Mubarok (2014) dengan judul “Implementasi Service Oriented Architecture untuk

Pengintegrasian Fungsi Akademik dan Keuangan (Studi Kasus : SMK Bina Lestari

PUI Kota Tasikmalaya). Dalam penelitian ini dibangun sebuah sistem informasi

akademik dan keuangan dengan menggunakan SOA. Kelebihan yang dimiliki oleh

sistem ini adalah jika ada perubahan data, maka hanya akan dilakukakan di bagian

service saja dan tidak menggunakan yang lain. Pada penelitian ini juga digunakan

teknologi web service, maka service-service yang ada pada aplikasi dapat

digunakan oleh aplikasi lain [2].

Penelitian ketiga dilakukan oleh Arif Firmansyah, S.Si., M.T. (2011) dengan

judul Implementasi Service Oriented Architecture (SOA) dalam Sistem Transaksi

Perbankan di Perguruan Tinggi Studi Kasus : Universitas Padjajaran”. Dalam

penelitian ini pemanfaatan Service Oriented Architecture (SOA) dalam sistem

komunikasi data transaksi perbankan di Perguruan Tinggi dapat

6

diimplementasikan sesuai dengan kebutuhan yang tepat sasaran. Dengan

memaksimalkan web service dari sisi server perguruan tinggi, sistem yang

dikembangkan dapat menjadi lebih dinamis berdasarkan kebutuhan dan

perkembangan teknologi. Implemetasi SOA dalam Sistem Transaksi Perbankan

yang dilakukan pertama adalah pada sistem pembelian PIN SMUP (Seleksi Masuk

Universitas Padjajaran) Jenjang Sarjana khusus di satu bank sebagai tahap uji coba.

Akurasi data yang dihasilkan dalam proses rekonsulasi data antara data transaksi

bank dengan sistem menunjukan tingkat keakuratan 99.99% [3].

Penelitian keempat dilakukan oleh F Kapojos, H.F. Wowor, A.M. Rumagit,

dan A.P.R Wowor (2012) dengan judul Implementasi Service Oriented

Architecture dengan Web Service Untuk Aplikasi Informasi Akademik (Studi

Kasus : Fakultas Teknik UNSRAT). Dalam penelitian ini SOA diimplementasikan

menggunakan teknologib Web Service yaitu sebagai aplikasi yang dibuat untuk

dapat diakses oleh aplikasi lain dengan menggunakan XML sebagai format

pengiriman pesan. Tujuan dari penelitian ini adalah membuat suatu interface Web

Service yang menerapkan SOA untuk diintegrasikan dengan aplikasi informasi

akademik Fakultas Teknik UNSRAT. Dalam penelitian ini digunakan metodologi

berdasarkan konsep SOA yaitu top-up, dimana analisis dan perancangan SOA

dilakukan pada tahap awal. Berdasarkan analisis SOA dihasilkan 4 service utama

dan 5 method. Mereka adalah matakuliah service, dosen service, mahasiswa

service, dan nilai service. Service dan method ini kemudian dirancang dan

diimplementasikan menggunakan perancangan SOA dan teknologi web service,

untuk menghasilkan suatu interface aplikasi yang siap diintegrasikan dengan

aplikasi informasi akademik Fakultas Teknik UNSRAT. Setelah keempat

interface web service ini berhasil diintegrasikan dengan aplikasi informasi

akademik diperoleh hasil bahwa sifat-sifat SOA berhasil diimplementasikan dalam

penelitian ini kecuali sifat autonomy dan composability [4].

7

Implementasi SOA pada pengembangan sistem pembelajaran mobile

Kemampuan pengembangan lintas platform

Lebih adaptif terhadap perubahan logic bisnis maupun logic aplikasi.

Dapat meningkatkan kualitas sistem pembelajaran mobile dari segi fleksibelitas.

Implementasi SOA untuk pengintegrasian fungsi akademik dan keuangan (Studi kasus: SMK

Bina Lestari PUI Kota Tasikmalaya)

Lebih mudah jika ada perubahan data, karena perubahan hanya akan dilakukan pada service saja

Service-service yang dibuat dapat digunakan pada aplikasi lagi.

Dibuat sebuah sistem informasi keuangan dan akademik dengan SOA.

Implementasi Service Oriented Architecture dengan Web

Service Untuk Aplikasi Informasi Akademik (Studi Kasus : Fakultas

Teknik UNSRAT)

Digunakan SOA dan web service untuk menghasilkan interface aplikasi yang siap diintegrasikan dengan aplikasi informasi akademik FTUNSRAT

Imlementasi SOA dalam sistem transaksi di Pergurruan Tinggi (Studi kasus : Univ. Padjajaran.)

Komunikasi data transaksi perbankan di Perguruan Tinggi dapat diimplementasikan sesuai dengan kebutuhan.

Akurasi data antara data transaksi perbankan engan sistem menunjukkan keakuratan 99.99%.

Sistem yang dikembangkan menjadi lebih dinamis berdasarkan kebutuhan dan perkembangan teknologi.

Dihasilkan 4 service utama, dan 5 method.

Analisa SOA menggunakan web service untuk penjadwalan Muballigh pada IKMI dan DDI

Pengembangan dengan platform yang berbeda dapat dilakukan dengan memanfaatkan web service

Service-service yang didapatkan dapat dikembangkan lagi menjadi aplikasi baru

Service-service yang didapatkan mempermudah dalam penanganan permintaan dari client.

Rancang Bangun SOA Pada SMKN 1 Selong

Digunakan metodelogi berdasarkan konsep SOA, yaitu top-up.

Rancang Bagun SOA pada Sistem Informasi Geografis Perijinan

Pemerintah Kabupaten Lombok Barat

Dengan service yang tersedia dapat lebih efisien menjalankan fungsional sistem.

SIGP dan dan sistem pelayanan perizinan saling terintefrasi karena memanfaatkan service

Metode pengembangan sistem menggunakan waterfall

Gambar 2.1 Diagram untuk tinjauan pustaka.

8

Penelitian kelima dilakukan oleh Iwan Iskandar dan Nurjannah (2014) dengan

judul Analisa Service Oriented Architecture (SOA) Menggunakan Web Service

Untuk Penjadwalan Muballigh pada IKMI Dan DDI. Dalam penelitian ini

dilakukan analisis SOA yang menghasilkan beberapa service yang penting untuk

mengatur dan melakukan integrasi dari beberapa sistem yang ada. Arsitektur

sistem dihasilkan sebagai proyeksi sistem dalam menjalankan Service-Service

yang telah dibuat dan dapat dikembangkan pada aplikasi yang lain. Pengiriman

informasi pada aplikasi yang berbeda dengan memanfaatkan web Service menjadi

solusi yang baik dari kendala yang dihadapi oleh pengurus IKMI selama ini[5].

Penelitian keenam dilakukan oleh Irwan Hadi (2017) dengan judul Rancang

Bangun SOA pad Sistem Informasi Geografis Perijinan Pemerintah Kabupaten

Lombok Barat. Penelitian dilakukan dengan metode pengembangan sistem yaitu

waterfall. Dalam penelitian ini dilakukan analisis, perancangan, dan implementasi

Sistem Informasi Geografis (SIGP) dengan menggunakan SOA dan dibuktikan

bahwa SIGP dan Sistem Pelayanan Perijinan Terpadu dapat disaling terintegrasi

karena memanfaatkan service yang disediakan. Membuat aplikasi dan sistem

dengan memanfaatkan service yang sudah tersedia dapat lebih efisien karena untuk

menjalankan fungsionalitas sistem hanya menggunakan service [6].

Dari beberapa penelitian diatas dapat disimpulkan bahwa pengimplementasian

Service Oriented Architecture (SOA) dengan menggunakan web service dapat

mempermudah dalam menangani perubahan-perubahan data yang terjadi dan dapat

mempermudah dalam pengembangan sistem. Service-service yang didapatkan dari

hasil analisis dapat digunakan untuk beberapa aplikasi berbeda dan dapat digunakan

secara multiplatform. Oleh karena itu dalam penelitian ini dilakukan rancang

bangun Service Oriented Architecture (SOA) dengan menggunakan web service

untuk mempermudah dalam menangani perubahan-perubanhan data dan

mempermudah dalam pengembangan sistem.

2.2 Profil Sekolah Menengah Kejuruan Negeri 1 Selong

Berikut adalah profil dari SMKN 1 Selong yang terdiri dari sejarah sekolah,

visi dan misi, dan struktur organisasi.

9

2.2.1. Sejarah Sekolah Menengah Kejuruan Negeri 1 Selong

SMK Negeri 1 Selong adalah sekolah kejuruan pertama di Kabupaten

Lombok Timur berdiri tahun 1980 di Kelurahan Rakam, Kecamatan Selong,

Kabupaten Lombok Timur. SMK ini pada awalnya adalah sekolah swasta yang

berada di bawah naungan Yayasan Selaparang Kabupaten Lombok Timur dengan

nama STM Daerah Selong. Namun dalam perkembangannya, pada Tahun 2003

berdasarkan SK Bupati Kabupaten Lombok Timur Nomor 188.45/188/PDK/2003,

sekolah ini dialihkan satusnya menjadi negeri dengan nama SMK Negeri 1 Selong.

SMK Negeri 1 Selong dalam perkembangannya, tetap konsisten

menjalankan kegiatanya sebagai lembaga pendidikan formal bidang kejuruan

dengan melakukan kegiatan proses belajar mengajar untuk mempersiapkan peserta

didik agar menjadi tenaga terampil dalam bidangnya sesuai dengan yang

diharapkan. Tanggung jawab tersebut diaplikasikan dengan berbagai upaya dan

terobosan baru yang diwujudkan dalam berbagai program.

2.2.2. Visi Dan Misi Sekolah Menengah Kejuruan Negeri 1 Selong

Berikut adalah Visi dan Misi dari SMKN 1 Selong :

1. Visi

Menghasilkan tamatan yang bertaqwa kepada Tuhan Yang Maha Esa dan memiliki

kecakapan hidup dengan berbasis pada manajemen mutu.

2. Misi

a. Meningkatkan program pembinaan keimanan dan ketaqwaan kepada Tuhan

Yang Maha Esa

b. Meningkatkan mutu pemelajaran yang berorientasi untuk menghasilkan tamatan

yang siap pakai di dunia kerja, memiliki jiwa wirausaha, Profesional, mampu

mandiri dan produktif serta mampu mengikuti perkembangan IPTEK.

c. Meningkatkan mutu pembinaan siswa yang berorientasi untuk menghasilkan

tamatan yang memiliki kecakapan personil, sosial, berfikir rasional dan

menjiwai nilai-nilai agama dan budaya.

d. Mewujudkan lingkungan sekolah yang kondusif baik fisik dan psikis untuk

keberhasilan pemelajaran dan pembinaan siswa.

e. Meningkatkan mutu manajemen sekolah yang berorientasi pada transparansi,

demokratis, partisipatif dan akuntabilitas serta pembinaan karir.

10

f. Meningkatkan peran serta SMK Negeri 1 Selong yang berorientasi pada

pemberdayaan masyarakat melalui Carier Center.

2.2.3. Struktur Organisasi Sekolah Menengah Kejuruan Negeri 1 Selong

Struktur organisasi pada SMKN 1 Selong dapat di lihat pada Gambar 2.2 :

KOMITE SEKOLAH KEPALA SEKOLAH DEWAN PENDIDIKAN

KTU

UP/BCLSP

WK KURIKULUM WK KESISWAAN WK HUMAS WK SARPRAS

KORBK KORPUS KPSK TB KPSK TM KPSK TO KPSK TKI

WALI KELAS

GURU

Gambar 2.2 Struktur organisasi smkn 1 selong

2.3 Landasan Teori

Dasar teori tentang konsep-konsep yang digunakan dalam perancangan Service

Oriented Architecture (SOA) pada SMKN 1 Selong dan materi yang mendukung

perancangan aplikasi yang akan dijelaskan pada subbab berikut.

2.2.1. Sevice Oriented Architecture (SOA)

Service Oriented Architecture (SOA) adalah bagian utama dari service

computing platform yang membawa konsep, teknologi, dan tantangan baru.

Menurut Thomas Erl ada tiga hal penting yang menjadikan sebuah infrastruktur

dapat disebut sebagai service Oriented Architecture, yaitu logika bisnis yang

dienkapsulasi sebagai service, dan proses komunikasi antar service dengan

menggunakan message. Dalam hal ini, service layer akan menjembatani

hubungan antara business logic dan application logic[7].

Ilustrasi konsep dari Service Oriented Architecture (SOA) dapat dilihat pada

Gambar 2.3 :

11

Gambar 2.3 Konsep service oriented architecture[7]

Service merupakan komponen umum yang digunakan oleh beberapa sistem

aplikasi (reusable). Service dapat berupa modul program, aplikasi, atau

gabungan dari beberapa aplikasi yang berhubungan. Service direalisasikan

dengan menambahkan interface (wrapper) pada satu atau sekelompok sistem

aplikasi. Sistem aplikasi berkomunikasi dengan service interface melalui

API (application programmer interface).

Dengan menyediakan service, keuntungan yang didapat antara lain:

1. Dapat memanfaatkan ulang keahlian.

2. Meningkatkan kecepatan(agility) pengembangan sistem aplikasi.

3. Menurunkan kompleksitas pengembangan sistem aplikasi.

Untuk memahami SOA lebih lanjut, webservice akan dibahas pada bagian

berikutnya.

Gambar 2.4 Service, process, process step, sub-process[7].

12

1. Prinsip Dasar Layanan

Berikut adalah prinsip-prinsip dasar layanan yang dimiliki oleh SOA[7] :

a. Services are reusable

Service dapat memiliki satu atau banyak operations, tiap tiap operations

dapat diakses oleh banyak service requestors

b. Service share formal contract

Kontrak service menyediakan definisi formal dari:

1) Endpoint dari service

2) Operations yang terdapat pada tiap tiap service

3) Setiap input dan output message yang didukung oleh tiap tiap

operations.

4) Aturan dan karakteristik dari service dan operations yang terdapat di

dalamnya

c. Services are loosely coupled

Loose coupling adalah kondisi dimana sebuah service mendapatkan informasi

dari service lainnya dalam kondisi independen dari service tersebut. Kondisi

loose coupling dapat diperoleh dari penggunaan kontrak service yang

memungkinkan services berinteraksi tanpa mendefiniskan parameter-

paramenter yang diperlukan terlebih dahulu.

d. Services abstract underlying logic

Service tidak memperlihatkan bagaimana logic diimplementasi di

dalamnya.

e. Services are composable

Konsep yang mendukung composability adalah konsep orkestrasi, yaitu

proses service-Oriented yang dikontrol oleh sebuah induk proses yang terdiri

dari beberapa anggota services

f. Service are autonomous

Service memiliki hak penuh terhadap semua logic yang dienkapsulasi

g. Serviceare stateles

Service tidak memiliki status tertentu terkait dengan aktifitas yang dilakukan

13

2.2.2. Komponen SOA

Gambar 2.5 Komponen-komponen SOA[7].

Ada 4 komponen utama yang ada di dalam SOA seperti dalam Gambar 2.5,

yaitu [7]:

1. Operation, yaitu lojik yang diperlukan oleh process untuk menyelesaikan

sebuah pekerjaan.

2. Message, yaitu data yang diperlukan untuk menyelesaikan sebagian atau

seluruh bagian dari pekerjaan.

3. Service, yaitu kumpulan operation yang mampu mengerjakan pekerjaan yang

saling berkaitan.

4. Process, yaitu kumpulan aturan bisnis yang menentukan service mana

yang akan digunakan untuk menyelesaikan suatu pekerjaan.

Komponen-komponen yang ada di dalam SOA akan saling berhubungan dengan

cara sebagai berikut[7] :

1. Sebuah operation mengirim dan menerima message untuk melakukan suatu

pekerjaan tertentu.

2. Sebuah operation biasanya didefinisikan oleh message apa saja yang

operation tersebut terima dan kirimkan.

3. Sebuah service adalah kumpulan dari operation yang saling berhubungan.

4. Sebuah service didefinisikan oleh operation-operation yang dipunyai oleh

service tersebut.

5. Sebuah instan dari process dapat membentuk service.

6. Sebuah instan dari process tidak didefinisikan oleh service yang dimilikinya,

karena process tersebut dapat hanya menggunakan sebagian saja dari seluruh

fungsionalitas dari service.

14

7. Sebuah instan dari process menggunakan kumpulan operasi yang unik untuk

menyelesaikan pekerjaannya.

8. Setiap instan dari process didefinisikan oleh service operation yang process

tersebut pergunakan.

Gambar 2.6 menggambarkan ilustrasi mengenai keterhubungan antar

komponen- komponen SOA.

Gambar 2.6. Keterhubungan antar komponen SOA[7].

2.2.3. Layering pada SOA

Aplikasi yang digunakan oleh perusahaan pada umumnya menggunakan

sebuah enterprise Architecture, yaitu sebuah arsitektur aplikasi untuk skala

enterprise. Fokus utamanya dari enterprise Architecture adalah pada pengaturan

lojik bisnis yang dimiliki oleh perusahaan untuk selanjutnya diimplementasi dalam

sebuah aplikasi.

Gambar 2.7. Posisi SOA pada sebuah enterprise Architecture [7].

15

Gambar 2.7 menunjukkan sebuah aplikasi yang menggunakan enterprise

Architecture yang terbagi menjadi 3 bagian utama, yaitu business process layer,

service enterprise layer, dan application layer. Business process layer adalah layer

yang berkaitan dengan kebutuhan dan pengetahuan bisnis yang dipunyai oleh suatu

enterprise. Application layer berkaitan dengan dengan implementasi dari lojik

bisnis yang terkandung di dalam business process layer dalam suatu solusi

teknologi informasi. SOA masuk menjadi bagian dari enterprise Architecture ini

dengan menjadi penjembatan antara lojik dan pengetahuan bisnis dengan

implementasi dari logic tersebut. SOA membuat sebuah layer baru bernama service

interface layer yang terletak di antara business process layer dan application layer.

Service interface layer sendiri akan dibagi menjadi 3 bagian utama seperti yang

ditunjukkan dalam Gambar 2.8, yaitu orchestration service layer, business service

layer, dan application service layer.

Gambar 2.8 Layering pada SOA [7].

1. Application Service Layer

Application service layer, seperti yang ditunjukkan dalam Gambar 2.9 adalah

layer yang terletak berbatasan dengan aplication layer. Layer ini menjadi fondasi

dasar untuk membuat fungsionalitas-fungsionalitas aplikasi secara teknis. Service

yang ada di dalam layer ini biasa disebut sebagai application services, dimana

tugasnya adalah menyediakan fungsi-fungsi untuk pemrosesan data pada suatu

lingkungan aplikasi baik aplikasi modern maupun aplikasi legacy (aplikasi yang

sudah dipakai sejak lama). Fungsi yang disediakan bersifat reusable sehingga selalu

dapat digunakan kembali.

Karakteristik yang dimiliki oleh application services adalah sebagai berikut :

a. Menyediakan fungsionalitas yang spesifik terhadap tugas pemrosesan tertentu.

b. Menggunakan sumber daya yang disediakan oleh platform terknologi tertentu.

16

c. Berorientasi solusi.

d. Bersifat generik dan reusable.

e. Dapat digunakan untuk membuat integrasi point-to-point dengan service

yang disediakan oleh aplikasi lain.

f. Inkonsisten dalam tingkatan transparansi interface yang disediakan oleh service

yang bersangkutan.

g. Dapat terdiri dari service yang dikembangkan sendiri maupun dikembangkan

oleh orang lain.

Gambar 2.9 Application service layer [7]

2. Business Service Layer

Berbeda dengan application service layer yang bertanggung jawab untuk

merepresentasikan teknologi yang digunakan dan lojik dari aplikasi, business

service layer yang ditunjukkan dalam Gambar 2.10 bertanggung jawab untuk

menyediakan service yang berkaitan dengan representasi lojik dari bisnis. Lojik

bisnis ini akan diatur dalam sebuah service bernama business service. Tanggung

jawab dari business service adalah mengimplementasikan lojik dan model bisnis

perusahaan dalam sebuah service.

Business service sendiri terbagi menjadi 2 katagori, yaitu :

a. Task-centric business service, yaitu service yang mengenkapsulasi lojik bisnis

yang spesifik terhadap sebuah kegiatan atau proses bisnis yang dimiliki

perusahaan. Service ini paling mudah untuk dianalisis, namun potensi reuse

yang ada terbatas.

b. Entity- centric business service, yaitu service yang mengenkapsulasi sebuah

entitas bisnis (seperti invoice atau jadwal kegiatan). Service ini memiliki

potensi reuse yang tinggi, namun memerlukan proses analisis yang lebih sulit.

17

Gambar 2.10 Business service layer[7].

3. Service Orchestration Layer

Orchestration service layer, yang diilustrasikan dalam Gambar 2.11, adalah

layer yang memberikan abstraksi paling tinggi dari lojik dan aturan bisnis

perusahaan serta bagaimana service harus berjalan. Layer ini digunakan untuk

memenuhi kebutuhan perlunya sebuah service lain yang bertanggung jawab untuk

mengatur bagaimana service-service yang ada dapat dieksekusi dengan urutan yang

sesuai. Orchestration service layer mempunyai process services, yaitu service yang

dapat mengatur business service dan application service untuk berjalan dengan

aturan dan urutan yang sesuai dengan lojik dan aturan bisnis perusahaan yang telah

terdefinisi di dalam process service tersebut.

Gambar 2.11 Orchestration service layer[7].

2.2.4. Service-Oriented Analysis

Service-Oriented analysis adalah fase awal dalam pengembangan sebuah

aplikasi Service Oriented Architecture, dimana akan ditentukan lingkup dari

aplikasi Service Oriented Architecture yang akan dibuat. Setelah lingkup aplikasi

ditentukan, selanjutnya dilakukan identifikasi dan analisis service yang akan ada di

dalam aplikasi.

Tujuan yang ingin dicapai dalam tahapan service-Oriented analysis adalah sebagai

berikut[7] :

1. Mendefinisikan kandidat-kandidat service yang akan ada.

18

2. Mengelompokkan kandidat service yang telah didefinisikan dalam sesuai

dengan konteks lojik masing-masing.

3. Mendefinisikan batasan antara service sehingga tidak terjadi overlap antar

service.

4. Mengidentifikasi lojik yang terkandung di dalam service yang berpotensi

untuk digunakan kembali.

5. Memastikan bahwa lojik dalam tiap service sudah sesuai dengan tujuan dan

fungsionalitas dari service yang bersangkutan.

6. Mendefinisikan model awal komposisi service

Service-Oriented analysis terbagi menjadi 3 langkah, yaitu[7] :

1. Mendefinisikan kebutuhan bisnis, dimana kebutuhan bisnis akan ditangkap dan

dimodelkan menggunakan teknik seperti Business Process Management (BPM).

2. Mengidentifikasi sistem yang telah ada, yaitu melihat dan melakukan

pendataan sistem lain pada lingkungan operasional aplikasi yang

mempunyai kemungkinan untuk berinteraksi atau memberikan pengaruh

kepada aplikasi nantinya.

3. Memodelkan kandidat-kandidat service yang disediakan oleh aplikasi.

Kandidat service yang dimaksud di sini adalah kandidat service dalam bentuk

business service dan application service, serta logic orkestrasi dalam bentuk

process services.

2.2.5. Service Oriented Design

Setelah membuat kandidat dari service pada tahap analisis, maka tahap

berikutnya adalah membuat desain konkrit dari kandidat service yang telah ada dan

mengimplementasikannya dalam sebuah komposisi yang membentuk suatu proses

bisnis. Dalam SOAD, desain dan implementasi dari service menggunakan

teknologi web service yang berbasis XML (eXtensible Markup Language),

XSD (XML Schema Definition), SOAP (Simple Object Access Protocol), dan WSDL

(Web Service Definition Language), dan WS-* extension[7].

Tujuan yang ingin dicapai dalam kegiatan service Oriented design ini adalah

sebagai berikut[7] :

1. Bagaimana mendefinisikan secara fisik interface service dari kandidat service

yang telah didapatkan dalam service Oriented analysis.

19

2. Karakteristik SOA apa saja yang akan diimplementasikan.

3. Standar apa saja yang diperlukan oleh aplikasi SOA yang dibuat

Dalam mendesain service baik entity-centric, task-centric, dan application

services, langkah yang dilakukan adalah sebagai berikut[7] :

1. Menentukan service mana dari tahap analisis yang akan didesain.

2. Menentukan schema pesan yang digunakan. Service bertukar informasi dengan

mengirimkan pesan, sehingga schema atau struktur pesan yang digunakan

harus didefinisikan dari awal sehingga services dapat saling mengerti

pesan yang dikirimkan. Schema akan didefinisikan dalam format XML

dengan menggunakan XSD yang diterapkan dalam bentuk web services

menggunakan WSDL dan SOAP.

3. Mendefinisikan interface dari service. Interface disini berupa port dimana

melalui port tersebut service dapat mengirimkan dan menerima pesan.

Port akan didefinisikan dengan menggunakan WSDL, lalu untuk tiap port akan

didefinisikan pesan yang akan diterimanya dengan menggunakan schema yang

telah disepakati.

4. Mengaplikasikan prinsip service-orientation, yang berupa reusablity,

autonomy, statelessness, dan discoverability.

5. Me-refine ulang interface service yang telah didefinisikan.

6. Mengembangkan lebih lanjut operasi yang ada dalam suatu service

sehingga mencakup semua hal yang mungkin.

7. Mengidentifikasi batasan teknis yang ada, baik dari segi keamanan,

performansi, dan realibilitas.

8. Mengidentifikasi service lain yang diperlukan, apabila service yang didesain

bersifat kompleks dan merupakan hasil komposisi dari banyak service.

2.2.6. Web Service

Sesuai dengan namanya, web service hanya menyediakan service atau

layanan. Web service dibuat bukan untuk berinteraksi langsung kepada client,

tetapi untuk menyediakan layanan yang akan dipanggil oleh aplikasi. Web service

dapat didefinisikan sebagai aplikasi yang dibuat agar dapat dipanggil atau diakses

oleh aplikasi lain melalui internet dengan menggunakan XML sebagai format

pengiriman pesan

20

Pada kondisi dimana operating system dan bahasa pemrograman beraneka

ragam jenisnya, timbul masalah dimana pertukaran data antar perangkat yang

menggunakan aplikasi dan platform yang berbeda. Inilah alasan utama

menggunakan web service, web service memungkinkan penggunaan platform

yang berbeda dapat bertukar data dan informasi dengan mudah.

Pada prinsipnya peranan service dibagi menjadi dua, yaitu serviceprovider

dan service requestor. Service provider adalah service yang menyediakan

layanan yang akan digunakan dan service requestor adalah service yang

meminta service tersebut berjalan. Alokasi provider dan requestor tidak bersifat

mutlak. Sebuah service provider dapat berubah menjadi servicerequestor,

tergantung dari peran yang diberikan oleh proses bisnis yang terkait.

Gambar 2.12 Alur request dari service requestor ke service provider[7].

Requestor dari sebuah service tidak hanya berasal dari sebuah service, tetapi

juga dapat berasal dari aplikasi native atau mobile. Pada Gambar 2.12 dijelaskan

bahwa service requestor meminta service kepada service provider dengan

menggunakan request message berbentuk amplop. Amplop tersebut adalah

penggambaran dari SOAP yang berupa struktur bahasa dari XML yang digunakan

untuk berkomunikasi oleh service requestor dan service provider. Gambar adalah

sebuah implementasi sederhana dari sebuah service requestor kepada service

provider.

Peran intermediaries (penghubung) akan sering dijumpai seiring semakin

kompleks-nya sebuah sistem. Semakin kompleks sebuah sistem, maka akan

semakin banyak services yang digunakan dan hubungan antar service akan semakin

fleksibel.

21

Terkadang peran antar services dideskripsikan sebagai intial sender,

intermediary service dan ultimate receiver. Initial sender yaitu service requestor

yang pertama kali mengirimkan permintaan service kepada intermediary service.

Setelah permintaan diterima, intermediary service akan bertindak sebagai

service requestor, tapi tidak sebagai initial sender. Ultimate receiver akan

menerima request yang diteruskan oleh intermediary service. Intermediary

service tidak akan menjadi initial sender atau ultimate sender dalam area aktifitas

service.

Kelebihan dari web service adalah:

1. Lintas platform

Dengan menggunakan web service, komputer yang memiliki sistem operasi

yang berbeda dapat saling berkomunikasi.

2. Language independent

Akses kepada web service tidak terbatas pada hanya satu bahasa pemrograman

saja. Sebagai contoh, web service yang dibangun dengan PHP dapat diakses

oleh PHP, JSP, Delphi dan VB.NET.

3. Jembatan penghubung dengan database

Web service dapat menjadi penghubung atara aplikasi dengan database.

Dengan menggunakan webservice, aplikasi tidak memerlukan driver database

dan tidak perlu mengetahui database yang digunakan oleh server serta

bagaimana struktur database tersebut jika ingin mengaksesnya.

4. Mempermudah proses pertukaran data

Pertukaran data antara dua perusahaan yang memiliki platform yang berbeda

dapat terjadi dengan menggunakan web service.

5. Penggunaan kembali komponen aplikasi

Sebuah layanan dapat melayani sebuah fungsi untuk beberapa pengguna

layanan. Sebagai contoh, layanan konversi mata uang dapat digunakan oleh

bank A dan bank B.

22

Beberapa komponen pendukung web service adalah:

1. XML

Extensilble Markup Languange (XML) diciptakan pada akhir tahun 60-an oleh

W3C. XML menjadi popular pada ebusiness pada akhir 90-an, pada saat

traksaksi online menggunakan bahasa server-side scripting menjadi tren.

Arsitektur data yang direpresentasikan XML mencerminkan pemahaman dasar

terhadap SOA. Dalam arsitektur data tersebut XML membangun format dan

struktur dari message yang berjalan antar service.

XML bersifat platform independent, informasi pada XML dapat diakses oleh

platform apapun selama aplikasi tersebut dapat menterjemahkan tag XML.

Dalam web service XML dapat diumpamakan sebagai bahasa inggris yang

menjadi bahasa internasional, dimana orang diseluruh dunia mengerti akan

bahasa tersebut.

2. SOAP

SOAP adalah protokol untuk pertukaran informasi dengan desentralisasi

dan terdistribusi.SOAP dibangun dengan menggunakan protokol komunikasi

HTTP. Karena HTTP didukung oleh semua browser dan server, maka SOAP

dapat berkomunikasi dengan berbagai aplikasi meskipun terdapat perbedaan

sistem operasi, teknologi, dan bahasa pemrogramannya[8].

Peran SOAP di dalam teknologi web service adalah sebagai protokol

pemaketan untuk pesan – pesan (messages) yang digunakan secara bersama

oleh aplikasi – aplikasi penggunanya. Spesifikasi yang digunakan tidak lebih

seperti sebuah amplop biasa berbasis XML untuk informasi yang ditransfer,

serta sekumpulan aturan bagi translasi aplikasi dan tipe – tipe data

platform yang spesifik menjadi bentuk XML. Desain bentuk SOAP

membuatnya cocok untuk berbagai pertukaran pesan pada aplikasi[9].

Sebuah pesan SOAP adalah sebuah dokumen XML yang berisi elemen –

elemen berikut:

a. Envelope element yang mengidentifikasikan dokumen XML sebagai

sebuah pesan SOAP.

b. Elemen header yang berisi informasi header. Elemen ini bersifat opsional.

c. Elemen body yang berisi panggilan dan merespon informasi.

23

d. Fault element yang berisi pesan kesalahan yang terjadi pada waktu proses.

Elemen ini opsional.

3. WSDL

Web Service Description Language (WSDL) adalah sebuah dokumen dalam

format XML yang isinya menjelaskan informasi detail sebuah webservice.

Didalam WSDL dijelaskan method-method apa saja yang tersedia didalam

web service, parameter apa saja yang diperlukan untuk memanggil sebuah

method, dan apa hasil atau tipe data yang dikembalikan oleh method

yang dipanggil tersebut[10].

Gambar 2.13 WSDL[7].

Pada Gambar 2.13 dijelaskan hubungan antara service A dan service B

pada SOAP request yang berasal dari service A terdapat WSDL definition untuk

service B dan pada SOAP response yang berasal dari service B terdapat WSDL

definition untuk service A.

Dalam pengertian sederhana, WSDL dapat berupa sebuah brosur dan formulir

sebuah perusahaan. Brosur menjelaskan layanan apa saja yang dapat diberikan

oleh perusahaan tersebut dan keuntungan memakai layanan dari perusahaan.

Dan formulir merupakan informasi yang harus diisi oleh pengguna layanan

yang akan digunakan oleh perusahaan demi memberikan pelayanan yang

maksimal.

24

BAB III

METODE PENELITIAN

3.1 Alat dan Bahan Penelitian

Berikut ini adalah alat dan bahan yang diperlukan untuk melakukan penelitian

ini :

a. Alat

1. Laptop ASUS A455L Processor Intel Core i3 dengan RAM 4GB.

2. Sistem Operasi Windows 8 64-bit

3. Menggunakan Framework CodeIgniter 3 untuk membangun aplikasi web

service

b. Bahan

Adapun bahan-bahan yang digunakan dalam penelitian ini adalah data yang

didapatkan dari SMKN 1 Selong seperti : Tugas, Pokok dan Fungsi SMKN 1

Selong, Struktur Organisasi, dan Alur Kerja Organisasi.

3.2 Tahap Penelitian

Berikut adalah tahapan penelitian untuk membangun Service Oriented

Architecture (SOA) pada SMKN 1 Selong :

Identifikasi Masalah Pada SMKN 1 Selong

Analisa Service Oriented

Desain Service Oriented

Pengumpulan Data Organisasi Melalui

Observasi Dan Wawancara

Pengembangan Service

Pengujian Service

Dokumentasi Dan Publikasi

Gambar 3.1 Tahapan penelitian

Gambar 3.1 merupakan tahapan-tahapan penelitian yang akan dilakukan pada

penelitian ini. Penjelasan untuk setiap tahap-tahap yang akan dilakukan dalam

penelitian ini adalah sebagai berikut :

25

3.2.1 Identifikasi Masalah

Melakukan identifikasi masalah yang terjadi. Pada SMKN 1 Selong

pengelolaan data dan informasi masih menggunakan Microsoft Word dan Microsoft

Exel sehingga menyebabkan pegawai dan para guru kesulitan dalam mendapatkan

data atau informasi yang dibutuhkan. Pengembangan teknologi pada SMKN 1

Selong ini masih rendah, hal ini dilihat dari hanya terdapat satu sistem yang ada di

sekolah yaitu sistem DAPODIK yang didapatkan dari Pemerintah.

3.2.2 Pengumpulan Data

Tahap pengumpulan data merupakan tahapan yang digunakan untuk

mendapatkan informasi dan data dari permasalahn yang ada. Berikut adalah tahapan

yang digunakan untuk pengumpulan data yaitu :

a. Studi Pustaka

Tahap ini merupakan tahapan pengumpulan pengetahuan dari berbagai sumber

seperti buku, dokumen, jurnal, skripsi, dan publikasi dari berbagai sumber.

Sumber-sumber tersebut menjadi landasan teori yang digunakan untuk

melakukan penelitian mengenai Service Oriented Architecture (SOA) pada

SMKN 1 Selong.

b. Wawancara

Pada tahapan ini dilakukan wawancara dengan kepala sekolah, wakil kepala

sekolah, kepala tata usaha, dan ketua jurusan untuk memperoleh keterangan

mengenai proses bisnis yang terjadi pada berbagai bidang di SMKN 1 Selong.

c. Observasi

Observasi merupakan pengamatan secara langsung bagaimana proses bisnis

berjalan. Tahapan ini dilakukan pada semua bidang tentang kegiatan apa saja

yang dilakukan.

3.2.3 Analisis Service Oriented

Analisis service oriented ini adalah fase awal dalam pengembangan sebuah

aplikasi SOA. Pada tahap ini akan dilakukan identifikasi proses bisnis yang ada

pada SMKN 1 Selong, identifikasi data yang dibutuhkan dalam proses bisnis yang

ada pada SMKN 1 Selong, dan penentuan kandidat service.

26

3.2.3.1. Identifikasi Proses Bisnis Pada SMKN 1 Selong

Berdasarkan hasil wawancara dan data tufoksi pada Sekolah Menengah

Kejuruan yang dilakukan di SMKN 1 Selong dapat dilihat proses bisnis yang

berlangsung pada Table 3.1.

Tabel 3.1 Proses bisnis pada SMKN 1 Selong

No. Bidang Kegiatan

1. Kepala Sekolah a. Merencanakan program kerja

b. Melaksanakan program kerja

c. Mengawasi pelaksanaan program

kerja

d. Melaksanakan kepemimpinakan

sekolah

2. Wakil Kepala Sekolah Bidang

Kesiswaan

a. Menyusun program kerja

pembinaan kesiswaan (OSIS) atau

ektrakulikuler.

b. Menyusun dan membuat kepanitian

penerimaan siswa baru dan

pelaksaan MOS

c. Melaksanakan pemilihan siswa

berprestasi dan penerima beasiswa

d. Mengatur mutasi siswa (siswa

pindah).

e. Membuat laporan kegiatan

kesiswaan secara berkala.

3. Wakil Kepala Sekolah Bidang

Kurikulum

a. Menyusun program pengajaran

b. Menyusun dan menjabarkan

kalender pendidikan

c. Menyusun pembagian tugas guru

dan jadwal pelajaran.

d. Menyusun jadwal evaluasi belajar

dan pelaksanaan uian akhir.

e. Mengkoordinasikan, menyusun,

dan mengarahkan penyusunan

kelengkapan mengajar.

f. Mengatur pengembangan

MGMP/MGBP dan coordinator

mata pelajaran.

g. Melakukan pengarsipan program

kurikulum.

h. Penyusunan laporan secara berkala.

4. Wakil Kepala Sekolah Bidang

Sarana dan Prasarana

a. Menyusun program pengadaan

sarana dan prasana.

b. Mengkoordinasikan penggunaan

sarana dan prasarana.

c. Pengelolaan pembiayaan alat-alat

pengajaran.

d. Membuat pembukuan terhadap

kelengkapan data sekolah secara

menyeluruh.

27

No. Bidang Kegiatan

e. Membuat pembukuan sarana dan

prasarana secara rutin.

5. Wakil Kepala Sekolah Bidang

HUMAS

a. Membuat program kerja

b. Membina hubungan antara sekolah

dengan wali murid.

c. Mengatur dan menyelenggarakan

hubungan sekolah dengan dewan

sekolah (komite).

d. Menyusun laporan secara berkala.

6. Tata Usaha a. Membuat daftar siswa, guru, dan

pegawai.

b. Membuat absensi.

c. Mengelola surat masuk dan keluar.

d. Melakukan pembayaran gaji guru

dan pegawai.

e. Membuat buku KAS.

f. Menyimpan berkas-berkas penting

siswa, guru,dan pegawai.

g. Menggandakan soal ujian tengah

semester maupun akhir semester.

h. Mengusulkan kenaikan pangkat dan

kenaikan gaji guru dan pegawai.

i. Melakukan pendataan siswa, guru,

dan pegaai yang pindah (mutasi).

7. Kepala Jurusan a. Menyusun jadwal dan kurikulum

Bersama dengan wakil kepala

sekolah bidang kurikulum.

b. Mengembangkan sistem

pembelajaran sesuai dengan

tuntutan kurikulum dan kebutuhan

dunia kerja.

c. Mengurus Praktek Kerja Lapangan

siswa.

d. Melaksanakan pengembangan

laboraturium atau bengkel.

8. Guru Bimbingan Konseling a. Menyusun dan melaksanakan

program bimbingan dan konseling.

b. Memonitoring hasil belajar siswa.

c. Melakukan penilaian terhadap

bimbingan dan konseling.

d. Melakukan evaluasi terhaap hasil

belajar siswa.

e. Melakukan monitoring terhadap

hasil bimbingan dan konseling

siswa.

f. Menyususn statistic hasil

bimbingan siswa.

9. Staff Perpustakaan a. Melakukan pendataan buku.

b. Melakukan pendataan peminjam

buku.

28

No. Bidang Kegiatan

c. Evaluasi terhadap peminjaman

buku.

10. Guru a. Membuat program pengajaran

b. Melaksanakan kegiatan

pembelajaran,

c. Melaksanakan penilaian

d. Menganalisis hasil KBM

11. Operator a. Mengelola sistem DAPODIK

12. Calon Siswa Baru a. Mendaftar menjadi siswa

13. Siswa a. Melihat nilai.

b. Melihat data siswa.

3.2.3.2. Identifikasi Kebutuhan Data.

Berikut adalah data yang dibutuhkan pada setiap aplikasi atau proses yang ada

di SMKN 1 Selong. Pendefinisiannya akan digambarkan melalui matriks antara

proses dan data yang dibutuhkan. Hal ini dapat dilihat pada Tabel 3.2.

Tabel 3.2 Matriks kebutuhan data

No. Kegiatan Interaksi Kebutuhan Data

1.

Informasi Administrator

Proses ini digunakan untuk mengelola data

administrator.

• Data Administrator

2.

Pengelolaan Data Siswa

Proses ini digunakan untuk pengelolaan data siswa

ke dalam sistem.

• Data Siswa

• Data Orangtua

• Data Calon Siswa

3.

Penglolaan Data Guru

Informasi ini digunakan untuk menyimpan data

guru ke dalam system

• Data Guru

• Data Gaji

4.

Pengelolaan Data Pegawai

Proses ini digunakan untuk pengelolaan data

pegawai ke dalam sistem.

• Data Pegawai

• Data Gaji

5.

Pengelolaan Keuangan

Proses ini digunakan untuk pengelolaan data

keuangan seperti gaji guru dan pegawai, dana BOS,

dan dana SPP.

• Data Guru

• Data Pegawai

• Data Siswa

• Data Gaji

• Data dana BOS

• Data SPP

6.

Pengelolaan Kurikulum

Proses ini digunakan untuk pengelolaan data

kurikulum.

• Data Kurikulum

• Data Mata Pelajaran

• Data Guru

7.

Pengelolaan Nilai

Proses ini digunakan untuk pngelolaan data nilai

siswa.

• Data Siswa

• Data Guru

• Data Mata Pelajaran

• Data Niai

8.

Pengelolaan Perpustakaan

Proses ini digunakan untuk pengelolaan data

perpustakaan.

• Data Siswa

• Data Perpustakaan

• Data Peminjam

29

No. Kegiatan Interaksi Kebutuhan Data

9.

Pengelolaan Sarana & Prasarana

Proses ini digunakan untuk pengelolaan data sarana

dan prasarana yang ada di SMKN 1 Selong.

• Data Alat

Pembelajaran

• Data Ruangan

• Data Invertaris

Ruanagan.

• Data Inventaris

Laboraturium.

Setelah diketahui kebutuhan data untuk setiap kegiatan atau proses yang

diperlukan pada aplikasi ini, maka langkah selanjutnya adalah merancang diagram

usecase diagram dan ERD dari aplikasi-aplikasi yang dibutuhkan. Berikut ini

rancangan usecase diagram dan ERD untuk aplikasi ini.

1. Usecase Diagram

Berikut adalah use case diagram yang ditentukan atas dasar kebutuhan fungsi-

fungsi.. Pada Gambar 3.2 dapat dilihat gambaran diagram use case untuk semua

aktor yang ada.

1) Admin

Admin merupakan actor yang bertugas untuk mengelola data pengguna sistem

dan data yang dibutuhkan bersama oleh masing-masing bidang. Admin juga

menetukan modul mana saja yang digunakan oleh masing-masing bidang.

Penjelasan tentang use case admin dapat dilihat pada Tabel 3.3.

Tabel 3.3 Penjelasan use case actor admin

Aktor Use case Deskripsi

Admin Mengelola admin Modul ini digunakan untuk mengelola

data admin.

Mengelola nilai Modul ini digunakan untuk mengelola

data nilai

Mengelola siswa Modul ini digunakan untuk mengelola

data siswa

Mengelola guru Modul ini digunakan untuk mengelola

data guru

Mengelola pegawai Modul ini digunakan untuk menglola

data pegawai

Mengelola keuangan Modul ini digunakan untuk mengelola

data keunagan

Mengelola data

kurikulum dan mata

pelajaran

Modul ini digunakan untuk mengelola

data kurikulum dan mata pelajaran

Mengelola perpustakaan Modul ini digunkan untuk mengelola

data kurikulum

Mengelola sarana dan

prasarana

Modul ini digunakan untuk mengelola

data sarana dan prasarana

30

Aktor Use case Deskripsi

Mengelola data calon

siswa

Modul ini digunakan untuk mengelola

data calon siswa yang mendaftar.

2) Kepala Sekolah

Kepala sekolah merupakan actor yang hanya bisa melihat data yang terdapat

pada sistem. Hal ini dilakukan oleh kepala sekolah untuk melakukan control

terhadap siswa, guru, dan pegawai yang ada pada SMKN 1 Selong. Penjelasan

tentang use case kepala sekolah dapat dilihat pada Tabel 3.4.

Tabel 3.4 Penjelasan use case actor Kepala Sekolah

Aktor Use case Deskripsi

Kepala

Sekolah

Melihat data nilai Modul ini digunakan untuk melihat

data nilai siswa dan memonitoring

perkembangan siswa.

Melihat data siswa Modul ini digunakan untuk melihat

data siswa.

Melihat data guru Modul ini digunakan untuk melihat

data guru.

Melihat data pegawai Modul ini digunakan untuk melihat

data pegawai

Melihat data keuangan Modul ini digunakan untuk melihat

data keuangan dan memonitoring

pemasukan dan pengeluaran.

Melihat data sarana dan

prasarana

Modul ini digunakan untuk melihat

dan memonitoring data sarana dan

prasarana di Sekolah.

3) Wakil Kepala Sekolah Bidang Kesiswaan

Wakil kepala sekolah bidang kesiswaan adalah actor yang mengelola data

orientasi siswa pada sistem. Penjelasan tentang use case Wakil Kepala Sekolah

Bidang Kesiswaan dapat dilihat pada Tabel 3.5.

Tabel 3.5 Penjelasan use case actor Wakil Kepala Sekolah Bidang Kesiswaan

Aktor Use case Deskripsi

Wakil Kepala

Sekolah

Bidang

Kesiswaan

Melihat data siswa Modul ini digunakan untuk melihat

siswa.

Meneglola data siswa

baru

Modul ini digunakan untuk mengelola

data tetntang masa orientasi siswa

baru seperti jadwal.

31

pustakawan

Tata usaha

admin

mengelola siswa

mengelola guru

mengelola pegawai

mengelola keuangan

melihat data gaji

melihat data keuangan

melihat data siswa

melihat data guru

mengelola admin

mengelola nilai

mengelola kurikulum

mengelola sarana dan prasarana

mengelola data perpustakaan

mengelola data calon siswa

melihat data kurikulum

melihat sarana dan prasarana

melihat nilai

Wakasek kesiswaan

mengelola data matapelajaran

Wakasek kurikulum

Wakasek sarana

Wakasek humas

mengelola data lab

laboran

Guru

Calon siswa

mencetak data matapelajaran

Siswa

login

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

Gambar 3.2 Usecase aplikasi pada SMKN 1 Selong

32

4) Wakil Kepala Sekolah Bidang Kurikulum

Wakil Kepala Sekolah Bidang Kurikulum merupakan actor yang bertugas

untuk membuat jadwal pelajaran, membuat kalender pendidikan, dan

mengelola kurikulum yang ada. Penjelasan tentang use case Wakil Kepala

Sekolah Bidang Kurikulum dapat dilihat pada Tabel 3.6.

Tabel 3.6 Penjelasan use case actor Wakil Kepala Sekolah Bidang Kurikulum

Aktor Use case Deskripsi

Wakil Kepala

Sekolah

Bidang

Kurikulum

Mengelola

matapelajaran

Modul ini digunakan untuk membuat

jadwal pelajaran.

Mengelola data

kurikulum

Modul ini digunakan untuk mengelola

data kurikulum.

5) Wakil Kepala Sekolah Bidang Sarana Dan Prasarana

Wakil Kepala Sekolah Bidang Sarana Dan Prasarana merupakan aktor yang

bertugas untuk mengelola data sarana dan prasarana serta meneyesuaikan dana

yang dibutuhkan untuk sarana dan prasarana yang dibutuhkan sekolah.

Penjelasan tentang use case Wakil Kepala Sekolah Bidang Sarana dan

Prasarana dapat dilihat pada Tabel 3.7.

Tabel 3.7 Penjelasan Use case actor Wakil Kepala Sekolah Bidang Sarana Dan

Prasarana.

Aktor Use case Deskripsi

Wakasek

Sarana dan

Prasarana

Mengelola data sarana

dan prasarana

Modul ini digunakan untuk mengelola

data sarana dan prasarana

6) Wakil Kepala Sekolah Bidang Humas

Wakil Kepala Sekolah Bidang Humas merupakan actor yang bertugas untuk

mengelola data yang berhubungan dengan hubungan dengan masyarakat atau

masyarakat sekitar sekolah dan bisa juga orangtua siawa. Penjelasan tentang

use case Wakil Kepala Sekolah Bidang Humas dapat dilihat pada Tabel 3.8.

Tabel 3.8 Deskripsi Use case actor Wakil Kepala Sekolah Bidang Humas

Aktor Use case Deskripsi

Wakil Kepala

Sekolah

Bidang Humas

Melihat data siswa Modul ini digunakan untuk melihat

data siswa dan orangtua siswa

7) Tata Usaha

Tata usaha merupaka actor yang bertugas untuk menginput data siswa,

pegawai, dan guru, mengelola gaji guru dan pegawai sesuai dengan peraturan

33

pemerintah dan sekolah, serta membuat pelaporan tentang keuangan.

Penjelasan tentang use case Tata Usaha dapat dilihat pada Tabel 3.9.

Tabel 3.9 Penjelasan Use case actor Tata Usaha

Aktor Use case Deskripsi

Tata Usaha Mengelola data siswa Modul ini digunakan untuk mengelola

siswa.

Mengelola data guru Modul ini digunakan untuk mengelola

data guru

Mengelola data pegawai Modul ini digunakan untuk mengelola

data pegawai

Mengelola Modul ini digunakan untuk mengelola

data keungan.

8) Laboran

Laboran merupakan actor yang melakukan pemeriksaan terhadap sarana

prasarana laboraturium. Penjelasan tentang use case Laboran dapat dilihat pada

Tabel 3.10.

Tabel 3.10 Penjelasan Use case actor Laboran

Aktor Use case Deskripsi

Laboran Mengelola data

laboraurium

Modul ini digunakan untuk mengelola

data dan inventaris laboraturium.

9) Petugas Perpustakaan

Petugas perpustakaan merupakn actor yang mengelola data perpustakaan, data

buku, dan mencatat peminjam buku di perpustakaan. Penjelasan tentang use

case Petugas Perpustakaan dapat dilihat pada Tabel 3.11.

Tabel 3.11 Penjelasan Use case actor Petugas Perpustakaan

Aktor Use case Deskripsi

Petugas

Perpustakaan

Mengelola data

peminjam

Modul ini digunakan untuk mengelola

data peminjm buku perpustakaan,

10) Guru

Guru merupakan actor yang mengisi data nilai siswa sesuai dengan

matapelajaran yang diajarkannya. Penjelasan tentang use Guru dapat dilihat

pada Tabel 3.12.

Tabel 3.12 Penjelasan Use case actor Guru

Aktor Use case Deskripsi

Guru Melihat data gaji Modul ini digunakan untuk melihat

data gaji.

Melihat data siswa Modul ini digunakan untuk melihat

data siswa

34

Aktor Use case Deskripsi

melihat data guru Modul ini digunakan untuk melihat

data guru.

Cetak jadwal pelajaran Modul ini digunakan untuk mencetak

jadwal pelajaran.

Mengelola nilai Modul ini digunakan untuk mengelola

nilai.

11) Kepala Jurusan

Kepala jurusan merupakan actor yang melakuakan monitoring terhadap

kegiatan jurusan dan perkembangan peserta didik pada masing-masing jurusan.

Penjelasan tentang use case Kepala Jurusan dapat dilihat pada Tabel 3.13.

Tabel 3.13 Penjelasan Use case actor Kepala Jurusan

Aktor Use case Deskripsi

Kepala

Jurusan

Melihat data sarana lab Modul ini digunakan untuk melihat

data srana yang ada di laboraturim

jurusan masing-masing.

12) Calon Siswa

Calon siswa merupakan actor yang melakukan pendaftaran menjadi siswa pada

SMKN 1 Selong. Penjelasan tentang use case actor calon siswa dapat dilihat

pada Tabel 3.14.

Tabel 3.14 Penjelasan Use case actor Laboran

Aktor Use case Deskripsi

Calon Siswa Menambah data calon

siswa

Menambah data calon siswa yang

akan mendaftar.

13) Siswa

Siswa merupakan actor yang terdaftar menjadi siswa pada SMKN 1 Selong.

Penjelasan tentang use case actor siswa dapat dilihat pada Tabel 3.15.

Tabel 3.14 Penjelasan Use case actor Siswa

Aktor Use case Deskripsi

Siswa Melihat data nilai Modul ini digunakan untuk melihat

data nilai.

Melihat data siswa Modul ini digunakan untuk melihat

data siswa

35

2. Class Diagram

Class Diagram pada aplikasi ini terdiri dari 16 class. Rancangan dari class diagram tersebut dapat dilihat pada Gambar 3.2

admin

-__construct()-insert()-update()-delete()-get()

siswa

-__construct()-insert()-update()-delete()-get()

orangtua

-__construct()-insert()-update()-delete()-get()

Gaji

-__construct()-insert()-update()-delete()-get()

guru

-__construct()-insert()-update()-delete()-get()

pegawai

-__construct()-insert()-update()-delete()-get()

BOS

-__construct()-insert()-update()-delete()-get()

SPP

-__construct()-insert()-update()-delete()-get()

Kurikulum

-__construct()-insert()-update()-delete()-get()

matapelajaran

-__construct()-insert()-update()-delete()-get()

nilai

-__construct()-insert()-update()-delete()-get()

perpustakaan

-__construct()-insert()-update()-delete()-get()

peminjam

-__construct()-insert()-update()-delete()-get()

alat pembelajaran

-__construct()-insert()-update()-delete()-get()

inventaris_ruangan

-__construct()-insert()-update()-delete()-get()

ruangan

-__construct()-insert()-update()-delete()-get()

CI_Controller

admin

-insert()-update()-delete()-get()

siswa

-insert()-update()-delete()-get()

orangtua

-insert()-update()-delete()-get()

Gaji

-insert()-update()-delete()-get()

guru

-insert()-update()-delete()-get()

pegawai

-insert()-update()-delete()-get()

BOS

-insert()-update()-delete()-get()

SPP

-insert()-update()-delete()-get()

Kurikulum

-insert()-update()-delete()-get()

matapelajaran

-insert()-update()-delete()-get()

nilai

-insert()-update()-delete()-get()

perpustakaan

-insert()-update()-delete()-get()

peminjam

-insert()-update()-delete()-get()

alat pembelajaran

-insert()-update()-delete()-get()

inventaris_ruangan

-insert()-update()-delete()-get()

ruangan

-insert()-update()-delete()-get()

CI_Model

CI_View

Gambar 3.3 Class Diagram

36

3. Entity Relation Diagram (ERD)

Berikut adalah rancangan ERD :

siswa meminjam buku

memilikiorangtua

membayar

SPP

guru

gaji memilikipegawai memiliki

mengajar

matapelajaran

mempunyai

kurikulum

inventaris

memilikiruangan

alat_pembelajaran

login

m m

1

m

m

1

1

1

1

1

m

1

11

m

tahun

id_buku

pengarang

penerbitjudul

NISid_buku

waktu

nama

NISN

alamat

ttl

jns_klm

agama no_hp

nama

NIK

alamat

ttl

jns_klm

agama

no_hpNISN

kode_mpNIS

nilai

nama

NIK

alamat

ttl

jns_klm

agama

no_hp

NIP

email

status

memiliki

1

m

pangkat/gol

pendidikan

masa_kerja

jabatan

nama

NIK

alamat

ttl

jns_klm

agama

no_hp

NIP

email

status

pangkat/gol

pendidikan

masa_kerja

jabatan

status bayar

NIS

kurikulum kode_mp

nama_mp

kode_mp

username

password

gaji_bersih

potongan

gaji_kotor

NIP

id_ruang nm_ruang

nm_invenid_ruang id_inven

jmlh

nm_alat

id_ruang

id_alat

jmlh

mempunyai m

m

level

NIS

NIK

NoKPS

NoKIP

m

siswa mutasitanggal

keteranganpindah

tahun

mutasi

NISasal

NoKIP

1

siswa_baru

nama

pekerjaan_ortu

alamat

ttl

jns_klm

agama nama_ortu

no_pendaftaran

asal

alamat_asal

no_ijazah

alamat_ortu

status

jumlah

tanggal

semester

Gambar 3.4 Entity relantionship diagram untuk aplikasi pada SMKN 1 Selong

37

3.2.3.3. Penentuan Kandidat Service

Pada bagian ini akan mengidentifikasi lapisan orkestrasi, lapisan bisnis dan

lapisan aplikasi untuk pengembangan sistem informadi SMKN 1 Selong.

Berdasarkan pada pembahasan proses bisnis pada bagian arsitektur bisnis maka

didapat kandidat service pada bagian orkestrasi adalah Pelayanan Sistem Informasi

SMKN 1 Selong. Identifikasi service pada lapisan bisnis adalah merujuk pada

Tabel 3.2, sehingga terdapat 9 kandidat service pada lapisan bisnis, seperti yang

tergambar berikut ini:

Lapisan Orkestrasi

Lapisan Bisnis

Lapisan Aplikasi

Pelayanan Sistem Informasi SMKN 1 Selong

Informasi Administrator

Pengelolaan Data Siswa

Pengelolaan Data Guru

Pengelolaan Data Pegawai

Pengelolaan Data Keangan

Pengelolaan Kurikulum

Pengelolaan Nilai

PengelolaanPerpustakaan

Pengelolaan Sarana & Prasarana

Gambar 3.5 Lapisan orkestrasi dan bisnis

Sedangkan untuk menentukan kandidat service pada lapisan aplikasi adalalah

dengan mendekomposisi proses bisnis dan kebutuhan data seperti pada Tabel

3.2. Hasil dekomposisi akan terlihat pada Tabel 3.14 berikut ini:

Tabel 3.14. Kandidat analisis kandidat service

No. Lapisan Bisnis Kandidat Service

1. Informasi Administrator • Insert

• Update

• Delete

• Get

2. Pengelolaan Data Siswa • Insert

• Update

• Delete

• Get

3. Penglolaan Data Guru • Insert

• Update

• Delete

38

No. Lapisan Bisnis Kandidat Service

• Get

4. Pengelolaan Data Pegawai • Insert

• Update

• Delete

• Get

5. Pengelolaan Keuangan • Insert

• Update

• Delete

• Get

6. Pengelolaan Kurikulum • Insert

• Update

• Delete

• Get

7. Pengelolaan Nilai • Insert

• Update

• Delete

• Get

8 Pengelolaan Perpustakaan • Insert

• Update

• Delete

• Get

9. Pengelolaan Sarana & Prasarana • Insert

• Update

• Delete

• Get

Lapisan Orkestrasi

Lapisan Bisnis

Lapisan Aplikasi

Pelayanan Sistem Informasi SMKN 1 Selong

Informasi Administrator

Pengelolaan Data Siswa

Pengelolaan Data Guru

Pengelolaan Data Pegawai

Pengelolaan Data Keangan

Pengelolaan Kurikulum

Pengelolaan Nilai

PengelolaanPerpustakaan

Pengelolaan Sarana & Prasarana

Insert Update Delete Get

Gambar 3.6 Lapisan orkestrasi, lapisan bisnis, dan lapisan aplikasi

39

Service bisnis kandidat sebenarnya terbagi menjadi 4 bagian yaitu :

1. Insert

Pada bagian fungsi insert ini akan memiliki kegunaan untuk memasukkan

data baru yang dilakukan oleh user ke dalam database yang telah ditentukan

2. Update

Pada bagian fungsi update ini akan memiliki kegunaan untuk mengubah

data yang sudah ada sebelumnya ke dalam database yang telah ditentukan.

3. Delete

Pada bagian fungsi delete ini akan memiliki kegunaan untuk menghapus

data yang sudah ada sebelumnya dari database yang telah ditentukan.

4. Get

Pada bagian fungsi get ini akan memiliki kegunaan untuk mengambil data

dari database yang telah ditentukan.

3.2.4 Desain Service Oriented

Pada tahap desain service oriented dilakukan desain konkrit kandidat service

yang didapatkan dari tahapan analisis service oriented. Pada tahap desain ini juga

dilakukan pengimplemntasian kandidat service menggunakan teknologi web

service. Pengimplementasian web service pada penelitian ini dilakukan dengan

menggunakan framework codeigniter.

3.2.5 Pengembangan Service

Pada tahap pengembangan service, hal-hal yang terkait platform

pengembangan, seperti bahasa pemrograman yang digunakan, ditentukan tanpa

memperhatikan tipe dari service. Secara spesifik, lingkungan implementasi akan

menentukan bentuk atau implementasi fisik dari service dan bentuk orkestrasi

service yang diperlukan.

Pada penelitian ini akan dilakukan pengimplementasian service-service yang

didapatkan pada fase analisis kedalam aplikasi, yang dimana di sini

pengimplentasian service hanya dilakukan pada service pengelolaan siswa yang

dapat digunakan pada fitur perpustakaan dan tata usaha bagian kesiswaan.

Pengimplementasian fitur akan dilakukan pada pembuatan web dengan framework

codeigniter dari fitur perpustakaan dan tata usaha bagian kesiswaan.

40

3.2.6 Pengujian Service

Tujuan dari tahap ini adalah untuk menguji apakah service yang

sudah diimplementasi sudah sesuai dengan yang dirancang. Pengujian dilakukan

sebelum instalasi dilakukan. Pada tahap pengujian ini akan dilakukan pengujian

service menggunakan metode blackbox. Sedangkan untuk pengujian lainnya

dilakukan pengimplementasian service ke dalam 2 buat sistem yang menggunakan

data yang sama yaitu sistem tata usaha dan sistem perpustkaan. Kedua sistem

tersebut menggunakan sebuah data yang sama yaitu data siswa yang ada dalam

service pengelolaan data siswa. Pengimplementasian service ke dalam dua sistem

ini dilakukan untuk menguji sifat reusable dari SOA tersebut.

41

BAB IV

HASIL DAN PEMBAHASAN

4.1 Desain Service Oriented

Pada tahapan desain Service Oriented ini dilakukan pengimplementasian

service yang sudah didapatkan dari tahapan analisa. Pada tahap analisa service

oriented yang menganalisa proses bisnis dan kebutuhan data didapatkan 9 service

yang akan diimplementasikan pada tahapan desain ini. 9 service tersebut telah

sesuai dengan sifat SOA yang reusable sehingga dapat digunakan oleh beberapa

fitur dan aplikasi yang dibutuhkan oleh SMKN 1 Selong. Pengimplementasian

service pada penelitian ini dilakukan dengan menggunakan framework codeigniter.

Berikut adalah penjelasan hasil dari tahap pengimplementasian service yang telah

didapatkan :

4.1.1 Service Pengelolaan Data Administrator

Service pengelolan data administrator digunakan untuk mengelola data dari

admin yang ada pada aplikasi-aplikasi yang dibutuhkan. Oleh karena itu service ini

bisa digunakan untuk membuat aplikasi-aplikasi yang membutuhkan menu login.

Dalam service ini terdapat beberapa fungsi yang didapatkan. Fungsi-fungsi yang

terdapat pada service administrator dapat diliihat pada Tabel 4.1 :

Tabel 4.1 Tabel service pengelolaan data administrator

No Nama Fungsi Kegunaan

1. getAdmin_get() Fungsi ini digunakan untuk mengambil data admin

secara keseluruhan tanpa parameter tertentu.

2. login_get() Fungsi ini digunakan untuk login pada aplikasi.

Pada aplikasi kesiswaan dan aplikasi perpustakaan

fungsi ini digunakan untuk login.

3. tambahAdmin_post() Fungsi ini digunkan untuk menambah data admin

pada database.

4. updateAdmin_put() Fungsi ini digunakan untuk meng-edit data admin.

5. hapusAdmin_delete() Fungsi ini digunakan untuk menghapus data admin.

4.1.2 Service Pengelolaan Data Siswa

Service pengelolaan data siswa digunakan untuk mengelola data siswa.

Berdasarkan identifikasi aplikasi yang dibutuhkan pada SMKN 1 Selong yang

tergambar pada Gambar 3.2 service pengelolaan data siwa dapat digunakan untuk

beberapa aplikasi diantaranya adalah aplikasi kesiswaan, aplikasi perpustakaan,

aplikasi nilai, dan aplikasi keuangan. Dalam service ini terdapat beberapa fungsi

42

yang dapat digunakan untuk mengelola data siswa. Fungsi-fungsi yang terdapat

pada service siswa dapat dilihat pada Tabel 4.2 :

Tabel 4.2 Tabel service pengelolaan data siswa

No Nama Fungsi Kegunaan

1. getSiswa_get() Fungsi ini digunakan untuk menggambil data siswa

secara keseluruhan tanpa parameter tertentu. Pada

aplikasi kesiswaan fungsi ini digunakan untuk fitur

menampilkan data siswa.

2. getSiswabyNis_get() Fungsi ini digunakan untuk menggambil data siswa

berdasarkan nis yang diinginkan. Pada aplikasi

kesiswaan fungsi ini digunakan pada fitur

mengambil data siswa yang akan di-edit maupun

data siswa yang ingin dilihat detailnya.

3. getSiswabyKelas_get() Fungsi ini digunakan untuk menggambil data siswa

berdasarkan kelas yang diinginkan. Pada aplikasi

kesiswaan fungsi ini digunakan untuk fitur

menampilkan data siswa perkelas.

4. tambahSiswa_post() Fungsi ini digunkan untuk menambah data siswa

dan data orangtua dari siswa tersebut pada

database. Pada aplikasi kesiswaan fungsi ini

digunakan untuk menambah data siswa.

5. editSiswa_put() Fungsi ini digunakan untuk meng-edit data siswa.

Pada aplikasi kesiswaan fungsi ini digunakan pada

fitur edit data siswa.

6. hapusSiswa_delete() Fungsi ini digunakan untuk menghapus data siswa.

Pada aplikasi kesiswaan fitur ini digunakan untuk

fitur menghapus data siswa.

7. tambahOrtu_post() Fungsi ini digunakan untuk menammbah data

orangtua siswa.

8. updateOrtu_put() Fungsi ini digunakan untuk meng-edit data

orangtua siswa.

9. deleteOrtu_delete() Fungsi ini digunakan untuk menghapus data

orangtua.

10. getCalon_get() Fungsi ini digunakan untuk menggambil data calon

siswa secara keseluruhan tanpa parameter tertentu.

11. getbyId_get() Fungsi ini digunakan untuk menggambil data calon

siswa berdasarkan nomor pendaftran yang

diinginkan.

12. tambahCalon_post() Fungsi ini digunkan untuk menambah data calon

siswa ke dalam database.

13. editCalon_put() Fungsi ini digunakan untuk meng-edit data calon

siswa.

14. hapusCalon_delete() Fungsi ini digunakan untuk menghapus data calon

siswa.

4.1.3 Service Pengelolaan Data Guru

Service pengelolaan data guru digunakan untuk mengelola data dari guru.

Berdasarkan identifikasi aplikasi yang dibutuhkan pada SMKN 1 Selong yang

43

tergambar pada Gambar 3.2 service ini dapat digunakan dalam pembuatan aplikasi

kepegawaian, aplikasi kurikukum, aplikasi penilaian, dan aplikasi keuangan. Dalam

service ini terdapat beberapa fungsi yang didapatkan. Fungsi-fungsi yang terdapat

pada service guru dapat dilihat pada Tabel 4.3 :

Tabel 4.3 Tabel service pengelolaan data guru

No Nama Fungsi Kegunaan

1. getGuru_get() Fungsi ini digunakan untuk menggambil data guru

secara keseluruhan tanpa parameter tertentu.

2. getGurubyNip_get() Fungsi ini digunakan untuk menggambil data

pegawai berdasarkan nip yang diinginkan.

3. tambahGuru_post() Fungsi ini digunkan untuk menambah data pegawai

pada database.

4. editGuru_put() Fungsi ini digunakan untuk meng-edit data guru.

5. hapusGuru_delete() Fungsi ini digunakan untuk menghapus data guru.

4.1.4 Service Pengelolaan Data Pegawai

Service pengelolaan data pegawai digunakan untuk mengelola data dari

pegawai. Service ini dapat digunakan untuk membangun aplikasi kepegawaian dan

aplikasi keuangan yang ada pada SMKN 1 Selong. Dalam service ini terdapat

beberapa fungsi yang didapatkan. Fungsi-fungsi yang terdapat pada service

pegawai dapat dilihat pada Tabel 4.4 :

Tabel 4.4 Tabel service pengelolaan data pegawai

No Nama Fungsi Kegunaan

1. getPegawai_get() Fungsi ini digunakan untuk menggambil data

pegawai secara keseluruhan tanpa parameter

tertentu.

2. getPegawaibyNip_get() Fungsi ini digunakan untuk menggambil data

pegawai berdasarkan nip yang diinginkan.

3. tambahPegawai_post() Fungsi ini digunkan untuk menambah data

pegawai pada database.

4. editPegawai_put() Fungsi ini digunakan untuk meng-edit data

pegawai.

5. hapusPegawai_delete() Fungsi ini digunakan untuk menghapus data

pegawai.

4.1.5 Service Pengelolaan Data Keuangan

Service pengelolan data nilai digunakan untuk mengelola data keuangan.

Berdasarkan identifikasi aplikasi yang dibutuhkan pada SMKN 1 Selong yang

tergambar pada Gambar 3.2 service ini dapat digunakan untuk membuat aplikasi

44

keuangan dan aplikasi pembayaran SPP. Fungsi-fungsi yang terdapat pada service

keuangan dapat dilihat pada Tabel 4.5 :

Tabel 4.5 Tabel service pengelolaan data keuangan

No Nama Fungsi Kegunaan

1. getGaji_get() Fungsi ini digunakan untuk mengambil data gaji

secara keseluruhan tanpa parameter tertentu.

2. getGajibyId_get() Fungsi ini digunakan untuk mengambil data nilai

gaji berdasarkan nip dari pegawai atau guru.

3. tambahGaji_post() Fungsi ini digunkan untuk menambah data gaji

pada database.

4. updateGaji_put() Fungsi ini digunakan untuk meng-edit data gaji.

5. hapusGaji_delete() Fungsi ini digunakan untuk menghapus data gaji.

6. getSPP_get() Fungsi ini digunakan untuk mengambil data SPP

dari siswa.

7. getSPPbyId_get() Fungsi ini digunakan untuk mengambil data SPP

berdasarkan nis siswa.

8. getSPPbyStatus_get() Fungsi ini digunakan untuk mengambil data SPP

berdasarkan status pembayaran siswa.

9. tambahSPP_post() Fungsi ini digunakan untuk menambah data SPP

pada database.

10. updateSPP_put() Fungsi ini digunakan untuk meng-edit data SPP.

11. hapusSPP_delete() Fungsi ini digunakan untuk menhapus data SPP.

4.1.6 Service Pengelolaan Data Kurikulum

Service pengelolan data nilai digunakan untuk mengelola data kurikulum

seperti data kurikulum dan data matapelajaran. Berdasarkan identifikasi aplikasi

yang dibutuhkan pada SMKN 1 Selong yang tergambar pada Gambar 3.2 service

ini bisa digunakan untuk membuat aplikasi penjadwalan dan kurikulum. Fungsi-

fungsi yang terdapat pada service kurikulum dapat dilihat pada Tabel 4.6 :

Tabel 4.6 Tabel service pengelolaan data kurikulum

No Nama Fungsi Kegunaan

1. getKurikulum_get() Fungsi ini digunakan untuk mengambil data

kerikulum secara keseluruhan tanpa parameter

tertentu.

2. getKurikulumbyId_get() Fungsi ini digunakan untuk mengambil data

kurikulum berdasarkan kode mata pelajaran yang

diinginkan.

3. tambahKurikulum_post() Fungsi ini digunkan untuk menambah data

kurikulum pada database.

4. updateKurikulum_put() Fungsi ini digunakan untuk meng-nilai data

kurikulum.

5. hapusKurikulum_delete() Fungsi ini digunakan untuk menghapus data

kurikulum.

6. getPelajaran_get() Fungsi ini digunakan untuk mengambil data mata

pelajaran secara keseluruhan tanpa parameter

tertentu.

45

No Nama Fungsi Kegunaan

7. getPelajaranbyId_get() Fungsi ini digunakan untuk mengambil data mata

pelajaran berdasarkan kode matapelajaran.

8. tambahPelajaran_post() Fungsi ini digunakan untuk menambah data mata

pelajaran pada data pada database.

9. updatePelajaran_put() Fungsi ini digunakan untuk meng-edit data mata

pelajaran.

10. hapusPelajaran_delete() Fungsi ini digunakan untuk menghapus data mata

pelajaran.

4.1.7 Service Pengelolaan Data Nilai

Service pengelolan data nilai digunakan untuk mengelola data dari nilai

siswa. Dalam service ini terdapat beberapa fungsi yang didapatkan. Berdasarkan

identifikasi aplikasi yang dibutuhkan pada SMKN 1 Selong yang tergambar pada

Gambar 3.2 service ini bisa digunakan untuk membuat aplikasi penilaian. Fungsi-

fungsi yang terdapat pada service nilai dapat dilihat pada Tabel 4.7:

Tabel 4.7 Tabel service pengelolaan data nilai

No Nama Fungsi Kegunaan

1. getNilai_get() Fungsi ini digunakan untuk mengambil data nilai

secara keseluruhan tanpa parameter tertentu.

2. getNilaibyNis_get() Fungsi ini digunakan untuk mengambil data nilai

siswa berdasarkan nis dari siswa tersebut.

3. tambahNilai_post() Fungsi ini digunakan untuk menambah data nilai

pada database.

4. updateNilai_put() Fungsi ini digunakan untuk meng-edit data nilai.

5. hapusNilai_delete() Fungsi ini digunakan untuk menghapus data nilai.

4.1.8 Service Pengelolaan Data Perpustakaan

Service pengelolan data perpustakaan digunakan untuk mengelola data dari

perpustakaan seperti data buku dan data peminjam. Berdasarkan identifikasi

aplikasi yang dibutuhkan pada SMKN 1 Selong yang tergambar pada Gambar 3.2

service ini digunakan untuk pembuatan aplikasi perpustakaan. Dalam service ini

terdapat beberapa fungsi yang didapatkan. Fungsi-fungsi yang terdapat pada service

perpustakaan dapat dilihat pada Tabel 4.8:

Tabel 4.8 Tabel service pengelolaan data perpustakaan

No Nama Fungsi Kegunaan

1. getBuku_get() Fungsi ini digunakan untuk menggambil data

buku secara keseluruhan tanpa parameter

tertentu. Pada aplikasi perpustakaan fungsi ini

digunakan untuk fitur menampilakan data buku

pada aplikasi.

2. getBukubyId_get() Fungsi ini digunakan untuk menggambil data

buku berdasarkan id buku yang diinginkan. Pada

46

No Nama Fungsi Kegunaan

aplikasi fungsi ini digunakan untuk mengambil

data buku yang akan di-edit.

3. tambahBuku_post() Fungsi ini digunkan untuk menambah data buku

pada database. Pada aplikasi perpustakaan fungsi

ini digunakan untuk menambah data buku.

4. updateBuku_put() Fungsi ini digunakan untuk meng-edit data buku.

Pada aplikasi perpustakaan fungsi ini digunakan

untuk fitur meng-edit data buku.

5. hapusBuku_delete() Fungsi ini digunakan untuk menghapus data

buku. Pada aplikasi perpustakaan fungsi ini

digunaan untuk fitur menghapus data buku.

6. getPeminjam_get() Fungsi ini digunakan untuk mengambil data

peminjam secara keseluruhan tanpa parameter

tertentu. Pada aplikasi perpustakaan fungsi ini

digunakan untuk fitur menampilkan data

peminjam.

7. getPeminjambyId_get() Fungsi ini digunakan untuk mengambil data

peminjam berdasarkan id dari peminjam. Pada

aplikasi perpustakaan fungsi ini digunakan untuk

mengambil data peminjam yang akan di-edit

8. getPeminjambyStatus_get() Fungsi ini digunakan untuk mengambil data dari

peminjam berdasarkan status pengembalian buku

dari peminjam tersebut. Pada aplikasi

perpustakaan fungsi ini digunakan pada fitur

menampilkan peminjam dan menampilkan data

rekapan

9. tambahPeminjam_post() Fungsi ini digunakan untuk menambah data

peminjam pada database. Pada aplikasi

perpustakaan fungsi ini digunakan untuk fitur

menambah data peminjam.

10. updatePeminjam_put() Fungsi ini digunakan untuk meng-edit data

peminjam. Pada aplikasi perpustakaan fingsi ini

digunakan untuk fitur meng-edit data peminjam.

11. hapusPeminjam_delete() Fungsi ini digunakan untuk menghapus data

peminjam. Pada aplikasi perpustakaan fungsi ini

digunakan untuk fitur menghapus data peminjam.

4.1.9 Service Pengelolaan Data Sarana dan Prasana

Service pengelolan data nilai digunakan untuk mengelola data dari sarana

dan prasarana seperti ruangan, inventaris, dan alat pembelajaran. Berdasarkan

identifikasi aplikasi yang dibutuhkan pada SMKN 1 Selong yang tergambar pada

Gambar 3.2 service ini dapat digunakan untuk membuat aplikasi sarana dan

prasarana. Fungsi-fungsi yang terdapat pada service sarana dan parasarana dapat

dilihat pada Tabel 4.9 :

47

Tabel 4.9 Tabel service pengelolaan data sarana dan prasarana

No Nama Fungsi Kegunaan

1. getRuangan_get() Fungsi ini digunakan untuk mengambil data

ruangan secara keseluruhan tanpa parameter

tertentu.

2. getRuangaanbyId_get() Fungsi ini digunakan untuk mengambil data

ruangan berdasarkan id ruangan.

3. tambahRuangan_post() Fungsi ini digunkan untuk menambah data

ruangan pada database.

4. updateRuangan_put() Fungsi ini digunakan untuk meng-edit data

ruangan.

5. hapusRuangan_delete() Fungsi ini digunakan untuk menghapus data

ruangan.

6. getInventaris_get() Fungsi ini digunakan untuk mengambil data

inventaris secara keseluruhan tanpa parameter

tertentu.

7. getInventarisbyId_get() fungsi ini digunakan untuk mengambil data

inventaris berdasarkan is inventaris.

8. tambahInventaris_post() Fungsi ini digunakan untuk menambah data

inventaris pada database.

9. updateInventaris_put() Fungsi ini digunakan untuk meng-edit data

inventaris.

10. hapusInventaris_delete() Fungsi ini digunakan untuk menghapus data

inventaris.

11. getAlat_get() Fungsi ini digunakan untuk mengambil data alat

pembelajaran secara keseluruhan tanpa parameter

tertentu.

12. getAlatbyId_get() Fungsi ini digunakan untuk mengambil data alat

pembelajaran bedasarkan id alat pembelajaran

13. tambahAlata_post() Fungsi ini digunkan untuk menambah data alat

pembelajaran pada database.

14. updateAlat_put() Fungsi ini digunakan untuk meng-edit data alat

pembelajaran.

15. hapusAlat_delete() Fungsi ini digunkan untuk menghapus data alat

pembelajaran.

4.2 Pengembangan Service Oriented Architecture

Pada SMKN 1 Selong dibutuhkan beberapa aplikasi utnuk menunjang

berjalannya proses administrasi serta proses pembelajaran. Aplikasi-aplikasi

tersebut diharapkan dapat mempermudah para pegawai, guru, dan siswa dalam

melakukan pertukaran data dan informasi. Aplikasi-aplikasi yang dibutuhkan oleh

SMKN 1 Selong diantarannya adalah aplikasi kesiswaan, aplikasi kepegawaian,

aplikasi keuangan, aplikasi pembayaran SPP, aplikasi perpustakaan, aplikasi sarana

dan prasarana, aplikasi penjadwalan dan kurikulum, aplikasi penerimaan siswa

baru, serta aplikasi penilaian.

48

Pada penelitian ini akan dilakukan pengimplementasian service-service yang

didapatkan pada fase analisis kedalam aplikasi, yang dimana di sini

pengimplentasian service hanya dilakukan pada service pengelolaan siswa yang

dapat digunakan pada aplikasi perpustakaan dan tata usaha bagian kesiswaan.

Pengimplementasian aplikasi akan dilakukan pada pembuatan web dengan

framework codeigniter.

4.2.1 Aplikasi Tata Usaha Bagian Kesiswaan

Aplikasi kesiswaan merupakan aplikasi yang digunakan oleh tata usaha bagian

kesiswaan untuk mengelola data siswa dan data orangtua/wali dari siswa tersebut.

Aplikasi ini dibangun menggunakan framework codeigniter dan menggunakan

service pengelolaan data siswa untuk pengelolaan data dan service administrator

untuk login. Berikut adalah sitemap dari aplikasi kesiswaan :

HOME

Data SiswaTambah Data

SiswaData Siswa

MutasiTambah data Siswa Mutasi

Data Siswa Perkelas

Teknik OtomotifTeknik

InformatikaTeknik Mesin

Teknik Bangunan

X XI XII X XI XII X XI XII X XI XII

X. TKRO

X. TBSM

X. TO

X. TBO

XI. TKRO

XI. TBSM

XI. TO

XI. TBO

XII. TKRO

XII. TBSM

XII. TO

XII. TBO

X. TKJ

X.RPL

X. MM

X. DG

XI. TKJ

XI. RPL

XI. MM

XI. MM

XII. TKJ

XII. RPL

XII. MM

XII. RPL

XII.DPIB

XII. DITF

XII. BKP

XII. KESP

XI. DPIB

XI. DITF

XI. BKP

XI. KESP

X.DPIB

X. DITF

X. BKP

X. KESP

X. DPIB

X. DITF

X. BKP

X. KESP

XI. DPIB

XI. DITF

XI. BKP

XI. KESP

X. DPIB

X. DITF

X. BKP

X. KESP

Gambar 4.1 Sitemaps aplikasi kesiswaan

Dalam aplikasi ini terdapat beberapa fitur diantaranya adalah fitur

menampilkan data seluruh siswa, menampilkan data siswa perkelas, menambah

data siswa, mengedit data siswa, menghapus data siswa, menampilkan detail data

siswa, mencetak data siswa, menampilkan data siswa mutasi, menambah data siswa

mutasi, meng-edit data siswa mutasi, serta menghapus data siswa mutasi. Aplikasi

kesiswaan ini digunakan oleh pegawai tata usaha bagian kesiswaan. Tampilan dari

aplikasi kesiswaan yang telah dibangun dapat dilihat pada Gambar 4.2 sampai

Gambar 4.13. Pada pengembangan aplikasi ini digunakan template dari

AdminLTE.IO.[11]

49

1. Halaman Login

Gambar 4.2 Halaman login

Halaman login ini merupakan tampilan awal apabila aplikasi dijalankan. Untuk

login ke dalam sistem admin harus memasukkan username dan password. Jika

username dan password sesuai, maka akan ditampilkan halaman Home dari aplikasi

ini.

2. Halaman Home

Gambar 4.3 Halaman home aplikasi kesiswaan

Halaman home ini merupakan halaman yang akan ditampilkan setelah admin

melalukan login. Pada halaman ini terdapat beberapa fitur yaitu : fitur tambah data

siswa, lihat data siswa, tambah data mutasi, dan lihat data mutasi.

50

3. Halaman Siswa

Gambar 4.4 Halaman untuk menampilkan data siswa

Halaman siswa perkelas ini menampilkan halaman siswa perkelas. Pada

halaman ini bisa dilakukan proses tambah siswa, edit siswa, lihat detail data siswa,

dan hapus data siswa.

4. Halaman Siswa Perkelas

Gambar 4.5 Halaman untuk menampilkan data siswa perkelas

51

Halaman siswa perkelas ini menampilkan halaman siswa perkelas. Pada

halaman ini bisa dilakukan proses tambah siswa, edit siswa, lihat detail data siswa,

dan hapus data siswa.

5. Halaman Tambah Data Siswa

Gambar 4.6 Halaman tambah data siswa

Halaman tambah data siswa ini merupakan halaman yang menampilkan form

untuk menambah data siswa. Selain data siswa terdapat pula form untuk menambah

data orangtua dan wali siswa.

6. Halaman Edit Data Siswa

Gambar 4.7 Halaman edit data siswa

52

Halaman edit data siswa ini merupakan halaman untuk mengedit data siswa.

Pada halaman ini terdapat form data siswa yang akan di-edit.

7. Halaman Detail Data Siswa

Gambar 4.8 Halaman detail data siswa

Halaman detail data siswa ini merupakan halaman yang menampilkan detail

dari data siswa, orangtua siswa, dan wali siswa.

8. Halaman Print Data Siswa

Gambar 4.9 Halaman print data siswa

Halaman ini digunakan untuk mencetak data siswa yang diinginkan.

53

9. Halaman Siswa Mutasi

Gambar 4.10 Halaman menampilkan data siswa mutasi

Halaman siswa mutasi merupakan halaman yang digunakan untuk

menampilkan data dari siswa yang mutasi atau siswa yang keluar dan masuk. Dari

halaman ini bisa dilakukan proses tambah data siswa mutasi, edit data siswa mutasi,

dan hapus siswa mutasi.

10. Halaman Tambah Data Siswa Mutasi

Gambar 4.11 Halaman tambah data siswa mutasi

54

Halaman tambah data siswa mutasi ini merupakan halaman yang berisikan

form untuk menambah data siswa mutasi.

11. Halaman Edit Siswa Mutasi.

Gambar 4.12 Halaman edit data siswa mutasi

Halaman edit siswa ini merupakan halaman untuk meng-edit data siswa yang

diinginkan.

4.2.2 Aplikasi Perpustakaan

Aplikasi perpustakaan merupakan aplikasi yang digunakan untuk mengelola

data peminjam yang dimana peminjam disini adalah siswa SMKN 1 Selong dan

data buku yang terdapat pada perpustakaan. Aplikasi ini dapat digunakan oleh

pegawai perpustakaan dan juga siswa. Aplikasi ini menggunakan teknologi web

dengan framework codeigniter dan digunakan service pengelolaan data siswa untuk

pengelolaan datanya dan service administrator untuk login.. Berikut adalah sitemap

dari aplikasi perpustakaan :

55

Login Admin

Data Siswa

Tambah Data Peminjam

Data Buku

Tambah data Buku

Data Peminjam

Data Siswa

Data Buku

Home Admin

Home

Gambar 4.13 Sitemap aplikasi perpustakaan SMKN 1 Selong

Dalam aplikasi ini terdapat beberapa fitur yang dapat diakses oleh pegawai

perpustkaan diantaranya adalah menampilkan data siswa, menampilkan data

peminjam, menambah data peminjam, meng-edit data peminjam, menghapus data

peminjam, menampilkan data rekapan peminjam, menmapilkan data buku,

menmabah data buku, meng-edit data buku, serta menghapus data buku pada

perpustakaan SMKN 1 Selong. Sedangkan fitur yang bias diakses oleh siswa

diantaranya adalah melihat data pinjaman buku dan melihat data buku Tampilan

dari aplikasi perpustakaan yang telah dibangun dapat dilihat pada Gambar 4.14

sampai Gambar 4.24. Pada pengembangan aplikasi ini digunakan template dari

AdminLTE.IO.[11]

56

1. Halaman Home User

Gambar 4.14 Halaman home user

Halaman home user ini merupakan tampilan awal apabila aplikasi dijalankan.

Pada halaman ini terdapat 2 menu yaitu daftar buku dan login untuk admin.

Halaman ini bisa digunakan oleh siswa untuk melihat daftar buku yang tersedia

pada perpustakaan. Dan halaman ini juga bisa digunakan login oleh pegawai

perpustakaan untuk mengelola data buku dan peminjam.

2. Halaman Daftar Buku Untuk Siswa.

Gambar 4.15 Daftar buku untuk siswa

57

Halaman buku merupakan halaman yang berisikan data-data buku yang ada di

Perpustakaan SMKN 1 Selong.

3. Halaman Login

Gambar 4.16 Halaman login

Halaman login ini merupakan tampilan awal apabila aplikasi dijalankan. Untuk

login ke dalam sistem admin harus memasukkan username dan password. Jika

username dan password sesuai, maka akan ditampilkan halaman Home dari aplikasi

ini.

4. Halaman Home Admin

Gambar 4.17 Halaman home untuk aplikasi perpustakaan

58

Halaman home ini merupakan halaman yang akan ditampilkan setelah admin

melalukan login. Pada halaman ini terdapat beberapa fitur yaitu : fitur tambah data

peminjam, tambah data buku, lihat data peminjam, dan lihat data buku.

5. Halaman Peminjam

Gambar 4.18 Halaman data peminjam

Halaman peminjam merupakan halaman yang menampilkan peminjam buku

pada perpustakaan dengan status belum mengembalikan buku.

6. Halaman Tambah Data Peminjam

Gambar 4.19 Halaman tambah data peminjam

59

Halaman tambah data peminjam merupakan halaman yang berisikan form

untuk menambah peminjam buku pada perpustakaan.

7. Halaman Edit Data Peminjam

Gambar 4.20 Halaman edit data peminjam

Halaman edit data peminjam merupakan halaman untuk meng-edit data

peminjam atau mengubah statis peminjam yang sebelumnya belum mengembalikan

menjadi sudah mengembalikan.

8. Halaman Buku

Gambar 4.21 Halaman untuk menampilkan data buku

60

Halaman buku merupakan halaman yang berisikan data-data buku yang ada di

Perpustakaan SMKN 1 Selong. Pada halaman ini dapat dilakukan proses edit dan

hapus data buku.

9. Halaman Tambah Data Buku

Gambar 4.22 Halaman tambah data buku

Halaman ini merupakan halaman untuk menambah data buku baru yang ada di

Perpustakaan SMKN 1 Selong.

10. Halaman Edit Data Buku

Gambar 4.23 Halaman edit data buku

Halaman edit data buku merupakan halaman untuk meng-edit data buku.

61

11. Halaman Rekapan

Gambar 4.24 Halaman rekapan peminjam data perpustakaan

Halaman rekapan merupakan halaman yang digunakan untuk menampilkan

data peminjam dengan status sudah mengembalikan buku. Pada halaman ini dapat

dilakukan proses edit dan hapus peminjam.

4.3 Pegujian Service Oriented Architecture

Pengujian Service Oriented Architecture (SOA) pada penelitian ini dilakukan

dengan dua cara yaitu : Menggunakan metode blackbox dan pengujian pada aplikasi

tata usaha bagian kesiswaan serta aplikasi perpustakaan.

4.3.1 Pengujian Menggunakan Black Box

Berikut adalah tabel pengujian blackbox dari service yang telah diimplementasikan.

Pengujian ini dilakukan dengan menggunakan postman yang merupakan aplikasi

yang digunakan untuk menguji REST API yang telah dibuat. Berikut contoh cara

pengujian menggunakan aplikasi postman dengan metode GET, POST, PUT, dan

DELETE :

1. GET

Metode get digunakan untuk mengambil data pada database. Pada aplikasi ini

digunakan dua cara pengambilan data yaitu pengambilan data secara keseluruhan

dan pengambilan data dengan parameter tertentu.

62

Untuk pengujian postman dipilih metode get dan masukkan

http://192.168.0.110/smk1selong/index.php/service_siswa/siswa pada address bar

lalu klik “Send”. Berikut adalah hasil dari metode get untuk yang tidak

menggunakan parameter.

Gambar 4.25 Metode get pada postman

Hasil dari metode get pada Gambar 4.25 adalah data siswa yang terdapat

pada tabel siswa di database. Data yang diambil adalah data siswa secara

keseluruhan tanpa parameter tertentu.

Untuk pengujian postman dengan menggunakan metode get yag

menggunakan parameter dipilih metode get dan masukkan link

http://192.168.0.110/smk1selong/index.php/service_siswa/getsiswabyid?nis=1

pada address bar lalu klik “Send”. Berikut adalah hasil dari metode get untuk yang

menggunakan parameter.

Gambar 4.26 Hasil postman untuk metode get.

63

Hasil dari metode get pada Gambar 4.26 adalah data siswa yang terdapat

pada tabel siswa di database. Data yang diambil adalah data siswa yang memiliki

nis 1.

2. POST

Metode post digunakan untuk menambah data pada database. Untuk pengujian

postman dipilih metode post dan masukkan link

http://192.168.1.5/smk1selong/index.php/service_perpustakaan/tambahPeminjam

pada address bar, klik “Body” pada menu dibawah address bar, kemudian pilih

form-data dan masukkan key dan value yang diperlukan, lalu klik “Send”. Berikut

adalah hasil dari metode post pada postman.

Gambar 4.27 Hasil postman untuk metode post.

Hasil metode post pada Gambar 4.27 merupakan massage bahwa data siswa yang

di-input-kan sudah di-upload ke dalam database.

3. PUT

Metode put digunakan untuk memperbaharui data yang telah ada. Untuk pengujian

postman untuk metode put dimasukkan link

http://192.168.1.5/smk1selong/index.php/service_perpustakaan/updatePeminjam

pada address bar lalu klik “Body” pada menu di bawah address bar, pilih x-www-

form-urlencoded, kemudian masukkan key id dan value id yang akan di ubah diikuti

64

key dan value selanjutnya, lalu klik “Send”. Berikut adalah hasil dari metode put

pada postman.

Gambar 4.27 Metode put pada postman.

Hasil metode put pada Gambar 4.27 merupakan massage bahwa data yang ingin

di-edit telah berhasil di-edit pada database.

4. DELETE

Motede delete digunakan untuk menghapus data yang telah ada. Untuk pengujian

postman untuk metode delete dimasukkan link

http://192.168.0.110/smk1selong/index.php/service_perpustakaan/hapusPeminjam

?id=2 pada address bar dan masukkan key id dan value id data yang ingin dihapus,

lalu klik “Send”. Berikut adalah hasil dari metode delete pada postman.

Gambar 4.28 Hasil metode delete pada postman.

65

Hasil dari metode delete pada Gambar 4.28 merupakan massage bahwa data yang

ingin dihapus telah dapat dihapus dari database.

Hasil pengujian untuk semua service beserta fungsi-fungsi yang ada pada

service tersebut dapat dilihat pada Tabel 4.10.

Tabel 4.10 Tabel pengujian black box service

No. Nama Service Nama Fungsi Hasil yang diinginkan Hasil

1. Service Siswa siswa_get() Data siswa secara

keseluruhan

Valid

getsiswabyid_get() Data siswa yang

diinginkan sesuai nis

Valid

Getsiswabykelas_get() Data siswa

berdasarkan kelas

Valid

tambahSiswa_post() Memasukkan data

siswa dan didapatkan

hasil “true”

Valid

updateSiswa_put() Mengubah data siswa

dan didapatkan hasil

“true”

Valid

hapusSiswa_delete() Mengahapus data

siswa yang diinginkan

dan didapatkan pesan

“Data berhasil

dihapus”

Valid

tambahOrtu_post() Memasukkan data

orangtua dan

didapatkan hasil “true”

Valid

updateOrtu_put() Mengubah data

orangtua dan

didapatkan hasil “true”

Valid

hapusOrtu_delete() Mengahapus data

orangtua yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

getCalon_get() Data calon siswa

secara keseluruhan

Valid

getcalonbyid_get() Data calon siswa yang

diinginkan sesuai nis.

Valid

tambahCalon_post() Memasukkan data

calon siswa dan

didapatkan hasil “true”

Valid

updateCalon_get() Mengubah data calon

siswa dan didapatkan

hasil “true”

Valid

66

No. Nama Service Nama Fungsi Hasil yang diinginkan Hasil

hapusCalon_get() Mengahapus data

calon siswa yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

2. Service

Pegawai

getPegawai_get() Data pegawai secara

keseluruhan

Valid

getPegawaibyNip_get() Data pegawai yang

diinginkan sesuai nip.

Valid

tambahPegawai_post() Memasukkan data

pegawai dan

didapatkan hasil “true”

Valid

updatePegawai_put() Mengubah data

pegawai dan

didapatkan hasil “true”

Valid

hapusPegawai_delete() Mengahapus data

pegawai yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

3. Service Guru guru_get() Data guru secara

keseluruhan

Valid

getGurubyNip_get() Data guru yang

diinginkan sesuai nip.

Valid

tambahGuru_post() Memasukkan data

guru dan didapatkan

hasil “true”

Valid

updateGuru_put() Mengubah data guru

dan didapatkan hasil

“true”

Valid

hapusGuru_delete() Mengahapus data guru

yang diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

4. Service

Perpustakaan

buku_get() Data buku secara

keseluruhan

Valid

getBukubyId_get() Data buku yang

diinginkan sesuai id

buku.

Valid

tambahBuku_post() Memasukkan data

buku dan didapatkan

hasil “true”

Valid

updateBuku_put() Mengubah data buku

dan didapatkan hasil

“true”

Valid

hapusBuku_delete() Mengahapus data buku

yang diinginkan dan

Valid

67

No. Nama Service Nama Fungsi Hasil yang diinginkan Hasil

didapatkan pesan

“Data berhasil

dihapus”

peminjam_get() Data peminjam secara

keseluruhan

Valid

getPeminjambyId_get() Data peminjam yang

diinginkan sesuai id

peminjam.

Valid

getPeminjambyStatus_get

()

Data peminjam yang

diinginkan sesuai

status

Valid

tambahPeminjam_post() Memasukkan data

peminjam dan

didapatkan hasil “true”

Valid

updatePeminjam_put() Mengubah data

peminjam dan

didapatkan hasil “true”

Valid

hapusPeminjam_delete() Mengahapus data

peminjam yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

5. Service

Administrator

admin_get() Data admin secara

keseluruhan

Valid

tambahAdmin_post() Memasukkan data

buku dan didapatkan

hasil “true”

Valid

updateAdmin_put() Mengubah data buku

dan didapatkan hasil

“true”

Valid

hapusAdmin_delete() Mengahapus data buku

yang diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

6. Service Nilai getNilai_get() Data nilai secara

keseluruhan

Valid

getNilaibyNis_get() Data nilai yang

diinginkan sesuai nis.

Valid

tambahNilai_post() Memasukkan data

nilai dan didapatkan

hasil “true”

Valid

updateNilai_put() Mengubah data nilai

dan didapatkan hasil

“true”

Valid

hapusNilai_delete() Mengahapus data nilai

yang diinginkan dan

didapatkan pesan

Valid

68

No. Nama Service Nama Fungsi Hasil yang diinginkan Hasil

“Data berhasil

dihapus”

7. Service

Kurikulum

kurikulum_get() Data kurikulum secara

keseluruhan

Valid

getKurikulumbyId_get() Data kurikulum yang

diinginkan sesuai id

kurikulum.

Valid

tambahKurikulum_post() Memasukkan data

kurikulum dan

didapatkan hasil “true”

Valid

updateKurikulum_put() Mengubah data

kurikulum dan

didapatkan hasil “true”

Valid

hapusKurikulum_delete() Mengahapus data

kurikulum yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

pelajaran_get() Data matapelajaran

secara keseluruhan

Valid

getPelajaranbyId_get() Data matapelajaran

yang diinginkan sesuai

id matapelajaran.

Valid

tambahPelajaran_post() Memasukkan data

matapelajaran dan

didapatkan hasil “true”

Valid

updatePelajaran_put() Mengubah data

matapelajaran dan

didapatkan hasil “true”

Valid

hapusPelajaran_delete() Mengahapus data

matapelajaran yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

8. Service

Keuangan

gaji_get() Data gaji secara

keseluruhan

Valid

getGajibyId_get() Data gaji yang

diinginkan sesuai nip.

Valid

tambahGaji_post() Memasukkan data gaji

dan didapatkan hasil

“true”

Valid

updateGaji_put() Mengubah data gaji

dan didapatkan hasil

“true”

Valid

hapusGaji_delete() Mengahapus data gaji

yang diinginkan dan

didapatkan pesan

Valid

69

No. Nama Service Nama Fungsi Hasil yang diinginkan Hasil

“Data berhasil

dihapus”

SPP_get() Data spp secara

keseluruhan

Valid

getSPPbyId_get() Data spp yang

diinginkan sesuai nis.

Valid

getSPPbyStatus_get() Data spp yang

diinginkan sesuai

status.

Valid

tambahSPP_post() Memasukkan data spp

dan didapatkan hasil

“true”

Valid

updateSPP_put() Mengubah data spp

dan didapatkan hasil

“true”

Valid

hapusSPP_delete() Mengahapus data spp

yang diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

9. Service

Sarana dan

Prasarana

ruangan_get() Data ruangan secara

keseluruhan

Valid

getRuangaanbyId_get() Data ruangan yang

diinginkan sesuai is

ruangan.

Valid

tambahRuangan_post() Memasukkan data

ruangan dan

didapatkan hasil “true”

Valid

editRuangan_put() Mengubah data

ruangan dan

didapatkan hasil “true”

Valid

hapusRuangan_delete() Mengahapus data

ruangan yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

inventaris_get() Data inventaris secara

keseluruhan

Valid

getInventarisbyId_get() Data inventaris yang

diinginkan sesuai nip.

Valid

tambahInventaris_post() Memasukkan data

inventaris dan

didapatkan hasil “true”

Valid

updatetInventaris_put() Mengubah data

inventaris dan

didapatkan hasil “true”

Valid

hapusInventaris_delete() Mengahapus data

inventaris yang

diinginkan dan

Valid

70

No. Nama Service Nama Fungsi Hasil yang diinginkan Hasil

didapatkan pesan

“Data berhasil

dihapus”

alat_get() Data alat pembelajaran

secara keseluruhan

Valid

getAlatbyId_get() Data alat pembelajaran

yang diinginkan sesuai

id alat pembelajaran.

Valid

tambahAlata_post() Memasukkan data alat

pembelajaran dan

didapatkan hasil “true”

Valid

updateAlat_put() Mengubah data alat

pembelajaran dan

didapatkan hasil “true”

Valid

hapusAlat_delete() Mengahapus data alat

pembelajaran yang

diinginkan dan

didapatkan pesan

“Data berhasil

dihapus”

Valid

4.3.2 Pengujian Aplikasi Kesiswaa SMKN 1 Selong

Aplikasi kesiswaan SMKN 1 Selong ini merupakan aplikasi yang berfokus pada

Tata Usaha bagian kesiswaan. Pada bagian kesiswaan dillakukan pengelolaan data

siswa dari SMKN 1 Selong. Pengujian pada aplikasi ini menggunakan service

administrator dan service siswa. Hasil pengujian blackbox dari aplikasi kesiswaan

ini dapat dilihat pada Tabel 4.11.

Tabel 4.11 Tabel pengujian black box untuk aplikasi kesiswaan

No Fitur Hasil yang diharapkan Hasil

1. Login Masuk ke halaman home apabila

username dan password sama.

Valid

2. Tambah Data Siswa Mengisi form tambah data siswa

dan data siswa ditampilkan pada

tabel siswa.

Valid

3. Edit Data Siswa Mengubah data siswa pada form

data siswa kemudian

menyimpan data tersebut.

Valid

71

No Fitur Hasil yang diharapkan Hasil

4. Delete Data Siswa Menghapus data siswa dan data

tersebut tidak lagi ditampilkan

pada halaman tabel siswa.

Valid

5. Detail Data Siswa Ditampilkan data siswa secara

lengkap yang diinginkan.

Valid

6. Lihat Data Siswa Ditampilkan data siswa pada

sebuah tabel.

Valid

7. Lihat Data Siswa Perkelas Ditampilkan data siswa perkelas

pada suatu tabel.

Valid

8. Tambah Data Siswa Mutasi Mengisi data pada form tambah

data mutasi dan data tersebut

ditampilkan pada tabel siswa

mutasi.

Valid

9. Edit Data Siswa Mutasi Mengubah data pada form data

mutasi dan data tersebut

disimpan.

Valid

10. Delete Data Siswa Mutasi Menghapus data siswa mutasi

dan data tersebut tidak

ditampilkan lagi dalam tabel

data siswa mutasi

Valid

11. Lihat Data Siswa Mutasi Ditampilkan data siswa mutasi. Valid

4.3.3 Pengujian Aplikasi Perpustkaan SMKN 1 Selong

Aplikasi kesiswaan SMKN 1 Selong ini merupakan aplikasi yang berfokus pada

Tata Usaha bagian kesiswaan. Pada bagian kesiswaan dillakukan pengelolaan data

siswa dari SMKN 1 Selong. Pengujian pada aplikasi ini menggunakan service

administrator dan perpustakaan. Hasil pengujian blackbox dari aplikasi

perpustakaan ini dapat dilihat pada Tabel 4.11.

Tabel 4.12 Tabel pengujian black box untuk aplikasi perpustakaan

No Fitur Hasil yang diinginkan Hasil

1. Login Admin Masuk ke halaman home admin

apabila username dan password

sama.

Valid

72

No Fitur Hasil yang diinginkan Hasil

2. Tambah Data Peminjam Mengisi form data tambah peminjam

dan data tersebut ditampilkan pada

tabel peminjam.

Valid

3. Edit Data Peminjam Mengubah data pada form data

peminjam dan menyimpannya.

Valid

4. Delete Data Peminjam Menghapus data peminjam dan data

tersebut tidak lagi ada pada tabel

peminjam.

Valid

5. Detail Data Peminjam Menampilkan secara lengkap data

peminjam.

Valid

6. Lihat Data Peminjam Menampilkan data peminjam dengan

status belum mengembalikan buku

dalam bentuk tabel.

Valid

7. Lihat Data Rekapan Menampilkan data peminjam dengan

status telah mengembalikan buku

dalam bentuk tabel.

Valid

8. Tambah Data Buku Mengisi form data buku dan

menampilkannya dalam tabel buku.

Valid

9. Edit Data Buku Mengubah data pada form data buku

dan menyimpannya.

Valid

10. Delete Data Buku Menghapus data buku dan tidak lagi

ada pada tabel data buku.

Valid

11. Lihat Data Buku Ditampilkan data buku dalam bentuk

table.

Valid

4.4 Pembahasan

Berdasarkan hasil analisa oriented yang menganalisa proses bisnis dan

kebutuhan data didapatkan 9 service yaitu: service siswa, service pegawai, service

guru, service perpustakaan, service keuangan, service nilai, service kurikulum,

service administrator, serta service sarana dan prasarana, kemudian service-service

ini diimplementasikan kedalam web service dengan menggunakan framework

codeigniter.

73

Pengujian service yang dilakukan ada dua cara yaitu dengan menggunakan

metode black box dengan tool postman dan pengujian pada aplikasi kesiswaan serta

perpustakaan. Pada pengujian service menggunakan metode black box didapatkan

hasil yang valid pada semua fungsi yang ada terdapat dalam service-service

tersebut. Sedangkan dalam pengujian dengan menggunakan aplikasi kesiswaan dan

aplikasi perpustakaan ini menguji sifat dari SOA yaitu reusable, dimana service-

service tersebut dapat digunakan berkali-kali pada apliaksi yang berbeda. Pada

pengujian ini service yang digunakan secara bersama oleh kedua aplikasi ini adalah

service administrator yang digunakan untuk fitur login pada masing-masing

aplikasi dan service siswa yang digunakan untuk menampilkan data siswa pada

masing-masing aplikasi.

Penggunaan service pada aplikasi ini adalah sebagai server penyedia data yang

dapat diambil oleh aplikasi dengan memanggil URL dari fungsi yang ada dalam

service tersebut. Dengan menggunakan service sebuah aplikasi berbasis MVC tidak

lagi menggunakan model karena data-data yang diperlukan sudah disediakan oleh

service yang ada.

74

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Kesimpulan yang dapat diambil dari perancanagan dan pembangunan Service

Oriented Architecture (SOA) pada SMK NEGERI 1 Selong ini adalah :

1. Dari analisa yang telah dilakukan didapatkan 9 service yaitu service siswa,

service pegawai, service guru, service nilai, service keuangan, service

kurikulum, service perpustakaan, service sarana dan prasarana, dan service

administrator.Service-service tersebut diimplementasikan menggunakan

teknolog web service dengan framework codeigniter. Untuk pengujian service

juga dibangun dua aplikasi yaitu, aplikasi kesiswaan dan aplikasi perpustakaan

berbasis web.

2. Berdasarkan pengujian aplikasi kesiswaan dan perpustakaan dibuktikan bahwa

Service Oriented Architecture (SOA) bersifat reusable yang artinya fungsi

pada service-service tersebut bisa digunakan secara berulang.

3. Pada penerapan SOA didalam aplikasi didapatkan kemudahan yaitu tidak perlu

membuat model yang ada pada aplikasi untuk mengelola database karena data

tersebut dapat diakses melalui service dengan memanggil fungsi yang

dibutuhkan pada service tersebut. Dengan menggunaan SOA service-service

yang dibangun lebih teratur daripada membangun service tanpa SOA sehingga

dapat mengurangi redudansi dalam pembuatan fungsi.

5.2 Saran

1. Pada penelitian selanjutkan diharapkan agar analisa dilakukan secara

mendalam agar SOA dapat digunakan diberbagai SMK yang ada di Nusa

Tenggara Barat.

2. Pada penelitian selanjutnya diharapkan di adakan pengujian untuk SOA yang

dapat diakses di web maupun di mobile agar pengembangan aplikasi dapat

dengan mudah dilakukan.

3. Pada penelitian selanjutnya diharapkan pngembangan SOA dengan

memehatikan keamanan service-service yang ada.