Pengertian Bio Informatika
Bioinformatika adalah bidang ilmu di mana biologi, ilmu komputer, dan teknologi informasi bergabung untuk membentuk materi tunggal. Tujuan utama bidang ini adalah untuk memungkinkan penemuan wawasan biologi baru serta untuk menciptakan perspektif global dimana prinsip-prinsip pemersatu dalam biologi dapat dilihat.Pada awal "revolusi genom", yang menjadi perhatian dalam bioinformatika adalah penciptaan dan pemeliharaan database untuk menyimpan informasi biologis, seperti sekuens asam amino dan nukleotida.
Pada akhirnya, bagaimanapun, semua informasi ini harus digabungkan untuk membentuk gambaran yang komprehensif tentang kegiatan selular normal sehingga para peneliti dapat mempelajari bagaimana kegiatan ini diubah dalam kondisi penyakit yang berbeda. Oleh karena itu, bidang bioinformatika telah berkembang sedemikian rupa sehingga tugas yang paling mendesak sekarang melibatkan analisis dan interpretasi dari berbagai jenis data, termasuk sekuens asam nukleotida dan amino, domain protein, dan struktur protein. Proses sebenarnya menganalisis dan menafsirkan data disebut komputasi biologi.
Sejarah
Istilah bioinformatics mulai dikemukakan pada pertengahan era 1980-an untuk mengacu pada penerapan komputer dalam biologi. Namun demikian, penerapan bidang-bidang dalam bioinformatika (seperti pembuatan basis data dan pengembangan algoritma untuk analisis sekuens biologis) sudah dilakukan sejak tahun 1960-an.
Kemajuan teknik biologi molekular dalam mengungkap sekuens biologis dari protein (sejak awal 1950-an) dan asam nukleat (sejak 1960-an) mengawali perkembangan basis data dan teknik analisis sekuens biologis. Basis data sekuens protein mulai dikembangkan pada tahun 1960-an di Amerika Serikat, sementara basis data sekuens DNA dikembangkan pada akhir 1970-an di Amerika Serikat dan Jerman (pada European Molecular Biology Laboratory, Laboratorium Biologi Molekular Eropa). Penemuan teknik sekuensing DNA yang lebih cepat pada pertengahan 1970-an menjadi landasan terjadinya ledakan jumlah sekuens DNA yang berhasil diungkapkan pada 1980-an dan 1990-an, menjadi salah satu pembuka jalan bagi proyek-proyek pengungkapan genom, meningkatkan kebutuhan akan pengelolaan dan analisis sekuens, dan pada akhirnya menyebabkan lahirnya bioinformatika.
Perkembangan Internet juga mendukung berkembangnya bioinformatika. Basis data bioinformatika yang terhubung melalui Internet memudahkan ilmuwan mengumpulkan hasil sekuensing ke dalam basis data tersebut maupun memperoleh sekuens biologis sebagai bahan analisis. Selain itu, penyebaran program-program aplikasi bioinformatika melalui Internet memudahkan ilmuwan mengakses program-program tersebut dan kemudian memudahkan pengembangannya.
Penerapan Utama Bio Informatika
Basis data sekuens biologis
Sesuai dengan jenis informasi biologis yang disimpannya, basis data sekuens biologis dapat berupa basis data primer untuk menyimpan sekuens primer asam nukleat maupun protein, basis data sekunder untuk menyimpan motif sekuens protein, dan basis data struktur untuk menyimpan data struktur protein maupun asam nukleat.
Basis data utama untuk sekuens asam nukleat saat ini adalah GenBank (Amerika Serikat), EMBL (Eropa), dan DDBJ(Inggris) (DNA Data Bank of Japan, Jepang). Ketiga basis data tersebut bekerja sama dan bertukar data secara harian untuk menjaga keluasan cakupan masing-masing basis data. Sumber utama data sekuens asam nukleat adalah submisi langsung dari periset individual, proyek sekuensing genom, dan pendaftaran paten. Selain berisi sekuens asam nukleat, entri dalam basis data sekuens asam nukleat umumnya mengandung informasi tentang jenis asam nukleat (DNA atau RNA), nama organisme sumber asam nukleat tersebut, dan pustaka yang berkaitan dengan sekuens asam nukleat tersebut.
Sementara itu, contoh beberapa basis data penting yang menyimpan sekuens primer protein adalah PIR (Protein Information Resource, Amerika Serikat), Swiss-Prot (Eropa), dan TrEMBL (Eropa). Ketiga basis data tersebut telah digabungkan dalam UniProt (yang didanai terutama oleh Amerika Serikat). Entri dalam UniProt mengandung informasi tentang sekuens protein, nama organisme sumber protein, pustaka yang berkaitan, dan komentar yang umumnya berisi penjelasan mengenai fungsi protein tersebut.
BLAST (Basic Local Alignment Search Tool) merupakan perkakas bioinformatika yang berkaitan erat dengan penggunaan basis data sekuens biologis. Penelusuran BLAST (BLAST search) pada basis data sekuens memungkinkan ilmuwan untuk mencari sekuens asam nukleat maupun protein yang mirip dengan sekuens tertentu yang dimilikinya. Hal ini berguna misalnya untuk menemukan gen sejenis pada beberapa organisme atau untuk memeriksa keabsahan hasil sekuensing maupun untuk memeriksa fungsi gen hasil sekuensing. Algoritma yang mendasari kerja BLAST adalah penyejajaran sekuens.
PDB (Protein Data Bank, Bank Data Protein) adalah basis data tunggal yang menyimpan model struktural tiga dimensi protein dan asam nukleat hasil penentuan eksperimental (dengan kristalografi sinar-X, spektroskopi NMR dan mikroskopi elektron). PDB menyimpan data struktur sebagai koordinat tiga dimensi yang menggambarkan posisi atom-atom dalam protein ataupun asam nukleat.
Penyejajaran Sekuens
Penyejajaran sekuens (sequence alignment) adalah proses penyusunan/pengaturan dua atau lebih sekuens sehingga persamaan sekuens-sekuens tersebut tampak nyata. Hasil dari proses tersebut juga disebut sebagai sequence alignment atau alignment saja. Baris sekuens dalam suatu alignment diberi sisipan (umumnya dengan tanda "–") sedemikian rupa sehingga kolom-kolomnya memuat karakter yang identik atau sama di antara sekuens-sekuens tersebut. Berikut adalah contoh alignment DNA dari dua sekuens pendek DNA yang berbeda, "ccatcaac" dan "caatgggcaac" (tanda "|" menunjukkan kecocokan atau match di antara kedua sekuens).
Sequence alignment merupakan metode dasar dalam analisis sekuens. Metode ini digunakan untuk mempelajari evolusi sekuens-sekuens dari leluhur yang sama (common ancestor). Ketidakcocokan (mismatch) dalam alignment diasosiasikan dengan proses mutasi, sedangkan kesenjangan (gap, tanda "–") diasosiasikan dengan proses insersi atau delesi. Sequence alignment memberikan hipotesis atas proses evolusi yang terjadi dalam sekuens-sekuens tersebut. Misalnya, kedua sekuens dalam contoh alignment di atas bisa jadi berevolusi dari sekuens yang sama "ccatgggcaac". Dalam kaitannya dengan hal ini, alignment juga dapat menunjukkan posisi-posisi yang dipertahankan (conserved) selama evolusi dalam sekuens-sekuens protein, yang menunjukkan bahwa posisi-posisi tersebut bisa jadi penting bagi struktur atau fungsi protein tersebut.
Selain itu, sequence alignment juga digunakan untuk mencari sekuens yang mirip atau sama dalam basis data sekuens. BLAST adalah salah satu metode alignment yang sering digunakan dalam penelusuran basis data sekuens. BLAST menggunakan algoritma heuristik dalam penyusunan alignment.
Beberapa metode alignment lain yang merupakan pendahulu BLAST adalah metode "Needleman-Wunsch" dan "Smith-Waterman". Metode Needleman-Wunsch digunakan untuk menyusun alignment global di antara dua atau lebih sekuens, yaitu alignment atas keseluruhan panjang sekuens tersebut. Metode Smith-Waterman menghasilkan alignment lokal, yaitu alignment atas bagian-bagian dalam sekuens. Kedua metode tersebut menerapkan pemrograman dinamik (dynamic programming) dan hanya efektif untuk alignment dua sekuens (pairwise alignment)
Clustal adalah program bioinformatika untuk alignment multipel (multiple alignment), yaitu alignment beberapa sekuens sekaligus. Dua varian utama Clustal adalah ClustalW dan ClustalX.
Metode lain yang dapat diterapkan untuk alignment sekuens adalah metode yang berhubungan dengan Hidden Markov Model ("Model Markov Tersembunyi", HMM). HMM merupakan model statistika yang mulanya digunakan dalam ilmu komputer untuk mengenali pembicaraan manusia (speech recognition). Selain digunakan untuk alignment, HMM juga digunakan dalam metode-metode analisis sekuens lainnya, seperti prediksi daerah pengkode protein dalam genom dan prediksi struktur sekunder protein.
Prediksi Struktur Protein
Secara kimia/fisika, bentuk struktur protein diungkap dengan kristalografi sinar-X ataupun spektroskopi NMR, namun kedua metode tersebut sangat memakan waktu dan relatif mahal. Sementara itu, metode sekuensing protein relatif lebih mudah mengungkapkan sekuens asam amino protein. Prediksi struktur protein berusaha meramalkan struktur tiga dimensi protein berdasarkan sekuens asam aminonya (dengan kata lain, meramalkan struktur tersier dan struktur sekunder berdasarkan struktur primer protein). Secara umum, metode prediksi struktur protein yang ada saat ini dapat dikategorikan ke dalam dua kelompok, yaitu metode pemodelan protein komparatif dan metode pemodelan de novo.
Pemodelan protein komparatif (comparative protein modelling) meramalkan struktur suatu protein berdasarkan struktur protein lain yang sudah diketahui. Salah satu penerapan metode ini adalah pemodelan homologi (homology modelling), yaitu prediksi struktur tersier protein berdasarkan kesamaan struktur primer protein. Pemodelan homologi didasarkan pada teori bahwa dua protein yang homolog memiliki struktur yang sangat mirip satu sama lain. Pada metode ini, struktur suatu protein (disebut protein target) ditentukan berdasarkan struktur protein lain (protein templat) yang sudah diketahui dan memiliki kemiripan sekuens dengan protein target tersebut. Selain itu, penerapan lain pemodelan komparatif adalah protein threading yang didasarkan pada kemiripan struktur tanpa kemiripan sekuens primer.
Latar belakang protein threading adalah bahwa struktur protein lebih dikonservasi daripada sekuens protein selama evolusi; daerah-daerah yang penting bagi fungsi protein dipertahankan strukturnya. Pada pendekatan ini, struktur yang paling kompatibel untuk suatu sekuens asam amino dipilih dari semua jenis struktur tiga dimensi protein yang ada. Metode-metode yang tergolong dalam protein threading berusaha menentukan tingkat kompatibilitas tersebut.
Dalam pendekatan de novo atau ab initio, struktur protein ditentukan dari sekuens primernya tanpa membandingkan dengan struktur protein lain. Terdapat banyak kemungkinan dalam pendekatan ini, misalnya dengan menirukan proses pelipatan (folding) protein dari sekuens primernya menjadi struktur tersiernya (misalnya dengan simulasi dinamika molekular), atau dengan optimisasi global fungsi energi protein. Prosedur-prosedur ini cenderung membutuhkan proses komputasi yang intens, sehingga saat ini hanya digunakan dalam menentukan struktur protein-protein kecil. Beberapa usaha telah dilakukan untuk mengatasi kekurangan sumber daya komputasi tersebut, misalnya dengan superkomputer (misalnya superkomputer Blue Gene dari IBM) atau komputasi terdistribusi (distributed computing, misalnya proyek Folding@home) maupun komputasi grid.
Analisa Ekspresi Gen
Ekspresi gen dapat ditentukan dengan mengukur kadar mRNA dengan berbagai macam teknik (misalnya dengan microarray ataupun Serial Analysis of Gene Expression ["Analisis Serial Ekspresi Gen", SAGE]). Teknik-teknik tersebut umumnya diterapkan pada analisis ekspresi gen skala besar yang mengukur ekspresi banyak gen (bahkan genom) dan menghasilkan data skala besar. Metode-metode penggalian data (data mining) diterapkan pada data tersebut untuk memperoleh pola-pola informatif. Sebagai contoh, metode-metode komparasi digunakan untuk membandingkan ekspresi di antara gen-gen, sementara metode-metode klastering (clustering) digunakan untuk mempartisi data tersebut berdasarkan kesamaan ekspresi gen.
Baca Selengkapnya...
BIO INFORMATIKA
PROSES BISNIS DALAM SISTEM INFORMASI
Persaingan bisnis yang semakin kompetitif yang semakin lengkap dan terlebih lagi perekonomian kita sedang dilanda krisis, walaupun kenyataan seperti itu tidak menjadi suatu halangan bagi para pebisnis perusahaan tetap berfikir positif untuk melanjutkan bisnis yang menurutnya adalah yakin karena pangsa pasar di tempat kita akan semakin mencerahkan pandangan para pengusaha yang menanamkan sahamnya di Indonesia, terlebih lagi pangsa pasar yang semakin meningkat pesat perkembanganya yaitu pansa pasar perkembangan system informasi yang seakan akan kita menjual serba ada karena bukan hanya produk yang ditawarkan melainkan jasa yang yang dibuat oleh pra programmer, Masalah yang sering kali terjadi adalah perusahaan gagal atau terlambat dalam merespon tantangan bisnis yang muncul secara tidak terduga. Sebagai contoh: banyak perusahaan sangat lambat dalam mendeteksi adanya peluang-peluang bisnis baru serta dalam mendeteksi pergerakan yang dilakukan oleh kompetitor; lebih jauh lagi adalah perusahaan kadang cenderung mempunyai sifat reaktif dan tidak dapat mendeteksi masalah secara dini, dimana ini merupakan hal yang sangat kontraproduktif bagi perusahaan dalam menghadapi perkembangan bisnis di masa seperti sekarang ini.
ADAPUN SYSTEM INFORMASI YANG TERDIRI DARI:
• Sistem fungsional, sistem penjualan dan pemasaran sistem manufaktur dan produksi, sistem keuangan dan akutansi serta sistem sumber daya manusia.
• Tidak ada sistem informasi tunggal faktanya, perusahaan berskala menengah dan besar memiliki ribuan program komputer dan ratusan sistem yang berbeda.
AKTIVITAS DALAM BERBISNIS
• Aktivitas bisnis adalah Aktivitas kerja dari bahan baku, informasi, dan pengetahuan seperangkat aktivitas. Contohnya proses memperkerjakan karyawan.
• Aktivitas bisnis memperkerjakan dapat diuraiakan sebagai berikut:
• Membuat periklanan tempat,
• Mengunjungi agen pekerjaan,
• Mengumpulkan surat lamaran,
• Memeriksa surat lamaran,
• Mewawancarai kandidat,
• Mengevaluasi kandidat
• Membuat keputusan kepegawaian,
• Melibatkan karyawan pada sistem kepegawaian seperti penggajian, kesehatan, dan pensiun.
Sistem bisnis informasi yang terdiri dari :
• Fungsi dari system informasi ini juga meliputi system sumberdaya manusianya itu sendiri kita diharuskan mebngkaji Sdm yang ada dilingkungan kerja kita
ALUR PEMROSESAN TRANSAKSI
• Sistem pemrosesan transaksi
• Sebuah sistem pemrosesan transaksi adalah sistem terkomputerisasi yang menjalankan dan mencatat transaksi rutin harian yang diperlukan untuk menjalankan bisnis, seperti memasukkan pesanan penjualan, pemesanan hotel, penggajian, pencatatan karyawan, dan pengiriman.
• Tujuan utama dari sistem pada tingkat ini adalah untuk menjawab pertanyaan rutin dan untuk melacak arus transaksi yang melalui organisasi.
SISTEM SUMBER DAYA MANUSIA
• Fungsi sumber daya manusia bertanggung jawab untuk menarik, mengembangkan, dan mempertahankan tenaga kerja perusahaan. Sistem informasi sumber daya manusia (human resources informasion system) mendukung aktivitas seperti mengenali karyawan potensial, menjaga catatan lengkap mengenai karyawan yang ada, dan menciptakan program untuk mengembangkan bakat dan keahlian karyawan.
• Sistem sumber daya manusia membantu manajemen senior mengenali kebutuhan sumber daya manusia
SISTEM INFORMASI MANAJEMEN
• Sistem informasi manajemen-SIM (manajemen information system-MIS) juga merancang kategori khusus sistem informasi yang melayani manajemen tingkat menengah. SIM menyediakan laporan kinerja terbaru perusahaan kepada manajemen tingkat menengah. Informasi ini digunakan untuk mengawasi dan mengendalikan bisnis dan memprediksi kinerja di masa depan.
HUBUNGAN ANTAR SISTEM
• Berbagai jenis sistem dalam sebuah organisasi saling terkait satu sama lain. TPS adalah penghasil utama informasi yang dibutuhkan oleh kebanyakan sistem lain dalam perusahaan, yang selanjutnya akan menghasilkan informasi untuk sistem yang lain. Pada kebanyakan perusahaan, jenis sistem yang berbeda tersebut relatif tidak terkait. Namun demikian, semakin banyak perusahaan yang menggunakan teknologi baru untuk mengintegrasikan informasi yang berada dalam sistem yang berbeda.
SISTEM YANG MELINGKUPI PERUSAHAAN
• APLIKASI PERUSAHAAN : Aplikasi dimana untuk melakukan pemrosesan agar mempermudah pekerjaan yang kita lakukan. Aplikasi perusahaan (enterprise application) yang merupakan sistem yang melingkupi area fungsional, berfokus pada menjalankan proses bisnis di dalam perusahaan bisnis, termasuk seluruh tingkatan manajemen. Aplikasi perusahaan membantu bisnis untuk menjadi lebih fleksibel dan produktif dengan mengoordinasikan proses bisnis dengan lebih dekat dan mengintegrasikan sekelompok proses agar mereka berfokus pada pengelolaan sumber daya yang efisien dan pelayanan pelanggan.
SISTEM MANAJEMEN HUBUNGAN PELANGGAN
Sistem manajemen hubungan pelanggan (customer relationship manajement-CRM) membantu perusahaan mengelola hubungannya dengan pelanggan. Sistem ini menyediakan informasi untuk mengordinasikan seluruh proses bisnis yang berhubungan dengan pelanggan dalam hal :
1. Penjualan
2. Pemasaran
3. Pelayanan untuk mengoptimalkan pendapatan
4. Kepuasan pelanggan
5. Mempertahankan pelanggan
E-BUSINESS, E-COMMERCE, DAN E.GOVERNMENT
• E-BUSINESS => mengacu kepada penggunaan teknologi digital dan internet untuk menjalankan proses bisnis utama pada perusahaan.
• E-COMMERCE => bagian dari E-business yang berhubungan dengan pembelian dan penjualan barang dan jasa melalui internet.
• E.GOVERNMENT => mengacu kepada aplikasi internet dan teknologi jaringan untuk secara digital memungkinkan hubungan pemerintah dan agen sektor publik dengan masyarakat, bisnis, dan perpanjangan pemerintahan lainnya.
DEPARTEMEN SISTEM INFORMASI
• Departemen sistem informasi (information system departement) adalah unit organisasi formal yang bertanggung jawab untuk memelihara peranti keras, peranti lunak, penyimpan data dan jaringan yang mencakup infrastruktur teknologi informasi perusahaan.
ORGANISASI SISTEM INFORMASI
• Programer yaitu spesialis teknis yang sangat terlatih yang menulis instruksi peranti lunak untuk komputer.
• Analis sistem merupakan pekerjaan analis sistem untuk menterjemahkan masalah dan persyaratan bisnis menjadi kebutuhan informasi dan sistem.
• Manager sistem informasi adalah pemimpin tim programer dan analis, manajer proyek, manajer fasilitas fisik, pengoperasi komputer dan staf yang memasukkan data.
• Mengelola fungsi sistem informasi
• Praktik Aplikasi SIM -> Menganalisis kinerja keuangan
• Memperbaiki proses pengambilan keputusan.
Baca Selengkapnya...
Tugas Translate Softskill
Tahap desain sistem mendefinisikan bagaimana sistem akan bekerja di bidang utama antarmuka pengguna, program modul, keamanan dan database transaksi. Masukan untuk tahap ini adalah rincian persyaratan bahwa sistem informasi yang diusulkan untuk menyampaikan. Tugas dari tahap desain sistem adalah untuk mengubah persyaratan tersebut menjadi beberapa alternatif desain yang terbaik akan dipilih. Langkah desain karena itu berkaitan dengan bagaimana sistem informasi yang diusulkan akan memberikan apa diperlukan. Desain sistem berkaitan dengan hal-hal seperti:
- memilih sebuah sistem manajemen database yang sesuai;
- menetapkan standar keamanan sistem umum;
- memutuskan pada metode sistem navigasi (misalnya sistem menu dan antarmuka pengguna grafis);
- standar umum untuk dicetak melaporkan produksi;
- standar desain layar untuk input dan output;
- pengambilan data persyaratan
- Persyaratan penyimpanan data
Desain rinci, di sisi lain, akan menghasilkan cetak biru untuk sistem individu modul yang akan digunakan dalam fase membangun sistem yang mengikuti. Desain rinci akan lebih menentukan beberapa aspek-aspek desain sistem yang dirujuk di atas. Jika setiap saat selama langkah desain itu menjadi jelas bahwa persyaratan sebagaimana disajikan di langkah analisis tidak memiliki solusi desain (misalnya karena persyaratan yang bertentangan atau tidak lengkap), akan diperlukan untuk meninjau kembali langkah analisis dan menentukan lebih tepatnya apa sistem informasi baru untuk melakukan dalam hal tertentu tersebut.
8.2.5 Membangun Sistem
Membangun sistem adalah penciptaan perangkat lunak oleh programmer. Melibatkan menulis kode software (pemrograman), membangun versi rilis perangkat lunak, membangun dan mempopulasikan database dan pengujian oleh programer dan end-user. Menulis dokumentasi dan pelatihan juga dapat terjadi pada tahap ini. Istilah % u2018build % u2019 adalah salah satu yang kita akan gunakan selain lebih biasa dan ambigu istilah % u2018implementation % u2019 yang ditemukan di banyak teks dan metodologi. Langkah ini mencakup tiga substeps: konstruksi database fisik, pemrograman dan pengujian.
Konstruksi database fisik melibatkan konversi desain database dari langkah sebelumnya ke dalam tabel yang diperlukan dan indeks database relasional. Substep pemrograman melibatkan pembangunan kode komputer yang akan menangani menangkap data, Penyimpanan, pengolahan dan output. Selain itu, akan diperlukan untuk program berbagai atribut lainnya operasional sistem diperlukan (misalnya mereka yang berasal dari desain kontrol). Bersama dan setelah substep pemrograman, berbagai bentuk pengujian akan berlangsung. Output dari tahap membangun akan sistem informasi yang telah diuji dan tersedia untuk konversi data akhir atau operasi mengambil pada dan hidup. Jika selama fase membangun tampaknya dari pengujian bahwa sistem tidak memenuhi persyaratan asli yang ditentukan selama langkah analisis, maka akan diperlukan untuk meninjau kembali langkah desain untuk melihat apakah kesalahan dibuat dalam menafsirkan persyaratan sistem. Jika desain brief adalah diinterpretasikan dengan benar, tetapi sistem masih mengandung kesalahan dalam pengiriman persyaratan dirasakan, akan diperlukan untuk meninjau kembali analisis untuk menentukan persyaratan sistem lebih tepatnya.
8.2.6 Implementasi Sistem & Changeover
Pelaksanaan Sistem mencakup masalah praktis seperti memastikan hardware dan jaringan infrastruktur untuk sistem baru di tempat; pengujian sistem; dan juga masalah manusia cara terbaik untuk mendidik dan melatih staf yang akan menggunakan atau terpengaruh oleh sistem baru. Implementasi ini juga melibatkan transisi atau changeover dari sistem lama ke yang baru. Langkah ini dalam model air terjun berkaitan dengan mempersiapkan dan membuat perubahan dari tua untuk sistem informasi baru. Seperti yang bisa diharapkan, tahap implementasi sistem penuh dengan kesulitan. Di sini, akan menemukan Apakah semua langkah-langkah yang sebelumnya telah bergabung untuk memberikan sistem informasi yang tidak apa yang pengguna benar-benar ingin dan yang juga bekerja dengan baik. Data akan dikonversi dari sistem informasi lama atau langsung dimasukkan ke dalam database baru. Akhirnya, sistem baru akan menjadi operasional langsung, atau fase, atau setelah periode berjalan paralel. Jika kesalahan dijumpai pada tahap menjalankan hidup mungkin mungkin untuk sistem terus dalam operasi sementara kesalahan diperbaiki. Atau, mungkin diperlukan untuk menangguhkan operasi sistem baru sementara kesalahan yang paling signifikan adalah tetap. Koreksi kesalahan seperti itu mungkin memerlukan langkah-langkah sebelumnya untuk menjadi revisited, tergantung pada sifat dan tingkat keparahan galat. Ini akan menjadi jelas dari diskusi ini pendek yang kemudian dalam proses pengembangan sistem kesalahan yang ditemukan, semakin tinggi biaya menempatkan mereka benar. Skenario terburuk mungkin adalah untuk sistem telah mencapai tahap menjalankan hidup hanya untuk itu untuk ditemukan bahwa sistem yang diperlukan tidak pernah benar-benar layak di tempat pertama.
Manual Book Game Base Defender
Aplikasi ini berjudul “Game Base Defender”. Didalam aplikasi ini pemain utama harus menghancurkan pesawat-pesawat yaang terbang yang mana pesawat tersebut bertujuan menjatuhkan pemain utama.
Berikut adalah listing dari game ini :
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
totalobjects = 0;
curlevel = 1;
passedplanes = 0;
gameon = 1;
var enemyarray:Array = new Array();
function removeEnemy(enemyname) {
for (enemysearch=0; enemysearch
}
}
removeMovieClip(enemyname);
}
function removeAllEnemies() {
for (enemyloop=0; enemyloop
highscore.score = score.score;
}
explosion(eval(enemyarray[enemysearch])._x, eval(enemyarray[enemysearch])._y);
removeEnemy(eval(enemyarray[enemysearch]));
removeMovieClip(eval(collider));
break;
}
}
}
var grasspng:BitmapData = BitmapData.loadBitmap('grass');
var grass:BitmapData = new BitmapData(grasspng.width, grasspng.height, true, 0x00000000);
this.createEmptyMovieClip('grasscontainer', this.getNextHighestDepth());
function resetGrass() {
grass.copyPixels(grasspng, new Rectangle(0, 0, grasspng.width, grasspng.height), new Point(0, 0), grasspng, new Point(0, 0), true);
grasscontainer.attachBitmap(grass, grasscontainer.getNextHighestDepth());
grasscontainer._y = 275;
}
resetGrass();
this.attachMovie('soldier', 'soldier', this.getNextHighestDepth());
soldier._x = Stage.width/2;
soldier._y = 50;
soldier.xvel = 0;
soldier.yvel = 0;
soldier.airborne = 1;
soldier.onEnterFrame = function() {
for (enemysearch=0; enemysearch
loseGame();
this._x = Stage.width/2;
this._y = 30;
}
}
this._x = Math.max(5, Math.min(Stage.width-5, Math.round(this._x+this.xvel)));
this._y = Math.round(this._y+this.yvel);
if (grass.getPixel32((this._x-grasscontainer._x), (this._y-grasscontainer._y+1)) != 0) {
for (moveup=1; moveup<=this.yvel; moveup++) {
//check if the soldier has dropped below the top of the ground
if (grass.getPixel32((this._x-grasscontainer._x), (this._y-grasscontainer._y-moveup)) == 0) {
//there is a collision, so move the y position up
this._y -= (moveup);
//exit the for loop
break;
}
}
//the soldier has hit the ground, so reset the y velocity
this.yvel = 0;
//the soldier is no longer airborne
this.airborne = 0;
} else {
//else the soldier has not hit the ground, so it is still airborne
this.airborne = 1;
}
//jump if the W key or up arrow are pressed and the soldier is not airborne
if ((Key.isDown(Key.UP) || Key.isDown(87)) && !this.airborne) {
//soldier is now airborne
this.airborne = 1;
//soldier jumps, so boost the y velocity
this.yvel = -10;
}
//Left or A key is pressed, so move the soldier left
if (Key.isDown(Key.LEFT) || Key.isDown(65)) {
this.xvel = -5;
//Else if the right or D key are pressed, move the soldier right
} else if (Key.isDown(Key.RIGHT) || Key.isDown(68)) {
this.xvel = 5;
//Else if neither left or right are pressed, stop the soldier horizontally
} else if (!this.airborne) {
this.xvel = 0;
}
if (this.xvel != 0 && !this.airborne) {
for (buffup=1; buffup<6; buffup++) {
if (grass.getPixel32((this._x-grasscontainer._x), (this._y-grasscontainer._y-buffup)) == 0) {
this._y -= buffup;
break;
}
}
if(buffup==6){
this._y -= 1;
}
}
};
function explosion(xpos, ypos) {
this.attachMovie('explosion', 'explosion'+totalobjects, this.getNextHighestDepth());
eval('explosion'+totalobjects)._x = xpos;
eval('explosion'+totalobjects)._y = ypos;
totalobjects++;
}
function circleErase(bitmap, xpos, ypos, circlesize) {
r2 = circlesize*circlesize;
for (circx=-circlesize; circx<=circlesize; circx++) {
circy = Math.round(Math.sqrt(r2-circx*circx)+0.5);
bitmap.fillRect(new Rectangle(xpos+circx, ypos-circy, 1, circy*2), 0x0);
}
}
function loseGame() {
for (xpos=10; xpos
removeMovieClip(this);
}
};
totalobjects++;
};
this.onEnterFrame = function() {
if (gameon && (Math.random()*100)/curlevel<1) {
enemyarray.push('plane'+totalobjects);
attachMovie('plane', 'plane'+totalobjects, this.getNextHighestDepth());
eval('plane'+totalobjects).movedir = Math.floor(Math.random()*2)-1;
eval('plane'+totalobjects)._y = Math.random()*50+15;
eval('plane'+totalobjects)._x = Stage.width*(-eval('plane'+totalobjects).movedir);
eval('plane'+totalobjects)._xscale = 100*(1+2*eval('plane'+totalobjects).movedir);
eval('plane'+totalobjects).onEnterFrame = function() {
this._x += 1+this.movedir*2;
if ((Stage.width
loseGame();
removeEnemy(this._name);
}
};
totalobjects++;
}
};
totalobjects++;
passedplanes++;
if (passedplanes>40) {
passedplanes = 0;
curlevel++;
}
}
};
function visitswfspot() {
getURL("http://www.swfspot.com", "_blank");
}
var myMenu = new ContextMenu();
var menubezz = new ContextMenuItem("Visit swfspot.com for more games and code", visitswfspot);
myMenu.customItems.push(menubezz);
_root.menu = myMenu;
Output Game :
Baca Selengkapnya...
Story Board Game Base Defender
Disini akan dibahas permainan yang dijadikan tugas softskill, game ini berjudul “Base Defender”. Awal mula setelah game dijalankan, maka akan muncul tampilan awal game seperti gambar di bawah ini. Awal mula dideklarasikan score bernilai 0.
Gambar di bawah ialah scene selanjutnya setelah game berjalan, munculnya pesawat-pesawat yang merupakan musuh utama dalam game ini. Scene di bawah ini merupakan penjelasan bagaimana pesawat-pesawat yang merupakan musuh dalam game ini bereaksi. Pesawat-pesawat tersebut melepaskan peluru semacam torpedo ke bawah arah pemain utama. Scene di bawah merupakan penjelasan dimana musuh pesawat tersebut dapat dilawan dan dihancurkan dengan menembak objek musuh pesawat tersebut dengan mengklik kiri mouse dan diarahkan ke arah pesawat tersebut sehingga pesawat tersebut hancur meledak. Untuk setiap pesawat yang dihancurkan, akan mendapat tambahan nilai score sebanyak 1 point untuk masing-masing pesawat yang dihancurkan. Scene di bawah merupakan scene dimana pemain utama terkena tembakan torpedo yang dilepaskan pesawat musuh. Jika objek pemain terkena tembakan torpedo tersebut, maka pemain akan dinyatakan kalah dan akan muncul pertanyaan apakah ingin bermain lagi atau tidak.Nama : Dzul Azhar Iskandar
Kelas: 3IA18
NPM : 50409722 Baca Selengkapnya...
Membuat Game Dengan HTML 5
1. Buat Canvas
dibawah ini adalah kode programnya:
var canvas = document.createElement("canvas");
var ctx = canvas.getContext("2d");
canvas.width = 512;
canvas.height = 480;
document.body.appendChild(canvas);
maksud dari kode tersebut ialah membuat layer atau lahan untuk kita membuat game dengan tinggi dan lebar yang telah kita tentukan.
2. Memasukan Gambar
dibawah ini adalah kode programnya:
var bgReady = false;
var bgImage = new Image();
bgImage.onload = function () {
bgReady = true;
};
bgImage.src = "images/background.png";
maksud dari kode tersebut ialah memasukan gambar background.png yang ada pada folder images pada website kita.
3. Membuat Object Hero dan Monster
dibawah ini adalah kode programnya:
var heroReady = false;
var heroImage = new Image();
heroImage.onload = function () {
heroReady = true;
};
heroImage.src = "images/hero.png";
var monsterReady = false;
var monsterImage = new Image();
monsterImage.onload = function () {
monsterReady = true;
};
monsterImage.src = "images/monster.png";
var hero = {
speed: 256
};
var monster = {};
var monstersCaught = 0;
maksud dari kode ini ialah membuat object hero dan monster yang menggunakan gambar hero.png dan monster.png yang ada pada folder image juga, lalu mendeklarasikan kecepatan dalam pergerakan hero dan mendeklarasikan nilai permainan.
4.Pengaturan Tombol Permainan
dibawah ini adalah kode programnya:
var keysDown = {};
addEventListener("keydown", function (e) {
keysDown[e.keyCode] = true;
}, false);
addEventListener("keyup", function (e) {
delete keysDown[e.keyCode];
}, false);
dalam sebuah permainan tentunya kita diperlukan tombol kontrol untuk melakukan aksi dari object kita tersebut, oleh karena itu kode di atas ialah kode yang membuat object merespon atas tombol arah yang kita tekan.
5. Peraturan Lokasi Object Permainan
dibawah ini adalah kode programnya:
var reset = function () {
hero.x = canvas.width / 2;
hero.y = canvas.height / 2;
monster.x = 32 + (Math.random() * (canvas.width - 64));
monster.y = 32 + (Math.random() * (canvas.height - 64));
};
berikut ini adalah kode jika hero mengenai monster, maka hero akan di tempatkan kembali pada tengah-tengah dari canvas dan posisi dari monster di random kembali agak posisinya tidak monoton.
6.Pengaturan Arah Object Hero
dibawah ini adalah kode programnya:
var update = function (modifier) {
if (38 in keysDown) {
hero.y -= hero.speed * modifier;
}
if (40 in keysDown) {
hero.y += hero.speed * modifier;
}
if (37 in keysDown) {
hero.x -= hero.speed * modifier;
}
if (39 in keysDown) {
hero.x += hero.speed * modifier;
}
kode diatas ialah kode yang menerangkan pergerakan dari object hero saat tombol arah pada keyboard di tekan, maka posisi x dan y hero akan bergerak dengan kecepatan yang telah di deklarasikan sebelumnya.
7. Pengaturan Nilai Permainan
dibawah ini adalah kode programnya:
if (
hero.x <= (monster.x + 32) && monster.x <= (hero.x + 32) && hero.y <= (monster.y + 32) && monster.y <= (hero.y + 32) ) { ++monstersCaught; reset(); } };
kode diatas menerangkan suatu kondisi jika object hero kita telah mengenai object monster maka nilai dari monstersCought akan bertambah dan akan memanggil fungsi reset yang akan mereset posisi hero dan merandom posisi monster.
8. Render Object
dibawah ini adalah kode programnya:
var render = function () {
if (bgReady) {
ctx.drawImage(bgImage, 0, 0);
}
if (heroReady) {
ctx.drawImage(heroImage, hero.x, hero.y);
}
if (monsterReady) {
ctx.drawImage(monsterImage, monster.x, monster.y);
}
ctx.fillStyle = "rgb(250, 250, 250)";
ctx.font = "24px Helvetica";
ctx.textAlign = "left";
ctx.textBaseline = "top";
ctx.fillText("Goblins caught: " + monstersCaught, 32, 32);
};
kode diatas merupakan pengaturan tampilan dari object-object kita tersebut, dan memberikan tampilan nilai pada canvas kita tersebut dengan pengaturan font seperti yang ada pada kode program diatas.
9. Melakukan Pengulangan Game
dibawah ini adalah kode programnya:
var main = function () {
var now = Date.now();
var delta = now - then;
update(delta / 1000);
render();
then = now;
};
pada kode diatas menerangkan perintah saat permainan di ulang dan melakukan render ulang.
10. Memulai Permainan
dibawah ini adalah kode programnya:
reset();
var then = Date.now();
setInterval(main, 1);
diatas merupakan perintah untuk memulai permainan dengan pengaturan-pengaturan yang telah kita buat diatas.
*referensi
sumber
Desain Game
Artikel ini mengasumsikan Anda akan menggunakan alat GameMaker untuk menciptakan permainan Anda dan Anda berencana untuk memiliki sebuah game Anda yang diterbitkan pada perangkat mereka melalui Game YoYo. Keuntungan menggunakan GameMaker adalah permainan Anda dapat dengan mudah porting ke platform yang berbeda.
Kunci Sukses (The Key of Success)
Kunci keberhasilan adalah Anda harus membuat game yang orang ingin bermain. Mereka harus seperti ikon dan nama sehingga mereka akan melihat gambaran permainan yang sebenarnya. Mereka harus seperti deskripsi dan screen shot sehingga mereka akan membeli permainan. Mereka harus seperti lima menit pertama bermain seperti bahwa mereka tidak akan membuangnya dan memberikan rating yang buruk.
Dan mereka masih harus menyukainya setelah dua jam bermain sehingga mereka akan memberitahu teman-teman mereka tentang hal itu, menciak tentang hal itu, memberikan ulasan yang baik, dll dan game yang dibuat juga harus bisa bersaing di antara banyak game yang muncul yang perharinya bisa muncul 50 game baru lebih.
Permulaan (Getting Started)
Melihat persaingan (Check out the competition)
Jika Anda ingin membuat permainan yang sukses pada IOS dan Android Anda lebih baik memulai dengan melihat kompetisi. Jadi pastikan Anda memiliki iPhone atau iPod Touch (lebih disukai generasi terbaru), atau, jika mereka terlalu mahal bagi Anda, perangkat Android yang baik. Dapatkan iTunes pada PC Anda dan memeriksa atas 100 game gratis dan berbayar yang paling populer.
Beli / download sejumlah besar dari mereka, dan bermain mereka banyak. Ini akan memberi Anda wawasan yang luas dalam jenis permainan yang populer di perangkat tersebut. Ataupun mengunjungi beberapa situs yang mereview game mobile, seperti http://www.appolicious.com, http://www.pocketgamer.co.uk, http://www.appspy.com, atau http: // www.148apps.com.
Baca beberapa review dari game yang Anda bermain dan melihat apa pemeriksa suka dan apa yang mereka tidak suka. Anda perlu membuat sebuah permainan yang ulasan akan positif tentang. Anda juga mungkin ingin membaca beberapa komentar para pemain ditambahkan dalam App Store untuk mengetahui seberapa menariknya game yang Anda buat bagi pemain yang memainkan game Anda.
Buat tim (Create Team)
Sebuah permainan yang baik memerlukan desain yang baik, seni yang baik, pemrograman yang baik, dan efek suara yang bagus dan musik. Ada sedikit orang di sekitar yang dapat melakukan semua hal ini. Bahkan jika Anda berpikir Anda bisa, pikirkan lagi. Ada kemungkinan besar bahwa ada orang lain di sekitar yang lebih baik dalam satu atau beberapa aspek. Jadi jika Anda bekerja sama dengan mereka permainan Anda akan lebih baik.
Komersialkan (Think Commercially)
Anda harus berpikir secara komersial jika Anda ingin permainan Anda menjadi sukses. Tambahkan elemen-elemen untuk permainan Anda yang akan menarik bagi banyak pemain.Pilih gaya grafis yang menyenangkan demografis yang besar. Menjaga permainan cukup sederhana sehingga banyak orang dapat memainkannya.
Dan pikirkan bagaimana Anda dapat membuat permainan dengan waktu bermain yang cukup dalam jumlah waktu yang wajar pembangunan. Juga, bersedia untuk menghabiskan waktu di memoles permainan Anda dan menyiapkan pemasaran untuk itu. Misalnya, menciptakan ikon yang baik untuk permainan bernilai setiap jam Anda habiskan untuk itu.
Jenis-jenis Game? (What Kind of Game)
Sekarang Anda tahu apa bagaimana persaingan yang ada, lalu Anda telah membuat sebuah tim, dan Anda memutuskan untuk mengkomersialkan game Anda, saatnya untuk menentukan jenis permainan yang ingin Anda ciptakan.
Demografi (Demographics)
Pertanyaan pertama Anda harus bertanya pada diri sendiri untuk apa Anda membuat permainan Anda. Untuk itu Anda lebih tahu untuk apa Anda mengembangkan permainan yang orang mainkan. Dewasa ini iPhone, iPad, dan iPod bersama-sama mencakup berbagai macam demografi mulai dari anak-anak (iPod Touch) hingga dewasa (iPad).
Namun mereka memainkan permainan yang berbeda. Hal utama yang harus disadari adalah meskipun berhasil membuat game yang bagus, Anda harus memilih demografis yang cukup baik dan kemungkinan ini bukan demografis yang Anda miliki. Jadi jangan terlalu fokus pada permainan yang Anda buat dari pemikiran sendiri.
Saya juga, tapi lebih baik (Me too, but better)
Seberapa penting orisinalitas? Untuk membuat permainan yang sukses jawabannya adalah: TIDAK TERLALU PENTING. Jadi tidak ada salahnya mengambil game yang telah sukses sebagai dasar atau panduan untuk desain game sendiri. Tapi jangan meniru. Jika Anda mengambil desain yang sudah ada, kembangkanlah lagi desain game yang sudah ada tersebut, sehingga hal tersebut menambah kreativitas Anda sendiri.
Pertama menganalisis apa hal dasar yang membuat game sukses. Kemudian mengambil hal-hal lain sebagai dasar dari permainan Anda sendiri, tetapi tentu saja mengubah visual, setting, alur cerita, dan desain tingkat, dan menambahkan fitur baru tambahan agar tidak dicap peniru.
Baca Selengkapnya...