« Home | Cel mai rapid calculator din lume » | Culmea plagiatului » | Cum sa castigi $5000/ora cu o camera foto » | Back, up and running... » | Efemeritatea notiunilor de bine si rau » | Nu doar soldatul sovietic... » | Romani la circ » | Parada Gay in Seattle » | Puiul de vrabie » | Unofficial Zune Ad »

De cati angajati Microsoft e nevoie pentru a schimba un bec?

Cautand un articol mai vechi, am dat peste un post mai vechi al unui coleg care descrie o parte din costurile asociate cu programarea intr-o companie de dimensiunile Microsoft.

Pornind de la bancurile clasice de tipul "de cati ingineri/matematicieni/emo e nevoie pentru a schimba un bec", Eric prezinta varianta urmatoare:

  • One dev to spend five minutes implementing ChangeLightBulbWindowHandleEx.
  • One program manager to write the specification.
  • One localization expert to review the specification for localizability issues.
  • One usability expert to review the specification for accessibility and usability issues.
  • At least one dev, tester and PM to brainstorm security vulnerabilities.
  • One PM to add the security model to the specification.
  • One tester to write the test plan.
  • One test lead to update the test schedule.
  • One tester to write the test cases and add them to the nightly automation.
  • Three or four testers to participate in an ad hoc bug bash.
  • One technical writer to write the documentation.
  • One technical reviewer to proofread the documentation.
  • One copy editor to proofread the documentation.
  • One documentation manager to integrate the new documentation into the existing body of text, update tables of contents, indexes, etc.
  • Twenty-five translators to translate the documentation and error messages into all the languages supported by Windows.The managers for the translators live in Ireland (European languages) and Japan (Asian languages), which are both severely time-shifted from Redmond, so dealing with them can be a fairly complex logistical problem.
  • A team of senior managers to coordinate all these people, write the cheques, and justify the costs to their Vice President.

Dincolo de aspectul haios, lista de mai sus dezvaluie un aspect pe care multi il ignora: intr-o companie de talia Microsoft, orice modificare a codului atrage dupa sine costuri colaterale considerabile (in timp si resurse). Ganditi-va la asta data viitoare cand va intrebati de ce n-am mai adaugat la produsul X un buton micut care sa faca Y.

Labels:

Nu zic nu, adevărat e - e foarte greu să faci schimbări chiar mici într-un soft cît de cît maturizat. Mai ales la nivel jos.
Asta nu înseamnă decît un punct în minus pentru programele monolit care fac mai mult decît li se cere.
Într-adevăr, e greu să schimbi un item dintr-un ansamblu de 25000, şi e complicat să modifici o linie într-un fişier care după partea de precompilare ajunge la 500.000 de linii.
Nu înseamnă că vă condamn, doar că uneori, un re-design ajută :P Şi pentru backwards compatibility există Wine :P

Dorin, n-ai inteles nimic din articol...

Te referi la redesign/reimplementare a intregului feature sau chiar implementarea unui nou sistem de luminare. In termenii echivalenti ai articolului, asta inseamna cel putin redesign-ul becului si al fasung-ului (eventual si al lampii care sa-l tina, al intrerupatorului, al cablajului electric necesar pentru puterea electrica maxima a becului).
Un exemplu de redesign ar insemna punere de neoane :-). Pentru asta mai sunt nevoie de un user-experience specialist si un PM care sa faca un studiu de piata si sa ajunga la concluzia ca luminatul incandescent nu satisface utilizatorul, un grup manager care sa accepte ideea si sa-si propuna ca viitorul produs sa foloseasca alta tehnologie, un grup de designeri care sa recomande folosirea de neoane vs. lampi cu gaz, minim un dev care sa faca design-ul, un grup de devi care sa faca peer si intial review, niste arhitecti si dev leads, care sa aprobe design-ul, etc :-) Cu alte cuvinte, redesign-ul nu exclude nici unul din pasii aia pe care i-a ilustrat Eduard, din contra, adauga mai multi...

A propos, Eduard a uitat niste oameni:
- tehnicienii de la buildlab, aia care trag firele si cableaza becul, fac o derivatie ca atunci cind becul e schimbat si testat sa nu afecteze intreaga cladire daca becul ia foc si care suprevegheaza testingul.
- devii de la servicing, care schimba becul efectiv si pun abajurul la loc.
- un dev care sa scrie patentul pentru "method and aparatus for changing a bulb". Un reviewer care sa verifice si submita aplicatia de patent.
- cei de la sales and marketing & pr, care advertise noul bec si imbunatatirea luminatiei cladirii

love the procedures at microsoft :p

in sfarsit o recunostere (chiar daca indirecta) a meritelor freetarzilor de la open source software pe blogul asta:))

"Ganditi-va la asta data viitoare cand va intrebati de ce n-am mai adaugat la produsul X un buton micut care sa faca Y."

Să reformulez: gândiţi-vă când cereţi ca un gigant care scoate grămezi de bani de pe urma voastră să facă un soft aşa cum ar fi trebuit făcut de la început! Le răniţi sentimentele lor fragile, ce dracu'?!

Cam aşa am înţeles eu îndemnul.

RRR, esti un neghiob.

@Anonymous: Pe aici e o regula: cand critici sau injuri pe cineva, semneaza! Sa injuri si sa te ascunzi sub umbrela anonimatului - not cool. Really.

Post a Comment

Links to this post

Create a Link

Despre mine

Aboneaza-te

RSS Feed RSS         Aboneaza-te prin e-mail Email
 

Links

Archives

BackLinks


 

Feeds

Atom Add To Bloglines