ruolo Analista aziendale nel processo di sviluppo

4

Lavoro come analista aziendale e attualmente supervisiono gran parte degli sforzi di sviluppo di un progetto interno. Sono responsabile dei requisiti, delle specifiche e dei test generali. Lavoro a stretto contatto con gli sviluppatori (onshore e offshore).

Il team offshore produce tutti i report. La versione 1.0 ha avuto un ciclo di sviluppo di 9 mesi e ho avuto circa 4-5 mesi per testare tutti i report. C'era il solito avanti e indietro per ottenere l'implementazione giusta.

La versione 2.0 ha avuto un ciclo di sviluppo molto più breve (3 mesi). Ho ricevuto la prima versione dei rapporti circa 3 settimane fa e ho notato molte cose sbagliate. Molti dei requisiti erano sbagliati e le prestazioni delle query erano orribili a 5x - 6 volte più lunghe di quanto avrebbe dovuto essere.

Lo sviluppatore di conduttori onshore era fuori controllo e non supervisionava il team di sviluppo offshore nella generazione dei rapporti.

Il management conosceva i problemi di prestazioni e ho anche detto loro che stavo cercando un modo per migliorare le prestazioni; non approvavano esplicitamente di inviare query di prova, ma non erano nemmeno preoccupati del fatto che lo stavo facendo. Ho dato un'occhiata allo SQL nei report ed è stato in grado di migliorare notevolmente le prestazioni (di un fattore di 6x) che è accettabile per questa versione.

Ho inviato le query aggiornate come linee guida al team offshore e ho detto loro che avrebbero dovuto cercare X anziché Y per migliorare le prestazioni e anche per correggere alcuni problemi logici specifici.

Poi ho parlato con i miei dirigenti di questo perché non mi sembrava giusto che stavo sviluppando query SQL, ma visto il nostro cruccio temporale non ho visto altro modo. Siamo stati in grado di risolvere il problema abbastanza velocemente e sono soddisfatto.

Situazione attuale: i gestori onshore non sono troppo contenti che il team offshore non abbia codificato le prestazioni. So che ci sono alcune cose che avrei potuto fare meglio durante questo processo e non mi considero in alcun modo un programmatore.

La mia domanda è, se un team offshore che lavora a parte le risorse del progetto onshore non riesce a rilasciare una liberatoria accettabile, è appropriato ripulire il proprio lavoro per rispettare una scadenza? Che tipo di problemi potrebbe creare in futuro?

Aggiornamento: Finora il management è arrabbiato con la squadra offshore, ma non mi ha "rimproverato" in alcun modo, quindi non sono sicuro ai loro occhi se quello che ho fatto fosse sbagliato, ma penso che la loro principale fonte di frustrazione è stato il team offshore non è stato in grado di trovare una soluzione e io ero, soprattutto perché questo tipo di problema di prestazioni era emerso in passato. Non sto difendendo le mie azioni, ma voglio dare un contesto in modo che l'immagine sia un po 'più chiara. Ho accettato la risposta che più critica le mie azioni Sono d'accordo che non è qualcosa che dovrebbe essere fatto da qualcuno nella mia posizione.

    
posta Ryan 26.06.2012 - 18:44
fonte

4 risposte

3

No, non è accettabile pulire il loro lavoro.
Ci sono una serie di ragioni sul perché.

1) v2.0 ha avuto un ciclo di sviluppo che era 1/3 del ciclo originale e il periodo di convalida del rapporto è stato ridotto dal 50% del ciclo a meno del 30% del ciclo.
Va bene contrattare un ciclo di sviluppo, ma a meno che la quantità di rapporti non sia significativamente inferiore, la finestra di convalida dovrebbe essere rimasta proporzionata. Poiché i report erano significativamente più complessi, non sarebbe irragionevole aspettarsi una convalida continua dei report durante l'intero ciclo di sviluppo.

2) Prendendo le cose nelle tue mani, hai rotto la catena di comando e non sei riuscito a notificare la gestione in modo tempestivo dei problemi significativi del rapporto. Tali problemi di prestazioni e requisiti rappresentavano rischi per il rispetto del programma, ed è una cosa che il team di gestione ha il diritto di essere consapevole. Mentre pensi di sapere cosa sarebbe stato fatto per risolvere la questione, non lo sai per certo dato che non è stata una tua decisione. Il ruolo della direzione è quello di valutare i pro / contro di un percorso rispetto all'altro e di accettare la responsabilità delle conseguenze. Hai cortocircuitato quel processo presumendo la risposta e ipotizzando che ciò a cui stava lavorando la squadra onshore fosse una priorità più alta. Per quanto ne sappia, potrebbe esserci stato qualcuno con la capacità di risolvere il problema o una soluzione diversa potrebbe essere stata trovata.

3) Hai anche rotto la tua area di responsabilità. Normalmente, questo non è un problema nel mio libro in quanto sono a favore di tutti che contribuiscono dove possono e crescono le loro capacità. Tuttavia, probabilmente non sei la persona più competente per risolvere la questione. Accettandolo senza informare gli altri, hai negato l'opportunità di risolvere il problema più rapidamente. È possibile che il team offshore abbia potuto risolvere rapidamente i problemi una volta che ne erano stati informati. Cosa ti avrebbe detto il team di onshore se non fosse stato in vacanza e sapesse cosa stavi facendo?

Complicare tutto questo è la tensione invalicabile tra i team onshore e offshore. Inavvertitamente hai camminato dritto in un vespaio di problemi politici.

La cosa giusta sarebbe stata informare immediatamente la tua gestione del problema e quindi offerta di cui conoscevi SQL e sarebbe felice di affrontare la sfida. Questo mette un'altra opzione sul piatto per risolvere la questione, ma consente comunque alla direzione di scegliere l'approccio migliore per risolvere il problema.

    
risposta data 27.06.2012 - 16:15
fonte
1

È sempre opportuno correggere ciò che è rotto e fare in modo che le cose funzionino il più vicino possibile alla specifica il più vicino possibile alla scadenza.

È anche opportuno documentare tutto ciò che dovevi correggere per far funzionare le cose. È importante sapere se le tue risorse offshore stanno fornendo un codice accettabile che si adatta alle tue specifiche. Se non lo sono, è opportuno inviare loro la documentazione delle differenze tra le vostre specifiche (in particolare re: performance) e dimostrare che quello che hanno consegnato NON era quello che è nelle specifiche. Questo può essere usato dai tuoi manager per negoziare il lavoro futuro o per limitare ciò che paghi per quello che hai ottenuto.

    
risposta data 26.06.2012 - 21:56
fonte
1

Quando molte persone sono coinvolte in un'attività, i ruoli devono essere chiaramente definiti e le misure devono essere stabilite. Se il codice che ottieni è negativo, devi dire che non ha rispettato gli standard prestazionali previsti. Se non vengono impostati standard di rendimento, è possibile indicare che può essere migliorato, ma non penso che dovresti modificarlo da solo. Personalmente, non accetterei che qualcuno cambi il mio codice senza prima discuterlo con me.

Quando diverse organizzazioni sono coinvolte, i confini non devono essere superati senza un'attenta considerazione, perché le persone (e soprattutto i manager) non amano questo. Dopo tutto questo è ciò che i manager sono (o almeno una parte della ragione).

Questo non vuol dire che l'opportunità di miglioramento vada via, ma che la gestione decida l'approccio se non è già impostato.

È molto comune che i team offshore facciano cose strane da quelle che ritieni accettabili perché la natura dei contratti che queste aziende talvolta prendono e molte altre ragioni.

    
risposta data 26.06.2012 - 22:40
fonte
0

La regola numero uno dello sviluppo del software è di farlo funzionare, tutto il resto è secondario. Se stai scontando una scadenza e problemi hai bisogno di essere riparato ora. Avrai molto tempo dopo per analizzare il problema e capire chi non è riuscito a fare cosa o cosa ha bisogno di essere migliorato nel processo per il futuro. Se diventa un evento comune che devi risolvere costantemente i problemi che non dovresti, allora questo è un problema diverso e questo dimostra una mancanza di gestione che fa il loro lavoro per identificare e risolvere i problemi con il processo.

    
risposta data 26.06.2012 - 20:48
fonte

Leggi altre domande sui tag