Kas yra oficialus patvirtinimas?

Dažnai naudojamas kompiuterių grandinių ir programinės įrangos testavimui, formalus patikrinimas yra tada, kai šių sistemų funkcija analizuojama naudojant matematines formules. Kuriant programinę įrangą, procesas paprastai naudojamas norint parodyti, ar programa veikia tinkamai, remiantis iš anksto nustatytu modeliu. Kartais pasirodo, kad teorinis modelis yra nepatenkinamas. Be programinės įrangos šaltinio kodo, kuriant kombinuotas grandines, kurios naudojamos skaičiavimams kompiuteriuose, taip pat kompiuterio atmintyje, gali būti naudojamas formalus patikrinimas. Įvairūs metodai apima patikrinimą po fakto, tikrinimą lygiagrečiai ir integruotą patikrinimą, be įvairių metodų.

Matematinės skaičiavimo procedūros, vadinamos algoritmais, naudojamos formaliam tikrinimui, siekiant patikrinti gaminių funkcijas kiekviename kūrimo etape. Programinės įrangos kūrėjai gali aptikti klaidų ir klaidų tiek šaltinio kode, tiek modelyje, naudotame jo kūrimui. Kartais esminiai kodo rašymo pakeitimai gali būti padaryti prieš tai, kai projektavimo klaida paveiks galutinį rezultatą. Patikrinimo veiksmas paprastai padeda nustatyti, ar gaminys atlieka tai, kas buvo numatyta, ir ar atitinka programos, kuriai jis skirtas, specifikacijas.

Oficialus patikrinimas gali įvykti užbaigus gaminį, kuris vadinamas patikrinimu po fakto. Standartinis metodas, naudojamas visame projektavimo ir kūrimo procese, nėra analizuojamas tol, kol sistema nėra baigta. Šiame etape nustačius rimtas klaidas, dažnai atliekamos brangios ir daug laiko reikalaujančios peržiūros. Kūrimą ir tikrinimą taip pat gali atlikti dvi atskiros komandos, kad patikrintų lygiagrečiai. Bendraudami kūrėjai gali sutelkti dėmesį į savarankiškas užduotis viso projektavimo proceso metu.

Integruotas patikrinimas yra tada, kai viena komanda atlieka kūrimą ir reikiamą vertinimą. Norint patikrinti produkto galimybes, dažnai naudojamos sudėtingos matematinės sąvokos. Formalaus patikrinimo metodai skirtinguose projektuose skiriasi, tačiau dažnai naudojamas modelio tikrinimas. Techninės įrangos arba programinės įrangos modelis susideda iš įvairių savybių, kurių dizaineriai nori galutiniame gaminyje. Modelis ir sistema gali būti periodiškai tikrinami, ar savybės sutampa.

Kitas formalaus patikrinimo metodas apima matematinių formulių ir logikos naudojimą sistemai ir jos savybėms pavaizduoti. Formalioje sistemoje apibrėžtos taisyklės paprastai randamos logikoje. Abu šie metodai naudoja įvairias priemones, kad nustatytų, ar atitinka tam tikrą produkto specifikaciją. Kūrėjai formalaus tikrinimo procese gali naudoti įvairių tipų programinę įrangą, kurių kiekviena yra pritaikyta konkrečiai sistemai arba programavimo kalbai.