Uno degli obiettivi che mi sono dato per questi primi giorni del 2011 è quello di riuscire a scrivere una serie di mini-tutorial con "tip & tricks" su come progettare l'interfaccia utente di applicazioni per Windows Phone 7 in Silverlight.

Come ho già avuto modo di accennare nel precedente post, nelle ultime settimane, ho avuto modo di seguire da vicino alcuni dei nostri partner che sono stati impegnati e coinvolti nello sviluppo di applicazioni Windows Phone per importanti brand italiani. In alcuni casi ho fatto un po' da ponte con il team di prodotto di Windows Phone 7 a Redmond che si è occupato di sviluppare l'experience e l'interaction design del sistema operativo stesso con l'obiettivo di effettuare specifiche review delle applicazioni in modo da ottimizzarne l'efficacia e l'usabilità con la certezza che venga utilizzato in modo appropriato il nuovo paradigma d'interazione che caratterizza l'experience Windows Phone 7. 

Credetemi, davvero stimolante, un'ottima palestra che mi ha permesso di approfondire molto le tematiche correlate alla progettazione e al design, ma anche le principali considerazioni legato allo sviluppo che vanno indirizzate per avere la certezza che l'applicazione venga certificata e pubblicata sul marketplace in tempi rapidi. Sicuramente avrete già sentito parlare di gestione del tomstoning, etc.

Partendo da questi presupposti, l'idea che ho avuto, e che spero venga apprezzata da tutti voi, è quella di farne tesoro di tutto ciò che ho imparato e di condividere le principali nozioni intraprese attraverso una serie di post e tutorial da qui nelle prossime settimane. Sicuramente avremo modo di parlare di Expression Blend for Windows Phone, della piattaforma di sviluppo, ma anche di tematiche più teoriche quali l'interaction design e le specifiche che vanno indirizzate nel publishing di un'applicazione sul marketplace. Nello specifico, se volete avere il mio parere su alcune tematiche in particolare, vi invito a contattarmi postando direttamente un commento al seguente post. Se invete avete delle applicazioni già in fase di sviluppo e pronte da testare e vorreste avere un mio parere in merito, potete direttamente contattarmi via mail al mio indirizzo roberto.cavalliniatmicrosoft.com Premetto, impegni permettendo, sarò felice di inviarmi i miei feedback e suggerimenti.

Prima di entrare nel vivo con i primi argomenti, mi sembra doveroso partire da un post introduttivo
dedicato alle risorse e ai principali puntatori di riferimento.
Andiamo per ordine:

  • APP HUB WINDOWS PHONE 7 MARKETPLACE - Creazione di un nuovo account per il publishing di un'applicazione, games.  
    Da metà ottobre è live - APP HUB - il nuovo marketplace dedicato a Windows Phone 7, all'indirizzo
    http://create.msdn.com
    Raccolte all'interno di questo portale trovate disponibili i rimandi alle risorse dedicate allo sviluppo sia in ambito di applicazioni Silverlight sia games in XNA. Prima fra tutte è disponibile il download della piattaforma di sviluppo che comprende una versione di Visual Studio 2010 ed Expression Blend for Windows Phone, l'emulatore e tutti i tool per fare l'unlock ed il deploy delle applicazioni sui device di testing. Sempre in merito alla piattaforma, vi evidenzio che sempre lo scorso ottobre è stato rilasciato un importante aggiornamento che richiede l'installazione separata rispetto alla piattaforma. E' disponibile il download a questo link.  October 2010 Update to the Windows Phone Developer Tool. L'aggiornamento, oltre a delle ottimizzazioni del controllo di Bing Maps, contiene anche i Windows Phone Connect Tool  Un tool che vi permette di fare il debug delle vostre applicazioni collegando il device al PC senza dover aver aperto lo Zune Client, funzionalità molto utile quando dovete testare delle applicazioni che erogano contenuti multimediali quali video che passando dallo Zune Client non verrebbero visualizzati. Vi ricordo che lo Zune Client è inoltre necessario per effettuare l'unlock del telefono ed associarlo all'account del marketplace e per effettuare il deploy dell'applicazione attraverso l'Application Deployment, ma avremo modo di vedere alcuni dettagli in merito nella seconda metà dell'articolo.

    L'APP HUB vi permette inoltre di creare un nuovo account, gestire e pubblicare le vostre applicazioni e giochi sul marketplace di Windows Phone 7 e sui precedenti marketplace Windows Mobile 6.x. Nello specifico, 
    il processo per creare un nuovo account è composto da diversi step e richiede alcune specifiche azioni da parte del richiedente tra cui l'invio di una serie di documentazioni ad GeoTrust ente esterno a Microsoft che effettua una serie di verifiche sull'identità del richiedente (as individual) o dell'azienda che effettua la richiesta d'attivazione.
    Completato il primo step che può essere tradotto con una semplice azione di data entry dei vostri dati sul sito
    , riceverete una serie di mail sulla casella di posta indicata in fase di registrazione che vi richiederà di confermare l'indirizzo cliccando su appositi link. Nel caso vi suggerisco di controllare anche la vostra casella di posta indesiderata (junk e-mail) in alcuni casi la mail può risultare classificata erroneamente in tale cartella. Vi ricordo che per completare questa prima fase di data entry sul portale, vi verrà richiesto di inserire anche un Windows Live ID che nel caso non abbiate a disposizione, potrete preventivamente crearlo direttamente in fase di registrazione. In seguito, riceverete un paio di mail da GeoTrust in cui vi verrà richiesto di confermare ancora una volta la vostra identità cliccando in un link presente all'interno di una mail e di inviare una copia di un vostro documento, sottoscritto in formato digitale. (può andare bene una copia della vostra cara d'identità/patente siglata con la vostra firma).
    Inviato il tutto, dopo qualche giorno riceverete, sempre via mail la conferma di attivazione dell'account e sarete abilitati a procedere con il publishing di applicazione.
    In caso di problemi o in caso di ritardi nel ricevere le e-mail di conferma da parte di GeoTrust, vi invito a contattare subito l'help desk ai seguenti numeri ed indirizzo di posta elettronica.

    IL SERVIZIO è attivo dalle ore 14:00 fuso orario italiano
    Phone: +1-866-436-8787 or +1-678-366-8399 option 2 Live Chat:
    http://www.geotrust.com/support

    Se intendete pubblicare solo APPLICAZIONI GRATUITE, le azioni richieste per essere abilitati al publishing possono ritenersi concluse. Vi ricordo che ogni account abilita a pubblicare fino a #5 applicazioni gratuite gratuitamente, mi spiego meglio fino a 5 applicazioni che possono essere installate gratuitamente dal marketplace senza dover sostenere nessun costo per il publishing dalla sesta in poi vi verrà richiesta di pagare una fee pari a circa $20 USD per ogni applicazione successiva.

    Per le 
    APPLICAZIONI a PAGAMENTO non è richiesto nessun costo per il publishing e non ci sono limiti numerici legate al numero di applicazioni a pagamento. In effetti va precisato che anche per le applicazioni gratuite non ci sono delle limitazioni sul numero di applicazioni pubblicabili da ogni account, l'unica soglia è delle #5 applicazioni gratuite, pubblicate gratuitamente. Lo scenario di applicazioni a pagamento, contempla un modello di revenue pari al 70%/30%, il 70% verrà versato a voi autori dell'applicazione ed il 30% andrà a Microsoft per la gestione dell'applicazione ed il publishing (certificazione, testing, etc.)
    I proventi dalla vendita delle applicazioni sul marketplace, verranno bonificati mensilmente al raggiungimento di almeno $200 USD ricavi dalla vendita di applicazioni.

    Vi ricordo, che per percepire tale ricavi provenienti dalla vendita di applicazioni sul marketplace, è necessario compilare una serie di documenti aggiuntivi tra cui il modello
    W8-BEN - Certificate of Foreign Status of Beneficial Owner for United States Tax Withholding (obbligatoriamente) ed eventualmente una serie di documentazione aggiuntiva per la richiesta del Codice ITIN (Individual Taxpayer Identification Number) all'IRS (Internal Revenue Service) per poter godere di una imposizione fiscale agevolata. Inoltre vi ricordo che i guadagni provenienti dalla vendita delle applicazioni dovranno essere documentati e censiti come reddito sul vostro modello unico. Il consiglio che mi sento di dare in merito, per avere maggiori dettagli su questa convenzione fiscale tra Italia e USA è quella di chiedere maggiori dettagli al vostro commercialista. Non essendo un esperto fiscale, ed onde evitare di non essere molto chiaro il mio apporto in materia si limita a queste informazioni di base.

    Per concludere, l'escursus sul marketplace, vi ricordo un altro paio di punti.
    Ho toccato marginalmente le tematiche inerenti alla certificazione delle applicazioni. Ogni applicazione prima di essere pubblicata sul marketplace e venga distribuita pubblicamente dovrà superare una certificazione: sui contenuti, sulle performance, sull'utilizzo delle risorse del telefono, etc. - si vuole tutelare l'utente garantendo che l'applicazione non vada a compromettere le funzionalità di base del telefono. Ed è proprio per questo che
    l'unico modo per installare un'applicazione sul telefono è quello di passare dal marketplace ufficiale.

    Non sono contemplati scenari di "side loading" delle applicazioni.

    Per indirizzare, tutte i possibili requisiti in termini di certificazione, vi consiglio ancor prima d'iniziare lo sviluppo di leggere attentamente il seguente documento disponibile all'interno del marketplace
    "Application Certification Requirements"

    Inoltre ho parlato di unlock dei telefoni per effettuare il debug/testing dell'applicazione prima di procedere al publishing. Ad ogni account del marketplace è possibile associare sino a #3 telefoni per il testing/debug delle applicazioni. Tale operazione, va eseguita attraverso il tool "Windows Phone Developer Registration" collegando il telefono via USB al PC e avendo a disposizione l'accesso a Internet (è necessario avere aperto in backround aperto sul proprio PC il Zune Client). Non ci sono delle limitazioni in termini d'impiego del telefono per il debugging delle applicazioni, ed ogni modello di telefono disponibile sul mercato può essere utilizzato per effettuare i test dell'applicazione. Sempre attraverso il Windows Phone Developer Registration è anche possibile scollegare/dissociare i telefoni dall'account del marketplace.

    L'iscrizione sul marketplace implica il pagamento di una fee pari a $ 99 USD, mentre per tutti gli studenti possono godere dell'iscrizione gratuita attraverso DreamSpark il programma di Microsoft dedicato agli studenti che permette di fruire al software di sviluppo gratuitamente.

    Tutte le informazioni citate su questo articolo risultano documentate sulla seguente pagina.
    http://create.msdn.com/en-us/home/getting_started