Rabu, 23 April 2014

TRANSAKSI


Transaksi adalah satu atau beberapa aksi yang dilakukan program aplikasi untuk mengakses atau mengubah isi basis data. Transaksi harus dapat dikerjakan secara utuh atau tidak sama sekali untuk menjamin konsistensi data. Transaksi bertujuan untuk melindungi database dari kehilangan data dan kerusakan.

4 elemen yang harus dimiliki transaksi demi menjamin integritas data, yaitu: 
  1. Atomicity, semua operasi dalam transaksi dapat dikerjakan seluruhnya atau tidak sama sekali, dengan kata lain, harus semua operasi berhasil atau semua operasi gagal.  
  2. Consistency, eksekusi transaksi harus menjamin konsistensi data setelah transaksi berakhir. 
  3. Isolation, jika terdapat transaksi yang dilaksanakan secara bersamaan, maka semua transaksi tersebut harus dapat dimulai dan bisa berakhir. 
  4. Durability, perubahan data yang terjadi setelah commit harus bertahan di database bahkan jika sistem mati. 
 Operasi penting transaksi untuk menjaga integritas dan ketahanan data ada dua, yaitu:
  • Commit : untuk memberi tanda bahwa transaksi telah selesai dilaksanakan. 
  • Rollback : untuk memberi tanda bahwa transaksi gagal dan harus diulang.
Penerapan commit dan rollback:
  • Buat tabel
  
  • Buat sequence, lalu masukkan data
 
  •  Buka dua jendela SQL Command Line, jangan lupa beri warna yang berbeda agar tidak tertukar

  • Login dengan user yang sama, kemudian tampilkan data yang telah dibuat sebelumnya
 
  • Masukkan data di SQL Command Line warna hitam
 
  • Tampilkan data tersebut di SQL Command Line warna hitam
 
  • Tampilkan juga di SQL Command Line warna abu-abu

  • Ketik perintah commit di SQL Command Line warna hitam untuk menyatakan transaksi telah berakhir, sehingga data terakhir akan masuk ke SQL Command Line abu-abu
 
  •  Data di SQL Command Line abu-abu sudah bertambah dan akan sama dengan data di SQL Command Line warna hitam



SAVE POINT
Save Point merupakan suatu titik aman, di mana kita telah menyelesaikan satu atau beberapa transaksi. Fungsi dari save point adalah supaya pada saat kita ingin rollback atau ada transaksi yang gagal, transaksi tidak berjalan dari awal kembali, tetapi dari save point yang telah kita buat.
Cara membuat save point:
SAVEPOINT [nama save point];
Cara rollback ke save point:
ROLLBACK TO [nama save point];

ISOLASI TRANSAKSI
Derajat pengaruh antar transaksi.
Ada 3 hal yang harus dicegah dalam transaksi, yaitu: 
  • Dirty Read 
Transaksi membaca data dari hasil transaksi lain yang gagal atau dengan kata lain transaksi dapat melihat record yang sudah dirollback atau belum dicommit oleh transaksi lain. Kedua transaksi berjalan bersamaan.
  • Nonrepeatable Read
Transaksi membaca ulang data yang telah dibaca sebelumnya karena telah dimodifikasi transaksi lain. Saat membaca ulang data, nilainya sudah berubah akibat modifikasi yang dilakukan transaksi lain tersebut.
  • Phantom Read
Transaksi membaca data yang telah hilang dari transaksi yang lainnya.

Terdapat dua level isolasi untuk mencegah ketiga hal di atas, yaitu: 
  • Read Commited
Transaksi dapat melihat perubahan data hanya setelah transaksi lain commit pada data tersebut.
  • Serializable
Serializable adalah level isolasi yang menyediakan isolasi transaksi yang paling ketat. Level ini membuat transaksi dieksekusi satu persatu, tidak bersamaan. Perintah untuk mengaplikasikan level isolasi Serializable:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

LOCKING PROTOCOL
Locking berfungsi untuk menjaga integritas data. Locking dilakukan jika sebuah transaksi ingin record tidak berubah dalam waktu tertentu.
Ada dua metode locking, yaitu:
  • Shared Lock (S-LOCK)
Transaksi yang memiliki shared lock pada suatu data hanya bisa melakukan pembacaan.
  • Exclusive Lock (X-LOCK)
Transaksi yang memiliki exclusive lock pada suatu data dapat melakukan perubahan dan pembacaan.

PENGUNCIAN LEVEL TABEL
Penguncian level tabel berfungsi untuk mengunci suatu tabel untuk mencegah perubahan atau penghapusan tabel selama ada transaksi yang menggunakan tabel tersebut.
Perintahnya:
LOCK TABLE [nama tabel];

PENGUNCIAN LEVEL BARIS
Penguncian level baris adalah penguncian yang dilakukan pada baris yang sedang digunakan oleh suatu transaksi sampai transaksi tersebut selesai dilakukan yang hanya berlaku untuk operasi UPDATE dan DELETE.

DEADLOCK
Deadlock merupakan situasi dimana dua atau lebih transaksi dalam kondisi wait-state, satu sama lain menunggu Lock dilepaskan sebelum dapat memulai.


Sumber:
- Modul Sistem Basis Data - Transaksi
- Slide Transaksi Pak Yudi Wibisono

Jumat, 16 Agustus 2013

BISNIS PLAN

Pengertian Bisnis Plan




Hisrich and Peters mengatakan bahwa “The business plan is a written document prepared by the entrepeneur that describe all the relevant external and internal elements involved in starting a new venture.” (Hisrich,Peter, 1995:113).

Sedangkan menurut Max Coulthard, Andrea Howell, and Geoff.Clarke adalah “Business plan is a detailed study of the organization’s activities, which highlights where the organization has been, where it is owe and where it might get to in the future, and incorporates an action program to achieve these results.” (M.Coulthard, A.Howell,G.Clarke, 1999:3).

Jadi, bisnis plan merupakan penelitian mengenai kegiatan organisasi sekarang dan yang akan datang dan menyusun kegiatan untuk mendapatkan hasil yang diinginkan yang dituangkan dalam suatu dokumen perencanaan. Perencanaan bisnis sangat erat hubungannya dengan wirausaha, sebab perencanaan bisnis ini dibuat agar hasil penciptaan usaha yang dibuat mendekati dengan kenyataannya. Namun bisnis plan pun dapat dibuat sebagai perencanaan hidup kita, tidak hanya untuk wirausaha saja, sehingga terdapat gambaran untuk kehidupan kita kedepannya.

Peran Bisnis Plan dalam Kewirausahaan
  •   S.W.O.T

Analisis SWOT adalah metode perencanaan strategis yang digunakan untuk mengevaluasi kekuatan (strengths), kelemahan (weaknesses), peluang (opportunities), dan ancaman (threats) dalam suatu proyek atau spekulasi bisnis. Lalu dilakukan berbagai strategi:
  • S - O (Strengths - Opportunities)
  • S - T (Strengths - Threats)
  • W - O (Weaknesses - Opportunities)
  • W - T (Weaknesses - Threats)

  • Identifikasi Pasar, Identifikasi Tujuan, Identifikasi Masalah


KEUNTUNGAN = PASAR - PRODUKSI
Rumus dalam berwirausaha yaitu keuntungan yang kita dapat merupakan hasil yang kita peroleh di pasar dikurangi oleh biaya produksi yang sudah dikeluarkan. jadi kita harus memanfaatkan pasar yang sebesar-besarnya dan mengeluarkan biaya produksi yang sekecil-kecilnya (atau tida mengeluarkan sama sekali) agar mendapatkan keuntungan semaksimal mungkin.

Dalam kewirausahaan, kita harus mengetahui pasar yang akan menjadi tempat untuk kita berwirausaha. Pasar tersebut haruslah sesuai dengan jenis wirausaha kita agar bisa berhasil. Bisnis plan membantu melihat pasar dari berbagai sisi dan kesesuaiannya dengan wirausaha.

Bisnis plan membantu kita untuk terfokus pada tujuan yang telah dibuat sejak awal. Di dalam bisnis plan terdapat timeline, yang terdiri dari satu tujuan utama dan berbagai tujuan kecil yang bisa membantu mencapai tujuan utama. Timeline biasanya terdiri timeline tahunan, bulanan, mingguan, bahkan harian. Dengan begitu, tujuan wirausaha pun lebih mungkin untuk tercapai.

Di dalawirausaha, tentunya akan ada beberapa masalah yang menghadang. Sebelum masalah itu datang, kita harus mengetahui terlebih dahulu seperti apa masalah yang sekiranya akan merintangi. Sehingga kita pun dapat mengetahui resiko apa yang muncul dari masalah tersebut. Masalah biasanya menimbulkan dua resiko, resiko positif dan resiko negatif, tergantung dari sudut pandang mana kita melihatnya. Sebagai wirausahawan yang baik, seharusnya masalah yang muncul tersebut dapat dimanfaatkan sebagai jalan untuk membantu berkembangnya wirausaha.


  • Plan - Do - Check
Rencanakan → Lakukan → Koreksi
Lakukan tahapan ini hingga 10 kali sampai benar-benar berhasil. Karena tidak akan ada hasil yang instan. Perlu kerja keras dan juga doa agar wirausaha bisa berhasil.



Referensi dari: wikipedia
Mata kuliah Kewirausahaan Ilmu Komputer UPI
Dosen Budi Laksono Putro budi.staf.upi.edu