Açık kaynaklı program oluşturma

Tamamlandı

Burada, açık kaynaklı program oluşturma konusunda önemli noktaları ele alacağız.

"Açık kaynak" derken neyi kast ediyoruz?

Açık kaynak program, bir kod tabanına genel erişimden daha fazladır. Bu, katılmak isteyen herkesin katılımı için canlı bir proje açılması anlamına gelir. Uygun bir proje için düzgün yürütülürse, açık kaynaklı bir program ürününüzün kalitesinde önemli geliştirmeler sağlamaya yardımcı olabilir.

Şirketlerin açık kaynaklı projelerin temel nedenlerinden biri, topluluğun katılım göstermesini istemeleridir. Popüler projeler, topluluktan önemli katkı alır ve ücretsizdir.

Fedakarlığa dayalı olmak zorunda değildir. Kişiler ve kuruluşlar kişisel bir avantaj veya iş avantajı gördükleri için projeleri tüketirler. Proje ihtiyaçlarını veya beklentilerini karşılamadığında, hataları ele alma veya özellik ekleme fırsatını kullanabilir. Bu geliştirmeleri özel çatallarda tutmak yerine, proje temelinin bir parçası olmak için bu değişiklikleri kaynak depoya geri eklemek zorunda kalırlar. Birçok işletmenin açık kaynak modelini kullanarak yazılım üretmesinin nedeni bu iyileştirme kısır döngüsüdür.

Açık kaynak hedefleri

Özetlemek gerekirse, açık kaynaklı yazılıma katılımın üç boyutu vardır:

  • Tüketiciler, başkalarının depolarını inceler veya kullanır.
  • Katkıda bulunanlar, başkalarının depolarının iyileştirilmesinde etkin şekilde rol oynar.
  • Üreticiler, başkalarına açık olan kendi depolarını derler ve bakımını yapar.

Kuruluşların her boyuttan ne elde etmek istediği konusunda daha ayrıntılı düşünürken, bugün bulundukları noktayı değerlendirmeleri iyi bir uygulama olacaktır. Her bir boyutta beş süreç düzeyi vardır.

Açık kaynak işlem düzeylerinin diyagramı.

  • Geçici, herhangi bir süreci yoktur. Başarı, bireysel efora bağlıdır.
  • Yönetilen, kısmen belgelenmiş bir süreci vardır. Başarı, disipline bağlıdır.
  • Tanımlı, belgelenmiş, standartlaştırılmış ve tümleşik bir süreci vardır. Başarı, otomasyona bağlıdır.
  • Nicel olarak yönetilen bir işleme sahip olan ölçülür. Başarı, ölçümlerin iş hedeflerine göre belirlenmesine bağlıdır.
  • İyileştirilmiş, hem artımlı hem de yenilikçi değişikliklerle sürekli ve güvenilir bir şekilde iyileştirilen bir süreçtir. Başarı, değişiklik riskinin azaltılmasına bağlıdır.

Kuruluşunuzun durduğu yeri daha iyi anlamak için Açık kaynak bireysel değerlendirmeleri bölümüne göz atın.

Neleri açık kaynaklı hale getirmeniz gerekir?

Birçok proje açık kaynak mükemmelliğini hedeflemiyor. Ölçütleriniz şirketinizin hedeflerine ve süreç düzeyine göre farklılık gösterse de, bir projeyi açık kaynak oluşturmadan önce göz önünde bulundurmanız gereken bazı önerilen ölçütler şunlardır:

  • Projeniz, korumak istediğiniz fikri mülkiyet içeriyor mu? Bu durumda, kaynağını açık hale getirmeniz değerini azaltır. Avantajların risklerden daha fazla olduğunu düşünmediğiniz sürece bu tür projeleri açık kaynak olarak sağlamayın.

  • Proje, iyi kod kalitesiyle kararlı bir durumda mı? Projenin mükemmel olması gerekmez, ancak proje en başından itibaren berbat bir şekildeyse, olası katkıda bulunanlar uzaklaşabilir.

  • Projeniz, şirketinizin dışındaki kişiler için yararlı mı? Aksi takdirde, büyük olasılıkla herhangi bir katılım almazsınız.

  • Şirketinizin dışındaki kişiler katkıda bulunabiliyor mu? Tüm proje bağımlılıklarına, derleme işlemlerine ve projeyi çalıştırmak için gereken her şeye erişmeleri gerekir. Çalıştıramazlarsa katkıda bulunamaz.

  • Takımınız açık kaynaklı programı destekleyecek bant genişliğine sahip mi? Aksi takdirde, bunu yapıncaya kadar bekleyin. Bir projeyi açık kaynak olarak kullanır ve desteklemezseniz, güvenen bir topluluk oluşturma fırsatınızı kaybedebilirsiniz.

Bu sorular, en yaygın olan önemli noktalardan yalnızca birkaçıdır. Kuruluşunuzda göz önünde bulundurmanız gereken başka iş veya uyumluluk sorunları olabilir.

Açık kaynaklı program tasarlama

Açık kaynaklı programı çalıştırmak, InnerSource program çalıştırmaya benzer, ancak bunu genel bir hedef kitle için yaparsınız. Sonuç olarak, dikkat edilmesi gereken birkaç nokta daha vardır.

Topluluk beklentilerini belirleme

ve README.md gibi CONTRIBUTING.md dosyalar, kurumsal bağlamınıza sahip olmayan kişilere sunulduğundan daha da önemlidir. Netlik sağlamak için şirket dışındaki birinin perspektifinden değerlendirilmeleri gerekir.

Ayrıca kullanım kurallarınız, ifade edilecek önemli bir ilkedir. Standart, deponuzun köküne bir CODE_OF_CONDUCT.md dosya eklemek ve bunu topluluğunuzdaki katılımcılardan beklenen davranışı açıklamak için kullanmaktır. Kuruluşunuzdaki birden çok grup, hukuk ekibiniz de dahil olmak üzere bu belgeyi gözden geçirmelidir. Neyse ki, başlamak için birçok standart davranış kuralları vardır. Birçok proje bu kuralları değişiklik olmaksızın olduğu gibi kullanır. Açık kaynak kullanım kuralları kılavuzundan daha fazla bilgi edinin.

Çalışanları, bir deponun bakımını yapmaya hazırlama

Çalışanlar açık kaynak topluluğuyla çalışma deneyimine sahip olmayabilir. Hazırlanmalarına yardımcı olmak için şirketin, başlamadan önce herkesin bilmesi gereken önemli şeyleri kapsayan bir dizi kılavuz sunması önerilir. Bu kılavuzlar, düzenli olarak korunan ve yalnızca şirket çalışanları tarafından erişilebilen bir iç depoya veya portala gönderilmelidir. Aşağıdaki kılavuzlar en önemli kılavuzlardan birkaçıdır:

  • Bir proje adayının açık kaynaklı olup olmayacağına karar verilmesi için çerçeve sağlayan bir “Bu projeyi açık kaynaklı hale getirmeli miyiz?” kılavuzu. Bu kılavuz bir akış çizelgesi, soru kümesi veya dikkat edilecek noktalar listesi olarak yapılandırılabilir.

  • Açık kaynaklı bir projenin başlatılmasından önce ve sonra bir ekibin tamamlaması gereken tüm iş öğelerini içeren kurulum denetim listesi . Bu liste, projeyi açık kaynaklı hale getirmek için onay alınmasını, proje canlı yayına geçirilmeden önce hassas verilerin kaldırıldığından emin olmak için kod incelemelerini, adlandırma çakışması olmadığından emin olmak için ticari marka veya açık kaynaklı proje araması gibi işlemleri içermelidir.

  • Bakımcılardan doğrudan destek alınması gerektiğinde kuruluşunuzdaki önemli kişilere yönelik bir kişi listesi. Bu liste; yazılım güvenliği, site güvenliği, hukuk, halkla ilişkiler vb. ile ilgili kişileri içermelidir.

  • Başlangıç noktası olarak klonlanabilen başlangıç deposunun bağlantısı. Bu, basit bir BENİOKU dosyasını, lisansı, kullanım kurallarını, katkıda bulunma kılavuzunu ve şirketinizdeki her açık kaynaklı proje için gereken diğer destekleyici dosyaları içermelidir. Genel hedef kitleye yanlışlıkla gönderilmesini istemeyeceğiniz şeyleri içermemelidir.

  • Bakımcının depoyu iyi durumda tutma konusundaki sorumluluklarını açıklayan bir bakımcı kılavuzu. Bu sorumluluklar, depo belgelerinin güncel tutulmasını, sorunların ve çekme isteklerinin doğru kişilerin dikkatini zamanında çekmesini sağlamayı vb. içerir.

  • . Bu konular, rakipleri tartışmama gibi hassas iş konuları olabilir; veya en çok katkıda bulunanları uygun şekilde tanıma gibi daha fazla genel davranış konusuna bakın.

  • Yaygın soruların onaylanmış yanıtlarını sağlayan iç SSS. Bu liste özellikle şirketinizin açık kaynaklı bir programın bakımı sırasında tartışabileceği konularla ilgili yasal incelikler varsa kullanışlıdır.

  • Açık kaynak tüketimi veya katkıda bulunma için hukuk departmanı tarafından onaylanmış ya da reddedilmiş olan lisansları listeleyen lisans ilkesi.