Open source adalah sistem pengembangan yang tidak dikoordinasi oleh suatu orang/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 pengembangan ini mengambil model ala bazaar, sehingga pola Open Source ini memiliki ciri bagi komunitasnya yaitu adanya dorongan yang bersumber dari budaya memberi, yang artinya ketika suatu komunitas menggunakan sebuah program Open Source dan telah menerima sebuah manfaat kemudian akan termotivasi untuk menimbulkan sebuah pertanyaan apa yang bisa pengguna berikan balik kepada orang banyak.
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.
1. Distribusi Ulang Gratis
Lisensi distribusi tidak melarang pihak manapun untuk menjual atau memberikan software sebagai bagian dari distribusi software terpadu yang memuat program-program dari beberapa sumber yang berbeda. Lisensi seharusnya tidak mensyaratkan royalti atau biaya lain untuk hal tersebut.
2. Kode Sumber
Program harus menyertakan kode sumber, dan harus mengizinkan distribusi kode sumber sebagaimana distribusi bentuk terkompilasinya. Jika sebuah produk tidak didistribusikan dengan kode sumbernya, harus ada sarana yang terpublikasi baik untuk mendapatkan kode sumber dengan mudah. Kode sumber harus dalam bentuk yang memudahkan programmer untuk memodifikasi program tersebut. Bentuk intermediet, seperti output preprosesor atau translator tidak diperbolehkan.
3. Kerja Turunan
Lisensi harus mengizinkan modifikasi dan penerusan hasil kerja oleh orang lain, serta harus mengizinkannya untuk didistribusikan di bawah lisensi yang sama dengan software aslinya.
4. Integritas Penulis Kode Sumber
Lisensi dapat melarang kode sumber untuk didistribusikan ulang dalam bentuk termodifikasi hanya jika lisensi mengizinkan distribusi file-file tambahan beserta kode sumber untuk tujuan memodifikasi progran pada masa pembangunan. Lisensi harus secara eksplisit mengizinkan distribusi software yang dibangun dari modifikasi kode sumber. Lisensi mungkin mensyaratkan hasil kerja turunan untuk menggunakan nama atau versi yang berbeda dari software aslinya.
5. Tak Ada Diskriminasi terhadap Pribadi atau Golongan
Lisensi tidak boleh mendiskriminasi pribadi atau golongan manapun.
6. Tak Ada Diskriminasi terhadap Bidang atau Usaha Tertentu
Lisensi tidak boleh melarang siapapun untuk memanfaatkan program dalam bidang atau usaha tertentu. Misalnya, tidak boleh melarang program untuk digunakan di bidang bisnis, atau digunakan dalam riset genetika.
7. Distribusi Lisensi
Hak-hak yang dimiliki oleh program harus dapat diaplikasikan oleh semua orang yang menerima distribusi program tersebut, tanpa perlu penambahan lisensi oleh pihak-pihak yang bersangkutan.
8. Lisensi Tidak Spesifik untuk Satu Produk
Hak-hak yang dimiliki program bukan karena program tersebut menjadi bagian distribusi software tertentu. Jika program tersebut dipisahkan dari distribusi tersebut dan digunakan atau didistribusikan di bawah lisensi program, semua pihak yang menerima distribusi tersebut mempunyai hak yang sama sebagaimana hak yang dipunyai oleh distribusi software asal.
9. Lisensi Tidak Membatasi Software Lain
Lisensi tidak boleh melakukan pembatasan terhadap software lain yang didistribusikan bersama dengan software yang diberi lisensi. Misanya, lisensi tidak boleh memaksa agar semua program lain yang didistribusikan melalui medium yang sama harus merupakan open source software.
10. Lisensi Harus Netral terhadap Teknologi
Tidak ada syarat lisensi yang merupakan predikat dari suatu teknologi atau gaya antarmuka tertentu.
Definisi Open Source dari OSI saat ini sudah mencapai versi 1.9 dengan sepuluh konsep yaitu:
· 1.Free Redistribution. Bebas untuk didistribusikan ulang.
· 2.Source Code. Source code harus tersedia bebas.
· 3.Derived Works. Boleh dimodifikasi/diturunkan dengan lisensi yang sama.
· 4.Integrity of The Author’s Source Code. Source code asli boleh restricted (didistribusikan tanpa dimodifikasi) asal memperbolehkan distribusi modifikasi/turunan dalam bentuk patch.
· 5.No Discrimanations Againts Persons or Groups. Tak ada diskriminasi terhadap orang atau kelompok tertentu.
· 6.No Discrimanations Againts Fields of Endeavor. Tak ada diskriminasi terhadap pemakaian dalam bidang tertentu.
· 7.Distribution of License. Lisensi harus disertakan dalam setiap produk software dan turunannya.
· 8.License Must Not Be Specific to a Product. Lisensi tidak boleh hanya untuk produk tertentu.
· 9.License Must Not Restrict Other Software. Lisensi tidak boleh membatasi software lain.
· 10.License Must Be Technology-Neutral. Lisensi harus netral terhadap teknologi pendistribusian, misalnya tidak boleh mendistribusikan hanya dalam media CDROM saja.
Agar dapat disebut sebagai perangkat lunak bebas (free software), sebuah perangkat lunak harus menyediakan kode sumber (source-code) yang dapat diakses dan dimodifikasi oleh penggunanya. Yang disebut dengan kode sumber disini adalah kode-kode dalam bahasa pemrograman yang membentuk perangkat lunak bersangkutan sebelum perangkat lunak tersebut di-compile. Perangkat lunak semacam ini lantas disebut sebagai perangkat lunak open source.