პროგრამული უზრუნველყოფის გამოშვების ცალკეული საფეხურები

პროგრამული უზრუნველყოფის გამოშვების ცალკეული საფეხურები მოიცავს კომპიუტერული პროგრამის შემუშავებისა და მომზადების სხვადასხვა ეტაპებს: წინასწარი, სამუშაო ვერსიიდან — საბოლოო გამოშვებამდე, მათ შორის განახლებულ ვარიანტებსაც, რომელიც პროგრამული უზრუნველყოფის გასაუმჯობესებლად ან არსებული პროგრამული შეცდომების გამოსასწორებლად გამოიყენება.
ისტორია
ტერმინ „ალფა/ბეტას“ წარმოშობა უკავშირდება კომპანია IBM-ს. დიდი ხნის წინ, დაახლოებით 1950-იან წლებში (შეიძლება უფრო ადრეც), IBM იყენებდა მსგავს ტერმინოლოგიას თავიანთი აპარატურის გამოშვებისას. „A“ ტესტი გულისხმობდა ახალი პროდუქტის შემოწმებას, საჯაროდ დაანონსებამდე. „B“ ტესტი იყო გადამოწმება, წარმოების დაწყებამდე. „C“ ტესტი კი ეწოდებოდა საბოლოო გამოცდას, პროდუქტის საყოველთაო მოხმარებისთვის წარსადგენად. მას შემდეგ, რაც პროგრამული უზრუნველყოფის შემუშავება გახდა IBM-ის მნიშვნელოვანი მიმართულება, ალფა ტესტირება გამოიყენებოდა გამოშვებამდელი შემოწმების აღსანიშნავად, ხოლო ბეტა ტესტირებით დგინდებოდა პროდუქტის მზაობა საყოველთაო ხელმისაწვდომობისთვის. მარტინ ბელსკიმ, IBM-ის ადრინდელი ცალკეული პროგრამული პროექტების ხელმძღვანელმა განაცხადა, რომ ეს ტერმინოლოგია მათი შექმნილია. IBM-მა უარი თქვა ალფა/ბეტა დასახელებებზე 1960-იან წლებში, მაგრამ იმ დროს უკვე საკმაოდ ფართოდ გამოიყენებოდა ეს ტერმინოლოგია. მომხმარებელთა მიერ პროდუქტის გამოცდა „ბეტა ტესტირებით“ არ აღინიშნებოდა IBM-ში. მის ნაცვლად, იყენებდნენ ტერმინს „საველე ტესტირება“.
შემუშავების საფეხურები
პრეალფა
პრეალფა გულისხმობს ყველა გამოსაცდელ სამუშაოს პროგრამული უზრუნველყოფის პროექტის ოფიციალურ შემოწმებამდე. ეს სამუშაოები, შესაძლოა მოიცავდეს მოთხოვნების ანალიზს, პროგრამული უზრუნველყოფის დაგეგმვას, პროგრამული უზრუნველყოფის შემუშავებასა და ერთეულოვან ტესტირებას. ჩვეულებრივ, ღია წყაროს პროგრამის შემუშავებისას, არის რამდენიმე სახის პრეალფა ვერსია. ყოველი მომდევნო ვერსია შეიცავს გარკვეული ფუნქციების ნაკრებს და გამოდის მაშინვე, როგორც კი მზად იქნება ეს ფუნქციონალი.
ალფა
გამოშვების ალფა საფეხური წარმოადგენს პირველ ეტაპს პროგრამული უზრუნველყოფის ტესტირებაში (ალფა არის ბერძნული დამწერლობის პირველი ასო, რომლითაც აღინიშნება ნომერი 1). ამ საფეხურზე, შემმუშავებლები პროგრამას, ძირითადად ამოწმებენ ე.წ. თეთრი ყუთის ტესტირებით. დამატებითი დამოწმება კი ხდება შავი ყუთის ან ნაცრისფერი ყუთის მეთოდით, სხვა გამომცდელი ჯგუფის მიერ. შავი ყუთის ტესტირებაზე გადასვლას კომპანიის შიგნით, ეწოდება ალფა გამოშვება.
პროგრამის ალფა ვერსია, შესაძლოა მეტად არამდგრადი იყოს და ახასიათებდეს უეცარი გათიშვა ან მონაცემების დაკარგვა. ალფა ვერსიაში სრულად, შეიძლება არ იყოს წარმოდგენილი ყველა ის შესაძლებლობა, რაც საბოლოო ვერსიისთვის იგეგმება. ზოგადად, კერძომესაკუთრული (დახურული წყაროს მქონე) პროგრამული უზრუნველყოფის ალფა ვერსიები იშვიათადაა საჯაროდ ხელმისაწვდომი, მაშინ როცა ღია წყაროს პროგრამული უზრუნველყოფის შემთხვევაში პირიქით, საცდელი გამოშვებები უმეტესად, თავისუფლად ვრცელდება. ალფა სტადიის ბოლოს, როგორც წესი, წყდება ახალი შესაძლებლობების დამატება. შემდეგ კი იწყება მოცემული შესაძლებლობების გამოცდა და სრულყოფა.
ბეტა
ბეტა, ბერძნული ანბანის რიგით მეორე ასო აღნიშნავს პროგრამული უზრუნველყოფის შემუშავების მომდევნო საფეხურს. პროგრამულ უზრუნველყოფას ბეტა ეტაპზე, ასევე მოიხსენიებენ ტერმინით „betaware“ (ბეტა პროგრამა). ზოგადად, ბეტა სტადია იწყება მას შემდეგ, როდესაც მოცემული პროგრამა, უკვე სრულადაა აღჭურვილი ახალი შესაძლებლობებით, მაგრამ შეიცავს მრავალ ცნობილ თუ უცნობ შეცდომას. პროგრამული უზრუნველყოფა ბეტა სტადიაში, წესით, მეტად ხარვეზიანია ხოლმე, ვიდრე დასრულებული ვერსია, ამასთან გააჩნია სიჩქარე/წარმადობასთან დაკავშირებული პრობლემები და ჯერ კიდევ შეიძლება ახასიათებდეს უეცარი გათიშვა ან მონაცემების დაკარგვა. ბეტა ტესტირების მთავარი მიზანი, პროგრამის გამოყენებასთან დაკავშირებული საკითხების შემოწმება და მოგვარებაა. ბეტა ვერსია მომხმარებლებს მიეწოდება ბეტა გამოშვების სახით და როგორც წესი, პირველად ამ დროს ხდება პროგრამა ხელმისაწვდომი საზოგადოებისთვის, შემქმნელი კომპანიის გარეთ. ბეტა ვერსიის პროგრამული უზრუნველყოფა გამოსადეგია წარდსადგენად, როგორც ორგანიზაციის შიგნით, ასევე პოტენციური მომხმარებლების წინაშე. შემმუშავებელთა ნაწილი ამ ვერსიებს უწოდებს წინასწარ გამოშვებებს (ინგ. preview, preview release, prototype, technical preview / technology preview; შემოკლ. TP) ან ადრეული წვდომის ვერსიებს (ინგ. early access). ზოგჯერ ხდება პროგრამის მუდმივად ბეტა რეჟიმში შენარჩუნება, რითიც შემმუშავებლებს საშუალება ეძლევათ ხშირად და განუსაზღვრელი დროის განმავლობაში დაამატონ ახალი შესაძლებლობები, საბოლოო „მდგრადი“ ვერსიის სახელის მინიჭების გარეშე.
ბეტა ტესტერები არიან ადამიანები, რომლებიც აქტიურად იკვლევენ პროგრამული უზრუნველყოფის ხარვეზებს და აგზავნიან მოხსენებებს. ისინი, როგორც წესი, წარმოადგენენ რიგით მომხმარებლებს ან პროგრამული უზრუნველყოფის შემქმნელი კომპანიის პოტენციურ მომხმარებლებს. ბეტა გამომცდელები, როგორც წესი, მოხალისეობრივად საქმიანობენ ყოველგვარი ანაზღაურების გარეშე, თუმცა, სამაგიეროდ იღებენ გამოსაცდელ პროდუქტთან ადრეულ წვდომას, საბოლოო ვერსიას ფასდაკლებით, ან სხვა წამახალისებელ ჯილდოებს.
ინტერნეტის ხელშეწყობით, პროგრამული უზრუნველყოფის სწრაფი და იაფი გავრცელების კვალდაკვალ, კომპანიებმა დაიწყეს ტერმინ „ბეტას“ სათავისოდ გამოყენება. 2005 წლის თებერვალში, ZDNet საიტზე გამოქვეყნდა სტატია, რომელიც ეხებოდა ახალ ფენომენს - პროდუქტის, წლების განმავლობაში ბეტა ვერსიად დატოვებასა და ნაწარმის დაუსრულებელი სახით გამოყენებას. ირონიულად უწოდებენ „უვადო ბეტას“. ასევე აღნიშნულია, რომ მაგალითად Gmail და Google News, უკვე ხანგრძლივი დროის განმავლობაში იყო ბეტა რეჟიმში და უახლოეს მომავალში, არც იგეგმებოდა, ამ სტატუსის გაუქმება, მიუხედავად იმისა, რომ უკვე დიდი ხანი იყო, რაც ეს მომსახურებები ფართოდ გამოიყენებოდა. ეს მიდგომა შემქმნელს საშუალებას აძლევს გადაავადოს სრული მხარდაჭერის შეთავაზება და აირიდოს პასუხისმგებლობა დარჩენილ ხარვეზებზე. გარდა ამისა, „ბეტათი“ ზოგჯერ აღინიშნება გამოსაშვები ვერსია, ან დროებითი საჩვენებელი ვერსია, ასევე, გამოიყენება სხვადასხვა მარკეტინგული მიზნებითაც. Windows 8 სისტემის გამოსვლის შემდეგ, Microsoft უკვე აღარ უწოდებს თავის პროგრამების საცდელ ვერსიებს ბეტას. ამის ნაცვლად, გამოშვებამდელი პროგრამული უზრუნველყოფის აღსანიშნავად იყენებს ტერმინს preview (ქართ. წინასწარი ვერსია). 2014 წელს, Windows Insider პროგრამის დაწყების შემდეგ, მისი მეშვეობით გავრცელებული ყველა გამოშვებამდელი ანაწყობი ცნობილია, როგორც Insider Preview builds (წინასწარი ანაწყობები).
ღია და დახურული ბეტა
შემმუშავებლები უშვებენ როგორც დახურულ ბეტას, რომელსაც კერძო ბეტა ვერსიასაც უწოდებენ, ასევე ღია ბეტას, იგივე საჯარო ბეტა ვერსიას; დახურული ბეტა ვერსიები გამოშვებულია ხოლმე ადამიანთა შეზღუდული ჯგუფისთვის, რომელში მოხვედრაც, მხოლოდ მოსაწვევებითაა შესაძლებელი, მაშინ როცა, ღია ბეტა ვერსიის გამოცდაში, გაცილებით დიდი ჯგუფია ჩართული და უმეტესად, ნებისმიერ დაინტერესებულ პირსაც თავისუფლად შეუძლია მონაწილეობის მიღება. კერძო ბეტა ძირითადად გამოყენება იმ პროგრამული უზრუნველყოფისთვის, რომელსაც მოგების მოტანა შეუძლია, მაგრამ ჯერჯერობით არაა მზად ფართო გამოყენებისთვის სხვადასხვა ხარვეზების, საჭირო დოკუმენტაციის ნაკლებობის ან არასრულყოფილი შესაძლებლობების გამო. გამომცდელები აგზავნიან მოხსენებებს, ნაპოვნი ხარვეზების შესახებ და ამასთან სთავაზობენ შემმუშავებლებს იმ ახალი შესაძლებლობების დამატებას საბოლოო ვერსიაში, რომელიც მათი აზრით, მნიშვნელოვანი და გამოსადეგია. საჯარო ბეტა შემოწმების მაგალითებია:
პირველმა მომხმარებლებმა შეიძინეს WordVision ტექსტური რედაქტორის „პიონერული გამოცემა“ IBM PC მოწყობილობისთვის $49.95 დოლარად. 1984 წელს, შტეფან მეინსი (ინგ.) წერდა, რომ „ბრწყინვალე მარკეტინგული გადატრიალების შედეგად, Bruce and James Program Publishers კომპანიამ მოახერხა მოენახა ადამიანები, რომლებიც თანხას გადაიხდიდნენ პროდუქტის გამოცდაში მონაწილეობისთვის“.
2000 წლის სექტემბერში Apple-ის Mac OS X Public Beta საოპერაციო სისტემა გამოვიდა.
Microsoft-მა გამოუშვა საჯარო წინასწარი ვერსიები (შემოკლ. CTP) Windows Vista-სთვის, 2005 წლის სექტემბრისა და 2006 წლის მაისის შუალედში.
2009 წლიდან 2011 წლამდე, Minecraft იყო საჯაროდ ხელმისაწვდომი ბეტა შემოწმებისთვის.
29 დეკემბერს, 2014 წელს, Halo: The Master Chief Collection თამაშის Xbox One ვერსიის ყველა მფლობელს, შეეძლო ჩამოეტვირთა და ეთამაშა Halo 5: Guardians უფასოდ 2015 წლის 18 იანვრამდე. ბეტა ვერსიის მომხმარებლებს თამაშში ამომხტომი ფანჯარა ახსენებდა, რომ გამოშვება იყოს ბეტა და შესაძლოა ჰქონოდა გარკვეული ხარვეზები, ამასთან შეეძლოთ Halo სერიის ინტერნეტ-ერთობის ფორუმში მონაწილეობის მიღება.
ღია ბეტა ტესტირებას ორმაგი დანიშნულება აქვს, ერთია, რომ იგი გამოიყენება პროდუქტის პოტენციური მომხმარებლებისთვის წარსადგენად, მეორე კი ისაა, რომ განსაკუთრებით დიდი რაოდენობით ადამიანების მიერ მოწმდება, რაც შესაძლებელს ხდის ისეთი ხარვეზებისა და შეცდომების სააშკარაოზე გამოტანას, რომელთა აღმოჩენაც მცირე გამომცდელი ჯგუფის პირობებში, მეტად რთული იქნებოდა.
გამოსაშვები ვერსია
გამოსაშვები ვერსია (ინგ. Release candidate; შემოკლ. RC), წარმოადგენს იმ ბეტა ვერსიას, რომელიც თითქმის მზადაა გამოსაშვებად და დარჩენილია მნიშვნელოვანი ხარვეზების გამოსწორება. ამ ეტაპზე, ყველა ახალი შესაძლებლობა უკვე დამატებულია, დამუშავებულია და გავლილი აქვს მრავალსაფეხურიანი შემოწმებები. ამ გამოშვებას ეწოდება დასრულებული კოდის მქონე, რაც ნიშნავს რომ შემმუშავებელთა გუნდი აღარ აპირებს რამე მნიშვნელოვანი ცვლილების შეტანას პროგრამის მიმდინარე კოდში. თუმცა, გარკვეული ხარვეზების გამოსასწორებლად, შესაძლოა მაინც გახდეს საჭირო კოდის ნაწილის შეცვლა, ასევე გარკვეული შესწორებები დოკუმენტაციასა და მონაცემთა ფაილებში, აგრეთვე, არაა გამორიცხული გარკვეული კოდის დამატებაც, საცდელი მიზნებით. ხშირად, კერძოდ შერჩეული ბეტა გამომცდელების მიერ შეტანილი წვლილი, რომლებიც ამ ვერსიას იყენებენ, აღინიშნება ხოლმე საბოლოო გამოშვებაში. ბეტა ტესტირება, ჩვეულებრივ ტარდება მონაწილის სამუშაო ან საცხოვრებელი ადგილიდანვე, რომ პროგრამული უზრუნველყოფის გამოცდა და შეფასება მოხდეს რიგითი მომხმარებლის თვალთახედვით.
გამოშვება
გამოსვლის შემდეგ, პროგრამულ უზრუნველყოფას უწოდებენ „მდგრად ვერსიას“. ოფიციალური ტერმინი დამოკიდებულია გამოშვების სახეზე: ფიზიკურადაა გამოცემული, ინტერნეტ-გამოშვებაა თუ ვებპროგრამა.
გამოშვება წარმოებისთვის ანუ გამოშვება გასაყიდად
ტერმინი „გამოშვება წარმოებისთვის“ (ინგ. Release to manufacturing; შემოკლ. RTM) გამოიყენება მაშინ, როდესაც პროგრამული უზრუნველყოფა უკვე მზადაა მიწოდებისთვის. ეს ანაწყობი, უკვე შეიძლება იყოს ციფრულად ხელმოწერილიც, რაც საშუალებას აძლევს მომხმარებელს, შეძენისას გადაამოწმოს პროგრამული უზრუნველყოფის ნამდვილობა. ამასთან, სწორედ RTM ანაწყობის ასლი გამოიყენება მასობრივი გავრცელებისთვის, საჭიროების შემთხვევაში. RTM გამოშვება წინ უძღვის საყოველთაო ხელმისაწვდომობას (GA), როდესაც პროდუქტი საჯაროდ გამოაქვთ გასაყიდად.
ეს ტერმინი, ჩვეულებრივ, გამოიყენება გარკვეული საცალო პროგრამული უზრუნველყოფის მასობრივი წარმოებისას—განსხვავებით, სპეციალიზებული სახის პროგრამული უზრუნველყოფის ან პროექტის, კომერციული ან სამთავრობო წარმოებისა და განაწილებისას—როდესაც პროგრამული უზრუნველყოფა იყიდება აპარატურულ უზრუნველყოფასთან ერთად ნაკრების სახით და როგორც წესი, ეს პროგრამული და აპარატურული უზრუნველყოფა საბოლოოდ ხელმისაწვდომი იქნება საცალო მაღაზიათა ქსელში საჯაროდ და მიუთითებს, რომ მოცემული პროგრამული უზრუნველყოფა ხარისხობრივად უკვე მზადაა მასობრივი გამოშვებისთვის. RTM შეიძლება გამოიყენებოდეს იმ შინაარსითაც, რომ პროგრამული უზრუნველყოფა უკვე გადაცემულია მწარმოებლებისთვის აპარატურაზე განსათავსებლად, მომხმარებლებისთვის ამ აპარატურასთან ერთად მისაწოდებლად. მაგალითად, როდესაც მზადაა საოპერაციო სისტემის RTM ვერსია, ერთი მხრივ შემმუშავებელი კომპანია, სწორედ ამ ვერსიას ათავსებს ინფორმაციის შესანახ ფიზიკურ მოწყობილობებზე, როგორიცაა კომპაქტ-დისკები, ფუთავს ყუთში და გამოაქვს გასაყიდად, მეორე მხრივ კი სხვა აპარატურის (ლეპტოპების ან სმარტფონების) მწარმოებლები, საბითუმოდ ყიდულობენ ამ ვერსიას, აყენებენ თავიანთ შექმნილ მოწყობილობებზე და უკვე პროგრამულ უზრუნველყოფასთან ერთად ყიდიან რიგით მომხმარებელზე. თავად ტერმინი არ განსაზღვრავს მიწოდების საშუალებებს ან მოცულობას; ის მხოლოდ იმას აღნიშნავს, რომ პროდუქტი მზადაა მასობრივი გავრცელებისთვის. მისაწოდებელი ვერსია შემქმნელი ორგანიზაციიდან, ძირითადად, ფიზიკური სახით გამოდის გადასამრავლებლად ან ასლის გადასაღებად, ინტერნეტში განთავსებისთვის.
საყოველთაო ხელმისაწვდომობა
საყოველთაო ხელმისაწვდომობა (ინგ. General availability; შემოკლ. GA) არის ეტაპი, როცა უკვე გაყიდვისთვის საჭირო ყველა მოსამზადებელი სამუშაო დასრულებულია და პროგრამული უზრუნველყოფა ხელმისაწვდომია შესაძენად, რასაკვირველია ენის, რეგიონის, გამოშვების ფორმის მიხედვით. მოსამზადებელი სამუშაოები, შეიძლება მოიცავდეს უსაფრთხოებისა და თავსებადობის ტესტებს, აგრეთვე სხვადასხვა ენებზე თარგმნას და მსოფლიო მასშტაბით ხელმისაწვდომობის უზრუნველყოფას. დროის შუალედი RTM-სა და GA-ს შორის, შესაძლოა გაგრძელდეს კვირებიდან თვეებამდეც კი, ვინაიდან საბოლოო ხელმისაწვდომობის გამოცხადებამდე არსებული მოსამზადებელი სამუშაოები, გარკვეულ დროს საჭიროებს. ამის შემდეგ, პროგრამული უზრუნველყოფა უკვე ოფიციალურადაა გამოშვებული და გამოიყენება მომხმარებლების მიერ.
გამოშვება ინტერნეტისთვის
გამოშვება ინტერნეტისთვის (ინგ. Release to the web; შემოკლ. RTW) ანუ ვებვერსია გულისხმობს პროგრამულ უზრუნველყოფას, რომელიც მომხმარებელს ინტერნეტის საშუალებით მიეწოდება. ასეთ შემთხვევაში, გამოშვება ფიზიკური სახით არ იწარმოება. ვებვერსიები თანდათან უფრო ხშირდება, ინტერნეტის ზრდის კვალდაკვალ.
მხარდაჭერა
პროგრამული უზრუნველყოფა, სიცოცხლისუნარიანობის განმავლობაში იღებს ხოლმე სხვადასხვა მომსახურებებს, რომელიც მოიცავს ხარვეზების აღმოფხვრასა და განახლებების ნაკრებებს (ინგ. Service Pack; შემოკლ. SP), ე.წ. „შუალედურ გამოშვებებს“. მაგალითად, Microsoft-მა გამოუშვა განახლებების სამი ძირითადი ნაკრები Windows XP-ის 32-ბიტიანი ვერსიისთვის და განახლებების ორი ნაკრები 64-ბიტიანი ვერსიისთვის. მსგავსი ნაკრებები წარმოადგენს განახლებების, გამოსწორებული შეცდომების, გაუმჯობესებული შესაძლებლობების ერთობლიობას, რომელიც მოწოდებულია ერთიანი დასაყენებელი პაკეტის სახით. მისი საშუალებით, ახალი შესაძლებლობების დამატებაც ხდება ხოლმე. ზოგიერთი პროგრამული უზრუნველყოფისთვის გათვალისწინებულია მუდმივი მხარდაჭერა. ასეთი სახის პროგრამებია, ძირითადად ანტივირუსები და მასიური მრავალმოთამაშიანი ონლაინ თამაშები. ამის კარგი მაგალითია თამაში Minecraft, ინდი-თამაში შემუშავებული Mojang კომპანიის მიერ, რომლისთვისაც დამახასიათებელია ხშირი „განახლებები“ სიახლეების დამატებითა და ხარვეზების გამოსწორებით.
პროგრამის გამოყენების დასასრული
პროგრამული უზრუნველყოფის გაყიდვის ან მხარდაჭერის შეწყვეტის შემთხვევაში ამბობენ, რომ მისი სიცოცხლის ციკლი დასრულდა, რადგან მასზე მუშაობა შეწყვეტილია, მიტოვებულია, ან პროგრამა მოძველებულია, თუმცა ერთგული მომხმარებლების წყალობით, შეიძლება მაინც გააგრძელოს არსებობა გარკვეული დროით.
გამოყენების დასასრულის თარიღის მიღწევის შემდეგ, შემმუშავებელი, ჩვეულებრივ, წყვეტს ახალი შესაძლებლობების დამატებას, არსებული ხარვეზების (მათ შორის, ამ თარიღამდე ცნობილის) გამოსწორებას, უსაფრთხოებასთან დაკავშირებული განახლებების გამოშვებასა და ნებისმიერ სხვა სახის მხარდაჭერას.
სქოლიო
კომპიუტინგი
პროგრამული უზრუნველყოფის შემუშავება