Keamanan Open Source

10 Celah Keamanan Aplikasi Berbasis Web - Blog Gamatechno

Penggunaan teknologi web sudah menjadi suatu bagian dari kehidupan sehari-hari bagi masyarakat luas di era digital saat ini. Para penyedia informasi digital berbasis teknologi web harus mampu memberikan layanan yang aman dan handal bagi masyarakat agar bisnis dapat berjalan tanpa gangguan. Oleh karena itu, mereka membutuhkan sumber informasi yang tidak bias berbasis best practice serta open standard. Di bidang keamanan, salah satu dari sumber informasi tersebut adalah Open Web Application Security Project (OWASP). OWASP merupakan sebuah komunitas online yang memiliki berbagai proyek untuk memproduksi artikel, metodologi, dokumentasi, aplikasi, serta teknologi yang berbasis Free dan Open Source di bidang keamanan aplikasi web. Berbagai proyek tersebut antara lain adalah:

  • OWASP Top 10, yang merincikan sepuluh kelemahan utama dalam aplikasi web saat ini
  • OWASP Proactive Controls, yang merincikan sepuluh teknik keamanan aplikasi web yang efektif
  • OWASP Application Security Verification Standard (ASVS), yang merupakan sebuah standar untuk melakukan verifikasi keamanan aplikasi web
  • OWASP Software Assurance Maturity Model (SAMM), yang merupakan framework dan toolkit asesmen untuk membantu organisasi merumuskan serta menerapkan strategi keamanan aplikasi sesuai dengan risiko yang dihadapinya
  • OWASP Zed Attack Proxy (ZAP), yang merupakan tool yang dapat digunakan untuk menemukan berbagai lubang keamanan aplikasi web saat pengembangan dan pengujian aplikasi web
  • OWASP ModSecurity Core Rule Set (CRS), yang dapat digunakan dalam penerapan Web Application Firewall (WAF) untuk melindungi aplikasi serta server web dari berbagai serangan terhadapnya

Ada dua elemen utama pembentuk keamanan jaringan :

a)  Tembok pengamanan (baik secara fisik maupun maya), yaitu suatu cara untuk memberikan proteksi atau perlindugan pada jarigan, baik secara fisik (kenyataan) maupun  maya (menggunakan software)

b)  Rencana pengamanan, yaitu suatu rancagan yang nantinya akan di implementasiakan uantuk melindugi jaringan agar terhindar dari berbagai ancaman dalam jaringan Alasan keamanan jaringan sangat penting karena:

1. Privacy / Confidentiality

  • Defenisi : menjaga informasi dari orang yang tidak berhak mengakses.
  • Privacy : lebih kearah data-data yang sifatnya privat , Contoh : e-mail seorang pemakai (user) tidak boleh dibaca oleh administrator.
  • Confidentiality : berhubungan dengan data yang diberikan ke pihak lain untuk keperluan tertentu dan hanya diperbolehkan untuk keperluan tertentu tersebut.
  • Bentuk Serangan : usaha penyadapan (dengan program sniffer).
  • Usaha-usaha yang dapat dilakukan untuk meningkatkan privacy dan confidentiality adalah dengan menggunakan teknologi kriptografi.

2.      Integrity

  • Defenisi : informasi tidak boleh diubah tanpa seijin pemilik informasi. Contoh : e-mail di intercept di tengah jalan, diubah isinya, kemudian diteruskan ke alamat yang dituju.
  • Bentuk serangan : Adanya virus, trojan horse, atau pemakai lain yang mengubah informasi tanpa ijin, “man in the middle attack” dimana seseorang menempatkan diri di tengah pembicaraan dan menyamar sebagai orang lain

Authentication a)      Defenisi : metoda untuk menyatakan bahwa informasi betul-betul asli, atau orang yang mengakses atau memberikan informasi adalah betul-betul orang yang dimaksud. b)      Dukungan : adanya Tools membuktikan keaslian dokumen, dapat dilakukan dengan teknologi watermarking(untuk menjaga “intellectual property”, yaitu dengan menandai dokumen atau hasil karya dengan “tanda tangan” pembuat ) dan digital signature. Access control, yaitu berkaitan dengan pembatasan orang yang dapat mengakses informasi. User harus menggunakan password, biometric (ciri-ciri khas orang), dan sejenisnya. 4.        Availability a)      Defenisi : berhubungan dengan ketersediaan informasi ketika dibutuhkan.
Contoh hambatan : “denial of service attack” (DoS attack), dimana server dikirimi permintaan (biasanya palsu) yang bertubi-tubi atau permintaan yang diluar perkiraan sehingga tidak dapat melayani permintaan lain atau bahkan sampai down, hang, crash, mailbomb, dimana seorang pemakai dikirimi e-mail bertubi-tubi (katakan ribuan e-mail) dengan ukuran yang besar sehingga sang pemakai tidak dapat membuka e-mailnya atau kesulitan mengakses e-mailnya.

Kesimpulan

Keamanan pada suatu aplikasi sangatlah penting, karena sangat berguna untuk menjaga privasi yang kita miliki, seperti identitas pribadi kita agar tetap terjaganya data yang kita miliki, sehingga tidak jatuh ketangan oknum yang tidak berkepentingan yang dapat menjadikan senjata untuk oknum tersebut, untuk melakukan penipuan dengan mengatasnamakan data pribadi yang kita miliki.

Berikut ini terdapat contoh kasus mengenai serangan komputer yang marak terjadi di dunia, antara lain sebagai berikut:

  • Serangan Cloudbleed ke Cloudflare

Pada akhir bulan Februari 2017, publik dikejutkan dengan kejadian bocornya data dari Cloudflare, sebuah perusahaan penyedia layanan cloud dan keamanan. Cloudbleed pertama kali ditemukan oleh Tavis Ormandy dari Google Project Zero yang melaporkan adanya bug kepada Cloudflare.

Penamaan Cloudbleed sendiri dibuat oleh Tavis merujuk pada serangan bug Heartbleed pada 2014. Meski serangannya tidak sedahsyat Heartbleed, namun data-data yang bocor meliputi banyak informasi sensitif, seperti password, cookies, serta authentication token dari banyak situs-situs yang menjadi kliennya. Hal tersebut tentu menjadi ancaman bagi situs yang menjadi korban juga pengguna situs tersebut yang terancam privasinya. Namun pihak Cloudflare menyatakan telah mengetahui dan memperbaiki sekitar 0,00003 persen data yang bocor.

Cloudflare memiliki banyak klien besar, seperti Uber, Fitbit, dan masih banyak lagi. Bahkan efek serangan Cloudbleed juga menyerang beberapa situs penukaran dan bursa Bitcoin seperti Coinbase, BitPay, Blockchain, dan LocalBitcoins.

  • Ransomware WannaCry Serang 150 Negara

Bulan Mei 2017, publik dikejutkan dengan serangan ransomware yang diklaim merupakan salah satu serangan cyber terbesar yang pernah terjadi di dunia. WannaCry memanfaatkan tool senjata cyber dinas intel Amerika Serikat, NSA, yang dicuri peretas dan dibocorkan di internet. Inilah yang membuat WannaCry mampu menginfeksi ribuan sistem komputer di puluhan negara dalam hitungan jam.

Tercatat lebih dari 150 negara, termasuk Indonesia, terkena dampaknya. Serangannya tak pandang bulu, mulai dari industri otomotif, telekomunikasi, perbankan, hingga rumah sakit menjadi korban dan dipaksa membayar tebusan. Rumah Sakit Kanker Dharmais di Jakarta merupakan salah satu yang terkena dampak serangan WannaCry.

Meski serangan di negara lain menyebabkan kelumpuhan sistem, untungnya serangan yang dialami RS Dharmais hanya membuat sistem komputer untuk proses pendaftaran menjadi lambat yang berdampak pada penumpukan pasien.

Referensi:

Pemanfaatan Teknologi Informasi Dalam Mendukung Keterbukaan

Penjelasan Mengenai Perkembangan TI Indonesia - Robicomp

Kemajuan Ilmu Pengetahuan dan Teknologi ( Iptek ) telah semakin luas khususnya penggunaan Teknologi Informasi (TI). Penggunaan TI ini tidak lagi terbatas pada bidang-bidang tertentu, melainkan juga telah meluas pada bidang-bidang lain seperti bidang penelitian dan pengembangan (litbang), pendidikan, pertahanan dan keamanan, sosial, perdagangan, dan sebagainya.

Pendayagunaan Teknologi Informasi semakin menjanjikan efisiensi karena dapat mempercepat penyampaian informasi, jangkauan yang global dan transparansi. Oleh sebab itu TI telah banyak diterapkan dalam berbagai bidang kehidupan manusia bahkan di tingkat rumah tangga. Dengan adanya manfaat dan keuntungan-keuntungan yang dapat diperoleh dari pemanfaatan TI ini maka teknologi informasi ini juga telah diterapkan dalam praktek pemerintahan di beberapa negara.

Penerapan Teknologi Informasi melalui media online dalam hal ini adalah website telah diterapkan secara baik oleh beberapa lembaga pendidikan / universitas negeri maupun swasta di Indonesia. Mereka semakin sadar dan mengerti bahwa media online adalah merupakan sarana atau media sosialisasi yang sangat efektif dan efisien. Dalam Pemerintahan kita saat ini telah menggunakan Teknologi Informasi sebagai salah satu media penyebaran informasi kepada masyarakat luas.

Namun dalam beberapa hal sering kita temui media penyebaran informasi secara online tersebut sering mengalami beberapa masalah. Masalah yang sering penulis temui pada situs pemerintahan antara lain:

  • Jarang sekali diperbaharui, bahkan ada beberapa situs resmi kodya / propinsi hanya mempergunakan halaman statik html.
  • Tidak ada kontak yang aktif untuk dihubungi seperti contohnya kontak e-mail webmaster.

Good governance dilihat dari sisi luar organisasi seolah merupakan refleksi perilaku institusi. Namun demikian, jika kita kaji lebih mendalam, good governance dari sebuah organisasi merupakan agregat perilaku individu yang taat dan tunduk pada ketentuan (regulatory) yang telah ditetapkan. Ketentuan ini biasanya menyangkut tentang batasan mana yang boleh dan tidak boleh dilakukan, dan atau petunjuk/prosedur pelaksanaan suatu aktivitas dalam rantai nilai pelayanan kepada stakeholder. Dengan demikian, good governance mencerminkan bagaimana manusia berkarya secara benar, benar dalam pengertian sesuai dengan ketentuan regulasi yang telah ditetapkan.

Karakteristik Good Governance
Meski secara sederhana pemahaman mengenai good governance dapat dinyatakan sebagai tata pemerintahan yang baik, dalam implementasinya tidak mudah untuk mendefinisikan secara seragam. Hal ini dikarenakan good governance memiliki banyak sumbangan makna yang bervariasi selain dari luasnya bahasan. Namun demikian, pada hakekatnya keberagaman makna tersebut memiliki kesamaam prinsip dan tujuan yakni terselanggaranya pemerintahan yang seimbang di antara semua komponen pelaku. Semua pelaku harus saling tahu apa yang dilakukan oleh pelaku lainnya, ada ruang dialog agar para pelaku saling memahami perbedaan di antara mereka. Dengan proses seperti ini diharapkan tumbuh konsensus dan sinergi di dalam masyarakat.

Tujuan dan Manfaat e-Goverment

Konsep e-Government diterapkan dengan tujuan bahwa hubungan pemerintah baik dengan masyarakatnya maupun dengan pelaku bisnis dapat berlangsung secara efisien, efektif dan transparan. Hal ini diperlukan mengingat semakin dinamisnya gerak masyarakat pada saat ini, sehingga pemerintah harus dapat menyesuaikan fungsinya dalam penyelenggaraan pemerintahan, agar masyarakat dapat menikmati haknya dan menjalankan kewajibannya dengan nyaman dan aman, yang kesemuanya itu dapat dicapai dengan pembenahan sistem. Dengan adanya keterbukaan (transparansi) diharapkan hubungan antara berbagai pihak menjadi lebih baik. Keterbukaan ini menghilangkan perasaan saling curiga dan kesalahan dari semua pihak.

Referensi:

Open Source yang Berkembang di Dunia

Linux dimulai pada tahun 1991 oleh pria kebangsaan Finlandia bernama Linus Torvalds. Linux adalah salah satu jenis sistem operasi komputer yang bersifat open source dan mempunyai beragam jenis distro mulai dari slackware, redhat, centOs, Backtrack dan sebagainya. Linux umumnya digunakan user yang telah ‘mahir’ teknologi, karena dalam penggunaannya membutuhkan keahlian tertentu, mulai dari instalasi sistem, konfigurasi sampai dengan penggunaan aplikasi-aplikasinya.

Linus Torvalds, tepatnya saat menjadi mahasiswa mulai membagikan source code (kode sumber) kernel linux via internet seukuran disket.
Pada waktu itu ia tidak pernah menyangka apa yang diperbuatnya akan melahirkan bisnis tak ternilai di kemudian hari. Linus juga tidak pernah menyangka bahwa sistem operasi linux akan menjadi sistem operasi yang paling menjanjikan. Itulah awal mula sejarah dan perkembangan linux.

Sistem operasi linux terbaru ini bisa juga dibenamkan dalam server, tablet PC, komputer dekstop, handphone, PDA, GPS, mobil, robot, bahkan hingga pesawat buatan NASA.

Yang menjadi perbedaan paling utama antara sistem operasi Linux dengan sistem operasi populer lainnya adalah terletak pada kernel Linux dan komponen-komponen yang menyusunnya yang bisa diakses secara bebas dan terbuka. Pengembangan sistem operasi Linux dilakukan dengan cara mendistribusikannya secara bebas sehingga setiap calon pengguna dapat mendownload sistem operasi ini di internet atau mendapatkannya dari forum – forum khusus.

Fungsi Linux

Secara umum fungsi sistem operasi Linux antara lain sebagai berikut :

1. MULTITASKING : Memungkinkan beberapa program sekaligus diproses pada saat bersamaan di sebuah komputer dengan single user.

2. MULTIPROGRAMMING : Memungkinkan beberapa program menggunakan resources komputer pada saat waktu yang bersamaan bergantian (contoh : proses memasukan data, melakukam cetak pada printer)

3. TIME SHARING : Memungkinkan beberapa pemakai komputer menggunakan CPU bersamaan dan CPU akan memberikan waktunya bergantian kepada user untuk melayaninya.

4. MULTIPROCESSING : Memungkinkan beberapa CPU bekerja besama – sama.
Secara detail fungsi sistem operasi Linux antara lain sebagai berikut:
1. Pengaturan processor, yaitu mengatur processor untuk dapat dijalankan oleh sistem komputer.
2. Pengaturan memori, yaitu mengatur pembagian dan mengirimkan instruksi dari memori utama dan tempat penyimpanan lain ke sistem komputer.
3. Pengaturan input/output, yaitu koordinasi dan penugasan dari berbagai perangkat input/output ketika satu atau lebih program sedang dieksekusi atau dijalankan.
4. Pengaturan file, yaitu mengatur penyimpanan file dari berbagai tempat ke perangkat penyimpanan lainnya. Juga memungkinkan semua file dapat dengan mudah diubah dan dimodifikasi dengan menggunakan text editor atau dengan lainnya.
5. Menjalankan sistem prioritas, yaitu menentukan urutan pekerjaan yang harus dilaksanakan dalam sistem komputer, mulai dari yang paling utama, lalu yang kedua dan seterusnya.
6. Interpretasi atau penerjemahan perintah – perintah dan instruksi – instruksi.
7. Sebagai fasilitas komunikasi yang mudah antara sistem komputer dan komputer operator (manusia).
8. Bertanggung jawab atas keamanan data dan integritas.

Kelebihan Linux

1. Lisensi Gratis
Linux merupakan sistem operasi yang dapat digunakan oleh siapa saja dengan gratis. Berbeda dengan sistem operasi lain seperti windows yang memerlukan biaya untuk menggunakannya.

2. Menggunakan Kode 32 bit
Dengan menggunakan kode menjadikan Linux berjala dengan baik dan meminimalisir terjadinya crash saat menjalankan aplikasi. Pengguna juga tidak perlu khawatir saat menginstal aplikasi yang tidak sesuai dengan kode bit Linux .

3. Tingkat Keamanan Tinggi
Walaupun bersifat open source, namun Linux memiliki tingkat keamanan yang tinggi dibandingkan sistem operasi lain. Dengan sistem keamanan yang tinggi menjadikan Linux aman dari serangan virus yang dapat mengancam data-data dikomputer.

4. Tampilan Grafis Bagus
Dalam setiap versidan jenis Linux yang dirilis terlihat jelas bahwa Linux sangat memperhatikan dalam hal grafis. Sebagai contoh pada Linux Ubuntu yang memiliki user interface yang bagus dan eye catching.

5. Kode Sumber Linux Dapat Dimodifikasi
Dengan sifat Linux yang open source memungkinkan kode sumber dari Linux untuk dilakukan modifikasi. Tentu hal ini sangat menarik perhatian para programmer.

6. Cocok Dijadikan Sebagai Komputer Server
Linux merupakan sistem operasi yang ringan dan stabil sehingga sangat cocok untuk dijadikan komputer server, admin, dan dapat juga sebagai komputer personal.Salah satu jenis linux yang digunakan sebagai server adalah Linux Debian.

7. Lebih Ringan Ketika Dijalankan
OS linux tidak membutuhkan sumber daya atau resources yang besar untuk menjalankannya, ia bahkan dapat berjalan pada komputer jadul sekalipun. TInggal kita sesuaikan saja dengan kebutuhan kita.

Kekurangan Linux

1. Membutuhkan Keahlian Lebih
Dikarenakan Linux masih jarang digunakan oleh masyarakat umum sehingga belum banya teknisi yang mampu melakukan troubleshooting terhadap permasalahan yang ada di dalam Linux.

2. Kurangnya Dukungan Software
Beberapa software populer yang sering digunakan seperti Microsoft Office, Adobe Photoshop, dan aplikasi populer lainnya tidak kompatibel di sistem operasi Linux.

3. Proses Instalasi dan konfigurasi Sulit
Proses instalasi Linux sedikit lebih sulit dibanding windows, terkecuali pada beberapa distribusi linux yang ditujukan untuk para pengguna awam, seperti misalnya linuxmint.

Referensi:

Pengaruh Model Bisnis Terhadap Open Source

Open source adalah suatu istilah yang digunakan untuk software (perangkat lunak) yang membuka atau membebaskan source codenya dapat dilihat oleh pengunanya, dan membiarkan penggunanya dapat melihat bagaimana cara kerja dari software tersebut serta penggunanya juga dapat memperbaiki atau mengembangkan software tersebut menjadi lebih baik lagi. Meski kerap dikonotasikan dengan kata “gratis”, konsep open source bukannya tidak bisa dibisniskan. Salah satu model bisnis di bidang open source yang diprediksi bakal berkembang di Indonesia adalah jasa.

“Banyak sekali peluangnya. Tapi saya yakin yang akan berkembang pesat dua atau tiga tahun ke depan adalah jasa dukungan sistem open source,” ujar pendiri forum online Ubuntu Indonesia Gary Dean di Jakarta hari, Rabu (24/3/2013).

Dia menilai implementasi software open source di Indonesia semakin banyak dan berkembang termasuk di kalangan korporat. Menurutnya saat ini belum banyak perusahaan yang bergerak di bidang pelayanan jasa dukungan pada implementasi open source di ranah perusahaan.

Ketua Asosiasi Open Source Software Indonesia (AOSI) Betti Alisjahbana mengatakan saat ini banyak produk besar yang dibangun dari sistem open source. Dia mengatakan software kode terbuka tersebut telah menjadi pemicu inovasi di berbagai bidang seperti perangkat mobile dan cloud computing, serta model bisnis baru Software as a Service (SaaS).

Dia menyebutkan berdasar data lembaga riset IDC pada November 2012 lalu sebanyak 78,8% perangkat seluler dunia menggunakan sistem operasi open source. Adapun menurut data Open Source Business Conference 2012 lalu sebanyak 52% industri yang mampu berinvestasi di teknologi informasi sangat dipengaruhi software open source.

Open source memungkinkan inovasi melalui integrasi. Menurut data hal yang paling menarik dari open source adalah konsep kebebasan, biaya murah dan kualitas,” katanya.

Kesimpulannya adalah model bisnis open source sangat berpengaruh terhadap perkembangan ekonomi, contohnya saat ini maraknya pembisnis yang bersaing menjual aneka barang yang berhubungan dengan Open Source, misalnya buku-buku tentang produk Open Source, dan lain sebagainya

Referensi :

Perbandingan FOSS dengan Proprietary

Proprietary Software Pada dasarnya lisensi ini menyatakan bahwa pengguna hanya berhak untuk menggunakan software tersebut. Sedangkan hak milik dan hak intelektual tetap pada pembuat software. Software berlisensi propetiary seringkali menetapkan banyak batasan, antara lain:

1. Batasan penggunaan software, misalnya hanya boleh digunakan untuk pengguna perorangan, dan tidak boleh digunakan oleh badan usaha atau institusi

2. Batasan perubahan konfiurasi, aturan ini biasanya berlaku bagi mereka yang ingin menambah atau mengubah kode pemrograman software tersebut. Bahkan hampir semua software propetiary melarang teknik reverse engineering terhadap software yang mereka gunakan.

3. Pemberlakukan hukum hak cipta, banyak pemilik software yang menyatakan bahwa pengguna software bersedia mengikuti Undang-undang hak cipta yang berlaku di Negara tertentu.

Sumber terbuka (open source) adalah sistem pengembangan yang tidak dikoordinasi oleh suatu individu / lembaga pusat, tetapi oleh para pelaku yang bekerja sama dengan memanfaatkan kode sumber (source-code) yang tersebar dan tersedia bebas (biasanya menggunakan fasilitas komunikasi internet).

Pola Open Source lahir karena kebebasan berkarya, tanpa intervensi berpikir dan mengungkapkan apa yang diinginkan dengan menggunakan pengetahuan dan produk yang cocok. Kebebasan menjadi pertimbangan utama ketika dilepas ke publik. Komunitas yang lain mendapat kebebasan untuk belajar, mengutak-ngatik, merevisi ulang, membenarkan ataupun bahkan menyalahkan, tetapi kebebasan ini juga datang bersama dengan tanggung jawab, bukan bebas tanpa tanggung jawab.

Perbedaan Open Source Software dan Proprietary Software

Open source sangat bergantung kepada komunikasi antara pengguna atau pengembang sukarela. Satu pihak mungkin menulis perangkat lunak untuk melakukan suatu fungsi, biasanya untuk memenuhi apa yang mereka butuhkan sebagai pengguna. Pihak lain diundang untuk mengunakan software, kemudian apabila ada fungsi yang kurang, mereka mengirim pertanyaan kepada mailing list pengembangan software tersebut, dan biasanya mereka, maupun pihak lain akan menyediakan perbaikan/tambahan terhadap software. Agar dapat memenuhi kebutuhan pengguna untuk menambah dan mengembangkan software, sambil mempertahankan keuntungan dari tambahan yang diberikan, software open source didistribusikan dengan kode sumbernya.
Propietary mengatur tenaga kerja dalam struktur, hirarki terpusat – yaitu perusahaan. Sebuah otoritas membuat keputusan tentang pembagian kerja dan membuat sistem yang diperlukan untuk transfer informasi bolak-balik antara individu atau tim yang bekerja pada potongan tertentu dari proyek.

Referensi:

Penggunaan Aplikasi Open Source [VLC]

Cara Install VLC Media Player di Ubuntu 20.04 LTS » TERAA.NET
Gambar 1: Logo Aplikasi VLC Media Player

Bagi sebagian pengguna, mungkin sudah tidak asing lagi ketika mendengar kata VLC. Iya, VLC adalah aplikasi multimedia yang digunakan untuk memutar lagu ataupun video dalam berbagai format, seperti MPEG, DivX, Ogg, dan lain-lain. VLC juga dapat digunakan untuk memutar DVD,VCD, maupun CD. VLC termasuk kedalam aplikasi open source berbasis desktop. Karena sifatnya open source (terbuka), VLC banyak digunakan oleh pengguna hampir di banyak sistem operasi seperti Windows, Linux, Mac OS ataupun sistem operasi lainnya.

Sejarah VLC

VLC Media Player Version 1.1.9

VLC Media Player adalah sebuah program media player gratis yang dapat memainkan banyak jenis file format video dan audio (DVD, Audio CD, VCD). VLC Media Player  juga dapat digunakan sebagai server untuk streaming dalam unicast  atau multicast  di IPv4 atau IPv6 pada jaringan bandwidth tinggi. VLC media player adalah player multimedia yang sangat portabel untuk audio berbagai format video serta DVD, VCD, dan berbagai protokol streaming tanpa codec eksternal atau program. Hal ini juga dapat digunakan sebagai server untuk streaming dalam unicast atau multicast di IPv4 atau IPv6 pada jaringan bandwidth tinggi. sejarah VLC: Awalnya proyek VideoLAN dimulai sebagai proyek akademis pada tahun 1996. Hal itu dimaksudkan untuk terdiri dari klien dan server untuk streaming video di jaringan kampus. VLC adalah klien untuk proyek VideoLAN, dengan berdiri VLC untuk VideoLAN Client. Awalnya dikembangkan oleh mahasiswa di Ecole Centrale Paris, sekarang dikembangkan oleh kontributor di seluruh dunia dan dikoordinasi oleh organisasi non-profit VideoLAN.

Ditulis ulang dari awal tahun 1998, itu dirilis di bawah GPL pada tanggal 1 Februari 2001. Fungsionalitas dari program server, VideoLAN Server (VLS), telah sebagian besar telah dimasukkan ke dalam VLC dan telah usang. Nama proyek ini diubah menjadi VLC karena tidak ada lagi klien / infrastruktur server. Ikon kerucut digunakan dalam VLC adalah referensi ke kerucut lalu lintas yang dikumpulkan oleh Asosiasi Mahasiswa Ecole Centrale’s Networking ‘. Desain Ikon kerucut diubah dari ikon digambar tangan resolusi rendah ke versi resolusi yang lebih tinggi diberikan CGI pada tahun 2006, digambarkan oleh Richard Øiestad.

Versi 1.0.0 VLC media player dirilis pada tanggal 7 Juli 2009, yang memuncak 13 tahun pembangunan. VLC yang tersedia untuk iPhone, iPad, dan iPod Touch dari Apple AppStore, tetapi menarik karena konflik perizinan antara GPL dan iTunes Store perjanjian.

Fitur yang terdapat pada Aplikasi VLC

  • Men-convert File Video maupun Audio -> Cara men-convert di VLC Media Player ini cukup mudah, klik menu Media lalu pilih ” Convert / Save… ” atau bisa juga menekan tombol CTRL+R pada keyboard. Akan muncul jendela kemudian pilih ” Add… ” pilihlah file video maupun audio yang ingin kalian ubah formatnya, setelah itu klik ‘Convert / Save’ kemudian tentukan file yang ingin kalian convert, tentukan nama dan lokasi yang ingin kalian simpan. Lalu klik Start
  • Streaming -> Cara untuk streaming di VLC Media Player ini sangat sederhana, kalian hanya perlu pilih menu Media lalu pilih ‘Open Network Stream… ‘ kemudian kalian ketikkan link yang ingin kalian streaming setelah itu pilih Play.
  • Fitur Mouse Gestures -> Untuk mengaktifkan Mouse Gestures pada VLC Media Player ini sangatlah mudah, pilih menu View lalu pilih ‘Add Interface’, kemudian klik Mouse Gestures.
  • Rekam Langsung Webcam -> Rekam Langsung Webcam dapat dilakukan dengan cara pilih menu Media lalu pilih ‘Open Capture Device… ‘ kemudian klik Play.

Kelebihan dan Kekurangan VLC Media Player

Kelebihan VLC Media Player

  • Mempunyai tampilan yang simpel
  • Bisa dengan mudah menambah/mengurangi kecepatan Media Player classic saat memutar file video atau audio
  • Dapat memutar hampir semua format file audio/video.  Misalnya format : avi,mp4,mpg,wmv,vob
  • Mempunyai fitur filter playlist

Kekurangan VLC Media Player

  • Tidak ada fitur untuk mendownload secara otomatis
  • Tidak ada fitur pencarian sub judul

Referensi

Software Open Source [Audacity]

Apa Itu Software Open Source: Kelebihan Dan Kekurangan Open Source ...
Gambar 1: Pengertian Open Source

Pada sebuah sistem operasi suatu perangkat komputer, terdapat software yang dijalankan bersifat gratis atau yang lebih dikenal dengan sebutan Open Source. Open Source adalah suatu istilah yang digunakan untuk software (perangkat lunak) yang membuka atau membebaskan source codenya dapat dilihat oleh pengunanya, dan membiarkan penggunanya dapat melihat bagaimana cara kerja dari software tersebut serta penggunanya juga dapat memperbaiki atau mengembangkan software tersebut menjadi lebih baik lagi. Source code disini maksudnya adalah kumpulan pernyataan atau deklarasi bahasa pemrograman komputer yang ditulis dan dapat di baca manusia. Source code memungkinkan programmer untuk berkomunikasi dengan komputer menggunakan beberapa perintah yang telah terdefinisi. Didalam sebuah sistem operasi open source ini terdapat software yang dapat digunakan dan dikembangkan pada sistem operasi ini, antara lain audacity.

Pengertian Audacity

New Logo/Generic - Audacity Wiki
Gambar 2: Logo Aplikasi Audacity

Audacity adalah aplikasi pemberi efek suara yang terbaik yang pernah ada di dunia sumber terbuka (open source). Aplikasi ini dibangun dengan pustaka WxWidgets sehingga dapat berjalan pada berbagai sistem operasi. Dengan Audacity, pengguna bisa mengoreksi berkas suara tertentu, atau sekedar menambahkan berbagai efek yang disediakan. Selain itu, pengguna juga dapat berkreasi dengan suara yang dimiliki sendiri.

Sejarah Audacity

Sebuah software open source, yang dikembangkan oleh The Audacity Team. dan pertama kali dirilis pada 28 Mei Tahun 2000, dan sudah tersedia dalam beberapa Bahasa yang tersedia untuk beberapa platform PC seperti Windows, Mac, dsb. soft ini pertama kali dikembangkan oleh Dominic Mazzoni dan Roger Dannenberg di universitas Carnegie Mellon University. Software ini sempat menjadi software yang paling banyak di download di SourceForge.

Kelebihan dan Kekurangan Audacity

Kelebihan aplikasi Audacity, antara lain sebagai berikut:

  • Kestabilannya dalam mengolah suara
  • Aplikasi ini gratis
  • Mendukung semua operating system
  • Antar muka(tampilan) yang praktis, sehingga mudah dalam menggunakan fitur
  • Pustaka yang digunakan juga tidak terlalu banyak dan waktu tunggunya juga tidak terlalu lama

Kekurangan aplikasi Audacity, antara lain sebagai berikut:

  • Tampilan aplikasi ini yang agak kaku sehingga kurang nyaman untuk dipandang
  • Ketika menggunakan file audio dalam software ini maka akan dicopy sehingga dalam proses penyimpanan memerlukan space tambahan

Sekian pembahasan saya mengenai Open Source dan contoh Aplikasinya, semoga bermanfaat 🙂 jaga kesehatan buat semua, jangan lupa pakai masker, hindari kerumunan, dan jangan lupa selalu cuci tangan sehabis memegang sesuatu 🙂

Referensi

Package Diagram

Package-Diagram.png

Pengertian Package Diagram

Package diagram merupakan salah satu jenis UML yang digunakan untuk  mengelompokkan elemen-elemen model dari use case ataupun class diagram. biasanya package diagram digunakan pada kumpulan sistem yang besar. Dengan adanya diagram ini, dapat mempermudah pembacaan dan pembuatan sistem dengan cara mengumpulkan atribut-atribut yang sejenis.

Dalam menggunakan package sistem, istilah lain dikenal dengan dua istilah yaitu:

1. Import Package: Meminjam package lain yang bertipe public.
2. Access Package: seperti import hanya saja tipe package berubah menjadi private.Import dilukiskan dengan garis putus-putus dengan panah menunjuk pada package induk (si pemilik kelas) dengan tulisan “import” dekat garis putus-putus tersebut. Sedangkan access dengan cara yang sama, hanya saja tulisan “import” diganti dengan “access”.

Fungsi Package Diagram

Fungsi Package Diagram antara lain sebagai berikut :
1.    Memperlihatkan bagaimana elemen model diorganisasikan/dikelompokkan ke dalam packages
2.    Biasanya dipakai pada use case diagram atau class diagram
3.    Packages digambarkan sebagai sebuah direktori (file folders) yang berisi model-model elemen
4.    Packages dapat diterapkan pada sembarang diagram UML
5.    Walaupun package secara resmi bukanlah diagram UML, namun kegunaannya cukup signifikan
6.   Penjelasan package diagram pada masing-masing diagram UML

Simbol Package Diagram

Dibawah ini adalah simbol package diagram :

simbol package

Elemen Package Diagram

ac   ad

 

*Contoh Package Diagram

Package

 

Referensi :

Deployment Diagram

deployment

A. Pengertian Deployment Diagram

Deployment diagram merupakan gambaran proses-proses berbeda pada suatu sistem yang berjalan dan bagaimana relasi di dalamnya. Hal inilah yang mempermudah user dalam pemakaian sistem yang telah dibuat dan diagram tersebut merupakan diagram yang statis. Misalnya untuk mendeskripsikan sebuah situs web, deployment diagram menunjukkan komponen perangkat keras (“node”) apa yang digunakan (misalnya, web server, server aplikasi, dan database server), komponen perangkat lunak (“artefak”) apa yang berjalan pada setiap node (misalnya, aplikasi web, database), dan bagaimana bagian-bagian yang berbeda terhubung (misalnya JDBC, REST, RMI). Tujuan atau fungsi dari deployment diagram yaitu untuk menggambarkan/memvisualisasikan secara umum proses yang terjadi pada suatu sistem/software.

Ada dua jenis Node, antara lain sebagai berikut:

  1. Device Node, secara fisikal menghitung sumber daya dengan pengolahan memory dan services untuk mengeksekusi software, seperti komputer atau mobile phone.
  2. Execution Environment Node (EEN) adalah software penghitung sumber daya yang berjalan dalam outer node dan menyediakan layanan untuk host dan mengeksekusi executable software.

B. Komponen Deployment Diagram

Di dalam Deployment Diagram terdapat beberapa komponen, antara lain sebagai berikut:

  • Menggambarkan arsitektur system
  • Pemetaan software(component pada component diagram) yang jalan di sebuah hardware (node pada deployment diagram)
  • Software component tidak selalu menggambarkan setiap software component yang ada pada sebuah Komputer(system operasi/Microsoft Office, dll), akan tetapi software component tersebut akan digambarkan ketika ada hubungan dengan pengimplementasian sebuah system
  • Menggambarkan bagaimana s/w dan h/w bekerja sama
  • Menggambarkan topologi jaringan
  • Artifact

Spesifikasi dari bentuk physic informasi yang digunakan atau dihasilkan

Contoh : source file, script, executable file, table di database, document word/excel, e-mail, dll

Digambarkan dengan bentuk :

a

  • Dapat dihubungkan dengan component pada component diagram
  • Hanya digambarkan dalam sebuah node. Perhatikan potongan program dibawah ini yang sesuai dengan artifact yang ada:

//code style sheet

b

  • Node adalah hardware seperti computer/PDA ,lap top, handphone, peralatan komunikasi data (router,hub,switch,modem), dll. Digambarkan dengan bentuk kotak 3 dimensi

c

  • Node dapat digabungkan dengan component pada component diagram

d

  • Node dapat digambarkan dengan bentuk visual, ataupun gabungan antara node dan visual

e

C. Simbol Deployment

Didalam Deployment terdapat beberapa simbol, diantara nya seperti gambar dibawah ini :

simbol deployment

* Contoh Deployment Diagram (Order Processing System)

j

Referensi :

 

Pemrograman Berorientasi Objek (OOP)

oop

A. Pengertian OOP

Object Oriented Programming (OOP) merupakan paradigma pemrogaman yang berorientasikan kepada object. Semua data dan fungsi pada paradigma ini dibungkus dalam class – class atau object – object. Konsep dari OOP sendiri adalah semua pemecahan masalah dibagi kedalam object. Dalam konsep OOP data dan fungsi-fungsi yang akan mengoperasikannya digabungkan menjadi satu kesatuan yang dapat disebut sebagai object. Object adalah kumpulan dari variable dan fungsi yang dibungkus menjadi satu entitas.Entitas tersebut dapat berupa variable biasa. Sebelum kita memiliki sebuah object, maka kita perlu cetakan untuk membuat object-nya. Nah cetakan itu disebut class. Class adalah sebuah bentuk dasar atau blueprint yang mendefinisikan variable, method umum pada semua object.

B. Kelebihan Pemrograman Berorientasi Objek

Kelebihan Pemrograman Berorientasi Objek antara lain sebagai berikut :

  1. Maintenance program lebih mudah. Program yang dibuat dengan metode pemrograman berorientasi objek lebih mudah dibaca dan dipahami. Selain itu, pemrograman berorientasi obyek dapat mengontrol kerumitan program hanya dengan cara mengizinkan rincian-rincian yang dibutuhkan oleh programmer.
  2. Mudah dalam pengubahan program, bisa berupa penambahan atau penghapusan fitur atau objek tertentu. Contoh perubahan yang bisa dilakukan antara lain penambahan dan penghapusan data di dalam suatu database.
  3. Objek-objek di dalam program dapat digunakan sesering mungkin oleh programmer. Programmer dapat menyimpan objek-objek yang dirancang ke dalam sebuah module, yang dapat disisipkan ke dalam baris kode baru. Penambahan bisa dilakukan dengan sedikit perubahan atau tanpa perubahan pada kode program utama.

C. Istilah – istilah dalam OOP

Istilah dalam OOP antara lain sebagai berikut :

  • Class (Kelas), adalah kerangka dasar dari objek yang akan diciptakan, bisa berupa struktur yang mendefinisikan data atau method dari objek. Contoh penamaan kelas adalah: Motor, Laptop, Anggota, dan lainnya.
  • Property, adalah data yang dimiliki oleh class. Contohnya pada class Motor, memiliki property sebagai berikut:
    • Tipe
    • Warna
    • Produsen
  • Method, adalah perilaku dari sebuah class. Bisa juga disebut  sebagai tindakan yang bisa dilakukan oleh suatu class. Contoh pada class Motor, memiliki method sebagai berikut:
    • Start, method untuk menjalankan motor
    • Stop, method untuk menghentikan laju motor
    • Ganti Gigi, method untuk ganti gigi
    • Turn, method untuk belok kiri atau kanan
  • Variabel Kelas, merupakan variabel yang dibagikan oleh semua turunan dari kelas. Variabel kelas didefinisikan di dalam kelas, tapi di luar method yang ada di dalam kelas tersebut.
  • Data Member, merupakan variabel penyimpan data yang berhubungan dengan kelas dan objek
  • Overloading Fungsi, merupakan fungsi yang namanya sama di dalam kelas, tetapi jumlah dan tipe argumennya berbeda. Sehingga bisa dilakukan beberapa hal yang berbeda.
  • Overloading Operator, merupakan pembuatan beberapa fungsi untuk satu operator.
  • Variabel Instansiasi, merupakan variabel yang didefinisikan di dalam suatu method dan hanya menjadi milik dari satu kelas.
  • Pewarisan, merupakan pewarisan karakteristik dari sebuah kelas kepada kelas lain yang menjadi turunannya.
  • Instansiasi, merupakan pembuatan objek dari suatu kelas.

C. Contoh studi kasus pembuatan script OOP sederhana

oop1

oop2

oop3

dari script diatas jika berjalan sebagaimana mestinya maka akan menghasikan teks sebagai berikut :

oop hasil

Referensi :