Yazılım projelerinde iş analizi, temel adımları ihtiyacın değerlendirilmesi, paydaşların katılımının sağlanması, gereksinimlerin netleştirilmesi, analiz edilmesi, izlenmesi ve çözümün değerlendirilmesidir.
Eğitmen ve Danışmanlarımızdan Sevgili Esin Güngör, sürekli tekrarlayan bu temel adımların analiz kısmına ilişkin, özellikle yazılım geliştirmeye dair deneyimlerini aşağıdaki yazısıyla bizimle paylaşıyor. Kendisine çok teşekkür ederiz.
YAZILIM PROJELERİNDE GEREKSİNİMLERİN ANALİZİ
Yazılım geliştirmede en önemli aşamalardan bir tanesi kuşkusuz analiz aşamasıdır. Ürüne ihtiyacı olan taraf müşteriniz ya da sponsorunuz olabilir. İhtiyaç sahibinin olmazsa olmaz nitelikteki temel fonksiyonlarını yazışmalarla anlayabilmek, anlatabilmek neredeyse imkansızdır. Analiz süreci el sıkışmalarla tamamlanır.
İster şelale metodolojisini kullanalım, ister agile yöntemleri, sonuçta en çok istediğimiz şey birbirimizi doğru anladığımıza emin olmaktır. İster gereksinimleri detaylı tanımlanmış uzun vadeli bir proje olsun, ister iterasyonlarla ilerleyeceğimiz zaman içinde yeni fonksiyonlar kazanacak bir ürün geliştirelim, bir versiyonu teslim ederken alacağımız onay yazılım projesinin tüm sürecini etkileyen bir sapmaya sebep olabilir.
Peki, bunu nasıl yönetebiliriz, sapmaların önüne nasıl geçebiliriz, ihtiyaç sahibinin memnuniyetini nasıl kazanabiliriz? Etik kurallardan bahsetmeye gerek yok, bunu hepimiz biliyoruz zaten. Biraz hayatımızı kolaylaştıracak yöntemlerden bahsedelim mi?
- Öncelikli hedef yazılım projesinin bütününü görmek, detayların tümü belirsiz olsa da, ana başlıklarda buluşmalı. Parçaların bütüne etkisini öngörmek kıymetli. Takımın her bireyi bütünü gördüğünde, her birinden tahmin edemeyeceğimiz katkılar da gelir. Her bir takım üyesinin katılımına şahit oluruz, ortak hedefin ne olduğunu belirler, mutabık kalırız. Artık aynı hedefe koşmak için bir zeminimiz vardır. Bu faaliyetler PMI İş Analizi Süreç Haritasında “Analiz” bileşeninin “Modelleri Yaratmak ve Analiz Etmek” süreciyle ilişkilidir. Bu faaliyetler sırasında Mind Map (Zihin Haritası), Use Case gösterimleri, bağlam diyagramları ve süreç haritaları gibi araç ve tekniklerden faydalanırız.
- Sıra analizini yaptığımız bölüme geldiğinde, (agile için iterasyon, şelale için modül ya da faz) artık detaya inme zamanı gelmiştir. İhtiyaç duyulan fonksiyonların detayları, kullanıcı ara yüz gereksinimleri, standartlar, yetkilendirme, dış ara yüzler, sürüm stratejileri vb. konularıyla ilgili olarak, ihtiyaç sahibi ile uzun zamanlar geçirmemiz gerekebilir. Birbirimiz doğru anlamak ve bunu planladığımız zaman içerisinde gerçekleştirmek temel hedefimiz. Görselleştirme, anlama sürecini hızlandırır, zaman kazandırır. Bu faaliyetlere gereksinimleri tanımlama ve detaylandırma adını veririz. Bu aşamada kullanabileceğimiz birkaç iş analizi araç ve tekniğini şöyle sayabiliriz: Kano Analysis, Story Mapping, Prototyping, Traceability Matrix, Data Dictionary, Entitiy Relationship, Definiton of Done, Risk Catalogue, SMART Technique
- Bu aşamaya gelene kadar yapılan iş analizi çalışmalarını ekip kendi kendine doğrulayabiliyor mu? Yapılan çalışmalar hazırlıklar ile uyumlu mu? Riskler gerçekleşti ve düzeltici faaliyetler devreye alındı mı? Biz işimizi doğru yaptık mı acaba? Müşteri onay aşamasına gelmeden önce değerlendirme yapılması, testler ve kontroller, proje zaman döngüsüne uyumu destekler. Çalışmalarımızı doğrularken onaya yaklaşıyoruzdur aslında Bu faaliyetlere de “gereksinimleri doğrulama” adını veririz. Doğrulamada kullanabileceğimiz birkaç araç ve teknik: Delphi, Treacebility Matrix, Test Secenerios, Check Lists, Quality Checks.
- Bir önceki aşamada başarılıysak, iş ihtiyaçları ile uyumlu bir aşamada olduğumuzu gördüysek, işler yolunda demektir. Onay için müşteri ile yapılan kontrollerde, hazırladığımız test senaryoları en büyük destekçimiz olacaktır. İzlenebilirlik Matrisi ile hangi ihtiyacı nasıl karşıladığımı görebiliriz, gösterebiliriz. Ama iş analizinin sonraki aşamaları için hala değerlendirme yapma, yol haritamızı gözden geçirme ihtiyacımız, proje devam ettiği sürece olacaktır.
İş analizi sürecinde kullanacağımız teknikler sınırsız, bahsettiklerim sadece bu süreçte bizi destekleyecek yaklaşımlardan bir kısmını oluşturuyor. Birbirimizi doğru anlıyor muyuz, doğru çıktıları oluşturabiliyor muyuz, hedeflediğimiz değeri katabildik mi soruları her aşamada kendimize soracağımız sorular aslında. Sayfalarca yazmak yerine çizmek benim tecrübelerimde her zaman kolaylaştırıcı bir yol olmuştur. Gülen yüzlerle el sıkıştığımız projeler dilerim. Sevgilerimle.
Yazar: Esin Güngör
İş Analizi Eğitimlerimiz için https://liderlerveprojeler.com.tr/is-analizi-egitimleri/
Daha fazlası için bizimle iletişime geçin.