Minggu, 12 Februari 2012

ETIKA PROFESI PROGRAMER

Nama : Moch Hasby Sadam Al Kindi
NIM : SIR 200922
MK : Etika Profesi
Dosen : Erfan Rusdi, M. Kom

ETIKA PROFESI PROGRAMER

Kode Etik Programmer

Pemrograman komputer membutuhkan sebuah kode etik, dan kebanyakan dari kode-kode etik inidisadur berdasarkan kode etik yang kini digunakan oleh perkumpulan programmer internasional.Kode etik seorang programmer adalah sebagai berikut :

-Seorang programmer tidak boleh membuat atau mendistribusikan Malware.

-Seorang programmer tidak boleh menulis kode yang sulit diikuti dengan sengaja.

-Seorang programmer tidak boleh menulis dokumentasi yang dengan sengaja untuk membingungkan atau tidak akurat.

-Seorang programmer tidak boleh menggunakan ulang kode dengan hak cipta kecuali telahmembeli atau telah meminta izin.

-Tidak boleh mencari keuntungan tambahan dari proyek yang didanai oleh pihak kedua tanpaizin.

Tidak boleh mencuri software khususnya development tools.

-Tidak boleh menerima dana tambahan dari berbagai pihak eksternal dalam suatu proyek secara bersamaan kecuali mendapatkan izin.

-Tidak boleh menulis kode yang dengan sengaja menjatuhkan kode programmer lain untuk mengambil keuntungan dalam menaikkan status.

-Tidak boleh membeberkan data-data penting karyawan dalam perusahaan.

-Tidak boleh memberitahu masalah keuangan pada pekerja dalam pengembangan suatu proyek.

-Tidak pernah mengambil keuntungan dari pekerjaan orang lain.

-Tidak boleh mempermalukan profesinya.

-Tidak boleh secara asal-asalan menyangkal adanya bug dalam aplikasi.

-Tidak boleh mengenalkan bug yang ada di dalam software yang nantinya programmer akanmendapatkan keuntungan dalam membetulkan bug.

Terus mengikuti pada perkembangan ilmu komputer. Pada umumnya, programmer harusmematuhi ³Golden Rule´: Memperlakukan orang lain sebagaimana kamu ingin diperlakukan.Jika semua programmer mematuhi peraturan ini, maka tidak akan ada masalah dalam komunitas.

Faktor yang Mempengaruhi Kualitas Produk dan Produktivitas Programmer

1. Komunikasi team :

-Meningkatnya ukuran produk yang dihasilkan akan menurunkan produktivitas programmer akibat meningkatnya kerumitan antara komponen-komponen program dan akibat meningkatnyakomunikasi yang perlu dilakukan antara programmer, manajer,dan pelanggan.

2. Kerumitan produk

-Tiga level kerumitan produk : program aplikasi, program utility, program level sistem.

3.Kendali perubahan

- perubahan terhadap produk harus tetap meminta persetujuan manajer sebagai penanggung jawab proyek. Dampak perubahan harus dapat ditelusuri, diuji, dan didokumentasikan.

4.Tingkat keandalan

Setiap produk harus mempunyai keandalan standar. Peningkatan keandalan dihasilkan melalui

perhatian yang sangat besar pada tahap analisa. Peningkatan keandalan akan menurunkan produktivitas.

5. Pemahaman permasalahan

Pelanggan adalah penyumbang utama terhadap kegagalan dalam memahami masalah adalah :

-Tidak memahami permasalahan perusahaannya,

-mengerti kemampuan dan keterbatasan komputer,

-Tidak mempunyai pengetahuan dasar tentang logika dan algoritma.


-Software engineer tidak memahami lapangan aplikasi, gagal mendapatkan informasi kebutuhan pelanggan karena pelanggan bukan seorang end user.

6. Persyaratan keterampilan

Berbagai keterampilan harus ada dalam sebuah proyek perangkat lunak,misalnya:

-Keterampilan berkomunikasi dengan pelanggan untuk memastikan keinginannya dengansejelas-jelasnya.

-Kemampuan dalam pendefinisian masalah dan perancangan.

-Kemampuan implementasi dengan penulisan program yang benar.

-Kemampuan debugging secara deduktif dengan kerangka ³what if ´.

-Dokumentasi.

-Kemampuan bekerja dengan pelanggan.

-Semua keterampilan tersebut harus senantiasa dilatih.

7. Fasilitas dan sumber daya

-Fasilitas non teknis yang tetap perlu diperhatikan yang berkaitan dengan motivasi programmer misalnya : mesin yang baik, serta tempat yang tenang, atau ruang kerjanya dapat ditata secara pribadi.


8.Pelatihan yang cukup

Banyak programmer yang dilati dalam bidang-bidang : ilmu komputer, teknik elektro, akuntansi,matematika, tetapi jarang yang mendapat pelatihan dalam bidang teknik perangkat lunak.

Keterampilan yang Harus Dimiliki Seorang Programmer

-Membaca kode sumber sebuah program, dari yang sederhana hingga relatif kompleks, adalahketerampilan yang harus dimiliki oleh seorang programmer.

-Implementasi sebuah algoritma yang memodifikasi sebentuk struktur data dalam sebuah program dapat kita adaptasikan ke dalam program yang kita buat sendiri dengan konteks danstruktur data yang sama sekali berbeda

-Implementasi sebuah algoritma yang memodifikasi sebentuk struktur data dalam sebuah program dapat kita adaptasikan ke dalam program yang kita buat sendiri dengan konteks danstruktur data yang sama sekali berbeda

Kewajiban Programmer

-Memahami konsep dasar sistem operasi. Kebanyakan dari programmer Indonesia biasanyamembuat aplikasi di atas sistem operasi, sehingga banyak yang berpendapat bahwa tidak perlumemahami cara kerja sistem operasi

-Memahami konsep dasar jaringan. Sebuah aplikasi tidak dapat berjalan sendiri. Aplikasitersebut pasti harus berhubungan dengan internet, melayani banyak pengguna. Memahami konsep dasar relational database. Setiap aplikasi pasti memiliki sebuah databasedalam penyimpanan datanya untuk itu programmer khususnya Database Programmer ditekankanmenguasai relational database

-Karena sekarang jaman internet, maka wajib memahami protokol HTTP, FTP, POP3, SMTP,SSH. Protokol HTTP sekarang adalah protokol yang paling banyak digunakan di internet.

-Karena sekarang jaman globalisasi, maka wajib memahami Unicode. Unicode itu pentingsupaya aplikasi kita tetap bisa diinstal di komputer mana saja.

-Lebih dari satu bahasa pemrograman. Pemahaman lebih dari satu bahasa itu penting agar wawasan programmer lebih terbuka. Bahwa tidak ada bahasa yang one-fit-all

-Cara menggunakan Version Control. Dalam dunia kerja, penggunaan version control adalahwajib. Ini standar (de facto) internasional. Jika mempunyai project opensource, baik diSourceforge, Apache, Codehaus, dan semua hosting project opensource, pasti programmer akandiberikan version control.

Sikap Programmer Terhadap Klien

-Mempunyai sikap & kepribadian baik, komunikatif, mudah beradaptasi dengan lingkungankerja, cekatan & fleksibel.

-Mampu bekerja berorientasi jadwal, mengatur pekerjaan multiple project dan bekerja samadalam team.

-Membuat kontrak kerja dengan klien.

-Menyukai dan mengerti dasar-dasar pemrograman.

»»  READMORE... : both;'/>