ANALISIS DAN PERANCANGAN
3.1 Gambaran Umum Perusahaan
Sebagai pelopor pengadaan suku cadang dan layanan servis motor istimewa, ASPIRA dan ASPIRA CARE SERVICE(ACS) telah melewati perjalanan panjang. Berawal dari sebuah perusahaan otomotif yang sangat mapan dan terpercaya, PT Astra Internasional, Tbk. (melalui divisi komponen PT Astra Otoparts, Tbk.) menjadikan ASPIRA kini dikenal sebagai salah satu pemain dalam pasar industri suku cadang dan layanan servis kendaraan bermotor.
PT Astra Internasional, Tbk. hingga kini memiliki enam divisi bisnis antara lain, divisi otomotif, layanan finansial, alat-alat berat, agribisnis dan sistem teknologi informasi. Menyorot pada divisi otomotif, PT Astra Internasional, Tbk. membagi tiga bagian antara lain, grup mobil, motor dan komponen. Dalam grup komponen, PT Astra International, Tbk. menunjuk PT Astra Otoparts, Tbk.(AOP) untuk memegang peran dalam bidang fabrikasi dan distribusi suku cadang otomotif merek-merek terkemuka seperti Toyota, Honda Motorcycle, Nissan Diesel, Daihatsu, Peugeot, dll. untuk pasar domestik dan kebutuhan ekspor dari original equipment manufacturing(OEM) dan after
marketing replacement.
Di bawah naungan PT Astra Internasional, Tbk., PT Astra Komponen Indonesia (distributor suku cadang ASPIRA dan ACS) mulai berkiprah sejak 1 Juli 2000 sebagai anak perusahaan dari PT Astra Otoparts, Tbk. ASPIRA adalah suku cadang yang didistribusikan oleh PT Astra Komponen Indonesia yang memiliki kualitas yang sama
dengan suku cadang yang genuine karena diproduksi di pabrik yang sama dengan suku cadang genuine dan material yang sama namun dijual dengan harga terjangkau.
3.1.1 Sejarah Perusahaan
Di bawah naungan PT Astra International Tbk, PT Astra Komponen Indonesia mulai berkiprah sejak 1 Juli 2000 sebagai anak perusahaan PT Astra Otoparts Tbk. Namun perjalanannya yang panjang dalam memasarkan komponen otomotif telah dirintis sejak 1973 melalui divisi Astra Parts Sales Operation (APSO) sebelum kemudian dialihkan ke PT Astra Otoparts Tbk.
Juli 1973 adalah saat awal berdirinya Parts Department dari PT Astra International - Honda Division untuk menangani kebutuhan Honda Genuine Parts sebagai back-up dengan memakai kemasan HM Co. dengan lambang sayap seperti yang ditampilkan pada gambar 3.1.
Gambar 3.1 Kemasan HM Co.
Pada Tahun 1975 dengan meningkatnya penjualan unit sepeda motor Honda maka penjualan suku cadang juga ikut meningkat, ini dapat dilihat dari beredarnya suku cadang imitasi dan suku cadang HM Co. yang sudah masuk melalui importir umum,
sehingga perlu untuk memiliki identitas sendiri dengan menambah stiker “ASTRA” . Kemasan dan stiker tersebut ditampilkan pada gambar 3.2.
Gambar 3.2 Kemasan Honda dengan stiker “ASTRA”
Pada tahun 1984 dengan meningkatnya produksi komponen lokal, maka Honda Division membuat kemasan "FEDERAL" untuk produk lokal, sedangkan untuk suku cadang import tetap menggunakan kemasan HM Co. Kemasan “FEDERAL” tersebut ditampilkan pada gambar 3.3.
Gambar 3.3 Kemasan “FEDERAL”
Pada 1 Juli 1993 dikeluarkan kemasan baru "FEDERAL PARTS" dan penggunaan stiker Hologram ASTRA yang ditampilkan pada gambar 3.4.
Gambar 3.4 Kemasan “FEDERAL PARTS” dan stiker hologram ASTRA
Pada 1 Desember 1996 diperkenalkan kemasan baru "Suku Cadang Asli Astra" dan stiker Hologram ASTRA yang ditampilkan pada gambar 3.5.
Gambar 3.5 Kemasan “Suku Cadang Asli Astra” dan stiker hologram ASTRA
Pada 1 Juli 1999 PT Astra International membentuk divisi baru bernama PT Astra International - Parts Sales Operation untuk menangani semua penjualan "Suku Cadang Asli Astra" .
Pada 1 Januari 2000 PT Astra International - Parts Sales Operation memperkenalkan kemasan baru "ASPIRA" dengan logo PT Astra International dan stiker hologram "Astra International" untuk memasarkan suku cadang kendaraan bermotor roda 2 (Honda, Yamaha, Suzuki, Kawasaki) dan Roda 4. Kemasan baru tersebut ditampilkan pada gambar 3.6.
Gambar 3.6 Kemasan “ASPIRA” untuk kendaraan bermotor roda 2 dan 4
Pada 1 Juli 2000 PT Astra International - Parts Sales Operation merger kepada PT Astra Komponen Indonesia (ASKI) dengan tetap menjual produk yang menggunakan kemasan "ASPIRA" .
Pada 1 Nopember 2000 diperkenalkan penggunaan kemasan baru "ASPIRA" dengan logo PT Astra Komponen Indonesia dan stiker hologram baru "Astra Komponen Indonesia" yang ditampilkan pada gambar 3.7.
Gambar 3.7 Kemasan “ASPIRA” dengan logo PT. ASTRA Komponen Indonesia
Dalam penggunaan stiker Hologram, dilakukan pengembangan desain khusus dari waktu ke waktu untuk menjamin keaslian produk yang dibeli konsumen yang ditampilkan pada gambar 3.8.
Gambar 3.8 Perkembangan stiker hologram PT. ASTRA Komponen Indonesia
3.1.2 Struktur Organisasi
Struktur Organisasi PT. ASTRA Komponen Indonesia dapat dilihat pada gambar 3.9 dan deskripsi tiap jabatan tidak dijabarkan disini karena alasan kerahasiaan perusahaan.
3.2 Analisis Sistem Yang Sedang Berjalan
Alur pengiriman barang yang berjalan saat ini di PT. ASTRA Komponen Indonesia adalah sebagai berikut :
a. PT. ASTRA Komponen Indonesia mempunyai banyak salesman yang bertugas untuk mencari pelanggan dari berbagai toko di daerah Jakarta. Salesman tersebut berpusat di kantor yang terpisah dengan kantor PT. ASTRA Komponen Indonesia. Para salesman tersebut berkeliling di Jakarta untuk menawarkan produk ASPIRA ke berbagai toko. Setelah mendapatkan permintaan dari para pelanggan, mereka kembali ke kantor dan mengirimkan data-data permintaan dan pelanggan ke kantor PT. ASTRA Komponen Indonesia berupa SO (Sales
Operation).
b. Setelah SO diterima, dicetak DO (Demand Operation) untuk dapat melanjutkan proses pengiriman.
c. Dengan data-data dari DO, para pekerja mulai men-unload barang dari gudang. Barang-barang yang tersimpan pada gudang berjumlah grosir dan yang akan dipakai pada pengiriman untuk daerah Jakarta bersifat retail atau berjumlah kecil karena pengiriman hanya kepada toko-toko penjual atau bengkel di Jakarta. Barang-barang yang ada di DO dikemas sesuai jumlah permintaan ke dalam plastik-plastik kemasan apabila jumlah yang diminta lebih kecil dari jumlah yang ada dalam kemasan sebelumnya.
d. Setelah semua pengemasan selesai, barang-barang dikirim ke bagian pengecekan. Bagian ini kemudian mengecek apakah barang dan jumlahnya benar sesuai DO
yang dicetak sebelumnya. Apabila semua telah benar, barang-barang tersebut diberi label sesuai dengan daerah tujuan.
e. Barang-barang ber-label tersebut dikelompokan di sebuah area loading sesuai dengan daerahnya masing-masing. Misalkan barang A bertujuan Tebet, barang B bertujuan Palmerah, maka barang A akan dikelompokan pada area Jakarta Selatan sedangkan barang B akan dikelompokan pada area Jakarta Barat.
f. Barang-barang yang telah dikelompokan tersebut akan dimuat ke dalam alat transportasi yang ada berupa truk Colt Diesel Ankle yang dapat memuat 7 m3. g. Beriringan dengan jalannya proses di atas, dibuat rute yang diinginkan sesuai
dengan DO yang diterima pada hari tersebut. Rute yang dibuat akhirnya akan dipergunakan oleh pengendara truk untuk mengirimkan barang ke daerah yang dimaksud.
Sekarang ini, pengiriman dilakukan dengan pengelompokan toko-toko yang berdekatan menjadi area-area tertentu sehingga satu kendaraan hanya melayani satu area. Jarak dari tiap kendaraan akan berbeda karena jumlah toko yang ada pada suatu area berbeda dengan area lainnya. Rute dengan jumlah toko yang lebih sedikit akan mempunyai banyak waktu kosong karena jarak yang ditempuh akan lebih pendek. Program yang ada sekarang memakai algoritma Farthest Insertion atau Farthest
Addition yang kemudian disempurnakan dengan algoritma 3-opt. Masalah yang ada
adalah bagaimana dapat memaksimalkan kinerja pengiriman barang yang telah ada tersebut.
3.3 Usulan Pemecahan Masalah
Oleh sebab itu, dirancang program yang dapat memenuhi pembuatan rute untuk permintaan toko-toko di seluruh area Jakarta sehingga jarak dan kapasitas kendaraan dapat lebih dioptimalkan. Program ini akan menghitung jarak minimum untuk area-area yang terdapat di Jakarta sehingga memungkinkan untuk mengirimkan barang dengan jumlah kendaraan yang lebih sedikit. Dengan program ini diharapkan hasil yang dicapai dapat lebih optimal.
3.4 Perancangan Program Aplikasi
3.4.1 Penerapan Discrete Particle Swarm Optimization
Penerapan algoritma Discrete Particle Swarm Optimization sesuai dengan formulasi Bodin dapat digambarkan sebagai berikut :
1. Inisialisasi DPSO
Inisialisasi Parameter : Ukuran swarm, maksimum iterasi, alpha, beta, w, c1, c2,
jumlah kendaraan, kapasitas kendaraan;
Counter = 1;
Inisialisasi velocity V; Inisialisasi posisi partikel X;
Evaluasi partikel sesuai persamaan (2), (3), (4), (5), (8), (9), (10); Evaluasi fitness tiap partikel;
Dapatkan nilai Xlocalbest dan Xglobalbest;
2. Hitung Vlocalbest menurut persamaan (13) dan Vglobalbest menurut persamaan (14);
Hitung nilai V menurut persamaan (15); 3. Dapatkan nilai X menurut nilai V;
Jika (random > V) X = 1; Selain itu X = 0;
4. Evaluasi hasil dengan syarat-syarat sesuai persamaan (2), (3), (4), (5), (6), (7), (8), (9), (10);
5. Evaluasi fitness tiap partikel dengan persamaan (1);
6. Dapatkan nilai Xlocalbest dan Xglobalbest dan perbaharui nilai Xlocalbest dan Xglobalbest;
7. Hasilkan solusi baru berdasarkan pair exchange;
8. Evaluasi hasil dengan syarat-syarat sesuai persamaan (2), (3), (4), (5), (6), (7), (8), (9), (10);
9. Hitung fitness dari partikel tersebut dengan persamaan (1);
10. Jika fitness mempunyai hasil yang baik perbaharui solusi yang telah ada; 11. Evaluasi nilai Xlocalbest dan Xglobalbest;
12. Ulangi proses dari nomer 6 selama sejumlah iterasi 13. Counter = Counter + 1;
14. Ulangi proses dari nomer 2 sampai Counter > Maksimum Iterasi atau tidak mendapatkan nilai fitness yang lebih baik sebanyak 30 iterasi.
15. Tampilkan hasil optimalisasi;
3.4.2 Perancangan Layar
3.4.2.1 Perancangan Layar Utama
Layar menu utama merupakan layar utama pada aplikasi di mana layar ini merupakan layar yang pertama kali muncul sewaktu menjalankan aplikasi serta layar terakhir yang tampil pada saat aplikasi berakhir. Komponen yang terdapat pada layar
menu utama adalah semua komponen menu yang mencakup fasilitas yang bisa dilakukan oleh aplikasi. Rancangan layar utama dapat dilihat pada gambar 3.10.
Gambar 3.10 Rancangan Layar Utama
3.4.2.2 Perancangan Layar Input
Layar input merupakan layar di mana pengguna dapat memasukan data tentang daerah mana saja yang akan dipakai untuk pengiriman dan juga jumlah barang yang akan dikirim ke daerah tersebut. Rancangan layar input seperti pada gambar 3.11 hanya menampilkan sebagian dari daerah-daerah yang dapat dimasukan sebagai input. Jumlah semua daerah yang dapat dimasukan sebagai input adalah 31 daerah. Pada kolom daerah tersebut, kotak di sebelah kiri nama daerah dapat ditandai yang menandakan bahwa daerah tersebut akan dipakai sebagai input untuk daerah pengiriman dan perhitungan. Kotak sebelah kanan dari nama daerah adalah kotak permintaan. Kotak tersebut diisi dengan nilai sebagaimana nilai permintaan dari daerah yang bersangkutan. Tombol input digunakan untuk menyimpan hasil masukan dari pengguna dan tombol clear digunakan untuk menghapus semua isi kotak-kotak dalam layar input.
PSO About
Calculate Exit
Vehicle Routing Problem Discrete Particle Swarm Optimization Studi Kasus : PT.ASTRA Komponen Indonesia Menu
Gambar 3.11 Rancangan layar Input
3.4.2.3 Perancangan Layar Calculate
Layar Calculate merupakan layar yang akan ditampilkan bila pengguna memilih sub menu Calculate dan layar ini dipakai untuk perhitungan mencari rute sesuai dengan
input yang telah dimasukan. Di layar ini pengguna dapat merubah variabel-variabel
dalam perhitungan, jumlah iterasi, jumlah kendaraan, dan jumlah partikel. Disini juga ditampilkan hasil akhir dari perhitungan rute dengan menggambarkan posisi node-node tersebut dengan posisi x dan y. Rute-rute digambarkan dengan garis antara titik-titik
Penjaringan Tanjung Priok Input Pademangan Tambora Kelapa Gading Cempaka Putih Input Back to Menu Daerah Permintaan Otista Kramat Jati Pasar Rebo Tebet Mampang Pasar Minggu Daerah Permintaan Senen Sawah Besar Clear
tersebut. Di layar ini juga ditampilkan nilai jarak dan kapasitas setelah perhitungan untuk setiap rute dan nilai jarak untuk keseluruhan. Selama melakukan iterasi diperlihatkan kotak penunjuk progress yang menunjukkan jumlah iterasi yang telah dilakukan. Tetapi kotak progress tidak selalu sampai penuh karena iterasi akan dihentikan apabila tidak mendapatkan fitness yang lebih baik selama 30 iterasi. Perincian dari layar Calculate dapat dilihat di gambar 3.12.
Gambar 3.12 Rancangan Layar Calculate
3.4.2.4 Perancangan Layar About
Pada layar ini ditampilkan data dari pembuat program, dan sedikit tentang program tersebut. Penggambaran layar About dapat dilihat pada gambar 3.13.
Tampilan dari Posisi dan Rute
Inisialisasi Full Iteration View Image Back to Menu
Tampilan dari hasil perhitungan Input variabel berupa alpha, beta, W, C1, C2, jumlah partikel, maksimum iterasi, jumlah kendaraan, dan kapasitas
Tampilan progress bar Discrete Particle Swarm Optimization
Gambar 3.13 Rancangan Layar About
3.4.3 Perancangan Modul 3.4.3.1 Modul Inisialisasi
Modul ini merupakan modul yang dipergunakan untuk inisialisasi variabel-variabel yang nantinya akan dipergunakan untuk perhitungan. Variabel-variabel-variabel tersebut seperti nilai alpha, beta, w, c1, c2, jumlah partikel, maksimum iterasi, jumlah kendaraan,
dan kapasitas kendaraan tiap kendaraan. Pada modul ini dilakukan inisialisasi posisi,
velocity, pbest, dan nilai gbest . Inisialisasi posisi dan velocity dilakukan dengan random.
Setelah itu dilakukan penggambaran node-node pada kanvas yang tersedia sesuai dengan jumlah node dan node yang terpilih dari modul input. Modul ini akan digambarkan dalam bentuk flowchart pada gambar 3.14.
PSO About
Daniel Sagita 0600653493 / 09PAW Universitas Bina Nusantara Program Generating Routing Algoritma Discrete Particle Swarm
Optimization
Data Node diambil dari PT. ASTRA Komponen Indonesia
Copyright Daniel Sagita 2007 version 1.0.0
OK Menu
3.4.3.2 Modul Input
Modul ini akan meminta user untuk memilih daerah mana saja yang akan dipakai untuk perhitungan dan pengiriman dengan memakai checkbox. Setelah memilih, perlu juga diisi nilai permintaan dari daerah yang dipilih tersebut. Setelah memilih daerah-daerah tersebut maka dapat diketahui jumlah node yang akan dipakai. Penggambaran modul tersebut seperti pada gambar 3.15.
Set Counter = 0 Set i = 0
Set semua checkbox = not checked
i < 31 Set pointer ke daerah ke i Counter = Counter + 1 Tidak Checkbox daerah = checked Ya Counter = 0 Tampilkan Message Set Jumlah Node = Counter Ya Tidak Modul Selesai Set demand = isi textbox permintaan daerah ke i Ya Tidak i++ Mulai Modul
3.4.3.3 Modul Cek Fitness
Modul ini digunakan untuk mengecek apakah posisi yang telah terbentuk untuk tiap partikel tidak melewati nilai-nilai batasan yang ada berupa jumlah kapasitas dan jarak yang telah ditempuh tiap kendaraan. Apabila nilai tersebut telah melebihi batas, dilakukan modul Move Particle untuk dapat memindahkan posisi partikel tersebut untuk dapat mencapai nilai baru. Pengecekan ini dilakukan berulang-ulang hingga posisi partikel tersebut tidak lagi melebihi batasan-batasan tersebut. Penggambaran modul ini seperti pada gambar 3.16.
Set Check = true Set j = 0 Set Kapasitas, Jarak Set Maksimum Jarak,
Maksimum Kapasitas
Set Jumlah Kendaraan Set gbest dan pbest
j < Jumlah Kendaraan Set Check = false Jalankan modul Cek Partikel Jarak < maksimum jarak Kapasitas < maksimum kapasitas Ya Tidak Tidak Check = false Ya Tidak Tidak Jalankan modul Move Particle Cek Partikel Jalankan modul storebest Ya Modul Selesai Ya j++ Mulai Modul
3.4.3.4 Modul Store Best
Modul ini berguna untuk menyimpan nilai terbaik yang ada. Nilai-nilai terbaik tersebut terbagi dua, yaitu nilai pbest dan gbest. Nilai pbest untuk posisi partikel terbaik
yang pernah dicapai oleh partikel tersebut. Sedangkan nilai gbest diambil dari posisi
terbaik yang pernah dicapai oleh semua partikel. Modul ini digambarkan dalam bentuk flowchart seperti pada gambar 3.17.
3.4.3.5 Modul Move Particle
Pada modul ini dilakukan update velocity dengan mencari nilai Vlocalbest dan
Vglobalbest. Setelah menemukan nilai-nilai tersebut, dipakai persamaan yang ada pada
operasi DPSO untuk mendapatkan nilai velocity yang baru. Nilai velocity inilah yang akan dipakai untuk update position. Posisi yang telah ada sebelumnya di-update dengan cara mencari nilai random antara 0 dan 1. Setiap bit akan mencari nilai random yang akan dibandingkan dengan nilai velocity tiap bit. Bila nilai random tersebut lebih besar dari nilai velocity di posisi yang bersangkutan, maka nilai di posisi tersebut bernilai 1 dan bila tidak lebih besar bernilai 0. Setelah selesai, posisi tersebut dicek apakah setiap posisi hanya dilayani oleh satu kendaraan dan dilewati satu kali. Modul ini akan digambarkan seperti pada flowchart pada gambar 3.18.
3.4.3.6 Modul Tukar
Modul ini berguna untuk melakukan Pair Exchange. Dengan adanya modul ini, variasi solusi yang ada akan semakin bervariasi. Urutan-urutan dari tiap partikel akan ditukar dengan yang bersebelahan untuk mendapatkan urutan baru. Modul ini akan diulangi berulang kali agar kombinasi urutan dari jumlah node tercapai. Nilai perulangan didapat setelah dilakukan percobaan untuk jumlah node tertentu karena nilai perulangan yang terlalu besar akan memakan waktu perhitungan yang lama sedangkan nilai perulangan yang terlalu kecil tidak akan menemukan nilai terbaik yang ingin dicapai. Modul ini akan digambarkan seperti pada flowchart pada gambar 3.19.
3.4.3.7 Modul Cek Partikel
Modul ini berguna untuk mengecek partikel yang bersangkutan dengan batasan-batasan seperti apakah setiap node dilayani hanya oleh satu kendaraan dan dilalui satu kali. Bila node tersebut mempunyai nilai 1 lebih dari satu pada posisi yang bersangkutan, akan dilakukan random untuk nilai mana yang akan bernilai 1. Dan apabila pada posisi yang bersangkutan semua nilainya bernilai 0 atau tidak ada kendaraan yang melayani
node tersebut, dilakukan random untuk mencari nilai mana yang akan dijadikan bernilai
3.4.4 Perancangan Struktur Menu
Pada bagian ini akan digambarkan susunan atau struktur menu yang dirancang pada program. Pada menu utama terdapat pilihan untuk memilih menu input, menu
calculate, menu exit, dan menu exit. Penjabaran struktur menu dapat dilihat pada gambar
3.21.
Gambar 3.21 Struktur Menu
3.4.5 Diagram Transisi (State Transition Diagram)
Pada gambar 3.22 ditampilkan diagram transisi dari menu utama. Diperlihatkan bahwa pengguna dapat memilih menu Input, Calculate, About, atau Exit. Jika pengguna memilih menu Input maka akan ditampilkan sub menu Input. Jika pengguna memilih menu Calculate maka akan ditampilkan sub menu Calculate yang dapat menghitung dan menampilkan rute dari data yang telah dimasukkan. Jika pengguna memilih menu About maka akan ditampilkan layar About dan jika memilih Exit maka program akan ditutup.
Menu Utama Sub Menu Input Sub Menu Calculate Menu About Sub Menu Exit Menu PSO
Gambar 3.22 Diagram Transisi dari Menu Utama
3.4.6 Perancangan Spesifikasi Proses
Berikut akan diberikan spesifikasi proses dalam aplikasi pembentukan rute menggunakan algoritma Discrete Particle Swarm Optimization PT. ASTRA Komponen Indonesia
Proses Menu Utama
Non-aktifkan pilihan menu Calculate Jika memilih menu Input maka
Tampilkan menu Input
Jika menekan tombol Input maka
Jika tidak ada checkbox yang dipilih maka
pengiriman”
Selain itu
Tampilkan message “Input Berhasil”
Ambil data daerah-daerah yang dipilih
Aktifkan menu Calculate
Akhir Jika
Akhir Jika
Jika menekan tombol Back to Menu maka
Tutup form Input
Kembali ke menu utama
Akhir Jika
Akhir Jika
Jika memilih menu Calculate maka
Non-aktifkan tombol Full Iteration
Jika menekan tombol Inisialisasi maka
Ambil data variabel
Inisialisasi variabel
Inisialisasi partikel
Inisialisasi velocity V
Inisialisasi posisi X
Evaluasi fitness dari tiap partikel Inisialisasi Xlocalbest dan Xglobalbest
Gambarkan node-node pada kanvas
Akhir Jika
Jika memilih tombol Full Iteration maka
Ulangi
Perbaharui velocity
Jalankan swarm
Evaluasi fitness
Perbaharui nilai Xlocalbest dan Xglobalbest
Ulangi
Jalankan pair exchange Evaluasi fitness
Jika fitness baik maka Posisi baru diterima
Cek nilai “best” apakah perlu perbaharui
Jika perlu maka
Perbaharui nilai Xlocalbest
Perbaharui nilai Xglobalbest
Akhir Jika
Akhir Jika
Sampai sejumlah iterasi
Sampai maksimum iterasi atau fitness tidak lebih baik selama 30
iterasi
Aktifkan tombol View Image
Akhir Jika
Gambarkan rute pada kanvas
Akhir Jika
Jika memilih tombol Back to Menu maka
Tutup form Tampil
Kembali ke menu utama
Akhir Jika
Akhir Jika
Jika memilih menu About maka
Tampilkan data About pada form tersebut
Jika menekan tombol OK maka
Tutup data About pada form
Tampilkan menu utama
Akhir Jika
Akhir Jika
Jika memilih menu Exit
Tutup form Utama
Keluar dari aplikasi
Akhir Jika