BAB I PENDAHULUAN - Perpustakaan Fakultas Teknik
-
Upload
khangminh22 -
Category
Documents
-
view
0 -
download
0
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
status
memiliki
1
m
pangkat/gol
pendidikan
masa_kerja
jabatan
nama
NIK
alamat
ttl
jns_klm
agama
no_hp
NIP
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.