wiki:DefinizioneDeiRuoli
Last modified 4 years ago Last modified on 10/27/10 11:25:49

Premessa

In questa pagina si elencano le figure professionali necessarie al team tecnico. Per capire come vengono assegnati si consulti la pagina sui criteri di assegnazione degli incarichi.

Definizione dei ruoli

Il progetto di sviluppo di un software gestionale per i GAS marchigiani (e non solo..) richiederá, in fasi diverse del processo di sviluppo, l'apporto di molteplici figure professionali che dovranno interagire tra loro in modo cooperativo per conseguire l'obiettivo prefissato (ovvero l'implementazione del gestionale).

Si pone pertanto da un lato la necessità di definire esplicitamente i profili professionali richiesti dal progetto, dall'altro il problema di individuare delle modalitá di assegnazione dei relativi incarichi.

Gli obiettivi primari di questo processo preliminare sono due:

  • garantire la trasparenza dei processi decisionali relativi all'assegnazione degli incarichi, sia verso la REES che verso l'ente pubblico finanziatore;
  • garantire la corretta finalizzazione del progetto entro i tempi stabiliti.

Di seguito si elencano le figure professionali (ruoli) individuate come necessarie per il completamento del progetto.

Per ogni ruolo, si elencano brevemente le caratteristiche che si ritengono importanti. Tali caratteristiche sono state suddivise in essenziali (imprescindibili per ricoprire il ruolo in questione) e desiderate (opzionali, ma gradite perché utili al progetto).

Resta inteso che i ruoli non sono mutualmente esclusivi, ovvero lo stesso soggetto potrebbe ricoprire diversi ruoli nel corso delle attivitá del progetto, fermo restando il soddisfacimento dei requisiti in base alle sue specifiche competenze/esperienze.

Inoltre, le specifiche riportate di seguito si intendono come indicazioni di massima, e sono pensate per fornire delle linee-guida ai decisori; nel corso del progetto, potrebbe emergere la necessitá di ulteriori ruoli o requisiti richiesti ad un ruolo specifico.

Come criterio generale nell'assegnazione degli incarichi, riteniamo che sia corretto prediligere i soci REES rispetto a soggetti "esterni", posto che siano comunque soddisfatti i necessari requisiti di competenza, esperienza e professionalitá, tenenendo bene a mente l'obiettivo di fondo, ovvero il raggiungimento del risultato finale.

Coordinatore: ha il compito di coordinare i membri del gruppo di lavoro e di supervisionare il corretto e tempestivo avanzamento dei lavori.

Requisiti essenziali:

  • conoscenza di metodologie, tecniche e strumenti relativi alla gestione di progetti di sviluppo software libero
  • esperienza conseguita in attivitá di gestione di progetti di sviluppo software
  • conoscenze delle principali tecniche di sviluppo e strumenti di supporto allo sviluppo
  • conoscenza del panorama generale delle soluzioni FLOSS disponibili per lo sviluppo di applicazioni web (linguaggi, framework, standard, protocolli,..)

Requisiti desiderati:

  • conoscenza delle dinamiche interne al mondo dei GAS e delle relative problematiche

Analista: ha il compito di definire il design e le specifiche funzionali dell'applicativo, in base alle esigenze degli utilizzatori finali.

Requisiti essenziali:

  • capacitá analitiche e di modellizzazione formale
  • esperienza conseguita nel design/progettazione di applicazioni software in ambito web
  • conoscenza di metodologie, tecniche e strumenti relativi allo sviluppo software
  • conoscenza delle principali tecnologie web (linguaggi, framework, standard, protocolli,..)

Requisiti desiderati:

  • conoscenza della tecnologia dei web services
  • conoscenza di uno piú linguaggi/framework FLOSS per lo sviluppo di applicazioni web
  • conoscenza delle dinamiche interne al mondo dei GAS e delle relative problematiche

Sviluppatore: ha il compito di implementare a livello software (programmazione) il design e le specifiche funzionali prodotte nella fase di analisi.

Requisiti essenziali:

  • conoscenza di metodologie, tecniche e strumenti relativi allo sviluppo software
  • conoscenza delle principali tecnologie web (linguaggi, framework, standard, protocolli,..)
  • conoscenza di uno piú linguaggi/framework FLOSS per lo sviluppo di applicazioni web
  • esperienza conseguita nello sviluppo di applicazioni web con tecnologie FLOSS

Requisiti desiderati:

  • conoscenza della tecnologia dei web services
  • esperienza di lavoro in team di sviluppo

Grafico: ha il compito di curare gli aspetti "visuali" del progetto: veste grafica dell'applicazione web, loghi, veste grafica della documentazione, veste grafica del sito web di supporto, ..

Requisiti essenziali:

  • conoscenza di metodologie, tecniche e strumenti FLOSS per l'elaborazione delle immagini, web design, impaginazione/illustrazione,..
  • conoscenza delle principali tecnologie web FLOSS per la presentazione (HTML, CSS, JavaScript?)
  • esperienza nel design e implementazione della veste grafica di siti/applicazioni web

Requisiti desiderati:

  • conoscenza di base strumenti FLOSS per la realizzazione di documentazione (DocBook? XML, Tex, Texinfo,...)

Documentatore: ha il compito di redigere la documentazione del progetto.

Requisiti essenziali:

  • conoscenza di strumenti FLOSS per la realizzazione di documentazione (DocBook? XML, TEX, TEXinfo,...)
  • esperienza nella stesura di documentazione tecnica per applicativi software

Requisiti desiderati:

  • conoscenza di base delle principali tecnologie web (linguaggi, framework, standard, protocolli,..)
  • conoscenza delle dinamiche interne al mondo dei GAS e delle relative problematiche

Community manager: ha il compito di stimolare la creazione di una comunitá di utenti/sviluppatori attorno al progetto, e "amministrarla" una volta creata, favorendo le interazioni positive e contenendo quelle negative, nell'ottica di una crescita quantitativa e qualitativa di tale comunitá.

Requisiti essenziali:

  • conoscenza delle dinamiche proprie delle comunitá che nascono attorno ai progetti FLOSS
  • conoscenza dei principali strumenti informatici di supporto alle comunitá: siti web, mailing list/newsletters, forum, blog, ..
  • esperienza nell'uso di tecnologie FLOSS che implementano tali strumenti

Requisiti desiderati:

  • conoscenza delle dinamiche interne al mondo dei GAS e delle relative problematiche

Tester: ha il compito di collaudare il software nelle varie fasi del suo sviluppo e di supervisionare il testing da parte degli utenti una volta rilasciata l'applicazione.

Requisiti essenziali:

  • conoscenza di metodologie, tecniche e strumenti FLOSS per il testing/debugging delle applicazioni software, in particolare di quelle web
  • esperienza conseguita nel campo del testing/debugging di applicazioni software, in particolare di quelle web
  • conoscenza di base delle principali tecnologie web (linguaggi, framework, standard, protocolli,..)

Requisiti desiderati:

  • conoscenza di uno piú linguaggi/framework FLOSS per lo sviluppo di applicazioni web

Sistemista: ha il compito di implementare e amministrare i servizi software necessari allo sviluppo e alla successiva messa in funzione dell'applicativo (server web/database/mail/..., backup,..). Requisiti essenziali:

  • esperienza nell'amministrazione di sistemi GNU/Linux
  • esperienza nell' implementazione/amministrazione dei servizi richiesti su sistemi GNU/Linux con tecnologie FLOSS
  • conoscenza di base delle principali tecnologie web (linguaggi, framework, standard, protocolli,..)