program şunu yapacaktır. şuna tıklayınca bu olacaktır şeklinde analiz dökümanı hazırlıyorlar.
bazı firmalarda (bankalar vs) bildiğin geliştirilmiş uygulamaları doğru yapılmış mı diye test ediyorlar. bazı firmalarda da müşteri ile görüşüp ne istediğini anladıktan sonra teknik analist veya developer a müşterinin gereksinimlerini belirten dökümanları hazırlıyorlar.
hayalini kurduğum işi yapıyorlar.
müşteriyle görüşülür, müşterinin istekleri alınır.
bu istekler incelenir.
maddeler halinde çıkarılır.
bu maddelerdeki işleri kim yapacak, neden yapacak, hangi durumlarda ne olması gerekiyor tekrar incelenir.
use caseler oluşturulur.
her bir use case için activity diagramlar oluşturulur.
daha detay istiyorsanız üç beş diyagram daha oluşturulur.
bu işler kaç kişi ile yapılmalı, ne kadar sürede yapılmalı bu düşünülür.
tabi bu aşamaya kadar incelemeden önce bir feasibility analiz de yapılmalıdır ki size kar getirmeyecek bir işi boşu boşuna yapmayın.
bu proje yapılırken hangi araçlar kullanılmalı, hangi dille yazılmalı falan filan gibi kararlar verilir.
ve projenin her adımında yapılanlar kontrol edilerek bir eksik/yanlış var mı diye bakılır, varsa yol yakınken giderilmeye bakılır. tabi bu durumda yapılan projenin hangi stratejiyle yapıldığı da önemlidir, yani siz eğer waterfall dediğim metodolojiyle bir proje yapıyorsanız bütün olasılıkları baştan analiz eder bütün caseleri çıkartır ondan sonra işe girişirsiniz, ama yok agile yapıyorsanız genel bir taslak çıkarır, bir iş yapılırken diğerinin planlarsınız. ve bir yanlış varsa geri dönüp "hop" dersiniz.
gibi gibi.