Monday, June 27, 2016

Web Service Pada Aplikasi JobStreet







JobStreet adalah situs pencari kerja online yang dibuat agar semua yang ingin segera mendapatkan pekerjaan. JobStreet juga menyediakan aplikasi mobile agar kamu dapat mengakses dengan mudah. Aplikasi JobStreet dibuat agar semua orang yang ingin mencari pekerjaan tidak perlu repot membuka laptop atau komputer lagi. Hanya dengan mendownload aplikasinya di Mobile Device. JobStreet bekerjasama dengan banyak perusahaan ternama di dalam dan luar negeri. Segala macam perusahaan membuka banyak lowongan dan kesempatan disana yang bisa kamu cari sesuai dengan background kamu. Sehingga kamu bisa mendapatkan pekerjaan yang sesuai melalui JobStreet.

Fitur Aplikasi JobStreet

1. My Resume



Bila ingin perusahaan lebih tertarik pada lamaran kamu. Kamu harus melengkapi resume atau CV kamu di JobStreet. Caranya buka pilihan My Resume kemudian isi biodata lengkap sesuai yang diminta seperti nomor telepon, pengalaman kerja, pendidikan, keahlian, gaji yang diinginkan dan bahasa. Biodata tersebut membantu kamu mencari pekerjaan yang sesuai dan menjadi nilai lebih untuk perusahaan yang kamu tuju.
2. Search Jobs
Kamu ingin mencari pekerjaan yang sesuai dengan background kamu? Kamu bisa klik Search Jobs kemudian isi lokasi kerja, posisi dan gaji yang diinginkan setelah itu klik search. Akan muncul banyak lowongan dengan posisi yang dicari. Dijamin kamu akan menemukan posisi yang cocok untuk kamu.

3. My Saved Jobs
Apabila kamu masih mencari pekerjaan yang sesuai untuk dilamar. Kamu bisa menyimpannya terlebih dahulu dengan mengklik Saved Jobs untuk menyimpan lowongan pekerjaan yang akan dilamar. Otomatis lowongan akan tersimpan.

4. My Applications
Kamu bisa melihat kembali lamaran yang sudah kamu kirim dengan mengklik tombol My Applications. Disana akan terlihat lamaran yang masih aktif atau sudah lama dikirim.

5. Lina Daily Jobs
Lowongan yang muncul setiap harinya akan diinformasikan pada Lina Daily Jobs. Kamu bisa langsung mengecek lowongan yang baru diposting hari itu juga.

6. Notifications
Bila ada lowongan yang sesuai dengan kualifikasi, kamu akan mendapat notifikasi dari JobStreet. Kamu bisa mengklik Notifications untuk mengeceknya.

Cara Pemakaian Aplikasi



Pertama yang kita harus lakukan adalah membuat akun JobStreet untuk melamar pekerjaan. Caranya dengan mengisi data diri seperti email, password, nama depan dan nama belakang. Setelah itu klik tombol Sign Up, atau dapat melakukan sign up dengan menggunakan akun facebook dengan mengklik "Continue With Facebook", peristiwa login seperti ini dinamakan social plugin, untuk mengetahui bagaimana social plugin bekerja dapat mengunjungi post sebelumnya. Kemudian akan muncul tampilan Job Preference yang di isi bagaimana prioritas pencarian pekerjaan sesuai dengan keinginan. Setelah semua lengkap, klik tombol save untuk menyimpan pilihan yang akan menjadi patokan pekerjaan.


Selanjutnya pada layar akan muncul iklan lowongan dari semua perusahaan dan akan tertera posisi kerja, perusahaan yang membuka lowongan, lokasi kerja juga gaji yang diinginkan. Kamu bisa pilih lowongan yang sesuai dengan background pendidikan dan kulifikasi kamu. Bila sudah kamu bisa langsung klik apply untuk melamar ke perusahaan tersebut.


Kemudian klik tombol submit untuk memasukkan lamaran kamu. Setelah itu akan muncul notifikasi bahwa kamu sudah berhasil melamar ke perusahaan tersebut. Selanjutnya akan mendapatkan follow up apabila dirasa cocok oleh pihak penyelenggara. Apabila kamu ingin meyakinkan perusahaan tersebut, kamu bisa menuliskan apapun yang mempengaruhi lamaranmu diterima. Seperti menuliskan kelebihan kamu dan kenapa kamu merasa cocok dengan posisi itu. Proses lamaran sudah selesai. Kamu hanya tinggal menunggu panggilan kerja dari pihak terkait perusahaan yang kamu lamar.

Analisa Aplikasi

Aplikas lowongan kerja berbasis web dibangun menggunakan HTML (Hypertext Markup Lanuage) sebagai bahasa penandaan dokumen teks. PHP (Hypertext Preprocessor) sebagai script dan objek yang dikembangkan untuk memperluas kemampuan HTML, dan MySQL sebagai database pendukungnya.



Aplikasi ini menggunakan REST sebagai metode untuk membangun web service. REST pada dasarnya setiap URL unik adalah representasi dari beberapa objek. Kita dapat memperoleh konten-konten objek tersebut menggunakan HTTP GET, untuk menghapusnya, kita dapat menggunakan POST, PUT, atau DELETE untuk memodifikasi objek. Untuk mendapatkan konten yang sesuai dengan data yang kita miliki, digunakan HTTP GET untuk mendapat respon. Dengan metode REST, hasil respon akan lebih simpel seperti beberapa header standar dan string teks yang mengandung nilai terkini untuk symbol yang diberikan, atau dapat berupa dokumen XML. Dalam analisis terdapat 3 analisa yang berkebutuhan secara fungsional yaitu Diagram Konteks, DFD, Skema Relasi. Setiap proses aplikasi terdapat arus data yang menunjukan jalannya input/output antara sistem dengan dunia luarnya, arus tersebut dapat digambarkan dengan Diagram Konteks : 




Lalu pada DFD, yang akan di analisa adalah DFD Level 1 :



Skema relasi menggambarkan hubungan antar data, arti data dan batasannya dijelaskan

dengan baris dan kolom, Adapun skema relasi yang terdapat pada aplikasi JobStreet :





FLOWCHART Aplikasi



Kesimpulan

JobStreet adalah aplikasi pencari kerja yang memudahkan penggunanya untuk mencari pekerjaan yang terbaik dan sesuai. Karena dikemas dalam aplikasi mobile, jadi kita tidak perlu repot membuka laptop ataupun komputer untuk mengaksesnya. Cukup dengan apikasi, kita sudah bisa melamar pekerjaan di banyak perusahaan ternama dan mendapat respon cepat. Temukan perkerjaan yang cocok untuk kamu di JobStreet!


DAFTAR PUSTAKA
http://www.blue-la-goon-idn.com/jobstreet/#Author_Profile
http://www.adityarizki.net/web-service-soap-vs-rest-mana-yang-lebih-baik/#more-1391
http://ejournal.uin-malang.ac.id/index.php/saintek/article/download/2603/5247

Wednesday, April 27, 2016

Sosial Plugin

Sosial plugin adalah sebuah atau seperangkat program aplikasi tambahan yang berisi fungsi script yang memberikan fitur-fitur atau layanan yang spesifik untuk meningkatkan fungsi dalam penggunaan website dengan menghubungkan suatu media sosial dengan website tersebut.
Jika kita pernah melihat website yang menggunakan sistem login dengan menggunakan akun media sosial seperti Twitter, Facebook, Google+, Yahoo, dll. Maka kita dapat login pada website tersebut tanpa harus melakukan registrasi terlebih dahulu. Contoh, kita dapat memberi komentar pada artikel yang ada pada suatu website tanpa harus registrasi dengan website tersebut, melainkan hanya dengan memanfaatkan akun media sosial kita untuk login.
Hal ini dapat terjadi karena website media sosial tersebut menyediakan service yang memungkinkan sistem lain menggunakan akun mereka untuk login. Website media sosial bertindak sebagai server, sedangkan website yang melakukan login tanpa harus registrasi bertindak sebagai client.
pada artikel ini, saya akan mencoba memaparkan cara membuat web service sederhana dengan studi kasus proses login menggunakan PHP dan MySQL.
Adapun skenario dari contoh kasus yang saya ambil di sini adalah andaikan terdapat dua buah sistem yang saling independen, katakanlah A dan B. Sistem A ini andaikan berada pada URL http://sistem-a. Di dalam sistem A ini, terdapat data user yang terdiri dari username dan password. Sedangkan di dalam sistem B pada URL http://sistem-b terdapat sistem login yang nantinya memanfaatkan user dan password yang ada di sistem A.
Ide untuk mengimplementasikan skenario di atas adalah: sebuah script harus diletakkan di dalam sistem B untuk memproses form login. Dalam proses login, script tersebut mengirim username dan password ke sistem A untuk dicek validitasnya melalui GET Request dengan parameter username dan password yang dibaca dari form login. Selanjutnya di dalam sistem A terdapat script untuk membaca username dan password yang berasal dari GET request dari sistem B untuk diproses validitasnya. Sebagai responnya, sistem A akan mengenerate sebuah dokumen XML yang di dalamnya terdapat sebuah data misalkan berbentuk TRUE atau FALSE. Bernilai TRUE jika username dan password tersebut valid, dan FALSE jika tidak valid. Selanjutnya di sistem B respon tersebut dibaca, jika data yang dibaca bernilai TRUE maka proses login berhasil dan jika FALSE maka login gagal.
Selain XML, bentuk respon yang berasal dari server dapat berupa bentuk JSON karena dengan dokumen JSON struktur entitas data juga dapat dibaca dengan jelas seperti halnya XML.
Tahap implementasi ide di atas ke dalam bentuk script PHP
Pertama kita buat script untuk web service yang nantinya diletakkan di sistem A. Script ini nanti berfungsi untuk menangkap atau membaca GET request berupa data username dan password dari sistem lain, memproses validitasnya dan akhirnya menggenerate response dalam bentuk XML.

CREATE TABLE `user` (
  `username` varchar(20),
  `password` varchar(20),
  PRIMARY KEY  (`username`)
)

dan berikut ini beberapa sampel datanya

INSERT INTO `user` VALUES ('user1', 'password1');
INSERT INTO `user` VALUES ('user2', 'password2');

Dalam sampel data username di atas, password tidak dienkrip supaya terlihat ketika uji coba proses loginnya. Namun dalam implementasi yang sesungguhnya, sebaiknya dienkripsi.
Buat script dengan nama service.php
<?php

// koneksi ke database di sistem A
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

// membaca username dari GET request
$user = $_GET['username'];
// membaca password dari GET request
$pass = $_GET['password'];

// membaca data password user berdasar usernamenya
$query = "SELECT * FROM user WHERE username = '$user'";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);
$password = $data['password'];

// mencocokkan password user dari db dan dari GET request
// jika cocok, maka responnya TRUE, jika tidak cocok responnya FALSE
if ($pass == $password) $response = "TRUE";
else $response = "FALSE";

// membuat header dokumen XML
header('Content-Type: text/xml');
echo "<?xml version='1.0'?>";

// membuat tag data respon pada dokumen XML
echo "<data>";
echo "<response>".$response."</response>";
echo "</data>";
?>

Berikut ini adalah tampilan dokumen XML sebagai respon dari sistem A jika kita berikan GET request melalui URL

http://sistem-a/service.php?username=user1&;password=xxxxx

Selanjutnya, buat script di sistem B untuk proses login termasuk form loginnya dengan file php dan html dengan nama index.html dan login.php
Index.html
<h1>Form Login</h1>
<form method="post" action="login.php">
<table>
  <tr><td>Username</td><td><input type="text" name="username"></td></tr>
  <tr><td>Password</td><td><input type="password" name="password"></td></tr>
  <tr><td></td><td><input type="submit" name="submit" value="Submit"></td></tr>
</form>


Kemudian pada script login.php

<?php

// membaca username dari form login
$username = $_POST['username'];
// membaca password dari form login
$password = $_POST['password'];

// membuat URL GET request ke sistem A
$url = "http://sistem-a/service.php?username=".$username."&password=".$password;

// mengirim GET request ke sistem A dan membaca respon XML dari sistem A
$bacaxml = simplexml_load_file($url);

// membaca data XML hasil dari respon sistem A
foreach($bacaxml->response as $respon)
{
  // jika responnya TRUE maka login sukses
  // jika FALSE maka login gagal
  if ($respon == "TRUE") echo "Login Sukses";
  else if ($respon == "FALSE") echo "Login Gagal";


?>

Keterangan:
Untuk membaca dan memparsing data XML yang diterima dari sistem A kita bisa menggunakan function 
simplexml_load_file().
Untuk mencoba 2 file di atas, kita dapat mencoba script di atas melalui localhost (PC lokal) dan hosting. Misalkan localhost adalah sistem B nya dan hostingnya adalah sistem A nya. Jadi, Anda buat database user dan script service.php nya di hosting, dan script form loginnya di localhost. Selanjutnya hanya tinggal mengubah URL web servicenya ke URL hosting.
Sekarang sistem di atas sebenarnya sudah berjalan, namun keamanannya masih rawan bila menggunakan GET request seperti di atas. Artinya bisa saja ada sistem lain katakanlah C yang sebenarnya tidak berhak mengakses web service ke sistem A yang menggunakan service tersebut untuk sistem loginnya. Jika demikian maka kita perlu memproteksi GET request tersebut dengan menggunakan kode API. Kode API ini diberikan oleh sistem A kepada sistem B atau sistem yang berhak mengakses web servicenya. Kode API berfungsi sebagai password dalam melakukan GET request. Jika kode API yang dikirim melalui GET request oleh suatu sistem tidak dikenal oleh sistem A berarti sistem tersebut tidak berhak mengakses web servicenya.
Untuk mengimplementasikan kode API sebagai pengaman GET request dalam web service, kita sedikit memodifikasi script di atas, baik di script service.php (di sistem A) maupun di login.php nya (di sistem B). Dalam contoh ini, kode API yang diberikan kepada sistem B oleh sistem A ini berbentuk string ’1234′, maka script service.php nya adalah

<?php

// koneksi ke database di sistem A
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

// membaca username dari GET request
$user = $_GET['username'];
// membaca password dari GET request
$pass = $_GET['password'];
// membaca kode API dari GET request
$api = $_GET['api'];

// jika kode API nya '1234' maka lakukan proses validasi username dan password
// jika kode API nya salah, maka proses validasi tidak dilakukan (diberikan respon "FALSE")
if ($api == "1234")
{
   // membaca data password user berdasar usernamenya
   $query = "SELECT * FROM user WHERE username = '$user'";
   $hasil = mysql_query($query);
   $data  = mysql_fetch_array($hasil);
   $password = $data['password'];

   // mencocokkan password user dari db dan dari GET request
   // jika cocok, maka responnya TRUE, jika tidak cocok responnya FALSE
   if ($pass == $password) $response = "TRUE";
   else $response = "FALSE";
}
else $response = "FALSE";

// membuat header dokumen XML
header('Content-Type: text/xml');
echo "<?xml version='1.0'?>";

// membuat tag data respon pada dokumen XML
echo "<data>";
echo "<response>".$response."</response>";
echo "</data>";
?>

Selanjutnya di sistem B, script login.php nya perlu kita ubah parameter GET requestnya

<?php

// membaca username dari form login
$username = $_POST['username'];
// membaca password dari form login
$password = $_POST['password'];

// membuat URL GET request ke sistem A
$url = "http://sistem-a/service.php?username=".$username."&password=".$password."&api=1234";

// mengirim GET request ke sistem A dan membaca respon XML dari sistem A
$bacaxml = simplexml_load_file($url);

// membaca data XML hasil dari respon sistem A
foreach($bacaxml->response as $respon)
{
  // jika responnya TRUE maka login sukses
  // jika FALSE maka login gagal
  if ($respon == "TRUE") echo "Login Sukses";
  else if ($respon == "FALSE") echo "Login Gagal";
?>

Demikian cara pengaplikasian kode API dalam web service.
Penerapan web service tidak selalu dalam sistem login seperti di atas, namun bisa juga untuk keperluan lain, misalkan yang digunakan oleh Google Map dimana kita bisa menyisipkan peta dari Google Map ke dalam situs atau blog kita, atau kita dapat membagikan suatu artikel yang berada di suatu website untuk di posting dalam media sosial.


Sumber: http://script.klatenweb.com/


Friday, April 1, 2016

CPU

Definisi CPU

CPU adalah singkatan dari Central Processing Unit yaitu perangkat keras komputer yang berfungsi untuk menerima dan melaksanakan perintah dan data dari perangkat lunak. Pada umumnya CPU disebut sebagai prosesor, adapun mikroprosesor adalah CPU yang diproduksi dalam sirkuit terpadu, seringkali dalam sebuah paket sirkuit terpadu-tunggal. Tanpa CPU komputer tidak akan berfungsi dengan semestinya. 

Perkembangan CPU berdasarkan periode :
1.       Generasi Pertama
ENIAC(Electrical Numeric Intregrator and Computer) yang diproduksi oleh IBM pada tahun 1945 adalah salah satu “moyang” computer yang ukuranya super-besar. Perangkat yang terdiri dari 18.000 tabung kedap udara, dan dibutuhkan ruangan seluas 18×8 meter persegi untuk pengoperasianya. Perkembangan CPU generasi pertama berlanjut dengan lahirnya EDVAC(Electronic Discrete Variable Automatic Computer) adalah komputer ukuran besar pertama yang digunakan untuk keperluan bisnis pada tahun 1951-an.
2.       Generasi Kedua
Pada generasi kedua ditemukan transistor pada tahun 1956 yang menjadi awal dari revolusi komputer. Transistor menggantikan vacuum tube pada televisi, radio, dan komputer sehingga ukurannya menjadi jauh lebih kecil daripada sebelumnya. Transistor juga membuat kebutuhan listrik menjadi lebih rendah. Pada periode ini mulai dikenal bahasa pemrograman. Dengan bahasa pemrograman, komputer mulai mudah dimengerti banyak orang karena istilah yang digunakan untuk memasukan data bukan lagi angka – angka biner melainkan sudah berupa teks. Pada masa ini, komputer semakin banyak dimanfaatkan untuk kepentingan bisnis karena benda ini telah mampu menjalankan fungsi – fungsi transaksi bisnis.
3.       Generasi Ketiga
Pada generasi ketiga ditemukan IC (Integrated Circuit) oleh Jack Kilby pada tahun 1960-an yang menjadi tonggak penanda revolusi komputer,khususnya perangkat CPU. IC menutup kelemahan yang ditimbulkan oleh pemakaian transistor pada CPU yang menjadikan perangkat komputer cepat panas. Generasi tiga juga ditemukannya system operasi sebagai bagian dari perangkat lunak.

4.       Generasi Keempat
Pembuatan Chip Intel 4004 pada 1971 oleh intel membawa kemajuan cukup signifikan bagi perkembangan CPU. Saat itulah penggabungan berbagai komponen yang sebelumnya terpisah pada perangkat CPU menjadi kenyataan. Komponen – komponen seperti memori,bus,dan prosesor dapat disatukan hanya dalam satu perangkat chip yang kecil. Komputer tidak lagi sebesar lapangan sepakbola atau seukuran gedung dan kamar.komputer berubah menjadi jauh lebih kecil. Maka pada awal 1970-an, mulailah komputer diproduksi untuk semua kalangan,tidak hanya sebatas pada pelaku bisnis besar.

Cara Kerja CPU

Saat data atau instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di RAM (melalui Input-storage), apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage. Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter, sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register (Operand-register). Jika berdasarkan instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasarkan instruksi yang ditetapkan. Hasilnya ditampung di Accumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan mengambil hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices.

Fungsi CPU

CPU berfungsi bagaikan kalkulator, namun CPU hanya saja jauh lebih kuat daya pemrosesan yang dimilikinya. Fungsi CPU adalah melakukan sebuah operasi aritmatika serta logika terhadap data yang diambil dari informasi ataupun memori yang sebelumnya telah dimasukkan melalui beberapa perangkat keras, seperti papan tombol (keyboard), tuas kontrol, pemindai (scanner), maupun mouse. CPU itu sendiri dikontrol dengan menggunakan sekumpulan instruksi perangkat lunak komputer dan perangkat lunak tersebut dijalankan oleh CPU dengan cara membacanya dari sebuah media penyimpanan, seperti cakram keras, disket, dan sebagainya. Instruksi tersebut disimpan terlebih dahulu pada sebuah memori fisik atau RAM dan setiap instruksi akan diberi sebuah alamat yang unik disebut alamat memori. Kemudian, CPU mengakses data-data pada RAM atau memori fisik dengan menentukan alamat data yang telah dikehendaki.

Saat sebuah program tersebut dieksekusi, data akan mengalir dari RAM (Random Acces Memory) ke sebuah unit yang disebut dengan nama bus. Bus berguna untuk menghubungkan antara CPU dengan RAM atau memori fisik. Data tersebut kemudian didekode dengan menggunakan sebuah unit proses disebut sebagai pendekoder instruksi dan dapat sanggup menerjemahkan sebuah instruksi. Data itu kemudian berjalan ke unit aritmatika dan logika atau ALU yang kemudian melakukan kalkulasi serta perbandingan. Data tersebut dapat disimpan secara sementara oleh ALU dalam sebuah lokasi memori disebut dengan register agar dapat diambil kembali secara cepat untuk diolah.


Contoh CPU / Processor



AMd : Athlon, Athlon 64, Athlon XP, Duron, Opteron, Sempron, Turion.
ARM : ARM.
Digital Equipment Corporation : V-11, MicroVAX 78032, CVAX, Rigel, Mariah, NVAX,                                                                  Alpha, StrongARM.
Elbrus : Elbrus-3.
Fairchild Semiconductor : Clipper.
Hewlett-Packard : Capricorn, FOCUS, PA-7000 ~ PA-8900, Saturn.
IBM : IBM 801, Cell Processor, Broadway Processor.
POWER : POWER 1 ~ 6, RISC Single Chip, P2SC.
PowerPC-AS : A10, A25, A30, RS64.
Intel : Itanium, Xeon, Core i5, Core i7, Core 2, Core, Pentium ( Pro, MMX, II, III, 4, D, M,                       Dual-Core), Celeron, Atom.
MIPS Technologies : R2000, R3000, R3000A, R4000, R4400, R6000, R8000, R10000,                                                R12000, R14000, R16000.
National Semiconductor : NS320xx.
NEC : V20/V25/V40 dan V30/V33/V50.
SPARC : SPARC.
Texas Instruments : TMS1000, TMS1100, TMS7000, TMS9900.
VIA : VIA, VIA C3, VIA C7, VIA Eden.
Western Electric : WE-32000.
Zilog : Zilog, Z80, Zilog Z8000.