infolightbulb_outlinenew_releasesreportwarning

Özgür Yazılımların Sosyal Yapısı ve Proje Yönetimi

Hakan Uygun

Sunum Kapsamı

  • Özgür Yazılım Nedir?

  • Proje Yönetimi

  • Özgür Yazılım Farkı

Özgür Yazılım Nedir?

  • Kullanım Özgürlüğü

  • Değiştirme Özgürlüğü

  • Paylaşma Özgürlüğü

Bir yazılıma özgürlüğünü sağlayan lisansıdır!

Kim Neden Özgür Yazılım Üretir

  • Bireyler : Richard Stallman, Linus Torvalds v.b.

  • Topluluklar, Vakıflar, Kamu Kurumları : OSDL, Apache v.b.

  • Büyük Şirketler : RedHat, IBM, Google v.b.

  • Küçük Şirketler : KnowledgeTree Inc, Özgür Yazılım A.Ş. v.b.

Proje Başarısı

BT projelerinin %74’ü başarısız ya da maliyet/zaman hedeflerini aşıyor.

BT projelerinin %51’i bütçesini %200 oranında aşıyor ve hedeflenen özelliklerin %75’ini karşılayabiliyor.

— Gartner Araştırması

Yazılım Proje Metodları

  • Genel Model

    • İhtiyaç Belirleme

    • Tasarım

    • Kodlama

    • Yayınlama

  • Şelale ( Waterfall )

  • Yineleme ( Incremental )

  • Çevik ( Agile )

Geliştirme Modeli

Kapalı Geliştirme
  • Proje yönetimi kolay

  • Küçük geliştirici topluluğu

  • Net iş tanımları

Açık Geliştirme
  • Proje yönetimi zor

  • Katkıcı(!) oranı yüksek

  • Test süreçleri daha hızlı

Topluluk Yönetimi

  • Erişilebilir olun!

  • Web Sitesi

  • E-posta listeleri

  • Hata takip sistemi

  • IRC, Jabber, Twitter v.b.

Topluluk Yönetimi ( Geliştirici )

Geliştirici Topluluğu
  • İyi bir geliştirici topluluğu tesadüfen oluşmaz

  • Proje kurucusu, proje lideri olmak zorunda değil

  • Yetki ve iş bölümü

  • Fazla yük taşımayın!

Fork!
  • Mümkünse yapmayın

  • Çok zorlamayın fork gelir!

Topluk Yönetimi ( Kullanıcı )

  • İhtiyaçları en iyi kullanıcılar bilirler

  • İyi bir kullanıcı topluluğu projenin başarısı için en kritik elementtir

  • Kullanıcılar teknik kişiler değildir

  • Kullanıcılar da katkı verebilir

    • Sorun Giderme

    • Belgeleme

    • Test ve Hata Bildirimi

Sürüm Yönetimi

Çabuk yayınla, sık yayınla
Sürüm Modelleri
  • Geliştirici sürümü ( günlük, haftalık v.b. )

  • Deneme sürümü ( alfa, beta, rc v.b. )

  • Kararlı sürüm

Belgeleme

Kod Belgeleme
  • Yeni geliştiriciler kazandırır

  • Kod yönetimini kolaylaştırır

Kullanıcı kılavuzu
  • Uygulamanızın kullanımını kolaylaştırır

  • Topluluk yönetimini kolaylaştırır ( RTFM )

Araçlar

  • Özgür yazılım için özgür araçlar kullanın

    Bitkeeper - Git
    Jira - Redmine
  • Çözüm için doğru araçları seçin

    OpenGL ile veri tabanı uygulaması yazmayın
  • Ekibin en hızlı kullanmaya balayabileceği araçları seçin

Kralın şarabından içen, kralın baş ağrısını çeker!

Ekosistem

  • Özgür yazılımdan para kazanmak ayıp değildir!

  • Özgür yazılımlar ancak ekonomik destek varsa yaşarlar…​

RMS ekosistem terimine karşı!

İş Modelleri

Özgür yazılımlara özel bir iş modeli yok
  • Kurulum, Eğitim Hizmetleri

  • İşletme Hizmetleri

  • Danışmanlık ve destek Hizmetleri

  • Özel Çözümler

Teşekkürler

Kopya Sorular
  • Türkiye’de başarılı özgür yazılım projeleri var mı?

  • Türkiye’de özgür Yazılım geliştiren firma var mı?