Rapid Application Development

Rapid Application Development (RAD) adalah strategi siklus hidup yang ditujukan untuk menyediakan pengembangan yang jauh lebih cepat dan mendapatkan hasil dengan kualitas yang lebih baik dibandingkan dengan hasil yang dicapai melalui siklus tradisional (McLeod, 2002). RAD merupakan gabungan dari bermacam-macam teknik terstruktur dengan teknikprototyping dan teknik pengembangan joint application untuk mempercepat pengembangan sistem/aplikasi (Bentley, 2004). Dari definisi-definisi konsep RAD ini, dapat dilihat bahwa pengembangan aplikasi dengan menggunakan metode RAD ini dapat dilakukan dalam waktu yang relatif lebih cepat.

Pemaparan konsep yang lebih spesifik lagi dijelaskan oleh Pressman (2005) dalam bukunya,“Software Engineering: A Practition’s Approach”. Ia mengatakan bahwa RAD adalah proses model perangkat lunak inkremental yang menekankan siklus pengembangan yang singkat. Model RAD adalah sebuah adaptasi “kecepatan tinggi” dari model waterfall, di mana perkembangan pesat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen. Jika tiap-tiap kebutuhan dan batasan ruang lingkup projek telah diketahui dengan baik, proses RAD memungkinkan tim pengembang untuk menciptakan sebuah “sistem yang berfungsi penuh” dalam jangka waktu yang sangat singkat. Dari penjelasan Pressman (2012) ini, satu perhatian khusus mengenai metodologi RAD dapat diketahui, yakni implementasi metode RAD akan berjalan maksimal jika pengembang aplikasi telah merumuskan kebutuhan dan ruang lingkup pengembangan aplikasi dengan baik.

Sedangkan menurut Kendall (2010), RAD adalah suatu pendekatan berorientasi objek terhadap pengembangan sistem yang mencakup suatu metode pengembangan serta perangkat-perangkat lunak. RAD bertujuan mempersingkat waktu yang biasanya diperlukan dalam siklus hidup pengembangan sistem tradisional antara perancangan dan penerapan suatu sistem informasi. Pada akhirnya, RAD sama-sama berusaha memenuhi syarat-syarat bisnis yang berubah secara cepat.

Fase dan Tahapan Pengembangan Aplikasi

Menurut Kendall (2010), terdapat tiga fase dalam RAD yang melibatkan penganalisis dan pengguna dalam tahap penilaian, perancangan, dan penerapan. Adapun ketiga fase tersebut adalah requirements planning (perencanaan syarat-syarat), RAD design workshop(workshop desain RAD), dan implementation (implementasi). Sesuai dengan metodologi RAD menurut Kendall (2010), berikut ini adalah tahap-tahap pengembangan aplikasi dari tiap-tiap fase pengembangan aplikasi.

1)      Requirements Planning (Perencanaan Syarat-Syarat)

Dalam fase ini, pengguna dan penganalisis bertemu untuk mengidentifikasikan tujuan-tujuan aplikasi atau sistem serta untuk megidentifikasikan syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut. Orientasi dalam fase ini adalah menyelesaikan masalah-masalah perusahaan. Meskipun teknologi informasi dan sistem bisa mengarahkan sebagian dari sistem yang diajukan, fokusnya akan selalu tetap pada upaya pencapaian tujuan-tujuan perusahaan (Kendall, 2010).

2)      RAD Design Workshop (Workshop Desain RAD)

Fase ini adalah fase untuk merancang dan memperbaiki yang bisa digambarkan sebagaiworkshop. Penganalisis dan dan pemrogram dapat bekerja membangun dan menunjukkan representasi visual desain dan pola kerja kepada pengguna. Workshop desain ini dapat dilakukan selama beberapa hari tergantung dari ukuran aplikasi yang akan dikembangkan. Selama workshop desain RAD, pengguna merespon prototipe yang ada dan penganalisis memperbaiki modul-modul yang dirancang berdasarkan respon pengguna. Apabila sorang pengembangnya merupakan pengembang atau pengguna yang berpengalaman, Kendall menilai bahwa usaha kreatif ini dapat mendorong pengembangan sampai pada tingkat terakselerasi (Kendall, 2010).

3)      Implementation (Implementasi)

Pada fase implementasi ini, penganalisis bekerja dengan para pengguna secara intens selama workshop dan merancang aspek-aspek bisnis dan nonteknis perusahaan. Segera setelah aspek-aspek ini disetujui dan sistem-sistem dibangun dan disaring, sistem-sistem baru atau bagian dari sistem diujicoba dan kemudian diperkenalkan kepada organisasi (Kendall, 2010).

Kelebihan dan Kekurangan RAD

Metode pengembangan sistem RAD relatif lebih sesuai dengan rencana pengembangan aplikasi yang tidak memiliki ruang lingkup yang besar dan akan dikembangkan oleh tim yang kecil. Namun, RAD pun memiliki kelebihan dan kekurangannya sebagai sebuah metodoligi pengembangan aplikasi. Berikut ini adalah kelebihan metodologi RAD menurut Marakas (2006):

  1. Penghematan waktu dalam keseluruhan fase projek dapat dicapai.
  2. RAD mengurangi seluruh kebutuhan yang berkaitan dengan biaya projek dan sumberdaya manusia.
  3. RAD sangat membantu pengembangan aplikasi yang berfokus pada waktu penyelesaian projek.
  4. Perubahan desain sistem dapat lebih berpengaruh dengan cepat dibandingkan dengan pendekatan SDLC tradisional.
  5. Sudut pandang user disajikan dalam sistem akhir baik melalui fungsi-fungsi sistem atau antarmuka pengguna.
  6. RAD menciptakan rasa kepemilikan yang kuat di antara seluruh pemangku kebijakan projek.

Sedangkan, mengacu pada pendapat Kendall (2010), maka dapat diketahui bahwa kekurangan penerapan metode RAD adalah sebagai berikut:

  1. Dengan metode RAD, penganalisis berusaha mepercepat projek dengan terburu-buru.
  2. Kelemahan yang berkaitan dengan waktu dan perhatian terhadap detail. Aplikasi dapat diselesaikan secara lebih cepat, tetapi tidak mampu mengarahkan penekanan terhadap permasalahan-permasalahan perusahaan yang seharusnya diarahkan.
  3. RAD menyulitkan programmer yang tidak berpengalaman menggunakan prangkat ini di mana programmer dan analyst dituntut untuk menguasai kemampuan-kemampuan baru sementara pada saat yang sama mereka harus bekerja mengembangkan sistem.

12 Prinsip Utama Pada Animasi dan 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 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

Selamat Menulis

Selamat Datang di Dunia Blog, dan selamat menulis…

Pengelola blog kembali mengingatkan akan peraturan pemakaian Blog Universitas Widyatama Bandung adalah sebagai berikut :

  1. Blog ini merupakan milik Universitas Widyatama termasuk didalamnya seluruh sub domain yang digunakan sehingga apa yang terdapat didalam blog ini secara umum akan mengikuti aturan dan kode etik yang ada di Universitas Widyatama Bandung.
  2. Blog ini dibuat dengan menggunakan aplikasi pihak ke tiga (WordPress), dan lisensi plugin plugin didalamnya terikat terhadap developer pembuat plugin tersebut.
  3. Blog ini dapat digunakan oleh Karyawan, Dosen dan Mahasiswa Universitas Widyatama Bandung.
  4. Dilarang melakukan registrasi username atau site/subdomain blog dengan menggunakan kata yang tidak pantas.
  5. Dilarang memasukkan konten dengan unsur SARA, pornografi, pelecehan terhadap seseorang ataupun sebuah institusi.
  6. Dilarang menggunakan blog ini untuk melakukan transaksi elektronik dan pemasangan iklan.
  7. Usahakan sebisa mungkin untuk melakukan embed video atau gambar di bandingkan dengan melakukan upload secara langsung pada server.
  8. Pelanggaran yang dilakukan akan dikenakan sanksi penutupan blog dan atau sanksi yang berlaku pada aturan Universitas Widyatama sesuai dengan jenis pelanggaran yang dilakukan.
  9. Administrator berhak melakukan pembekuan account tanpa pemberitahuan terlebih dahulu jika dianggap ada hal hal yang melanggar peraturan.
  10. Aturan yang ada dapat berubah sewaktu waktu.

Beberapa Link terkait Universitas Widyatama

  1. Fakultas Ekonomi – http://ekonomi.widyatama.ac.id
  2. Fakultas Bisnis & Manajemen – http://manajemen.widyatama.ac.id
  3. Fakultas Teknik – http://teknik.widyatama.ac.id
  4. Fakultas Desain Komunikasi Visual – http://dkv.widyatama.ac.id
  5. Fakultas Bahasa – http://bahasa.widyatama.ac.id

Layanan Digital Universitas Widyatama

  1. Biro Akademik – http://akademik.widyatama.ac.id
  2. Rooster Kuliah – http://rooster.widyatama.ac.id
  3. Portal Mahasiswa – http://mhs.widyatama.ac.id
  4. Portal Dosen – http://dosen.widyatama.ac.id
  5. Digital Library – http://dlib.widyatama.ac.id
  6. eLearning Portal – http://learn.widyatama.ac.id
  7. Dspace Repository – http://repository.widyatama.ac.id
  8. Blog Civitas UTama – http://blog.widyatama.ac.id
  9. Email – http://email.widyatama.ac.id
  10. Penerimaan Mahasiswa Baru – http://pmb.widyatama.ac.id/online

Partner UTama

  1. Putra International College – http://www.iputra.edu.my
  2. Troy University – http://www.troy.edu
  3. Aix Marsielle Universite – http://www.univ-amu.fr
  4. IAU – http://www.iau-aiu.net/content/institutions#Indonesia
  5. TUV – http://www.certipedia.com/quality_marks/9105018530?locale=en
  6. Microsoft – https://mspartner.microsoft.com/en/id/Pages/index.aspx
  7. Cisco – http://www.cisco.com/web/ID/index.html
  8. SAP – http://www.sap.com/asia/index.epx
  9. SEAAIR – http://www.seaair.au.edu

Academic Research Publication

  1. Microsoft Academic  –  http://academic.research.microsoft.com/Organization/19057/universitas-widyatama?query=universitas%20widyatama
  2. Google Scholar – http://scholar.google.com/scholar?hl=en&q=Universitas+Widyatama&btnG=

Info Web Rangking

  1. Webometric – http://www.webometrics.info/en/detalles/widyatama.ac.id
  2. 4ICU – http://www.4icu.org/reviews/10219.html