Senin, Oktober 05, 2009

Bagaimana memilih metodologi pengembangan sistem yang tepat?

Pada tulisan sebelumnya saya telah memaparkan beberapa metodologi yang dapat digunakan dalam pengembangan sebuah sistem informasi. Pertanyaannya kemudian, metodologi apa yang sebaiknya digunakan?


Memilih sebuah metodologi bukanlah hal yang mudah dilakukan karena tidak satupun metodologi yang bisa dikatakan terbaik. Setiap organisasi biasanya memiliki standarisasi tertentu. Sebenarnya banyak hal yang bisa dijadikan pertimbangan dalam pemilihan sebuah metodologi. Pada gambar berikut ditampilkan komparasi dari metodologi pengembangan sistem.

Klik untuk memperjelas gambarBeberapa pertimbangan pemilihan metodologi meliputi; kejelasan kebutuhan pengguna (clarity user requirement), penguasaan teknologi (familiarity with technology), tingkat kerumitan sistem (system complexity), tingkat kehandalan sistem (system realibility), waktu pelaksanaan (short time schedules) dan visibilitas jadwal pelaksanaan (schedule visibility)
  • Kejelasan kebutuhan pengguna
    Jika pada suatu saat kita dihadapkan pada kondisi ketidakjelasan kebutuhan pengguna, maka metodologi RAD berbasis prototipe dan prototipe sekali pakai (throwaway prototyping) merupakan salah satu metodologi yang tepat untuk digunakan.

  • Penguasaan teknologi
    Penguasaan teknologi merupakan satu bagian yang vital untuk dipertimbangkan dalam menentukan sebuah metodologi. Familiaritas terhadap teknologi dasar yang tidak memadai akan menimbulkan pembengkakan waktu dan biaya.

  • Tingkat kerumitan sistem yang akan dibangun
    Sistem yang kompleks membutuhkan analisis dan desain yang sangat hati-hati. Oleh karena itu methodologi agile dan prototyping dipandang kurang begitu baik diterapkan jika tingkat kerumitan sistem sangat tinggi.

  • Tingkat kehandalan sistem
    Kehandalan sistem biasanya merupakan faktor penting dalam pengembangan sistem. Metodologi berbasis prototipe umumnya bukan pilihan yang baik karena mereka kurang berhati-hati tahap analisis dan desain.

  • Waktu pelaksanaan pengembangan
    Metodologi berbasis RAD cocok untuk proyek-proyek dengan jadwal waktu singkat yang membutuhkan kecepatan deliverables. metodologi berbasis waterfall adalah pilihan terburuk ketika waktu adalah penting karena tidak memungkinkan untuk memudahkan perubahan jadwal.

  • Visibilitas jadwal pelaksanaan
    Metodologi berbasis RAD banyak bergerak dari keputusan2 penting sehingga metodologi ini paling cocok diterapkan jika manager proyek mengenali dan memberikan perhatian lebih bagi tahapan yang mempunyai faktor resiko dan ekspetasi yang tinggi.
Setelah membaca ulasan ini, semoga kita tak lagi bingung untuk mencantumkan metodologi apa yang akan digunakan saat kita mulai menuliskan sebuah proposal proyek pengembangan sistem informasi. Semoga...

Referensi:
- Systems Analysis and Design with UML Version 2.0: An Object-Oriented Approach, 2nd Edition, Alan Dennis, Barbara Wixom, and David Tegarden, 2005

Senin, September 14, 2009

Mengenal Metodologi Pengembangan Sistem Informasi

Pada saat dihadapkan pada pemilihan metodologi pengembangan sistem, banyak diantara kita yang akhirnya bingung. Padahal salah menentukan metodologi, dapat merembet ke penyusunan jadwal, staffing proyek, biaya dan lain-lain. Oleh karena itu, pemilihan metodologi menurut saya merupakan bagian yang lumayan penting, tidak hanya pada saat pengembangan sistem informasi namun juga pada pengembangan proyek-proyek lain.

Dalam pengembangan sebuah sistem, kita mengenal konsep SDLC (system development life cycle). Secara global definisi SDLC dapat dikatakan sebagai suatu proses berkesinambungan untuk menciptakan atau merubah sebuah sistem, merupakan sebuah model atau metodologi yang digunakan untuk melakukan pengembangan sistem. Dapat dikatakan dalam SDLC merupakan usaha bagaimana sebuah sistem informasi dapat mendukung kebutuhan bisnis, rancangan & pembangunan sistem serta delivering-nya kepada pengguna.

Secara umum, tahapan SDLC meliputi proses perencanaan, analisis, desain dan implementasi.

Planning
Proses perencanaan biasanya lebih menekankan pada alasan mengapa sebuah sistem harus dibuat.

Analysis
Tahapan perencanaan ini kemudian dilanjutkan dengan proses analisis yang lebih menekankan pada siapa, apa, kapan dan dimana sebuah sistem akan dibuat.

Design
Sedangkan pada proses desain lebih menekankan kepada bagaimana sistem akan berjalan
Implementation
Tahap terakhir dilanjutkan dengan fase implementasi yaitu proses delivery-nya kepada pengguna.

Pendekatan formal tahapan pengembangan sistem disebut metodologi. Saat ini bermacam-macam metodologi dalam pengembangan sistem. Wah, tambah bingung aja milihnya dong.. Nggak usah kuatir, sampeyan dapat memilih metodologi yang tepat disesuaikan dengan kebutuhan proses bisnis dan data yang mendukungnya.

Beberapa metodologi yang biasa dikenal antara lain Structural Design, Rapid Application Development (RAD) dan Agile Development.

Structural Design

Merupakan sebuah metode pengembangan sistem dimana antara satu fase ke fase yang lain dilakukan secara berurutan. Biasanya sebuah langkah akan diselesaikan terlebih dahulu sebelum melanjutkan ke fase berikutnya. Keuntungan menggunakan metodologi ini requirement harus didefinisikan lebih mendalam sebelum proses coding dilakukan. Disamping itu metodologi ini memungkinkan sesedikit mungkin perubahan dilakukan pada saat proyek berlangsung. Namun, metodologi ini juga mempunyai beberapa kelemahan, diantaranya desain harus komplit sebelum programming dimulai, serta jika terjadi fase yang terlewati, maka biaya yang akan ditimbulkan akan lumayan besar.

Bagian dari metodologi ini antara lain Waterfall Modeling dan Parallel Development. Berbeda dengan Waterfall Modeling, Parallel Development memungkinkan beberapa fase dilakukan secara bersama-sama untuk mempersingkat waktu.

Rapid Application Development (RAD)

Metodologi ini melakukan beberapa penyesuaian terhadap SDLC pada beberapa bagian sehingga lebih cepat untuk sampai ke tangan pengguna. metodologi ini biasanya mensyaratkan beberapa teknik dan alat2 khusus agar proses bisa cepat, misalnya melakukan sesi joint application development (JAD), penggunaan alat-alat computer aided software engineering (CASE Tools), kode generator dan lain-lain.

Beberapa kategori RAD misalnya Phased Development, Prototyping dan Throw-away Prototyping. Phased Development membagi sistem secara keseluruhan menjadi beberapa versi sistem. Setelah desain untuk versi pertama selesai maka akan dilanjutkan ke implementasi. Setelah versi pertama terselesaikan, maka pengembang akan memulai lagi ke versi selanjutnya.

Metodologi prototyping melakukan analisis, desain dan implementasi secara bersamaan, kemudian dilakukan secara berulang-ulang untuk mendapat review dari pengguna. Sebuah prototiping adalah sebuah sistem dalam fungsi yang sangat minimal.
Sedangkan metodologi Throwaway Prototyping hampir sama dengan metodologi Prototyping. Perbedaannya bahwa pada metodologi ini, analisis dilakukan lebih mendalam lagi.

Agile Development

Bisa dikatakan ini merupakan metodologi yang lebih cepat dalam pengembangan sebuah sistem informasi. Metodologi ini melakukan perampingan pada proses pemodelan dan pembuatan dokumentasi. Pengembangan metodologi ini adalah eXtreme Programming dan Scrum.

Referensi:
- Systems Analysis and Design with UML Version 2.0: An Object-Oriented Approach, 2nd Edition, Alan Dennis, Barbara Wixom, and David Tegarden, 2005
- http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle

Sabtu, Agustus 29, 2009

Ketika telinga sakit saat di pesawat terbang..

Bisa jadi sampeyan merupakan pelanggan setia pesawat terbang. Bisa dikatakan pesawat terbang sudah menjadi bagian hidup sampeyan. Kemana-mana naek pesawat terbang. Nah, bisa jadi pula sampeyan pernah mengalami seperti yang saya alami ketika naek pesawat terbang, telinga berdenging dan sakit saat di pesawat terbang.


Konon katanya, peristiwa sakit dan berdengingnya telinga ini dikarenakan adanya perbedaan tekanan antara kondisi didalam tubuh dengan kondisi diluar tubuh. Kondisi ini biasanya terjadi ketika pesawat sudah mulai take off dan pada saat landing. Sakitnya akan menjadi luarbiasa apabila pada saat itu kita sedang terserang pilek. Huhhh... sungguh menyiksa sekali.

Beberapa tips yang pernah saya praktekan jika mengalami hal seperti itu. Tips-tips berikut kemanjurannya bisa berbeda-beda sesuai dengan amal dan ibadah masing-masing :D
  • Mengunyah makanan atau permen
    Biasanya pada saat mau take off, mbak-mbak pramugari (ini kalo sampeyan naek pesawat selain maskapai G***** lho.. kalo naek maskapai G***** yang sampeyan temui bukan mbak-mbak, tapi emak-emak hehehe...) akan membagikan permen. Nah, ambil aja..jangan sungkan-sungkan... tapi jangan ambil semuanya, ntar penumpang yang laen ndak kebagian dong? Dan lagi kalo sampeyan ambil semua itu namanya kemaruk! Ambil secukupnya, misalnya jika penerbangannya nggak sampai 2 jam, ambil 3. Sebiji langsung kunyah aja saat pesawat mau takeof, satu lagi pada saat landing...
    Lho trus yang satu lagi? Jaga-jaga aja kalo sampeyan ternyata dapet kenalan baru di atas pesawat.. khan bisa ditawarkan buat basa-basi hehehehe..
  • Menutup hidung dan mulut, kemudian berusaha meniup udara sekuat mungkin.
    Bisa jadi saat itu pula udara yang ada tiup akan keluar melalui telinga. Namun, dalam melakukan tips ini sampeyan harus sangat hati-hati. Jika tak hat-hati, bisa jadi udara yang ditiup bukan keluar lewat kuping, namun malah lewat lubang bawah, khan bisa gaswat!!! Bisa mencemari udara satu pesawat!!
  • Menguap
    Cara ini adalah cara termudah, apalagi jika sampeyan memang kurang tidur sebelum naik pesawat. Tentunya dalam menguap harus mematuhi kaidah-kaidah penguapan. Jangan sampai gara-gara sampeyan menguap terlalu lebar, orang2 disebelah jadi kesedot semua. Khusus bagi sampeyan penggemar petai atau jengkol, pastikan sebelum menguap mulut sampeyan terbebas dari aroma kedua barang ghoib tersebut. Sekali lagi tolong ini diperhatikan.
  • Berbincang bincang atau menyanyi-nyanyi kecil
    Tak ada salahnya selama di pesawat sampeyan menyalakan ipod atau mp3 player (** mau nulis walkman, kayaknya udah nggak jaman lagi ya??) Dengarkan sebuah musik dan tak lupa ikutlah bersenandung. Jika tak bawa mp3 player, bisa juga melakukan perbincangan dengan teman duduk sebelah. Disamping mengurangi mengindari sakit telinga, tips ini juga dapat mengurangi ketegangan selama berada dalam perjalanan.
Itulah beberapa tips yang bisa dilakukan agar perjalanan udara sampeyan jadi nyaman dan menyenangkan. Alhamdulillah, menggunakan salah satu tips tersebut selama ini perjalanan udara saya jadi lebih nyaman. Jangan lupa, jika sampeyan punya tips yang lain disharing ya..

Minggu, Juni 21, 2009

Ketika kebiasaan naik metromini dibawa ke Singapore

Ini adalah kali kedua saya berkunjung ke Singapore. Berbeda dengan kunjungan sebelumnya, dimana begitu sampai Bandara kami sudah disewakan Airport Minicab yang menjemput kami menuju ke hotel, maka kunjungan kali ini tak demikian. Maklum kunjungan sebelumnya, saya bersama rombongan dan ada bos juga.


Namun, kali ini saya berkunjung ke Singapore berdua dengan Andang, salah seorang rekan kerja -- yang bisa jadi-- ini adalah kali pertama bagi dia berkunjung disini. Tanpa jemputan, maka untuk beberapa saat kami harus celingukan sesampainya di Bandara Changi. Untunglah di negara kecil di Asia Tenggara ini semuanya serba transparan. Petunjuk arah menuju pusat kota (mereka menyebutnya dengan bandar) sangat jelas diberikan di sudut-sudut bandara. Sesampainya kami di Terminal 1 kami harus oper menggunakan kereta skylift menuju Terminal 2 (T2). Kereta ini disediakan dengan cuma-cuma. Kemudian dari T2 kami harus pindah menggunakan kereta cepat MRT menuju hotel.

Tak lupa kami harus membeli kartu bayar yang disebut EZ Link Card. Harganya untuk dewasa S$ 15 yang terdiri dari biaya kartu S$ 5 dan nilai deposit kartu yang bisa digunakan S$ 10. Penggunaan kartu ini cukup mudah, kita tinggal meletakkan saja kartu tersebut di card reader yang disediakan di stasiun atau bis kota. Kemudian begitu sampai kita juga harus meletakkan kembali kartu tersebut di card reader. Di stasiun MRT fungsi lain kartu ini adalah untuk membuka pintu masuk dan keluar, maka nilai deposit kartu akan otomatis dikurangi sesuai dengan jarak perjalanan kita. Satu kartu bisa digunakan untuk kereta, bis dan beberapa jenis taksi. Wah sungguh praktis sekali ya... kapan teknologi kayak gini ada di Jakarta. Khan asyik kita nggak perlu repot-repot bawa uang tunai kemana-mana jika bepergian.

Suatu ketika, kami sedang menuju ke China Town untuk mencari makan malam. Kebetulan untuk kesana kami harus menumpang salah satu biskota dari hotel. Setelah kami menentukan nomor bis yang harus kami tumpangi berdasarkan informasi di papan informasi yang terpasang di halte, kami pun mendapatkan bis yang dimaksud, nomor 51! Tak lupa kami dekatkan si kartu bayar ini di card reader begitu kami masuk. Sepanjang perjalanan tersebut kami berusaha mengingat-ingat rute bis sambil sesekali memeriksa peta Singapura. Maklum, orang baru, takut nyasar hehehe.. walaupun kata orang nyasar di Singapura ini pasti akan balik lagi ke tempat semula, tapi khan kami tetap harus waspada :D

Saking asyiknya kami berusaha meningkatan kewaspadaan agar jangan sampai kelewatan, eh lha kok ndilalah bis ternyata udah sampai di halte yang seharusnya kami turun. Kami pun buru-buru loncat turun dari bis. Tapi eits... ada yang janggal. Begitu kami turun, kenapa bisnya nggak mau jalan lagi... "Ah, paling sopirnya mau ngetem dulu", begitu pikir kami. Kami pun bergegas menyusuri trotoar menuju China Town.

Kejanggalan tadi kami diskusikan dengan Andang.
"Kenopo yo Ndang, bis'e mau? (Kenapa ya Ndang bisnya tadi?)"
"Mbuh mas..(nggak tau mas)", jawab Andang.

Hening.
"Eh, mas.. kartu sampeyan mau wes tuts pas metu.. (eh mas.. kartumu udah di tuts belum pas keluar tadi?"
"Ketoke aku durung..emang kudu yo (kelihatnya sih belum.. emang harus ya?)", jawabku.
"Kudu ketoke mas... aku yo durung..( harus kelihatannya mas.. aku ya belum tuh..)"
"Wes jar'ne wae Ndang.. paling gak popo bekne (Udah biarin aja Ndang, nggak papa 'kali"
"Yo wes mas.. mugo-mugo gak popo"

Padahal.... sepanjang jalan Andang berusaha berpikir positif, kalopun kenapa-kenapa khan sopirnya pasti ngejar atau nyumpahin kita hehehe ... (emang sopir metromini, Ndang??)

Setelah selesai makan malam, kita pengen melanjutkan perjalanan ke Orchard Road. Dari sini kita harus menuju stasiun terdekat. Nah, distasiun itulah baru ketahuan jawabannya. Ternyata deposit kartu kita telah berkurang drastis secara otomatis sodara-sodara... masing-masing mencapai S$5 kurangnya.. padahal ongkos bis tak lebih dari S$ 0,90 ... ampuuunnnn....

Pelajaran yang bisa ditarik dari peristiwa ini, jangan sekali-kali kebiasaan naik metromini di Jakarta dibawa ke Singapore.. sampai tujuan langsung loncat turun. Walaupun tak terlalu membahayakan jiwa Anda karena si sopir bis di Singapore akan selalu setia menunggu, tapi hal itu cukup membuat kantong Anda shock sejenak. Waspadalah.. waspadalah!!! :((

Update info:
Sepulang dari Singapore, saya kebetulan sempat berbincang dengan sopir salah satu taksi terkenal di Jakarta perihal sistem pembayaran kartu. Perusahaan taksi ini menggunakan sistem komisi terhadap sopir-sopir yang menjalankan taksinya. Sopir tsb. bilang, di perusahaan taksinya sekarang pun telah menggunakan sistem voucher yang malah dikeluhkan oleh para sopir. Lho, kok bisa? khan malah lebih enak, sopir nggak repot-repot nyari kembalian penumpang? Ternyata, bagi seorang sopir, uang yang diterima, biasanya juga termasuk digunakan untuk makan. Pernah ada cerita, temennya seharian penuh hanya mendapat voucher saja. Hal ini mengakibatkan seharian itu pula dia tak dapat makan sedikitpun karena tak dapat uang tunai. Sampai badannya pucat dan ditolong oleh rekan sopir yang lain. Coba bayangkan jika nanti sistem pembayaran kartu seperti EZ Link di Singapore diterapkan di perusahaan taksi ini???

Di perusahaan ini, voucher tak bisa diuangkan jika sopir belum sampai pool. Voucher tersebut juga tak bisa diperjualbelikan antar sopir. Jika ketahuan, manajemen perusahaan akan memberi tindakan tegas. Repot ya, ternyata sistem yang bagus kayak apapun akan sulit jika mau diterapkan di Indonesia.
Oh, inilah potret negeriku... ** sedih..

Selasa, Mei 12, 2009

Memanggil Webservice Menggunakan Ms Visual Basic 6

STUDI KASUS: MEMANGGIL WEBSERVICE BC1.1 DI INSW

Kali ini saya akan menuliskan tentang cara memanggil sebuah method di webservice dengan menggunakan M$ Visual Basic 6. Agar lebih mantap dan aplikatif, maka saya juga menggunakan studi kasus untuk memanggil sebuah method yang telah tersedia di webservice di INSW.

Sekilas Info Tentang Data BC1.1
Data BC1.1 adalah salah satu contoh data pre-notification untuk pengiriman dokumen impor. Seringkali untuk mendapatkan data ini, importir/PPJK mengalami kesulitan. Data BC1.1 merupakan data respon dari KPBC untuk perusahaan pengangkutan (baca: shipping agent) terkait dengan pengiriman dokumen manifestnya tersebut. Setiap 1 pos di dokumen manifes biasanya terhubung dengan 1 dokumen PIB dengan menggunakan parameter data BC1.1 tersebut. Oleh karena demi peningkatan pengawasan arus barang masuk di pelabuhan, maka sejak diberlakukannya implementasi sistem PDE Manifes, Bea Cukai mewajibkan informasi data BC1.1 tercantum disetiap dokumen PIB yang di kirim ke KPBC oleh importir/PPJK.

Mulai melakukan pemrograman
Sebelum melakukan pemrograman pemanggilan service menggunakan VB6, maka terlebih dahulu kita harus melakukan instalasi SOAP Toolkit yang bisa didownload di website Micro$oft. Software ini merupakan software yang dapat diunduh gratis berisi library-library SOAP yang bisa digunakan oleh VB6.

Alamat webservice BC1.1 adalah di http://services.insw.go.id/BC11Services/Services mempunyai satu method yang bisa di invoke yaitu CekBC11. Informasi detail tentang method Cek BC11 bisa ditemukan di WSDL yang disertakan. Disana kita melihat terdapat 2 parameter input yaitu string dan string0. Penjelasan tentang method tersebut dapat diringkas menjadi tabel sebagai berikut.

Parameter yang digunakan pada saat pemanggilan adalah Nomor dan Tanggal Bill of lading. Data ini sangat spesifik dan biasanya sudah cukup dikenal oleh para importir mengingat data ini merupakan salah satu dokumen pendukung yang "wajib" ada saat mengirimkan PIB disamping invoice.

Selanjutnya, kita buka software M$ Visual Basic 6. Buat sebuah project baru (Standar exe) kemudian buat satu form yang terdiri dari textbox dan tombol-tombol seperti contoh dibawah ini dan berilah nama variabel di masing-masing obyek tersebut.

Jangan lupa, kita juga harus membuat referensi ke library SOAP Toolkit yang telah kita instal tadi. Langkahnya:
- Buka menu Projects | References
- Cari library Micro$oft SOAP Type Library v3.0

- Kemudian klik tombol OK.

Kita mulai men-coding!
Pada form yang telah kita buat tadi, klik di tombol cmdInvoke ("Get BC1.1") ikut isikan baris sebagai berikut.
Private Sub cmdInvoke_Click()
Dim wsClient As SoapClient30
Dim strWSDL As String
Dim strResult As String
Dim noBL As String
Dim tgBL As String

Set wsClient = New SoapClient30
strWSDL = "http://services.insw.go.id/BC11Services/Services?WSDL"

noBL = txtNoBL.Text
tgBL = Format(txtTgBL.Value, "DD-MM-YYYY")

wsClient.MSSoapInit strWSDL
strResult = wsClient.cekBC11(noBL, tgBL)

Text2.Text = strResult
End Sub

Selanjutnya jalankan (Run) program yang kita buat ini. Masukan paramater Nomor BL dan Tanggal BL yang valid. Contoh response yang kita dapatkan akan keluar string sbb:
001476|22/04/2009|0001.0000.0000|040000|MT. LAUREN|04|PT INDORAMA SYNTHETICS TBK,
Langkah selanjutnya kita bisa lakukan parsing data tersebut untuk digunakan lebih lanjut.
Mudah, bukan? Selamat mencoba!

Selasa, Maret 31, 2009

Belajar Mapping Dokumen UN/EDIFACT Menggunakan Software AtlasEDI/ PalapaDI

Pada tulisan sebelumnya kita telah mempelajari bagaimana proses mapping dokumen UN/EDIFACT, kali ini saya akan mengajak sampeyan untuk mempelajari lagi bagaimana caranya melakukan mapping dokumen menggunakan software EDI Enabler yang lain. Sebenarnya banyak sekali sofware translator dokumen EDI yang bisa digunakan. Salah satunya adalah AtlasEDI.

AtlasEDI merupakan salah satu software EDI Enabler yang dikembangkan pertama kali oleh Atlas Product International. Kemudian diakhir hayatnya sempat pula dikelola oleh Harbinger Corporation, salah satu perusahaan di Inggris. Saya sendiri sempet merasakan nguprek software ini mulai dari yang versi AIX, versi DOS dan terakhir adalah versi Windows (versi 4.2.x).

Pada perkembangannya, ternyata software ini di Indonesia kemudian bermutasi nama menjadi PalapaDI, yang dikembangkan oleh salah satu software house lokal Indonesia. Pada jaman kejayaannya (tahun 1990-an), software ini merupakan salah satu software EDI yang cukup mumpuni. Disamping sebagai translator EDIFACT, juga menyediakan fasilitas koneksi dengan berbagai protokol komunikasi, dari protokol proprietary hingga teknologi TCP/IP yang kala itu baru mulai ngetrend.

Sebagai contoh case study untuk sharing knowledge kali ini, saya masih tetap menggunakan dokumen PIB yang telah kita pelajari sebelumnya. Langkah-langkah melakukan mapping dokumen UN/EDIFACT di software ini adalah sebagai berikut.

Membuat Table Maintenance
Fungsi table maintenance ini sama persis dengan file EDF yang pernah saya sampaikan sebelumnya yaitu digunakan untuk menginterpretasikan struktur global message UN/EDIFACT yang telah kita tentukan. Jika sampeyan lupa, silakan baca kembali tulisan saya sebelumnya. Untuk masuk ke menu ini, sampeyan bisa masuk ke software kemudian pilih menu Administration | Message Table Maintenance.

Setelah muncul form seperti diatas, selanjutnya pilih tombol Add maka akan muncul layar Message table maintenance. Terlebih dulu pilih tab Header. Isikan kolom-kolom tersebut sesuai dengan informasi yang terdapat dalam PIA. Misalnya sbb.

Kemudian klik tombol Segment. Pada layar ini terdapat beberapa isian yaitu:

  • Label, merupakan label rekord yang didefinisikan di PIA
  • Level, merupakan level segment tag UN/EDIFACT yang dipakai. Jika ada kesempatan, saya akan tuliskan apa yang dimaksud dengan hal ini.
  • Repeat, merupakan jumlah perulangan yang dijinkan dalam segment group atau tag itu.
  • G.M/C, merupakan scope perulangan dari segment group, apakah mandatory atau conditional. Jika tidak didefinisikan C atau M, maka tag tersebut bukan merupakan kepala segment group.
  • M/C, adalah scope kemunculan dari tag itu sendiri.
  • Segment, merupakan jenis-jenis tag element UN/EDIFACT yang dipakai.
  • Description merupakan keterangan dari masing-masing tag.
Sampeyan bisa gunakan tombol-tombol di layar ini;
  • Insert --> untuk menyisipkan tag baru diantara tag-tag yang sudah ada.
  • Add --> untuk menambahkan tag baru diakhir tag
  • Delete --> untuk menghapus tag yang sudah diisikan.
Untuk menyimpan semua setting Table Maintenance ini, silakan klik tombol OK.

Melakukan Mapping Data
Proses ini hampir mirip pada saat kita membuat file HDF ditulisan sebelumnya. Klik menu Administration | Translation Setting | Data Mapping. Muncul layar Table selection, kemudian pilihlah dokumen yang akan diedit. Misalnya DOKPIB, kemudian klik tombol Edit.

Kemudian akan muncul form sebagai berikut lakukan editing terhadap tag-tag element yang diperlukan. Pastikan bahwa semua tag element telah dimasukan sesuai dengan kebutuhan yang terdapat dalam PIA.

Langkah terakhir tentu saja melakukan pengetesan terhadap pekerjaan tersebut diatas. Caranya? Untuk melakukan translate dokumen dari flat file ke bentuk EDIFACT gunakan menu Data Processing | Export Translation.

Selamat mencoba!

Rabu, Maret 25, 2009

Belajar mapping dokumen menggunakan standar UN/EDIFACT

Gak serius dulu
Buat orang awam: Opo tho yo standar UN/EDIFACT itu? Apa sejenis kue lemper? Apa enak dimakan? Atau malah bikin saya muntah jika saya mempelajarinya?
Buat orang yang sudah ngerti: Satu guru-satu ilmu dilarang ganggu.


Mulai sedikit serius
Ide menulis ini didalam blog saya sebenarnya sederhana saja. Ketika saja tanya Paman Google, adakah blog berbahasa Indonesia yang pernah membahas tentang standar UN/EDIFACT? Paman Google menjawab belum. Alasan kedua, kemaren sempet kesal ada Mr-Mr yang sotoy nggak ngerti dokumen UN/EDIFACT tapi belagu dan nyalah-nyalain orang lain. Padahal mereka cuman expert di ISO 8583. Hehehe... Ya, sudah, daripada pengetahuan ini jadi hilang dari ingatan saya, lebih baik saya tulis aja disini sekalian sharing knowledge buat pembaca sekalian. :D Itu adalah alasan ketiga.

Ini baru serius.
UN/EDIFACT merupakan singkatan dari United Nation/Electronic Data Interchange for Administration, Commerce and Transport yaitu sebuah standar dokumen yang dikembangkan dibawah naungan salah satu badan PBB untuk kepentingan pertukaran data secara elektronik untuk kebutuhan administrasi, perdagangan dan transportasi. Pada perkembangannya, standar ini dikelola dan dikembangkan lebih lanjut oleh UN/CEFACT (United Nations Centre for Trade Facilitation and Electronic Business) dibawah naungan UN Economic Commission for Europe (UN/ECE). UN/EDIFACT sendiri telah menerima sertifikasi standar ISO 9735.

Standar UN/EDIFACT telah banyak digunakan dalam kebutuhan pertukaran data elektronik antar intitusi/lembaga. Bahkan WCO telah lama merekomendasikan standar ini untuk digunakan pada instansi kepabeanan di dunia.

Di Indonesia sendiri, selain digunakan oleh pertukaran data di lingkungan kepabeanan, beberapa perusahaan pelayaran pun telah lama menggunakan standar UN/EDIFACT ini untuk bertukar data dengan para prinsipalnya.

Berikut ini kita akan belajar standar dokumen UN/EDIFACT dengan mengambil studi kasus pada penerapan sistem kepabeanan impor di Indonesia.

Dokumen Pemberitahuan Impor Barang dibeberapa Kantor Pelayanan Bea dan Cukai telah diterapkan secara elektronik dalam penyampaiannya. Bisa menggunakan media disket, maupun menggunakan fasilitas EDI provider. Untuk menggunakan cara yang kedua dibutuhkan proses integrasi agar dokumen yang disampaikan dapat dimengerti oleh tujuan. Salah satu proses integrasi tersebut adalah melakukan mapping dokumen yang dipertukarkan antara data inhouse dengan data yang dikirimkan ke jaringan EDI begitu pula sebaliknya. Tulisan ini tidak membahas secara detil tentang konsep sistem EDI, namun hanya pada proses mapping dokumen saja. Semoga lain kali jika ada waktu, saya akan menuliskannya dikesempatan yang lain.

Gambaran kerja integrasi sistem secara global adalah seperti berikut.
Modul/sistem internal akan mengeluarkan sebuah file flat kemudian oleh EDI Enabler akan dibentuk sedemikian rupa sehingga menghasilkan file berstandar EDIFACT. Pada saat menerima dokumen akan berlaku sebaliknya. Berikut ini adalah salah satu contoh isi dari flat file dokumen PIB.

(di klik aja untuk memperjelas gambar diatas)

Apakah Anda mengerti maksud dan arti disetiap baris flat file tersebut diatas? Bisa jadi banyak pembaca yang bilang nggak ngerti. Bisa jadi pula ada diantara sampeyan yang masuk kategori kemeruh dan bilang "Ya, saya ngerti!" hehehe... Tentu saja akan sulit menginterpretasikan arti tiap-tiap baris flat file tersebut jika tidak terdapat kamus datanya. Kamus data pada sistem PDE Kepabeanan disebut dengan Pedoman Integrasi Aplikasi.

Tulisan di blog ini akan menjelaskan urut-urutan membuat mapping dokumen UN/EDIFACT. Secara garis besar, urut-urutannya adalah sebagai berikut.

Tentukan jenis message yang digunakan.
Jenis message di UN/EDIFACT bisa macam-macam. Misalnya untuk dokumen PIB ini disebut dengan CUSDEC (customs declaration message). Penentuan jenis message ini dapat dilihat dari konten dan tipikal data yang akan dipertukarkan, kemudian carilah referensi di UN/EDIFACT direktori. Pilih satu message dan rilis yang cocok sesuai kesepakatan dengan PIA. Misalnya untuk dokumen impor adalah CUSDEC D98B.

Pelajari struktur dokumen
Setelah ditentukan jenis message yang digunakan, selanjutnya pelajari pula struktur dokumen yang terdapat dalam direktori tersebut. Struktur dokumen UN/EDIFACT memiliki segment table seperti berikut.

Dalam sebuah segment tabel terdapat tag (UNH, BGM dst), uraian dari masing-masing tag, scope (mandatori atau conditional kemunculannya) dan pola perulangan. Dalam tag tabel tersebut terdapat pula segment group.

Persiapkan file EDI Definition File (EDF)
File ini merupakan terminologi jika menggunakan software Intercept Plus (IPLUS) sebagai EDI Enabler, jika menggunakan software lain, bisa jadi nama filenya berbeda namun secara konsep tetap saja sama. File ini merupakan file yang isinya merupakan representasi dari struktur lengkap document message tersebut diatas. Bisa jadi tidak semua tag digunakan. Boleh saja menggunakan tag yang dibutuhkan saja untuk dituliskan. Namun kita harus hati-hati, misalnya pada contoh diatas kita akan mengambil tag FTX di segment group ke-3, maka kita tak boleh begitu saja menuliskannya di file EDF kita tanpa menuliskan tag-tag pada segment group diatasnya. Keculai jika kita hanya menginginkan tag RFF di segment group ke-1, maka kita bisa saja melewatkan tag dibawahnya ataupun tag di segment group ke 2 atau ke 3.

(Contoh file EDF. Klik untuk memperjelas)

Buatlah file Inhouse Definition File (HDF)
Langkah selanjutnya, adalah memetakan masing-masing komponen data di flat file ke dalam dokumen EDF. Kita lihat disetiap tag terdapat variabel yang bisa dipanggil oleh file HDF. Contohnya RFF0010, PAC0010 dst. Jangan lupa, untuk memetakan ini, kita harus pegang buku 'sakti' Pedoman Integrasi Aplikasi untuk masing-masing dokumen.

(Contoh file HDF. Klik gambar untuk memperjelas)

Langkah selanjutnya adalah teliti kembali pekerjaan Anda dan lakukan testing sampai tidak ditemukan error. Hehehe...

Contoh dokumen UN/EDIFACT PIB kira-kira kayak gini.

(Contoh dokumen EDIFACT PIB, sebenarnya kagak nyambung dengan flatfile yang diatas hehehe. Klik deh untuk memperjelas.)