პროგრამული უზრუნველყოფის განვითარების გზები. კიდევ ერთხელ შვიდი ძირითადი განვითარების მეთოდოლოგიის შესახებ. როდის გამოვიყენოთ V-მოდელი

Ანოტაცია: პროგრამული უზრუნველყოფის განვითარების პროცესის კონცეფცია. უნივერსალური პროცესი. მიმდინარე პროცესი. კონკრეტული პროცესი. სტანდარტული პროცესი. პროცესის გაუმჯობესება. გაყვანის/დაძაბვის სტრატეგიები. კლასიკური პროცესის მოდელები: ჩანჩქერის მოდელი, სპირალური მოდელი. ფაზები და აქტივობები.

ამ მოდელის უპირატესობა იყო თვითნებური ნაბიჯის უკან დაბრუნების შესაძლებლობის შეზღუდვა, მაგალითად, ტესტირებიდან ანალიზამდე, შემუშავებიდან მოთხოვნებზე მუშაობამდე და ა.შ. აღინიშნა, რომ ასეთმა დაბრუნებამ შეიძლება კატასტროფულად გაზარდოს პროექტის ღირებულება და მისი განხორციელების დრო. მაგალითად, თუ ტესტირების დროს აღმოჩენილია დიზაინის ან ანალიზის შეცდომები, მათი გამოსწორება ხშირად იწვევს სისტემის სრულ რედიზაინს. ამ მოდელმა დაუშვა მხოლოდ წინა საფეხურზე დაბრუნება, მაგალითად, ტესტირებიდან კოდირებამდე, პროგრამული უზრუნველყოფიდან ეს მოდელი აქტიურად გააკრიტიკეს შესაბამისი სტატიებისა და სახელმძღვანელოების თითქმის ყველა ავტორის მიერ. საყოველთაოდ მიღებულია, რომ ის არ ასახავს პროგრამული უზრუნველყოფის განვითარების მახასიათებლებს. ჩანჩქერის მოდელის უარყოფითი მხარეა:

არსებობს ორი ძირითადი განვითარების ბანაკი პროგრამული უზრუნველყოფა: აპლიკაციის შემუშავება და სისტემების განვითარება. აპლიკაციის შემუშავება ორიენტირებულია მომხმარებლების მოთხოვნილებების დაკმაყოფილების პროგრამების შექმნაზე. სისტემების განვითარება ფოკუსირებულია ოპერაციული სისტემების შექმნასა და შენარჩუნებაზე სიცოცხლის ციკლის გამოყენებით. სისტემების ევოლუცია ხშირად დაკავშირებულია ქსელის ფუნქციონირებასთან და მონაცემთა უსაფრთხოებასთან.

ასწავლე საკუთარ თავს პროგრამირების ენა. ნებისმიერს შეუძლია იდეების გამომუშავება, მაგრამ დეველოპერს შეეძლება ეს იდეები ხელშესახებ აქციოს. მაშინაც კი, თუ გსურთ მხოლოდ პროგრამული უზრუნველყოფის დიზაინის ასპექტებზე იმუშაოთ, უნდა გქონდეთ გარკვეული ცოდნა კოდირებასთან და შეძლოთ ძირითადი პროტოტიპების შექმნა. არსებობს პროგრამირების ენების უზარმაზარი მრავალფეროვნება, რომელთა სწავლებაც თავად შეგიძლიათ. ზოგიერთი ყველაზე სასარგებლო და მნიშვნელოვანი მოიცავს.

  • ფაზებისა და აქტივობების იდენტიფიცირება, რაც იწვევს განვითარების მოქნილობის დაკარგვას, კერძოდ, განმეორებითი განვითარების პროცესის მხარდაჭერის სირთულეს;
  • აქტივობის ფაზის სრული დასრულების მოთხოვნა, შედეგების დაფიქსირება დეტალური წყაროს დოკუმენტის სახით (დავალებები, პროექტის სპეციფიკაცია); თუმცა, პროგრამული უზრუნველყოფის განვითარების გამოცდილება აჩვენებს, რომ შეუძლებელია მოთხოვნების სრულად დასრულება, სისტემის დიზაინი და ა.შ. - ეს ყველაფერი ექვემდებარება ცვლილებას; და მიზეზები აქ არის არა მხოლოდ ის, რომ პროექტის გარემო არის მობილური, არამედ ის, რომ შეუძლებელია წინასწარ ბევრი გადაწყვეტილების ზუსტად განსაზღვრა და ჩამოყალიბება, ისინი მხოლოდ მოგვიანებით ირკვევა და იხვეწება;
  • განვითარების ყველა შედეგის ინტეგრირება ხდება ბოლოს, რის შედეგადაც ინტეგრაციის პრობლემები თავს ძალიან გვიან იგრძნობს;
  • მომხმარებლები და მომხმარებელი ვერ ეცნობიან სისტემის ვარიანტებს განვითარების პროცესში და შედეგს მხოლოდ ბოლოს ხედავენ; ამრიგად, მათ არ შეუძლიათ გავლენა მოახდინონ სისტემის შექმნის პროცესზე და, შესაბამისად, იზრდება დეველოპერებსა და მომხმარებლებს/მომხმარებელს შორის გაუგებრობის რისკები;
  • მოდელი არასტაბილურია პროექტების დაფინანსების ან სახსრების გადანაწილების წარუმატებლობის მიმართ, დაწყებულ განვითარებას, ფაქტობრივად, არ აქვს ალტერნატივა "გადაადგილებაში".

თუმცა ამ მოდელისაგრძელებს გამოყენებას პრაქტიკაში - მცირე პროექტებისთვის ან ტიპიური სისტემების შემუშავებაში, სადაც გამეორება არც თუ ისე მოთხოვნადია. მისი დახმარებით მოსახერხებელია განვითარების თვალყურის დევნება და პროექტზე ეტაპობრივი კონტროლის განხორციელება. ეს მოდელი ასევე ხშირად გამოიყენება ოფშორულ პროექტებში 1 ინგლისური ოფშორიდან - სანაპიროს გარეთ, გაფართოებული ინტერპრეტაციით - ერთი ქვეყნის გარეთ.საათობრივი ანაზღაურებით. ჩანჩქერის მოდელი შევიდა, როგორც სხვა მოდელებისა და მეთოდოლოგიების განუყოფელი ნაწილი, მაგალითად, MSF-ში.

ეს შესანიშნავი ენაა, რომ ისწავლო როგორც შტატგარეშე. იპოვეთ რესურსები, რომლებიც დაგეხმარებათ სწავლაში. კარგად დაწერილი პროგრამირების წიგნი, სავარაუდოდ, იქნება საუკეთესო რესურსი, რომელიც შეიძლება გქონდეთ და საშუალებას მოგცემთ სწრაფად მიმართოთ მას პროექტებზე მუშაობისას. წიგნების გარდა, ინტერნეტი არის სახელმძღვანელოების და გაკვეთილების გაუთავებელი საგანძური. . გაიარეთ რამდენიმე გაკვეთილი. მიუხედავად იმისა, რომ თქვენ არ გჭირდებათ სრული ხარისხი პროგრამული უზრუნველყოფის ინჟინერიაში მოსახვედრად, შეიძლება არ დააზარალოთ გაკვეთილების გავლა ადგილობრივ კოლეჯში ან სასწავლო ცენტრში.

როდის არის საუკეთესო დრო განმეორებითი მოდელის გამოსაყენებლად?

ეს მოგცემთ ინდივიდუალური სწავლების სარგებელს და მოგცემთ წახალისებას ისეთი პრობლემების გადაჭრაში, რომლებიც ალბათ არ გექნებოდათ, თვითნასწავლი რომ იყოთ. კლასები ფული ღირს, ამიტომ დარწმუნდით, რომ დარეგისტრირდით კლასებზე, რომლებიც დაგეხმარებათ გაიგოთ, რა გსურთ იცოდეთ. მიუხედავად იმისა, რომ ბევრ დეველოპერს შეუძლია შევიდეს ინდუსტრიაში მხოლოდ მათი უნარების დამსახურების საფუძველზე, თქვენ შეგიძლიათ დაეხმაროთ საკუთარ თავს გამორჩეულიყო ამ ნაკრებიდან, თუ გაქვთ ბაკალავრის ხარისხი კომპიუტერულ მეცნიერებაში ოთხწლიანი უნივერსიტეტიდან. ხარისხი მოგცემთ ცოდნის უფრო ფართო ფონს და მოგცემთ წვდომას დამატებით სასარგებლო კლასებზე, როგორიცაა მათემატიკა და ლოგიკა. შინაური ცხოველების პროექტებზე მუშაობა.

სპირალური მოდელიშემოთავაზებული იყო Bary Boehm-ის მიერ 1988 წელს ჩანჩქერის მოდელის ნაკლოვანებების დასაძლევად, პირველ რიგში რისკის უკეთესი მართვისთვის. ამ მოდელის მიხედვით, პროდუქტის განვითარება სპირალურად მიმდინარეობს, რომლის ყოველი შემობრუნება განვითარების გარკვეულ ფაზას წარმოადგენს. ჩანჩქერის მოდელისგან განსხვავებით, სპირალურ მოდელს არ აქვს მოხვევების წინასწარ განსაზღვრული და სავალდებულო ნაკრები, თითოეული შემობრუნება შეიძლება იყოს ბოლო სისტემის განვითარებაში, როდესაც ის დასრულდება, შედგენილია შემდეგი შემობრუნების გეგმები. დაბოლოს, ხვეული მხოლოდ ფაზაა და არა აქტივობის სახეობა, როგორც ჩანჩქერის მოდელში, მის ფარგლებში შეიძლება განხორციელდეს მრავალი სხვადასხვა ტიპის აქტივობა, ანუ მოდელი არის ორგანზომილებიანი.

სანამ დაიწყებთ თქვენი ახალი პროგრამირების უნარების გამოყენებას რეალურ სამუშაოებზე, იმუშავეთ რამდენიმე პროექტზე თქვენთვის. გამოწვევა საკუთარ თავს პრობლემების გადაჭრაში თქვენი პროგრამირების ენის გამოყენებით. ეს არა მხოლოდ დაგეხმარებათ თქვენი უნარების განვითარებაში, არამედ დაგეხმარებათ თქვენი რეზიუმეს შექმნაში.

როდის გამოვიყენოთ დამატებითი მოდელი?

მაგალითად, იმის ნაცვლად, რომ გამოიყენოთ თქვენი კომპიუტერის კალენდარული პროგრამა ორგანიზებულად, შეეცადეთ შექმნათ თქვენი საკუთარი! თუ გაინტერესებთ ვიდეო თამაშების შემუშავება, იმუშავეთ მარტივ თამაშებზე, რომლებიც არ ამახვილებენ ყურადღებას გრაფიკაზე ან რთულ მექანიკაზე. თქვენს მიერ შექმნილი მცირე თამაშების კოლექცია შესანიშნავად გამოიყურება თქვენს პორტფოლიოში. ამის ნაცვლად, ყურადღება გაამახვილეთ იმაზე, თუ რა ხდის მათ მხიარულს და უნიკალურს. . Algonquin College-ის სამაგისტრო და მობილური აპლიკაციების განვითარების პროგრამა ამზადებს სტუდენტებს კარიერისთვის მობილური ვებსა და აპლიკაციების განვითარების გაფართოებულ და განვითარებად სფეროებში.

მონაცვლეობის თანმიმდევრობა შეიძლება იყოს შემდეგი: პირველ რიგში მიიღება გადაწყვეტილება პროგრამული უზრუნველყოფის შექმნის მიზანშეწონილობის შესახებ, შემდეგში. სისტემის მოთხოვნები , შემდეგ ხორციელდება სისტემის დიზაინი და ა.შ. მონაცვლეობას შეიძლება ჰქონდეს სხვა მნიშვნელობა.

თითოეულ კოჭს აქვს შემდეგი სტრუქტურა (სექტორები):

  • პროექტის მიზნების, შეზღუდვებისა და ალტერნატივების განსაზღვრა;
  • ალტერნატივების შეფასება, რისკების შეფასება და გადაჭრა; შესაძლებელია პროტოტიპის გამოყენება (პროტოტიპების სერიის შექმნის ჩათვლით), სისტემის სიმულაცია, ვიზუალური მოდელირება და სპეციფიკაციის ანალიზი; ფოკუსირება პროექტის ყველაზე სარისკო ნაწილებზე;
  • შემუშავება და ტესტირება - აქ შესაძლებელია ჩანჩქერის მოდელი ან პროგრამული უზრუნველყოფის განვითარების სხვა მოდელებისა და მეთოდების გამოყენება;
  • შემდეგი გამეორებების დაგეგმვა - გაანალიზებულია შედეგები, გეგმები და რესურსები შემდგომი განვითარებისთვის, მიიღება გადაწყვეტილება (ან არა) ახალ რაუნდზე; გაანალიზებულია აზრი აქვს თუ არა სისტემის განვითარების გაგრძელებას; განვითარება შეიძლება შეჩერდეს, მაგალითად, დაფინანსების შეფერხების გამო; სპირალური მოდელისაშუალებას გაძლევთ სწორად გააკეთოთ.

ერთი სპირალი შეიძლება შეესაბამებოდეს ზოგიერთი პროგრამული კომპონენტის განვითარებას ან პროდუქტში შემდეგი ცვლილებების დანერგვას. ამრიგად, მოდელს შეიძლება ჰქონდეს მესამე განზომილება.

სწრაფი გავრცელება მობილური მოწყობილობებიინფორმაციაზე მუდმივი ხელმისაწვდომობის შესახებ მომხმარებლის მოთხოვნასთან ერთად ქმნის საინტერესო სამუშაო შესაძლებლობებს. კურსდამთავრებულებს შეუძლიათ დასაქმდნენ ხელისუფლების ყველა დონეზე, მათ შორის ჯანდაცვისა და განათლების, ასევე ბიზნესის, მარკეტინგისა და კომუნიკაციების სფეროში.

ეს არის მობილური სასწავლო პროგრამა. როგორც ამ პროგრამის სტუდენტს, დაგჭირდებათ მობილური კომპიუტერული მოწყობილობა, როგორიცაა ლეპტოპი ან პლანშეტი. ონტარიოს კოლეჯის დიპლომის ეს ორწლიანი პროგრამა ამზადებს სტუდენტებს კარიერისთვის მობილური ვებსა და აპლიკაციების განვითარების გაფართოებულ და განვითარებად სფეროებში. სტუდენტები სწავლობენ მომხმარებლის ინტერფეისის დიზაინს, მომხმარებლის ინტერფეისს და მობილურის გამოყენებადობას. ისინი ჩართულნი არიან კროს-პლატფორმის, მობილური ვებსა და მშობლიური აპლიკაციების შემუშავებაში.

სპირალური მოდელის გამოყენება შეუსაბამოა დაბალი რისკის მქონე პროექტებში, შეზღუდული ბიუჯეტით, მცირე პროექტებისთვის. გარდა ამისა, პროტოტიპის კარგი ხელსაწყოების ნაკლებობამ ასევე შეიძლება მოუხერხებელი გახადოს სპირალური მოდელის გამოყენება.

სპირალური მოდელიარ იპოვა ფართო აპლიკაციაინდუსტრიაში და მნიშვნელოვანია, უფრო სწორად, ისტორიული და მეთოდოლოგიური თვალსაზრისით: ეს არის პირველი განმეორებითი მოდელი, აქვს ლამაზი მეტაფორა - სპირალი და, ჩანჩქერის მოდელის მსგავსად, მოგვიანებით გამოიყენეს სხვა პროცესის მოდელებისა და პროგრამული უზრუნველყოფის განვითარების მეთოდოლოგიების შესაქმნელად.

სტუდენტები ეფექტურად ქმნიან მობილურ ინტერფეისებს ვებსაიტებისთვის, რომლებიც მუშაობენ მრავალ პლატფორმაზე და მოწყობილობაზე. სტუდენტები ასევე სწავლობენ როგორ შექმნან საკუთარი აპლიკაციები მობილური მოწყობილობებისთვის, როგორიცაა სმარტფონები და ტაბლეტები. აქცენტი კეთდება პრაქტიკულ მიდგომაზე ვებსაიტების და აპლიკაციების შემუშავებაში. რეალური აპლიკაციები და გადაწყვეტილებები იქმნება სხვადასხვა ტექნოლოგიებისა და პროგრამირების ენების გამოყენებით. განხილულია სხვადასხვა თემები, როგორიცაა მომხმარებლის გამოცდილების დიზაინი, ვებ უსაფრთხოება, ონლაინ მარკეტინგი, მომხმარებლის ინტერფეისის დიზაინი და აპლიკაციების შემუშავება საკუთარი სმარტფონებისთვის უახლესი სტანდარტული ვებ ტექნოლოგიების გამოყენებით.

პროგრამული პროდუქტის შემუშავებამ იცის ბევრი ღირსეული მეთოდოლოგია - სხვა სიტყვებით რომ ვთქვათ, კარგად დამკვიდრებული საუკეთესო პრაქტიკა. არჩევანი დამოკიდებულია პროექტის სპეციფიკაზე, ბიუჯეტის სისტემაზე, სუბიექტურ პრეფერენციებზე და მენეჯერის ტემპერამენტზეც კი. სტატიაში აღწერილია მეთოდოლოგიები, რომლებსაც რეგულარულად ვხვდებით ედისონში.

მოიყვანეთ თქვენი საკუთარი მოწყობილობა: სტუდენტებს ასევე უნდა ჰქონდეთ ლეპტოპი ან მობილური კომპიუტერული მოწყობილობა, რომელიც ჩარიცხულია ამ პროგრამაში კამპუსში. თქვენი პროგრამისთვის საჭირო ტექნიკისა და პროგრამული უზრუნველყოფის სპეციფიკაციები აღწერილია აქ.

ეს პროგრამა კარგად შეეფერება სტუდენტებს, რომლებიც. ფლობს საბაზისო კომპიუტერულ უნარებს, როგორიცაა კლავიატურა და საოფისე პროგრამული უზრუნველყოფის გამოყენება. თავდადებული და ერთგული. . კურსდამთავრებულებს შეუძლიათ იმუშაონ მრავალფეროვან პოზიციებზე საჯარო და კერძო სექტორში. მათ შორისაა ელექტრონული კომერციის დეველოპერი, ინტერაქციის დიზაინერი, ინტერფეისის დიზაინერი, ვებ დიზაინერი, კლიენტის მხარის ვებ დეველოპერი, სერვერის მხარის ვებ დეველოპერი, mashup დეველოპერი, მომხმარებლის გამოცდილების დიზაინერი, ახალი მედია დიზაინერი, წარმოების ასისტენტი, პროექტის მენეჯერი, ბიზნეს ანალიტიკოსი, მობილური აპლიკაციაგამოყენებადობის ტესტერი, მობილური აპლიკაციის მარკეტერი, ტექნიკური პროექტის წამყვანი, პროგრამისტი, ინტერნეტ მარკეტინგი, ონლაინ რეკლამის შემქმნელი, ინტერნეტ მეწარმე, მობილური მეწარმე, წარმოების კოორდინატორი, მობილური აპლიკაციის შემქმნელი ან მობილური აპლიკაციის შემქმნელი.

1. "ჩანჩქერის მოდელი" (კასკადური მოდელი ან "ჩანჩქერი")



ერთ-ერთი უძველესი, მოიცავს ეტაპების თანმიმდევრულ გავლას, რომელთაგან თითოეული მთლიანად უნდა დასრულდეს შემდეგის დაწყებამდე. ჩანჩქერის მოდელში პროექტის მართვა მარტივია. მისი სიხისტის გამო განვითარება სწრაფია, ღირებულება და დრო წინასწარ არის განსაზღვრული. მაგრამ ეს ორლესილი ხმალია. ჩანჩქერის მოდელი კარგად იმუშავებს მხოლოდ მკაფიოდ განსაზღვრული მოთხოვნების მქონე პროექტებისთვის და როგორ განხორციელდება ისინი. უკან გადადგმის გზა არ არსებობს, ტესტირება იწყება მხოლოდ განვითარების დასრულების ან თითქმის დასრულების შემდეგ. ამ მოდელის მიხედვით შემუშავებულ პროდუქტებს დასაბუთებული არჩევანის გარეშე შეიძლება ჰქონდეთ ხარვეზები (მოთხოვნების სიის კორექტირება ნებისმიერ დროს შეუძლებელია), რაც ცნობილი ხდება მხოლოდ დასასრულს მოქმედებების მკაცრი თანმიმდევრობის გამო. ცვლილებების შეტანის ღირებულება მაღალია, რადგან თქვენ უნდა დაელოდოთ მთელი პროექტის დასრულებას მის ინიციალიზაციისთვის. თუმცა, ფიქსირებული ღირებულება ხშირად აღემატება მიდგომის უარყოფით მხარეებს. შექმნის პროცესში გამოვლენილი ხარვეზების გამოსწორება შესაძლებელია და, ჩვენი გამოცდილებით, მოითხოვს ერთიდან სამ დამატებით ხელშეკრულებას მცირე ტექნიკური სპეციფიკაციით.

როდის გამოვიყენოთ V- მოდელი?

კურსდამთავრებულმა საიმედოდ გამოავლინა უნარი. სტუდენტებმა ასევე უნდა მიაწოდონ თავიანთი სმარტფონი და პლანშეტი. სტუდენტებმა უნდა წარმოადგინონ თავიანთი გააქტიურებული და მოქმედი სმარტფონი შემდეგი სიიდან. ონტარიოს საშუალო სკოლის დიპლომი ან ექვივალენტი. . თუ კვალიფიციური აპლიკანტების რაოდენობა აღემატება ხელმისაწვდომი ადგილების რაოდენობას, აპლიკანტები შეირჩევიან მათი თანამდებობის მიხედვით ინგლისური ენადა მათემატიკა.

განაცხადები სრულ განაკვეთზე დღის პროგრამებზე უნდა იყოს წარმოდგენილი ოფიციალური ჩანაწერებით, რომლებიც ადასტურებს აკადემიური მიღების მოთხოვნების დასრულებას. დაშვების პროცესის შესახებ დამატებითი ინფორმაციისთვის გთხოვთ დაუკავშირდეთ. მიუხედავად იმისა, რომ რეკომენდირებულია კომპიუტერის ძირითადი უნარები, პროგრამაში შესასვლელად პროგრამირების გამოცდილება არ არის საჭირო.

ჩანჩქერის მოდელის დახმარებით ჩვენ შევქმენით მრავალი პროექტი ნულიდან, მათ შორის მხოლოდ ტექნიკური მახასიათებლების შემუშავება. პროექტები, რომელთა შესახებაც წერია Habré-ზე: საშუალო - , პატარა - .

როდის გამოვიყენოთ ჩანჩქერის მეთოდოლოგია?

  • მხოლოდ მაშინ, როდესაც მოთხოვნები ცნობილია, გასაგები და დაფიქსირებული. არ არსებობს ურთიერთსაწინააღმდეგო მოთხოვნები.
  • არანაირი პრობლემა არ არის საჭირო კვალიფიკაციის პროგრამისტების ხელმისაწვდომობასთან დაკავშირებით.
  • შედარებით მცირე პროექტებისთვის.

2. "V-Model"



მემკვიდრეობით მიიღო ნაბიჯ-ნაბიჯ სტრუქტურა ჩანჩქერის მოდელისგან. V- ფორმის მოდელი გამოიყენება სისტემებზე, რომლებიც განსაკუთრებით მნიშვნელოვანია უწყვეტი მუშაობისთვის. Მაგალითად, აპლიკაციის პროგრამებიპაციენტების მონიტორინგის კლინიკებში, ინტეგრირებული პროგრამული უზრუნველყოფა მანქანების გადაუდებელი აირბალიშების მართვის მექანიზმებისთვის და ა.შ. მოდელის თავისებურებად შეიძლება ჩაითვალოს ის, რომ ის მიზნად ისახავს პროდუქტის საფუძვლიან შემოწმებას და ტესტირებას, რომელიც უკვე დიზაინის საწყის ეტაპზეა. ტესტირების ფაზა ტარდება განვითარების შესაბამის ფაზასთან პარალელურად, მაგალითად კოდირების დროს იწერება ერთეული ტესტები.

სამწუხაროდ, ეს ასეა ხშირ შემთხვევაში. სურათი 1: პრაქტიკული ვებ გვერდის განვითარება. ეს იმას ნიშნავდა, რომ ფანჯრები ახლა ასევე შეიძლება გამოჩნდეს გადახურვით. ამ გამოშვებით დაწყებული, ხმის ბარათებინაგულისხმევად იყო მხარდაჭერილი და შესაძლებელი იყო ეკრანის მაღალი გარჩევადობით და ფერის სიღრმეზე გამოშვება 32 ბიტამდე.

ახალი, მოდულურად შემუშავებული პლატფორმის მიზნები იყო ბევრად უფრო დიდი სტაბილურობა, რამაც გამოიწვია ახალი სისტემაუფრო შესაფერისი სერვერულ სისტემებზე გამოსაყენებლად. ამ ვერსიამ უპირველეს ყოვლისა ხელი შეუწყო დეტალურ გაუმჯობესებას, რაც უფრო მეტ სტაბილურობას უზრუნველყოფდა.

V- მეთოდოლოგიაზე დაფუძნებული ჩვენი მუშაობის მაგალითი - მობილური აპლიკაცია ევროპულისთვის მობილური ოპერატორი, რაც დაზოგავს როუმინგის ხარჯებს მოგზაურობისას. პროექტი ხორციელდება მკაფიო TOR-ის მიხედვით, მაგრამ ის მოიცავს ტესტირების მნიშვნელოვან ეტაპს: ინტერფეისის მოხერხებულობას, ფუნქციონალურ დატვირთვას, ინტეგრაციის ჩათვლით, რაც უნდა დაადასტუროს, რომ სხვადასხვა მწარმოებლის რამდენიმე კომპონენტი ერთად მუშაობს სტაბილურად, ფულის ქურდობა და სესხები შეუძლებელია.

წინასწარ გამოშვებული 000-ზე მეტ მომხმარებელს, ენთუზიასტს, პროგრამული უზრუნველყოფის შემქმნელებს და ტექნიკის მწარმოებლებს 20-ზე მეტ ქვეყანაში. ოფიციალური ხელმისაწვდომობის თარიღიდან პირველი კვირის განმავლობაში პროგრამული უზრუნველყოფა მილიონზე მეტჯერ იქნა გადმოწერილი, თუმცა ინტერნეტი შორს იყო მისი ამჟამინდელი სტატუსისგან.

ახალი ოპერაციული სისტემათავდაპირველად ხელმისაწვდომი იყო 40-ზე მეტ ქვეყანაში. გაუმჯობესების წყალობით Სისტემის აღდგენა, ასევე შესაძლებელი იყო სისტემის აღდგენა წინა მდგომარეობაში, რაც უნდა იყოს საუკეთესო საშუალებაშეასწორეთ არასწორი დრაივერები და აპლიკაციები.

როდის გამოვიყენოთ V- მოდელი?

  • თუ საჭიროა პროდუქტის საფუძვლიანი ტესტირება, მაშინ V-მოდელი გაამართლებს ძირითად იდეას: ვალიდაციას და გადამოწმებას.
  • მცირე და საშუალო პროექტებისთვის, სადაც მოთხოვნები მკაფიოდ არის განსაზღვრული და დაფიქსირებული.
  • საჭირო კვალიფიკაციის მქონე ინჟინრების, განსაკუთრებით ტესტერების ხელმისაწვდომობის გათვალისწინებით.

3. „ინკრემენტალური მოდელი“ (ნამატიანი მოდელი)

ინკრემენტულ მოდელში, სისტემის სრული მოთხოვნები იყოფა სხვადასხვა შეკრებად. ტერმინოლოგია ხშირად გამოიყენება პროგრამული უზრუნველყოფის ეტაპობრივი მშენებლობის აღსაწერად. არსებობს მრავალი განვითარების ციკლი და ისინი ერთად ქმნიან მრავალ ჩანჩქერის სასიცოცხლო ციკლს. ციკლი დაყოფილია უფრო პატარა, ადვილად შექმნილ მოდულებად. თითოეული მოდული გადის მოთხოვნების განსაზღვრის, დიზაინის, კოდირების, განხორციელებისა და ტესტირების ეტაპებს. ინკრემენტული მოდელის მიხედვით განვითარების პროცედურა გულისხმობს პროდუქტის გამოშვებას ძირითად ფუნქციონირებაში პირველ ძირითად ეტაპზე, შემდეგ კი ახალი ფუნქციების თანმიმდევრულ დამატებას, ე.წ. პროცესი გრძელდება მანამ, სანამ არ შეიქმნება სრული სისტემა.


თუმცა, განვითარების პროცესში იყო მნიშვნელოვანი შეფერხებები. ეს დოკუმენტაცია დაარქივებულია და აღარ ინახება. მაგრამ არა მხოლოდ იმის ჩვენება შეიძლება, რომ ეს შესაძლებელია, არამედ ისიც, რომ ეს ძალიან მარტივია. ეს შეესაბამება ფანჯარას, რომელიც გამოჩნდება პროგრამის დაწყებისას. ფორმა შეიძლება შეიქმნას ინსტრუმენტთა პანელში არსებული კონტროლის გამოყენებით.

იმისათვის, რომ მოათავსოთ კონტროლი ხელსაწყოთა ზოლიდან ფორმაზე, უბრალოდ გადაიტანეთ იგი ინსტრუმენტთა ზოლიდან ფორმაზე. ან შეგიძლიათ ჯერ მაუსით დააწკაპუნოთ კონტროლზე და შემდეგ ფორმაზე იმ პოზიციაზე, სადაც ზედა მარცხენა კუთხე უნდა იყოს.

დამატებითი მოდელები გამოიყენება, სადაც ინდივიდუალური ცვლილებების მოთხოვნები ნათელია და ადვილად შეიძლება ფორმალიზებული და განხორციელდეს. ჩვენს პროექტებში ჩვენ ვიყენებდით DefView Reader-ის, შემდეგ კი Vivaldi ციფრული ბიბლიოთეკის ქსელის შესაქმნელად.

მაგალითად, მოდით აღვწეროთ ერთი ნამატის არსი. შეცვალა DefView. DefView უკავშირდებოდა ერთ დოკუმენტის სერვერს, მაგრამ ახლა მას შეუძლია ბევრთან დაკავშირება. დაწესებულების საიტზე, რომელსაც სურს თავისი შინაარსის გადაცემა კონკრეტულ აუდიტორიაზე, დამონტაჟებულია შენახვის სერვერი, რომელიც პირდაპირ წვდება დოკუმენტებს და გარდაქმნის მათ სასურველ ფორმატში. გამოჩნდა არქიტექტურის ძირეული ელემენტი - ცენტრალური ვივალდის სერვერი, რომელიც მოქმედებს როგორც ერთი საძიებო სისტემასხვადასხვა დაწესებულებებში დაინსტალირებული ყველა შენახვის სერვერზე.

მაგალითი. ფორმაზე ეტიკეტის, ტექსტური ველისა და ღილაკის დადების შემდეგ, ასე გამოიყურება. შეგიძლიათ ასე გაუშვათ. გამართვა ან გამართვა მენიუს ზოლში. არ დაგავიწყდეთ პროგრამიდან გასვლა, სანამ მასზე მუშაობას გააგრძელებთ. თქვენ არ შეგიძლიათ გადატვირთოთ კომპილერი, სანამ პროგრამა მუშაობს.

ბოლო კომპონენტს ფორმაზე დაწკაპუნებით ეწოდება ამჟამად შერჩეული კომპონენტი. თქვენ შეგიძლიათ ამოიცნოთ ისინი, როგორც პატარა კვადრატები ზღვარზე, სადაც შეგიძლიათ გადაათრიოთ და ჩამოაგდოთ მაუსის საშუალებით და შეცვალოთ კომპონენტის ზომა. ბოლო მაგალითში ღილაკი1 არის ამჟამად არჩეული კომპონენტი. თვისებების ფანჯარა აჩვენებს ამჟამად არჩეული კომპონენტის თვისებებს.

როდის გამოვიყენოთ დამატებითი მოდელი?

  • როდესაც სისტემის ძირითადი მოთხოვნები მკაფიოდ არის განსაზღვრული და გასაგები. ამავდროულად, ზოგიერთი დეტალი შეიძლება გაუმჯობესდეს დროთა განმავლობაში.
  • მოითხოვს ადრეულ ბაზარზე გაშვებას.
  • არსებობს რამდენიმე სარისკო თვისება ან მიზანი.

4. "RAD მოდელი" (აპლიკაციის განვითარების სწრაფი მოდელი ან სწრაფი აპლიკაციის განვითარება)

RAD მოდელი არის დამატებითი მოდელის ვარიაცია. RAD მოდელში კომპონენტები ან ფუნქციები მუშავდება რამდენიმე მაღალკვალიფიციური გუნდის მიერ პარალელურად, რამდენიმე მინი-პროექტის მსგავსად. ერთი ციკლის დრო მკაცრად შეზღუდულია. შექმნილი მოდულები შემდეგ ინტეგრირებულია ერთ სამუშაო პროტოტიპში. Synergy საშუალებას გაძლევთ სწრაფად წარუდგინოთ კლიენტს რაიმე სამუშაო განსახილველად, რათა მიიღოთ გამოხმაურება და შეიტანოთ ცვლილებები.


მარცხენა სვეტში ჩამოთვლილია ქონების სახელები, ხოლო მარჯვენა სვეტი აჩვენებს ქონების მნიშვნელობებს. ქონების ღირებულება შეიძლება შეიცვალოს მარჯვენა სვეტის მეშვეობით. ზოგიერთი თვისებისთვის, შეგიძლიათ შეიყვანოთ ახალი მნიშვნელობა კლავიატურის გამოყენებით. სხვებისთვის, მარჯვენა სვეტზე დაწკაპუნება აჩვენებს პატარა სამკუთხედს ჩამოსაშლელი მენიუსთვის, რომელიც საშუალებას გაძლევთ აირჩიოთ მნიშვნელობა.

შემდეგი ნაბიჯი არის პროგრამის გაფართოება ბოლო განყოფილებიდან, რათა შეასრულოს განცხადებები ღილაკის დაჭერის საპასუხოდ. ეს იწვევს პროგრამაში ეგრეთ წოდებულ მოვლენას, რამაც შეიძლება გამოიწვიოს ფუნქციის გამოძახება. ღილაკზე დაწკაპუნებისას გამოძახებული ფუნქცია ყველაზე ადვილად ხელმისაწვდომია ფორმაზე ღილაკზე ორჯერ დაწკაპუნებით. ეს შეიძლება იყოს ნებისმიერი C- განცხადებები.

აპლიკაციის სწრაფი განვითარების მოდელი მოიცავს შემდეგ ეტაპებს:

  • ბიზნეს მოდელირება: სხვადასხვა დეპარტამენტებს შორის ინფორმაციის ნაკადების სიის განსაზღვრა.
  • მონაცემთა მოდელირება: წინა საფეხურზე შეგროვებული ინფორმაცია გამოიყენება ინფორმაციის გასავრცელებლად საჭირო ობიექტებისა და სხვა ერთეულების დასადგენად.
  • პროცესის მოდელირება: ინფორმაციის ნაკადები აკავშირებს ობიექტებს დიზაინის მიზნების მისაღწევად.
  • Build Application: იყენებს ავტომატური აშენების ინსტრუმენტებს CAD მოდელების კოდად გადასაყვანად.
  • ტესტირება: ტესტირებულია ახალი კომპონენტები და ინტერფეისები.
როდის გამოიყენება RAD მოდელი?

შესაძლებელია მხოლოდ მაღალკვალიფიციური და მაღალკვალიფიციური არქიტექტორების გამოყენება. პროექტის ბიუჯეტი საკმარისად დიდია, რომ გადაიხადოს ამ სპეციალისტებისთვის, მზა ავტომატური შეკრების ხელსაწყოების ღირებულებასთან ერთად. RAD მოდელის არჩევა შესაძლებელია, თუ თქვენ იცნობთ სამიზნე ბიზნესს და გჭირდებათ სისტემის სასწრაფო წარმოება 2-3 თვის განმავლობაში.

5. "Agile Model" (სწრაფი განვითარების მეთოდოლოგია)



„სწრაფი“ განვითარების მეთოდოლოგიაში, ყოველი გამეორების შემდეგ მომხმარებელს შეუძლია დააკვირდეს შედეგს და გაიგოს, აკმაყოფილებს თუ არა მას. ეს არის მოქნილი მოდელის ერთ-ერთი უპირატესობა. მისი ნაკლოვანებები მოიცავს იმ ფაქტს, რომ შედეგების სპეციფიკური ფორმულირების არარსებობის გამო, რთულია შეაფასოს შრომითი ხარჯები და განვითარებისთვის საჭირო ხარჯები. ექსტრემალური პროგრამირება (XP) არის სწრაფი მოდელის ერთ-ერთი ყველაზე ცნობილი პროგრამა პრაქტიკაში.

ამ ტიპს ეფუძნება მოკლე ყოველდღიური შეხვედრები – „სკრამი“ და რეგულარულად განმეორებადი შეხვედრები (კვირაში ერთხელ, ორ კვირაში ერთხელ ან თვეში ერთხელ) სახელწოდებით „სპრინტი“. ყოველდღიურ შეხვედრებზე გუნდის წევრები განიხილავენ:

  • ანგარიში ბოლო Scrum-ის შემდეგ გაწეული მუშაობის შესახებ;
  • დავალებების სია, რომელიც თანამშრომელმა უნდა შეასრულოს მომდევნო შეხვედრამდე;
  • სირთულეები, რომლებიც წარმოიქმნება მუშაობის პროცესში.
მეთოდოლოგია შესაფერისია დიდი ან გრძელვადიანი პროექტებისთვის, რომლებიც მუდმივად ეგუებიან ბაზრის პირობებს. შესაბამისად, განხორციელების პროცესში იცვლება მოთხოვნები. ღირს შემოქმედებითი ადამიანების კლასის გახსენება, რომლებიც მიდრეკილნი არიან ახალი იდეების გენერირებას, გამოცემას და გამოცდას ყოველკვირეულად ან თუნდაც ყოველდღიურად. სწრაფი განვითარება საუკეთესოდ შეეფერება ამ ტიპის ლიდერებს. ჩვენ ვავითარებთ კომპანიის შიდა სტარტაპებს Agile-ის გამოყენებით. კლიენტური პროექტების მაგალითია სამედიცინო გამოკვლევების ელექტრონული სისტემა, რომელიც შექმნილია მასობრივი სამედიცინო გამოკვლევების ჩასატარებლად რამდენიმე წუთში. ამ მიმოხილვის მეორე აბზაცში ჩვენმა ამერიკელმა პარტნიორებმა აღწერეს ძალიან მნიშვნელოვანი რამ, ფუნდამენტური წარმატებისთვის Agile-ზე.

როდის გამოვიყენოთ Agile?

  • როდესაც მომხმარებლის მოთხოვნილებები მუდმივად იცვლება დინამიურ ბიზნესში.
  • სწრაფი ცვლილებები ხორციელდება უფრო დაბალ ფასად, ხშირი მატების გამო.
  • ჩანჩქერის მოდელისგან განსხვავებით, მოქნილ მოდელს მხოლოდ მცირე დაგეგმვა სჭირდება პროექტის დასაწყებად.

6. „იტერატიული მოდელი“ (იტერატიული ან განმეორებითი მოდელი)

სასიცოცხლო ციკლის განმეორებითი მოდელი არ საჭიროებს სრულ მოთხოვნების დაზუსტებას დასაწყისისთვის. ამის ნაცვლად, შექმნა იწყება ფუნქციონალური ნაწილის განხორციელებით, რაც შემდგომი მოთხოვნების დადგენის საფუძველი ხდება. ეს პროცესი მეორდება. ვერსია შეიძლება არ იყოს სრულყოფილი, მთავარია ის მუშაობს. საბოლოო მიზნის გაცნობიერებით, ჩვენ მისკენ ვისწრაფვით, რათა ყოველი ნაბიჯი ეფექტური იყოს და თითოეული ვერსია იყოს გამოსადეგი.


დიაგრამაზე ნაჩვენებია მონა ლიზას განმეორებითი "განვითარება". როგორც ხედავთ, პირველ გამეორებაში არის მხოლოდ მონა ლიზას ესკიზი, მეორეში - ჩნდება ფერები, ხოლო მესამე გამეორება ამატებს დეტალებს, გაჯერებას და ასრულებს პროცესს. ინკრემენტულ მოდელში, პროდუქტის ფუნქციონირება თანდათანობით ყალიბდება, პროდუქტი შედგება ნაწილებისგან. განმეორებითი მოდელისგან განსხვავებით, თითოეული ნაჭერი განუყოფელი ელემენტია.

განმეორებითი განვითარების მაგალითია ხმის ამოცნობა. სამეცნიერო აპარატის პირველი კვლევა და მომზადება დიდი ხნის წინ დაიწყო, თავიდან - ფიქრებში, შემდეგ - ქაღალდზე. ყოველი ახალი გამეორებით, ამოცნობის ხარისხი უმჯობესდებოდა. თუმცა, სრულყოფილი აღიარება ჯერ არ არის მიღწეული, შესაბამისად, პრობლემა ჯერ ბოლომდე არ არის მოგვარებული.

როდის არის საუკეთესო დრო განმეორებითი მოდელის გამოსაყენებლად?

  • საბოლოო სისტემის მოთხოვნები მკაფიოდ არის განსაზღვრული და წინასწარ გაგებული.
  • პროექტი არის დიდი ან ძალიან დიდი.
  • მთავარი ამოცანა უნდა განისაზღვროს, მაგრამ განხორციელების დეტალები შეიძლება დროთა განმავლობაში განვითარდეს.

7. „სპირალური მოდელი“ (სპირალური მოდელი)



"სპირალური მოდელი" მსგავსია დამატებითი მოდელის, მაგრამ აქცენტით რისკის ანალიზზე. ის კარგად მუშაობს მისიის კრიტიკული ბიზნეს გამოწვევებისთვის, სადაც წარუმატებლობა შეუთავსებელია კომპანიის ოპერაციებთან, ახალი პროდუქტის ხაზებთან, კვლევებთან და საველე გამოცდებთან.

სპირალური მოდელი ითვალისწინებს 4 ეტაპს თითოეული მობრუნებისთვის:

  1. დაგეგმვა;
  2. რისკის ანალიზი;
  3. მშენებლობა;
  4. შედეგის შეფასება და თუ ხარისხი დამაკმაყოფილებელია, ახალ რაუნდზე გადასვლა.
ეს მოდელი არ არის შესაფერისი მცირე პროექტებისთვის, ის მიზანშეწონილია რთული და ძვირადღირებული პროექტებისთვის, როგორიცაა ბანკისთვის დოკუმენტების მართვის სისტემის შემუშავება, როდესაც ყოველი შემდეგი ნაბიჯი მოითხოვს უფრო მეტ ანალიზს შედეგების შესაფასებლად, ვიდრე პროგრამირება. ციმბირის ODU SO UES-ისთვის EDMS-ის შემუშავების პროექტზე, ელექტრონული არქივის სექციების კოდიფიკაციის შეცვლის შესახებ ორ შეხვედრას 10-ჯერ მეტი დრო სჭირდება, ვიდრე პროგრამისტი, რომელიც აერთიანებს ორ საქაღალდეს. სახელმწიფო პროექტები, რომლებშიც ჩვენ ვმონაწილეობდით, დაიწყო ექსპერტთა საზოგადოების მიერ ძვირადღირებული კონცეფციის მომზადებით, რომელიც სულაც არ არის ყოველთვის უსარგებლო, რადგან ეროვნული მასშტაბით ანაზღაურდება.

შევაჯამოთ



სლაიდში ნაჩვენებია განსხვავებები ორ ყველაზე გავრცელებულ მეთოდოლოგიას შორის.

თანამედროვე პრაქტიკაში პროგრამული უზრუნველყოფის შემუშავების მოდელები მრავალვარიანტულია. არ არსებობს ერთი უფლება ყველა პროექტზე, საწყისი პირობებისა და გადახდის მოდელებზე. ყველა ჩვენგანისთვის ასე საყვარელ Agile-ს კი ყველგან გამოყენება შეუძლებელია ზოგიერთი მომხმარებლის მოუმზადებლობის ან მოქნილი დაფინანსების შეუძლებლობის გამო. მეთოდოლოგია ნაწილობრივ ემთხვევა საშუალებებს და გარკვეულწილად ჰგავს ერთმანეთს. ზოგიერთი სხვა კონცეფცია გამოიყენებოდა მხოლოდ საკუთარი შემდგენელების პოპულარიზაციისთვის და პრაქტიკაში რაიმე ახალი არ შემოიტანეს.

განვითარების ტექნოლოგიების შესახებ:
.
.
.
.

რა მეთოდოლოგიას იყენებთ?