Analisis Sistem Berorientasi Objek dalam Pembuatan Blog di WordPress

1. USECASE DIAGRAM

usecase_wordpress

Normal
0

false
false
false

IN
X-NONE
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}

Normal
0

false
false
false

IN
X-NONE
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}

Scenario Use Case Diagram

Nama Use Case : Login

Aktor? : Admin Blog

Deskripsi? : Kegiatan masuk ke dalam blog

Pre Condition :Pengguna belum masuk ke blog menjadi admin

Post Conditions: Sudah masuk ke blog sebagai admin

Normal
0

false
false
false

IN
X-NONE
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}

Nama Use Case: Create Postingan

Aktor: Admin Blog

Deskripsi: Kegiatan membuat postingan baru

Pre Conditions:User sudah login dan menjadi admin dan siap membuat postingan

Post Conditions: Postingan sudah dipublish/diterbitkan

Normal
0

false
false
false

IN
X-NONE
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}

Nama Use Case: Mengupdate Postingan

Aktor: Admin Blog

Deskripsi: Kegiatan mengubah/mengupdate/memperbarui postingan baru

Pre Conditions:User sudah login dan menjadi admin

Post Conditions: Postingan terupdate

Normal
0

false
false
false

IN
X-NONE
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}

Nama Use Case??????????????? : Logout

Aktor???????????????????????????????????? : Admin Blog

Deskripsi????????????????????????????? : Kegiatan keluar dari akun blog

Pre Conditions? ??????????????? :Admin blog sudah masuk ke akun blog wordpress

Post Conditions???????????????? :Admin blog keluar dari akun blog wordpress

Normal
0

false
false
false

IN
X-NONE
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Table Normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}

Nama Use Case : Membaca Postingan

Aktor: Pengunjung

Deskripsi: Kegiatan membaca postingan yang ada pada blog wordpress

Pre Conditions: Pengunjung sudah membuka postingan yang akan dibaca

Post Conditions: Pengunjung sudah membaca postingan

Nama Use Case : Memberi komentar

Aktor : Pengunjung

Deskripsi : Kegiatan memberi komentar pada postingan yang ada di blog wordpress

Pre Conditions : Pengunjung sudah membuka postingan

Post Conditions : Pengunjung memberikan komentar terhadap postingan

Nama Use Case : Sign Up

Aktor : Pengunjung

Deskripsi : Kegiatan membuat akun blog baru pada wordpress

Pre Conditions : Pengguna belum mempunyai akun blog di wordpress

Post Conditions : Pengguna sudah mempunyai akun blog di wordpress

2. CLASS DIAGRAM

class_diagram_wordpress

3. STATECHART DIAGRAM

  • State Diagram Post

StatechartDiagram_wordpress

4. COMPONENT DIAGRAM

ComponentDiagram_wordpress

Scenario Use Case Diagram

?

Nama Use Case??????????????? : Login

Aktor???????????????????????????????????? : Admin Blog

Deskripsi????????????????????????????? : Kegiatan masuk ke dalam blog

Pre Conditions? ??????????????? :Pengguna belum masuk ke blog menjadi admin

Aksi Aktor

Reaksi Sistem

Alur dasar (basic flow)

1.?????? Pengguna masuk ke halaman blog wordpress.

?

?

2.?????? Sistem menampilkan form login.

3.?????? Pengguna mengisi form login dan mengklik tombol

MRP

SEJARAH MRP

Sebelum MRP ada dan sebelum komputer digunakan industri, metode reorder point/reorder quantity jenis (ROP / ROQ) seperti EOQ (Economic Order Quantity) telah digunakan dalam manufaktur dan manajemen persediaan. Pada tahun 1964, Joseph Orlicky sebagai respon terhadap program manufaktur Toyota, mengembangkan material perencanaan kebutuhan (MRP). Perusahaan pertama yang menggunakan MRP adalah Black & Decker pada tahun 1964, dengan Dick Alban sebagai pemimpin proyek. Oliver Wight  ikut berjasa mengembangkan MRP ke perencanaan sumber daya manufaktur (MRP II). Pada tahun 1975 MRP dilaksanakan di 150 perusahaan. Jumlah ini telah tumbuh secara pesat menjadi sekitar 8.000 pada tahun 1981.

FUNGSI MRP

Fungsi dari MRP adalah:

  • Berkaitan dengan persediaan (inventory) : memesan item barang yang tepat, jumlah yang tepat, dan waktu yang tepat.
  • Berkaitan dengan prioritas penjadwalan : memesan kebutuhan item barang tepat pada saat dibutuhkan (right due date) dan menjaga agar due date tidak meleset.
  • Berkaitan dengan kapasitas pabrik (plan capacity) : membuat rencana pembebanan kerja secara lengkap dan tepat.

PROSES MRP

Ada empat tahap dalam proses perencanaan kebutuhan material, tahapan tersebut adalah sebagai berikut :
1. Netting (Perhitungan kebutuhan bersih)
Netting adalah proses perhitungan kebutuhan bersih yang besarnya merupakan selisih antara kebutuhan kotor denagan keadaan persediaan.
2. Lotting (Penentuan ukuran pemesanan)
Lotting adalah menentukan besarnya pesanan setiap individu berdasarkan pada hasil perhitungan netting.
3. Offsetting (Penetapan besarnya waktu ancang-ancang)
Offsetting bertujuan untuk menentukan saat yang tepat untuk melaksanakan rencana pemesanan dalam memenuhi kebutuhan bersih yang diinginkan lead time.
4. Exploding (Perhitungan selanjutnya untuk level di bawahnya)
Exploding adalah proses perhitungan kebutuhan kotor untuk tingkat level dibawahnya, berdasarkan pada rencana pemesanan.

Dengan MRP ini, kita akan mendapatkan informasi mengenai :
1. Bahan dan komponen apa saja yang akan dipesan serta berapa banyak yang diperlukan.
2. Kapan waktu komponen tersebut akan dipesan.
3. Apakah komponen tersebut pemesanannya dipercepat, diperlambat atau dibatalkan.

TAHAP PERKEMBANGAN MENJADI ERP

Sejak semula dikeluarkan (1960), ERP telah mengalami evolusi yang cukup drastis.

  • Tahap 1 (Material Requirement Planning-1960)

Cikal bakal ERP adalah konsep MRP. Pada tahun 1960, dunia manufaktur membuat teknik perhitungan manufaktur. Dengan dasar perhitungannya adalah menggunakan Bill of Material yang berupa daftar kebutuhan bahan baku (Raw Material) yang dibutuhkan untuk membuat suatu produk. Dengan perhitungan status persediaan inventory serta jadwal produksi, sistem tersebut dapat memberikan rekomendasi pembelian bahan baku yang dibutuhkan. Sistem ini dikenal dengan sebutan MRP, yang merupakan singkatan dari Material Requirement Planning.

MRP dirancang agar dapat menjawab pertanyaan-pertanyaan Produk apa yang akan dibuat ?  Apa yang diperlukan untuk membuat produk tersebut ? Apa yang sudah dimiliki ? Apa yang harus dibeli ? dan sebagainya.

  • Tahap 2 (Close Loop MRP-1970)

Di tahun 1970 proses MRP diintegrasikan dengan fungsi-fungsi bisnis manufaktur lain, yang kemudian menghasilkan sistem baru yang disebut dengan Manufacturing Resource Planning yang mendukung perencanaan hingga ke penjualan dan produksi, penjadwalan dan perkiraan order konsumen.

  • Tahap III (Manufacturing Resource Planning/MRPII- 1980)

Tahun 1980-an MRP berkembang menjadi MRP II (Manufacturing Resource Planning), yang memperkenalkan konsep mengenai penyatuan kebutuhan material (MRP) dan kebutuhan sumber daya untuk proses produksi.

MRP II mirip seperti Close Loop MRP ditambah dengan tiga elemen sebagai berikut :

  1. Perencanaan penjualan dan operasi, yang digunakan untuk menyeimbangkan antara permintaan dan persediaan.
  2. Antarmuka keuangan, kemampuan menterjemahkan rencana operasional (dalam bentuk pieces, kg, gallon, dan satuan lainya) menjadi satuan biaya.
  3. Simulasi, kemampuan melakukan analisis untuk mendapatkan jawaban yang mungkin diterapkan dalam satuan unit maupun uang.
  • Tahap IV (Enterprise Resource Planning-1990)

Pada awal tahun 1990-an dunia industry mengembagkan MRP II menjadi sebuah sistem dengan scope yang lebih luas yang kemudian dikenal dengan Enterprise Resource Planning (ERP). Pada dasarnya ERP adalah penambahan module keuangan pada MRP II, sehingga lebih memudahkan bagi para pengambil keputusan menentukan keputusan-keputusannya. Penambahan modul lain meliputi proses manufacturing, distribution, personel, project management, payroll, dan finance.

  • Tahap V (Extended ERP / ERP II-2000)

Generasi ini diluncurkan tahun 2000 yang merupakan perluasan dari sistem ERP sebelumnya. Dengan menambahkan fungsi area pada Sales Marketting dan Customer Support sehingga mampu menjembatani komunikasi dengan supplier dan konsumennya.

Menurut Daniel E. O’Leary sistem ERP memiliki karakteristik sebagai berikut [WHI-2006]:

  1. Sistem ERP adalah suatu paket perangkat lunak yang didesain untuk lingkungan pelanggan pengguna server, apakah itu secara tradisional atau berbasis jaringan.
  2. Sistem ERP memadukan sebagian besar dari proses bisnis.
  3. Sistem ERP memproses sebagian besar dari transaksi perusahaan.
  4. Sistem ERP menggunakan database perusahaan yang secara tipikal menyimpan setiap data sekali saja.
  5. Sistem ERP memungkinkan mengakses data secara waktu nyata (real time).
  6. Dalam beberapa hal sistem ERP memungkinkan perpaduan proses transaksi dan kegiatan perencanaan.
  7. Sistem ERP menunjang sistem multi mata uang dan bahasa, yang sangat diperlukan oleh perusahaan multinasional.
  8. Sistem ERP memungkinkan penyesuaian untuk kebutuhan khusus perusahaan tanpa melakukan pemrograman kembali.

Begitulah secara sekilas perkembangan MRP sampai menjadi ERP pada saat ini.

METODE FORECASTING

Metode Peramalan

Model kuantitatif intrinsik sering disebut sebagai model-model deret waktu (Time Series model). Model deret waktu yang populer dan umum diterapkan dalam peramalan permintaan adalah rata-rata bergerak (Moving Averages), pemulusan eksponensial (Exponential Smoothing), dan proyeksi kecenderungan (Trend Projection). Model kuantitatif ekstrinsik sering disebut juga sebagai model kausal, dan yang umum digunakan adalah model regresi (Regression Causal model) (Gaspersz, 1998).

1. Weight Moving Averages (WMA)

Model rata-rata bergerak menggunakan sejumlah data aktual permintaan yang baru untuk membangkitkan nilai ramalan untuk permintaan di masa yang akan datang. metode rata-rata bergerak akan efektif diterapkan apabila permintaan pasar terhadap produk diasumsikan stabil sepanjang waktu. Metode rata-rata bergerak terdapat dua jenis, rata-rata bergerak tidak berbobot (Unweight Moving Averages) dan rata-rata bobot bergerak (Weight Moving Averages). Model rata-rata bobot bergerak lebih responsif terhadap perubahan karena data dari periode yang baru biasanya diberi bobot lebih besar. Rumus rata-rata bobot bergerak yaitu sebagai berikut.

2. Single Exponential Smoothing (SES)

Pola data yang tidak stabil atau perubahannya besar dan bergejolak umumnya menggunakan model pemulusan eksponensial (Exponential Smoothing Models). Metode Single Exponential Smoothing lebih cocok digunakan untuk meramalkan hal-hal yang fluktuasinya secara acak (tidak teratur). Peramalan menggunakan model pemulusan eksponensial rumusnya adalah sebagai berikut.

Permasalahan umum yang dihadapi apabila menggunakan model pemulusan eksponensial adalah memilih konstanta pemulusan (α) yang diperirakan tepat. Nilai konstanta pemulusan dipilih di antara 0 dan 1 karena berlaku 0 < α < 1. Apabila pola historis dari data aktual permintaan sangat bergejolak atau tidak stabil dari waktu ke waktu, nilai α yang dipilih adalah yang mendekati 1. Pola historis dari data aktual permintaan tidak berfluktuasi atau relatif stabil dari waktu ke waktu, α yang dipilih adalah yang nilainya mendekati nol (Gaspersz, 1998).

3. Regresi Linier

Model analisis Regresi Linier adalah suatu metode populer untuk berbagai macam permasalahan. Menurut Harding (1974) dua variabel yang digunakan, variabel x dan variabel y, diasumsikan memiliki kaitan satu sama lain dan bersifat linier. Rumus perhitungan Regresi Linier yaitu sebagai berikut.

Keterangan:

Y = hasil peramalan

n = periode

a = perpotongan dengan sumbu tegak

b = menyatakan slope atau kemiringan garis regresi

Ukuran Akurasi Peramalan

Model-model peramalan yang dilakukan kemudian divalidasi menggunakan sejumlah indikator. Indikator-indikator yang umum digunakan adalah rata-rata penyimpangan absolut (Mean Absolute Deviation), rata-rata kuadrat terkecil (Mean Square Error), rata-rata persentase kesalahan absolut (Mean Absolute Percentage Error), validasi peramalan (Tracking Signal), dan pengujian kestabilan (Moving Range).

1. Mean Absolute Deviation (MAD)

Metode untuk mengevaluasi metode peramalan menggunakan jumlah dari kesalahan-kesalahan yang absolut. Mean Absolute Deviation (MAD) mengukur ketepatan ramalan dengan merata-rata kesalahan dugaan (nilai absolut masing-masing kesalahan). MAD berguna ketika mengukur kesalahan ramalan dalam unit yang sama sebagai deret asli. Nilai MAD dapat dihitung dengan menggunakan rumus sebegai berikut.

2. Mean Square Error (MSE)

Mean Squared Error (MSE) adalah metode lain untuk mengevaluasi metode peramalan. Masing-masing kesalahan atau sisa dikuadratkan. Kemudian dijumlahkan dan ditambahkan dengan jumlah observasi. Pendekatan ini mengatur kesalahan peramalan yang besar karena kesalahan-kesalahan itu dikuadratkan. Metode itu menghasilkan kesalahan-kesalahan sedang yang kemungkinan lebih baik untuk kesalahan kecil, tetapi kadang menghasilkan perbedaan yang besar.

3. Mean Absolute Percentage Error  (MAPE)

Mean Absolute Percentage Error (MAPE) dihitung dengan menggunakan kesalahan absolut pada tiap periode dibagi dengan nilai observasi yang nyata untuk periode itu. Kemudian, merata-rata kesalahan persentase absolut tersebut. Pendekatan ini berguna ketika ukuran atau besar variabel ramalan itu penting dalam mengevaluasi ketepatan ramalan. MAPE mengindikasi seberapa besar kesalahan dalam meramal yang dibandingkan dengan nilai nyata.

4. Tracking Signal

Validasi peramalan dilakukan dengan Tracking Signal. Tracking Signal adalah suatu ukuran bagaimana baiknya suatu peramalan memperkirakan nilai-nilai aktual. Nilai Tracking Signal dapat dihitung dengan menggunakan rumus sebegai berikut.

Tracking signal yang positif menunjukan bahwa nilai aktual permintaan lebih besar daripada ramalan, sedangkan tracking signal yang negatif berarti nilai aktual permintaan lebih kecil daripada ramalan. Tracking signal disebut baik apabila memiliki RSFE yang rendah, dan mempunyai positive error yang sama banyak atau seimbang dengan negative error, sehingga pusat dari tracking signal mendekati nol. Tracking signal yang telah dihitung dapat dibuat peta kontrol untuk melihat kelayakkan data di dalam batas kontrol atas dan batas kontrol bawah.

5. Moving Range (MR)

Peta Moving Range dirancang untuk membandingkan nilai permintaan aktual dengan nilai peramalan. Data permintaan aktual dibandingkan dengan nilai peramal pada periode yang sama. Peta tersebut dikembangkan ke periode yang akan datang hingga dapat dibandingkan data peramalan dengan permintaan aktual. Peta Moving Range digunakan untuk pengujian kestabilan sistem sebab-akibat yang mempengaruhi permintaan. Rumus perhitungan peta Moving Range adalah sebagai berikut.

Jika ditemukan satu titik yang berada diluar batas kendali pada saat peramalan diverifikasi maka harus ditentukan apakah data harus diabaikan atau mencari peramal baru. Jika ditemukan sebuah titik berada diluar batas kendali maka harus diselidiki penyebabnya. Penemuan itu mungkin saja membutuhkan penyelidikan yang ekstensif. Jika semua titik berada di dalam batas kendali, diasumsikan bahwa peramalan permintaan yang dihasilkan telah cukup baik. Jika terdapat titik yang berada di luar batas kendali, jelas bahwa peramalan yang didapat kurang baik dan harus direvisi (Gaspersz, 1998).

Kegunaan peta Moving Range ialah untuk melakukan verifikasi hasil peramalan least square terdahulu. Jika peta Moving Range menunjukkan keadaan diluar kriteria kendali. Hal ini berarti terdapat data yang tidak berasal dari sistem sebab-akibat yang sama dan harus dibuang maka peramalan pun harus diulangi lagi.

Tugas Besar Rekayasa Perangkat Lunak

SISTEM PENGELOLAAN SUMBER DAYA MANUSIA

BAB I

PENDAHULUAN

 1.        Latar Belakang

Sumber daya manusia merupakan salah satu kebutuhan di dalam suatu instansi, perusahaan, organisasi, lembaga serta lingkungan. Sumber daya manusia dianggap sangat penting karena dengan adanya sumber daya manusia dapat menunjang aktifitas organisasi atau perusahaan demi mencapai tujuan yang telah ditentukan. Sumber Daya Manusia (SDM) terus dirasakan sebagai salah satu asset yang paling penting dalam sebuah perusahaan, yang memainkan peran sebagai pemberi ide, pendorong dan pelaksana ide, juga kegiatan-kegiatan lain dalam perusahaan untuk mencapai tujuan perusahaan. Oleh karena itu, semakin baik modal sumber daya manusia (SDM) suatu perusahaan, semakin baik pula kinerja perusahaan itu.

Untuk menunjang sumber daya manusia (SDM) terhadap perencanaan, perekrutan, penyeleksi, pelatihan dan evaluasi kinerja sumber daya manusia (SDM). Sistem ini berfungsi untuk mendata permasalahan proses perencananaan, perekrutan, penyeleksian, pelatihan, dan evaluasi kinerja sumber daya manusia (SDM) yang di lakukan oleh perusahaan. Untuk itu sistem ini juga dibuat bertujuan memberikan kemudahan dalam memperbaiki kinerja kerja perusahaan.

 2.        Tujuan dan Manfaat

Tujuan dari penyusunan Tugas Besar ini adalah :

  1. Untuk memenuhi tugas mata kuliah Rekayasa Perangkat Lunak (RPL).
  2. Untuk mendeskripsikan fungsi sumber daya manusia (SDM) yang meliputi proses perencanaan, perekrutan, penyeleksian, pelatihan, dan evaluasi kinerja sumber daya manusia (SDM) yang di lakukan oleh perusahaan.
  3. Memberikan kesempatan kepada pihak yang diaudit untuk memperbaiki mutu sistem informasinya.

Manfaat dari penyusunan Tugas Besar ini adalah :

  1. Menerapkan ilmu yang didapat diperkuliahan melalui auditing sistem informasi.
  2. Diharapkan dengan audit sistem informasi ini dapat meningkatkan efisiensi dalam hal kecepatan pengolahan data menjadi informasi dan efektif dalam hal aktivitas yang ada sesuai dengan kebutuhan.
  3. Mendorong tanggungjawab dan profesionalisme yang lebih besar diantara karyawan perusahaan.

3.        Perumusan Masalah

Berdasarkan uraian diatas maka dapat dirumuskan masalah sebagai berikut. Ruang lingkup yang dibahas meliputi :

  1. Apakah sistem informasi sumber daya manusia (SDM) yang sedang berjalan sesuai dengan prosedur perusahaan?

 4.        Ruang Lingkup

Ruang Lingkup yang dibahas adalah :

  1. Proses penilaian kinerja kerja.
  2. Proses penerimaan karyawan.
  3. Proses pelatihan dan pengembangan kinerja pada karyawan.
  4. Laporan – laporan yang terdiri atas laporan penambahan karyawan, pelatihan karyawan dan penilaian kinerja karyawan.
  5. Tidak membahas masalah absensi pegawai dan penggajian.
  6. Pengamatan terutama dilakukan pada sistem informasi yang sudah berjalan.
  7. Menganalisis sistem informasi sumber daya manusia (SDM), serta analisis dari implementasi sistem yang sudah ada.

Pengalaman Kuliah di Jurusan IF (Tugas Information Technology 1)

Haaaaaaaaiiiiiiiiiiii……………….

Bandung panas yah akhir-akhir ini, naaah daripada ngeluh soal panasnya kota Bandung, sekarang zia mau share beberapa hal nih, tentang seputar pengalaman zia kuliah di jurusan Teknik Informatika Univ. Widyatama. Zia langsung ke poin-poinnya aja yaaa, cekidooot!!!

  • ALASAN MASUK UNIVERSITAS WIDYATAMA

Oke, di poin ini zia mau bahas tentang kenapa zia masuk univ. widyatama, sebenernya alesan yang paling nyata yaaah soalnya univ. widyatama lokasinya deket sama rumah, widyatama di cikutra, rumah zia di cicaheum, deket kan? paling dari rumah ke kampus cuma 10 menitan lah. Jadi irit ongkos, terus kalo misalkan ada perlu atau ada yang ketinggalan ga akan kesusahan juga. Selain itu, widyatama juga termasuk salah satu PTS yang bisa dibilang bagus dalam beberapa hal.

  • ALASAN MENGAMBIL JURUSAN TEKNIK INFORMATIKA

Di poin ini, zia mau kasih alesan kenapa ambil jurusan teknik informatika, sebenernya sih agak kejeblos juga, walaupun emang informatika jadi pilihan terakhir, sebenernya zia tuh lebih suka ke hal hal yang berbau biologi, setelah biologi baru deh yang berbau komputer komputer gitu, nah berhubung waktu ikutan SNMPTN & SBMPTN ga ada yang lolos, mulailah mikir, pilih kampus swasta apa yaaa, terus kata orang tua, “udah di widyatama aja, deket dari rumah, coba diliat ada jurusan apa aja disana”, oke deh, zia mulai tuh buka buka situs widyatama, pas udah buka situsnya, diliatlah jurusan teknik informatika, dalem hati, “naaah udahlah ini aja, cocok kayanya, hubungannya sama komputer komputer, terus nanti kayanya bakal gampang cari kerja, teknologi kan terus dibutuhkan dan terus berkembang”. Akhirnya dipilihlah jurusan Teknik Informatika di Univ. Widyatama itu….. Selain itu sih, karena pas SMA zia itu IPA, kalo diliat2 jurusan yang cocok ya paling teknik, sisanya kaya FBM, FE, F.Bahasa dsb ga ada yang zia pengenin.

  • KESAN-KESAN KULIAH DI UNIVERSITAS WIDYATAMA SELAMA 5 SEMESTER

Lanjuuuut ke poin berikutnya, kesan kesan kuliah di widyatama selama 5 semester ini sih secara garis besar bisa disebut serulah, banyak tantangan, masuk ke jurusan informatika bener bener hal yang baru di kehidupan zia, bahkan zia gatau di jurusan informatika ini bakal terus terusan ngoding, bengong kan tuh, mina bantuan sana sini, cari bantuan temen temen yang udah jago ngoding, intinya ngoding itu hal yang bener bener baru zia tau setelah masuk jurusan jurusan informatika ini. Selain itu yaaa enaklah kuliah di widyatama, orang deket jaraknya dari rumah, jadi ga begitu cape, ongkos juga ga begitu mahal. Fasilitas di univ. widyatama juga bisa dibilang cukup baiklah untuk memfasilitasi mahasiswa/i yang kuliah di widyatama.

Intinya selama 5 semester ini banyak hal baru yang zia dapetin, kaya ngoding, bikin tugas besar, logika harus bener bener jalan kalo ada tugas suruh benerin program, harus belajar ngulik, padahal zia tuh bingung caranya ngulik tuh kaya gimana, berasa ga kesampean aja ini otak buat belajar yang gituan, tapi……. bismillah, udah jalannya gini, harus berusaha terus, harus terus belajar juga.

Yaaaah, kira kira kaya gini lah sedikit sharing seputar pengalaman kuliah di jurusan informatika, sekian dan terimakasih. Semoga kedepannya selalu bisa menjadi lebih baik dalam hal apapun. Aamiin….

Jenis-jenis Animasi, 12 Prinsip Utama pada Animasi, Perbedaan antara Cell Animation dan Digital Animation

Jenis-jenis Animasi

1. Animasi Cel

  • Kata cel berasal dari kata “celluloid” yang merupakan materi yang digunakan untuk membuat film gambar bergerak pada tahun tahun awal animasi.
  • Sekarang material film dibuat dari asetat (acetate).
  • Biasanya digambar dengan menggunakan tangan (hand-drawn animation).
  • Animasi cel biasanya merupakan lembaran-lembaran yang membentuk animasi tunggal. Masing-masing sel merupakan bagian yang terpisah, misalnya antara obyek dengan latar belakangnya, sehingga dapat saling bergerak mandiri.
  • Misalnya seorang animator akan membuat animasi orang berjalan, maka langkah pertama dia akan menggambar latar belakang, kemudian karakter yang akan berjalan di lembar berikutnya, kemudian membuat lembaran yang berisi karakter ketika kaki diangkat, dan akhirnya karakter ketika kaki dilangkahkan.
  • Animasi Cel disebut juga Animasi Tradisional dimana terdapat beberapa langkah pembuatannya:
  1. Menyiapkan ide/storyboard (script)
  2. Voice Recording
  3. Animatics (story reel)
  4. Design and Timing
  5. Layout
  6. Animation
  7. Background
  8. Traditional ink-and-paint and camera
  9. Digital ink and paint

2. Animasi Frame

  • Animasi frame adalah bentuk animasi paling sederhana. Contohnya ketika kita membuat gambar-gambar yang berbedabeda gerakannya pada sebuah tepian buku kemudian kita buka buku tersebut dengan menggunakan jempol secara cepat maka gambar akan kelihatan bergerak.
  • Dalam sebuah film, serangkaian frame bergerak dengan kecepatan minimal 24 frame per detik agar tidak terjadi jitter.

3. Animasi Sprite

  • Pada animasi sprite, gambar digerakkan dengan latar belakang yang diam.
  • Sprite adalah bagian dari animasi yang bergerak secara mandiri, seperti misalnya: burung terbang, planet yang berotasi, bola memantul, ataupun logo yang berputar.
  • Dalam animasi sprite yang dapat kita edit adalah animasi dari layar yang mengandung sprite, kita tidak dapat mengedit bagian dalam yang ditampilkan oleh layar untuk masing-masing frame seperti pada animasi frame.

 4. Animasi Path

  • Animasi path adalah animasi dari obyek yang bergerak sepanjang garis kurva yang ditentukan sebagai lintasan.
  • Misalnya dalam pembuatan animasi kereta api, persawat terbang, burung dan lain-lain yang membutuhkan lintasan gerak tertentu.
  • Pada kebanyakan animasi path dilakukan juga efek looping yang membuat gerakan path terjadi secara terus menerus.

5. Animasi Spline

  • Spline adalah representasi matematis dari kurva. Sehingga gerakan obyek tidak hanya mengikuti garis lurus melainkan berbentuk kurva.

6. Animasi Vektor

  • Vektor adalah garis yang memiliki ujung-pangkal, arah, dan panjang.
  • Animasi vektor mirip dengan animasi sprite, tetapi animasi sprite menggunakan bitmap sedangkan animasi vektor menggunakan rumus matematika untuk menggambarkan sprite-nya.

7. Animasi Character

Animasi karakter biasanya terdapat di film kartun. Semua bagian dalam film kartun selalu bergerak bersamaan. Software yang biasa digunakan adalah Maya Unlimited. Contoh film kartun yang dibuat dengan Maya Unlimited adalah Toy Story dan Monster Inc.

Apapun jenis animasinya, yang penting adalah memberikan efek “hidup” (visual efek) pada gambar atau obyek.

Visual efek dapat dibuat dengan cara:

  • Motion dynamics, efek yang disebabkan perubahan posisi terhadap waktu.
  • Update dynamics, efek yang disebabkan perubahan pada suatu obyek (bentuk, warna, struktur, dan tekstur).
  • Perubahan cahaya, posisi, orientasi dan fokus kamera.

 

12 Prinsip Utama pada Animasi

Kata “animasi” berasal dari kata “animate,” yang berarti untuk membuat obyek mati menjadi seperti hidup. Seorang Animator profesional sepertinya harus mengetahui dan memahami bagaimana sebuah animasi dibuat sedemikian rupa sehingga didapatkan hasil animasi yang menarik, dinamis dan tidak membosankan

Dibawah ini merupakan 12 Prinsip/Syarat Animasi agar animasi terlihat seperti nyata :

1. Timing (Waktu)

1

Ini menentukan apakah gerakan tersebut alami atau tidak. Misalkan gerakan orang berjalan terlalu lambat, sedangkan latar belakang terlalu cepat bergerak. Atau bola yang memantul ke tanah, tetapi sebelum memantul, efek suara pantulan sudah terdengar lebih dahulu. Jadi timing ini lebih kepada sinkronisasi antara elemen-elemen animasi.
Grim Natwick, seorang animator Disney pernah berkata, “Animasi adalah tentang timing dan spacing”. Timing adalah tentang menentukan waktu kapan sebuah gerakan harus dilakukan, sementara spacing adalah tentang menentukan percepatan dan perlambatan dari bermacam-macam jenis gerak.

Contoh Timing: Menentukan pada detik keberapa sebuah obyek/karakter berjalan sampai ke tujuan atau berhenti.

Contoh Spacing: Menentukan kepadatan gambar (yang pada animasi akan berpengaruh pada kecepatan gerak)

2. Ease In dan Ease Out (Percepatan dan Perlambatan)

Prinsip ini juga paling banyak digunakan dalam animasi. Ketika bola di lempar ke atas, gerakan tersebut harus semakin lambat. Dan bola jatuh akan semaking cepat. Atau ketika mobil berhenti, pemberhentian tersebut harus secara perlahan-lahan melambat, tidak bisa langsung berhenti.

Slow In dan Slow Out menegaskan bahwa setiap gerakan memiliki percepatan dan perlambatan yang berbeda-beda. Slow in terjadi jika sebuah gerakan diawali secara lambat kemudian menjadi cepat. Slow out terjadi jika sebuah gerakan yang relatif cepat kemudian melambat. Contoh Slow In :

2

3. Arcs (Lengkungan)

3

Banyak hal tidak bergerak secara garis lurus. Bola saja dilempar tidak akan pernah lurus, pasti ada sedikit pergeseran. Jadi usahakan gerakan objek anda tidak sempurna, agak “dirusak” sedikit sehingga terlihat alami.

Pada animasi, sistem pergerakan tubuh pada manusia, binatang, atau makhluk hidup lainnya bergerak mengikuti pola/jalur (maya) yang disebut Arcs. Hal ini memungkinkan mereka bergerak secara ‘smooth’ dan lebih realistik, karena pergerakan mereka mengikuti suatu pola yang berbentuk lengkung (termasuk lingkaran, elips, atau parabola). Sebagai contoh, Arcs ditunjukkan pada lintasan tangan saat melempar bola dan lintasan gerak bola di udara.

4. Follow Through and Overlapping Action (Gerakan penutup sebelum benar-benar diam)

4

Follow through adalah tentang bagian tubuh tertentu yang tetap bergerak meskipun seseorang telah berhenti bergerak. Misalnya, rambut yang tetap bergerak sesaat setelah melompat. Overlapping action secara mudah bisa dianggap sebagai gerakan saling-silang. Maksudnya, adalah serangkaian gerakan yang saling mendahului (overlapping).

Contoh : Kelinci yang melompat. Sesaat setelah melompat telinganya masih bergerak-gerak meskipun gerakan utama melompat telah dilakukan

Prinsip ini ingin menggambarkan prilaku karakter sebelum menyelesaikan suatu tindakan. Misalkan saat seseorang melempar bola, gerakan setelah melempar bola (Follow Through) tersebut adalah menunjukkan mimik muka senang karena puas telah melempar bola. Kemudian yang disebut Overlapping action adalah gerakan baju atau rambut yang bergerak akibat gerakan tersebut.

Jadi animasi bukan sekedar asal bergerak, tetapi membuatnya hidup dengan hal-hal detail seperti ini. Banyak yang sangat detail bisa menggambar karakter, tetapi banyak yang gagal dalam menganimasikan karena karakter yang digambar terlalu rumit untuk dianimasikan.

5. Secondary Action (Gerakan Pelengkap)

Ini bukanlah gerakan yang sebenarnya, misalkan saat di ruang tunggu dokter, ada tokoh utama yang sedang membaca, tetapi di latar belakang ada pemeran pendukung seperti orang merokok, sedang mengobrol atau apapun yang membuatnya terlihat alami.

Secondary action adalah gerakan-gerakan tambahan yang dimaksudkan untuk memperkuat gerakan utama supaya sebuah animasi tampak lebih realistik. Secondary action tidak dimaksudkan untuk menjadi ‘pusat perhatian’ sehingga mengaburkan atau mengalihkan perhatian dari gerakan utama. Kemunculannya lebih berfungsi memberikan emphasize untuk memperkuat gerakan utama.

Contoh: Ketika seseorang sedang berjalan, gerakan utamanya tentu adalah melangkahkan kaki sebagaimana berjalan seharusnya. Namun sambil berjalan ‘seorang’ figur atau karakter animasi dapat sambil mengayun-ayunkan tangannya. Gerakan mengayun-ayunkan tangan inilah yang disebut secondary action untuk gerakan berjalan

6. Squash and Strecth (Kelenturan suatu objek)

6

Bola yang ketika jatuh agak sedikit gepeng menunjukkan kelenturan bola tersebut. Atau ketika orang melompat dan jatuh, kakinya agak sedikit lentur.

Squash and strecth adalah upaya penambahan efek lentur (plastis) pada objek atau figur sehingga seolah-olah ‘memuai’ atau ‘menyusut’ sehingga memberikan efek gerak yang lebih hidup. Penerapan squash and stretch pada figur atau benda hidup (misal: manusia, binatang, creatures) akan memberikan ‘enhancement’ sekaligus efek dinamis terhadap gerakan/action tertentu, sementara pada benda mati (misal : gelas, meja, botol) penerapan squash and stretch akan membuat mereka (benda-benda mati tersebut) tampak atau berlaku seperti benda hidup.

Contoh ketika sebuah bola dilemparkan. Pada saat bola menyentuh tanah maka dibuat seolah-olah bola yang semula bentuknya bulat sempurna menjadi sedikit lonjong horizontal, meskipun kenyataannya keadaan bola tidak selalu demikian. Hal ini memberikan efek pergerakan yang lebih dinamis dan ‘hidup’

7. Exaggeration (Melebih-lebihkan)

7

Animasi bisa dilebih-lebihkan dengan musik, latar belakang atau gambar. Orang digambarkan dengan mata besar yang menunjukkan keterkejutan. Ini bisa kita lihat di film-film kartun jepang, bagaimana orang berlari tetapi ada gambar seekor elang besar sebagai latarnya untuk menunjukkan kecepatan lari orang tersebut.

Exaggeration merupakan upaya mendramatisir animasi dalam bentuk rekayasa gambar yang bersifat hiperbolis. Dibuat sedemikian rupa sehingga terlihat sebagai bentuk ekstrimitas ekspresi tertentu dan biasanya digunakan untuk keperluan komedik. Seringkali ditemui pada film-film animasi anak-anak (segala usia) seperti Tom & Jery, Donald Duck, Mickey Mouse, Sinchan, dsb.

Contoh : Tubuh Donald duck melayang mengikuti sumber asap saat hidung Donald cuck mencium aroma masakan/makanan lezat.

8. Straight Ahead and Pose to Pose

8

Prinsip Straight-ahead mengacu kepada teknik pembuatannya, yaitu dengan teknik frame by frame, digambar satu per satu. Walt Disney yang mempunyai ratusan animator dari berbagai mancanegara menggunakan teknik ini sehingga animasi terlihat sangat halus dan detail. Bagi Anda yang mempunyai dana terbatas jangan coba-coba menggunakan teknik ini karena pengerjaannya akan lama dan butuh tenaga animator yang banyak. Ujung-ujungnya dana bisa habis sebelum film animasi selesai dikerjakan.

Pose to pose menggunakan teknik keyframe, seperti tween motion di flash. Ini cocok untuk mereka yang dananya terbatas dan butuh pengerjaan cepat. Tetapi ingat, karakter yang dibuat jangan terlalu detail dan rumit karena akan menyulitkan pengerjaan animasi. Sederhana saja sehingga karakter tersebut mudah digerakkan. Animasi jepang paling banyak menggunakan teknik ini seperti Sinchan dan The Powerpuff Girls.

Dari sisi resource dan pengerjaan, ada dua cara yang bisa dilakukan untuk membuat animasi. Yang pertama adalah Straight Ahead Action, yaitu membuat animasi dengan cara seorang animator menggambar satu per satu, frame by frame dari awal sampai selesai seorang diri. Teknik ini memiliki kelebihan: kualitas gambar yang konsisten karena dikerjakan oleh satu orang saja. Tetapi memiliki kekurangan yaitu waktu pengerjaan yang lama

Yang kedua adalah Pose to Pose, yaitu pembuatan animasi oleh seorang animator dengan cara menggambar hanya pada keyframe-keyframe tertentu saja, selanjutnya in-between atau interval antar keyframe digambar/dilanjutkan oleh asisten/animator lain. Cara kedua ini memiliki waktu pengerjaan lebih cepat karena melibatkan lebih banyak sumber daya sehingga lebih cocok diterapkan pada industri animasi

9. Anticipation ( Gerakan Pendahulu )

9

Anticipation boleh juga dianggap sebagai persiapan/awalan gerak atau ancang-ancang. Seseorang yang bangkit dari duduk harus membungkukkan badannya terlebih dahulu sebelum benar-benar berdiri. Pada gerakan melompat, seseorang yang tadinya berdiri harus ada gerakan ‘membungkuk’ terlebih dulu sebelum akhirnya melompat.

Gerakan ini bertujuan untuk menjelaskan gerakan utama. Misalkan gerakan utama adalah orang terpeleset dan jatuh ke kolam renang. Sebelum itu, ada elemen-elemen yang ditunjukkan sebelum itu seperti ada kulit pisang di lantai, kemudian ada gerakan air di kolam renang, orang berjalan dengan mimik cuek. Gerakan-gerakan antisipasi bertujuan agar penonton memahami apa yang akan terjadi berikutnya. Jadi tidak langsung membuat orang tersebut jatuh ke kolam renang tanpa penonton tahu apa penyebabnya.

Ini yang kadang dilupakan oleh orang, jadi seakan-akan penonton mengerti jalan pikiran sang animator. Oleh karena itu, film animasi yang dibuat banyak keganjilan dan keanehan karena kurang pahamnya animator dengan prinsip ini.

10. Staging (Bidang Gambar)

10

Staging dalam animasi meliputi bagaimana ‘lingkungan’ dibuat untuk mendukung suasana atau ‘mood’ yang ingin dicapai dalam sebagian atau keseluruhan scene. Biasanya berkaitan dengan posisi kamera pengambilan gambar. Posisi kamera bawah membuat karakter terlihat besar dan menakutkan, kamera atas membuat karakter tampak kecil dan bingung sedangkan posisi kamera samping membuat karakter tampak lebih dinamis dan menarik

Staging adalah sudut pengambilan gambar seperti memperbesar muka tokoh untuk memperlihatkan kesedihannya, mengambil dari jarak jauh untuk memperlihatkan kemewahan suatu rumah, mengambil dari atas untuk memberi kesan ada seseorang yang mengintip, dan sebagainya.

11. Personality (Penjiwaan Karakter)

11

Membuat sedetail mungkin kepribadian seorang tokoh misalkan tanggal lahir, hobi, sifat baik dan jahat. Penjiwaan karakter akan membuat penonton mengenali karakter tersebut.

12. Appeal (Daya Tarik Karakter)

Appeal berkaitan dengan keseluruhan look atau gaya visual dalam animasi. Kita bisa dengan mudah mengidentifikasi gaya animasi buatan Jepang dengan hanya melihatnya sekilas. Kita juga bisa melihat style animasi buatan Disney atau Dreamworks cukup dengan melihatnya beberapa saat. Hal ini karena mereka memiliki appeal atau gaya tersendiri dalam pembuatan karakter animasi.

Ada juga yang berpendapat bahwa appeal adalah tentang penokohan, berkorelasi dengan ‘kharisma’ seorang tokoh atau karakter dalam animasi. Sehingga visualisasi animasi yang ada bisa mewakili karakter/sifat yang dimilkiki.

Daya tarik karakter tersebut harus bisa mempengaruhi emosi penonton. Misalkan tampangnya yang bodoh sehingga membuat penonton tertawa atau tampang yang tak berdosa sehingga membuat penonton merasa kasihan.

Jadi ada 12 prinsip animasi yang perlu diketahui oleh animator sehingga kita tidak membuat animasi asal jadi, asal bergerak.

Ke-12 prinsip animasi diatas sering digunakan dalam teknik animasi stop motion dan dalam penerapannya tentu lebih tergantung pada sang animator. Semakin profesional seorang animator dalam menguasai, mengoptimalkan dan mengeksplorasi kemampuan dirinya dalam membuat animasi secara keseluruhan, tentunya ide cerita akan selalu menarik dan menghasilkan sebuah film animasi yang sangat dinamis dan tidak membosankan bahkan untuk kalangan yang bukan merupakan target utama pengguna. 

Perbedaan antara Cell Animation dan Digital Animation

1. Cell Animation

Kata “cell” berasal dari kata “celluloid”, yang merupakan material yang digunakan untuk membuat film gambar bergerak. Sekarang, material film dibuat dari asetat (acetate), bukan celluloid. Celluloid yang sebenarnya terdiri dari selulosa nitrat dan kapur barus yang digunakan pertama kali pada pertengahan abad ke 20, tapi karena mudah terbakar dan dimensi yang tidak stabil lalu digantikan oleh selulosa asetat. Potongan animasi dibuat pada sebuah potongan asetat atau sel (cell). Disebut cell animation karena teknik pembuatannya dilakukan pada celluloid transparent. Sel animasi biasanya merupakan lembaran-lembaran yang membentuk sebuah frame animasi tunggal.

Sel animasi merupakan sel yang terpisah dari lembaran latar belakang dan sebuah sel untuk masing-masing obyek yang bergerak secara mandiri di atas latar belakang. Lembaran-lembaran ini memungkinkan animator untuk memisahkan dan menggambar kembali bagian-bagian gambar yang berubah antara frame yang berurutan.

Sebuah frame terdiri dari sel latar belakang dan sel di atasnya. Misalnya seorang animator ingin membuat karakter yang berjalan, pertama-tama dia menggambar lembaran latar belakang, kemudian membuat karakter akan berjalan pada lembaran berikutnya, selanjutnya membuat membuat karakter ketika kaki diangkat dan akhirnya membuat karakter kaki dilangkahkan. Di antara lembaran-lembaran (frame-frame) dapat disipi efek animasi agar karakter berjalan itu mulus. Frame-frame yang digunakan untuk menyisipi celah-celah tersebut disebut keyframe. Selain dengan keyframe   proses animasi sel dengan layering dan tweening dapat dibuat dengan animasi computer.

Disebut Cell Animation karena teknik pembuatannya dilakukan pada celluloid transparent.

2. Digital animation

Digital animation adalah animasi karakter imajinasi yang dibuat dari hasil proses kerja komputer. Sebelum menggunakan komputer, animasi diselesaikan dengan membuat film dari gambar tangan atau urutan-urutan gambar di atas plastik atau kertas (yang disebut dengan cels), satu frame untuk 1/60 detik. Komputer pertama kali digunakan untuk mengontrol pergerakan dari karakter.

Digital animation dapat juga membuat special effects dan simulasi gambar yang hampir tidak mungkin dilakukan dengan tanpa animasi, seperti memberikan penjelasan mengenai suatu hal yang sulit, contoh animasi solar flare pada matahari. Digital animation juga dapat digunakan untuk merekonstruksi ulang suatu kejadian.

Animasi Digital juga merupakan representasi dari data geometrik 3 dimensi sebagai hasil dari pemrosesan dan pemberian efek cahaya terhadap grafika komputer 2D. Hasil ini kadang kala ditampilkan secara waktu nyata (real time) untuk keperluan simulasi. Secara umum prinsip yang dipakai adalah mirip dengan grafika komputer 2D, dalam hal: penggunaan algoritma, grafika vektor, model frame kawat (wire frame model), dan grafika rasternya.

Grafika komputer 3D sering disebut sebagai model 3D. Namun, model 3D ini lebih menekankan pada representasi matematis untuk objek 3 dimensi. Data matematis ini belum bisa dikatakan sebagai gambar grafis hingga saat ditampilkan secara visual pada layar komputer atau printer. Proses penampilan suatu model matematis ke bentuk citra 2D biasanya dikenal dengan proses 3D rendering. 

Referensi:

http://lecturer.ukdw.ac.id/anton/download/multimedia5.pdf

http://all-about-multimedia.blogspot.com/2012/07/12-prinsip-syarat-animasi.html

http://animasikuu.wordpress.com/topik/cell-animation-2/

http://wee2.wordpress.com/apa-itu-animasi-digital/

http://indigiani.wordpress.com/animasi-digital/

 

 

Kompresi Teks menggunakan Algoritma Huffmann

1.     Algoritma Huffman

Algoritma Huffman, yang dibuat oleh seorang mahasiswa MIT bernama David Huffman pada tahun 1952, merupakan salah satu metode paling lama dan paling terkenal dalam kompresi teks. Algoritma Huffman menggunakan prinsip pengkodean yang mirip dengan kode Morse, yaitu tiap karakter (simbol) dikodekan hanya dengan rangkaian beberapa bit, dimana karakter yang sering muncul dikodekan dengan rangkaian bit yang pendek dan karakter yang jarang muncul dikodekan.dengan rangkaian bit yang lebih panjang.

Berdasarkan tipe peta kode yang digunakan untuk mengubah pesan awal (isi data yangdiinputkan) menjadi sekumpulan codeword,algoritma Huffman termasuk kedalam kelas algoritma yang menggunakan metode statik . Metoda statik adalah metoda yang selalu menggunakan peta kode yang sama, metoda ini membutuhkan dua fase (two-pass): fase pertama untuk menghitung probabilitas kemunculan tiap simbol dan menentukan peta kodenya, dan fase kedua untuk mengubah pesan menjadi kumpulan kode yang akan di taransmisikan.

Sedangkan berdasarkan teknik pengkodean simbol yang digunakan, algoritma Huffman menggunakan metode symbolwise. Metoda symbolwise adalah metode yang menghitung peluang kemunculan dari setiap simbol dalam satu waktu, dimana simbol yang lebih sering muncul diberi kode lebih pendek dibandingkan simbol yang jarang muncul.

2.     Pembentukan Pohon Huffman

Kode Huffman pada dasarnya merupakan kode prefiks (prefix code). Kode prefiks adalah himpunan yang berisi sekumpulan kode biner, dimana pada kode prefik ini tidak ada kode biner yang menjadi awal bagi kode biner yang lain. Kode prefiks biasanya direpresentasikan sebagai pohon biner yang diberikan nilai atau label. Untuk cabang kiri pada pohon biner diberi label 0, sedangkan pada cabang kanan pada pohon biner diberi label 1. Rangkaian bit yang terbentuk pada setiap lintasan dari akar ke daun merupakan kode prefiks untuk karakter yang berpadanan. Pohon biner ini biasa disebut pohon Huffman.

Langkah-langkah pembentukan pohon Huffman adalah sebagai berikut :

  1. Baca semua karakter di dalam teks untuk menghitung frekuensi kemunculan setiap karakter. Setiap karakter penyusun teks dinyatakan sebagai pohon bersimpul tunggal. Setiap simpul di-assign dengan frekuensi kemunculan karakter tersebut.
  2. Terapkan strategi algoritma greedy sebagai berikut : gabungkan dua buah pohon yang mempunyai frekuensi terkecil pada sebuah akar. Setelah digabungkan akar tersebut akan mempunyai frekuensi yang merupakan jumlah dari frekuensi dua buah pohon-pohon penyusunnya.
  3. Ulangi langkah 2 sampai hanya tersisa satu buah pohon Huffman. Agar pemilihan dua pohon yang akan digabungkan berlangsung cepat, maka semua yang ada selalu terurut menaik berdasarkan frekuensi.

Sebagai contoh, dalam kode ASCII string 7 huruf “ABACCDA” membutuhkan representasi 7 × 8 bit = 56 bit (7 byte), dengan rincian sebagai berikut:

A = 01000001

B = 01000010

A = 01000001

C = 01000011

C = 01000011

D = 01000100

A = 01000001

Pada string di atas, frekuensi kemunculan A = 3, B = 1, C = 2, dan D = 1,

 gambar1

Gambar 1. Pohon Huffman untuk Karakter “ABACCDA”

3.     Proses Encoding

Encoding adalah cara menyusun string biner dari teks yang ada. Proses encoding untuk satukarakter dimulai dengan membuat pohon Huffman terlebih dahulu. Setelah itu, kode untuk satu karakter dibuat dengan menyusun nama string biner yang dibaca dari akar sampai ke daun pohon Huffman.

Langkah-langkah untuk men-encoding suatu string biner adalah sebagai berikut

  1. Tentukan karakter yang akan di-encoding.
  2. Mulai dari akar, baca setiap bit yang ada pada cabang yang bersesuaian sampai ketemu daun dimana karakter itu berada.
  3. Ulangi langkah 2 sampai seluruh karakter diencoding.

Sebagai contoh kita dapat melihat tabel dibawah ini, yang merupakan hasil encoding untuk pohon Huffman pada gambar 1

4.     Proses Decoding

Decoding merupakan kebalikan dari encoding. Decoding berarti menyusun kembali data dari string biner menjadi sebuah karakter kembali. Decoding dapat dilakukan dengan dua cara, yang pertama dengan menggunakan pohon Huffman dan yang kedua dengan menggunakan tabel kode Huffman.

Langkah-langkah men –decoding suatu string biner dengan menggunakan pohon Huffman adalah sebagai berikut :

  1. Baca sebuah bit dari string biner.
  2. Mulai dari akar.
  3. Untuk setiap bit pada langkah 1, lakukan traversal pada cabang yang bersesuaian.
  4. Ulangi langkah 1, 2 dan 3 sampai bertemu daun. Kodekan rangkaian bit yang telah dibaca dengan karakter di daun.
  5. Ulangi dari langkah 1 sampai semua bit di dalam string habis.

Sebagai contoh kita akan men-decoding string biner yang bernilai ”111”

 gambar2

Gambar 2. Proses Decoding dengan Menggunakan Pohon Huffman

setelah kita telusuri dari akar, maka kita akan menemukan bahwa string yang mempunyai kode Huffman “111” adalah karakter D.

Cara yang kedua adalah dengan menggunakan tabel kode Huffman. Sebagai contoh kita akan menggunakan kode Huffman pada Tabel 1 untuk merepresentasikan string “ABACCDA”. Dengan menggunakan Tabel 1 string tersebut akan direpresentasikan menjadi rangkaian bit : 0 110 0 10 10 1110. Jadi, jumlah bit yang dibutuhkan hanya 13 bit. Dari Tabel 1 tampak bahwa kode untuk sebuah simbol/karakter tidak boleh menjadi awalan dari kode simbol yang lain guna menghindari keraguan (ambiguitas) dalam proses dekompresi atau decoding. Karena tiap kode Huffman yang dihasilkan unik, maka proses decoding dapat dilakukan dengan mudah. Contoh: saat membaca kode bit pertama dalam rangkaian bit “011001010110”, yaitu bit “0”, dapat langsung disimpulkan bahwa kode bit “0” merupakan pemetaan dari simbol “A”. Kemudian baca kode bit selanjutnya, yaitu bit “1”. Tidak ada kode Huffman “1”, lalu baca kode bit selanjutnya, sehingga menjadi “11”. Tidak ada juga kode Huffman “11”, lalu baca lagi kode bit berikutnya, sehingga menjadi “110”. Rangkaian kode bit “110” adalah pemetaan dari simbol “B”.

5.     Kompleksitas Algoritma Huffman

Algoritma Huffman mempunyai kompleksitas waktu O(n log n), karena dalam melakukan sekali proses itersi pada saat penggabungan dua buah pohon yang mempunyai frekuensi terkecil pada sebuah akar membutuhkan waktu O(log n), dan proses itu dilakukan berkali-kali sampai hanya tersisa satu buah pohon Huffman itu berarti dilakukan sebanyak n kali.

6.     Pengujian Algoritma Huffman

Pada pengujian digunakan, kita akan menencoding sebuah teks yang berisi 100.000 string, diantaranya 45.000 karakter ‘g’, 13.000 karakter ‘o’, 12.000 karakter ‘p’, 16.000 karakter ‘h’, 9.000 karakter ‘e’, dan 5.000 karakter ‘r’ dengan menggunakan 3 cara, yaitu dengan menggunakan kode ASCII , kode 3-bit dan kode Huffman. Setelah itu ketiga kode tersebut akan dibandingkan satu sama lainnya.

a.      Kode ASCII

 kode ascii

(Tabel 2. Kode ASCII untuk Karakter “ g,o,p,h,e,r”)

Untuk meng-encoding teks tersebut kita membutuhkan sebanyak :

  • untuk karakter ‘g’

4.5000 x 8 bit (1100111)     = 360.000 bit

  • untuk karakter ‘o’

13.000 x 8bit (1101111)      = 104.000 bit

  • untuk karakter ‘p’

12.000 x 8bit (1110000)      = 96.000 bit

  • untuk karakter ‘h’

16.000 x 8bit (1101 000 )    = 128.000 bit

  • untuk karakter ‘e’

9.000 x 8bit (1100101)        = 72.000 bit

  • untuk karakter ‘r’

5.000 x 8bit (1110010)        = 40.000 bit

Jumlah                              = 800.000 bit

b.     3-bit Kode

 3bit

(Tabel 3. 3-bit Kode untuk Karakter “ g,o,p,h,e,r”)

Untuk meng-encoding teks tersebut kita membutuhkan sebanyak :

  • untuk karakter ‘g’

45.000 x 3 bit (000) = 135.000 bit

  • untuk karakter ‘o’

13.000 x 3bit (001)   = 39 .000 bit

  • untuk karakter ‘p’

12.000 x 3bit (010)   = 36 .000 bit

  • untuk karakter ‘h’

16.000 x 3bit (011)   = 48 .000 bit

  • untuk karakter ‘e’

9.000 x 3bit (100)     = 27 .000 bit

  • untuk karakter ‘r’

5.000 x 3bit (101)     = 15.000 bit

Jumlah                       = 300.000 bit

c.      Kode Huffman

 huffman

(Tabel 4. Kode Huffman untuk Karakter “ g,o,p,h,e,r”)

Untuk meng-encoding teks tersebut kita membutuhkan sebanyak :

  • untuk karakter ‘g’

45.000 x 1 bit (0)      = 45 .000 bit

  • untuk karakter ‘o’

13.000 x 3bit (101)   = 39 .000 bit

  • untuk karakter ‘p’

12.000 x 3bit (110)   = 36 .000 bit

  • untuk karakter ‘h’

16.000 x 3bit (111)   = 48.000 bit

  • untuk karakter ‘e’

9.000 x 4bit (1101)   = 36.000 bit

  • untuk karakter ‘r’

5.000 x 4bit (1100)   = 20 .000 bit

Jumlah                       = 224.000 bit

Dari data diatas kita dapat lihat bahwa dengan menggunakan kode ASCII untuk meng-encoding teks tersebut membutuhkan 800.000 bit, sedangkan dengan menggunakan 3-bit kode dibutuhkan 300.000 bit dan dengan menggunakan kode Huffman hanya membutuhkan 224.000. Dengan menggunakan data tersebut maka dapat kita lihat bahwa dengan menggunakan algoritma huffman dapat mengompres teks sebesar 70% dibandingkan kita menggunakan kode ASCII dan sebesar 25,3% dibandingkan kita menggunakan 3-bit kode.

7.     Kesimpulan

1. Algoritma Huffman adalah salah satu algoritma kompresi, yang banyak digunakan dalam kompresi teks.

2. Terdapat 3 tahapan dalam menggunakan algoritma Huffman, yaitu:

  • membentuk pohon Huffman
  • melakukan encoding dengan menggunakan pohon Huffman, dan
  • melakukan decoding

3. Algoritma Huffman mempunyai kompleksitas waktu O(n log n).

4. Algoritma Huffman adalah salah satu algoritma yang menggunakan prinsip algoritma greedy dalam penyusunan pohon Huffman.

5. Dari hasil pengujian yang dilakukan, algoritma Huffman dapat mengompres teks sebesar 70% jika dibandingkan dengan menggunakan kode ASCII dan sebesar 25,3% jika dibandingkan dengan kita menggunakan 3-bit kode.

Referensi:

http://informatika.stei.itb.ac.id/~rinaldi.munir/Matdis/2006-2007/Makalah/Makalah0607-20.pdf