Invalid date - Invalid date
"Agile" proqram təminatının hazırlanması
Mütəmadi olaraq dünyada və ölkəmizdə fəaliyyət göstərən uğurlu proqram təminatları (software) haqqında çıxışlar eşidirik.
Invalid date - Invalid date
Proqram təminatının hazırlanması asan olmalıdır.
Mütəmadi olaraq dünyada və ölkəmizdə fəaliyyət göstərən uğurlu proqram təminatları (software) haqqında çıxışlar eşidirik. Adətən layihənin baş qəhrəmanları proqram təminatının necə işlədiyini, nə qədər istifadəçi topladığını, nəyə xidmət etdiyini böyük həvəslə insanlara təqdim edirlər.
Ancaq biz nadir hallarda bu proqram təminatlarının necə hazırlandığı (software development) haqqında çıxışlar eşidirik. Çünki bu mərhələ texniki detallarla dolu, uzun zaman və xeyli maddi resurs tələb edən çətin bir prosesdir. Sırf bu mərhələdə yaranan çətinliklər milyonlarla ideayanın reallaşmamasına və tapşırıqların isə tamamlanmamış statusunda qalmasına səbəb olur.
Kiçik araşdırma aparmaqla ölkəmiz də daxil olmaqla dünya bazarında bu sahə həmişə aşağıdakı problemlərlə mübarizə aparıb.
mühəndis çatışmazlığı;
layihənin vaxtında təhvil verilməməsi;
tələsik yazılan qarışıq kodların (spagetti code) yeniliklərin icrasına mane olması;
layihənin ortasında müştərinin yeni dəyişiklik istəməsinin kabusa çevrilməsi;
tələbin düzgün başa düşülməməsi; istəyin düzgün başa salınmaması;
Agile tarixçəsi
Yuxarıda qeyd edilən problemlərin aşağı-yuxarı hər kəs üçün eyni olduğunu görən bir qrup ağıllı insan2001-ci ildə bir araya gələrək
necə edək ki proqramçını daha çox işlədək?
necə edək ki, müştəri daha məmnun qalsın?
necə edək ki daha az vaxt və resursla daha yaxşı məhsul hazırlaya bilək?
necə edək ki, özüdə nə istədiyini bilməyən müştərinin beynindəki məhsulu hazırlaya bilək? sualları cavab tapmağa çalışaraq Agile çevik proqram təminatının hazırlanması (agile software development) yanaşmasını yaratdılar. Yanaşma özündə 4 dəyər (agile manifesto) və 12 prinsipi (agile principles) birləşdirir.
Agile proqram təminatı nədir?
Agile hər hansı texnologiya və ya çərçivə (framework) deyil, metod və ya metadologiya dəstidir. Düşüncə tərzidir. Kamandanın necə daha effektiv işləməsi üçün nəzərdə tutulan yanaşmadır. 4 əsas dəyəri özündə birləşdirir.
Belə ki,
FƏRDLƏR VƏ ÜNSİYYƏT >>> proses və alətlərdən üstündür;
İŞLƏYƏN PROQRAM >>> mürəkkəb sənədləşmədən üstündür;
MÜŞTƏRİ İLƏ ƏMƏKDAŞLIQ >>> müqavilə razılaşmalarından üstündür;
DƏYİŞİKLİYƏ CAVAB VERMƏK >>> plana əməl etməkdən üstündür.
Sağ tərəfdə qeyd olunanlarını dəyərini qəbul etməklə, sol tərəfdə qeyd olunanları daha üstün tutur.
Ənənəvi model Agile metoduna qarşı (waterfall process vs Agile)
Ənənəvi proqram təminatının hazırlanması şəlalə metodu (waterfall process) deyilən proseslə icra edilirdi. Bu metodun iş prinsipi yuxarıdakı şəkildə sol tərəfdə qeyd edilmişdir. Yəni kamanda işləri ardıcıl olaraq görür. Əvvəl biznes kamandası ilkin araşdırma aparır, plan hazırlayır, texniki tapşırığı yazır. Bu işlər tamamlandıqdan sonra məlumatlar dizaynerlərə ötürür. Onlar dizaynı hazırlayır. Biznes proseslər hazırlanana qədər dizayn və proqramlaşdırma kamandası gözləmə mövqeyində gözləyir. Sonra kodlaşdırma, sonra test , sonra əsas mühiti tətbiqi və s. Prosesdə bir mərhələnin başlaması üçün əvvəlki mərhələnin tamamlanması gözlənilir.
Agile kamandasıda eyni işi görür. Ancaq bir işi görmək üçün digər işin bitməsini gözləmir, işlər paralel, iterasiya prosesindən istifadə edilməklə inkremental artım vasitəsilə icra edilir. İterasiya prosesi – vaxt keçdikcə nəyi isə daha yaxşı etmək üçün istifadə edilən prosesdir.
İterasiya böyük olmamalıdır, aydın və tez olmalıdır və əvvəlki proseslərin nəticəsi əsaslanmalıdır.
İnkremental artım – iterasiya prosesindən isifadə edərək proqram təminatının davamlı olaraq hazırlanması və inkişaf etdirilməsi prosesidir.
Agile proqram təminatının hazırlanmasının 4 dəyəri (agile manifesto) və 12 prinsipi (agile principles) var. Bu prinsip və dəyərlər haqqında növbəti yazılarımda ətraflı məlumat verəcəm.
Agile proqram təminatının hazırlanması üçün bir çox şirkətlər öz metod və freyvörqlərini yaradıblar. Bunlardan Scrum, Kanban, XP (eXtreme Programming) daha geniş yayılmışdır. Eyni zamanda hər bir şirkət öz Agile metodunu yarada bilər. İ
İşləriniz çevik və effektiv olması diləyi ilə!
©Sevinc İsrafilova
0 Comments