Miticul Man luni, sau cum să creați sisteme software

Miticul Man luni, sau cum să creați sisteme software

Această carte - Jubilee (completată și revizuită) ediție un fel de biblie pentru dezvoltatorii de software din întreaga lume, scrise de Brooks în 1975. În același timp, cartea a fost publicată în limba rusă și a devenit de mult timp o raritate. Statele Unite consideră că, fără a citi cartea Brooks nu poate avea loc nici un lider mare proiect software.
Poate că una dintre problemele industriei mondiale de calculatoare este în „timp din cauza cariilor“, atunci când o nouă generație de specialiști nu pot folosi din plin experiența acumulată anterior. Motivul este fără precedent în istoria omenirii, schimbarea ritmul de tehnologie și numărul de creștere exponențială a personalului angajat în industrie. În țara noastră acest proces este chiar mai pronunțată din cauza schimbării bruște la începutul anilor '90, când forța împrejurărilor să înlocuiască specialiștii din era sovietică aproape peste noapte o nouă generație de profesioniști de calculator.
Un pic de istorie: cum a făcut cartea

„Miticul Man luni“: douăzeci și cinci de ani mai târziu,

Acum este oarecum uitat că una dintre cele mai mari proiecte software de toată istoria calculatorului și la această zi este crearea de IBM OS / 360, dintre care prima versiune a fost dezvoltat în 1963 sistem de operare - 1966. Acesta a fost urmat de sute de programatori, iar cantitatea totală de muncă a fost de 5.000 de ani-om. Printre liderii acestui proiect a fost Frederick Brooks în 1985 cu Bob Evans și Erikom Blohom, el a fost distins cu US Medalia Națională pentru Tehnologie pentru activitatea sa pe OS / 360.

Amintiri de zile de mers

În liceele, am fost învățați cum să rezolve probleme matematice, algoritmi de a face și a scrie programe. Dar cum a face produsele finite software, planul de munca, gestionarea echipelor de dezvoltare? Căutați răspunsurile la aceste întrebări, atunci aveau propria lor, în mare parte prin încercare și eroare.

Eseu despre inginerie software

De fapt, cartea F. Brooks este o colecție de eseuri în care discută succesiv problemele-cheie pentru a dezvolta proiecte software mari (și relevanța lor în ultimii 30 de ani crește numai): cresterea productivitatii programatorilor, organizarea de lucru în echipă, planificarea și executarea programului de implementare.

În același timp, a considerat cele mai diverse aspecte ale subiectului: bazele estetice ale programării, organizarea muncii la diferite niveluri, esența conducerii, repartizarea funcțiilor într-un grup de dezvoltatori, metode de depanare, tehnici, documentare, etc ...

* De ce este „om-luna“ este mitic? Un răspuns detaliat la această întrebare poate fi găsit în carte. Pe scurt, el a formulat ca Legea Brooks: „Dacă proiectul programatorului nu se încadrează în intervalul de timp, adăugarea de muncă se va face decât să întârzie sfârșitul său.“ Complexitatea proiectelor, așa cum se știe, este estimat a fi „om-luni“. "Mythos".

Trebuie reamintit faptul că, în cei 70 de ani de discuție pe tema dezvoltării software-ului a fost în mare parte, în conformitate cu discuția: „Programare - știința sau arta?“. Brooks, unul dintre primii a dat răspunsul corect la această întrebare este foarte specific, foarte inteligent, dar încă - tehnologie.

Astăzi, o astfel de teză pare evidentă, dar, de fapt, la punerea sa în aplicare practică este încă foarte departe. De exemplu, dacă te uiți la pregătirea profesioniștilor IT de astăzi, este ușor de văzut că acum (ca acum 25 de ani), liceul nostru național are drept scop de a produce oameni de știință de cercetare, nu ingineri. Ca urmare a acestui mare de formare individuală (așa cum mulți cred) pentru un motiv oarecare nu vrea să toarne în implementarea cu succes a proiectelor în practică.

De interes special pentru editia aniversara a cărții, pentru că se adaugă câteva capitole. În special, acesta a inclus un eseu polemic ascuțit „o formulă universal“ (1986), detaliu Teza că „timp de decenii nici o dezvoltare în domeniul tehnologiei software nu permite creșterea productivității în programarea în ordine.“ Desigur, există ceva să se certe, dar în orice caz, este util să se reflecteze asupra întrebării, și în ce măsură acest lucru este productivitatea programator. La urma urmei, azi este clar că, în general, rezultatul final este destul de slab corelată cu numărul de linii scrise, și cu atât mai mult cu cantitatea de RAM necesară.

Deci, poate, înainte de a începe un nou proiect software, la urma urmei, are sens pentru a verifica

Se pare, de aceea printre dezvoltatorii români de software există o iluzie că istoria modernă de calculator a început în urmă cu aproximativ zece ani (în sensul că acumulate tocmai în această perioadă de experiență este importantă pentru practica de azi.) Modul cel mai negativ este prezentată o astfel de reprezentare, de exemplu, atunci când vine vorba de înțelegerea faptului că punerea în aplicare a proiectelor complexe, care nu pot fi rezolvate metode pur tehnologice, și necesită o înțelegere teoretică și metodologică adecvată.

Acesta a fost atunci, și este util să se reamintească faptul că au fost efectuate astfel de studii pentru o lungă perioadă de timp și înființarea sa a fost pusă în urmă cu treizeci de ani, când industria de calculatoare la nivel mondial a atins nivelul locurilor de muncă într-adevăr mari *. Cel mai curios lucru care, în publicațiile „vechi“ pot fi găsite acum nu numai poziția metodologică importantă, dar, de asemenea, relevante din punctul de vedere astăzi sfaturi pur practice „cum de a construi sisteme software în mod corect.“

PS: Arhiva conține, de asemenea, pdf-versiune de calitate excelentă (inițial fișierul de calculator, probabil), tabelul cuprins, dar nu există nici o imagine-cravată în fața capetelor, care Brooks, în asigurarea lui, a luat un godskachat DLE 11.1 filme viziona gratuit