Senin, 18 Juni 2012

Aplikasi Crystal REVS for C++ untuk Menguji Cyclometic Complexity

 
A.    Pengertian Software
Dalam dunia teknologi informasi kita sering mendengar kata software. Sebenarnya apa sih software itu? Ada yang mengatakan bahwa tanpa software, maka suatu komputer tidak dapat digunakan atau dioperasikan. Untuk mengetahui definisi atau pengertian dari software silahkan simak sedikit penjelasannya di bawah ini.
Nama lain dari Software adalah perangkat lunak. Karena disebut juga sebagai perangkat lunak, maka sifatnya pun berbeda dengan hardware atau perangkat keras, jika perangkat keras adalah komponen yang nyata yang dapat diliat dan disentuh oleh secara langsung manusia, maka software atau Perangkat lunak tidak dapat disentuh dan dilihat secara fisik, software memang tidak tampak secara fisik dan tidak berwujud benda namun  bisa untuk dioperasikan.

Pengertian Software komputer adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. Melalui sofware atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah.
      B.   Manfaat Software
Manfaat dari software itu sendiri yaitu untuk membantu mempermudah pekerjaan manusia,banyak berbagai macam software yang ditawarkan oleh suatu perusahaan IT untuk menunjang pekerjaan mereka. Salah satu contoh software yang dapat digunakan untuk melakukan testing suatu program yaitu Crystal REVS for C++.
  
      C.   Menentukan standar kualitas perangkat lunak yang sesuai  
          Tingkat standar mutu yang dipilih untuk proyek terutama tergantung pada karakteristik dari   aplikasi perangkat lunak.

Contoh 1: Sebuah paket perangkat lunak untuk memonitor pasien tidur rumah sakit yang membutuhkan perangkat lunak standar kualitas tertinggi dengan mempertimbangkan konsekuensi terburuk jika perangkat lunak gagal atau tidak berjalan semestinya.

Contoh 2: Sebuah paket yang dikembangkan untuk menangani informasi umpan balik untuk karyawan internal organisasi program pelatihan bisa dilakukan dengan standar kualitas perangkat lunak tingkat menengah, dengan asumsi bahwa biaya kegagalan relatif rendah (atau jauh lebih rendah dibandingkan dengan Contoh 1).

Contoh 3: Sebuah paket perangkat lunak telah dikembangkan untuk dijual ke berbagai organisasi. Prospek penjualan membenarkan standar kualitas yang lebih tinggi daripada sebuah paket perangkat lunak buatan memiliki karakteristik serupa belum dikembangkan untuk melayani pelanggan tunggal.

Contoh-contoh ini menggambarkan kriteria utama yang akan diterapkan ketika memilih standar kualitas perangkat lunak: evaluasi sifat dan besarnya kerusakan yang diperkirakan jika terjadi kegagalan sistem. Kerusakan ini dapat mempengaruhi pelanggan dan pengguna di satu sisi, dan pengembang di sisi lain. Secara umum, semakin tinggi tingkat yang dapat diperkirakan dari kerusakan akibat kegagalan, semakin tinggi standar kualitas yang sesuai adri perangkat lunak.


       D.   Contoh Software
  •         Crystal REVS for C++
Suatu software yang dapat menghitung cyclometic complexity terhadap suatu kode program berbasis bahasa C/C++. Nama software-nya adalah Crystal REVS for C++.
Crystal REVS for C++ adalah suatu software yang menguji kode program yang menggunakan bahasa C++/C dengan menghasilkan flow chart dan mengitung cyclomatic complexity dari kode program tersebut berdasarkan Complexity Measure dari McCabe. Crystal REVS for C++ terintergrasi dengan beberapa fungsi seperti Flowacharts, Rich Tree, DataFlow, Dokumentasi dengan bentuk HTML, Auto-formatting, Tokes Panel, Comment Panel pada satu tools.
Dengan menggunakan software ini, kita dapat meng-explore source code, mengetahui flowchart untuk memahami alur logic dan fungsi kode program, dan mengetahui besarnya cyclomatic complexity sehingga kita dapat menarik kesimpulan mengenai kode program yang telah kita buat, apakah memiliki readability, yang artinya kode program yang telah kita buat mudah dibaca dan kita bisa focus pada logic program yang telah kita buat. Jika tidak, maka sebaiknya kita mereview kembali kode program yang telah kita buat.

 Sumber :




Rabu, 13 Juni 2012

Open Source Software


Open source software (OSS) adalah perangkat lunak komputer yang tersedia dalam bentuk kode sumber: kode sumber dan hak lain yang biasanya diperuntukkan bagi pemegang hak cipta yang disediakan di bawah lisensi open source yang memungkinkan pengguna untuk mempelajari, mengubah, memperbaiki dan saat juga untuk mendistribusikan perangkat lunak.

Perangkat lunak open source sangat sering berkembang dalam cara yang umum, kolaboratif. Lunak open source adalah contoh yang paling menonjol perkembangan open source dan sering dibandingkan dengan user-generated content (secara teknis didefinisikan) atau gerakan-gerakan konten terbuka (secara hukum didefinisikan).

Gerakan perangkat lunak bebas ini diluncurkan pada tahun 1983. Pada tahun 1998, sekelompok individu menganjurkan bahwa istilah perangkat lunak bebas harus diganti oleh open source software (OSS) sebagai ekspresi yang kurang ambigu dan lebih nyaman bagi dunia usaha. Software Developer mungkin ingin menerbitkan perangkat lunak dengan lisensi open source, sehingga siapa pun dapat juga mengembangkan perangkat lunak yang sama atau memahami berfungsi internal. Dengan perangkat lunak open source, umumnya orang diperbolehkan untuk membuat modifikasi ini, porting ke sistem operasi baru dan arsitektur prosesor, berbagi dengan orang lain atau, dalam beberapa kasus, pasar itu. Casson sarjana dan Ryan telah menunjukkan beberapa berbasis kebijakan alasan untuk adopsi dari open source, khususnya, proposisi nilai tinggi dari open source (bila dibandingkan dengan paling milik format) dalam kategori berikut:

* Keamanan.
* Keterjangkauan.
* Transparansi.
* Selama-lamanya.
* Interoperability.
* Localization.

Keuntungan dari Open Source Software adalah :

a. Ketersedian source code dan hak untuk memodifikasi
Ini merupakan hal yang penting. Hal ini menyebakan perubahan dan improvisasi pada produk software. Selain itu, hal ini memunculkan kemungkinan untuk meletakan code pada hardware baru, agar dapat diadaptasi pada situasi yang berubah-ubah, dan menjangkau pemahaman bagimana sistem itu bekerja secara detail.
b. Hak untuk mendistribusikan modifikasi dan perbaikan pada code
Hal ini merupakan titik perbedaan Open Source Software dengan Free Software. Pada kenyataannya, hak pendistribusian diakui dan merupakan hal yang umum, ini adalah hal yang berpengaruh bagi sekumpulan developer ( pengembang ) untuk bekerja bersama dalam project Open Source Software.
c. Hak untuk menggunakan software
Ini merupakan kombinasi dari hak pendistribusian, menjamin ( jika software cukup berguna ) beberapa user yang mana membantu dalam menciptakan pasar untuk mendukung dan berlangganan software. Hal ini juga membantu dalam improvisasi kualitas dari produk dan improvisasi secara fungsi. Selain itu akan menyebabkan sejumlah user untuk mencoba produk dan mungkin menggunakannya secara regler.

Kerugian dari Open Source Software adalah :

a. Tidak ada garansi dari pengembangan
Biasanya terjadi ketika sebuah project dimulai tanpa dukungan yang kuat dari satu atau beberapa perusahaan, memunculkan celah awal ketika sumber code masih mentah dan pengembangan dasar masih dalam pembangunan.
b. Masalah yang berhubungan dengan intelektual property
Pada saat ini, beberapa negara menerima software dan algoritma yang dipatentkan. Hal ini sangat sulit untuk diketahui jika beberapa motede utama untuk menyelesaikan masalah software di patenkan sehingga beberapa komunitas dapat dianggap bersalah dalam pelanggaran intelektual property.
c. Kesulitan dalam mengetahui status project
Tidak banyak iklan bagi open source software, biasanya beberapa project secara tidak langsung ditangani oleh perusahaan yang mampu berinvestasi dan melakukan merketing


Referensi :

  • http://wikipedia.org/wiki/Open-source_software
  • http://DiinnyDwiPutriianti.blogspot.com/Open-source