Senin, 29 April 2013

Cocomo dan Implementasi Cocomo





Sejarah dan Pengertian Cocomo

COCOMO atau Constructive Cost Model adalah model algoritma estimasi biaya perangkat lunak yang dikembangkan oleh Barry Boehm pada tahun 1981. Model ini menggunakan dasar regresi formula, dengan parameter yang berasal dari data historis dan karakteristik proyek-proyek saat ini.
Pada tahun 1981, Barry Boehm mendesain COCOMO untuk memberikan estimasi jumlah Person-Months untuk mengembangkan suatu produk software. Referensi pada model ini dikenal dengan nama COCOMO 81. Pada tahun 1990, muncul suatu model estimasi baru yang disebut dengan COCOMO II. Secara umum referensi COCOMO sebelum 1995 merujuk pada original COCOMO model yaitu COCOMO 81, kemudian setelah itu merujuk pada COCOMO II.
Model estimasi COCOMO telah digunakan oleh ribuan project manager suatu proyek perangkat lunak, dan berdasarkan pengalaman dari ratusan proyek sebelumnya. Tidak seperti model estimasi biaya yang lain, COCOMO adalah model terbuka, sehingga semua detail dipublikasikan, termasuk :
-          Dasar persamaan perkiraan biaya.
-          Setiap asumsi yang dibuat dalam model.
-          Setiap definisi.
-          Biaya yang disertakan dalam perkiraan dinyatakan secara eksplisit
Perhitungan paling fundamental dalam COCOMO model adalah penggunaan Effort Equation(Persamaan Usaha) untuk mengestimasi jumlah dari Person-Months yang dibutuhkan untuk pengembangan proyek. Sebagian besar dari hasil-hasil lain COCOMO, termasuk estimasi untukRequirement dan Maintenance berasal dari persamaan tersebut.

Model Cocomo
Model COCOMO dapat diaplikasikan dalam tiga tingkatan kelas:

1. Proyek organik, adalah proyek dengan ukuran relatif kecil, dengan anggota tim yang sudah berpengalaman, dan mampu bekerja pada permintaan yang relatif fleksibel.

2. Proyek sedang (semi-terpisah), adalah proyek yang memiliki ukuran dan tingkat kerumitan yang sedang, dan tiap anggota tim memiliki tingkat keahlian yang berbeda.

3. Proyek terintegrasi, adalah proyek yang dibangun dengan spesifikasi dan operasi yang ketat.
Pengenalan Cocomo ini diawali tahun 70-an akhir. Sang pelopor Boehm, melakukan riset dengan mengambil kasus dari 63 proyek perangkat lunak untuk membuat model matematisnya.Model dasar dari model ini adalah persamaan:
effort = C x sizeM
Dikenal sebagai Constructive Cost Model (COCOMO), model konstruksi biaya.
Dimana :
C dan M adalah koefisien konstanta ( > 1 ), targantung pada tipe proyek dan organisasi, dengan cara melihat Tabel Konstanta (sudah tersedia dari penelitian).
Ditentukan pula oleh: application experience, leadership capability, new environment and tools, requirements uncertainty, software reuse.

Model COCOMO dasar ditunjukkan dalam persamaan 1, 2, dan 3 berikut ini:     
                                                                                   (1, 2, 3)
Dimana :
E          :  besarnya usaha (orang-bulan)
D         :  lama waktu pengerjaan (bulan)
KLOC  :  estimasi jumlah baris kode (ribuan)
P           :  jumlah orang yang diperlukan.  

Sedangkan koefisien  ab, bb, cb, dan db diberikan pada Tabel 1  berikut: 
Tabel 1 .  Koefisien Model COCOMO Dasar  
  


Implementasi Cocomo
1. Basic COCOMO (COCOMO I 1981)
Menghitung dari estimasi jumlah LOC (Lines of Code). Pengenalan COCOMO ini diawali di akhir tahun 70-an. Sang pelopor, Boehm, melakukan riset dengan mengambil kasus dari 63 proyek perangkat lunak untuk membuat model matematisnya. Model dasar dari model ini adalah sebuah persamaan sebagai berikut :
effort = C * size^M
ket: :
effort = usaha yang dibutuhkan selama proyek, diukur dalam person-months;
c dan M = konstanta-konstanta yang dihasilkan dalam riset Boehm dan tergantung pada penggolongan besarnya proyek perangkat lunak
size = estimasi jumlah baris kode yang dibutuhkan untuk implementasi, dalam satuan KLOC (kilo lines of code).

COCOMO berlaku untuk tiga kelas proyek perangkat lunak:
-          Organik proyek : “kecil” tim dengan pengalaman “baik” bekerja dengan “kurang dari kaku” persyaratan.
-          Semi-terpisah proyek : “sedang” tim dengan pengalaman bekerja dicampur dengan campuran persyaratan kaku kaku dan kurang dari.
-          Embedded proyek : dikembangkan dalam satu set “ketat” kendala (hardware, software, operasional).

2. Intermediate COCOMO (COCOMO II 1999)
Menghitung dari besarnya program dan cost drivers (faktor-faktor yang berpengaruh langsung kepada proyek), seperti: perangkat keras, personal, dan atribut-atribut proyek lainnya. Selain itu pada jenis ini, COCOMO mempergunakan data-data historis dari proyek-proyek yang pernah menggunakan COCOMO I, dan terdaftar pengelolaan proyeknya dalam COCOMO database. yang dijabarkan dalam kategori dan sub-kategori sebagai berikut :
a.       Atribut produk (product attributes) :
1.      Reliabilitas perangkat lunak yang diperlukan (RELY)
2.      Ukuran basis data aplikasi (DATA)
3.      Kompleksitas produk (CPLX)
b. Atribut perangkat keras (computer attributes)
1.      Waktu eksekusi program ketika dijalankan (TIME)
2.      Memori yang dipakai (STOR)
3.      Kecepatan mesin virtual (VIRT)
4.      Waktu yang diperlukan untuk mengeksekusi perintah (TURN)
c.    Atribut sumber daya manusia (personnel attributes)
1.        Kemampuan analisis (ACAP)
2.        Kemampuan ahli perangkat lunak (PCAP)
3.        Pengalaman membuat aplikasi (AEXP)
4.        Pengalaman penggunaan mesin virtual (VEXP)
5.        Pengalaman dalam menggunakan bahasa pemrograman (LEXP)
d. Atribut proyek (project attributes)
1. Penggunaan sistem pemrograman modern(MODP)
2. Penggunaan perangkat lunak (TOOL)
3. Jadwal pengembangan yang diperlukan (SCED)


COCOMO II EFFORT EQUATION
Model COCOMO II ini membuat estimasi dari usaha yang dibutuhkan (diukur dari Person-Month) berdasarkan keutamaan dalam estimasi anda akan ukuran proyek perangkat lunak (yang diukur dalam ribuan SLOC atau KSLOC) :
Effort = 2,94 * EAF * (KSLOC)E
ket:
EAF = Effort Adjustment Factor yang berasal dari Cost Drivers adalah produk dari effort multipliersyang terhubung pada masing-masing cost drivers untuk proyek.
E = Eksponen yang berasal dari Scale Drivers.

COCOMO II SCHEDULE EQUATION
COCOMO II Schedule Equation memprediksi jumlah bulan yang dibutuhkan untuk menyelesaikan proyek perangkat lunak anda. Durasi dari proyek berdasarkan pada usaha yang diprediksi oleh effort equation :
Duration = 3,67 * (Effort)SE
Dimana :
Effort = usaha dari COCOMO II effort equation.
SE = eksponen scheduled equation yang berasal dari Scale Drivers.
COCOMO II memiliki 3 model berbeda, yakni:
a.       The Application Composition Model
Sesuai untuk pembangunan proyek dengan tools GUI-builder yang modern. Berdasar pada Object Points baru.
b.      The Early Design Model
Model ini dapat digunakan untuk mendapat estimasi kasar biaya dan durasi dari suatu proyek sebelum menentukan arsitektur keseluruhan proyek tersebut. Model ini menggunakan sekumpulan kecil cost driver baru dan persamaan estimasi baru. Berdasar pada Unadjusted Function Points atau KSLOC.
c.       The Post-Architecture Model
Ini adalah model COCOMO II yang paling detail. Digunakannya setelah membentuk arsitektur proyek secara menyeluruh. Model ini memiliki cost driver baru, aturan penghitungan baris yang baru, dan persamaan baru.

3. Advance COCOMO
Memperhitungkan semua karakteristik dari intermediate di atas dan cost drivers dari setiap fase (analisis, desain, implementasi, dsb) dalam siklus hidup pengembangan perangkat lunak. Model rinci kegunaan yang berbeda upaya pengali untuk setiap driver biaya atribut tersebut. Sensitif pengganda tahap upaya masing-masing untuk menentukan jumlah usaha yang dibutuhkan untuk menyelesaikan setiap tahap.
Pada COCOMO rinci, upaya dihitung sebagai fungsi dari ukuran program dan satu set driver biaya yang diberikan sesuai dengan tiap tahap siklus hidup rekayasa perangkat lunak. Fase yang digunakan dalam COCOMO rinci perencanaan kebutuhan dan perancangan perangkat lunak, perancangan detil, kode dan menguji unit, dan pengujian integrasi.

Referensi:

Minggu, 28 April 2013

Keuntungan dan Kerugian Menggunakan Software Open Source Dalam Membuat Aplikasi



   Open source software adalah istilah yang digunakan untuk software yang membuka/membebaskan source codenya untuk dilihat oleh orang lain dan membiarkan orang lain mengetahui cara kerja software tersebut dan sekaligus memperbaiki kelemahan-kelemahan yang ada pada software tersebut. Keberadaan open source software ini sangat ditunjang oleh internet. Mula-mula Open source software diambil dari internet kemudian digunakan oleh orang dan diperbaiki apabila ada kesalahan. Hasil perbaikan dari open source ini kemudian dipublikasikan kembali melalui internet yang memungkinkan orang lain menggunakan dan memperbaikinya. Dan begitulah seterusnya. Saat ini sangat mudah mendapatkan open source software di internet. Pengembangan open source software melibatkan banyak orang dari berbagai penjuru dunia yang berinteraksi melalui internet. Maka bermunculanlah berbagai macam software yang dibuat berbasis open source ini yang dipublikasikan melalui internet. Pola open source ini telah melahirkan developer-developer handal dari berbagai penjuru dunia.

Sejarah Open Source

     “open source” pertama kali muncul pada sebuah rapat di Palo Alto California. Ketika itu, Netscape yang merupakan pengembang browser Navigator ingin melepaskan kode sumber dari produk dengan nama Mozilla di bulan Januari 1998. Mereka ingin membedakan diri dan menghindari konfrontasi ideologis maupun konotatif dengan istilah Free Software yang dipelopori oleh Richard Stallman. Para penggagas istilah open source adalah : Christine Peterson, Todd Anderson, Larry Augustin, Jon Hall, Sam Ockman, and Eric S. Raymond.
Istilah “open source” ini kemudian menjadi terkenal setelah dipublikasikan oleh tim O’Reilly melalui sebuah event yang diadakan di bulan April 1999. Event ini dihadiri oleh para selebritis IT yang terlibat dalam project-project free open source, seperti Linus Torvallds (penemu Linux), Larry Wall, Brian Behlendorf, Eric, Allman, Guido van Rossum (pembuat python), Michael Tieman, Paul Vixie, Jamie Zawinski dari Netscape, dan Eric Raymond.
Untuk menjaga perkembangan dunia open source, dibentuklah sebuah badan yang disebut Open Source Initiative. Badan ini didirikan tahu 1998 oleh Eric S. Raymond dan Bruce Perens.

Keuntungan dan Kerugian Open Source 

Motivasi dari penggunaan dan pengembangan open source software beraneka ragam, mulai dari filosofi dan alasan etika sampai pada masalah praktis. Biasanya, keuntungan yang dirasa pertama dari model open source adalah fakta bahwa ketersediaan open source diciptakan secara gratis atau dengan biaya yang rendah.

Keuntungan Open Source 

Sisi pengguna:
-       Gratis
-       Pengguna dapat terlibat dalam pengembangan program karena memiliki source code nya
-       Respon yang baik dari pemakai sehingga bug dapat ditemukan dan diperbaiki dengan lebih cepat.

Sisi developer:
-       Seluruh komunitas mau dan dapat membantu untuk membuat software menjadi lebih baik 
-       Tidak ada biaya iklan dan perawatan program
-       Sebagai sarana untuk memperkenalkan konsep

Keuntungan lainnya:
1.       Legal : Dengan adanya open source software, dapat mengurangi tingkat pembajakkan yang ada di indonesia.
2.       Penyelamatan Devisa negara
Dengan menggunakan solusi berbasis Open Source, maka dapat dilakukan penghematan devisa negara secara signifikan. Kemudian dana tersebut dapat dialokasikan ke usaha-usaha untuk kesejahteraan rakyat.
3.       Keamanan Negara / Perusahaan
Software Open Source bebas dari bahaya ledakan yang disebabkan oleh software komputer proprietary / tertutup, karena bisa dilakukan audit terhadap kode programnya.
4.       Keamanan Sistem
Pada software proprietary / tertutup, sangat sulit untuk dapat benar-benar yakin dengan keamanannya, karena kita tidak dapat mengetahui apa yang ada di dalamnya. Selain itu, sangat sulit untuk mendapatkan solusinya
5.     Ketersediaan/kestabilan
Open source software sangat dikenal dengan kestabilan dan ketersediannya(tidak mudah hang atau minta restart).
6.     Standar terbuka dn tidak bergantung pada vendor
7.     Mengurangi ketergantungan impor
biaya dalam model open source yang lebih berorientasi jasa ini normalnya hanya dikeluarkan untuk bisnis dalam negeri, tidak harus menggunakan perusahaan multinasional. Ini berdampak positif terhadap masalah tenaga kerja, investasi dalam negeri, pemasukan dari pajak, dan lain-lain.
8.     Pengembangan perangkat lunak lokalAda korelasi positif antara pertumbuhan pengembang FOSS dengan kemampuan inovasi dalam sistem ekonomi.
9.     Pembajakan. HAKI, dan WTO
Pembajakan software dan lemahnya hukum dapat merugikan suatu negara dalam banyak hal. Sebuah negara yang perlindungannya terhadap HaKI (Hak atas Kekayaan Intelektual) rendah menjadi tidak menarik bagi investor asing. Keanggotaan dalam organisasi perdagangan dunia atau WTO (World Trade Organization) dan manfaat yang didapatkan dari keanggotaan itu juga ditentukan oleh tingkat penghargaan suatu negara terhadap HaKI.
10.  Bahasa dan budaya lokal

Kerugian Open Source

Pengembangan software berbasiskan open source selain memberikan beberapa buah keuntungan sebagaimana yang telah disebutkan di bagian terdahulu , softwate open source juga mempunyai kerugian :
-       Dengan banyaknya orang yang terlibat dalam pembuatan proyek software tidak menjamin bahwa proyek akan selesai dengan lebih cepat. Ada kemungkinan proyek bahkan tidak dapat terlaksana. Hal ini disebabkan dengan semakin banyaknya orang maka perbedaan akan sering terjadi, oleh karena itu diperlukan seorang pemimpin yang mampu bekerja sama dengan rekan-rekannya yang lain untuk membuat suatu arahan yang jelas tentang proyek.
-       Menurut Alan Cox dalam papernya “Cathedrals, Bazaars and the Town Council” [Ala98], permasalahan akan muncul ketika tibanya banyak orang yang tidak paham dan mereka mulai mengemukakan opininya, bukan memberikan kodenya. Mereka berdebat tentang hal-hal yang tidak berguna. Hal ini tentu saja akan sangat merugikan karena perdebatan tersebut tidak akan menghasilkan apa-apa.
-       Konflik di antara para pengembang. Terkadang dalam model open source sebagaimana juga terjadi dalam model pengembangan ilmiah, terjadi konflik antara para pengembang. Hal ini dapat terjadi bila satu atau beberapa pengembang merasa tidak puas dengan pengembang lainnya, baik dalam hal pencapaian ataupun masalah-masalah teknis dalam proyek yang sedang mereka kerjakan. Bilamana hal ini telah terjadi dapat mengakibatkan tertundanya proyek yang sedang mereka kerjakan, bahkan tidak tertutup kemungkinan proyek tersebut menjadi gagal.
-       Fragmentasi. Dengan tersedianya kode sumber untuk setiap aplikasi, maka seseorang dapat saja merubah sebagian kode sumber asli dan mengeluarkan aplikasi yang sama dengan nama baru atau mengeluarkan aplikasi sama dengan versi baru.
-       Ketergantungan pada satu orang pemimpin. Proyek-proyek open source biasanya dimulai oleh satu atau beberapa orang, sehingga ketergantungan menjadi sangat tinggi. Dengan berlalunya waktu, para pemimpin tersebut mungkin menjadi bosan, burn-out, dipekerjakan oleh organisasi lain. Akibatnya proyek-proyek yang mereka tangani dapat menjadi tertunda atau bahkan mungkin hilang.
-       Penjiplakan. Dengan tersedianya kode sumber bagi setiap software, tidak tertutup kemungkinan ada pihak-pihak yang memanfaatkan hal tersebut demi kepentingan dirinya, misalnya saja seorang mahasiswa ilmu komputer mendapat tugas untuk membuat suatu program, ia kemudian mencarinya di Internet dan mendapatkan versi open sourcenya. Lalu ia memodifikasi sedikit program tersebut dan menyerahkan pada dosennya untuk dinilai. Bila dosen tidak waspada maka program tersebut akan lolos dan si mahasiswa akan mendapat nilai dengan mudah dan tidak adil bagi mahasiswa yang membuatnya sendiri.


Mengapa dianjurkan menggunakan software open source dalam membuat aplikasi?

Jawabannya menurut saya mungkin karena karena gratis dan mudah didapat. Dengan gratis semua orang bisa mengunduh software ini dengan semaunya tanpa membayar seperti software – software lainnya yang berbayar. Memang tidak semua software yang kita inginkan untuk membuat aplikasi bisa gratis kita dapatkan, namun setidaknya ada kemiripan atau jenis yang sama dengan software berbayar tersebut, jadi kita bisa mengunduhnya untuk membuat aplikasi yang kita inginkan. 

Contohnya misalnya adalah Linux. Linux adalah sebuah contoh yang bagus. Banyak sistem operasi yang berusaha meniru kisah sukses Linux, tetapi Linux tetap yang paling sukses hingga saat ini. Aspek positif dari Open Source adalah penerimaan yang luas untuk software yang benar-benar bagus.


Referensi :



Senin, 22 April 2013

Membuat HTML Sederhana dengan Menggunakan CSS


Assalamu'alaikum ..
Disini saya akan menjelsakan tentang pembuatan HTML sederhana dengan menggunakan CSS. Seperti yang kita ketahui sebelumnya, dalam membuat sebuah tampilan berbasis web, dikhususkan menggunakan suatu file tertentu untuk dapat mendukungnya, yaitu HTML dan CSS.

Lalu, apa fungsi dari CSS itu untuk sebuah halaman web HTML?
Jawabannya adalah karena :
- Kode HTML menjadi lebih sederhana dan lebih mudah diatur,
- Ukuran file menjadi lebih kecil, sehingga load file lebih cepat,
- Mudah untuk merubah tampilan, hanya dengan merubah file CSS saja,
- Dapat berkolaborasi dengan JavaScript.
- Digunakan dalam hampir semua web browser.


Berikut adalah contoh penggunaan CSS dalam HTML.
Sebelumnya, kita membuat coding yang kita buat pada notepad ++ seperti di bawah ini :





Dan hasilnya adalah seperti dibawah ini :



Selamat mencoba :)



Senin, 08 April 2013

Cara Mudah Membuat HTML Menggunakan Notepad

Membuat HTML Daftar Riwayat Hidup

Assalammualaikum..
Halo teman-teman. Ini adalah sedikit contoh pembuatan HTML sederhana menggunakan notepad. Dimana tugas ini dibuat untuk memenuhi mata kuliah Pemrograman Berbasis Web. Di dalam tugas ini, saya membuat Daftar Riwayat Hidup dengan lima menu, yaitu home, data pribadi, pendidikan formal, pengalaman kerja, dan social networking. Dimana dalam setiap menu tersebut terdapat gambar, foto, tabel, garis, maupun informasi lain yang dapat me - link ke tempat lain. Berikut adalah cara pembuatannya:

1.) Buat file baru di notepad, yang saya beri nama oneone.html, twotwo.html, threethree.html, fourfour.html, dan fivefive.html. Dimulai dari file oneone, di dalam file ini terdapat menu home yang akan menampilkan gambar dan tulisan 'siapa saya' yang akan me-link ke tempat lain, disini saya me-link ke tulisan di dalam blog saya. Seperti di bawah ini :


Source Code berikut merupakan perintah untuk memasukkan background, dan tulisan sesuai dengan style font yang kita inginkan:
               <body background=back2.jpg>
                <font size=1 face=tahoma color=black>Pemrograman Berbasis Web</font>
                <hr size=1 width=150 align=left>
                <font size=7 face=verdana color=blue<b><strong>Daftar Riwayat Hidup</b></strong></font>
                <hr size=5 align=center noshade>

Dan untuk membuat kelima menu tersebut agar dapat me-link ke halaman selanjutnya, perintahnya adalah :
 |<a href=oneone.html>HOME</a> |<a href="twotwo.html">|DATA  PRIBADI</a>
 | <a href="threethree.html">PENDIDIKAN  FORMAL</a> |<a href="fourfour.html"> PENGALAMAN    
KERJA </a> |
 |<a href="fivefive.html"> SOCIAL NETWORKING </a> |<hr>

Ini untuk memasukkan gambar : <img src="tami.jpg" width="200" height="250" />. Dan untuk me-link ke halaman lain (Disini me-link ke tulisan di blog saya), jika mengklik 'siapa saya?' maka akan masuk ke halaman yang dituju:
<ul type=square>
               <ul type=square>
                <li><a href=http://tamipujiutami.blogspot.com/2012/09/siapa-saya.html>Siapa Saya?</a>
</ul>

Ini adalah contoh tampilan dari file oneone.html yang merupakan menu home:


Jika kita meng-klik 'siapa saya', maka akan menampilkan blog tulisan saya yang berjudul 'Siapa Saya' seperti di bawah ini :





2.) Sekarang kita isi file notepad selanjutnya yaitu twotwo.html. dalam file tersebut terdapat menu data pribadi, seperti tampilan di bawah ini :


Source Code untuk membuat halaman tersebut hampir sama dengan file oneone yang sebelumnya, disini hanya ditambah dengan pembuatan tabel dengan 2 baris dan 2 kolom, untuk pembuatan tabel, berikut adalah source code programnya:


3.) Untuk menu pendidikan formal (threethree.html), pengalaman kerja(fourfour.html), dan social networking(fivefive.html), source code yang digunakan sama, hanya perlu di edit sesuai dengan isi yang akan kita buat, tampilan dari masing-masing menu seperti di bawah ini:

- Menu Pendidikan formal



- Menu Pengalaman Kerja


4.) Sedikit berbeda mungkin pada file five.five.html yang menampilkan menu social networking, seperti twitter, facebook, dan blog yang me-link ke social network yang saya punya, dimana untuk melink tersebut saya menggunakan icon berupa gambar. sehingga jika dklik akan me-link ke halaman yang telah saya tentukan dengan menggunakan potongan kode program di bawah ini :

<li><a href=http://www.facebook.com/puji.utami.5209?ref=tn_tnmn><img src="fb.jpg" width="50" height="50"</a>
<li><a href=https://twitter.com/utamipujiutami><img src="twit.jpg" width="50" height="50"</a>
<li><a href=http://tamipujiutami.blogspot.com/><img src="blog.jpg" width="50" height="50"</a>
</ul>
Keterangan: - tulisan dengan warna merah bold, merupakan nama file untuk icon berupa namafile.jpg.
                  - tulisan dengan warna biru bold menunjukkan link yang akan kita tuju setelah meng-klik              
                    icon gambar.
Untuk tampilannya seperti di bawah ini :


Sekian hasil yang amat sederhana dari tugas pembuatan HTML dari mata kuliah Pemrograman Berbasis Web, semoga bermanfaat ^.^
Terimakasih.

Jumat, 05 April 2013

Etika Pengguna (Sistem Analis) Dalam Profesionalisme Teknologi Informasi



Penerapan etika dalam teknologi informasi dan komunikasi adalah etiket atau etika dan sopan santun berkomunikasi melalui Internet. Dalam pembuat perangkat lunak telah bekerja keras untuk berkarya sehingga hasil karyanya itu patut dihargai dan dilindungi dengan undang-undang. Indonesia sebagai negara hukum memiliki undang-undang yang mengatur hak atas kekayaan intelektual. Selain memperhatikan etika dan moral, penggunaan komputer dan alat-alat teknologi informasi dan komunikasi lainnya harus juga memperhatikan prinsip kesehatan dan keselamatan kerja. Tujuan dari etika profesionalisme dalam teknologi informasi adalah untuk melindungi kepentingan para penikmat teknologi informasi, sehingga para pengguna tidak harus merasakan ketidaknyamanan karena takut akan tersebarnya informasi pribadi miliknya. Oleh karena itu etika merupakan tugas dari para pengguna computer. Dengan cara menggunakan software asli sehingga mengurangi kejahatan dalam berkomputer. Dengan mempelajari etika dan moral ini diharapkan kita bisa menjadi insan yang lebih baik dalam menggunakan teknologi informasi.
Salah satu pengguna komputer yang akan menggunakan kode etik dan profesionalismenya terhadap teknologi sistem informasi adalah sistem analis, sistem analis merupakan orang yang  bertugas menganalisa system yang akan diimplementasikan, mulai dari menganalisa system yang ada, kelebihan dan kekurangannya, sampai studi kelayakan dan desain system yang akan dikembangkan. Analis sistem memegang peranan yang sangat penting dalam proses pengembangan sistem. Terkadang dalam pengembangan sistem antara System analyst dan programmer sulit dibedakan karena dalam penerapannya kedua jenis pekerja ini dapat merangkap dua tugas sekaligus apakah itu Analis Sistem yang merangkap sebagai Programmer ataupun Programmer yang meragkap sebagai Analis Sistem. Namun sebenarnya berdasarkan tugas dan tanggungjawab masing-masing kedua jenis profesi ini dapat dibedakan, berikut ini tugas dan tanggung jawab dari sistem analis:
-        Tanggung jawab analis sistem tidak hanya pada pembuatan program komputer saja,n tetapi pada sistem secara keseluruhan.
-        Pengetahuan analis sistem harus luas, tidak hanya pada teknologi komputer, tetapi juga pada bidang aplikasi yang ditanganinya.
-        Pekerjaan analis sistem dalam pembuatan program terbatas pada pemecahan masalah secara garis besar.
-        Pekerjaan analis sistem melibatkan hubungan banyak orang, tidak terbatas pada sesama analis sistem,programer tetapi juga pemakai sistem dan manajer.
Manusia merupakan faktor yang kritis di dalam sistem dan watak manusia satu dengan yang lainnya berbeda. Analis sistem yang kaku dalam membina hubungan kerja dengan personil-personil lainnya yang terlibat, akan membuat pekerjaannya menjadi tidak efektif. Apalagi bila analis sistem tidak dapat membina hubungan yang baik dengan pemakai sistem, maka akan tidak mendapat dukungan dari pemakai sistem atau manajemen dan kecenderungan pemakai sistem akan mempersulitnya.
Dalam pengembangan Sistem yang besar biasanya melibatkan banyak personil dalam satu tim, dalam tim tersebut bisa terdapat lebih dari satu orang Analis Sistem. Berikut adalah tingkatan Analis Sistem dalam tim pengembang sistem:
  1. Manajer analis sistem (manage of systems analyst)
Manajer analis sistem disebut juga sebagai koordinator proyek dan mempunyai tugas dan tanggungjawab sebagai berikut:
a)      Sebagai ketua atau koordinator tim pengembangan sistem
b)      Mengarahkan, mengontrol dan mengatur anggota tim pengembangan sistem lainnya.
c)      Membuat jadwal pelaksanaan proyek pengembangan sistem yang akan dilakukan.
d)     Bertanggungjawab dalam mendefinisikan masalah, studi kelayakan, disain sistem dan penerapannya.
e)      Memberikan rekomendasi-rekomendasi perbaikan sistem.
f)       Mewakili tim untuk berhubungan dengan pemakai sistem dalam hal perundingan-perundingan dan pemberian-pemberian nasehat kepada manajemen dan pemakai sistem.
g)      Membuat laporan-laporan kemajuan proyek (progress report).
h)      Mengkaji ulang dan memeriksa kembali hasil kerja dari tim.
  1. Ketua analis sistem (lead systems analyst)
Ketua analis sistem biasanya menjabat sebagai wakil dari manajer analis sistem. Tugasnya adalah membantu tugas dari manajer analis sistem dan mewakilinya bila manajer analis sistem berhalangan.
  1. Analis sistem senior
Analis sistem senior (senior systems analyst) merupakan analis sistem yang sudah berpengalaman.
  1. Analis sistem junior (junior systems analyst)
Analisis sistem junior merupakan analis sistem yang belum berpengalaman dan masih membutuhkan bimbingan-bimbingan dari analis sistem yang lebih senior. Analis sistem junior ini sering juga disebut dengan analis sistem yang masih dilatih (systems analyst trainee).

Profesionalisme Analis Sistem

·        Memiliki latar pendidikan tertentu untuk melaksanakan tugas dan tanggung jawabnya sebagai seorang software engineer.
·        Memperbaharui dan mengembangkan pengetahuan, keterampilan dan pengalamannya sesuai perkembangan teknologi.
·        Memiliki kompetensi dan tanggung jawab pribadi.


Referensi:
-          /teknologinformasipinnot.blogspot.com
-          Wahyono, Teguh. 2009. Etika Komputer: Tanggung Jawab Profesional di Bidang Teknologi Informasi. Yogyakarta: Penerbit Andi. 702.