Niedawno znalazłem bardzo przydatny i prosty do przeprowadzenia test, pozwalający ocenić jakość i warunki pracy programistów. Odpowiada on także na pytanie "czy moja agencja jest dobrze przygotowana do wszelkich prac programistycznych".
Autor testu - Joel Spolsky jest założycielem Fog Creek Software, małej firmy programistycznej w Nowym Jorku. Ukończył Uniwersytet Yale i pracował jako programista i menedżer w Microsofcie, Viacom i Juno. Joel w dość zabawny sposób opisuje swój test:
Czy kiedykolwiek słyszałeś o SEMA? Jest to dość ezoteryczny system pomiaru sprawności zespołu programistycznego. Stop, zaczekaj! Nie zaglądaj tam! Samo zrozumienie tego materiału zajmie ci ze sześć lat. Dlatego wypracowałem sobie mój własny, swobodny i wysoce nieodpowiedzialny test do oceny jakości zespołu. Jego wielką zaletą jest to, że zabiera około 3 minut. Czas, jaki zaoszczędzisz, wystarczy na studia medyczne.Mimo, iż Joel przygotowywał swój test z myślą o firmach wytwarzających oprogramowanie to doskonale sprawdza się on także w przypadku agencji interaktywnych (które działają na styku agencji reklamowej i firmy informatycznej).
A jak wygląda ten test? Dosyć prosto - wystarczy odpowiedzieć tak lub nie na 11 pytań. W oryginalnym teście pytań jest co prawda 12, ale 2gie pytanie nie dotyczy agencji interaktywnych.
Test Joela
- Czy stosujesz system kontroli wersji?
Czy możesz zbudować wersję w jednym kroku?- Czy stosujesz codzienne budowanie wersji?
- Czy używasz system zarządzania błędami?
- Czy usuwasz błędy zanim napiszesz nowy kod?
- Czy masz harmonogram aktualizowany na bieżąco?
- Czy masz specyfikację?
- Czy programiści mają komfortowe warunki pracy?
- Czy używasz najlepszych dostępnych narzędzi?
- Czy masz testerów?
- Czy kandydaci piszą programy podczas rozmowy kwalifikacyjnej?
- Czy praktykujesz korytarzowe testy wygody użytkowania?
Pytanie 10 moim zdaniem dotyczy agencji interaktywnych jedynie w połowie. Testery są potrzebni, ale nie muszą być na etacie.
Do zalet Testu Joela należy to, że łatwo można uzyskać krótką odpowiedź tak lub nie na każde pytanie. Nie trzeba wyliczać liczby-linii-kodu-na-dzień, czy średniej-liczby-błędów-na-punkt-zwrotny. Przyznaj swojemu zespołowi jeden punkt za każdą odpowiedź "tak". Pewien niedostatek Testu Joela polega na tym, że naprawdę nie należy go stosować do oceny bezpieczeństwa oprogramowania dla elektrowni atomowej.
Wynik 12 jest doskonały, z 11-tką da się wytrzymać, lecz 10 lub mniej punktów znamionuje duże kłopoty. Prawda jest taka, że większość przedsiębiorstw programistycznych działa z wynikiem 2 lub 3. Potrzebują one poważnej pomocy, gdyż firmy takie jak Microsoft działają na okrągło na poziomie 12.
Oczywiście nie są to jedyne czynniki, które determinują sukces lub porażkę. Jeśli nawet masz wspaniały zespół, ale tworzy on nikomu niepotrzebny produkt, wtedy cóż, nikt go nie kupi. Można też sobie wyobrazić zespół "rewolwerowców", który nie stosuje się do żadnej reguły, lecz mimo to jest w stanie wytworzyć niezwykłe oprogramowanie, zdolne zmienić oblicze świata. Pomijając jednak wszystko inne, jeżeli tylko dopilnujesz tych dwunastu spraw, będziesz miał zdyscyplinowany zespół, zdolny do systematycznej produkcji oprogramowania.
Nie powiem ile punktów uzbierała moja agencja. Powiem jedynie, że nasz szef programistów dostał zadanie podniesienia wyniku o parę oczek:)
Pobierz ebook "Jak otworzyć sklep internetowy - ebook z poradami dla firm"
Zaloguj się, a jeśli nie masz jeszcze konta w Interaktywnie.com - możesz się zarejestrować albo zalogować przez Facebooka.
Projektujemy i wdrażamy strony internetowe - m.in. sklepy, landing page, firmowe. Świadczymy usługi związane …
Zobacz profil w katalogu firm
»
1stplace.pl to profesjonalna agencja SEO/SEM, specjalizująca się w szeroko pojętym marketingu internetowym. Firma oferuje …
Zobacz profil w katalogu firm
»
Pomagamy markom odnosić sukces w Internecie. Specjalizujemy się w pozycjonowaniu stron, performance marketingu, social …
Zobacz profil w katalogu firm
»
W 1999 roku stworzyliśmy jedną z pierwszych firm hostingowych w Polsce. Od tego czasu …
Zobacz profil w katalogu firm
»
Pozycjonujemy się jako alternatywa dla agencji sieciowych, oferując konkurencyjną jakość, niższe koszty i większą …
Zobacz profil w katalogu firm
»
Nie trzeba brać kogoś na etat :) oszczędność czasu i nerwów. Dajesz zlecenie firmie zewnętrznej takiej jak Kings.code masz problem z głowy <br /><br /><br /> <a href=\"kings.codes\" target=\"_blank\" rel=\"nofollow\">kings.codes</a>
Test jest dobry, ale tak jak piszecie specyfika działania agencji interaktywnych pociąga za sobą odrobinę inne podejście, szczególnie przy niektórych typach projektów. Wydaje mi się że problemem nie są tu też koszty oprogramowania. Prosta droga do realizacji powyższego testu, to użycie wolnego oprogramowania:<br /><br />Zarządzanie:<br /><br />PhpCollab, Tutos (The Ultimate Team Organization Software)<br /><br />Kontrola wersji:<br /><br />TortoiseCVS - klient CVS zrozumiały dla każdego nawet najmniej rozgarniętego "wykształciucha"<br />z funkcją PM<br /><br />Testy:<br /><br />JMeter - narzędzie do tworzenia testów (mniej lub bardziej zaawansowanych)<br /><br />I wiele, wiele innych.<br /><br />Wniosek. Wystarczą tylko dobre chęci i test Joela spełniamy naprawdę niskim kosztem stosując wolne oprogramowanie. Oczywiście mogą się pojawić pewne koszty wdrożenia ( szkolenia, początkowe nieporozumienia, opóźnienia itp.), co zaznaczył wcześniej Łukasz Felsztukier.<br /><br />Można tutaj dojść kolejny raz do pytania czy stosowanie takich narzędzi (lub komercyjnych) jest konieczne przy KAŻDYM projekcie w agencji interaktywnej. Otóż wg mnie nie. Dużo ważniejszy jest czynnik ludzki, cel i skala projektu, szczególnie dla tych projektów w których warstwa wizualna jest ważniejsza niż "spód" aplikacji. Dołączam kolejne pytania:<br /><br />1. Czy czynnik zarządzający potrafi wynegocjować budżet adekwatny do skali projektu, oraz sensowny (realny) czas realizacji?<br />2. Czy w Twojej agencji czynnik zarządzający nadaje na tych samych falach co graficy i programiści, inaczej rzecz rozumiejąc czy miedzy tymi trzema filarami jest jakakolwiek komunikacja? <br />3. Czy Twojej agencji udaje się wyperswadować klientowi umieszczenie 10 logotypów na stronie głównej i parę innych "ciekawych" inaczej pomysłów, które z dużym prawdopodobieństwem "położą" i opóźnią projekt? Inaczej, czy istnieje dobra komunikacja klient-agencja.<br />4. Czy każda osoba w zespole ma swojego dublera zdolnego w krótkim czasie przejąć projekt w razie problemów?<br /><br />I tutaj dodałbym 2 podpunkty z testu Joela:<br /><br />5. Czy masz specyfikację? (niestety projekty "na gębę" często źle się kończą, jeżeli wogóle się zaczynają)<br />6. Czy praktykujesz korytarzowe testy wygody użytkowania? (bardzo ważny element, szczególnie w kwestii działania nawigacji) - wiele agencji ten podpunkt praktykuje niestety w momencie publikacji. Choć kto jest bez winy niech pierwszy rzuci kamieniem :)<br /><br />Oczywiście w zależności od skali projektu można by dodać kilka innych punktów - usprawniających działanie agencji.<br /><br />W przypadku dużej przewagi "dolnej" warstwy aplikacji test Joela znowu nabiera jak najbardziej sensu.<br /><br />Jeszcze mała uwaga do stwierdzenia: "zespołowe tworzenie oprogramowania to zupełnie co innego niż pisanie stronek w PHP". Wbrew pozorom "pisanie stronek w PHP" staje się coraz bardziej zespołowe i zaczyna być wspierane przez "wielkich" tego świata swoimi narzędziami, patrz: <a href="http://www.borland.pl/pr/Delphi_for_php_announcement.shtml" target="_blank">Delphi for PHP</a><a href="http://www.borland.pl/pr/Delphi_for_php_announcement.shtml" class="non-html"><br /></a>
Bardzo dobre. Nasz CIO podpisuje się pod tym testem. Nasza strategia zakłada, że trudno mówić o poważnym interactive bez IT na wysokim poziomie.
Czytając komentarze ze zdziwieniem zauważam, że piszecie o produktach firm software'owych jako czymś niesamowicie różniącym się od tego co wychodzi z agencji. A przecież projekty e-marketingowe mają jak najbardziej cechy projektów IT i obarczone są większością problemów, z którymi spotykają się twórcy software'u (i wcale nie muszą to być milionowe projekty e-commercowe).<br /> <br /> Wszystkie wymienione punkty jak najbardziej przystają do agencji i pozwalają ocenić jej jakość w obszarze IT, no...może dodałbym jeszcze jedno, 13ste pytanie: czy Twoi project manager'owie potrafią zaplanować i zarządzać scopem projektu IT ;-)
Zgadzam się z Piotrem. Test Joela jest jak najbardziej odpowiedni dla agencji interaktywnych. Zawsze częścią produktu końcowego agencji [mniejszą lub większą] jest oprogramowanie a Test Joela jest prostym [i wystarczająco dobrym, przynajmniej na tym poziomie skomplikowania] narzędziem oceny dojrzałości procesu tworzenia tego oprogramowania. I powiedziałbym nawet że właśnie dlatego, że jest prosty to jest doskonały dla agencji interaktywnych. Dla bardziej programistycznych i poważniejszych rzeczy jest <a class="non-html" href="http://www.sei.cmu.edu/cmmi/">CMMI</a>, a dla agencji to ewentualnie <a class="non-html" href="http://www.stsc.hill.af.mil/crosstalk/1996/11/xt96d11h.asp">CIMM</a> ;-) Niestety, agencje traktują tworzenie oprogramowania po macoszemu, co istotnie może mieć źródło w najwyższym kierownictwie.<br /> <br /> Test Joela to zdecydowanie dobry punkt startowy dla wszystkich, którzy chcieliby poprawić proces tworzenia oprogramowania. Bagatelizowanie jego wyniku jest moim zdaniem groźnym obrażaniem się za to, że wytyka się komuś błędy i zaniedbania.<br /> <br /> Swoją drogą, żeby zrozumieć kontekst Testu Joela warto zapoznać się z całą zawartością <a class="non-html" href=http://www.joelonsoftware.com">joelonsoftware.com</a> i bezkompromisowym podejściem Joela do wielu spraw, np. <a class="non-html" href="http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html">rekrutacji</a>, <a class="non-html" href="http://www.joelonsoftware.com/articles/BionicOffice.html">warunków pracy programistów</a> czy <a class="non-html" href="http://joelonsoftware.com/articles/customerservice.html">obsługi klienta</a>.<br /> <br /> Nie zgodzę się przy tym, że punkt 2 nie dotyczy agencji interaktywnych. Jeśli agencja pracuje nad aplikacją webową, np. w j2ee to jak najbardziej powinna być w stanie postawić builda w jednym kroku. Zreszta... punkty 2 i 3 są dość mocno ze sobą powiązane. Jeśli trzeba wielu kroków, żeby postawić nowego builda, to w natłoku pracy w końcu pewnie przestanie się go stawiać codziennie.
Piotr - rozumiem Cie, czesc narzedzi jest faktycznie prosta ale czesc wymaga wiekszych nakladow (wynikajacych glownie ze swiadomosci problemu a to jak pisalem w wielu agencjach typowo kreatywnych nie wystepuje). Niemniej zgadzam sie z ogolna konkluzja, ze to sa dobre praktyki - warte uwagi w kazdej sytuacji gdy tworzy sie kod.
Chyba sie nie do konca rozumiemy. Czy uzywanie CVSa, zadbanie o to by programista wiedzial od poczatku co ma robic, by nikt juz po rozpoczeciu prac mu jej nie przerywal 'bo sie PMowi cos przypomnialo', czas na testy itd oznacza, ze firma nie moze byc kreatywna?<br /> <br /> To co definiuje test Joela to zbior bardzo dobrych praktyk programistycznych, ktore powinien miec opanowany kazdy programista po szkole, ktoremu choc raz gdzies zniknely zrodla albo, ktoremu przyszlo cos po kims poprawiac. Wdrozenie proponowanych przez niego rozwiazan IMHO nie kosztuje wiele poza dobra wola i ew kilkoma szkoleniami wewnatrz dzialowymi. No i najwazniejsze: poza osoba, ktora bedzie o to dbala, bo w agencjach sa raczej indywidualiscie i jak sie ich nie wezmie 'za morde' to kazda tego typu inicjatywania, chocby nie wiem jak sluszna, sie im szybko znudzi i wroca do 'kazdy sobie rzepke skrobie'.
Piotr - te agencje, ktorych klienci chca placic za dobra technologie (np. takie ktore obsluguja wieksze systemy eCommerce) oczywiscie tak robia i maja dobry soft. <br /> <br /> Natomiast agencje, ktore obsluguja klientow liczacych glownie na kreatywnosc i jednorazowe fajne strzaly beda mialy problem w uzasadnieniu wyzszych kosztow softu, ktory po 3 mc dzialania z zalozenia idzie do kosza. <br /> <br /> My tworzymy od zawsze wlasny, w moim nieskromnym mniemaniu dobry produkt, spelniamy test Joela ale czy kazda agencja musi obrac sciezke tak bardzo techniczna tego pewien nie jestem :) Poza tym wiele rzeczy w Sieci tworzy sie jako dzialajacy prototyp i ulepsza ewolucyjnie, prawda?
Pozwole sobie nie zgodzić się z Wami. Doskonale wiem jak wyglądają działy IT w agencjach interaktywnych i z jakimi bolączkami się spotykają, i śmiało mogę stwierdzić, że test Joela jest jak najbardziej na miejscu. Wystarczyło by wdrożyć jego sugestie (co poza dobrymi chęciami, dyscypliną i elementarną wiedzą programistyczną nic by nie kosztowało) by w krótkim okresie czasu znikneły problemy typu błędy 503, przekraczanie przez programistów harmonogramu, niemożliwość kontynuowania pracy przez kogoś innego gdy twórca jakiegoś modułu/strony/aplikacji jest akurat na chorobowym i mnóstwo innych rzeczy na które klnie mnóstwo project managerów.
Mysle, ze jesli mowimy juz o tym jak powinno sie pracowac w szeroko pojetym IT to do agencji interaktywnych bedzie latwiej przylozyc to o czym pisze Tom DeMarco - jeszcze wiekszy nacisk na "czynnik ludzki".
Test jest niezły, ale Joel nie zadał sobie trudu określenia poziomu dodatkowych kosztów, jakie wiążą się z wprowadzeniem każdego z tych punktów do średniej wielkości firmy, choć niektóre punkty to mus.<br /> Tomek słusznie zauważył różnice między Fog Creek a typową agencją interaktywną. W związku z tym ciekawie by było opracować podobny test, ale dla agencji.<br /> Mój typ na numer 1? Czy ludzie w Twojej agencji kochają swoją pracę.<br /> Kto dopisze resztę?
Test Joela najlepiej IMHO pasuje do firmy tworzacej produkty informatyczne - np. Electronic Arts, Microsoft :)<br /> <br /> Myślę, że większość agencji idzie w stronę kreacji a nie IT i ten test będzie dla wielu trudny do spełnienia także z powodu po prostu niskiej świadomości technicznej na poziomie zarządu. Zauważ, że spełnienie testu Joela czy generalnie tworzenie dobrego oprogramowania musi być silnie wpisane w politykę firmy i musi być wsparte sporą wiedzą (zespołowe tworzenie oprogramowania to zupełnie co innego niż pisanie stronek w PHP). <br /> <br /> Niemniej firmy które rozwijają swoją platformę nie powinny mieć większych problemów z osiągnięciem takiego poziomu bo inaczej po prostu trudno zapanować nad tym co się dzieje :)<br /> <br /> Szczerze mówiąc jestem zaskoczony tym, że opublikowałeś test Joela - in plus oczywiscie :) <br /> <br /> btw. Niedawno Helion przetlumaczyl druga ksiazke Joela, duzo tam o Internecie i tworzeniu aplikacji webowych - polecam serdecznie, dobra ksiazka od praktykow dla praktykow. Pierwsza (z ktorej pochodzi test) takze jest nieprzecietna :)
Wyślijcie to do Prokomu ;)
Na 11-12 punktów to trzeba jednak trochę popracować :)
11 jest dobre :) i dużo mówi o kandydacie :)