Aplikasi Software untuk Pulsa Elektrik

Secara global, IntelliPulsa Software Pulsa Elektrik dibagi dalam 3 layer, yaitu Receiver, Forwarder, dan Sender.

intelliReceiver

Receiver bertugas untuk menerima SMS dari Reseller dan Dealer. SMS tersebut dapat berupa :
  • <!--[if !supportLists]-->SMS dari Reseller untuk pengisian pulsa, cek pulsa, meminta laporan, atau mendapatkan info produk.
  •  SMS dari Dealer untuk menambah Deposit pulsa, mendaftarkan reseller, mentransfer saldo kepada Reseller.
Receiver ini kemudian memasukkan SMS yang diterimanya kedalam database server untuk kemudian diproses.

Forwarder
Forwarder bertugas mengirimkan permintaan pengisian pulsa kepada operator selular yang bersangkutan. Forwarder ini terdiri dari enam jenis :

<!--[if !supportLists]-->1. <!--[endif]--> intelliSMS , mengirimkan permintaan dalam bentuk SMS dengan format tertentu kepada operator selular, kemudian menerima balasan yang berisi status permintaan tersebut. Ini digunakan untuk pengambilan pulsa elektrik ke supplier lewat SMS seperti Mtronik Nusapro atau Ezyload.

<!--[if !supportLists]-->1. <!--[endif]-->intelliUSSD, mengirimkan permintaan dalam bentuk USSD (MKios), dengan format tertentu kepada operator selular, kemudian menerima balasan yang berisi status permintaan tersebut. Ini digunakan untuk transaksi pulsa elektrik menggunakan USSD seperti MKIOS, Dompet Pulsa XL.

<!--[if !supportLists]-->1. <!--[endif]-->.intelliGSM, menjalankan aplikasi pengiriman pulsa yang terdapat dalam modem dengan mengotomatisasi langkah2 untuk menjalankan aplikasi tersebut. Digunakan untuk transaksi pulsa elektrik ke supplier melalui jalur layanan data seperti SEV, Dompet Pulsa atau 3.

In intelliH2H, mengirimkan permintaan lewat protokol yang telah ditentukan ke server H2H server lain. Saat ini H2H yang kami support hanya lewat Yahoo Messenger (YM) saja.

intelliSender

Sender bertugas mengirim informasi tentang status pengiriman pulsa beserta atribut-atribut lainnya kepada Frontliner yang melakukan permintaan pengisian pulsa. Status pengisian pulsa dapat berhasil atau gagal

intelliDaemon
Untuk memproses data permintaan yang masuk ke database, ada aplikasi yang terus berjalan (Daemon) yang bertugas untuk memvalidasi dan memproses Data yang masuk. Aplikasi ini berjalan pada server yang sama dengan server database, sehingga setiap Agen hanya membutuhkan satu Daemon. Daemon ini merupakan aplikasi utama / Core dari IntelliPulsa.
posisi intelliDaemon

intelliManager (Web/Desktop Based Administrator)
Sebagai antar muka aplikasi IntelliPulsa, digunakan aplikasi web based yang dapat digunakan untuk melakukan controlling dan administrasi terhadap server.

Dalam aplikasi web tersebut operator dari agen bisa melakukan hal-hal berikut :

Manajemen terhadap dealer meliputi :
o Menambah saldo
o Menambah dealer
o Mengurangi dealer
o Mengedit profile dealer (baik nama, nohp, pin atau yang lain)
o Melihat history semua aktifitas dealer
o Search dealer dengan cepat berdasar ID, Nama, No HP

Manajemen terhadap frontliner meliputi :
o Melihat daftar frontliner (Urut ID, dibuat per page)
o Mengedit profile dari frontliner (pin, no handphone, saldo)
o Menghapus dealer
o Menambah deposit
o Melihat history semua aktifitas frontliner

Manajemen terhadap produk
o Menambah produk
o Mengurangi produk
o Mengedit produk (nama, kode, status, dsb)

Melihat Current process, meliputi
o Bisa melakukan tracking dengan cepat bila ada complain dari frontliner (apakah sudah masuk sistem, masih diproses, sukses atau gagal)
o Menampilkan warna yang berbeda untuk tiap-tiap proses
o Proses yang gagal bisa dilakukan cancel atau kirim ulang

Manajemen konfigurasi
o Melakukan konfigurasi terhadap pesan balasan
o Melakukan konfigurasi format pesan

Menggunakan berbagai tools yang meliputi :
o Kirim sms broadcast ke semua frontliner, dealer lewat terminal tertentu (bisa memilih untuk dealer/frontliner dengan jenis kartu tertentu)
o Melakukan backup terhadap database dalam kurun waktu yang ditentukan sampai ke waktu paling awal

Pemrograman dan Bahasa Pemrograman

Abstrak
Artikel ini membahas secara singkat pemrograman dan bahasa pemrograman, rambu-rambu dalam belajar bahasa pemrograman, serta masalah pemilihan bahasa pemrograman pertama bagi pemula. Kalau kita membayangkan abad informasi, yang muncul adalah kosa kata seperti komputer, network, komunikasi dan informasi itu sendiri. Memang abad informasi dan komputer tidak dapat dipisahkan. Perkembangan ilmu dan teknik komputer mempercepat perkembangan informasi, atau sebaliknya permintaan akan informasi yang terus bertambah baik dari segi kuantitas maupun kualitas, mendorong percepatan perkembangan ilmu dan teknik komputer dan ilmu-ilmu lainnya.

Dengan semangat efesiensi, keberadaan komputer di kantor menjadi sangat penting. Di awal perkembangan komputer, program aplikasi sangat sedikit, primitif dan "sulit", sehingga setiap kantor memerlukan programer. Bagi Anda yang dapat menggunakan WordStar ataupun LaTeX, maka dapat dikatakan bahwa Anda pun seorang programer, karena Anda harus mengetikan perintah-perintah khusus untuk menghasilkan walau sebuah surat sederhana. Kini dengan munculnya aplikasi-aplikasi mutakhir dan tehnologi plug-in, pengguna tidak perlu lagi susah-susah menjadi programer. Apalagi dengan munculnya tehnologi visual-programming, maka seorang programer pun tidak perlu mengetikkan seluruh kode dari sebuah program yang dibuatnya.

Namun demikian, bagaimana pun juga, keberadaan programer masih sangat diperlukan untuk usaha otomatisasi berbagai bidang kehidupan. Permintaan yang mendesak dari dunia bisnis, seringkali membuat dunia pendidikan kewalahan dalam mensuplai programer yang sanggup menghadapi perkembangan tehnologi komputer yang sangat cepat ini.

Pemrograman dan Bahasa Pemrograman

Pemrograman dapat diklasifikasikan sebagai berikut:
  • Berorientasi prosedur (procedural oriented)
  •  Berorientasi fungsi (functional oriented)
  •  Berorientasi logik (logic oriented)
  •  Berorientasi obyek (object oriented)
Masing-masing memiliki kelebihan tersendiri. Kadangkala dalam membangun suatu aplikasi dibutuhkan gabungan metode pemrograman tersebut. Misalnya dalam C++ dan Java (bahasa pemrograman berorientasi obyek), kita masih dapat menemukan tehnik-tehnik pemrograman berorientasi prosedur dalam setiap method/function member dalam obyek-obyeknya.

Suatu bahasa pemrograman pada asalnya hanya dapat digunakan dalam satu metode. Pascal mulanya untuk procedural-oriented, Lisp untuk functional-oriented, Smaltalk untuk object-oriented dan lain-lain. Seiring dengan perkembangan tehnologi informasi dan komputer, puluhan bahkan ratusan bahasa pemrograman baru lahir. Masing-masing memiliki keunikan dan kelebihan spesifik. Ada yang khusus untuk jenis komputer tertentu, ada pula yang khusus untuk paradigma pemrograman tertentu.

Belajar Pemrograman
Lalu bagaimana seorang programer mulai belajar memprogram? Dalam menjawab pertanyaan ini kita sering terjebak dalam masalah pemilihan bahasa pemrograman pertama bagi pemula. Bahasa pemrograman apakah yang paling tepat diajarkan kepada seorang pemula, sehingga kelak ia dapat survive di antara sekian ratus bahasa pemrograman. Sampai saat ini pun perdebatan masih terus berlanjut untuk memilih bahasa pemrograman pertama yang paling tepat. Tidak dapat diragukan lagi bahwa bahasa pemrograman hampir sebanyak bahasa manusia, atau mungkin lebih banyak lagi.

Pemilihan bahasa pemrograman pertama merupakan masalah pelik. Sebab bahasa pemrograman pertama akan mempengaruhi cara berfikir programer di masa yang akan datang. Programer dengan bahasa pertamanya Pascal akan lebih mudah berpindah ke bahasa pemrograman yang memiliki paradigma sama, yaitu berorientasi prosedur seperti C, Modula, Oberon. Tetapi programer tersebut kesulitan untuk berpindah ke bahasa pemrograman dengan paradigma yang lain seperti CLOS dan Scheme, yaitu bahasa pemrograman keluarga Lisp. Selain daripada itu, setelah menentukan paradigmanya, masalah berikutnya yang muncul adalah memilih bahasa pemrograman yang paling dominan dalam paradigma tersebut. Misalnya, untuk paradigma berorientasi fungsi manakah yang paling tepat diajarkan kepada pemula, apakah CLOS atau Scheme atau EmacsLisp. Masalah kedua ini berkaitan dengan, kemudahan dalam belajar, dialek dalam keluarga bahasa pemrograman tersebut, atau bahkan kecenderungan pasar.

Pada umumnya, lembaga pendidikan memilih paradigma pemrograman berorientasi prosedur sebagai paradigma pertama siswa mereka. Bahasa yang digunakan umumnya Pascal atau C. Hal ini dikarenakan paradigma tersebut lebih sering dipakai di dalam kehidupan sehari-hari. Setelah itu, disesuaikan dengan situasi dan kondisi diajarkan paradigma lain. Tetapi ada pula lembaga pendidikan yang memilih bahasa ML, bahasa dengan paradigma berorientasi fungsi, seperti MIT. Alasan MIT, karena sebagian mahasiswa sebelumnya telah memiliki ketrampilan dan pengetahuan dalam paradigma pemrograman berorientasi prosedur, demi alasan keadilan dipilihlah bahasa dan pemrograman yang asing untuk sebagian besar mahasiswa. Dengan demikian sebagian besar mahasiswa memulai belajar pemrograman dari awal yang sama.

Yang perlu kita perhatikan adalah mengajar/belajar pemrograman tidaklah sama dengan belajar bahasa pemrograman. Agar kita tidak salah langkah dalam mengajar/belajar pemrograman, Derek Andrew [1, pp.255-276] memberikan rambu-rambu sebagai berikut:

  • Kita tidak belajar atau mengajar bahasa pemrograman, tetapi belajar atau mengajar bagaimana cara memprogram
  •  Kita tidak belajar atau mengajar bahasa pemrograman, tetapi belajar atau mengajar bagaimana memecahkan masalah
  •  Kita tidak belajar atau mengajar bahasa pemrograman, tetapi belajar atau mengajar bagaimana mendesain sistem
  •  Kita tidak belajar atau mengajar bahasa pemrograman, tetapi belajar atau mengajar prinsip-prinsip bahasa pemrograman
  •  Kita tidak belajar atau mengajar bahasa pemrograman, tetapi belajar atau mengajar teori semantik
  •  Kita tidak belajar atau mengajar bahasa pemrograman, tetapi belajar atau mengajar teori pemrograman
Bagi seorang pengajar point terpenting adalah point pertama: perlunya mengajari ahli komputer kita bagaimana cara memprogram. Asalkan suatu bahasa pemrograman itu cukup memadai bagi kita untuk belajar atau mengajar pemrograman, apapun bahasa pemrograman yang kita gunakan tidak menjadi masalah.

Referensi

  1. Mark Woodman. Programming Language Choice: practice and experience. Thompson Computer Press, 1996.
  2. Rechenber, P. Programming Language as Thought Models. Structured Programming, 11. 1990
  3. Booch, Grady. Object-Oriented Analysis and Design. The Benjamin r Commings Publishing Company Inc.
  4. J. Martin and J.J. Odell. Object-Oriented Analysis and Design. Prentice Hall, 1992.

Struktur dan Elemen Bahasa Pemograman

Sejak dulu hingga sekarang, tentu kita mengetahui bahwa di dunia komputer terdapat beraneka ragam bahasa pemrograman. Karena begitu banyaknya jenis-jenis bahasa pemrograman, bahasa-bahasa tersebut juga dikelompokan berdasarkan kriteria tertentu. Ada yang mengelompokkannya menjadi 3 level bahasa yaitu:
1. High level (Seperti Pascal dan Basic)
2. Middle level (Seperti Bahasa C), dan
3. Low level (Seperti Bahasa Assembly).

Ada juga yang mengelompokkannya menjadi procedural/functional programming, object oriented programming, dan sebagainya.

Namun pada dasarnya, bahasa-bahasa pemrograman tersebut memiliki bagian-bagian yang serupa. Yang membedakan hanyalah tata bahasa yang digunakan. Seperti halnya belajar bahasa Indonesia, bahasa Jawa, ataupun bahasa asing. Masing-masingnya memiliki bagian-bagian yang sama, yang membedakan hanyalah istilah/simbol yang digunakan dan dialek bahasa tersebut.

Di dalam artikel ini, akan dibahas mengenai bagian-bagian bahasa pemrograman procedural dengan contoh kasus bahasa Pascal dan C. Bahasa pemrograman procedural merupakan bahasa pemrograman yang melibatkan fungsi-fungsi atau prosedur-prosedur sebagai sub program untuk membentuk solusi dari suatu permasalahan. Berbeda halnya dengan bahasa pemrograman yang berorientasi obyek, yang menggunakan pendekatan obyek dalam menyelesaikan suatu persoalan.

Apakah Pemorgaman itu?

Kalau kita bicara Pemograman maka akan terlitas dibenak kita adalah aplikasi-aplikasi atau software yang memiliki command2,bahasa2 mesin dan konstruksi logika. Jadi Pemrograman adalah: Rangkaian kegiatan atau perintah untuk dieksekusi oleh komputer.

Program merupakan kumpulan instruction set yang akan dijalankan oleh pemroses, yaitu berupa software. Bagaimana sebuah sistem komputer berpikir diatur oleh program ini. Program inilah yang mengendalikan semua aktifitas yang ada pada pemroses. Program berisi konstruksi logika yang dibuat oleh manusia, dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada pada instruction set.

Bahasa pemrograman, atau dengan kata lain adalah bahasa komputer, adalah sebuah teknik Command /instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu set aturan syntax dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.

Bahasa pemrograman
Komputer adalah mesin yang dapat melaksanakan seperangkat perintah dasar (instruction set). Komputer hanya dapat diberi perintah yang terdiri dari perintah-perintah dasar tersebut. Perintah-perintah yang lebih rumit (misalnya mengurutkan suatu daftar sesuai abjad)harus diterjemahkan menjadi serangkaian perintah-perintah dasar yang dapat dimengerti komputer(perintah-perintah yang termasuk dalam instruction set komputer tersebut)yang pada akhirnya dapat mennyelesaikan tugas yang diinginkan, meskipun dijalankan dengan beberapa operasi dasar, bukan satu operasi rumit.

Bahasa pemrograman adalah bahasa yang dapat diterjemahkan menjadi kumpulan perintah-perintah. Penerjemahan dilakukan oleh program komputer yang disebut kompilator (compiler). Setiap bahasa pemrograman mempunyai kompilatornya sendiri. Contohnya, kompilator C++ tidak akan mengerti program yang ditulis dengan bahasa Java. Sintaks dari bahasa pemrograman lebih mudah dipahami oleh manusia daripada sintaks perintah dasar. Namun tentu saja komputer hanya dapat melaksanakan perintah dasar itu. Maka di sinilah peran penting kompilator sebagai perantara antara bahasa pemrograman dengan perintah dasar.

Kegiatan membuat program komputer dengan menggunakan bahasa pemrograman disebut pemrograman komputer. Contoh bahasa pemrogaman adalah bahasa FORTRAN, COBOL, BASIC, JAVA, dan C++.