Czy cele SMART są przydatne dla programistów? [Zamknięte]

57

Kilka organizacji, które znam, wykorzystują cele SMART dla swoich programistów. SMART jest akronimem określającym konkretne, mierzalne, osiągalne, odpowiednie i określone w czasie. Są dość powszechne w dużych korporacjach.

Moje wcześniejsze doświadczenia z celami SMART nie były aż tak pozytywne. Czy inni programiści uznali je za skuteczny sposób pomiaru wydajności? Jakie są przykłady dobrych celów SMART dla programistów (jeśli istnieją).

Craig Schwarze
źródło
Chociaż chciałbym wierzyć, że odpowiedź brzmi „tak”, to jeszcze nie doświadczyłem dużych poziomów, które powinny mi dać, jeśli chodzi o moje moce. ;)
JB King
17
„Określone mierzalne osiągalne istotne i ograniczone czasowo” - nic z tą nudną nazwą nie może mieć żadnego zastosowania.
Wymagałoby to ścisłego procesu wodospadu. Tymczasem jest to uważane za przestarzałe, a od ponad dekady używane są różne wersje zwinne.
vartec
1
Poddałbym się, że nie są przydatne w prawie każdym zawodzie. Mierzenie tego, co jest łatwe lub możliwe do pomiaru numerycznego, powoduje ogólnie pomiar niewłaściwej rzeczy.
HLGEM

Odpowiedzi:

52

Jednym słowem

Nie

Po pierwsze: moje projekty nigdy nie były na tyle stabilne, że mogłem ustalić cele SMART o dowolnym znaczeniu. Przedziały czasowe między momentem zmiany moich ról w projekcie a momentem wykonania doskonałych recenzji są zbyt daleko od siebie.

Po drugie: Mierzenie indywidualnych wyników to świetny sposób na stworzenie mentalności „nie mojej pracy” i negatywnej konkurencji między osobami i / lub różnymi podgrupami w organizacji. Gra w system jest bardzo łatwa i upewnij się, że uważasz na siebie i nie pomagasz całej drużynie. Powinniśmy zachęcać ludzi do gry zespołowej, ale wtedy nasze organizacje robią dokładnie odwrotnie.

Większość tego rodzaju systemów przeciwdziała budowaniu zespołu. Mary Poppendieck wykonała o wiele lepszą robotę, wyrażając to niż kiedykolwiek w LeanEssays: Team Compensation .

Sue dostała telefon od Janice w dziale zasobów ludzkich. „Sue”, powiedziała, „świetna robota, którą wykonał twój zespół! I dziękuję za wypełnienie wszystkich tych formularzy oceny. Ale tak naprawdę nie możesz dać każdemu najwyższej oceny. Twoja średnia ocena powinna „spełniać oczekiwania”. Możesz mieć tylko jedną lub dwie osoby, które „znacznie przekroczyły oczekiwania” ... ”

... Jeden z najwybitniejszych myślicieli XX wieku, W Edwards Deming, napisał, że niemożliwa do zmierzenia szkoda jest tworzona przez szeregowanie ludzi, systemy zasług i wynagrodzenie motywacyjne. Deming uważał, że każda firma jest systemem, a wydajność jednostek jest w dużej mierze wynikiem sposobu działania systemu. Jego zdaniem system powoduje 80% problemów w firmie, a za system odpowiada zarząd. Napisał, że stosowanie nawoływań i zachęt do nakłaniania osób do rozwiązywania problemów związanych z zarządzaniem po prostu nie działa. Deming przeciwstawił się rankingowi, ponieważ niszczy dumę z wykonawstwa, a zasługi rosną, ponieważ dotyczą raczej symptomów niż przyczyn problemów.

... przyjrzyjmy się bliżej systemom oceny i wynagradzania pracowników i sprawdźmy, co powoduje ich dysfunkcję ...

MIA
źródło
Dobry kawałek, ale niezwiązany z SMART ...
gbn 22.12.10
Widzę to podobnie do gbn: niezwiązane z SMART. Zespół programistów i tak otrzyma cele od kierownictwa (lub bezpośrednio od klienta), jeśli spełniają kryteria SMART, czy nie.
Mnementh,
3
Powodem, dla którego powołuję się na to, jest to, że cele SMART są zwykle wykonywane w celu pomiaru indywidualnych wyników z myślą o indywidualnym ustalaniu bonusów itp. Kolejny artykuł, który tańczy w tej samej przestrzeni, w jaki sposób większość korpusów radzi sobie z oceną
MIA
3
To nie jest cel SMART. SMART powinien pomóc Tobie (lub kierownictwu) w osiągnięciu lepszych celów. Będziesz miał cele w każdym projekcie, jeśli są one INTELIGENTNE, czy nie. Zobacz en.wikipedia.org/wiki/SMART_criteria
Mnementh
4
@Mnementh - Cel a implementacja to dwie różne rzeczy. SMART to zwykle zapach, który wskazuje, że organizacja nagradza indywidualne wyniki za wkład zespołu. Jestem pewien, że istnieją organizacje, które dobrze to rozumieją, ale jeszcze osobiście się z nimi nie spotkałem.
MIA
14

Wykorzystaliśmy cele SMART w dużej korporacji, w której pracuję. W większości są bez znaczenia.

Cele pochodzą od kierownictwa wyższego szczebla i są wzniosłe i abstrakcyjne. Odnoszenie ich do konkretnych projektów i rozwoju to zwykle żart. Większość projektów wchodzących w skład grupy pochodzi z firmy i ma zaspokoić konkretne potrzeby biznesowe. Więc kodujesz projekt, wprowadzasz go do produkcji i wykonujesz niesamowitą robotę jak zwykle. Jak to się ma do celu, który wymyślił ktoś z wyższej kadry kierowniczej?

Jako grupa radzimy sobie znacznie lepiej, gdy wymyślamy własne cele. Czasami obejmują one szkolenie na określony temat lub wdrożenie nowej zmiany procesu, coś, co faktycznie może być powiązane z tym, co robimy. Wciąż nie są tak naprawdę związane z codziennym działaniem kodowania, ponieważ są przynajmniej rzeczami, które pomagają przenieść grupę w przyszłość w środowisku korporacyjnym.

EDYTOWAĆ

Jak słusznie zauważył Mnementh, moja odpowiedź opiera się na tym, że cele SMART nie są, no cóż, SMART. Chciałbym dodać do mojej odpowiedzi, że jeśli jesteś menedżerem programistów i chcesz wdrożyć cele SMART, upewnij się, że są oni SMART. Użyj przykładu moich menedżerów jako sposobu, aby NIE realizować celów SMART. Jeśli nie zarządzasz programistami, a ktoś mówi Ci, że zaczniesz używać celów SMART, a oni skończą tak, jak my, zrozum, że masz ludzi z wyższej kadry kierowniczej, którzy lubią głośne słowa i są w stanie sprawdzić z listy rzeczy, które zaimplementowali.

Walter
źródło
4
Jeśli cele są wzniosłe i abstrakcyjne, nie są INTELIGENTNE. S = specyficzne. Więc twoje doświadczenie nie dotyczy celów SMART, chodzi o cele, które nie pasują do inteligentnych kryteriów.
Mnementh,
1
@Mnementh - To prawda. Może chciałbyś edukować nasze kierownictwo wyższego szczebla?
Walter,
3
Jeśli wykształcisz mojego szefa. Miał nawet z nami kurier zarządzania projektami, wyjaśniono SMART. Ale nic się nie zmieniło, jego cele są tak pochmurne jak zawsze.
Mnementh,
OK, więc kluczowym problemem wydaje się być to, że akronim SMART jest używany przez ludzi, którzy zdają sobie sprawę, że ich cele nie są, ale nie zdawali sobie sprawy, że SMART nie jest składnikiem, który można dodać do „celów” innych niż SMART już wybrano, zamiast tego napomina się wybieranie różnego rodzaju celów.
reinierpost
10

Istnieje wiele badań, które pokazują, że programiści wykonają świetną robotę, bez względu na przedstawione im kryteria, kosztem innych możliwych celów.

Oznacza to, że dobrze sobie radzą w osiąganiu konkretnych i mierzalnych celów, a gorzej w czymkolwiek nieokreślonym na liście. Oznacza to, że musisz być bardzo ostrożny w ustalaniu celów.

Nie chcesz ustawiać wierszy kodu jako celu. Zaufaj mi. Naprawianie błędów prowadzi na początku do napisania błędnego kodu. Pytanie o poprawki błędów w istniejącym kodzie spowoduje powstanie bardzo liberalnych definicji „błędu” (i być może „poprawki”). (Również część „osiągalna” zależy od tego, jak błędny był kod.) Pytanie o kompletność funkcji w określonym czasie, cóż ...

To, co chcesz, aby twoi programiści zrobili, to pisanie użytecznych rzeczy w rozsądnym czasie z dobrą jakością kodu oraz ulepszanie i modyfikowanie go przy zachowaniu jakości kodu. Nigdy nie widziałem konkretnych i mierzalnych celów, które byłyby dobrymi kryteriami.

David Thornley
źródło
3
Czy możesz podać link do niektórych z tych badań?
Nicolas Bouliane,
9

Wykonujemy to ćwiczenie każdego roku. Problem polega na tym, że tutaj programiści mają niewielką autonomię w zakresie tego, co robią (zadania określone przez menedżera produktu). Mamy szczęście, że przynajmniej na papierze poświęcamy czas na realizację naszych celów. Jednak realistycznie otrzymujemy znacznie mniej.

W tych ramach ustaliłem, że ustalanie celów samorozwoju działa naprawdę dobrze. Na przykład dwa z moich celów z ubiegłego roku to:

  1. Czytać Wzory Projektowe i pisać projekty zabawek, aby nauczyć się i zademonstrować każdy wzór do przyszłego roku. Skończyło się to 2 lata, ale poprawa mojego kodowania była zauważalna.
  2. Aby zapoznać się z funkcjami języka .NET 3.5 i co kwartał robić prezentację moim współpracownikom. Skończyło się to 1 prezentacją na temat LINQ, którą moi współpracownicy docenili w różnym stopniu od apatycznej do umiarkowanie zainteresowanej. Jednak wiele się nauczyłem i po pokazaniu swojej znajomości języka C # zostałem przeniesiony do pracy nad całkiem nowym projektem.

Tak, skorzystałem i dobrze się przy tym bawiłem.

Szczerze mówiąc, myślę, że w naszej firmie brak dobrych celów SMART dla deweloperów ma więcej wspólnego z awersyjną niechęcią do wypowiedzi korporacyjnych.

Robert Gowland
źródło
8

Tak, jeśli ustawione poprawnie.

Przy prawidłowym ustawieniu cele mogą poprawić zarówno zespół, jak i poszczególne osoby. Powinny być również dostosowane do pracy i zaprojektowane dla danej osoby.

Byłem w miejscach, w których cały zespół DBA ma takie same nijakie cele, jak również wysokie poziomy rąk, takie jak „zgodność z globalnymi i regionalnymi KPI określonymi przez komitet KPI”. Które nikt oczywiście nie wie ...

Z drugiej strony byłem w miejscach, w których menedżer z indywidualnym nastawieniem ustalał indywidualne cele.

Edytować:

Przeczytałem artykuł Mary Poppendieck i nie dotyczy on SMART. Na przykład „Percepcja niemożliwości” zawodzi „Osiągalne”.

Należy ustalić cele dla jednostki, dzielić się jej mocnymi stronami, pomagać w usuwaniu słabości, przyczyniać się do zespołu. Pomiar jest dla osoby fizycznej.

Nie powinno być porównania x vs y.

Cele dla xiy powinny być jednak proporcjonalne do ich rangi lub pozycji w systemie: nie stawia się takich samych celów dla seniorów i juniorów. To nie w porządku.

Potrzebny jest jakiś test porównawczy, aby ustawić bonus lub wypłaty z ograniczonej puli: czy zamiast tego powinniśmy liczyć wiersze kodu? Ocena współpracownika?

I pokaż mi ważne alternatywy, które nie będą wymagać ode mnie zmiany globalnego etosu korporacyjnego. Nie mam krytykę SMART: ja zrobić mieć krytyczne piss ubogich menedżerów ...

gbn
źródło
5

Jako ramy wydajności, SMART jest tak skuteczny, jak ściśle twoje cele są zgodne z celami twoich menedżerów. Czasami twoje cele SMART muszą najpierw ZMNIEJSZYĆ, tj. uczyń je:

  • Wykonalny
  • Zrozumiale
  • Posłuszny
  • Korzystny

Może to zabrzmi dziwnie.

komar
źródło
4

Ustalanie celów typu SMART może być przydatne w kontekście programowania, ale musi być wykonane inteligentnie lub, jak wskazano w innych odpowiedziach, może to być strata czasu (lub gorzej).

Aby uzyskać przydatne cele, pomaga uzgodnić, co oznacza skrót SMART: w szybkim wyszukiwaniu Google znaleziono różne definicje :

  • S: Wygląda na to, że osiągnięto porozumienie w sprawie konkretnych (choć istnieje pewna różnica zdań co do tego, co to oznacza)
  • M: Sensowne i motywujące są alternatywami dla bardziej powszechnego wymiernego
  • Odp .: Wydaje się, że najczęściej reprezentuje Osiągalne, ale widziałem również Zgodę
  • R: w zależności od tego, gdzie spojrzysz, możesz znaleźć Realistyczne, Odpowiednie, Zorientowane na wyniki
  • Wydaje się, że T zawsze odnosi się do Czasu, chociaż nacisk jest różny

Po pierwsze, obie strony negocjacji w sprawie ustalania celów powinny działać na podstawie wspólnego zrozumienia procesu.

Następnie należy wyjaśnić i zrozumieć ogólne cele organizacji, działu, grupy, zespołu (lub dowolnej odpowiedniej hierarchii). W tym momencie jednostka (IMO, cele muszą być ustalone na poziomie indywidualnym, aby były opłacalne) powinna mieć możliwość uzgodnienia niewielkiej liczby celów, które powinny informować o dalszych działaniach tej osoby.

Jeśli na tym się skończy, nadal będzie to strata czasu każdego. Cele należy poddawać regularnym przeglądom i dostosowywać - tam, gdzie zostały osiągnięte, należy rozważyć ewentualną potrzebę ustanowienia nowych celów, a jeśli nie zostały osiągnięte, należy wskazać przyczyny i w razie potrzeby zalecić działania naprawcze.

Wszyscy zainteresowani powinni mieć świadomość, że tego rodzaju ćwiczenie nie jest opłacalne, jeśli nie jest traktowane poważnie, a może bardziej algorytmicznie, wartość, która ma zostać uzyskana, jest proporcjonalna do włożonego wysiłku.

Warto dowiedzieć się, co ludzie uważają za przydatne / wartościowe cele SMART. Zadałem tutaj pytanie ...

Mike Woodhouse
źródło
4

Problem z celami SMART polega na tym, że muszą wybrać to, co jest wymierne. Ponieważ to, co jest mierzalne i to, co ważne dla sukcesu organizacji, często nie jest tym samym (i praktycznie nigdy nie zajmuje się programowaniem), cele SMART zawsze zawodzą w ocenie wyników z mojego doświadczenia. Czasami rzeczy wydają się mierzalne, ale nie są bez większego wysiłku (tak jak cel SMART, miałem jeden raz odpowiedzieć na wszystkie e-maile w ciągu 4 godzin. Naprawdę, kto chce spróbować przejrzeć tysiące e-maili, które dostaję rok, ustal, czy to był informacyjny lub potrzebował odpowiedzi, a następnie spójrz na moje wysłane e-maile, aby zobaczyć, czy odpowiedziałem, a następnie słuchaj nagrań wszystkich połączeń telefonicznych, aby zobaczyć, czy odpowiedziałem, sprawdź mój dziennik czatu, aby zobaczyć, czy odpowiedziałem itp. I co z tym e-mailem, który został do mnie wysłany w sobotę wieczorem o północy ...)

HLGEM
źródło
3

Wszystkim osobom, które odpowiedziały NIE, Twoje Cele prawdopodobnie NIE były wystarczająco INTELIGENTNE.

Korzystałem z nich i uważam je za niezwykle przydatne. Możesz spróbować czegoś, co działa dla nas:

  1. Ustaw cele kwartalne.
  2. Wyznacz mierzalne cele.
  3. Ustaw tylko jeden cel dla jednostki
  4. Spraw, by jednostka zaakceptowała cel, jeśli powie, że cel jest zbyt ambitny, dostosuj go do czasu, gdy oboje się zgodzicie.
  5. Pod koniec kwartału podaj wartość logiczną. Cel osiągnięty = prawda lub fałsz.

Jest to niezwykle potężne, stwarza odpowiedzialność przed Deweloperem. Ludzie, którzy chcą znaleźć wymówki z kurczaka po około 6 miesiącach.

PS: Rozumiem, że ludzie głosują na odpowiedź, ale proszę wstawić co najmniej odpowiedni komentarz, dowiem się czegoś, czego nie wiem :-)

Maniak
źródło
Gorąco zachęcam do zapoznania się z fragmentem Mary Poppendieck, do którego link znajduje się w odpowiedzi @Jim Leonardo.
Gary Rowe,
@Gary: Przeczytałem ten artykuł, nie zgadzam się z nim w 100%, choć można się z niego czegoś nauczyć. Niektóre rzeczy w systemach już się poprawiły, np. system rankingowy, choć nadal istnieje, nie jest rzędu 1-10, ale dba również o wpływy wspomniane w dalszej części artykułu. Jeszcze jedno, że wszystkie organizacje mają kształt piramidy bez względu na to, jak płaskie, promocje nie mogą być jedynym sposobem na nagradzanie ludzi.
Geek
1
Geek, czy możesz podać mi przykład celu, który uważasz za pomocny?
Craig Schwarze
1
@Craigs: Proste cele, takie jak dostarczenie komponentu XYZ o 80% jakości w ciągu 3 miesięcy lub dostarczenie pakietu serwisowego ze 100 poprawkami błędów w ciągu 3 miesięcy. Kluczem tutaj jest TYLKO JEDEN CEL, nie mieszaj rzeczy. Gdy masz tylko jeden cel, wiesz, na czym się skupić, a wynik jest logiczny (prawda lub fałsz). Również Przekroczenia / Spełnienia / Częściowe spełnienie można bardzo łatwo zdefiniować np. Dla 110 poprawek problemów = przekracza, 100 = osiągnięto, 90 = częściowo osiągnięto.
Geek
1
@Justin: Prawdopodobnie brakuje mi punktu, który próbujesz zrobić. Moje odpowiedzi: Naprawienie 100 błędów to tylko szacunek, a Menedżer (ktoś, kto rozumie produkt i techniczne błędy) musi go sprawdzić. Na przykład napraw 100 błędów, które trwają 10 godzin lub 500 błędów, które są literówkami na ekranach. Kluczem tutaj jest to, że na początku Kwartału wiesz, które błędy chcesz naprawić i ile czasu zajmuje naprawienie każdego z nich. Ponadto w niektórych kwestiach będzie 5–10% wariancja. Równie dobrze możesz sprawdzić swój cel w połowie kwartału.
Geek
3

SMART to akronim zapamiętywania niektórych kryteriów lepszych celów. Zatem wprowadzenie SMART oznacza, że ​​twoje kierownictwo musi lepiej postępować zgodnie z tą zasadą. Bez SMART zarządzanie i tak ustalałoby cele, ale byłyby one prawdopodobnie zbyt trudne.

Tak więc, dla programistów nie powinno być żadnych zmian, zarząd musi zmienić swój styl, aby wdrożyć SMART. A jeśli zrobią to dobrze, praca programisty może być łatwiejsza, ponieważ kierunek projektu jest bardziej przejrzysty, ramy czasowe są ustawione i tak dalej.

Jeśli zarząd nie zrobi tego dobrze, niewiele się zmieni.

Memento
źródło