SWEBOK, sau „ Ghidul de Inginerie Software Corpului de cunoștințe “ sau „ organism de inginerie software Ghid de cunoștințe “ , este un cadru stabilit de IEEE Computer Society la cunoștințe structură în inginerie software . Acesta urmărește să delimiteze domenii de cunoaștere bine identificate și să sintetizeze practicile și tehnicile general acceptate, în timp ce urmărește să stabilească recunoașterea ingineriei software ca disciplină a ingineriei. Versiunea electronică este pusă la dispoziție gratuit de IEEE.
SWEBOK își propune să codifice cunoștințele profesionale și, astfel, să servească drept ghid pentru profesioniștii în dezvoltare de software pentru exercitarea profesiei lor, către organismele de formare academică sau profesională pentru dezvoltarea cursurilor de ucenicie și pentru organizațiile profesionale. . Prin urmare, SWEBOK se adresează profesorilor responsabili de construirea programelor de învățământ superior și studenților. Poate fi folosit și de companiile private și publice ca ghid de cunoaștere a domeniului pentru a implementa bune practici de inginerie software. Aceasta nu înseamnă că fiecare inginer va trebui să-l aplice fără să se gândească.
Scopul său este de a structura ingineria software în 15 domenii de competență și de a prezenta practici, tehnici și standarde corespunzătoare „general acceptate”. Astfel se face un inventar metodologic care permite orientarea practicantului. Cu toate acestea, atenția cititorului este atrasă de faptul că acesta este un ghid al corpusului și nu corpusul în sine: SWEBOK se referă astfel la cunoștințele comerciale existente, fără a căuta să înlocuiască alte lucrări și surse de referință. În plus, documentează modul în care ingineria software este o disciplină în sine.
Lucrările pentru înființarea SWEBOK au început în 1993 ca urmare a unei inițiative comune între IEEE și ACM și au fost organizate în trei etape.
Începutul dezvoltării acestui sistem de referință coincide cu activitatea Organizației Internaționale pentru Standardizare inițiată în 1990 și care a dus la promulgarea în 1995 a standardului ISO 12207 privind ciclul de viață al proceselor software. Acest standard a servit ca bază de referință pentru SWEBOK, care este totuși independent de acesta și nu se limitează la standard.
O primă versiune a SWEBOK a fost produsă în 1998, dar a avut nevoie de îmbunătățiri.
ACM s-a retras din corpurile de conducere ale SWEBOK în 2000, după ce a observat că IEEE ia în considerare utilizarea SWEBOK ca bază pentru reglementarea accesului la profesia de inginer software (printr-o licență de exercițiu), la care ACM se opune în mod fundamental .
O a doua versiune a SWEBOK a fost publicată în 2004. A fost publicată în 2005 sub forma unui raport tehnic de standardizare ISO / IEC TR 19759: 2005.
Standardul ISO 12207 a fost revizuit în 2008 și schimbat în „Inginerie de sisteme și software - Procese ale ciclului de viață al software-ului”.
O a treia versiune, SWEBOK 3.0, a fost publicată în 2014. A fost publicată în 2015 sub forma unui raport tehnic de standardizare ISO / IEC TR 19759: 2015 distribuit și de AFNOR. Aceasta este versiunea actuală a depozitului.
Standardul ISO 12207 este revizuit în 2017 și devine un standard comun cu IEEE și citează SWEBOK ca raport tehnic de referință.
SWEBOK structurează ingineria software în 15 domenii de cunoaștere. Fiecare dintre ele este dedicat unui capitol:
Aceste domenii și procesele evocate în domenii nu trebuie înțelese ca activități secvențiale.
SWEBOK identifică următoarele discipline ca fiind legate de ingineria software:
Proiectul SWEBOK este rezultatul colaborării dintre universități, industrii și asociații profesionale:
A existat o reacție puternică în timpul procesului de creare a SWEBOK, datorită intenției declarate a IEEE de a utiliza SWEBOK pentru a reglementa accesul la profesia de inginer software pe baza unui mecanism. Licență profesională. ACM, care a fost co-inițiator al SWEBOK, sa retras astfel de proiect în 2000, din cauza opoziției sale riguroase la o astfel de restricție de reglementare, și poziția sa în favoarea accesului liber la profesie.
Mai mulți autori au criticat public o versiune preliminară a SWEBOK 2004, în timpul unei faze de apel public pentru comentarii, fie cu intenția de a stabili o licență profesională, fie pe baza conținutului considerat a fi discutabil, insuficient sau eronat, cum ar fi Martin Fowler , Cem Kaner (profesor de inginerie software) și Grady Booch .
De atunci, SWEBOK a suferit mai multe revizuiri care au implicat peste 150 de practicanți. Cuvântul înainte de versiunea actuală nu mai menționează mecanismul de licență profesională ca exemplu, printre procedurile disponibile profesiilor de diseminare a cunoștințelor necesare exercitării lor, la fel ca studiile, instruirea și certificările. Cea mai recentă versiune a SWEBOK ia în considerare și practicile agile și specifică pentru mai multe domenii, cum ar fi cerințele sau proiectarea, că procesul este neapărat iterativ.