Korištenje istraživanja za definiranje strategije iskustva razvojnog programera

Jer programeri su i ljudi

Dobrodošli na industrijski Internet stvari

U tvrtki GE Digital mijenjamo industriju s platformom od ruba do oblaka koja pojednostavljuje izgradnju aplikacija. Te aplikacije podržavaju operatere proizvodnih linija, elektrana, rafinerija i drugih industrijskih lokacija. Predix platforma omogućuje softverskim inženjerima i znanstvenicima podataka - Graditeljima - izradu aplikacija koje poboljšavaju izlaz, optimiziraju raspored održavanja i slično.

Pregled dijela

U doba trenutnog zadovoljavanja, programeri koji grade te aplikacije očekuju da je osnovno postavljanje jednostavno - u stvari, smanjenje napora za razvojne programere je osnovni prijedlog platforme poput naše. Iskustvo se sastoji od mnogih istih elemenata koji se nalaze na drugim platformama poput Salesforce ili Amazon Web Services: vodiči, demonstracije, primjeri aplikacija, CLI-ovi, API-ji, administrativne konzole, katalog, forum i izvori trećih strana (npr. Stack Overflow) ,

Kako odlučiti koje zadatke programera ćemo olakšati i kako možemo znati jesmo li postigli elegantno iskustvo?

Postoje mnoge metode dizajniranja za umanjivanje nejasnoća i popločavanje puta prema naprijed - evo pogledati kako smo uzeli metodu otvorenog istraživanja i primijenili je na trenutno iskustvo kako bismo upravljali našom strategijom platforme.

Demonstriranje strateške potrebe za korisničkim istraživanjem

Dva su velika pitanja koja su nas navela da vodimo istraživačke studije. Prvo, budući da bi učenje nove softverske platforme moglo potrajati mjesecima, ulaganje u onu koja se ne podiže moglo bi biti potez koji ograničava karijeru. Programeri oprezno gledaju na nove platforme i čekaju svoje vrijeme prije uspostave platforme. Moramo učiniti ovo iskustvo što jasnijim i jednostavnijim kako bi oni mogli spremno preskočiti prepreku za ulazak i pokretanje aplikacija.

putem https://goo.gl/dX4hxV

Drugo, mnogi ljudi - čak i neki vlasnici proizvoda - pretpostavili su da budući da se sučeljima naredbenog retka (CLI-ovima) i aplikacijskim programskim sučeljima (API-ima) može pristupiti programatski, ne moraju ih osmisliti kako bi ih ljudi mogli koristiti. To se ignorira uvijek kada programeri moraju ručno komunicirati s tim sučeljima, kao što su tijekom izrade, testiranja i uklanjanja pogrešaka (npr. Gotovo sve zadaće programera). Programeri su također ljudi - i trebalo nam je istraživanje da bismo podigli svijest o poslovnoj i konkurentnoj vrijednosti pružanja sjajnog iskustva programera za pokretanje usvajanja platforme.

Pitanja na koja smo željeli odgovoriti istraživanjem uključuju:

  • tko želi graditi aplikacije na našoj platformi?
  • rade li primjerci, testne aplikacije ili produkcijske aplikacije?
  • kako započeti izgradnju aplikacije?
  • kako trebamo odrediti prioritete dijelova iskustva poput sučelja za programsko programiranje (API) i sučelja naredbenog retka (CLI)?

Pozadinsko istraživanje

Runda jednosatnih intervjua dala nam je općenito mišljenje što programeri očekuju od tih dodirnih točaka, poput:

1) Učinite mi život lakšim - Kao i bilo koja platforma, Predixova je vrijednost za programere da apstraktiraju infrastrukturu potrebnu za pokretanje sigurne skalabilne aplikacije.

2) Vizualizacije - Razvojni programeri obično se trude integrirati više izvora podataka i čine ih kompatibilnim s okvirom vizualizacije. Predix obećava da će to učiniti ravno.

3) Nova arhitektura - Korisnici su "umorni od obaviještenosti da se uslužni programi ne mogu ponašati poput Facebooka" (poput neprekidnog pritiskanja novog koda). Oni žele podršku modernoj praksi.

Ali ovi razgovori nisu nam dali dobar osjećaj koliko dobro platforma ispunjava ta očekivanja. Obično koristimo metode testiranja upotrebljivosti za ocjenu proizvoda tako što od korisnika tražimo da razmišljaju naglas dok koriste platformu (dobro je objašnjeno u ovom članku iz Googleove prakse iskustva razvojnog programera). Ali testiranje upotrebljivosti zahtijeva najmanje 2 sata napora istraživača za svaki sat korištenja proizvoda - ne postoji način da naš mali tim sveobuhvatno pokriva cjelokupno iskustvo korištenja ove metode.

Nakon što sam se potrudio sakupiti promatranja koja su nam potrebna da bismo shvatili ovo kritično razdoblje započinjanja, vratio sam se u alatni okvir svojih metoda kako bih potražio način za postizanje više detalja bez prolaska korisnika kroz svaku komponentu platforme. Prije sam koristio studije daljinskog časopisa kao jeftin način da se približim korisnicima - shvatio sam da bi u tom kontekstu mogao pružiti i sveobuhvatnu pokrivenost koja nam nedostaje.

Daljinski studij časopisa

Studija daljinskog časopisa traži od korisnika da naprave zapis (fotografije, video, tekst, kolaž itd.) O svom iskustvu. Zatim istraživači postavljaju dodatna pitanja. Ovaj posljednji dio je ključan za istraživača da se usredotoči na druge kontekstualne informacije o onome što se događalo kad je snimljen. Ovo smanjuje subjektivnost u odnosu na druge stilove intervjua, vežući raspravu za određena iskustva koja je korisnik imao, tako da se mogu izvući prikladni uvidi. Studija se također može lako skalirati kako bi odgovarala i opsegu proizvoda i dostupnim istraživačkim resursima.

Uzorak unosa u dnevnik korisnika

Zapošljavali smo 18 programera koji će započeti tijekom našeg istraživanja iz internih društvenih medija, anketa i naše mreže kontakata iz prethodnih istraživanja. Nakon što je sudionik odgovorio e-mailom i potvrdio svoje kvalifikacije, imali smo početni jednosatni sastanak kako bismo izgradili odnos, naučili svoje znanje i očekivanja te prešli na studij.

Najveća borba s longitudinalnom studijom je neusklađenost sudionika s novinarskom aktivnošću. Kako bismo ih potaknuli da nam nastavljaju pisati, učinili smo nekoliko stvari:

  • tjedne prijave
  • protokol podsjetnika nakon 3, 5 i 7 dana ako je sudionik prestao odgovarati
  • predložak e-pošte kako biste olakšali odgovor

Svaki je tjedan istraživač pregledavao prikaze svakog sudionika kako bi razjasnio nejasnoće i zatražio dodatne detalje. Budući da su se sudionici uglavnom usredotočili na opisivanje onoga što grade, ovaj put smo iskoristili da pitamo njihove alate, postupak, misli i osjećaje koji su imali. Na kraju mjeseca, istraživački tim okupio se kako bi podijelio priče naših sudionika i promatrali neke obrasce. Ovo nam je pomoglo da identificiramo snažna pitanja koja ćemo postaviti u završnoj sesiji sa svakim korisnikom, gdje smo razgovarali o tome kako napreduju kroz proces učenja.

Na temelju dobivenih podataka napravili smo vizualnu kartu područja na kojima programeri:

  • kako bi pronašli informacije
  • nije uspio postići pod-cilj i morao je slijediti novi put
  • odustao od zadatka u cijelosti

Na primjer, korisnik mapiran dolje počeo je čitati dokumentaciju "Početak rada" (najmračniji krugovi u boji), neprestano se osjećao kao da je na tangentu, a na kraju mu je dosadilo i zaustavio se. Kad je započeo s "Vodičima" (lakši krugovi), naišao je na nekoliko problema, ali uspio je brzo postići uspjeh. Ove mape visoke razine omogućile su nam da kroz nekoliko ljudi pogledamo iskustvo i iscrpno sagledamo snage i slabosti platforme.

Koristili smo ove karte kako bismo pokazali koliko je težak i dugotrajan put do doživljavanja vrijednosti. Ova prezentacija pomogla je našim dionicima - rukovoditeljima proizvoda i inženjerima proizvodnje - da daju prednost njihovom radu i bolje usredotoče napore tima tamo gdje to čini najviše razlike za naše korisnike.

Strateški utjecaj

Istaknuvši ključna korisnička pitanja i podupirući to čvrstim i dobro dokumentovanim istraživanjima, suptilno smo preusmjerili napore mnogih timova. Nakon što smo s rukovodstvom podijelili uočene probleme (i uspjehe!), Platforma se počela razvijati u novom smjeru koji je više u skladu s potrebama korisnika.

Evo samo nekoliko pitanja koja smo istaknuli i trenutnog stanja platforme.

Točka boli: nedostaju objašnjenja vrijednosti i utjecaja odluka
Rješenje: Kratki kontekstualni opisi sad su prisutni svugdje, poput primarne navigacije
Kratki opisi olakšavaju odlučiti s kojom opcijom započeti.
Točka boli: Resursi pretpostavljaju da su korisnici razumjeli moderne programske paradigme, npr. naredbenu liniju i alatnu mrežu Node
Rješenje: Vodiči pružaju Googleu dovoljan pregled za detalje
Detalji o radu sada su istaknuti u vodičima, a dodat je i ovaj detaljni vodič za Proxy izdanja.
Točka boli: nedovoljna podrška za uklanjanje pogrešaka
Rješenje: dnevnici i događaji prikazani su u konzoli
Ploča