Proqramın həyat dövrü konsepsiyası. Proqramın həyat dövrü

Sözdə başa düşmədən proqram təminatının inkişafı mümkün deyil həyat dövrü proqramlar. Adi istifadəçinin bunu bilməsi lazım olmaya bilər, lakin əsas standartları öyrənmək arzuolunandır (bunun nə üçün lazım olduğu daha sonra deyiləcək).

Formal mənada həyat dövrü nədir?

Hər hansı birinin həyat dövrü ərzində, inkişaf mərhələsindən başlayaraq seçilmiş tətbiq sahəsində istifadədən tamamilə imtina anına qədər, tətbiqin istifadədən tamamilə çıxarılmasına qədər mövcudluğunu başa düşmək adətdir.

danışır sadə dil, proqramlar, verilənlər bazaları və ya hətta əməliyyat sistemləri şəklində informasiya sistemləri yalnız verilənlər və onların təqdim etdiyi imkanlar uyğun olduqda tələb olunur.

Hesab edilir ki, həyat dövrünün tərifi heç bir şəkildə əməliyyatda ən qeyri-sabit olan beta versiyaları kimi tətbiqləri sınaqdan keçirmək üçün tətbiq edilmir. Proqram təminatının həyat dövrü özü bir çox amillərdən asılıdır, bunlar arasında əsas rollardan birini proqramın istifadə olunacağı mühit oynayır. Bununla belə, ayırd etmək olar ümumi şərtlər və şərtlər həyat dövrü konsepsiyasının müəyyən edilməsində istifadə olunur.

İlkin Tələblər

  • problemin formalaşdırılması;
  • gələcək proqram təminatının sistemə qarşılıqlı tələblərinin təhlili;
  • dizayn;
  • proqramlaşdırma;
  • kodlaşdırma və kompilyasiya;
  • sınaq;
  • sazlama;
  • həyata keçirilməsi və dəstəklənməsi proqram məhsulu.

Proqram təminatının hazırlanması yuxarıda qeyd olunan bütün mərhələlərdən ibarətdir və onlardan ən azı biri olmadan həyata keçirilə bilməz. Lakin bu cür proseslərə nəzarət etmək üçün xüsusi standartlar müəyyən edilir.

Proqram təminatının həyat dövrü prosesinin standartları

Bu cür proseslər üçün şərtləri və tələbləri əvvəlcədən müəyyən edən sistemlər arasında bu gün yalnız üç əsası qeyd etmək olar:

  • QOST 34.601-90;
  • ISO/IEC 12207:2008;
  • Oracle CDM.

İkinci beynəlxalq standart üçün rus analoqu var. Bu sistemlər və proqram mühəndisliyi üçün cavabdeh olan GOST R ISO / IEC 12207-2010-dır. Ancaq həyat dövrü proqram təminatı hər iki qaydada təsvir olunan , mahiyyətcə eynidir. Bu olduqca sadə izah olunur.

Proqram təminatı və yeniləmələrin növləri

Yeri gəlmişkən, hazırda məlum olan multimedia proqramlarının əksəriyyəti üçün onlar əsas konfiqurasiya parametrlərinin saxlanması vasitəsidir. Bu tip proqram təminatının istifadəsi, əlbəttə ki, kifayət qədər məhduddur, lakin eyni media pleyerləri ilə işləməyin ümumi prinsiplərini başa düşmək zərər vermir. Və buna görə.

Əslində, onlar yalnız pleyerin özü versiyası və ya kodeklər və dekoderlərin quraşdırılması üçün yeniləmə müddəti səviyyəsində proqram təminatının həyat dövrünə malikdirlər. Audio və video transkoderlər hər hansı bir audio və ya video sisteminin vacib atributlarıdır.

FL Studio əsasında nümunə

Əvvəlcə virtual studio-sequencer FL Studio Fruity Loops adlanırdı. İlkin modifikasiyada proqram təminatının həyat dövrü başa çatıb, lakin tətbiq bir qədər dəyişdirilib və indiki formasını alıb.

Həyat dövrünün mərhələləri haqqında danışırıqsa, əvvəlcə vəzifənin qoyulması mərhələsində bir neçə məcburi şərt qoyuldu:

  • Yamaha RX kimi ritm maşınlarına bənzər nağara modulunun yaradılması, lakin studiyalarda canlı olaraq qeydə alınmış birdəfəlik nümunələrdən və ya WAV ardıcıllıqlarından istifadə etməklə;
  • Windows əməliyyat sistemlərinə inteqrasiya;
  • layihəni WAV, MP3 və OGG formatlarında ixrac etmək imkanı;
  • Fruity Tracks əlavə tətbiqi ilə layihə uyğunluğu.

İnkişaf mərhələsində C proqramlaşdırma dillərinin alətlərindən istifadə edilmişdir. Lakin platforma kifayət qədər primitiv görünürdü və son istifadəçiyə lazımi səs keyfiyyətini vermirdi.

Bu baxımdan, sınaq və sazlama mərhələsində tərtibatçılar Alman korporasiyasının Steinberg yolunu tutmalı və əsas səs sürücüsünə olan tələblərdə Tam Dupleks rejimi dəstəyini tətbiq etməli idilər. Səsin keyfiyyəti yüksəldi və real vaxt rejimində tempi, səs tonunu dəyişdirməyə və əlavə FX effektləri tətbiq etməyə imkan verir.

Bu proqram təminatının həyat dövrünün sonu birincinin buraxılması hesab olunur rəsmi versiya FL Studio, əcdadlarından fərqli olaraq, audio treklərin və MIDI treklərinin qeyri-məhdud əlavə edilməsi ilə virtual 64 kanallı qarışdırma konsolunda parametrləri redaktə etmək imkanı ilə artıq tam hüquqlu sequencer interfeysinə malik idi.

Bu məhdud deyildi. Layihənin idarə edilməsi mərhələsində bir dəfə Steinberg tərəfindən hazırlanmış VST formatında (əvvəlcə ikinci, sonra üçüncü versiya) plaginləri birləşdirmək üçün dəstək təqdim edildi. Kobud desək, VST-host-u dəstəkləyən istənilən virtual sintezator proqrama qoşula bilər.

Təəccüblü deyil ki, tezliklə hər hansı bir bəstəkar "dəmir" modellərin analoqlarından, məsələn, bir vaxtlar məşhur olan Korg M1-in tam səs dəstlərindən istifadə edə bilər. Daha çox. Addictive Drums və ya universal Kontakt plug-in kimi modulların istifadəsi peşəkar studiyalarda bütün artikulyasiya çalarları ilə qeydə alınmış real alətlərin canlı səslərini təkrarlamağa imkan verdi.

Eyni zamanda, tərtibatçılar Tam Dupleks rejimindən yuxarı baş və çiyinlər olduğu ortaya çıxan ASIO4ALL sürücüləri üçün dəstək yaratmaqla maksimum keyfiyyət əldə etməyə çalışdılar. Müvafiq olaraq, bit sürəti də artdı. Bu günə qədər ixrac edilən audio faylın keyfiyyəti 192 kHz seçmə sürətində 320 kbps ola bilər. Bu peşəkar səsdir.

İlkin versiyaya gəldikdə, onun həyat dövrünü tamamilə bitmiş adlandırmaq olar, lakin belə bir bəyanat nisbidir, çünki tətbiq yalnız adını dəyişib və yeni xüsusiyyətlər qazanıb.

İnkişaf perspektivləri

Proqram təminatının həyat dövrünün hansı mərhələləri artıq aydındır. Ancaq bu cür texnologiyaların inkişafını ayrıca qeyd etmək lazımdır.

Söz yox ki, hər hansı bir proqram tərtibatçısı bazarda bir neçə il qalma ehtimalı az olan tez keçəcək məhsul yaratmaqda maraqlı deyil. Gələcəkdə hər kəs onun uzunmüddətli istifadəsinə baxır. Buna müxtəlif yollarla nail olmaq olar. Ancaq, bir qayda olaraq, demək olar ki, hamısı proqramların yeniləmələrinin və ya yeni versiyalarının buraxılışına düşür.

Hətta Windows vəziyyətində belə tendensiyaları adi gözlə görmək olar. Bu gün 3.1, 95, 98 və ya Millenium modifikasiyaları kimi sistemlərdən istifadə edən ən azı bir istifadəçinin olması ehtimalı azdır. Onların həyat dövrü XP versiyasının buraxılmasından sonra başa çatdı. Lakin NT texnologiyalarına əsaslanan server versiyaları hələ də aktualdır. Hətta bu gün Windows 2000 nəinki çox müasirdir, hətta bəzi quraşdırma və ya təhlükəsizlik parametrlərində ən son inkişafları üstələyir. Eyni şey NT 4.0 sisteminə, eləcə də Windows Server 2012-nin xüsusi modifikasiyasına aiddir.

Lakin bu sistemlərlə bağlı dəstək hələ də ən yüksək səviyyədə elan edilir. Lakin sensasiyalı Vista öz dövründə açıq şəkildə dövrünün enişini yaşayır. Nəinki yarımçıq qaldı, həm də özündə o qədər çox səhvlər və təhlükəsizlik sistemində boşluqlar var idi ki, yalnız belə bir qarşısıalınmaz həllin proqram təminatı bazarına necə buraxılacağını təxmin etmək olar.

Amma hər hansı bir tipli proqram təminatının (nəzarət və ya tətbiqi) hazırlanmasının bir yerdə dayanmamasından danışsaq, bu, yalnız mümkündür.Axı, bu gün bu, təkcə kompüter sistemlərinə deyil, həm də ona aiddir. mobil cihazlar tətbiq olunan texnologiyalar çox vaxt kompüter sektorunu qabaqlayır. Səkkiz nüvəyə əsaslanan prosessor çiplərinin ortaya çıxması - niyə ən yaxşı nümunə olmasın? Ancaq hər bir noutbuk belə bir təchizata malik olmaqla öyünə bilməz.

Bəzi əlavə suallar

Proqram təminatının həyat dövrünün başa düşülməsinə gəlincə, onun müəyyən bir zamanda başa çatdığını söyləmək olar, çox şərtlidir, çünki proqram məhsulları hələ də onları yaradan tərtibatçılar tərəfindən dəstəklənir. Daha doğrusu, sonluq müasir sistemlərin tələblərinə cavab verməyən və onların mühitində işləyə bilməyən köhnə tətbiqlərə aiddir.

Ancaq texnoloji tərəqqi nəzərə alınsa da, onların çoxu yaxın gələcəkdə qeyri-mümkün ola bilər. Bu zaman ya yeniləmələri buraxmaq, ya da əvvəlcə proqram məhsuluna daxil edilmiş bütün konsepsiyanı tamamilə yenidən nəzərdən keçirmək barədə qərar qəbul etməli olacaqsınız. Beləliklə, ilkin şərtlərin, inkişaf mühitinin, sınaqların və müəyyən bir sahədə mümkün uzunmüddətli tətbiqin dəyişdirilməsini əhatə edən yeni dövr.

Lakin bu gün kompüter texnologiyasında istehsalda istifadə olunan avtomatlaşdırılmış idarəetmə sistemlərinin (AKS) inkişafına üstünlük verilir. Xüsusi proqramlarla müqayisədə hətta əməliyyat sistemləri də itirir.

Eyni Visual Basic-ə əsaslanan mühitlər Windows sistemlərindən daha populyar olaraq qalır. Və biz ümumiyyətlə UNIX sistemləri üçün tətbiqi proqram təminatından danışmırıq. Eyni Birləşmiş Ştatların demək olar ki, bütün rabitə şəbəkələri yalnız onlar üçün işləyirsə, nə deyə bilərəm. Yeri gəlmişkən, Linux və Android kimi sistemlər də əvvəlcə bu platformada yaradılmışdır. Buna görə də, çox güman ki, UNIX digər məhsullarla müqayisədə daha çox perspektivə malikdir.

Ümumi əvəzinə

Əlavə etmək lazımdır ki, bu halda proqram təminatının həyat dövrünün yalnız ümumi prinsipləri və mərhələləri verilir. Əslində, hətta ilkin tapşırıqlar çox əhəmiyyətli dərəcədə fərqlənə bilər. Müvafiq olaraq, fərqlər digər mərhələlərdə də müşahidə oluna bilər.

Lakin proqram məhsullarının hazırlanması üçün əsas texnologiyalar onların sonrakı texniki xidməti ilə aydın olmalıdır. Qalanları üçün yaradılan proqram təminatının xüsusiyyətlərini, onun işləməli olduğu mühitləri, son istifadəçiyə və ya istehsala təqdim olunan proqramların imkanlarını və daha çox şeyləri nəzərə almaq lazımdır.

Bundan əlavə, bəzən həyat dövrləri inkişaf vasitələrinin uyğunluğundan asılı ola bilər. Məsələn, bəzi proqramlaşdırma dili köhnəlsə, heç kim onun əsasında proqramlar yazmayacaq və daha çox - onları istehsala nəzarətin avtomatlaşdırılmış sistemlərində həyata keçirməyəcək. Burada hətta proqramçılar deyil, dəyişikliklərə vaxtında reaksiya verməli olan marketoloqlar ön plana çıxır. kompüter bazarı. Və dünyada belə mütəxəssislər o qədər də çox deyil. Bazardan ayaqlaşa bilən yüksək ixtisaslı kadrlara ən çox tələbat yaranır. İT sahəsində müəyyən bir proqram məhsulunun uğuru və ya uğursuzluğu çox vaxt "boz kardinallar" adlanan onlardır.

Onlar proqramlaşdırmanın mahiyyətini həmişə dərk etməsələr də, bu sahədə qlobal tendensiyalar əsasında proqram təminatının həyat dövrü modellərini və onların istifadə müddətini aydın şəkildə müəyyən edə bilirlər. Effektiv idarəetmə çox vaxt daha nəzərə çarpan nəticələr verir. Bəli, ən azı PR texnologiyaları, reklam və s... İstifadəçinin hansısa proqrama ehtiyacı olmaya bilər, amma aktiv şəkildə reklam olunarsa, istifadəçi onu quraşdıracaq. Bu, artıq belə desək, şüuraltı səviyyədir (istifadəçinin özündən asılı olmayaraq, informasiyanın zehninə qoyulduğu 25-ci kadrın eyni təsiri).

Əlbəttə ki, bu cür texnologiyalar dünyada qadağandır, lakin bir çoxumuz onların hələ də istifadə oluna biləcəyini və müəyyən şəkildə şüuraltına təsir göstərə biləcəyini dərk etmirik. Xəbər kanallarının və ya İnternet saytlarının "zombifikasiyası" nə dəyərdir, daha güclü vasitələrin, məsələn, infrasəs ifşasının (bu, bir opera əsərində istifadə edilmişdir) istifadəsini qeyd etməmək, bunun nəticəsində insan qorxu və ya qeyri-adekvat hiss edə bilər. emosiyalar.

Proqram təminatına qayıdaraq, əlavə etmək lazımdır ki, bəzi proqramlar istifadəçinin diqqətini cəlb etmək üçün başlanğıcda səs siqnalından istifadə edir. Tədqiqatlar göstərir ki, bu cür proqramlar digər proqramlardan daha səmərəlidir. Təbii ki, ilkin olaraq hansı funksiyaya təyin olunmasından asılı olmayaraq, proqram təminatının həyat dövrü də artır. Və bu, təəssüf ki, bir çox tərtibatçı tərəfindən istifadə olunur, bu da bu cür metodların qanuniliyinə şübhə yaradır.

Amma bunu mühakimə etmək bizim işimiz deyil. Ola bilsin ki, yaxın gələcəkdə bu cür təhlükələri müəyyən etmək üçün alətlər hazırlansın. Hələ ki, bu, yalnız bir nəzəriyyədir, lakin bəzi analitiklərin və ekspertlərin fikrincə, əvvəllər praktik tətbiqçox az qalıb. Əgər onlar artıq insan beyninin neyron şəbəkələrinin surətlərini yaradırlarsa, onda mən nə deyə bilərəm?

Salam, əziz Xabrovitlər! Düşünürəm ki, əvvəllər proqram təminatının hazırlanması, tətbiqi və istifadəsi üçün hansı modellərin mövcud olduğunu, hazırda hansı modellərin əsasən istifadə edildiyini, niyə və əslində nə olduğunu xatırlamaq kimsə üçün maraqlı olacaq. Bu mənim kiçik mövzum olacaq.

Əslində, nədir proqram təminatının həyat dövrü- sistemin yaradılması və sonrakı istifadəsi prosesində baş verən hadisələr silsiləsi. Başqa sözlə desək, bu, proqram məhsulunun yaradılmasının ilk anından onun işlənib hazırlanması və tətbiqinin sonuna qədər olan vaxtdır. Proqram təminatının həyat dövrü modellər şəklində təqdim edilə bilər.

Proqram təminatının həyat dövrü modeli- proqram məhsulunun hazırlanması, istifadəsi və saxlanması zamanı həyata keçirilən fəaliyyət proseslərini və tapşırıqları ehtiva edən struktur.
Bu modelləri 3 əsas qrupa bölmək olar:

  1. Mühəndislik yanaşması
  2. Tapşırığın xüsusiyyətlərini nəzərə alaraq
  3. Müasir Sürətli İnkişaf Texnologiyaları
İndi birbaşa mövcud modelləri (alt sinifləri) nəzərdən keçirək və onların üstünlüklərini və mənfi cəhətlərini qiymətləndirək.

Kodlaşdırma və səhvlərin idarə edilməsi modeli

Universitet tələbələri üçün xarakterik olan tamamilə sadə model. Məhz bu modelə əsasən tələbələrin əksəriyyəti, deyək ki, laboratoriya işlərini inkişaf etdirir.
Bu model aşağıdakı alqoritmə malikdir:
  1. Problemin formalaşdırılması
  2. Performans
  3. Nəticənin yoxlanılması
  4. Lazım gələrsə, birinci nöqtəyə keçin
Model də dəhşətli köhnəlmiş. 1960-1970-ci illər üçün xarakterikdir, buna görə də nəzərdən keçirdiyimiz aşağıdakı modellərdən praktiki olaraq heç bir üstünlüyü yoxdur, lakin aşkar çatışmazlıqlar var. Birinci qrup modellərə aiddir.

Şəlalə Proqramının Həyat Dövrü Modeli (Şəlalə)

Alqoritm bu üsul diaqramda təqdim etdiyim , əvvəlki modelin alqoritmi ilə müqayisədə bir sıra üstünlüklərə malikdir, həm də bir sıra üstünlüklərə malikdir. ağırçatışmazlıqlar.

Üstünlüklər:

  • Ciddi müəyyən edilmiş qaydada layihə mərhələlərinin ardıcıl icrası
  • Hər mərhələdə məhsulun keyfiyyətini qiymətləndirməyə imkan verir
Dezavantajları:
  • Mərhələlər arasında əks əlaqənin olmaması
  • Proqram məhsulunun inkişafının real şərtlərinə uyğun gəlmir
Birinci qrup modellərə aiddir.

Aralıq İdarəetmə ilə Kaskad Modeli (Whirlpool)

Bu model alqoritm baxımından əvvəlki modelə demək olar ki, bərabərdir, lakin çox əhəmiyyətli çatışmazlıq yaradaraq, həyat dövrünün hər mərhələsi ilə bağlı rəylərə malikdir: İnkişaf xərclərinin 10 qat artması. Birinci qrup modellərə aiddir.

V modeli (test vasitəsilə inkişaf)

Bu model daha yaxındır müasir üsullar Bununla belə, alqoritmin bir sıra çatışmazlıqları var. Bu, Ekstremal Proqramlaşdırmanın əsas təcrübələrindən biridir.

Model əsaslı prototipin inkişafı

Bu model prototipləşdirmə və məhsul prototipinə əsaslanır.
prototipləşdirmə proqram təminatının həyat dövrünün ilkin mərhələlərində istifadə olunur:
  1. Aydın olmayan tələbləri aydınlaşdırın (UI prototipi)
  2. Bir sıra konseptual həllərdən birini seçin (ssenarilərin həyata keçirilməsi)
  3. Layihənin mümkünlüyünü təhlil edin
Protopipe təsnifatı:
  1. Üfüqi və şaquli
  2. Birdəfəlik və təkamül
  3. kağız və hekayə lövhələri
Üfüqi prototiplər - emal məntiqinə və verilənlər bazasına təsir etmədən yalnız UI modelləri.
şaquli prototiplər - memarlıq həllərinin yoxlanılması.
Birdəfəlik prototiplər - sürətli inkişaf üçün.
təkamülçü prototiplər təkamül sisteminin ilk yaxınlaşmasıdır.

Model ikinci qrupa aiddir.

Spiral proqram təminatının həyat dövrü modeli

Spiral Model aşağıdan yuxarıya və aşağıdan yuxarıya konsepsiyaların üstünlüklərini birləşdirmək üçün həm dizaynı, həm də artımlı prototipləşdirməni birləşdirən proqram təminatının inkişaf etdirilməsi prosesidir.

Üstünlüklər:

  • Sürətli nəticələr
  • Rəqabət qabiliyyətinin artırılması
  • Tələblərin dəyişdirilməsi problem deyil
Dezavantajları:
  • Səhnə tənzimlənməsinin olmaması
Üçüncü qrupa kimi modellər daxildir ekstremal proqramlaşdırma(XP), SCRUM, artan model(RUP), lakin mən onlar haqqında ayrı bir mövzuda danışmaq istərdim.

Diqqətiniz üçün təşəkkürlər!

Proqram təminatının həyat dövrü (LC) konsepsiyası proqram mühəndisliyində əsas anlayışlardan biridir. Həyat dövrü proqram təminatının yaradılması zərurəti haqqında qərar qəbul edildiyi andan başlayan və onun fəaliyyətdən tamamilə çıxarılması zamanı başa çatan müddət kimi müəyyən edilir.

ISO / IEC 12207 standartına uyğun olaraq, bütün həyat dövrü prosesləri üç qrupa bölünür (Şəkil 2.1).

Altında həyat dövrü modeli Proqram təminatı dedikdə bütün həyat dövrü ərzində icra ardıcıllığını və proseslərin, hərəkətlərin və tapşırıqların əlaqəsini müəyyən edən struktur başa düşülür. Bu, layihənin xüsusiyyətlərindən, miqyasından və mürəkkəbliyindən və sistemin yaradıldığı və işlədiyi konkret şəraitdən asılıdır. Proqram təminatının həyat dövrü adətən aşağıdakı mərhələləri əhatə edir:

1. Proqram təminatı tələblərinin formalaşması.

2. Dizayn.

3. İcra.

4. Sınaq.

5. İstifadəyə verilməsi.

6. İstismar və texniki xidmət.

7. İstismardan çıxarılması.

Hal-hazırda, proqram təminatının həyat dövrünün aşağıdakı əsas modelləri ən çox istifadə olunur:

a) kaskadlı və

b) spiral (təkamül).

Birincisi tək bir bütöv olan kiçik həcmli proqramlar üçün istifadə edilmişdir. Əsas xüsusiyyət şəlalə yaxınlaşması ondan ibarətdir ki, növbəti mərhələyə keçid yalnız cari mərhələ üzrə işlər tam başa çatdıqdan sonra həyata keçirilir və keçmiş mərhələlərə qayıdış yoxdur. Onun sxemi Şəkildə göstərilmişdir. 2.2.

Şəlalə modelindən istifadənin üstünlükləri aşağıdakılardır:

Hər mərhələdə layihə sənədlərinin tam dəsti formalaşır;

Görülən işlərin mərhələləri onların tamamlanma vaxtını və müvafiq xərcləri planlaşdırmağa imkan verir.

Belə bir model, inkişafın əvvəlində bütün tələblərin dəqiq şəkildə tərtib oluna biləcəyi sistemlər üçün istifadə olunur. Bunlara, məsələn, hesablama tipli məsələlərin əsasən həll olunduğu sistemlər daxildir. Həqiqi proseslər adətən iterativ xarakter daşıyır: sonrakı mərhələnin nəticələri çox vaxt əvvəlki mərhələlərdə hazırlanmış dizayn qərarlarında dəyişikliklərə səbəb olur. Beləliklə, Şəkil 1-də göstərilən ara idarəetmə modeli daha çox yayılmışdır. 2.3.

Kaskad yanaşmasının əsas çatışmazlığı nəticələrin əldə edilməsində əhəmiyyətli gecikmə və nəticədə istifadəçilərin dəyişən ehtiyaclarına cavab verməyən bir sistemin yaradılması riskinin kifayət qədər yüksək olmasıdır.

Bu problemlər həll olunur spiral həyat dövrü modeli (Şəkil 2.4). Onun əsas xüsusiyyəti ondan ibarətdir ki, tətbiqi proqramlar kaskad yanaşmada olduğu kimi dərhal deyil, metoddan istifadə edən hissələrdə yaradılır. prototipləşdirmə . Prototip fərdi funksiyaları və hazırlanmaqda olan proqram təminatının xarici interfeysini həyata keçirən işləyən proqram təminatı komponentidir. Prototiplərin yaradılması bir neçə iterasiyada - spiralın növbələrində həyata keçirilir.

Kaskad (təkamül) modeli Şəkil 2.5-də göstərilən diaqram şəklində təqdim edilə bilər.

Həyat dövrünün spiral modelinin tətbiqinin nəticələrindən biri sözdə metoddur sürətli tətbiq inkişafı , və ya RAD (Rapid Application Development). Bu metoda uyğun olaraq proqram təminatının həyat dövrü dörd mərhələdən ibarətdir:

1) tələblərin təhlili və planlaşdırılması;

2) dizayn;

3) icra;

4) həyata keçirilməsi.

Proqramların həyat dövrünün təhlili məzmunu aydınlaşdırmağa və mürəkkəb sistemlərin layihələndirilməsi üçün aşağıdakı prosesləri müəyyən etməyə imkan verir.

1) Strategiya;

2) Təhlil;

3) Dizayn;

4) İcra;

5) Test;

6) Giriş;

7) Əməliyyat və texniki dəstək.

Strategiya

Strategiyanın müəyyən edilməsi sistemin tədqiqini nəzərdə tutur. Sorğunun əsas vəzifəsi layihənin real miqyasını, məqsəd və vəzifələrini qiymətləndirmək, habelə subyekt və funksiyaların təriflərini yüksək səviyyədə əldə etməkdir. Bu mərhələdə yüksək ixtisaslı biznes analitikləri cəlb olunur, onların firma rəhbərliyinə daimi çıxışı olur. Bundan əlavə, sistemin əsas istifadəçiləri və biznes ekspertləri ilə sıx qarşılıqlı əlaqə gözlənilir. Bu cür qarşılıqlı əlaqənin əsas vəzifəsi sistem haqqında ən dolğun məlumat əldə etmək, müştərinin tələblərini birmənalı şəkildə başa düşmək və rəsmiləşdirilmiş formada alınan məlumatları sistem analitiklərinə ötürməkdir. Tipik olaraq, sistem haqqında məlumatı rəhbərlik, ekspertlər və istifadəçilərlə bir sıra söhbətlərdən (və ya seminarlardan) əldə etmək olar.

Strategiyanın müəyyənləşdirilməsi mərhələsinin nəticəsi aşağıdakıları aydın şəkildə ifadə edən bir sənəddir:

Müştəri layihəni maliyyələşdirməyə razılıq verərsə, ona konkret nə düşür;

Hazır məhsulu (iş qrafiki) əldə edə bildikdə;

Ona nə qədər başa gələcək (böyük layihələr üçün işlərin maliyyələşdirmə mərhələlərinin cədvəli).

Sənəddə təkcə xərclər deyil, həm də faydalar, məsələn, layihənin geri qaytarılma müddəti, gözlənilən iqtisadi effekt (əgər onu təxmin etmək olarsa) əks etdirməlidir.

Proqram təminatının həyat dövrünün nəzərdən keçirilən mərhələsi modeldə yalnız bir dəfə təmsil oluna bilər, xüsusən də model siklik quruluşa malikdirsə. Bu o demək deyil ki, tsiklik modellərdə strateji planlaşdırma birdəfəlik həyata keçirilir. Belə modellərdə strategiyanın və təhlilin müəyyənləşdirilməsi mərhələləri birləşmiş kimi görünür və onların ayrılması yalnız ilk mərhələdə, şirkət rəhbərliyi layihəyə başlamaq üçün fundamental qərar qəbul etdikdə mövcuddur. Ümumiyyətlə, strateji mərhələ müəssisənin idarə edilməsi səviyyəsində sənədin hazırlanmasına həsr olunur.

Təhlil mərhələsi biznes proseslərinin (əvvəlki mərhələdə müəyyən edilmiş funksiyalar) və onların həyata keçirilməsi üçün zəruri olan məlumatların (obyektlər, onların atributları və münasibətləri (əlaqələri)) ətraflı öyrənilməsini əhatə edir. Bu mərhələ məlumat modelini, növbəti dizayn mərhələsi isə məlumat modelini təqdim edir.

Strategiyanın müəyyən edilməsi mərhələsində sistem haqqında toplanan bütün məlumatlar təhlil mərhələsində rəsmiləşdirilir və dəqiqləşdirilir. Alınan məlumatların tamlığına, ardıcıllığına görə təhlilinə, habelə istifadə olunmamış və ya təkrarlanan məlumatların axtarışına xüsusi diqqət yetirilir. Bir qayda olaraq, müştəri ilk növbədə bütövlükdə sistem üçün deyil, onun ayrı-ayrı komponentləri üçün tələbləri formalaşdırır. Və bu konkret halda, proqram təminatının tsiklik həyat dövrü modellərinin üstünlüyü var, çünki müştəri tez-tez yeməklə ac qaldığından, zamanla təkrar təhlil tələb oluna bilər. Eyni mərhələdə sınaq planının zəruri komponentləri müəyyən edilir.

Analitiklər məlumatları bir-biri ilə əlaqəli iki formada toplayır və qeyd edirlər:

a) funksiyalar - biznesdə baş verən hadisələr və proseslər haqqında məlumat;

b) qurumlar - təşkilat üçün vacib olan və haqqında məlum olan şeylər haqqında məlumat.

Bunu edərkən, sistemin dinamikasını təsvir edən komponentlərin, məlumat axınlarının və həyat dövrlərinin diaqramları qurulur. Onlar daha sonra müzakirə olunacaq.

Dizayn

Dizayn mərhələsində məlumat modeli formalaşır. Dizaynerlər analiz məlumatlarını emal edir. Dizayn mərhələsinin son məhsulu verilənlər bazası sxemi (əgər layihədə varsa) və ya məlumat anbarı sxemi (ER modeli) və sistem modulunun spesifikasiyaları toplusudur (funksiya modeli).

Kiçik bir layihədə (məsələn, kurs işində) eyni insanlar analitiklər, dizaynerlər və tərtibatçılar kimi çıxış edə bilərlər. Yuxarıda sadalanan sxemlər və modellər, məsələn, ümumiyyətlə təsvir edilməmiş, qeyri-müəyyən şəkildə təsvir edilmiş, ardıcıl olmayan təsvir edilmiş sistem komponentləri və digər çatışmazlıqları tapmağa kömək edir, bu da potensial səhvlərin qarşısını almağa kömək edir.

Bütün spesifikasiyalar çox dəqiq olmalıdır. Sistemin sınaq planı da inkişafın bu mərhələsində yekunlaşdırılır. Bir çox layihələrdə dizayn mərhələsinin nəticələri bir sənəddə - sözdə texniki spesifikasiyada sənədləşdirilir. Eyni zamanda, UML dilindən geniş istifadə edilmişdir ki, bu da eyni vaxtda həm daha az təfərrüatlı təhlil sənədlərini (onların istehlakçıları istehsal menecerləridir), həm də dizayn sənədlərini (onların istehlakçıları inkişaf və sınaq qruplarının menecerləridir) əldə etməyə imkan verir. Bu dil daha sonra müzakirə olunacaq. UML-dən istifadə edərək qurulan proqram təminatı kod yaratmağı asanlaşdırır - ən azı sinif iyerarxiyası, həmçinin metodların kodunun bəzi hissələri (prosedurlar və funksiyalar).

Dizayn vəzifələri bunlardır:

Təhlilin nəticələrinə baxılması və onların tamlığının yoxlanılması;

Müştəri ilə seminarlar;

Layihənin kritik sahələrinin müəyyən edilməsi və onun məhdudiyyətlərinin qiymətləndirilməsi;

Sistemin arxitekturasının müəyyən edilməsi;

Üçüncü tərəf məhsullarının istifadəsi, o cümlədən inteqrasiya yolları və bu məhsullarla məlumat mübadiləsi mexanizmləri barədə qərar qəbul etmək;

Məlumat anbarının dizaynı: verilənlər bazası modeli;

Proses və kod dizaynı: inkişaf vasitələrinin yekun seçimi, proqram interfeyslərinin müəyyən edilməsi, sistem funksiyalarının onun modullarına uyğunlaşdırılması və modulun spesifikasiyalarının müəyyən edilməsi;

Test prosesi üçün tələblərin müəyyən edilməsi;

Sistemin təhlükəsizlik tələblərinin müəyyən edilməsi.

İcra

Layihəni həyata keçirərkən, tərtibatçılar qrupunu (qruplarını) əlaqələndirmək xüsusilə vacibdir. Bütün tərtibatçılar ciddi mənbə nəzarəti qaydalarına riayət etməlidirlər. Onlar texniki layihə aldıqdan sonra modulların kodunu yazmağa başlayırlar. Tərtibatçıların əsas vəzifəsi spesifikasiyanı başa düşməkdir: dizayner nə edilməli olduğunu yazır və tərtibatçı bunu necə edəcəyini müəyyənləşdirir.

İnkişaf mərhələsində dizaynerlər, tərtibatçılar və testçilər qrupları arasında sıx qarşılıqlı əlaqə var. İntensiv inkişaf vəziyyətində, tester sözün əsl mənasında tərtibatçıdan ayrılmazdır, əslində inkişaf komandasının üzvü olur.

Çox vaxt istifadəçi interfeysləri inkişaf mərhələsində dəyişir. Bu, modulların müştəriyə vaxtaşırı nümayiş etdirilməsi ilə bağlıdır. O, həmçinin məlumat sorğularını əhəmiyyətli dərəcədə dəyişə bilər.

İnkişaf mərhələsi sınaq mərhələsi ilə birləşdirilir və hər iki proses paralel olaraq davam edir. Səhvlərin izlənilməsi sistemi test edənlərin və tərtibatçıların hərəkətlərini sinxronlaşdırır.

Səhvlər prioritetlərə görə təsnif edilməlidir. Hər bir səhv sinfi üçün hərəkətlərin aydın strukturu müəyyən edilməlidir: “nə etməli”, “nə qədər təcili”, “nəticəyə görə məsuliyyət daşıyan”. Hər bir problem onun həllinə cavabdeh olan dizayner/developer/tester tərəfindən izlənilməlidir. Eyni şey modulların sınaq üçün hazırlanması və ötürülməsi üçün nəzərdə tutulmuş şərtlərin pozulduğu vəziyyətlərə də aiddir.

Bundan əlavə, modulların yığılması zamanı istifadə olunan hazır layihə modullarının və kitabxanaların depoları təşkil edilməlidir. Bu depo daim yenilənir. Yeniləmə prosesinə bir nəfər nəzarət etməlidir. Bir depo funksional sınaqdan keçmiş modullar üçün, ikincisi - keçid testindən keçmiş modullar üçün yaradılmışdır. Birincisi, layihələrdir, ikincisi, sistemin paylama dəstini yığmaq və nəzarət testlərini keçirmək və ya işin hər hansı bir mərhələsindən keçmək üçün müştəriyə nümayiş etdirmək artıq mümkün olan bir şeydir.

Test

Test qrupları layihənin inkişafının əvvəlində əməkdaşlığa cəlb oluna bilər. Adətən kompleks testlər ayrı bir inkişaf mərhələsinə ayrılır. Layihənin mürəkkəbliyindən asılı olaraq, səhvlərin yoxlanılması və düzəldilməsi layihə üzrə ümumi iş vaxtının üçdə birini, yarısını və daha çoxunu ala bilər.

Layihə nə qədər mürəkkəb olsa, aşağıdakı funksiyaları təmin edən səhv izləmə sisteminin avtomatlaşdırılmasına ehtiyac bir o qədər çox olacaq:

Səhv mesajının saxlanması (səhv hansı sistem komponentinə aiddir, onu kim tapıb, onu necə bərpa etmək olar, onu düzəltməyə kim cavabdehdir, nə vaxt düzəldilməlidir);

Yeni xətaların yaranması, sistemdə məlum olan xətaların statusunun dəyişməsi haqqında bildiriş sistemi (e-poçt bildirişləri);

Sistem komponentlərində mövcud səhvlər haqqında hesabatlar;

Səhv və onun tarixi haqqında məlumat;

Müəyyən kateqoriyaların səhvlərinə daxil olmaq qaydaları;

Son istifadəçi üçün səhv izləmə sisteminə məhdud giriş interfeysi.

Bu cür sistemlər bir çox təşkilati problemləri, xüsusən də səhvlərin avtomatik bildirilməsi məsələlərini öz üzərinə götürür.

Əslində, sistem testləri adətən bir neçə kateqoriyaya bölünür:

a) offline testlər modullar; onlar artıq sistem komponentlərinin inkişaf mərhələsində istifadə olunur və ayrı-ayrı komponentlərin səhvlərini izləməyə imkan verir;

b) keçid testləri sistem komponentləri; bu testlər inkişaf mərhələsində də istifadə olunur, onlar sistem komponentləri arasında düzgün qarşılıqlı əlaqəni və məlumat mübadiləsini izləməyə imkan verir;

c) sistem testi; sistemin qəbulu üçün əsas meyardır; bir qayda olaraq, bu, həm müstəqil testlər, həm də link və model testləri daxil olmaqla bir qrup testdir; belə bir test sistemin bütün komponentlərinin və funksiyalarının işini təkrarlamalıdır; onun əsas məqsədi sistemin daxili qəbulu və keyfiyyətinin qiymətləndirilməsidir;

d) qəbul imtahanı; onun əsas məqsədi sistemi müştəriyə təhvil verməkdir;

e) performans və yük testləri; bu testlər qrupu bir sistemə daxildir, sistemin etibarlılığını qiymətləndirmək üçün əsasdır.

Hər qrupa mütləq uğursuzluq simulyasiya testləri daxildir. Onlar komponentin, bir qrup komponentin və bütövlükdə sistemin aşağıdakı uğursuzluqlara reaksiyasını yoxlayır:

İnformasiya sisteminin ayrıca komponenti;

Sistem komponentləri qrupları;

Sistemin əsas modulları;

əməliyyat sistemi;

Sərt nasazlıq (elektrik kəsilməsi, sabit disklər).

Bu testlər informasiya sisteminin düzgün vəziyyətini bərpa etmək üçün alt sistemin keyfiyyətini qiymətləndirməyə imkan verir və sənaye istismarı zamanı nasazlıqların mənfi nəticələrinin qarşısını almaq üçün strategiyaların hazırlanması üçün əsas məlumat mənbəyi kimi xidmət edir.

İnformasiya sistemlərinin sınaq proqramının digər mühüm cəhəti test məlumat generatorlarının mövcudluğudur. Onlar sistemin funksionallığını, etibarlılığını və performansını yoxlamaq üçün istifadə olunur. İnformasiya sisteminin fəaliyyətinin işlənmiş məlumatın həcminin artımından asılılığının xüsusiyyətlərini qiymətləndirmək vəzifəsi məlumat generatorları olmadan həll edilə bilməz.

İcra

Sınaq əməliyyatı sınaq prosesini ləğv edir. Sistem nadir hallarda tamamilə daxil edilir. Bir qayda olaraq, bu, tədricən və ya təkrarlanan bir prosesdir (tsiklik həyat dövrü vəziyyətində).

İstismar ən azı üç mərhələdən keçir:

2) məlumatların toplanması;

3) layihə gücünə çatmaq (yəni istismar mərhələsinə faktiki keçid).

məlumat olduqca dar diapazonlu xətalara səbəb ola bilər: əsasən yükləmə zamanı məlumat uyğunsuzluğu və yükləyicilərin öz səhvləri. Onları müəyyən etmək və aradan qaldırmaq üçün məlumatların keyfiyyətinə nəzarət üsullarından istifadə olunur. Bu cür səhvlər mümkün qədər tez düzəldilməlidir.

Dövr ərzində məlumatların toplanması in məlumat Sistemiçox istifadəçi girişi ilə bağlı ən çox səhv aşkar edilmişdir. Düzəlişlərin ikinci kateqoriyası istifadəçinin interfeysdən razı qalmaması ilə bağlıdır. Eyni zamanda, tsiklik modellər və faza rəyi olan modellər xərcləri azalda bilər. Baxılan mərhələ həm də ən ciddi sınaqdır - müştəri qəbulu testi.

Sistemin layihə gücünə çatması yaxşı versiyada, bu kiçik səhvləri və nadir ciddi səhvləri tənzimləməkdir.

Əməliyyat və texniki dəstək

Bu mərhələdə tərtibatçılar üçün son sənəd texniki qəbul sertifikatıdır. Sənəddə sistemin saxlanması üçün lazımi işçi heyəti və tələb olunan avadanlıq, habelə məhsulun istismarının pozulması şərtləri və tərəflərin məsuliyyəti müəyyən edilir. Bundan əlavə, texniki dəstək şərtləri adətən ayrıca sənəd şəklində verilir.

Proqram təminatının həyat dövrü

Proqram təminatının dizayn metodologiyasının əsas anlayışlarından biri onun proqram təminatının həyat dövrü (proqram təminatının həyat dövrü) konsepsiyasıdır. Proqram təminatının həyat dövrü, onun yaradılması zərurəti barədə qərar qəbul edildiyi andan başlayan və onun istismardan tamamilə çıxarılması anında başa çatan davamlı bir prosesdir.

Proqram təminatının həyat dövrünü tənzimləyən əsas normativ sənəddir beynəlxalq standart ISO / IEC 12207 (ISO - Beynəlxalq Standartlaşdırma Təşkilatı - Beynəlxalq Standartlaşdırma Təşkilatı, IEC - Beynəlxalq Elektrotexniki Komissiyası - Beynəlxalq Elektrotexniki Komissiya). O, proqram təminatının hazırlanması zamanı tamamlanmalı olan prosesləri, fəaliyyətləri və tapşırıqları ehtiva edən həyat dövrü strukturunu müəyyən edir. Bu standartda Proqram təminatı (proqram məhsulu) kompüter proqramları, prosedurları və ola bilsin əlaqəli sənədlər və verilənlər toplusu kimi müəyyən edilir. Proses bəzi girişi çıxışa çevirən bir-biri ilə əlaqəli hərəkətlər toplusu kimi müəyyən edilir. Hər bir proses müəyyən vəzifələr və onların həlli üsulları, digər proseslərdən alınan ilkin məlumatlar və nəticələrlə xarakterizə olunur.

ISO/IEC 12207 standartına uyğun olaraq proqram təminatının həyat dövrünün strukturu üç proses qrupuna əsaslanır:

proqram təminatının həyat dövrünün əsas prosesləri (alınma, təchizat, inkişaf, istismar, texniki xidmət);

əsas proseslərin həyata keçirilməsini təmin edən köməkçi proseslər (sənədləşdirmə, konfiqurasiyanın idarə edilməsi, keyfiyyətin təminatı, yoxlama, sertifikatlaşdırma, qiymətləndirmə, audit, problemlərin həlli);

təşkilati proseslər (layihənin idarə edilməsi, layihə infrastrukturunun yaradılması, həyat dövrünün özünün müəyyən edilməsi, qiymətləndirilməsi və təkmilləşdirilməsi, təlim).

Proqram təminatının həyat dövrü modelləri

Həyat dövrü modeli- icra ardıcıllığını və həyat dövrü ərzində yerinə yetirilən mərhələ və mərhələlərin əlaqəsini müəyyən edən struktur. Həyat dövrü modeli proqram təminatının xüsusiyyətlərindən və sonuncunun yaradıldığı və işlədiyi şəraitin xüsusiyyətlərindən asılıdır. Əsas həyat dövrü modelləri aşağıdakılardır.

1. Kaskad modeli(XX əsrin 70-ci illərinə qədər) əvvəlki mərhələ başa çatdıqdan sonra növbəti mərhələyə ardıcıl keçidi müəyyən edir.

Bu model informasiya inteqrasiyası və uyğunluğu, proqram təminatı, texniki və təşkilati interfeys tələb etməyən ayrı-ayrı əlaqəli olmayan tapşırıqların avtomatlaşdırılması ilə xarakterizə olunur.

Ləyaqət: fərdi problemlərin həllində inkişaf vaxtı və etibarlılıq baxımından yaxşı performans.

Qüsur: uzun dizayn dövrü ərzində sistem tələblərinin dəyişkənliyinə görə böyük və mürəkkəb layihələrə tətbiq edilmir.

2. İterativ model(XX əsrin 70-80-ci illəri) “aşağıdan yuxarı” dizayn texnologiyasına uyğundur. Növbəti mərhələnin icrasından sonra əvvəlki mərhələlərə iterativ qayıtmağa imkan verir;


Model fərdi tapşırıqlar üçün əldə edilmiş dizayn həllərinin ümumi sistem həllərinə ümumiləşdirilməsini nəzərdə tutur. Bu halda, əvvəllər tərtib edilmiş tələblərə yenidən baxılmasına ehtiyac var.

Ləyaqət: layihəyə tez düzəlişlər etmək imkanı.

Qüsur:çox sayda iterasiya ilə dizayn müddəti artır, dizayn həlləri və sənədlərdə uyğunsuzluqlar olur və yaradılmış proqram təminatının funksional və sistem arxitekturasında qarışıqlıq yaranır. Köhnənin yenidən dizayn edilməsi və ya yeni sistemin yaradılması zərurəti icra və ya istismar mərhələsindən dərhal sonra yarana bilər.

3. Spiral model(20-ci əsrin 80-90-cı illəri) yuxarıdan aşağıya dizayn texnologiyasına uyğundur. Proqram təminatının genişləndirilməsinə imkan verən proqram prototipinin istifadəsini nəzərdə tutur. Sistemin dizaynı tələblərin dəqiqləşdirilməsindən proqram kodunun dəqiqləşdirilməsinə qədər olan yolu dövri olaraq təkrarlayır.

Sistemin arxitekturasının layihələndirilməsi zamanı ilk növbədə funksional altsistemlərin tərkibi müəyyən edilir və ümumsistem məsələləri həll olunur (inteqrasiya edilmiş verilənlər bazasının təşkili, məlumatların toplanması, ötürülməsi və toplanması texnologiyası). Sonra fərdi tapşırıqlar tərtib edilir və onların həlli üçün texnologiya hazırlanır.

Proqramlaşdırma zamanı əvvəlcə əsas proqram modulları, sonra isə ayrı-ayrı funksiyaları yerinə yetirən modullar hazırlanır. Əvvəlcə modullar bir-biri ilə və verilənlər bazası ilə qarşılıqlı əlaqədə olur, sonra isə alqoritmlər həyata keçirilir.

Üstünlüklər:

1. iterasiyaların sayının və nəticədə düzəldilməli olan səhvlərin və uyğunsuzluqların sayının azaldılması;

2. dizayn vaxtının azaldılması;

3. layihə sənədlərinin yaradılmasının sadələşdirilməsi.

Qüsur: sistem miqyaslı repozitoriya (ümumi dizayn verilənlər bazası) üçün yüksək keyfiyyət tələbləri.

Spiral model əsasdır sürətli proqram inkişaf texnologiyaları və ya gələcək sistemin son istifadəçilərinin onun yaradılması prosesində fəal iştirakını nəzərdə tutan RAD-texnologiyası (sürətli proqram inkişafı). İnformasiya mühəndisliyinin əsas mərhələləri aşağıdakılardır:

· İnformasiya strategiyasının təhlili və planlaşdırılması.İstifadəçilər mütəxəssis tərtibatçılarla birlikdə problem sahəsinin müəyyən edilməsində iştirak edirlər.

· Dizayn. Tərtibatçıların rəhbərliyi altında istifadəçilər texniki dizaynda iştirak edirlər.

· Dizayn. Tərtibatçılar 4-cü nəsil dillərdən istifadə edərək proqram təminatının işlək versiyasını tərtib edirlər;

· İcra. Tərtibatçılar istifadəçiləri yeni proqram mühitində işləmək üçün öyrədirlər.

Biz müəyyən etməklə başlamalıyıqProqram təminatının həyat dövrü(Software Life Cycle Model) proqram məhsulunun yaradılması haqqında qərar qəbul edildiyi andan başlayan və onun xidmətdən tamamilə çıxarıldığı anda başa çatan müddətdir. Bu dövr proqram təminatının yaradılması və inkişafı prosesidir.

Proqram təminatının həyat dövrü modelləri

Həyat dövrü modellər şəklində təqdim edilə bilər. Hal-hazırda ən çox yayılmışlar:kaskadlı, artımlı (aralıq idarəetmə ilə mərhələli model ) Və spiralhəyat dövrü modelləri.

Kaskad modeli

Kaskad modeli(ing. şəlalə modeli) həyat dövrü tələblərin təhlili, dizayn mərhələlərindən ardıcıl olaraq keçən axına bənzəyən proqram təminatının yaradılması prosesinin modelidir. həyata keçirmə, sınaq, inteqrasiya və dəstək.

İnkişaf prosesi müstəqil addımların sifarişli ardıcıllığından istifadə etməklə həyata keçirilir. Model hər bir sonrakı addımın əvvəlki addımın tamamlanmasından sonra başlamasını nəzərdə tutur. Modelin bütün mərhələlərində köməkçi və təşkilati proseslər və işlər, o cümlədən layihənin idarə edilməsi, qiymətləndirmə və keyfiyyətin idarə edilməsi, yoxlama və sertifikatlaşdırma, konfiqurasiyanın idarə edilməsi və sənədlərin hazırlanması həyata keçirilir. Addımların tamamlanması nəticəsində sonrakı mərhələlərdə dəyişdirilməsi mümkün olmayan ara məhsullar əmələ gəlir.

Həyat dövrü ənənəvi olaraq aşağıdakı əsaslara bölünürmərhələləri:

  1. Tələblərin təhlili,
  2. Dizayn,
  3. Kodlaşdırma (proqramlaşdırma),
  4. Test və sazlama,
  5. İstismar və texniki xidmət.

Modelin üstünlükləri:

  • inkişafın həyat dövrü ərzində tələblərin sabitliyi;
  • hər mərhələdə tamlıq və ardıcıllıq meyarlarına cavab verən layihə sənədlərinin tam dəsti formalaşır;
  • modelin addımlarının dəqiqliyi və başa düşülməsi və onun tətbiqinin sadəliyi;
  • məntiqi ardıcıllıqla yerinə yetirilən işlərin mərhələləri bütün işlərin tamamlanma vaxtını və müvafiq resursları (pul, maddi və insan) planlaşdırmağa imkan verir.

Modelin çatışmazlıqları:

  • tələblərin aydın formalaşdırılmasının mürəkkəbliyi və tam həyat dövrü ərzində onların dinamik dəyişməsinin qeyri-mümkünlüyü;
  • layihənin idarə edilməsində aşağı çeviklik;
  • inkişaf prosesinin xətti strukturunun ardıcıllığı, nəticədə ortaya çıxan problemlərin həlli üçün əvvəlki addımlara qayıtmaq xərclərin artmasına və iş qrafikinin pozulmasına səbəb olur;
  • aralıq məhsulun istifadəyə yararsızlığı;
  • unikal sistemlərin çevik modelləşdirilməsinin mümkünsüzlüyü;
  • inkişafın sonunda bütün nəticələrin eyni vaxtda inteqrasiyası səbəbindən tikinti ilə bağlı problemlərin gec aşkarlanması;
  • sistemin yaradılmasında kifayət qədər istifadəçi iştirakının olmaması - ən başlanğıcda (tələblərin hazırlanması zamanı) və sonunda (qəbul sınaqları zamanı);
  • istifadəçilər bütün inkişaf prosesinin sonuna qədər hazırlanmış məhsulun keyfiyyətinə əmin ola bilməzlər. Onların keyfiyyəti qiymətləndirmək imkanları yoxdur, çünki inkişafın hazır məhsulunu görə bilmirlər;
  • istifadəçinin sistemə tədricən öyrəşmək imkanı yoxdur. Öyrənmə prosesi proqram təminatı artıq işə salındıqda, həyat dövrünün sonunda baş verir;
  • hər bir mərhələ sonrakı hərəkətlərin yerinə yetirilməsi üçün ilkin şərtdir ki, bu da belə bir metodu analoqu olmayan sistemlər üçün riskli seçim edir, çünki. çevik modelləşdirməyə imkan vermir.

Əvvəlki addımlara qayıtmadan və ortaya çıxan problemləri aradan qaldırmaq üçün nəticələrini dəyişdirmədən PS-nin inkişafının mürəkkəbliyi səbəbindən Şəlalə Həyat Dövrü Modelini həyata keçirmək çətindir.

Kaskad Modelinin əhatə dairəsi

Kaskad modelinin əhatə dairəsinin məhdudlaşdırılması onun çatışmazlıqları ilə müəyyən edilir. Onun istifadəsi aşağıdakı hallarda ən təsirli olur:

  1. aydın, dəyişməz layihələr hazırlayarkənhəyat dövrü icra və texniki metodologiyalarla başa düşülən tələblər;
  2. əvvəllər tərtibatçılar tərəfindən hazırlanmış eyni tipli bir sistem və ya məhsulun qurulmasına yönəlmiş bir layihə hazırlayarkən;
  3. mövcud məhsulun və ya sistemin yeni versiyasının yaradılması və buraxılması ilə bağlı layihə hazırlayarkən;
  4. mövcud məhsulun və ya sistemin yeni platformaya köçürülməsi ilə bağlı layihə hazırlayarkən;
  5. bir neçə böyük inkişaf komandasını əhatə edən böyük layihələri həyata keçirərkən.

artan model

(aralıq idarəetmə ilə mərhələli model)

artan model(ing. artım- artım, artım) mərhələlərin xətti ardıcıllığı ilə proqram təminatının işlənməsini nəzərdə tutur, lakin bir neçə artımda (versiyada), yəni. Proqram təminatının İnkişafı Həyat Dövrünün sona çatdığı müddətcə planlaşdırılmış məhsul təkmilləşdirmələri ilə.


Proqram təminatının inkişafı mərhələlər arasında əks əlaqə dövrələri ilə iterasiyalarda həyata keçirilir. Mərhələlərarası düzəlişlər müxtəlif mərhələlərdə inkişaf nəticələrinin faktiki qarşılıqlı təsirini nəzərə almağa imkan verir, mərhələlərin hər birinin ömrü bütün inkişaf dövrü ərzində uzadır.

Layihə üzərində işin əvvəlində sistem üçün bütün əsas tələblər müəyyən edilir, daha çox və daha az vacib olanlara bölünür. Bundan sonra sistemin inkişafı artımlı əsaslarla həyata keçirilir ki, tərtibatçı proqram təminatının hazırlanması zamanı əldə etdiyi məlumatlardan istifadə edə bilsin. Hər bir artım sistemə müəyyən funksionallıq əlavə etməlidir. Bu halda, buraxılış ən yüksək prioritet olan komponentlərdən başlayır. Sistemin hissələri müəyyən edildikdə, birinci hissəni götürün və bunun üçün ən uyğun prosesdən istifadə edərək detallaşdırmağa başlayın. Eyni zamanda, bu işin hazırkı tələblər toplusunda dondurulmuş digər hissələrə olan tələbləri dəqiqləşdirmək mümkündür. Lazım gələrsə, daha sonra bu hissəyə qayıda bilərsiniz. Hissə hazırdırsa, müştəriyə təhvil verilir, o, öz işində istifadə edə bilər. Bu, müştəriyə aşağıdakı komponentlər üçün tələbləri aydınlaşdırmağa imkan verəcəkdir. Sonra sistemin növbəti hissəsini inkişaf etdirirlər. Bu prosesdə əsas addımlar sadəcə olaraq proqram təminatı tələblərinin bir hissəsini həyata keçirmək və bütün proqram təminatı tətbiq olunana qədər modeli bir sıra ardıcıl buraxılışlar üzərində təkmilləşdirməkdir.

Bu modelin həyat dövrü, yekun nəticənin nə olacağına dair aydın mənzərənin (həm sifarişçi, həm də tərtibatçı tərəfindən) olduğu mürəkkəb və mürəkkəb sistemlərin inkişafı üçün xarakterikdir. Versiya inkişafı müxtəlif səbəblərə görə həyata keçirilir:

  • müştərinin bütün bahalı layihəni dərhal maliyyələşdirmək imkanının olmaması;
  • tərtibatçının qısa müddətdə kompleks bir layihə həyata keçirməsi üçün lazımi resursların olmaması;
  • məhsulun son istifadəçilər tərəfindən mərhələli şəkildə həyata keçirilməsi və inkişafı üçün tələblər. Bütün sistemin bir anda tətbiqi onun istifadəçiləri arasında imtinaya səbəb ola bilər və yalnız yeni texnologiyalara keçid prosesini "yavaşlata bilər". Obrazlı desək, onlar sadəcə olaraq “böyük bir parçanı həzm edə bilməzlər, ona görə də onu əzib hissə-hissə vermək lazımdır”.

Üstünlüklərməhdudiyyətlərbu modelin (strategiya) kaskad (klassik həyat dövrü modeli) ilə eynidir. Lakin klassik strategiyadan fərqli olaraq, müştəri nəticələri daha tez görə bilir. Birinci versiyanın işlənib hazırlanması və həyata keçirilməsinin nəticələrinə əsasən, o, inkişaf üçün tələbləri bir qədər dəyişdirə, ondan imtina edə və ya yeni müqavilə bağlamaqla daha təkmil məhsulun hazırlanmasını təklif edə bilər.

Üstünlüklər:

  • dəyişən istifadəçi tələblərinə görə çəkilən xərclər azaldılır, şəlalə modeli ilə müqayisədə təkrar təhlil və sənədlərin toplanması əhəmiyyətli dərəcədə azalır;
  • görülən işlərlə bağlı müştəridən rəy almaq daha asandır - müştərilər hazır hissələr haqqında öz şərhlərini səsləndirə və artıq görülən işləri görə bilərlər. Çünki sistemin ilk hissələri bütövlükdə sistemin prototipidir.
  • müştəri proqram təminatını tez əldə etmək və mənimsəmək qabiliyyətinə malikdir - müştərilər sistemdən real faydaları şəlalə modeli ilə mümkün olduğundan daha tez əldə edə bilərlər.

Modelin çatışmazlıqları:

  • menecerlər prosesin gedişatını daim ölçməlidirlər. sürətli inkişaf vəziyyətində, hər bir minimal versiya dəyişikliyi üçün sənədlər yaratmağa dəyməz;
  • yeni komponentlər əlavə edildikdə sistemin strukturu pisləşməyə meyllidir - daimi dəyişikliklər sistemin strukturunu pozur. Bunun qarşısını almaq üçün tələb olunur Əlavə vaxt və refaktorinq üçün pul. Zəif struktur proqram təminatının sonradan dəyişdirilməsini çətinləşdirir və baha başa gəlir. Və kəsilmiş Proqram Həyat Cycle daha böyük itkilərə gətirib çıxarır.

Sxem yaranan dəyişiklikləri və proqram təminatı tələblərinin dəqiqləşdirilməsini dərhal nəzərə almağa imkan vermir. İnkişaf nəticələrinin istifadəçilərlə əlaqələndirilməsi yalnız işin hər bir mərhələsi başa çatdıqdan sonra planlaşdırılan nöqtələrdə həyata keçirilir və Ümumi Tələb olunanlar proqram təminatına onun yaradıldığı bütün müddət üçün texniki spesifikasiyalar şəklində təsbit edilir. Beləliklə, istifadəçilər çox vaxt real ehtiyaclarını ödəməyən proqram təminatı alırlar.

spiral modeli

Spiral model:Həyat dövrü - spiralın hər döngəsində məhsulun növbəti variantı yaradılır, layihənin tələbləri dəqiqləşdirilir, keyfiyyəti müəyyən edilir və növbəti növbənin işi planlaşdırılır. İnkişafın ilkin mərhələlərinə - təhlil və dizayna xüsusi diqqət yetirilir, burada müəyyən texniki həllərin mümkünlüyü sınaqdan keçirilir və prototiplərin yaradılması ilə əsaslandırılır.


Bu model həm dizaynı, həm də mərhələli prototipləşdirməni birləşdirən proqram təminatının inkişaf etdirilməsi prosesidir ki, həyat dövrünün ilkin mərhələlərini vurğulayır: təhlil və dizayn.Fərqli xüsusiyyət Bu model həyat dövrünün təşkilinə təsir edən risklərə xüsusi diqqət yetirir.

Təhlil və dizayn mərhələlərində prototiplər yaratmaqla texniki həllərin məqsədəuyğunluğu və müştəri ehtiyaclarının ödənilmə dərəcəsi yoxlanılır. Spiralın hər bir dönüşü sistemin işlək bir parçasının və ya versiyasının yaradılmasına uyğundur. Bu, layihənin tələblərini, məqsədlərini və xüsusiyyətlərini aydınlaşdırmağa, inkişafın keyfiyyətini müəyyən etməyə və spiralın növbəti növbəsinin işini planlaşdırmağa imkan verir. Beləliklə, layihənin təfərrüatları dərinləşdirilir və ardıcıl olaraq konkretləşdirilir və nəticədə sifarişçinin faktiki tələblərinə cavab verən ağlabatan variant seçilir və icraya gətirilir.

Spiralın hər döngəsində həyat dövrü - proqram təminatının hazırlanması prosesinin müxtəlif modelləri tətbiq oluna bilər. Son nəticə hazır məhsuldur. Model prototipləşdirmə modelinin imkanlarını birləşdirir vəşəlalə modeli. Təkrarlarla inkişaf sistem yaradılmasının obyektiv mövcud spiral dövrəsini əks etdirir. Hər mərhələdə işin natamam başa çatdırılması cari mərhələdə işin tam başa çatmasını gözləmədən növbəti mərhələyə keçməyə imkan verir. Əsas vəzifə sistem istifadəçilərinə mümkün qədər tez işləyə bilən məhsul göstərmək və bununla da tələblərin aydınlaşdırılması və əlavə edilməsi prosesini aktivləşdirməkdir.

Modelin üstünlükləri:

  • sistemin istifadəçilərinə işlək məhsulu tez göstərməyə imkan verir, bununla da tələblərin aydınlaşdırılması və əlavə edilməsi prosesini aktivləşdirir;
  • proqram təminatının hazırlanması zamanı tələblərin dəyişdirilməsinə imkan verir ki, bu da əksər inkişaflar, o cümlədən standart olanlar üçün xarakterikdir;
  • model çevik dizayn imkanını təmin edir, çünki o, kaskad modelinin üstünlüklərini təcəssüm etdirir və eyni zamanda eyni modelin bütün fazaları üzərində təkrarlamalara icazə verilir;
  • daha etibarlı və sabit sistem əldə etməyə imkan verir. Proqram təminatı inkişaf etdikcə, hər bir iterasiyada səhvlər və zəif cəhətlər tapılır və düzəldilir;
  • bu model istifadəçilərə planlaşdırma, risk təhlili, inkişaf, eləcə də qiymətləndirmə fəaliyyətlərinin icrasında fəal iştirak etməyə imkan verir;
  • müştəri riskini azaltmaq. Müştəri minimal maliyyə itkiləri ilə perspektivsiz layihənin hazırlanmasını başa çatdıra bilər;
  • İstənilən məhsulun yüksək keyfiyyətli olmasını təmin etmək üçün istifadəçilərdən tərtibatçılara rəy yüksək tezlikdə və modelin əvvəlində həyata keçirilir.

Modelin çatışmazlıqları:

  • layihə riski azdırsa və ya kiçik ölçülüdürsə, model bahalı ola bilər. Hər spiraldan sonra riskin qiymətləndirilməsi bahalıdır;
  • Modelin həyat dövrü mürəkkəb quruluşa malikdir, ona görə də onun tərtibatçılar, menecerlər və müştərilər tərəfindən tətbiqi çətin ola bilər;
  • spiral qeyri-müəyyən müddətə davam edə bilər, çünki hər bir müştərinin yaradılmış versiyaya cavabı layihənin tamamlanmasını gecikdirən yeni bir dövr yarada bilər;
  • çox sayda aralıq dövrlər əlavə sənədlərin işlənməsi ehtiyacına səbəb ola bilər;
  • modelin istifadəsi bahalı və hətta əlçatmaz ola bilər, çünki vaxt. planlaşdırma, yenidən hədəfləmə, risk təhlili və prototipləşdirmə üçün xərclər həddindən artıq ola bilər;
  • gələcək və inkişaf prosesini davam etdirməyə hazır olduğunuzu göstərən məqsədləri və mərhələləri müəyyən etmək çətin ola bilər

Spiral dövrün əsas problemi növbəti mərhələyə keçid anının müəyyən edilməsidir. Bunu həll etmək üçün mərhələlərin hər biri üçün vaxt məhdudiyyətləri təqdim olunur.həyat dövrü və bütün planlaşdırılan işlər tamamlanmasa belə, keçid plana uyğun davam edir.Planlaşdırmaəvvəlki layihələrdə əldə edilmiş statistik məlumatlar əsasında hazırlanmış və Şəxsi təcrübə tərtibatçılar.

Spiral modelin əhatə dairəsi

Spiral modelin istifadəsi aşağıdakı hallarda məqsədəuyğundur:

  • yeni texnologiyalardan istifadə etməklə layihələr hazırlayarkən;
  • məhsul və ya sistemlərin yeni seriyasını hazırlayarkən;
  • tələblərə əhəmiyyətli dəyişikliklər və ya əlavələr gözlənilən layihələri hazırlayarkən;
  • uzunmüddətli layihələrin həyata keçirilməsi üçün;
  • sistemin və ya məhsulun keyfiyyətinin və versiyalarının qısa müddət ərzində nümayiş etdirilməsini tələb edən layihələrin hazırlanması zamanı;
  • layihələr hazırlayarkən. bunun üçün risklərin qiymətləndirilməsi və həlli ilə bağlı xərclərin hesablanması zəruridir.