Archive

Archive for the ‘Web Engineering’ Category

Cara Ambil Harga Pengiriman (Ongkos Kirim) JNE dengan PHP

3 August 2012 86 comments

Setelah melakukan pencarian panjang akhirnya saya menemukan apa yang saya cari , yaitu : cara menghitung biaya pengiriman JNE.

Awalnya saya search di google dengan keyword “JNE API”. Mengejutkan hasilnya, ternyata JNE tidak mengeluarkan atau membuat API. Entah dengan alasan apa perusahaan pengiriman itu memproteksi diri untuk tidak membuat API. Bahkan sekarang teknik-teknik lama sudah tidak bisa digunakan karena adanya captcha di web nya JNE(padahal dulu gak ada). Semakin jelas kan klo JNE memang memproteksi diri.

Stop. dari beberapa hasil pencarian google dengan keyword di atas akhirnya saya “nyasar” di http://api.ongkir.info/docs/index.html. dan inilah yang saya cari-cari selama ini.

Di bagian paling bawah web ongkir.info ada tulisan “Ongkir.Info tidak berafiliasi dengan perusahaan yang disebutkan.” WTF?? Saya heran  justru web/orang lain malah yang membuat API JNE.

Ok, cukup sampai sini kejengkelan saya terhadap JNE. Kita lanjut bagaimana cara memanfaatkan API yang diberikan oleh ongkir.info ini ?

pertama silahkan baca disini http://api.ongkir.info/docs/starting.html

Selanjutnya, lakukan registrasi di http://api.ongkir.info//akun/registrasi

Setalah mendapakan email verifikasi dari ongkir.info maka login ke http://api.ongkir.info/akun/login. Jika login sukses maka anda akan mendapatkan API-Key berupa deretan karakter sepanjang 32, digunakan untuk validasi pemanggilan API.

selanjutnya untuk memudahkan penggunaan API Ongkir.Info, telah disediakan pustaka (library) Anda dapat mendownload di http://api.ongkir.info/docs/example/php_sample.html.  buat file baru dengan nama class.php, copy paste script php di bagian Wrapper untuk API City dan Wrapper untuk API Cost.

berikut ini file class.php yang sudah saya modifikasi sedikit.


<?php
function get_city($query,$type)
{
//library yang harus anda download
require_once 'REST_Ongkir.php';

 $rest = new REST_Ongkir(array(
 'server' => 'http://api.ongkir.info/'
 ));

//ganti API-Key dibawah ini sesuai dengan API Key yang anda peroleh setalah mendaftar di ongkir.info
 $result = $rest->post('city/list', array(
 'query' => $query,
 'type' => $type,
 'courier' => 'jne',
 'API-Key' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ123456' ), 'JSON');

 try
 {
 $status = $result['status'];

 // Handling the data
 if ($status->code == 0)
 {
 return $cities = $result['cities'];
 //print_r($cities);
 //foreach ($cities->item as $item)
 //{
 //echo 'Kota: ' . $item . '<br />';
 // }
 }
 else
 {
 echo 'Tidak ditemukan kota yang diawali "band"';
 }

 }
 catch (Exception $e)
 {
 echo 'Processing error.';
 }
}

function get_cost($from, $to,$weight)
{
//library yang harus anda download
 require_once 'REST_Ongkir.php';

 $rest = new REST_Ongkir(array(
 'server' => 'http://api.ongkir.info/'
 ));

//ganti API-Key dibawah ini sesuai dengan API Key yang anda peroleh setalah mendaftar di ongkir.info
 $result = $rest->post('cost/find', array(
 'from' => $from,
 'to' => $to,
 'weight' => $weight.'000',
 'courier' => 'jne',
'API-Key' =>'ABCDEFGHIJKLMNOPQRSTUVWXYZ123456'
 ));

 try
 {
 $status = $result['status'];

 // Handling the data
 if ($status->code == 0)
 {
 $prices = $result['price'];
 $city = $result['city'];

 echo 'Ongkos kirim dari ' . $city->origin . ' ke ' . $city->destination . '<br /><br />';

 foreach ($prices->item as $item)
 {
 echo 'Layanan: ' . $item->service . ', dengan harga : Rp. ' . $item->value . ',- <br />';
 }
 }
 else
 {
 echo 'Tidak ditemukan jalur pengiriman dari surabaya ke jakarta';
 }

 }
 catch (Exception $e)
 {
 echo 'Processing error.';
 }
}

//$kota = get_city('ban','origin');
//echo json_encode($kota);

?>

Setelah itu buat lah form kira-kira tamplannya seperti ini:

Read more…

Advertisements

Membuat CRUD dengan JqGrid di PHP

13 July 2012 Comments off

Hooooaaaaaaaaaaamm…..baru hibernasi ane om, dah lama hampir 1 tahun ane gak nulis

kali ini ane pengen share pengalaman ane tentang jqgrid. sebelumnya kenalan dulu om ya sama jqgrid

“JqGrid adalah salah satu plugin jquery yang populer. Dalam setiap release terbaru selalu disertakan versi demo yang bisa diinstal di komputer lokal. ” via (http://heru.wordpress.com)

cara install di komputer local ada dsni om. klo demo onlinenya disni. ini Screenshoot nya om

Jqgrid Crud dengan PHP

Jqgrid Crud dengan PHP

Gimana udah kenal kan sekrang sama jQgrid??? Yuuuuk,,,,kita buat contoh CRUD di  jqgrid dengaan PHP. Kita akan buat jqgrid dengan fitur berikut:

1. Top navigasi

2. Custom Button

3. Grouping JqGrid

4. Column Chooser /pengaturan kolom

5. Filter toolbar untuk pencarian cepat

6. custom  Add dan Edit Form menjadi dua  kolom

7. include jquery  datetime picker dan jquery dialog box

8. custom editrules

Pertama : Buat tabel seperti di bawah ini

Read more…

Materi Web Engineering

22 December 2010 Leave a comment

Pengenalan Web Engineering

22 December 2010 Leave a comment

Rekayasa web adalah proses yang digunakan untuk menciptakan aplikasi web yang berkualitas tinggi. Rekayasa web mengadaptasi rekayasa perangkat lunak dalam hal konsep dasar yang menekankan pada aktifitas teknis dan manajemen. Namun demikian adaptasi tidak secara utuh, tapi dengan perubahan dan penyesuaian. Rekayasa web gabungan antara web publishing (suatu konsep yang berasal dari printed publishing) dan aktifitas rekayasa perangkat lunak. Dikatakan demikian karena desain sebuah aplikasi web menekankan pada desain grafis, desain informasi, teori hypertext, desain sistem dan pemrograman.

Ciri dan sifat WebApp (Web Application)


Aplikasi web berbeda dari software lain karena hal-hal dibawah ini:

  1. Network intensive. Sifat dasar dari WebApp (aplikasi web) adalah aplikasi ini ditujukan untuk berada di jaringan dan memenuhi kebutuhan komunitas yang berbeda.
  2. Content-Driven. Sebagian besar fungsi dari WebApp adalah untuk menyajikan informasi dalam bentuk teks, grafik, audio dan video ke end user.
  3. Continuous evolution. Selalu berkembang secara terus menerus.
  4. Document-oriented. Halaman-halaman situs yang statis akan tetap ada sekalipun sudah ada pemrograman web dengan java atau yang lain.

Selain itu WebApp memiliki karakteristik seperti berikut ini :

  1. Immediacy. Diperlukan segera untuk memenuhi ditayangkan, dipasarkan dalam waktu singkat.
  2. Security. Untuk melindungi isi yang sensitif dan menyediakan pengiriman data yang aman, keamanan suatu WebApp harus diterapkan pada seluruh infrastruktur yang mendukung WebApp dan termasuk dalam WebApp sendiri.
  3. Aesthetics. Daya tarik utama WebApp adalah tampilan dan keindahan. Jika WebApp digunakan untuk memasarkan suatu produk maka sisi aestetika harus diperhatikan sebagaimana sisi teknis.

Faktor-faktor yang menentukan kualitas suatu web digambarkan pada gambar 1.

Faktor-faktor kualitas pada gambar 1 adalah faktor-faktor yang membantu web developer dalam merancang dan membangun webapp yang dapat diterima dan memenuhi kebutuhan end user yang begitu beragam. Untuk memenuhi faktor-faktor kualitas tersebut, perancangan dan implementasi webapp terkait dengan 3 teknologi yang sangat penting yaitu: component-based
development, security dan standart Internet. Seorang web developer harus mengenal 3 teknologi ini untuk membangun webapp yang berkualitas:

  • Component-based development : CORBA,DCOM/COM dan JavaBeans merupakan standar yang memungkinkan web developer menggunakan komponenkomponen yang sudah ada untuk berkomunikasi dengan sistem pada level lain.
  • Keamanan: enkripsi, dan firewall
  • standart Internet: HTML, XML

Dikutip dari Umi Proboyekti, S.Kom, MLIS, Rekayasa Perangkat Lunak Teknik Informatika UKDW



Categories: Web Engineering

Tugas Web Engineering III

1 November 2010 1 comment


1.Jelaskan konsep integrasi sistem

Dalam konteks sistem informasi, sistem terintegrasi (integrated system) merupakan sebuah rangkaian proses untuk menghubungkan beberapa sistem-sistem komputerisasi dan software aplikasi baik secara fisik maupun secara fungsional. Sistem terintegrasi akan menggabungkan komponen sub-sub sistem ke dalam satu sistem dan menjamin fungsi-fungsi dari sub sistem tersebut sebagai satu kesatuan sistem.

Ada beberapa metode yang dapat dipergunakan dalam membangun sistem terintegrasi, sebagaimana yang direferensikan berdasarkan artikel dari Wikipedia yaitu :

  • Vertical Integration, merupakan proses mengintegrasikan sub-sub sistem berdasarkan fungsionalitas dengan menghubungkan sub-sub sistem yang sudah ada tersebut supaya bisa berinteraksi dengan sistem terpusat dengan tetap berpijak pada arsitektur sub sistem yang lama. Metode ini memiliki keuntungan yaitu dapat dilakukan dengan cepat dan hanya melibatkan beberapa entitas development yang terkait dalam proses pembuatan sistem lama. Kelemahannya, metode ini tidak memungkinkan untuk mengimplementasikan fungsi-fungsi baru atau proses bisnis baru ke dalam sub-sistem yang sudah ada – karena effort lebih tinggi ada di proses “mempelajari” arsitektur sistem lama dan menjadikannya acuan untuk membuat sistem terintegrasi. Untuk menghadirkan ekspansi fungsionalitas atau proses bisnis baru adalah harus membuat sub-sistem baru.
  • Star Integration, atau lebih dikenal sebagai spaghetti integration, adalah proses mengintegrasikan sistem dengan cara menghubungkan satu sub sistem ke semua sub-sub sistem lainnya. Sebuah fungsi bisnis yang diimplementasikan dalam sebuah sub sistem akan di-broadcast ke semua sub-sub sistem lain yang dependen terhadap fungsi bisnis tersebut supaya dapat dipergunakan sebagaimana mestinya. Untuk integrasi sistem dengan ruang lingkup kecil atau menengah dan dengan pemisahan fungsi bisnis yang jelas dan spesifik, metode integrasi ini layak untuk dipertimbangkan. Namun jika fungsi bisnis banyak terlibat di beberapa sub sistem secara dependen, pada akhir proses integrasi sistem akan terlihat sedikit “kekacauan” dalam diagram – proses interkoneksi antar sub sistem akan tampak seperti spaghetti. Efeknya, biaya perawatan dan ekspansi sistem di masa yang akan datang akan memerlukan effort yang sangat berat untuk mempelajari skema integrasi sistem berikut dependency-nya.
  • Horizontal Integration, atau ada yang mengistilahkan dengan Enterprise Service Bus (ESB), merupakan sebuah metode yang mengintegrasikan sistem dengan cara membuat suatu layer khusus yang berfungsi sebagai interpreter, dimana semua sub-sub sistem yang sudah ada akan berkomunikasi ke layer tersebut

2.Jelaskan arsitektur SOA + Gambar!

SOA singkatan dari Services Oriented Architecture, sebuah arsitektur berbasiskan pelayanan, yang memungkinkan semua entitas menjadi sebuah pelayanan yang bersifat melayani. Lebih mudahnya implementasi SOA adalah merubah sebuah aplikasi yang pertama hanya dipakai untuk entry menjadi sebuah aplikasi yang dapat berinteraksi dengan aplikasi lain, dan sifatnya tidak point-to-point. Tentu saja SOA lebih luas dari contoh yang dijelaskan. SOA itu saat ini terkadang dipaksakan mengikuti produk yang dikeluarkan vendor, yang oleh vendor besar disebut SOA Suite, tetapi sebenarnya lebih luas dari yang kita bayangkan

Gambar di atas menjelaskan arsitektur SOA pada umumnya. Terdiri dari banyak Service yang tidak saling berkomunikasi, serta memiliki masing-masing database; ESB (Enterprise Service Bus) yang mendaftar fungsi-fungsi yang ada di Service; BPM (Business Process Management) yang bertugas untuk merancang banyak bisnis proses dimana fungsi-fungsi yang digunakan diambil dari ESB; dan terakhir terdapat satu atau beberapa User Interface untuk menjalankan bisnis proses yang ada di BPM.

Selain dari penggolongan di atas, dapat pula digolongkan sebagai berikut:

1.  Data Layer, yaitu bagian dari aplikasi yang berhubungan langsung dengan database.
2.  Logic Layer, yaitu bagian dari aplikasi yang berhubungan dengan proses bisnis dalam aplikasi.
3.  Presentation Layer, yaitu bagian dari aplikasi yang menampilkan GUI ke pengguna.

Read more…

Tugas Web Engineering II

1 October 2010 Leave a comment

Jelaskan tentang non-linear disorientation dan cognitive overload yang terkait dengan hypertext dari aplikasi web!

Jawaban

  1. Non-Linear  merujuk kepada kondisi dimana saat pengguna tidak dapat kembali menuju informasi yang sebelumnya ia akses.
  2. disorientation merujuk kepada kondisi dimana saat seorang pengguna berada pada dokumen tertentu, ia sudah tidak mengerti lagi sedang berada dimana.
  3. cognitive overload merujuk kepada kondisi dimana saat pengguna tidak dapat mengingat sejauh mana ia telah membaca atau pokok-pokok utama yang telah terbaca. Sehingga seolah-olah pengguna benar-benar merasa tersesat saat berada pada dokumen tersebut.

Cara Menagatasi Lost in Hypertext

Penyediaan overview diagram (sitemap) dan sarana navigasi yang memadai

Overview diagrams atau sitemaps yang memvisualisasikan struktur dan isi dari ruang informasi dan menginformasikan user pada titik mana dia berada, informasi lain yang mungkin relevan serta bagaimana mengaksesnya dapat menjadi tool yang sangat berguna sebagai bantuan orientasi dan navigasi untuk mencegah user mengalami disorientasi yang berujung pada fenomena LiH.

Mengurangi space informasi

Membatasi space untuk menyajikan informasi, dan hanya menyediakan informasi relevan yang dibutuhkan oleh user adalah metode yang sangat lazim digunakan untuk mencegah fenomena LiH. User hanya diberikan rangkuman atau fragment dari sebuah dokumen sesuai dengan tujuannya pada saat bersangkutan.

Konsep Adaptive Hypermedia

Konsep AH mengusung bahwa hyperlink antar dokumen tidak mesti bersifat statis. Permasalahan dengan static hyperlink adalah, ia “membatasi” pilihan navigasi user dan tidak memperhitungkan apa saja yang telah dilihat user sebelum sampai ke titik tertentu serta tidak memperhatikan jenis presentasi apa yang cocok bagi user bersangkutan. Dalam kasus tertentu kekurangan tersebut dapat membawa user terkena permasalahan LiH. Dengan AH, user, baik environment yang ia gunakan maupun perilakunya dijadikan sebagai faktor yang diperhitungkan untuk menciptakan hyperlink antar dokumen/media.

Memberikan petunjuk saat user mulai “tersesat”

Pendekatan ini melibatkan semacam intelligence system yang dapat mendeteksi saat user mengakses informasi yang kemungkinan besar tidak relevan dengan pattern akses mereka sebelumnya.

    Categories: Web Engineering Tags: ,

    Tugas Web Engineering I

    1 October 2010 1 comment

    1. Jelaskan tentang software engineering!
    2. Jelaskan tentang Agile Software Development!
    3. Jelaskan tentang Extreme Software Development!

    Jawab

    1. Rekayasa perangkat lunak (RPL, atau dalam bahasa Inggris: Software Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas.

    Menurut Fritz Badar, software engineering adalah disiplin ilmu yang menerapkan prinsip- prinsip engineering agar mendapatkan software yang ekonomis yang dapat dipercaya dan bekerja lebih efisien pada mesin yang sebenarnya.

    2. Kata Agile berarti bersifat cepat, ringan, bebas bergerak, waspada. Konsep Agile Software Development dicetuskan oleh Kent Beck dan 16 rekannya. Dalam Agile Software Development interaksi dan personel lebih penting dari pada proses dan alat, software yang berfungsi lebih penting daripada dokumentasi yang lengkap, kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap tanggap terhadap perubahan lebih penting daripada mengikuti rencana.

    Salah satu ciri dari Agile Software Development adalah tim yang tanggap terhadap perubahan. Mengapa? Karena perubahan adalah hal yang utama dalam pembangunan software: perubahan kebutuhan software, perubahan anggota tim, perubahan teknologi dll. Selain itu Agile Software Development juga melihat pentingnya komunikasi antara anggota tim, antara orang-orang teknis dan businessmen, antara developer dan managernya. Ciri lain adalah klien menjadi bagian dari tim pembangun software.

    Categories: Web Engineering Tags: ,
    %d bloggers like this: