Institutional Repository | Satya Wacana Christian University: "Penerapan RESTful Web Service dan JSON pada Application Programming Interface (API) Sistem Informasi Perkembangan Ayam Broiler Berbasis Kemitraan "

Penerapan RESTful Web Service dan JSON pada Application Programming Interface (API)

Sistem Informasi Perkembangan Ayam Broiler Berbasis Kemitraan

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi untuk memperoleh Gelar Sarjana Komputer

Peneliti: Dody Agung Saputro (672011206) Hindriyanto D. Purnomo, S.T., MIT., Ph.D. Ramos Somya, S.Kom., M.Cs.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Januari 2015

Penerapan RESTful Web Service dan JSON pada Application Programming Interface (API) Sistem Informasi Perkembangan Ayam Broiler Berbasis Kemitraan

Dody Agung Saputro, 3) Hindriyanto Dwi Purnomo, Ramos Somya

Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email: 2) dodyags@gmail.com, hindriyanto.purnomo@staff.uksw.edu,

3) ramos.6005@gmail.com

Abstract

In broiler chicken farms based on partnership, the growth of broiler chickens monitored intensively by extension workers. With the large number of breeders then the manual process of report, handle, and monitor takes a long time and the data can not be seen directly by the company so we need a technology to minimize those problems. This research resulted a broiler chicken growth information system Application Programming Interface (API) based on partnerships that can be used by breeders, breeder partners and extension workers to facilitate the process of reporting, handling and monitoring by the company in realtime. The API technology can be applied as a data center and a data provider in the system. The combination of RESTful web service and JSON into the API makes the integration can be done safely, simple and easy to use. Use of the broiler chicken growth information system API potentially to be applied to complement the existing manual processes on many farms based on partnership. Keywords : RESTful, JSON, API, Information System, Chicken Growth, Partnership.

Abstrak

Pada peternakan ayam broiler dengan pola kemitraan, perkembangan ayam broiler dipantau secara intensif oleh petugas penyuluh lapangan (PPL). Semakin banyaknya jumlah anak kandang maka proses pelaporan, penanganan dan pemantauan membutuhkan waktu yang lama serta data tidak bisa dilihat oleh perusahaan secara langsung sehingga dibutuhkan teknologi untuk meminimalkan permasalahan yang ada. Dalam penelitian ini dirancang sebuah Application Programming Interface (API) sistem informasi perkembangan ayam broiler berbasis kemitraan yang dapat digunakan oleh anak kandang, peternak mitra dan PPL untuk memudahkan proses pelaporan, penanganan dan pemantauan oleh perusahaan secara terintegrasi dan realtime. Teknologi API dapat diterapkan sebagai pusat penyedia dan pengolah data dalam sistem. Penggabungan RESTful web service dan JSON ke API membuat integrasi dapat dilakukan secara aman, simpel dan menjadi mudah digunakan. Penggunaan API sistem informasi perkembangan ayam broiler berbasis kemitraan ini berpotensi untuk diaplikasikan secara luas untuk melengkapi proses manual yang masih banyak diterapkan pada peternakan berpola kemitraan. Kata Kunci : RESTful, JSON, API, Sistem Informasi, Perkembangan Ayam, Kemitraan.

Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya Wacana Salatiga

Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga

Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga

1. Pendahuluan

Peternakan merupakan salah satu usaha yang masih mempunyai peluang sangat bagus dan banyak terdapat di berbagai daerah di Indonesia, khususnya peternakan ayam broiler. Industri peternakan ayam broiler berperan penting di Indonesia karena daging ayam dapat memenuhi dan menutup kebutuhan protein hewani masyarakat Indonesia sebesar 53% [1]. Banyak para peternak yang memilih pola kemitraan daripada bergerak secara mandiri karena lebih menguntungkan, semisal adanya pasokan sarana produksi dan jaminan pasar dari perusahaan yang menjadi mitra [2,3]. Dalam mewujudkan pola kemitraan tersebut, biasanya ada petugas penyuluh lapangan (PPL) yang dikirim perusahaan untuk melakukan pelaporan, pemantauan dan penanganan secara intensif, dimana jumlah anak kandang yang semakin banyak dan tersebar akan membutuhkan waktu dan sumber daya yang besar pula [4]. Dampak lain yang ditimbulkan adalah kesulitan perusahaan dalam merekapitulasi data perkembangan ayam dari seluruh mitra yang dimilikinya karena tidak bersifat realtime. Dibutuhkan teknologi yang aman namun tetap simpel dan mudah digunakan untuk meminimalkan permasalahan dan kelemahan dari segala proses manual yang ada.

Salah satu cara untuk meminimalkan permasalahan tersebut adalah dengan membuat suatu sistem yang terintegrasi dan realtime antar anak kandang, PPL, peternak mitra dan perusahaan. Salah satu alternatif penyelesaiannya adalah dengan menyediakan provider sebagai pusat penyedia dan pengolah data dengan menggunakan sebuah Application Programming Interface (API) sebagai titik poin komunikasi dari dan ke resource yang dimilikinya. Teknologi web service dapat diterapkan pada API tersebut agar integrasi dapat dilakukan di protokol HTTP dan melalui internet. Jenis web service yang digunakan adalah RESTful web service yang mempunyai keamanan akses yang baik dengan menerapkan custom token authentication . Gabungan antara RESTful web service dan JSON dapat membuat API menjadi lebih simpel, mudah digunakan dan human readable daripada menggunakan metode web service dan tipe data yang lain. [5]

Penelitian ini bertujuan untuk menerapkan RESTful web service dan JSON pada API sistem informasi perkembangan ayam broiler berbasis kemitraan yang aman dan mudah digunakan untuk melengkapi pelaporan secara manual yang masih banyak diterapkan pada peternakan berpola kemitraan. Pada sistem yang dibuat anak kandang dapat mengirim report setiap hari dan petugas penyuluh lapangan dapat memberikan penanganan berkala dengan melakukan request dan response melalui API. Pihak perusahaan dapat melihat data yang telah dikirimkan secara langsung tanpa harus menunggu laporan manual di tiap akhir periode. Adapun fokus dari penelitian ini adalah pada perancangan API dan pembuatan website utama, tidak pada sisi aplikasi yang digunakan untuk mengkonsumsi hasil API di anak kandang, peternak mitra, dan petugas penyuluh lapangan.

2. Tinjauan Pustaka

Penerapan IT dalam bidang peternakan belum begitu meluas. Beberapa publikasi terkait penerapan IT dalam bidang peternakan misalnya: penggunaan Penerapan IT dalam bidang peternakan belum begitu meluas. Beberapa publikasi terkait penerapan IT dalam bidang peternakan misalnya: penggunaan

Peternakan ayam broiler merupakan komoditi peternakan yang cepat dan potensial produksinya dibandingkan dengan produk ternak lainnya, karena pertumbuhannya cepat, bobot badan tinggi, konversi pakan kecil, dan kualitas dagingnya tinggi. Para peternak ayam broiler ini sebagian besar bekerjasama dengan perusahaan dengan pola kemitraan, di mana peternak akan difasilitasi sarana produksi dan harga jual, serta mendapat jaminan pasar. Program kemitraan ini merupakan program pemerintah untuk meningkatkan produksi ternak agar dapat merangsang tumbuhnya peternak di Indonesia [3].

Sistem informasi yaitu kumpulan alat dan sumber daya manusia sebagai pengguna yang saling tergabung, terintegrasi dan terpadu yang mengumpulkan dan mengolah data untuk menghasilkan suatu informasi yang berguna untuk perencanaan, pelaksanaan, pekerjaan, pengendalian dan pengambilan keputusan dalam organisasi [7]. Sistem informasi merupakan wadah pengolah data dari informasi yang diberikan oleh pengguna dan hasil olahannya juga untuk dikonsumsi oleh kepentingan pengguna.

Application Programming Interface (API) atau Antarmuka Pemrograman Aplikasi adalah sekumpulan perintah, fungsi, dan protokol yang dapat digunakan oleh programmer saat membangun perangkat lunak untuk sistem operasi tertentu [8]. Dengan adanya suatu API, maka jika ada tambahan platform baru maka tidak perlu dilakukan penyesuaian pada platform yang sudah ada. Hal ini dikarenakan API yang digunakan sudah mempunyai standar dan aturan yang baku dalam melayani permintaan dari platform sehingga lebih efisien. Jika ada perubahan, yang akan berubah hanyalah pada pemrosesan data di dalam API server itu sendiri. Kelebihannya API yang lain adalah fitur keamanan dan hak akses yang dapat diatur serta dapat dijadikan suatu API terbuka bagi pengembang lainnya secara publik.

Web service adalah suatu software yang dirancang untuk menyediakan komunikasi dan interaksi pada dua aplikasi atau lebih dengan sifat program-to- program [9]. Dengan adanya web service, maka satu aplikasi dapat diakses dan berhubungan tanpa perlu mengetahui detail program secara mendalam dengan aplikasi lain walaupun aplikasi tersebut berbeda platform, bahasa pemrograman, dan sistem operasi [10]. Publikasi terkait dengan penerapan web service diantaranya adalah pengembangan web service dengan menerapkan XML (Extensible Markup Language) yang dapat digunakan untuk memanajemen data dan mengintegrasi aplikasi sistem informasi universitas secara enterprise [11].

Model web service dapat dipecah menjadi dua bagian yaitu SOAP (Simple Object Access Protocol) dan REST (Representational State Transfer). Komponen

dari REST terdiri dari: 1) WADL (Application Definition Language) yang digunakan sebagai kontrak layanan yang dijelajahi melalui kode dan pengganti WSDL , 2) HTTP Method OPTION, GET, HEAD, POST, PUT, DELETE, dan TRACE , dan 3) URI (Uniform Resource Identifier). REST pertama kali digunakan dari REST terdiri dari: 1) WADL (Application Definition Language) yang digunakan sebagai kontrak layanan yang dijelajahi melalui kode dan pengganti WSDL , 2) HTTP Method OPTION, GET, HEAD, POST, PUT, DELETE, dan TRACE , dan 3) URI (Uniform Resource Identifier). REST pertama kali digunakan

JSON (Javascript Object Nation) adalah suatu format data ringan yang dapat mempermudah programmer dalam melakukan pertukaran data (lebih singkat daripada array) dan format ini juga sangat mudah diolah oleh mesin untuk diurai. JSON adalah format teks yang benar-benar merupakan bahasa independen, tetapi menggunakan konvensi yang akrab bagi programmer dari keluarga bahasa pemrograman C, termasuk di dalamnya adalah C, C++, C#, Java, JavaScript, Perl, Python, dan banyak lainnya. Properti ini membuat JSON merupakan format

bahasa pertukaran data yang ideal [14]. Berbeda dengan penelitian sebelumnya, penelitian ini berbasis pada web

yang mempunyai API untuk dapat berinteraksi dengan resource yang lain. Penambahan RESTful web service bertipe data JSON memungkinkan penambahan resource menjadi lebih mudah. API juga berperan sebagai suatu standarisasi yang mengatur bagaimana permintaan dan layanan hasil olah data akan diproses.

3. Metode Penelitian

Pendekatan ilmiah yang dipakai adalah pendekatan teknik (engineering approach ), dimana penekanan utamanya adalah membangun produk (Burstein dan Gregor, 1999), yaitu sistem informasi perkembangan ayam broiler berbasis kemitraan [15]. Sedangkan metode pengembangan sistem yang digunakan terdiri dari lima tahapan, yaitu: 1) Analisis kebutuhan dan pengumpulan data, 2) Perancangan sistem meliputi perancangan proses (UML), perancangan arsitektur, perancangan database, perancangan antarmuka, 3) Perancangan aplikasi/program,

4) Implementasi dan pengujian sistem, serta analisis hasil pengujian, 5) Penulisan laporan. Lima tahapan yang dilakukan ditunjukkan pada Gambar 1.

Analisis kebutuhan dan pengumpulan data

Perancangan sistem meliputi perancangan proses (UML), perancangan database, perancangan antarmuka

Perancangan aplikasi/program

Implementasi dan pengujian sistem, serta analisis hasil pengujian

Penulisan laporan

Gambar 1 Tahapan Penelitian

Tahapan penelitian pada Gambar 1 dapat dijelaskan sebagai berikut: 1) Tahap pertama: analisis kebutuhan dan pengumpulan data, yaitu melakukan analisis terhadap apa saja yang dibutuhkan dalam melakukan penelitian dan mengumpulkan data tentang proses bisnis, struktur, dan sample report peternakan yang sudah berjalan selama ini. 2) Tahap kedua: perancangan sistem meliputi perancangan proses (UML), meliputi use case diagram, class diagram, activity diagram, dan deployment diagram. Tambahan perancangan yang lain yaitu perancangan database meliputi tabel-tabel yang digunakan dalam menyimpan data serta penentuan hubungan relasinya dan perancangan antarmuka aplikasi yang akan dibuat. 3) Tahap ketiga: perancangan aplikasi/program, yaitu merancang aplikasi sesuai dengan kebutuhan sistem berdasarkan perancangan yang sudah dilakukan. Pembuatan aplikasi terbagi menjadi dua bagian yaitu bagian pertama berupa API yang melayani proses request dan response pada anak kandang, peternak mitra, dan petugas penyuluh lapangan serta bagian kedua berupa website yang merupakan sistem informasi untuk perusahaan supaya dapat melihat dan memonitor data secara mudah dan realtime. Pada API menggunakan bahasa pemrograman PHP dan Restler sebagai REST API framework, sedangkan pada website menggunakan bahasa pemrograman PHP, Bootstrap framework sebagai kerangka tampilan, library Sammy.js sebagai pengatur path routing, dan library Mustache untuk pengatur templating pada aplikasi. 4) Tahap keempat: implementasi dan pengujian sistem serta analisis hasil pengujian, yaitu mengimplementasikan aplikasi yang sudah dirancang ke hosting supaya dapat diakses secara online, kemudian diuji dan dianalisis apakah terdapat error pada aplikasi dan apakah aplikasi sesuai dengan perancangan. 5) Tahap kelima: penulisan laporan, yaitu mendokumentasikan proses penelitian dan proses perancangan aplikasi dari tahap awal sampai akhir.

Perusahaan Inti

Peternak Mitra

PPL

Anak Kandang

Gambar 2 Struktur Pihak yang Terlibat pada Sistem [4]

Pada Gambar 2 menggambarkan struktur dari pihak yang terlibat pada sistem, yaitu, anak kandang, peternak mitra, PPL, dan perusahaan inti. Anak kandang adalah peternak yang berhubungan langsung dengan ayam dimulai dari persiapan, bibit, pemeliharaan sampai dengan panen. Peternak mitra adalah orang Pada Gambar 2 menggambarkan struktur dari pihak yang terlibat pada sistem, yaitu, anak kandang, peternak mitra, PPL, dan perusahaan inti. Anak kandang adalah peternak yang berhubungan langsung dengan ayam dimulai dari persiapan, bibit, pemeliharaan sampai dengan panen. Peternak mitra adalah orang

Perancangan proses pada penelitian ini menggunakan UML (Unified Modeling Language) dengan beberapa proses sebagai berikut. Use case diagram adalah gambaran fungsionalitas kerja sistem secara visual dan graphical yang menjelaskan interaksi antara aktor dengan sistem beserta dengan fungsi-fungsi yang ada [16,17]. Use case diagram pada aplikasi ini terdapat empat aktor utama yaitu anak kandang, peternak mitra, petugas penyuluh lapangan (PPL), dan perusahaan. Pada aplikasi ini terdapat dua macam use case diagram yang akan digunakan, yaitu use case diagram pada API dan use case diagram pada sistem informasi. Use case diagram pada API ditunjukkan pada Gambar 2.

<<include>>

Lihat profil PPL

PPL

Insert penanganan

<<extend>>

Insert report harian

<<extend>>

<<extend>> <<extend>>

Insert pakan pakai

Ganti password PPL Lihat anak kandang Insert deplesi kematian Insert stock pakan

Peternak Mitra

Lihat periode aktif

Anak Kandang

Lihat PPL

Ganti password anak kandang

<<extend>> Lihat grafik kematian Lihat grafik FCR

<<extend>>

Lihat profil peternak mitra

Ganti password peternak mitra

Lihat profil anak kandang

Gambar 3 Use Case Diagram pada API

Gambar 3 menunjukkan bahwa pada sisi API aktor peternak mitra dapat melihat data profil, mengganti password, melihat data anak kandang, melihat data PPL, melihat periode aktif, dan melihat laporan grafik FCR serta grafik kematian anak kandang. Aktor PPL dapat melihat profil, mengganti password, melihat data anak kandang, melihat periode aktif, dan memasukkan penanganan. Aktor anak kandang dapat melihat data profil, mengganti password, melihat periode aktif, dan memasukkan report harian (memasukkan data pakan yang dipakai, kematian, dan stock pakan).

<<extend>>

Lihat grafik FCR Mengelola periode

Set periode aktif

<<extend>>

<<extend>>

Insert PPL

Edit PPL

<<extend>>

<<extend>>

Edit periode

Tambah periode Hapus PPL <<extend>>

Lihat PPL <<include>>

Perusahaan

Mengelola PPL <<extend>>

<<extend>>

Lihat grafik kematian Mengelola peternak mitra Mengelola anak kandang Edit anak kandang <<include>>

<<extend>>

<<extend>> Edit peternak mitra <<extend>>

<<include>> <<extend>>

Lihat peternak mitra Insert peternak mitra Hapus peternak mitra Tambah anak kandang Lihat anak kandang Hapus anak kandang

Gambar 4 Use Case Diagram pada Sistem Informasi

Gambar 4 menunjukkan bahwa pada sisi sistem informasi hanya terdapat satu aktor saja, yaitu perusahaan. Perusahaan ini dapat mengelola data anak kandang (termasuk menambah, mengubah, dan menghapus), mengelola peternak mitra (termasuk menambah, mengubah, dan menghapus), mengelola petugas penyuluh lapangan atau PPL (termasuk menambah, mengubah, dan menghapus), mengelola periode (termasuk menambah dan mengubah), memilih periode aktif yang sedang berjalan, dan melihat laporan grafik FCR serta grafik kematian dari anak kandang.

Class diagram menggambarkan struktur dan deskripsi class yang ada di dalam aplikasi yang dikembangkan, beserta hubungan atau relasi satu sama lain seperti user interface, atribut, dan service [17,18]. Class diagram terdiri dari entity , controller dan boundary. Entity adalah penghubung antara fungsi dengan database , yang pada Gambar 5 dan Gambar 6 dicontohkan dengan entity tb_stock, tb_ppl,

tb_report_header, dan tb_report_detail. Boundary adalah user interface atau tampilan dari aplikasi. Controller adalah jembatan yang menghubungan antara entity dan boundary. Controller ini menerima perintah dari boundary dan akan meneruskan ke entity, begitu juga sebaliknya controller akan menerima perintah dari entity lalu meneruskannya ke boundary. Class diagram yang telah dirancang selanjutnya dapat digunakan sebagai pedoman dan dasar dalam merancang database, tabel, struktur dan relasi. Class diagram pada sistem informasi perkembangan ayam broiler berbasis kemitraan ini mempunyai dua bagian yaitu class diagram pada sisi API yang ditunjukkan pada Gambar 5 dan class diagram pada sistem informasi yang ditunjukkan pada Gambar 6.

tb_anakkandang,

tb_peternakmitra,

Gambar 5 Class Diagram pada Sisi API

Gambar 6 Class Diagram pada Sisi Sistem Informasi

Activity diagram merupakan diagram yang menggambarkan alur aktifitas dalam sistem yang sedang dirancang, dimulai dari awal kemudian keputusan yang mungkin terjadi di tengah jalan sampai dengan akhir capaian [16].

Gambar 7 Activity Diagram untuk Input Gambar 8 Activity Diagram untuk Input Report Harian

Penanganan

Gambar 7 menunjukkan aktivitas yang dilakukan anak kandang ketika memasukkan report harian. Anak kandang pertama harus memastikan bahwa ia belum memasukkan report harian pada saat itu, karena satu hari hanya dapat memasukkan satu kali. Setelah itu, anak kandang mengakses API untuk login dan akan mendapat respon. Jika responnya sukses, maka akan ke tahap berikutnya sedangkan jika responnya error maka harus kembali lagi ke login. Selanjutnya jika hari tersebut sudah masuk ke periode baru, maka perusahaan harus terlebih dahulu menambah periode baru, namun jika masih sama dengan periode sebelumnya maka dapat langsung mengakses API untuk report harian. Jika respon yang di dapat sukses, maka aktifitas berakhir. Tapi jika respon yang didapat error semisal parameter salah, maka akan kembali ke tahap sebelumnya.

Gambar 8 menunjukkan aktivitas yang dilakukan oleh petugas penyuluh lapangan (PPL) ketika memasukkan penanganan berdasarkan anak kandang. PPL pertama kali harus mengakses API login terlebih dahulu. Jika mendapat respon error , maka harus mengulang kembali dari login. Jika respon sukses maka selanjutnya adalah PPL dapat mengakses API list anak kandang. Ketika respon yang didapat adalah kosong atau tidak ada data, maka perusahaan harus memasukkan data anak kandang terlebih dahulu, baru setelah itu PPL mengulang lagi dari API list anak kandang dan akan mendapatkan daftar anak kandang. PPL kemudian memilih salah satu anak kandang dari list tersebut dan dapat mengakses API untuk input penanganan. Ketika respon yang didapatkan adalah sukses, maka aktifitas berakhir. Namun jika respon yang didapatkan adalah error semisal input Gambar 8 menunjukkan aktivitas yang dilakukan oleh petugas penyuluh lapangan (PPL) ketika memasukkan penanganan berdasarkan anak kandang. PPL pertama kali harus mengakses API login terlebih dahulu. Jika mendapat respon error , maka harus mengulang kembali dari login. Jika respon sukses maka selanjutnya adalah PPL dapat mengakses API list anak kandang. Ketika respon yang didapat adalah kosong atau tidak ada data, maka perusahaan harus memasukkan data anak kandang terlebih dahulu, baru setelah itu PPL mengulang lagi dari API list anak kandang dan akan mendapatkan daftar anak kandang. PPL kemudian memilih salah satu anak kandang dari list tersebut dan dapat mengakses API untuk input penanganan. Ketika respon yang didapatkan adalah sukses, maka aktifitas berakhir. Namun jika respon yang didapatkan adalah error semisal input

Gambar 9 Activity Diagram untuk Lihat Data Report Harian dan Grafik

Gambar 9 menunjukkan aktivitas yang dilakukan oleh perusahaan ketika melihat data report harian dan grafik. Sebelumnya perusahaan harus login terlebih dahulu. Jika login gagal, maka akan kembali ke login kembali. Jika login berhasil, maka dapat langsung dilihat report harian yang tampil di website serta grafik kematian dan FCR. Apabila tidak ada data yang ditampilkan, maka yang harus dilakukan adalah melakukan input report harian terlebih dahulu yang dilakukan oleh anak kandang, serta melakukan input penanganan yang dilakukan oleh PPL. Setelah melakukan analisis terhadap data tersebut, maka perusahaan dapat memilih kembali daftar report harian dan grafik atau ingin mengakhiri aktivitas.

Deployment diagram adalah struktur fisik beserta gambaran hardware dari sistem yang dirancang. Deployment diagram pada aplikasi ini dapat dilihat pada Gambar 10.

Gambar 10 Deployment Diagram

Gambar 10 menggambarkan deployment diagram dari aplikasi yang dirancang. Pada deployment diagram terdapat database server yang berfungsi Gambar 10 menggambarkan deployment diagram dari aplikasi yang dirancang. Pada deployment diagram terdapat database server yang berfungsi

4. Hasil dan Pembahasan

Penelitian ini menghasilkan dua sub-aplikasi yaitu API untuk melayani request and response data dan sistem informasi untuk meninjau report serta grafik secara realtime. Berdasarkan perancangan class diagram yang sudah dibuat, maka struktur tabel dan relasi pada database yang dibuat dengan MySQL dapat dilihat pada Gambar 11.

Gambar 11 Struktur Tabel dan Relasi Database

Pada Gambar 11 menunjukkan bahwa pada perancangan aplikasi menggunakan enam buah tabel, yaitu tb_stock, tb_peternakmitra, tb_anakkandang, tb_ppl, tb_report_header, dan tb_report_detail. Terdapat lima buah relasi antar tabel, yaitu: 1) Relasi antara id_ak pada tb_stock dengan id pada tb_anakkandang yang berarti satu anak kandang dapat memiliki beberapa stock, 2) Relasi antara id_pm pada tb_anakkandang dengan id pada tb_peternakmitra yang berarti satu peternak mitra dapat memiliki beberapa anak kandang, 3) Relasi antara id_ak pada tb_report_header dengan id pada tb_anakkandang yang berarti satu anak kandang dapat memiliki beberapa report header, 4) Relasi antara id_report_header pada tb_anakkandang dengan id pada tb_reportheader yang berarti satu anak kandang hanya dapat memiliki satu report header yang aktif, dan

5) Relasi antara id_header pada tb_report_detail dengan id pada tb_report_header yang berarti satu report header dapat memiliki beberapa report detail. Application Programming Interface (API) ditujukan untuk anak kandang, peternak mitra, dan petugas penyuluh lapangan. Perancangan API menggunakan Restler sebagai framework untuk membangun API yang menerapkan RESTful web service dan menggunakan JSON sebagai tipe data kembalian. Untuk keamanan API dan batasan akses resource, maka digunakan custom token authentication. Token ini adalah susunan acak dari kombinasi huruf dan angka yang di-generate 5) Relasi antara id_header pada tb_report_detail dengan id pada tb_report_header yang berarti satu report header dapat memiliki beberapa report detail. Application Programming Interface (API) ditujukan untuk anak kandang, peternak mitra, dan petugas penyuluh lapangan. Perancangan API menggunakan Restler sebagai framework untuk membangun API yang menerapkan RESTful web service dan menggunakan JSON sebagai tipe data kembalian. Untuk keamanan API dan batasan akses resource, maka digunakan custom token authentication. Token ini adalah susunan acak dari kombinasi huruf dan angka yang di-generate

Kode Program 1 Fungsi Login Anak Kandang sebagai Custom Token Authentication

1 function postLogin($username, $password) { 2 $result = $this->db->get('tb_anakkandang', ['id', 'password', 'nama'], 3 ['username' => $username]); 4 5 if ($result == NULL) { 6 throw new RestException(401, 'username salah'); 7 } 8 9 if (!password_verify($password, $result['password'])) { 10 throw new RestException(401, 'password salah'); 11 } 12 13 $token = cust_func::random_token(); 14 $this->db->update('tb_anakkandang', ['token' => $token], ['id' =>

15 $result['id']]); 16 17 $error = $this->db->error(); 18 if ($error[2] != null) {

19 throw new RestException(400, $error[2]); 20 } 21 22 $last_result = cust_func::success('Login berhasil'); 23 $last_result->token = $token; 24 return $last_result;

Hasil kembalian token yang dihasilkan dari login API dibungkus dalam data JSON seperti yang ditunjukkan pada Gambar 12. Proses debugging menggunakan browser Mozilla Firefox dengan add-on REST Easy.

Gambar 12 Hasil JSON dari Request Login Anak Kandang

Pada API ini hanya terdapat dua method yang digunakan yaitu GET dan POST karena kompatibel dengan hampir semua browser, framework, dan platform dibanding dengan PUT, DELETE, atau REPLACE. Method GET digunakan untuk mendapatkan list data dari hasil request sedangkan method POST digunakan untuk memasukkan data ke API. Tabel 1 menunjukkan daftar semua perintah yang terdapat pada API, baik untuk melayani request maupun response data.

Tabel 1 List Fungsi pada API

REST API Path

No Method

Parameter

Deskripsi

Kembalian (JSON)

1 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/login.json POST

String username

String success String password

Sebagai login API untuk akses

pertama kali

String token

2 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/change_password.json?token=x

POST String token

String success String new_password

Untuk mengganti password

anak kandang/ppl/peternak mitra

3 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/profile.json?token=x GET

String token Mendapatkan data diri dari anak String success kandang/ppl/peternak mitra

array profile[ String username, String nama, String nohp, String alamat

] 4 http://[SERVER]/api/anak_kandang/report/stock.json?token=x POST String token

String success int jumlah (sak)

Input laporan stock pakan

ketika ada stock pakan masuk

5 http://[SERVER]/api/anak_kandang/report/daily_input.json?token=x POST

String success int deplesi_mati (ekor)

String token

Input report harian

perkembangan ayam oleh anak

int pakan_pakai (sak)

kandang, satu kali per hari

6 http://[SERVER]/api//[anak_kandang|ppl|peternak_mitra]/report/header.json?token=x GET

String token

Mendapatkan list report header

String success

atau periode dari semua anak

array report_header[][

kandang

int id, int periode, date tgl_ci, float bw_awal, String strain, int populasi

] 7 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/report/detail.json?token=x&id_header=x GET

String success int id_header

String token

Mendapatkan list report detail

atau report harian dari anak

array report_detail[][

kandang berdasarkan id report

date tanggal,

header atau periode

int deplesi_mati, int pakan_pakai, float report_kondisi

] 8 http://[SERVER]/api/anak_kandang/report/active_period.json?token=x GET

String token

Mendapatkan periode aktif

String success

berjalan anak kandang tersebut

array active_period[ int id, int periode, date tgl_ci, float bw_awal, String strain, int populasi

Tabel 2 Lanjutan List Fungsi pada API

REST API Path

No Method

Parameter

Deskripsi

Kembalian (JSON)

9 http://[SERVER]/api/peternak_mitra/show/ppl.json?token=x GET

String token

Mendapatkan data list PPL

String success array ppl[

String username, String nama, String nohp

] 10 http://[SERVER]/api/[peternak_mitra|ppl]/show/anak_kandang.json?token=x GET

String token

Mendapatkan data list anak

String success

kandang

array anak_kandang[ String username, String nama, String nohp, String alamat

11 http://[SERVER]/api/[peternak_mitra|ppl]/report/active_period.json?token=x&username=x

GET String token

String success String username

Mendapatkan periode aktif

berjalan pada anak kandang

array active_period[

tertentu secara spesifik

int id, int periode, date tgl_ci, float bw_awal, String strain, int populasi

] 12 http://[SERVER]/api/peternak_mitra/grafik/fcr.json?token=x&id_periode=x GET

String token Mendapatkan data grafik FCR String success int id_periode

(Feed Conversion Ratio) pada array label[] anak kandang

array data[] 13 http://[SERVER]/api/peternak_mitra/grafik/kematian.json?token=x GET

String token

Mendapatkan data kematian

String success

rata-rata semua anak kandang

array label[] array data[]

14 http://[SERVER]/api/peternak_mitra/grafik/kematian_detail.json?token=x&username=x GET

String token

String success String username

Mendapatkan data kematian

rata-rata anak kandang secara

array label[]

spesifik berdasarkan

array data[]

username

15 http://[SERVER]/api/ppl/report/penanganan.json?token=x&id_detail=x POST

String token

String success String id_detail

Memasukkan data

penanganan berupa berat

float report_kondisi (gram)

ayam (dalam gram) oleh PPL

Pada Tabel 1 dan 2 semua perintah request and response pada API disertai dengan method GET yang berisi token, kecuali login API. Dengan menyimpan nilai token dari login API maka user cukup sekali saja melakukan autentikasi ketika login. Token ini unique yang berarti tidak ada dua user dalam sistem yang mempunyai token yang sama dan menandakan credential dari user, apakah dia merupakan anak kandang, peternak mitra, atau PPL. Tanpa adanya token dari proses custom token authentication maka permintaan akses API akan ditolak.

Gambar 13 Contoh API Request Mendapatkan List Anak Kandang

Gambar 14 Contoh API Request Memasukkan Report Harian

Gambar 13 dan 14 menunjukkan contoh proses request dari beberapa fungsi API yang ada. Penggunaan parameter token memungkinkan request dilakukan beberapa kali tanpa melalui proses login lagi. Pada beberapa fungsi, tambahan parameter juga dibutuhkan terutama pada fungsi dengan method POST.

Gambar 15 Data Report Harian Anak Kandang di Website Utama

Gambar 16 Grafik FCR dari Periode Anak Kandang di Website Utama

Selain API, pada aplikasi yang dirancang juga terdapat penerapan sistem informasi yang ditujukan kepada perusahaan untuk me-manage data anak kandang, peternak mitra, dan PPL serta memantau proses pelaporan secara realtime . Sistem informasi yang dirancang menggunakan Bootstrap sebagai kerangka tampilan, library Sammy.js sebagai pengatur path routing, dan library Mustache untuk pengatur templating pada aplikasi. Gambar 15 dan 16 menunjukkan tampilan user interface dari sistem informasi untuk melihat dan merekapitulasi data yang dikirimkan dari API secara realtime.

Pengujian aplikasi dilakukan untuk menguji fungsi yang terdapat pada sistem berdasarkan use case diagram. Pengujian dilakukan dengan menggunakan teknik blackbox, yaitu pengujian secara langsung apakah setiap fungsi sudah berjalan dengan baik tanpa melihat alur eksekusi program. Tabel 3 dan 4 menunjukkan hal yang diuji dan hasil pengujian yang dilakukan pada API.

Tabel 3 Hasil Pengujian Akses RESTful API

REST API Path

No Kondisi

Output yang diharapkan

Output yang dihasilkan Status

1 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/login.json Method , parameter diisi benar

Berhasil login Valid Method , parameter diisi salah

Berhasil login

Gagal login Valid 2 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/change_password.json?token=x Method, token , parameter diisi benar

Gagal login

Berhasil ganti password Valid Method, token , parameter diisi salah

Berhasil ganti password

Gagal ganti password Valid 3 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/profile.json?token=x Method, token , parameter diisi benar

Gagal ganti password

Berhasil ganti profil Valid Method, token , parameter diisi salah

Berhasil ganti profil

Gagal ganti profi Valid 4 http://[SERVER]/api/anak_kandang/report/stock.json?token=x Method, token

Gagal ganti profil

Valid , parameter diisi benar Berhasil report stock Berhasil report stock Method, token , parameter diisi salah

Gagal report stock Valid 5 http://[SERVER]/api/anak_kandang/report/daily_input.json?token=x Method, token , parameter diisi benar

Gagal report stock

Berhasil report harian Valid Method, token , parameter diisi salah

Berhasil report harian

Gagal report harian

Gagal report harian Valid

Tabel 4 Lanjutan Hasil Pengujian Akses RESTful API

REST API Path

No Kondisi

Output yang diharapkan

Output yang dihasilkan Status

6 http://[SERVER]/api//[anak_kandang|ppl|peternak_mitra]/report/header.json?token=x Method, token , parameter diisi benar

Berhasil mendapatkan report

Berhasil mendapatkan Valid

report header Method, token , parameter diisi salah

header

Gagal mendapatkan report

Gagal mendapatkan report Valid

header

header

7 http://[SERVER]/api/[anak_kandang|ppl|peternak_mitra]/report/detail.json?token=x&id_header=x Method, token , parameter diisi benar

Berhasil mendapatkan report

Berhasil mendapatkan Valid

report header Method, token , parameter diisi salah

header

Gagal mendapatkan report

Gagal mendapatkan report Valid

header

header

8 http://[SERVER]/api/anak_kandang/report/active_period.json?token=x Method, token , parameter diisi benar

Berhasil set periode aktif Valid Method, token , parameter diisi salah

Berhasil set periode aktif

Gagal set periode aktif Valid 9 http://[SERVER]/api/peternak_mitra/show/ppl.json?token=x Method, token , parameter diisi benar

Gagal set periode aktif

Berhasil mendapatkan data

Berhasil mendapatkan data Valid

PPL

PPL

Method, token , parameter diisi salah

Gagal mendapatkan data

Gagal mendapatkan data Valid

PPL

PPL

10 http://[SERVER]/api/[peternak_mitra|ppl]/show/anak_kandang.json?token=x Method, token , parameter diisi benar

Berhasil mendapatkan data

Berhasil mendapatkan data Valid

anak kandang Method, token , parameter diisi salah

anak kandang

Gagal mendapatkan data

Gagal mendapatkan data Valid

anak kandang 11 http://[SERVER]/api/[peternak_mitra|ppl]/report/active_period.json?token=x&username=x Method, token , parameter diisi benar

anak kandang

Berhasil mendapatkan data

Berhasil mendapatkan data Valid

periode aktif Method, token , parameter diisi salah

periode aktif

Gagal mendapatkan data

Gagal mendapatkan data Valid

periode aktif 12 http://[SERVER]/api/peternak_mitra/grafik/fcr.json?token=x&id_periode=x Method, token , parameter diisi benar

periode aktif

Berhasil mendapatkan data

Berhasil mendapatkan data Valid

grafik FCR Method, token , parameter diisi salah

grafik FCR

Gagal mendapatkan data

Gagal mendapatkan data Valid

grafik FCR 13 http://[SERVER]/api/peternak_mitra/grafik/kematian.json?token=x Method, token , parameter diisi benar

grafik FCR

Berhasil mendapatkan data

Berhasil mendapatkan data Valid

grafik kematian Method, token , parameter diisi salah

grafik kematian

Gagal mendapatkan data

Gagal mendapatkan data Valid

grafik kematian 14 http://[SERVER]/api/peternak_mitra/grafik/kematian_detail.json?token=x&username=x Method, token , parameter diisi benar

grafik kematian

Berhasil mendapatkan detail

Berhasil mendapatkan Valid

detail grafik kematian Method, token , parameter diisi salah

grafik kematian

Gagal mendapatkan detail

Gagal mendapatkan detail Valid

grafik kematian 15 http://[SERVER]/api/ppl/report/penanganan.json?token=x&id_detail=x Method, token , parameter diisi benar

grafik kematian

Berhasil input penanganan Valid Method, token , parameter diisi salah

Berhasil input penanganan

Gagal input penanganan

Gagal input penanganan Valid

Berdasarkan Tabel 3 dan 4, pengujian yang dilakukan pada RESTful API mempunyai status valid. Ini menandakan bahwa fungsi pada API berjalan dengan baik. Selain itu, API juga telah mempunyai akses resource yang aman dan baik karena untuk mengakses API dibutuhkan token sebagai penanda user credential. Method yang digunakan juga harus sesuai apakah fungsi tersebut menggunakan method GET atau POST.

Tabel 5 Hasil Pengujian Blackbox Testing pada Sistem Informasi

Fungsi

Kondisi

Output yang

Output yang

Diharapkan

Dihasilkan Status

Proses login

Username dan password

Berhasil login

Berhasil login Valid

benar Username dan password

Gagal login

Gagal login Valid

salah atau kosong

Berhasil input, edit, Valid kandang

Input, edit, delete data anak

Data diisi dengan benar

Berhasil input, edit,

delete data Input, edit, delete data peternak

delete data

Berhasil input, edit, Valid mitra

Data diisi dengan benar

Berhasil input, edit,

delete data Input, edit, delete PPL

delete data

Data diisi dengan benar

Berhasil input, edit,

Berhasil input, edit, Valid

delete data Input dan set data periode aktif

delete data

Data diisi dengan benar

Berhasil input dan

Berhasil input dan Valid

set data Load data peternak mitra

set data

Berhasil load data Valid Load data PPL

Berhasil load data

Berhasil load data Valid Load data periode aktif

Berhasil load data

Berhasil load data Valid Load data anak kandang

Berhasil load data

Berhasil load data Valid Load data report harian anak

Berhasil load data

Berhasil load data Valid kandang Load data report stock pakan

Berhasil load data

Berhasil load data Valid Load data grafik kematian

Berhasil load data

Berhasil load data Valid Load data grafik kematian per

Berhasil load data

Berhasil load data Valid anak kandang

Berhasil load data

Load data grafik FCR

Berhasil load data Valid Proses logout

Berhasil load data

Berhasil logout

Berhasil logout Valid

Berdasarkan Tabel 5, pengujian yang dilakukan pada sistem informasi mempunyai status valid. Ini menandakan bahwa fungsi yang tersedia pada sistem informasi telah berjalan dengan baik serta sesuai dengan yang dirancang dan diharapkan.

Secara keseluruhan, berdasarkan pengujian dengan metode blackbox baik di sisi API maupun sistem informasi semuanya mempunyai status valid sehingga dapat disimpulkan bahwa semua sisi aplikasi termasuk API dan sistem informasi semuanya telah berjalan dengan baik.

5. Simpulan

Dalam penelitian ini disimpulkan bahwa RESTful web service dan JSON pada Application Programming Interface (API) dapat digunakan untuk membuat suatu sistem yang terintegrasi dan realtime. Teknologi ini dapat diterapkan pada sistem informasi perkembangan ayam broiler berbasis kemitraan. Adapun keunggulan dari penambahan RESTful web service dan JSON ini adalah integrasi dapat dilakukan melalui internet secara aman, simpel, mudah digunakan dan human readable .

Penelitian ini menghasilkan API sistem informasi perkembangan ayam broiler berbasis kemitraan yang berpotensi diaplikasikan secara luas untuk melengkapi pelaporan secara manual yang masih banyak diterapkan pada peternakan berpola kemitraan. API dapat digunakan untuk melayani, menyediakan, dan mengolah data dari anak kandang, peternak mitra, dan petugas Penelitian ini menghasilkan API sistem informasi perkembangan ayam broiler berbasis kemitraan yang berpotensi diaplikasikan secara luas untuk melengkapi pelaporan secara manual yang masih banyak diterapkan pada peternakan berpola kemitraan. API dapat digunakan untuk melayani, menyediakan, dan mengolah data dari anak kandang, peternak mitra, dan petugas

6. Pustaka

[1] Virgianti, K. 2013. Wamen Pertanian: Daging Ayam Penuhi 53 Persen Kebutuhan

Masyarakat , http://www.satuharapan.com/index.php?id=109&tx_ttnews[tt_news]=5515 &cHash=1, diakses 1 Desember 2014.

Protein

Hewani

[2] Sd Sasmita I.M. A., Ana, I.M., Putra, I.G.P.A.W.A. 2010. Rancang Bangun Sistem Informasi Kemitraan Ayam Broiler pada Perusahaan Sentral Unggas Bali Berbasis Web. Lontar Komputer, vol 1, no 1., 42-66.

[3] Maulana, M.L. 2008. Analisis Pendapatan Peternak Ayam Ras Pedaging Pola Kemitraan Inti-Plasma (Studi Kasus Peternak Plasma dari Tunas Mekar Farm di Kecamatan Nanggung Kabupaten Bogor) . Program Sarjana. Institut Pertanian Bogor. Bogor.

[4] Somya, R., Ardaneswari, A., Saputro, D.A., Purnomo, H.D. 2015. “Perancangan Sistem Pemantauan Pertumbuhan Ayam Pada Peternakan Ayam Broiler Dengan Pola Kemitraan ”. Seminar Nasional Teknologi Informasi dan Multimedia 2015. Yogyakarta.

[5] JSON. 2009. Pengenalan JSON, http://www.json.org/json-id.html. Diakses tanggal 7 Desember 2014 [6] Fatoni, M.R. -. Rancang Bangun Sistem Informasi Pemantauan Perkembangan Ayam Broiler (Studi Kasus di Ps. Bintang Unggas Lamongan). Program Sarjana. STIKOM Surabaya. Surabaya.

[7] Hartono, J. 2009. Sistem Teknologi Informasi: Pendekatan Terintegrasi: Konsep Dasar, Teknologi, Aplikasi, Pengembangan, dan Pengelolaan (Edisi 3). Yogyakarta: Andi.

[8] Ichwan, M & Hakiky, F. 2011. Pengukuran Kinerja Goodreads Application Programming Interface (API) pada Aplikasi Mobile Android. Jurnal Informatika 2011 , Vol 2 No 2, pp. 13 – 21.

[9] Gottschalk, K., Graham, S., Kreger, H., Snell, J. 2002. Introduction to Web Services Architecture. IBM Systems Journal, Vol 41 No 2, pp. 170 – 177. [10] Suryadi, G., Hiryanto, L., Tumbelaka, B. 2013. Implementasi Web Service Untuk Mobile Commerce. Jurnal Ilmu Komputer dan Sistem Informasi, Vol

1 No 1, pp 73 - 78. [11] Santoso, B. 2008. “Analisa Dan Perancangan Web Services Untuk Sistem Informasi Universitas ”. Konferensi Nasional Sistem dan Informatika 2008. Bali.

[12] Yusron, M.L., Arwani, I., Pradana, F. 2013. Rancang Bangun REST Web Service pada Aplikasi Penentuan Portofolio Saham menggunakan Model Markowitz dan JQuery Mobile. Repositori Jurnal Mahasiswa PTIIK UB, Vol 1 No 10.

[13] Sukyadi, D., 2009, Model Interoperabilitas Sistem Informasi Layanan Publik Studi Kasus: e-Government, Karya Akhir, Prodi Magister Teknologi Informasi, Fasilkom, UI, Jakarta.

[14] Narendra, J., Suprihadi, Beeh, Yos R. 2011. Layanan Service Aplikasi smsCAPTCHA pada Web PHP Berbasis cURL dengan Menggunakan JSON Format. Jurnal Teknologi Informasi – Aiti, vol. 8. No.1, pp. 42 – 60.

[15] Burstein, F.V., Gregor, S., 1999, The System Development or Engineering Approach to Research in Information Systems: An Action Research Perspective, Proceeding of 10th Australasian conference on Information Systems, Wellington NZ, 1-3 December 1999, pp 122-134.

[16] Nugroho, A. 2005. Rational Rose Untuk Pemodelan Berorientasi Objek. Bandung: Informatika. [17] Imron, M.S, Palekahelu, D.T, Somya, R. 2014. Perancangan dan Implementasi Aplikasi Pembelajaran Siklus Carnot Berbasis RIA untuk Pelajar SMA (Studi Kasus: SMA Negeri 3 Salatiga). Jurnal Teknologi Informasi – Aiti. Vol 11 No 1, pp. 61 – 76.

[18] Joko. 2012.

Pengertian UML . http://www.academia.edu/4887559/Fungsi_Dan_Pengertian_UML, diakses tanggal 10 Desember 2014.

Fungsi

Dan

Dokumen yang terkait

I. KEGIATAN SEBELUM MASUK KELAS [± 2O menit]  Salam berbaris dan berdoa sebelum kegiatan bermain  Menyanyi  Berjalan membawa beban Anak Anakdan guru Balok Observasi Unjuk kerja  Mengenal konsep bilangan  Menggunakanlambangbilanganuntukmenghitung  Me

0 0 18

Institutional Repository | Satya Wacana Christian University: Model Pendukung Sistem Informasi Akademik berbasis Android (Studi Kasus: Universitas Kristen Satya Wacana)

1 1 22

BAB II KAJIAN PUSTAKA 1.1 Kajian Teori 2.1.1 Perilaku Sopan Santun Anak Usia Dini a. Pengertian perilaku sopan santun - Institutional Repository | Satya Wacana Christian University: Peningkatan Perilaku Sopan Santun Melalui Metode Bercerita pada Anak Usia

0 2 8

BAB III METODE PENELITIAN 3.1 Jenis Penelitian - Institutional Repository | Satya Wacana Christian University: Peningkatan Perilaku Sopan Santun Melalui Metode Bercerita pada Anak Usia 5-6 Tahun di Kampung Krajan RT. 07 & 10/ RW. 05 Kelurahan Salatiga

0 0 9

BAB IV HASIL PELITIAN DAN PEMBAHASAN 4.1 Gambaran Umum Subyek Penelitian - Institutional Repository | Satya Wacana Christian University: Peningkatan Perilaku Sopan Santun Melalui Metode Bercerita pada Anak Usia 5-6 Tahun di Kampung Krajan RT. 07 & 10/ RW.

0 0 28

Institutional Repository | Satya Wacana Christian University: Peningkatan Perilaku Sopan Santun Melalui Metode Bercerita pada Anak Usia 5-6 Tahun di Kampung Krajan RT. 07 & 10/ RW. 05 Kelurahan Salatiga

0 0 70

BAB II KAJIAN PUSTAKA A. Pendidikan Anak Usia Dini 1. Pengertian Anak Usia dini - Institutional Repository | Satya Wacana Christian University: Peran Ibu dan Pembantu Rumah Tangga sebagai Pengasuh Utama dalam Kegiatan Bermain Anak di Lingkungan Perumahan

0 1 7

BAB IV HASIL PENELITIAN DAN PEMBAHASAN A. Jalannya Penelitian 1. Tahap Persiapan - Institutional Repository | Satya Wacana Christian University: Peran Ibu dan Pembantu Rumah Tangga sebagai Pengasuh Utama dalam Kegiatan Bermain Anak di Lingkungan Perumahan

0 0 12

Institutional Repository | Satya Wacana Christian University: Peran Ibu dan Pembantu Rumah Tangga sebagai Pengasuh Utama dalam Kegiatan Bermain Anak di Lingkungan Perumahan Purnamandala Wonosobo

0 3 48

Institutional Repository | Satya Wacana Christian University: Perancangan Aplikasi Perkiraan Wajah Manusia di Masa Depan Menggunakan Algoritma Warp dan Morph Berbasis Android

0 0 24