Minggu, 27 Mei 2012

Apa itu algoritma DDA? Bresenham? dan Midpoint


ALGORITMA DDA, BRESENHAM DAN MIDPOINT
1.      ALGORITMA DDA
TITIK DAN GARIS
Persamaan Garis
y = mx + b Persamaan garis menurut koordinat Cartesian adalahdimana m adalah slope/kemiringan garis yang dibentuk dari dua titik, yaitu (x1,y1) dan (x2,y2).Untuk penambahan x sepanjang garis yaitu dx akan mendapatkan penambahan y sebesar : dy = m . dx
Atribut
Atribut dasar untuk garis lurus adalah type (tipe), width (tebal) dan color (warna). Dalam beberapa paket aplikasi grafik, garis ditampilkan dengan menggunakan pilihan pen atau brush . Berikut ini dibicarakan bagaimanafungsi garis dapat mengakomodasi bermacam-macam spesifikasi atribut.
Tipe Garis
Garis mempunyai beberapa linetype (tipe garis) diantaranya solid line (garis tebal), dashed line (garis putus), dan dotted line (garis titik-titik).Algoritma pembentukan garis dilengkapi dengan pengaturan panjang dan jarak yang menampilkan bagian solid sepanjang garis.
Garis putus dibuat dengan memberikan nilai jarak dengan bagian solid yang sama. Garis titik–titik dapat ditampilkan dengan memberikan jarak yang lebih besar dari bagain solid.
Prosedur yang serupa digunakan pula untuk membuat bermacam-macam tipe garis. Untuk mengatur atribut dalam program aplikasi PHIGS menggunakan fungsi: setLinetype (lt)
Di mana parameter it menunjukkan integer positif dengan nilai 1,2,3,4 untuk membuat garis solid, dashed, dotted atau dotted dash. nilai lain untuk parametergaris dapat digunakan untuk menampilkan berbagai macam pola dot dashed. Ketika parameter linetype diatur dalam aplikasi PHIGS, perintah line drawing membuat garis dengan tipe garis tersebut.
Algoritma Pembentukan Garis
Algoritma pembentukan garis menggunakan 3 algoritma :
Algoritma Digital Differensial Analyzer atau biasa disebut dengan Algoritma DDA adalah algoritma pembentukan garis berdasarkan perhitungan dx maupun dy, menggunakan rumus dy mdx. Garis dibuat menggunakan dua endpoint, yaitu titik awal dan titik akhir. Setiap koordinat titik yang membentuk garis diperoleh dari perhitungan, kemudian dikonversikan menjadi nilai integer.

           Algoritma DDA bekerja atas dasar penambahan nilai x dan nilai y. Pada garis lurus, turunan pertaman dari x dan y adalah konstanta. Sehingga untuk memperoleh suatu tampilan turunan dengan ketelitian tinggi, suatu garis dapat dibangkitkan dengan menambah nilai x dan y masing-masing sebesar eΔx dan eΔy, dengan besaran nilai yang sangat kecil. Kondisi ideal ini sukar dicapai, karenanya pendekatan yang mungkin dilakukan adalah berdasarkan piksel-piksel yang bisa diamati / dicapai atau melalui penambahan atau pengurangan nilai x dan y dengan suatu besaran dan membulatkannya ke nilai integer terdekat.
               Contohnya dapat ditunjukkan dengan gambar berikut :
http://4.bp.blogspot.com/-PodAlr5yyiY/T3E-0hVKgOI/AAAAAAAAAAc/UA689FY6hec/s1600/1.jpg
              
               Jika 0 < m < 1      maka    yk + 1 = yk + m
                                                          xk + 1 = xk + 1
               Jika m > 1            maka    xk + 1 = xk + 1/m
                                                          yk + 1 = yk + 1

ALGORITMA GARIS DDA
Digital Diferensial Analyser (DDA) adalah algoritma pembentukan garis berdasarkan perhitungan dx maupun dy, menggunakan rumus dy = m . dx. Garis dibuat menggunakan dua endpoint, yaitu titik awal dan titik akhir. Setiap koordinat titik yang membentuk garis diperoleh dari perhitungan, kemudian dikonversikan menjadi nilai integer.
Langkah-langkah membentuk garis menurut algoritma DDA adalah :
1. Tentukan dua titik yang akan dihubungkan dalam pembentukan garis
2. Tentukan titik awal yaitu dan titik akhir .
3. Hitung dx = x1- x0 dan dy = y1 – y0
4. Tentukan step = max( |dx| , |dy| )
5. Hitung penambahan koordinat pixel XInc = dx / step dan YInc = dy / step
6. Koordinat selanjutnya (x+XInc, y+yInc)
7. Posisi pada layar ditentukan dengan pembulatan nilai koordinat tersebut
8. Ulangi nomor 6 dan 7 untuk menentukan posisi pixel berikutnya. sampai x=x1dan y=y1.

2.      ALGORITMA BRESENHAM
-          Garis Lurus
Garis lurus dinyatakan dinyatakan dalam persamaan :
y = mx + c                               (1)
dimana : m : gradient dan
c : konstanta.

Untuk menggambarkan piksel-piksel dalam garis lurus, parameter yang digunakan tergantung dari gradient, jika besarnya gradient diantara 0 dan 1, maka digunakan sumbu x sebagai parameter dan sumbu y sebagai hasil dari fungsi, sebaliknya, bila gradient melebihi 1, maka sumbu y digunakan sebagai parameter dan sumbu x sebagai hasil dari fungsi, hal ini bertujuan untuk menghindari terjadinya gaps karena adanya piksel yang terlewatkan. Hasil dari fungsi biasanya merupakan bilangan real, sedangkan koordinat pixel dinyatakan dalam bilangan integer (x,y), maka diperlukan operasi pembulatan kedalam bentuk integer terdekat. Penggambaran garis lurus dengan metode diatas dimulai dengan operasibilangan real untuk menghitung gradient m dan konstanta c.

m = (y2 – y1 ) / (x2-x1)          (2)
c = y1 / m* x1*                       (3)

Operasi bilangan real berikutnya adalah menghitung nilai y dengan persamaan (1) Untuk mendapatkan koordinat piksel (x,y), untuk setiapnilai x, dari =x1 sampai x=x2, operasi inilah yang perlu dihindari,karena operasi ini memerlukan waktu operasi yang besar.

Algoritma Bresenham untuk Penggambaran Garis
Bresenham pada tahun 1965, melakukan perbaikan dari algoritma perhitungan koordinat piksel yang menggunakan persamaan (1), dengan cara menggantikan operasi bilangan real perkalian dengan operasi penjumlahan, yang kemudian dikenal dengan Algoritma Bresenham. Pada algoritma bresenham, nilai y kedua dan seterusnya, dihitung dari nilai y sebelumnya, sehingga hanya titik y pertama yang perlu dilakukan operasi secara lengkap. Perbaikan algoritma ini ternyata tidak menghasilkan perbaikan yang cukup siginifikan. Perbaikan berikutnya dilakukan dengan cara menghilangkan operasi bilangan real dengan operasi bilangan integer. Operasi bilangan integer jauh lebih cepat dibandingkan dengan operasi bilangan real, terutama pada penambahan dan pengurangan.

ALGORITMA GARIS BRESSENHAM
Prosedur untuk menggambar kembali garis dengan membulatkan nilai x atau y ke bilangan integer memerlukan waktu. serta variabel x,y maupun m memerlukan bilangan real karena kemiringan merupakan nilai pecahan.Bressenham mengembangkan algoritma klasik yang lebih menarik, karena hanya menggunakan perhitungan matematik dengan bantuan bilangan integer. Dengan demikian tidak perlu membulatkan nilai posisi pixel setiap waktu. Langkah-langkahnya adalah sebagai berikut:
1. Tentukan dua titik yang akan dihubungkan dalam pembentukan garis.
2. Tentukan salah satu titik disebelah kiri sebagai titik awal (x0,y0) dan titik lainnya sebagai titik akhir (x1,y1)
3. Hitung dx, dy, 2dx dan 2dy-2dx
4. Hitung parameter P0 = 2dy – dx
5. Untuk setiap xk sepanjang garis dimulai dengan k=0
§ Bila Pk < 0 maka titik selanjutnya adalah (xk+1, yk) dan Pk+1=Pk+2dy
§ Bila tidak maka titik selanjutnya adalah (xk+1, yk+1) dan Pk+1=Pk+2dy-2dx
6. Ulangi nomor 5 untuk menentukan posisi pixel selanjutnya sampai x=x1 dan y=y1


3.      ALGORITMA MIDPOINT
Algoritma Midpoint untuk Penggambaran Garis
Algoritma midpoint dikembangkan oleh Pitteway pada tahun 1967.
Persamaan garis lurus yang telah dinyatakan dalam persamaan (1) dapat dinyatakan dalam fungsi x,y berikut.

*f(x, y) = ax + by + c = 0 *                (4)

Fungsi f(x,y) dalam persamaan (4), akan memberikan nilai 0 pada setiap titik yang terletak pada garis, dan bernilai positif pada setiap titik yang terletak dibawah garis, dan bernilai negatif pada setiap titik yang terletak diatas garis. Maka untuk menentukan apakah titik P atau Q sebagai koordinat piksel berikutnya, maka dilakukan dengan cara menghitung nilai fungsi f(x,y) dalam persamaan (4) pada titik P dan titik Q . Jika fungsi f(x,y) tersebut memberikan nilai positif, maka piksel berikutnya adalah Q, sebaliknya piksel berikutnya adalah P.

*g(x, y) = f(xn + 1, yn + 1/2) *          (5)

Fungsi g(x,y) persamaan (5) merupakan variabel penentu, dengan mengevaluasi g (x, y) dapat ditentukan piksel berikutnya yang mana berdasarkan tanda plus atau minus dari hasil fungsi g(x,y). Untuk mempercepat komputasi fungsi g(x,y), dilakukan dengan cara incremental berdasarkan nilai sebelumnya. Untuk setiap piksel, increment sederhana (DeltaG) dipakai sebagai variabel penentu. Karena hanya ada 2 pilihan piksel pada setiap tahap, maka hanya ada 2 increment yang dapat digunakan. Hal ini dilakukan dengan cara pengurangan nilai g(x,y) yang berurutan dengan menggunakan persamaan 4 dan persamaan 5.

*DeltaG = a * DeltaX + b * DeltaY *          (6)

Dimana DeltaX dan DeltaY adalah increment yang dipakai pada x dan y, yang bernilai 0 atau 1. Bila bergeser 1 piksel ke kanan :

*DeltaG1 = a*                                    (7)

Bila bergeser 1 piksel ke kanan dan 1 piksel ke atas.

*DeltaG2 = a + b *                            (8)

Jadi nilai dari variable penentu dapat dihitung dari nilai sebelumnya dengan cara menambah dengan (a) atau (a+b). Algoritma untuk menggambar garis lurus dari (x1, y1) sampai (x2, y2) dilakukan dengan langkah-langkah sebagai-berikut:

1. Gambar piksel pertama (x1,y1). Hitung variabel penentu dengan persamaan (3).
2. Tentukan tanda variabel penentu. Jika variabel penentu bernilai positif, increment x dan y dan tambahkan (a+b) pada vaiabel penentu, sebaliknya increment x dan y dan tambahkan (a) pada variabel penentu.
3. Plot piksel pada posisi (x, y).
4. Ulangi langkah mulai langkah kedua, sampai piksel terakhir (x2,y2).
-          Lingkaran
Kurva lingkaran dinyatakan dinyatakan dalam persamaan :

*(x-xc) ^2 + (y-yc) ^2 = r ^2 *          (9)
dimana : (xc,yc) : koordinat titik pusat lingkaran
r : jari-jari lingkaran


Untuk menggambarkan piksel-piksel dalam kurva lingkaran, dapat digunakan sumbu x dari x = (xc-r) sampai x = (xc+r) sebagai parameter dan sumbu y sebagai hasil dari persamaan (10)

*y = yc +- sqrt(r ^2 – (x-xc) ^2 *      (10)

Algoritma ini memerlukan waktu operasi yang besar, karena mengandung operasi bilangan riel perkalian maupun eksponential, dan menghasilkan posisi koordinat piksel yang tidak merata, karena terjadinya gaps yang disebabkan adanya perubahan gradient.
Untuk menghindari posisi koordinat piksel yang tidak merata, koordinat piksel (x,y) dinyatakan dengan menggunakan koordinat polar dalam persamaan (11)

*x = xc + r cos q *                              (11a)
*y = yc + r sin q *                              (11b)

Persamaan (11) diatas mengandung operasi bilangan riel perkalian untuk mendapatkan koordinat piksel (x,y), untuk setiap nilai x, dari x = (xc-r) sampai x = (xc+r), operasi inilah yang perlu dihindari, karena operasi ini memerlukan waktu operasi yang besar.

Algoritma Midpoint untuk Menggambar Lingkaran
Komputasi untuk membuat kurva lingkaran dimulai dengan mengidentifikasi bagian-bagian dari lingkaran yang dapat ditentukan dengan menggunakan sifat simetri, hal ini dilakukan dengan cara membagai lingkaran dengan masing-masing mempunyai sudut sebesar 45° , sehingga dalam sebuah lingkaran dibagi menjadi 8 bagian. Sebagai contoh, digambarkan bagian dari lingkaran dari sudut 90° sampai 45° . Seperti pada algoritma midpoint untuk garis lurus, maka pada setiap tahapan, terdapat 2 koordinat piksel yang harus dipilih yaitu (x+1, y) atau (x+1, y-1).

Langkah berikutnya, adalah menyatakan persamaan lingkaran dan fungsi untuk menentukan variabel penentu. Persamaan lingkaran dengan pusat (0,0) dinyatakan dalam persamaan (12).

*f(x, y) = x*x + y+y – r*r = 0 *         (12)

Fungsi f(x, y) persamaan (12) akan bernilai positif jika titik (x,y) diluar lingkaran, dan bernilai negatif jika titik (x,y) didalam lingkaran. Fungsi untuk variabel penentu dan increment dinyyatakan dalam persamaan (13), (14), dan (15).

g(x, y) = (x + 1) (x + 1) + (y – 1/2) (y – 1/2) – r*r                 (13)
*DeltaG1 = 2x + 3                                                                  (14)
*DeltaG2 = 2x – 2y + 5                                                          (15)

Berbeda dengan nilai dari increment pada algoritma garis lurus yang bernilai konstan, pada kurva lingkaran, increment tidak konstan. Terlihat bahwa komputasi increment memerlukan operasi perkalian, tetapi operasi perkalian dapat diubah dengan cara komputasi nilai increment secara increment pula, sehingga diperlukan 2 komputasi increment dalam setiap piksel yang diproses. Secara umum, kurva polinomial orde n memerlukan n level increment. Pada titik awal (x1,y1), komputasi variabel penentu mempunyai bagian bilangan riel, sehingga operasi bilangan integer tidak dapat digunakan secara langsung.
Dalam praktek hal ini diselesaikan dengan cara menambahkan nilai 1/4 pada variable penentu. Hal ini tidak mempengaruhi perubahan tanda bilangan, karena operasi yang dilakukan adalah operasi bilangan integer, sehingga menghasilkan operasi yang lebih cepat.
Panjang garis atau banyak piksel dalam garis lurus sangat berpengaruh terhadap perbandingan performance antara sebuah algoritma dengan algoritma yang lain, hal ini disebabkan adanya perbedaan waktu operasi yang berada didalam perulangan sepanjang pembuatan piksel, dan waktu operasi yang berada pada sebelumnya. Panjang jari-jari dalam lingkaran tidak berpengaruh terhadap perbandingan performance antara sebuah algoritma dengan algoritma yang lain, hal ini menunjukkan perbandingan waktu operasi yang berada didalam perulangan sepanjang pembuatan piksel, dan waktu operasi yang berada pada sebelumnya berimbang.
Algoritma dengan dasar operasi bilangan integer memberikan waktu operasi yang lebih cepat dibandingkan dengan algoritma dengan dasar operasi bilangan riel, hal ini ditunjukkan dengan waktu komputasi algoritma DDA, algoritma Bresenham dan algoritma Midpoint yang lebih cepat, baik pada pembuatan garis lurus maupun lingkaran dibandingan waktu komputasi dengan algoritma yang menggunakan dasar operasi bilangan riel. Algoritma midpoint memberikan waktu operasi tercepat diantara algoritma penggambaran garis lurus yang telah menggunakan dasar operasi bilangan integer, seperti algoritma DDA, algoritma Bresenham. Jadi algoritma Midpoint merupakan algoritma yang cocok untuk penggambaran grafik yang menuntut kecepatan sebagai hal yang diutamakan.

Postingan di atas juga ada dalam bentuk .docx . Dapat didownload disini

Menggambar menggunakan Algorima DDA, Bresenham, Midpoint

Berikut source code lengkapnya dapat didownload disini..
source code lengkapnya

Membuat garis, spline dsb.

Sekarang zakia mau kasih contoh program untuk membuat bebagai macam garis, mulai dari garis berderajat1, berderajat 2, berderajat 3, dan spline. Ini contoh tugas kuliah grafika komputer saya di kelas.
Untuk lebih jelasnya, source code lengkapnya dapat didownload disini source code lengkapnya

Membuat bentuk primitif dengan Aksi Button dengan Java

Pada postingan sebelumnya zakia uda kasih contoh membuat bentuk-bentuk primitif menggunakan java. Sekarang zakia mau bagi-bagi caranya membuat bentuk primitif dan memilih bentuk primitif itu menggunakan button. So, ini hanya berbeda dari segi tampilannya saja.
Untuk soure code lengkapnya dapat didowload disini
source code lengkapnya

Sabtu, 26 Mei 2012

Membuat bentuk primitif

 Kali ini zakia mau posting, gmna caranya membentuk beberapa objek dengan menggunakan Java, antara lain :
1. titik
2. garis
3. segitiga
4. persegi
5. lingkaran
6. poligon

Untuk lebih jelasnya, ini source code nya
source code lengkapnya


Kamis, 26 April 2012

ETIKA PROFESI MENJADI GURU IT (AKADEMISI)


MAKALAH

ETIKA PROFESI MENJADI
SEORANG GURU IT ATAU AKADEMISI

Untuk Memenuhi Tugas Mata Kuliah Etika Profesi
yang Dibimbing oleh Bpk. Ali Wafa M. Kom







                         
Disusun Oleh
Dzakiyatur Rosyidah  (10650077)


JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI
MAULANA MALIK IBRAHIM MALANG
MARET, 2012
KATA PENGANTAR

Paper ini dimaksudkan sebagai penjelasan ringkas mengenai Etika Profesi di bidang IT (Information Technology) khususnya di kalangan guru IT atau dosen. Dengan membaca paper ini diharapkan pembaca dapat memahami dan mengerti tentang etika profesi di bidang IT khususnya akademisi dan memahami faktor dan hal-hal lain yang berkaitan dengan etika profesi.
Paper ini berisi tentang pentingnya etika profesi beserta sub-sub bagiannya, antara lain : Pengertian Etika, Pengertian Profesi, Pengertian Etika Profesi, Kode Etik Profesi Menjadi Guru IT,
Penulis mengucapkan terima kasih kepada semua pihak yang telah membantu dalam penyelesaian paper ini. Penulis juga menyadari paper ini masih jauh dari kata sempurna. Maka kritik dan saran dari para pembaca sangat penulis harapkan untuk penyempurnaan paper ini di masa mendatang.

Malang, 20 Maret 2012
Penulis
   Dzakiyatur Rosyidah

I.                   PENDAHULUAN

1.1  Pengertian Etika
Kamus Besar Bahasa Indonesia terbitan Departemen Pendidikan dan Kebudayaan (1988) merumuskan pengertian etika dalam tiga arti sebagai berikut :
·         ilmu tentang apa yang baik dan yang buruk, tentang hak dan kewajiban moral
·         kumpulan asas atau nilai yang berkenaan dengan akhlak
·         nilai mengenai benar dan salah yang dianut masyarakat
      Dari asal- usul katanya, etika berasal dari bahasa Yunani “ethos” yang berarti adat istiadat atau kebiasaan yang baik. Bertolak dari kata tersebut, akhirnya etika berkembang menjadi studi tentang kebiasaan manusia berdasarkan kesepakatan, menurut ruang dan waktu yang berbeda, yang menggambarkan perangai manusia dalam kehidupan pada umunya.
Menurut Profesor Robert Salomon, etika dapat dikelompokkan menjadi dua definisi yaitu :
·         etika merupakan karakter individu, dalam hal ini termasuk bahwa orang yang beretika adalah orang yang baik. Pengertian ini disebut pemahaman manusia sebagai individu yang beretika.
·         etika merupakan hokum social. Etika merupakan hokum yang mengatur, mengendalikan serta membatasi perilaku manusia.
      Pada perkembangannya, etika telah menjadi sebuah studi. Fagothey  (1953) mengatakan bahwa etika adalah studi tentang kehendak manusia, yaitu kehendak yang berhubungan dengan keputusan yang benar dan yang salah dalam tindak perbuatannya. Pernyataan tersebut ditegaskan kembali oleh Sumaryono (1995) yang menyatakan bahwa etika merupakan studi tentang kebenaran dan ketidakbenaran berdasarkan kodrat manusia yang diwujudkan melalui kehendak manusia dalam perbuatannya.
Satu lagi pengertian Etika menurut Drs.H. Burhanudin Salam adalah Cabang filsafat yang berbicara mengenai nilai dan norma moral yang menentukan prilaku manusia dalam hidupnya. Etika dibedakan menjadi :

a. ETIKA UMUM, berbicara mengenai kondisi-kondisi dasar bagaimana manusia bertindak secara etis, bagaimana manusia mengambil keputusan etis, teori-teori etika dan prinsip-prinsip moral dasar yang menjdai pegangan bagi manusia dalam bertindak serta tolak ukur dalam menilai baik atau buruknya suatu tindakan. Etika umum dapat di analogkan dengan ilmu pengetahuan, yang membahas mengenai pengertian umum dan teori-teori.
b. ETIKA KHUSUS, merupakan penerapan prinsip-prinsip moral dasar dalam bidang kehidupan yang khusus.
1.2  Pengertian Profesi
Profesi adalah pekerjaan yang dilakukan sebagai kegiatan pokok untuk menghasilkan nafkah hidup dan yang mengandalkan suatu keahlian.
Art
i lain dari Profesi:
·         Mengandalkan suatu keterampilan atau keahlian khusus.
·         Dilaksanakan sebagai suatu pekerjaan atau kegiatan utama (purna waktu).
·         Dilaksanakan sebagai sumber utama nafkah hidup.
·         Dilaksanakan dengan keterlibatan pribadi yang mendalam.
Adapun ciri-ciri dari profesi, antara lain :
·         Adanya pengetahuan khusus, yang biasanya keahlian dan keterampilan ini dimiliki berkat pendidikan, pelatihan dan pengalaman yang bertahun-tahun.
·         Adanya kaidah dan standar moral yang sangat tinggi. Hal ini biasanya setiap pelaku profesi mendasarkan kegiatannya pada kode etik profesi.
·         Mengabdi pada kepentingan masyarakat, artinya setiap pelaksana profesi harus meletakkan kepentingan pribadi di bawah kepentingan masyarakat.
·         Izin khusus untuk menjalankan suatu profesi. Setiap profesi akan selalu berkaitan dengan kepentingan masyarakat, dimana nilai-nilai kemanusiaan berupa keselamatan, keamanan, kelangsungan hidup dan sebagainya, maka untuk menjalankan suatu profesi harus terlebih dahulu ada izin khusus. Kaum profesional biasanya menjadi anggota dari suatu profesi.
Suatu profesi juga memilki syarat, antara lain :
1)      Melibatkan kegiatan intelektual.
2)      Menggeluti suatu batang tubuh ilmu yang khusus.
3)      Memerlukan persiapan profesional yang alam dan bukan sekedar latihan.
4)      Memerlukan latihan dalam jabatan yang berkesinambungan.
5)      Menjanjikan karir hidup dan keanggotaan yang permanen.
6)      Mementingkan layanan di atas keuntungan pribadi.
7)      Mempunyai organisasi profesional yang kuat dan terjalin erat.
8)      Menentukan standarnya sendiri, dalam hal ini adalah kode etik.

Seperti yang telah
dipaparkan di atas bahwa profesi merupakan suatu pekerjaan yang mengandalkan keterampilan dan keahlian khusus yang tidak didapatkan pada pekerjaan-pekerjaan sebelumnya. Profesi merupakan suatu pekerjaan yang menuntut pengemban profesi tersebut untuk terus memperbaharui keterampilannya sesuai perkembangan ilmu pengetahuan dan teknologi.

1.3  Pengertian Etika Profesi
Beberapa pengertian tentang etika profesi, diantaranya yaitu :
1)      Merupakan hasil pengaturan diri profesi yang bersangkutan dan ini perwujudan moral yang hakiki, yang tidak dapat dipaksakan dari luar.
2)      Dapat berlaku efektif apabila dijiwai oleh cita-cita dan nilai-nilai yang hidup dalam lingkungan profesi itu sendiri.
3)      Merupakan rumusan norma moral manusia yang mengemban profesi itu.
4)      Tolak ukur perbuatan anggota kelompok profesi.
5)      Merupakan upaya pencegahan berbuat yang tidak etis bagi anggotanya

1.4  Peran Etika dalam Bidang IT
Seperti yang kita ketahui perkembangan dunia IT berlangsung sangat cepat. Dengan pekembangan tersebut diharapkan akan dapat mempertahankan dan meningkatkan taraf hidup manusia. Banyak hal yang menggiurkan manusia untuk dapat sukses dalam bidang it tetapi tidak cukup dengan mengandalkan Ilmu Pengetahuan dan Teknologi, manusia juga harus menghayati secara mendalam kode etik ilmu, teknologi dan kehidupan
Banyak ahli telah menemukan bahwa teknologi mengambil alih fungsi mental manusia, pada saat yang sama terjadi kerugian yang diakibatkan oleh hilangnya fungsi tersebut dari kerja mental manusia. Perubahan yang terjadi pada cara berfikir manusia sebagai akibat perkembangan teknologi sedikit banyak berpengaruh terhadap pelaksanaan dan cara pandang manusia terhadap etika dan norma dalam kehidupannya.
1.5  Fungsi Kode Etik Secara Umum
Perlu diketahui, pada dasarnya kode etik memiliki fungsi ganda yaitu sebagai perlindungan dan pengembangan bagi profesi. Fungsi seperti itu sama seperti apa yang dikemukakan Gibson dan Michel (1945 : 449) yang lebih mementingkan pada kode etik sebagai pedoman pelaksanaan tugas prosefional dan pedoman bagi masyarakat sebagai seorang professional.
Biggs dan Blocher ( 1986 : 10) mengemukakan tiga fungsi kode etik yaitu :
(1) Melindungi suatu profesi dari campur tangan pemerintah
(2) Mencegah terjadinya pertentangan internal dalam suatu profesi
(3) Melindungi para praktisi dari kesalahan praktik suatu profesi

II.                KODE ETIK PROFESI GURU IT

2.1  Kode Etik Profesi Guru Secara Umum
Untuk menjadi guru yang professional kita harus bisa menjadi seorang yang professional dalm menjalani tugas atau amanah yang di amanahkan. Untuk menjadi seseorang yang profesional, seseorang yang melakukan pekerjaan dituntut untuk memiliki beberapa sikap sebagai berikut :
1. Komitmen Tinggi
Seorang profesional harus mempunyai komitmen yang kuat pada pekerjaan yang sedang dilakukannya.
2. Tanggung Jawab
Seorang profesional harus bertanggung jawab penuh terhadap pekerjaan yang dilakukannya sendiri.
3. Berpikir Sistematis
Seorang yang profesional harus mampu berpikir sitematis tentang apa yang dilakukannya dan belajar dari pengalamannya.
4. Penguasaan Materi
Seorang profesional harus menguasai secara mendalam bahan / materi pekerjaan yang sedang dilakukannya.
5. Menjadi bagian masyarakat profesional
Seyogyanya seorang profesional harus menjadi bagian dari masyarakat dalam lingkungan profesinya.

Dalam menjadi seorang pengajar kita harus bisa mengikuti atau mematuhi kode etik seorang pengajar. Guru Indonesia yang berjiwa Pancasila dan setia kepada Undang-Undang dasar 1945, turut bertanggung jawab atas terwujudnya cita-cita Proklamasi Kemerdekaan Republik Indonesia 17 Agustus 1945. oleh sebab itu, guru Indonesia terpanggil untuk menunaikan karyanya dengan memedomani dasar-dasar sebagai berikut:

·         Guru berbakti membimbing peserta didik untuk membentuk manusia Indonesia seutuhnya yang berjiwa Pancasila.
·         Guru memiliki dan melaksanakan kejujuran profesional.
·         Guru berusaha memperoleh informasi tentang peserta didik sebagai bahan melakukan bimbingan dan pembinaan.
·         Guru menciptakan suasana sekolah sebaik-baiknya yang menunjang berhasilnya proses belajar mengajar.
·         Guru memelihara hubungan dengan orang tua murid dan masyarakat sekitarnya untuk membina peran serta dan rasa tanggung jawab bersama terhadap pendidikan.
·         Guru secara pribadi dan bersama-sama mengembangkan dan meningkatkan mutu dan martabat profesinya.
·         Guru memelihara hubungan seprofesinya, semangat kekeluargaan, dan kesetiakawanan sosial.
·         Guru secara bersama-sama memelihara dan meningkatkan mutu organisasi PGRI sebagai sarana perjuangan dan pengabdian.
·         Guru melaksanakan segala kebijakan pemerintah dalam bidang pendidikan.
2.2  Etika Seorang Guru IT di Bidang Akademisi
Seorang guru atau akademisi haruslah mengerti etika menjadi seorang guru. Di bawah ini disebutkan beberapa hal yang termasuk ke dalam etika seorang guru IT, antara lain :
1. Memiliki sikap (etika dan moral) dan Kesehatan serta Keselamatan Kerja (K3) dalam menggunakan perangkat Teknologi Informasi dan Komunikasi (TIK).
  1. Mengidentifikasi aturan-aturan yang berkaitan dengan etika dan moral terhadap perangkat lunak TIK.
  2. Mengidentifikasi syarat-syarat Kesehatan dan Keselamatan Kerja (K3) dalam menggunakan perangkat TIK.
  3. Memahami ketentuan penggunaan TIK
  4. Menerapkan aturan yang berkaitan dengan etika dan moral terhadap perangkat keras dan perangkat lunak TIK
  5. Menerapkan prinsip-prinsip Kesehatan dan Keselamatan Kerja (K3) dalam menggunakan perangkat keras dan perangkat lunak TIK.
2. Menguasai konsep dasar perangkat keras dan perangkat lunak.
  1. Mengidentifikasi perkembangan perangkat keras dan lunak.
  2. Mengidentifikasi alat input, alat pemroses dan alat output dari komputer.
  3. Mampu memasang/mengganti komponen Personal Computer (PC): hardisk, memori, soundcard, dll.
  4. Mengidentifikasi sistem operasi dari komputer.
  5. Melakukan operasi dasar komputer dengan menggunakan salah satu sistem operasi.
  6. Melakukan manajemen file.
  7. Melakukan setting periferal.
  8. Mengidentifikasi aplikasi perangkat lunak.
3. Menguasai program pengolah kata.
  1. Mengidentifikasi anatomi dan fungsi perangkat lunak pengolah kata.
  2. Membuat dokumen baru dengan menggunakan program pengolah kata.
  3. Mampu mengedit, mengelola dan mencetak dokumen.
  4. Menggunakan menu dan ikon yang terdapat dalam perangkat lunak pengolah kata.
  5. Membuat dokumen dengan melibatkan tabel, gambar, dan diagram.
  6. Membuat Object Linking and Embedding
  7. Membuat karya-karya menggunakan program pengolah kata
4. Menguasai program lembar kerja atau spread sheet.
  1. Mengidentifikasi perangkat lunak lembar kerja beserta fungsi ikon dan menunya
  2. Membuat lembar kerja dengan menggunakan program lembar kerja
  3. Mampu mengedit, mengelola dan mencetak lembar kerja
  4. Membuat lembar kerja dengan melibatkan formula, grafik, dan gambar
  5. Menggabungkan karya lembar kerja dengan dokumen program pengolah kata
  6. Mampu menggunakan menu dan ikon yang terdapat dalam perangkat lunak pengolah angka
  7. Mampu menganalisis pengambilan keputusan dengan perangkat lunak lembar kerja.
5. Menguasai program pengolah presentasi.
  1. Mengidentifikasi anatomi dan fungsi perangkat lunak presentasi.
  2. Menggunakan menu dan ikon yang terdapat dalam perangkat lunak pembuat presentasi.
  3. Membuat bahan presentasi.
  4. Mampu mengedit, mengelola dan mencetak dokumen presentasi
  5. Membuat animasi dalam presentasi.
  6. Mampu memperindah presentasi.
  7. Membuat karya menggunakan program presentasi
6. Menguasai program pengolah database.
  1. Mengidentifikasi prinsip dasar database.
  2. Mengidentifikasi pemeliharaan database.
  3. Mengidentifikasi tabel yang meliputi perancangan, Properties, View dan Wizard.
  4. Mengidentifikasi Form yang meliputi perancangan, Properties dan Wizard.
  5. Mengidentifikasi queri yang meliputi perancangan, operator, parameter dan fungsi yang terdapat dalam queri.
  6. Mengidentifikasi Report yang meliputi perancangan dan modifikasi.
  7. Membuat karya menggunakan program untuk membuat database.
7. Menggunakan internet untuk keperluan informasi dan komunikasi.
  1. Mengenal perangkat keras dan fungsinya untuk keperluan akses internet.
  2. Mengidentifikasi web browser.
  3. Memahami perintah dasar web browser.
  4. Memahami penamaan alamat internet (URL), alamat surat (e-mail) dan aturan penulisan alamat di internet.
  5. Membuat surat elektronik (e-mail).
  6. Membuat Mailing List.
  7. Menggunakan internet untuk memperoleh dan mencari informasi.
  8. Menggunakan internet untuk berkomunikasi langsung.
Produktif (Keahlian)
1. Kompetensi Keahlian Multimedia (Menggunakan paket-paket program grafis dan multimedia).
  1. Mengidentifikasi anatomi program membuat grafis
  2. Menggunakan menu dan ikon yang terdapat dalam perangkat lunak pembuat grafis.
  3. Membuat grafis dengan berbagai variasi warna, bentuk, dan ukuran.
  4. Melakukan entry data (grafis) dengan menggunakan image scanner.
  5. Mengoperasikan software pengolah gambar vektor (digital illustration) dan gambar raster (digital imaging).
  6. Mengoperasikan periferal web.
  7. Melakukan entry data (web) dengan menggunakan image scanner.
  8. Mengoperasikan software web design, 2D animation dan FTP.
  9. Mengoperasikan periferal multimedia presentasi
  10. Melakukan entry data (multimedia) dengan menggunakan image scanner.
  11. Mengoperasikan software multimedia dan presentasi.
  12. Mengoperasikan periferal animasi 3D
  13. Mengoperasikan animasi 3 dimensi.
  14. Mengoperasikan perangkat lunak multimedia.
  15. Mengoperasikan periferal perekam suara.
  16. Mengoperasikan periferal perekam gambar.
  17. Mengoperasikan perangkat lunak penyunting audio.
  18. Mengoperasikan perangkat lunak penyunting video.
  19. Mengoperasikan perangkat lunak efek visual.
  20. Menguasai image video and audio acquisition.
  21. Mengedit dan memanipulasi image, video, dan audio.
  22. Menerapkan program grafis dan multimedia untuk presentasi grafis.
2. Kompetensi Keahlian RPL (Mengenal bahasa pemrograman dan Rekayasa Perangkat Lunak).
Indikator:
  1. Mengidentifikasi diagram alur dan algoritma pemrograman.
  2. Mengidentifikasi perintah dasar dan menu suatu bahasa pemrograman.
  3. Mengidentifikasi Tipe, Nama dan Nilai
  4. Mengidentifikasi runtunan.
  5. Membuat program dengan pemilihan.
  6. Membuat program dengan perulangan.
  7. Membuat program dengan prosedur/fungsi.
  8. Membuat program dengan larik.
  9. Menyiapkan dan melakukan survey untuk menentukan kebutuhan data.
  10. Mengoperasikan software bahasa pemograman level 1.
  11. Konversi data level 1.
  12. Menguji program level 1.
  13. Mengoperasikan sistem operasi jaringan komputer berbasis teks.
  14. Melakukan perancangan pengumpulan data
  15. Melakukan desain dan perancangan software.
  16. Melakukan pengkodean program.
  17. Melakukan back up basis data.
  18. Melakukan restore basis data.
  19. Mengoperasikan software aplikasi basis data.
  20. Membuat query data.
  21. Menguji dan memperbaiki kesalahan program.
  22. Membangun interface dengan bahasa pemograman berorientasi objek.
  23. Mengoperasikan bahasa pemograman berbasis web.
  24. Membangun program aplikasi remote data interaktif.
3. Kompetensi Keahlian TKJ (Menggunakan jaringan lokal (LAN) dan non lokal (WAN) untuk keperluan informasi dan komunikasi).
Indikator:
  1. Memahami prinsip-prinsip komunikasi data.
  2. Mengenal dan memahami piranti jaringan.
  3. Memahami topologi dan hirarki jaringan.
  4. Memahami multi user acces.
  5. Memahami media transmisi (kabel dan nirkabel)
  6. Mengoperasikan PC dalam suatu jaringan.
  7. Menginstalasi PC.
  8. Mendiagnosis permasalahan pengoperasian PC dan periferal.
  9. Melakukan perbaikan dan/atau setting ulang sistem PC.
  10. Melakukan perbaikan peripheral.
  11. Melakukan perawatan PC.
  12. Melakukan perawatan peripheral.
  13. Menginstalasi sistem operasi berbasis GUI (Graphical User Interface).
  14. Menginstalasi sistem operasi berbasis text.
  15. Menginstalasi software.
  16. Mem-Back-Up dan Me-Restore software
  17. Menginstalasi perangkat jaringan lokal (Local Area Network).
  18. Mendiagnosis permasalahan pengoperasian PC yang tersambung jaringan.
  19. Melakukan perbaikan dan/atau setting ulang koneksi jaringan.
  20. Menginstalasi sistem operasi jaringan berbasis GUI (Graphical User Interface).
  21. Menginstalasi sistem operasi jaringan berbasis text.
  22. Menginstalasi perangkat jaringan berbasis luas (Wide Area Network).
  23. Mendiagnosis permasalahan perangkat yang tersambung jaringan berbasis luas (Wide Area Network).
  24. Melakukan perbaikan dan/atau setting ulang.
  25. Memilih aplikasi untuk server.  
  26. Dan masih banyak lagi kompetensi - kompetensi yang harus kita kuasai. Untuk mencapai itu perlu ketekunan dalam berlatih, melatih skil pengendalian komputer dan jg tetap menaati kode etik yang ada
2.3  Fungsi Kode Etik Bagi Guru
Seorang IT dalam bidang akademisi tidak lain adalah seorang guru. Pada penjelasan di atas, telah dipaparkan apa saja kode etik seorang guru. Pada paparan ini akan dijelaskan fungsi kode etik bagi seorang guru. Sutan Zahri dan Syahmiar Syahrun (1992) mengemukakan empat fungsi kode etik guru bagi guru itu sendiri, antara lain :
1.      Agar guru terhindar dari penyimpangan tugas yang menjadi tanggung jawabnya.
2.      Untuk mengatur hubungan guru dengan murid, teman sekerja, masyarakat dan pemerintah.
3.      Sebagai pegangan dan pedoman tingkah laku guru agar lebih bertanggung jawab pada profesinya
4.      Pemberi arah dan petunjuk yang benar kepada mereka yang menggunakan profesinya dalam melaksanakan tugas.

Kode etik guru sesungguhnya merupakan pedoman yang mengatur hubungan guru dengan teman kerja, murid dan wali murid, pimpinan dan masyarakat serta dengan misi tugasnya. Menurut Oteng Sutisna (1986 : 364) bahwa pentingnya kode etik guru dengan teman kerjanya difungsikan sebagai penghubung serta saling mendukung dalam bidang mensukseskan misi dalam mendidik peserta didik.
Etika hubungan guru dengan peserta didik menuntut terciptanya hubungan berupa helping relationship (Brammer, 1979), yaitu hubungan yang bersifat membantu dengan mengupayakan terjadinya iklim belajar yang kondusif bagi perkembangan peserta didik. Dengan ditandai adanya perilaku4 empati,penerimaan4dan penghargaan, kehangatan dan perhatian, keterbukaan dan ketulusan serta kejelasan ekspresi seorang guru.
Seorang guru apabila ingin menjadi guru yang professional harusnya mendalami serta memiliki etika diatas tersebut.
Etika Hubungan garis dengan pimpinan di sekolah menuntut adanya kepercayaan. Bahwa guru percaya kepada pimpinan dalam memberi tugas dapat dan sesuai dengan kemampuan serta guru percaya setiap apa yang telah dikerjakan mendapatkan imbalan dan sebaliknya bahwa pimpinan harus yakin bahwa tugas yang telah diberikan telah dapat untuk dilaksanakan.
Guru sangat perlu memelihara hubungan baik dengan masyarakat untuk kepentingan pendidikan. Guru juga harus menghayati apa saja yang menjadi tanggung jawab tugasnya

III.             PENERAPAN KODE ETIK PROFESI SEBAGAI GURU IT

3.1  Penerapan Kode Etik Guru
Sebagai seorang guru haruslah memiliki kewajiban untuk membimbing anak didik seutuhnya dengan tujuan membentuk manusia pembangunan yang pancasila.  Inilah bunyi kode etik guru yang perrtama dengan istilah “bebakti membimbing” yang artinya mengabdi tanpa pamrih dan tidak pandang bulu dengan membantu (tanpa paksaan, manusiawi). Istilah seutuhnya lahir batin, secara fisik dan psikis. Jadi guru harus berupaya dalam membentuk manusia pembangunan pancasila harus seutuhnya tanpa pamrih. Seorang guru IT juga harus menguasai materi sesuai dengan bidang keilmuannya. Maka jika menjadi seorang guru IT haruslah memenuhi standar kemampuan seorang guru IT. Sehingga harus berkompeten. Tak hanya berkompeten, seorang guru yang mampu menyampaikan materi atau pelajaran kepada siswanya juga dibutuhkan.
3.2  Problem yang Muncul Jika Kode Etik Tidak Diterapkan
Jika seseorang tidak mampu menjalankan kode etiknya, maka akan timbul permasalahan. Salah satu permasalahan yang akan muncul adalah berkurangnya tingkat kepercayaan kepada orang tersebut. Jika seorang guru IT tidak mampu menjalankan tugasnya dan melanggar kode etiknya, maka orang lain akan memandang rendah terhadapnya. Keberhasilan sebagai orang IT adalah ketika kehadirannya dapat menumbuhkan kesadaran bahwa IT penting dan orang lain mulai mengerti dimana pentingnya.
3.3  Cara Untuk Menjadi Seorang Guru IT yang Baik
Kode etik profesi bukan hanya sekedar embel-embel yang melekat pada profesi seseorang. Akan tetapi, kode etik tersebut harus dihayati dan dipahami dengan benar-benar. Sehingga bisa melekat dan menjadi patokan dasar dalam menempuh suatu profesi yang dijalani oleh seseorang. Sebagai seorang guru, telah tertera dengan jelas apa saja kode etik profesi guru. Dalam paper ini dijelaskan lebih mendalam mengenai etika profesi seorang guru IT, maka seorang guru IT haruslah mematuhi kode etiknya. Jangan menjadikan kode etik sebagai hal yang tidak penting. Bukan hanya kode etik yang harus dicamkan dalam menjalani profesi sebagai seorang guru, akan tetapi juga etika. Etika seorang guru IT juga telah dipaparkan dengan jelas di atas. Maka harus dimulai dari pribadi diri masing-masing, mulailah dengan menata diri agar menjadi seorang guru yang professional. Apalagi, seorang guru juga merupakan orang tua para siswa di sekolah, sehingga juga perlu memperhatikan anak didiknya. Perlu diingat, keberhasilan seorang bukan diukur seberapa suksesnya dari seberapa besar materi yang didapatkan. Tetapi lebih dari itu, yaitu seberapa banyak dan bermaknanya sesuatu yang dapat kita berikan kepada orang lain di sekitar kita. Sehingga dapat juga dikatakan, jika menjadi seorang guru IT, maka dapat diukur dari seberapa bermaknanya dan pentingnya kehadiran seorang guru IT di depan para siswa.

IV.             ANALISIS DAN KESIMPULAN
Dari paper ini dapat disimpulkan beberapa hal mengenai etika profesi dalam bidang akademisi. Etika profesi merupakan rumusan norma moral manusia yang mengemban profesi itu. Sebagai seorang guru IT harus menghayati dan menerapkan dengan benar kode etik profesinya. Etika hubungan guru dengan peserta didik menuntut terciptanya hubungan berupa helping relationship, yaitu hubungan yang bersifat membantu dengan mengupayakan terjadinya iklim belajar yang kondusif bagi perkembangan peserta didik. Sehingga dengan kehadiran seorang guru IT, para peserta didik dapat menyerap materi yang disampaikan oleh seorang guru khususnya dalam keilmuan IT. Apalagi, mengingat kemajuan teknologi yang berkembang dengan pesat saat ini, maka sebagai seorang guru IT jangan sampai ketinggalan informasi mengenai keilmuaannya. Dalam menjalan suatu profesi, janganlah mengejar materi. Jalani suatu profesi itu dengan baik dan berikan yang terbaik bagi orang di sekeliling anda. Inilah ukuran keberhasilan yang sebenarnya dalam menjalani suatu profesi.



DAFTAR PUSTAKA

Wahyono, Teguh, S. Kom. 2009. Etika Komputer + Tanggung Jawab Profesional di Bidang Teknologi Informasi. Yogyakarta : ANDI