Ana içeriğe atla

Scrum Nedir?


Scrum günümüzde popüler olan Çevik Yazılım Geliştirme (Agile Software Development) Süreçlerinin bir türevidir. XP (Extreme Programming) gibi klasik bir SDLC (Software Development Life Cycle ) olarak algılanması yanlıştır. 1990 yılının başlarında geliştirilen Scrum bir SDLC olmayıp, bize bir Agile Framework (Çevik Altyapı) sunar. Yani sadece yazılım geliştirme süreçlerinde değil şirketin diğer tüm süreçlerinde kullanılabilir. Başarısı kanıtlanmış bir yazılım geliştirme yöntemi olup; Microsoft, Google, Facebook gibi şirketlerde kullanılmaktadır. Değişen gereksinimlerle daha etkin bir yoldan başa çıkmak, çalışanların motivasyonunu artırmak ve müşteri ile proje arasındaki iletişimi geliştirmek istiyorsak Scrum kullanılması kaçınılmazdır.

  Product Backlog: İhtiyaçların tutulduğu bir listedir. Bu listede her bir ihtiyacın önceliği, amacı, detayları ve maliyeti belirlenir (Örn: Univera uniVIP yazılımı).

Sprint Backlog: Belirli bir versiyon planı ortaya çıktıktan sonra o planda yapılacak işlerin olduğu liste ortaya çıkar. O listedeki işler için 4 haftalık Sprint’ler koşulur. Her sprint sonrasında potansiyel olarak dışarıya verilebilecek bir increment çıkar.

Örn: XSoft 1.0 isimli ürünümüz için 4 aylık bir versiyon planı yaptığımızı farz edelim. Scrum mantığında XSoft 1.0 ürünü için 4 ayrı sprint koşulmalıdır (XSoft 1.1, XSoft 1.2, XSoft 1.3, XSoft 1.4) ve 4 ayrı increment çıkartılabilmelidir.

Scrum Team (Scrum Takımı): Adından da belli olacağı gibi ürünün geliştirilmesinden sorumlu olan takıma verilen isimdir. Ekibin tamamı 20 kişiden fazlaysa, ekip her biri 5 ila 20 kişiden oluşan küçük takımlara bölünür.

Product Owner (Ürün Yöneticisi): Projenin müşteri değerinden ve “Product Backlog” oluşmasından sorumlu olan roldür. Tüm proje sponsorlarıyla beraber “Product Backlog” içerisine hangi gereksinimlerin girmesini ve bu gereksinimlerin diğerlerine göre önceliğini kararlaştırır. Bunu yaparken teknik ekipten gereksinimler hakkında tahmini geliştirme süresi hakkında bilgi alabilir.

Scrum Master: Sprint süresince takımdan sorumludur ve esnek bir çalışma ortamı yaratmaya çaba gösterir. Proje mensuplarının sprint süresi boyunca optimal şekilde çalışabilmesi için her türlü gerekli ihtiyaçların sağlanmasından sorumludur.

İşleri son dakikaya veya son güne bırakmak Türklerin doğasında vardır :) Dolayısıyla düzenli geribildirim ve kısa dönemli planlamalarla hedefe ulaşmayı sağlayan bu yöntem bizler için biçilmiş kaftandır :)


Deniz KILINÇ


Kaynaklar

[1] Scrum Alliance http://www.scrumalliance.org

Yorumlar

  1. Sanırım yazılım geliştirmek için kullanılan bir dil ?

    YanıtlaSil
  2. Merhaba bu tür projeler gerçekten çok güzel umarımprojeniz beklenen ilgiyi görür

    Web Tasarım Firma Sitesi site satın al

    YanıtlaSil
  3. Sanırım yazılım geliştirmek için kullanılan bir dil ?

    YanıtlaSil
  4. Blog'unuzu çok yakından takip ediyorum ve oldukça başarılı buluyorum. Mümkün olduğu sürece yazılarınızı okumaya çalışıyorum. Sizleri tebrik ediyor başarılarınızın devamını diliyorum.

    YanıtlaSil
  5. bizi Scrum konusunda bilgilendirdiğiniz için teşekkür ederiz.

    YanıtlaSil
  6. web sitenizi çok beğendim iyi paylaşımlar dilerim.

    site satın al

    YanıtlaSil
  7. paylaşım için teşekkürler..

    YanıtlaSil
  8. çok güzel ve net kaliteli bir yazı olmuş emeğinize teşekkürler..

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

UML ve Modelleme – Bölüm 4 (Class (Sınıf) Diyagramları)

Bir önceki makalemizde UML modellemede kullanılan ilk diyagram olan Use Case diyagramını incelemiştik. Bu makalemizde nesne tabanlı programlamada kullanılan sınıflar ve sınıfların arasındaki ilişkileri modelleyebileceğimiz diyagramlar olan Class(Sınıf) diyagramlarını inceleyeceğiz. UML’de sınıflar, nesne tabanlı programlama mantığı ile tasarlanmıştır. Sınıf diyagramının amacı bir model içerisinde sınıfların tasvir edilmesidir. Nesne tabanlı uygulamada, sınıfların kendi özellikleri (üye değişkenler), işlevleri (üye fonksiyonlar) ve diğer sınıflarla ilişkileri bulunmaktadır. UML’de sınıf diyagramlarının genel gösterimi aşağıdaki gibidir. Şekil 1. Class Diyagram Şekil1’de görüldüğü üzere bir dikdörtgeni 3 parçaya bölüyoruz. En üst bölüm sınıf adını, orta kısım özellik listesini (üye değişkenler) ve en son kısım, işlev listesini (üye fonksiyonlar) göstermektedir. Çoğu diyagramlarda alt iki bölüm çıkarılır. Genelde tüm özellik ve işlevler gösterilmemektedir. Ama

Yazılım Maliyet Tahmineleme Tecrübeleri

Yazılım mühendisliğinde maliyet hesabı her zaman problem olmuştur. "Bu iş kaç Adam/Gün tutar?" sorusuyla sıkça karşılaşıyoruz. Adam/gün veya Adam/ay ölçütleri bir kaynağın/kişinin belirtilen zaman dilimindeki iş gücü anlamına gelir. Tabi bu noktada yine kafa karışıklıkları başlar. 6 A/G'lik bir işi hızlandıralım diye 2 kişi ile yapmaya çalışsak ve kaynak/kod, modül, altyapı, insan vb. her bir şeyi bir kenara bıraksak, matematiksel basit formülle 6/2=3 A/G'de biter? Gerçek hayat böyle değil, öncelikle bunu anlamamız lazım. Hep şu örnek verilir; "Aynı bebeği 2 kadın birlikte daha kısa sürede doğurur mu?" Eğer bunun cevabı "Evet" ise (veya bir gün böyle bir durum ortaya çıkarsa), yazımı değiştirmem gerekecek:) Mevzu gerçekten derin...Maliyet hesabı; bulunduğunuz firmanın yazılım süreçlerini hangi methodlarla uyguladığına, ilgili işin o dönemdeki aciliyetine, (şirket yönetiminin baskısına:)) vb. bir çok duruma bağlı olabilir. Örneğin; bizim firmada e

UML ve Modelleme – Bölüm 3 (Use Case Diyagramlar)

Önceki iki makalemizde ( 1 , 2 ) UML’e genel olarak değinip ve modellemede kullanacağımız dokuz diyagram hakkında bilgiler vermiştik. Bu makalemizde Use Case diyagramından detaylı bahsedeceğiz. Öncelikle, genel Use case diyagramının tanımını hatırlayalım. “Bir kullanıcı ve bir sistem arasındaki etkileşimi anlatan senaryo topluluğudur.” Ivar Jacobson Senaryo tanımı için der ki: “Aktörle sistem arasında gerçekleştirilen, sonucunda aktöre farkedilir getirisi/ faydası oluşan etkileşimli diyalogdur. ” UML Use Case Diyagramları  sistemin işlevselliğini açıklamak amacıyla kullanılır. Sistemin birbirinden ayrı özelliklerinin detaylarını göstermekten ziyade, Use Case Diyagramlar, tüm mevcut işlevselliği göstermek için kullanılabilir. Buradaki en önemli noktalardan biri,   Use Case Diyagramlar temelde sequence diyagram ve akış diyagramlarından farklıdır. Use Case diyagramlar dört ana elemandan oluşmaktadır. Aktörler , Sistem (Proje kapsamını belirtir) , Use Caseler ve bunlar ara