Presenta le principali caratteristiche funzionali dell le principali novità della nuova versione 4 di IBM Connections: la soluzione per il social business nelle aziende e amministrazioni.
OTS Solutions is an interactive company which experts in the field of Java and offers the services in Java application development, Java software development, Struts Java Web Development, Spring Java Web Development and Core Java Application Development.
OTS Solutions an IT Outsourcing Company provide android application, Client / Server Android Development, Android Tablet Apps Development, Android Web App Development. OTS has been involved in Android development since its emergence and provides these applications around the globe.
Presenta le principali caratteristiche funzionali dell le principali novità della nuova versione 4 di IBM Connections: la soluzione per il social business nelle aziende e amministrazioni.
OTS Solutions is an interactive company which experts in the field of Java and offers the services in Java application development, Java software development, Struts Java Web Development, Spring Java Web Development and Core Java Application Development.
OTS Solutions an IT Outsourcing Company provide android application, Client / Server Android Development, Android Tablet Apps Development, Android Web App Development. OTS has been involved in Android development since its emergence and provides these applications around the globe.
Introduzione al Domain Driven Design (DDD)DotNetMarche
In questa sessione si approfondirà il concetto di Domain Driven Design, un principio di progettazione che può essere visto come una “forma-mentis” per aiutare a concepire e modellare applicazioni enterprise che fanno un forte uso del Domain Model. Questa metodologia, introdotta da Eric Evans, mette in risalto il dominio applicativo di un progetto, costituendo quindi il collante tra il modello analitico e il modello implementativo e trovando la sua naturale applicazione in ambienti di sviluppo agili come Extreme Programming. Come completamento della sessione verranno esaminate alcune tecniche di Layering e pattern architetturali che ben si sposano con questa tecnica.
Enterprise Spring and Flex applicationsmarcocasario
SpringSource ha recentemente annunciato Spring BlazeDS Integration, un nuovo progetto open source per permettere una facile integrazione tra il framework Spring e Adobe BlazeDS, una tecnologia open source basata su server Java remoting e Web messaging.
Il plugin di SpringSource fornisce un approccio più semplice ed intuitivo agli sviluppatori Spring e Java per creare Enterprise Rich Internet Applications utilizzando il framework Adobe Flex, una pietra miliare della Flash Platform.
In questa sessione ai partecipanti verrà fornita una panoramica del framework Flex e di BlazeDS, illustrando i vantaggi e le modalità di integrazione al framework Spring attraverso il plugin Spring BlazeDS.
FAST è una raccolta di tecnologie, basate su Web Components e su Web Standards moderni, che ci aiuta ad affrontare in modo efficiente alcune delle sfide più comuni nella progettazione e nello sviluppo di siti ed applicazioni Web.”
FAST ci aiuta a creare interfacce si adattano facilmente a qualunque Design System e che possono essere utilizzate con qualsiasi framework!
Business Intelligence e Business Analytics sono termini che ricorrono ormai quotidianemente. Cosa significano? Che valore portano in una azienda? Come si crea una soluzione di Business Intelligece e di Business Analytics? Che strumenti mette a disposizione la piattaforma Microsoft? In questa sessione andremo ad introdurre tutti gli attori, gli strumenti e le tecnologie che concorrono a realizzare tali soluzioni, vendendone alcune "dal vivo" per capire come si usano ed il grande valore aggiunto che, in una società sempre più affamata di informazioni, ma ricca solo di dati, possono portare.
CCI2018 - Sei un Power User? Crea rapidamente Enterprise Mobile Apps con Powe...walk2talk srl
Ogni organizzazione si trova costantemente sotto pressione per produrre di più in meno tempo. Sebbene la tecnologia sia spesso la chiave per operare in modo più efficace ed efficiente, i costi e la complessità hanno spesso impedito alle organizzazioni di trarre il massimo vantaggio dai potenziali benefici. La crescita di SaaS (software come servizio) ha ridotto le barriere: nessuna necessità di distribuire server o installare e configurare sistemi software complessi.
Sappiamo che non tutti i problemi aziendali possono essere risolti con soluzioni pronte all'uso. Tuttavia, lo sviluppo di soluzioni personalizzate è sempre stato troppo costoso e dispendioso in termini di tempo per molte delle esigenze dei vari team / reparti, in particolare per quei progetti che si integrano su più origini dati o richiedono l'utilizzo su più dispositivi, da desktop a dispositivi mobili. Di conseguenza, troppe esigenze tecnologiche finiscono irrisolte o poco ottimizzate. Mettiamo insieme fogli di calcolo, catene di email, siti SharePoint e / o processi manuali per colmare le lacune.
PowerApps e Microsoft Flow sono entrambi mirati esattamente a colmare queste lacune. Offrono alle persone che meglio comprendono i loro bisogni la possibilità di risolverli rapidamente, senza la complessità e il costo dello sviluppo di software personalizzato.
In questa sessione, vedremo questi due nuovi strumenti di Microsoft: PowerApps e Flow. Come funzionano e come si possono usare. Ma soprattutto passeremo all'azione e creeremo da zero alcune dimostrazioni dal vivo che dimostreranno come creare una Enterprise Mobile Application che si connette facilmente con tutte le piattaforme aziendali come Office 365, SharePoint Online, Dynamic CRM, SQL on-premise, Social Network e molto altro ancora e come si possono automatizzare alcune attività comuni utilizzando Microsoft Flow.
By Michele Ruberti
Creare una community dal basso ed arrivare ad un'azienda milionaria - Emanue...DotNetMarche
Come è nata l'esperienza della community romana di Host e come siamo riusciti ad essere riconosciuti da Airbnb. Cosa stiamo imparando, cosa funziona, gli errori da non fare.
Metriche per Zombie Communities: come "iniettare vita" in tribù di morti vive...DotNetMarche
4 iscritti al meetup. Nessun commento al post. 1 solo speaker (che poi è tuo cugino). Se sai di cosa sto parlando allora significa che conosci la stretta allo stomaco che si prova quando la tua comminity è silenziosa quanto un cimitero. Ma è davvero la fine? Oppure un community leader può diventare il Dottor Frankenstein di turno e ribaltare la situazione? In questo talk vedremo come basarci sulle metriche per analizzare cosa non sta funzionando nella tua tribù e alcuni consigli azionabili per "resuscitare" l'entusiasmo dei suoi membri.
Introduzione al Domain Driven Design (DDD)DotNetMarche
In questa sessione si approfondirà il concetto di Domain Driven Design, un principio di progettazione che può essere visto come una “forma-mentis” per aiutare a concepire e modellare applicazioni enterprise che fanno un forte uso del Domain Model. Questa metodologia, introdotta da Eric Evans, mette in risalto il dominio applicativo di un progetto, costituendo quindi il collante tra il modello analitico e il modello implementativo e trovando la sua naturale applicazione in ambienti di sviluppo agili come Extreme Programming. Come completamento della sessione verranno esaminate alcune tecniche di Layering e pattern architetturali che ben si sposano con questa tecnica.
Enterprise Spring and Flex applicationsmarcocasario
SpringSource ha recentemente annunciato Spring BlazeDS Integration, un nuovo progetto open source per permettere una facile integrazione tra il framework Spring e Adobe BlazeDS, una tecnologia open source basata su server Java remoting e Web messaging.
Il plugin di SpringSource fornisce un approccio più semplice ed intuitivo agli sviluppatori Spring e Java per creare Enterprise Rich Internet Applications utilizzando il framework Adobe Flex, una pietra miliare della Flash Platform.
In questa sessione ai partecipanti verrà fornita una panoramica del framework Flex e di BlazeDS, illustrando i vantaggi e le modalità di integrazione al framework Spring attraverso il plugin Spring BlazeDS.
FAST è una raccolta di tecnologie, basate su Web Components e su Web Standards moderni, che ci aiuta ad affrontare in modo efficiente alcune delle sfide più comuni nella progettazione e nello sviluppo di siti ed applicazioni Web.”
FAST ci aiuta a creare interfacce si adattano facilmente a qualunque Design System e che possono essere utilizzate con qualsiasi framework!
Business Intelligence e Business Analytics sono termini che ricorrono ormai quotidianemente. Cosa significano? Che valore portano in una azienda? Come si crea una soluzione di Business Intelligece e di Business Analytics? Che strumenti mette a disposizione la piattaforma Microsoft? In questa sessione andremo ad introdurre tutti gli attori, gli strumenti e le tecnologie che concorrono a realizzare tali soluzioni, vendendone alcune "dal vivo" per capire come si usano ed il grande valore aggiunto che, in una società sempre più affamata di informazioni, ma ricca solo di dati, possono portare.
CCI2018 - Sei un Power User? Crea rapidamente Enterprise Mobile Apps con Powe...walk2talk srl
Ogni organizzazione si trova costantemente sotto pressione per produrre di più in meno tempo. Sebbene la tecnologia sia spesso la chiave per operare in modo più efficace ed efficiente, i costi e la complessità hanno spesso impedito alle organizzazioni di trarre il massimo vantaggio dai potenziali benefici. La crescita di SaaS (software come servizio) ha ridotto le barriere: nessuna necessità di distribuire server o installare e configurare sistemi software complessi.
Sappiamo che non tutti i problemi aziendali possono essere risolti con soluzioni pronte all'uso. Tuttavia, lo sviluppo di soluzioni personalizzate è sempre stato troppo costoso e dispendioso in termini di tempo per molte delle esigenze dei vari team / reparti, in particolare per quei progetti che si integrano su più origini dati o richiedono l'utilizzo su più dispositivi, da desktop a dispositivi mobili. Di conseguenza, troppe esigenze tecnologiche finiscono irrisolte o poco ottimizzate. Mettiamo insieme fogli di calcolo, catene di email, siti SharePoint e / o processi manuali per colmare le lacune.
PowerApps e Microsoft Flow sono entrambi mirati esattamente a colmare queste lacune. Offrono alle persone che meglio comprendono i loro bisogni la possibilità di risolverli rapidamente, senza la complessità e il costo dello sviluppo di software personalizzato.
In questa sessione, vedremo questi due nuovi strumenti di Microsoft: PowerApps e Flow. Come funzionano e come si possono usare. Ma soprattutto passeremo all'azione e creeremo da zero alcune dimostrazioni dal vivo che dimostreranno come creare una Enterprise Mobile Application che si connette facilmente con tutte le piattaforme aziendali come Office 365, SharePoint Online, Dynamic CRM, SQL on-premise, Social Network e molto altro ancora e come si possono automatizzare alcune attività comuni utilizzando Microsoft Flow.
By Michele Ruberti
Creare una community dal basso ed arrivare ad un'azienda milionaria - Emanue...DotNetMarche
Come è nata l'esperienza della community romana di Host e come siamo riusciti ad essere riconosciuti da Airbnb. Cosa stiamo imparando, cosa funziona, gli errori da non fare.
Metriche per Zombie Communities: come "iniettare vita" in tribù di morti vive...DotNetMarche
4 iscritti al meetup. Nessun commento al post. 1 solo speaker (che poi è tuo cugino). Se sai di cosa sto parlando allora significa che conosci la stretta allo stomaco che si prova quando la tua comminity è silenziosa quanto un cimitero. Ma è davvero la fine? Oppure un community leader può diventare il Dottor Frankenstein di turno e ribaltare la situazione? In questo talk vedremo come basarci sulle metriche per analizzare cosa non sta funzionando nella tua tribù e alcuni consigli azionabili per "resuscitare" l'entusiasmo dei suoi membri.
Vedremo come sfruttare le potenzialità di WPF per realizzare applicazioni diverse dalle classiche LOB (Line of Business applications), basandosi su 3D e Natural User Interface.
Cos'è la UI Composition e che problemi può risolvere
Perchè MVVM e WPF sono importanti per la UI Composition
Il concetto di 'region' e 'UI Injection'
Analisi del toolkit PRISM di Microsoft e cosa comporta realizzarsene uno in proprio.
Cos'è la UI Composition e che problemi può risolvere
Perchè MVVM e WPF sono importanti per la UI Composition
Il concetto di 'region' e 'UI Injection'
Analisi del toolkit PRISM di Microsoft e cosa comporta realizzarsene uno in proprio.
In questa sessione verranno analizzate alcune pagine ASP.NET che verranno sottoposte a refactoring per aumentarne la modularità e comprensibilità del codice, nonchè favorire la testabilità delle funzioni core.
Si presenteranno techiche e strumenti che è possibile utilizzare in modo da avere un approccio più razionale ed 'ordinato' nella stesura del codice. Le pratiche ed i concetti illustrati sono di carattere generale, quindi liberamente applicabili ad ogni tipologia di applicazione.
In questa sessione a quattro mani introdurremo alcuni dei refactorings più comuni e più facilmente applicabili nell'utilizzo quotidiano, e vedremo come risolverli in maniera facile, veloce ed indolore utilizzando ReSharper e pochi colpi di tastiera.
Incidentalmente, inseriremo nel mentre un pò di patterns e di Test-Driven Development, perchè "se non è testato, allora non funziona"
"It's all about simplicity": perchè le applicazioni basate su Javascript sono spesso complesse, farraginose e difficilmente manutenibili quando è possibile renderle semplici, eleganti e funzionali?
In questa sessione a quattro mani vedremo per prima cosa come sfruttare Javascript al meglio, utilizzando i prototipi, i namespaces, gli oggetti, gli eventi, le chiusure e le altre mille funzionalità di un linguaggio di programmazione troppo spesso sottovalutato.
Ci soffermeremo poi su jQuery per analizzare il suo contributo nel semplificare task normalmente tediosi come la manipolazione del DOM, la gestione degli eventi, la programmazione asincrona (AJAX) e le problematiche di compatibilità cross-browser.
In questa sessione 'hands-on' suddivisa in tre parti, vedremo come, codice alla mano, è possibile realizzare applicazioni business tramite Silverlight, cercando inoltre di renderle compatibili con WPF (Windows Presentation Foundation) in modo da riutilizzare ciò che è stato sviluppato
Ci focalizzeremo su questioni come:
- architettura del progetto
- realizzazione di interfacce utente
- interazione con il Data Layer e servizi in generale
- multitargetting Silverlight / WPF
-integrazione dell'applicazione principale con moduli / plugin, tramite pattern MVP e MVC (per semplificare il porting su WPF)
- modularità ed inversione di controllo
Asp.NET MVC è un nuovo framework per lo sviluppo di applicazioni web alternativo al modello webform. Questo consente di utilizzare il pattern MVC per lo sviluppo di applicazioni Asp.NET, permettendo quindi una miglior separazione delle responsabilità che a sua volta porta ad una maggior manutenibilità, riusabilità e facilità nel testing.
La sessione illustrerà i motivi che hanno portato alla nascita di Asp.NET MVC e le sue caratteristiche fondamentali.
Agenda:
- Storia dei framework MS per lo sviluppo web
- Introduzione a Asp.NET MVC
- Vantaggi di Asp.NET MVC
- Il pattern MVC
- Hello MVC: DEMO
- Componenti di MVC: Routing, Controller, Model, View
Nello sviluppo software il termine “test” assume molti significati;
le tipologie di test sono infatti numerose, ma tutte hanno un unico scopo: provare che il software realizzato sia attinente alle specifiche e non presenti bug.
Tra tutti i test, quelli unitari rappresentano senza dubbio la categoria più interessante per lo sviluppatore, dato che sono dedicati alla verifica di piccole porzioni di
codice e sono spesso scritti nello stesso linguaggio usato per realizzare il software.
Agenda:
- Introduzione ai concetti base del testing
- Test unitari
- Librerie xUnit ed automazione dei test
- Alcuni pattern standard per test unitari
Un altro building block del Framework 3.0 si chiama CardSpace ed ha l'ambizione di risolvere uno dei problemi più ricorrenti della quasi totalità delle applicazioni sia internet sia intranet: l'autenticazione utente.
I problemi correlati all'autenticazione sono di diversa natura: da una parte la difficoltà dell'utente nel gestire elenchi di username e password, dall'altra la sempre crescente necessità di evitare l'hacking delle password, o ancora la tipologia di informazioni che un utente vuole rivelare di sé a seconda del contesto, fino ad essere anche un semplice utente anonimo; ed infine la necessità di contemplare autorità di autenticazioni differenti a seconda del contesto.
Se nel passato Passport ha fallito la sua missione, CardSpace affronta in modo totalmente differente il problema rendendosi fruibile cross-browser e cross-platform per costruire un sistema universale di identificazione nel pieno rispetto della privacy.
Con il Framework 3.0 esordisce in Windows una nuova infrastruttura che permette agli sviluppatori di creare, grazie ad un designer, una rappresentazione visuale di una logica applicativa.
In questa introduzione vedremo come il ruolo di Workflow Foundation sia analogo a quello di un linguaggio che con i suoi statement provvede i mattoncini base per costruire un algoritmo. Una particolare attenzione verrà riposta nel prezioso meccanismo dei servizi del runtime di Workflow Foundation e naturalmente sulle Activity, il mattone fondamentale di questa infrastruttura.
1. Implementing Custom Solution in
Sharepoint
Gabriele Del Giovine
Microsoft MVP for Office Sharepoint Server
gdelgiovine@delgiovine.it
Implementing Custom Solution in Sharepoint
3. Premessa
Non c’è codice!
Parliamo di massimi sistemi!
(beh, forse alla fine un poco di codice....)
Implementing Custom Solution in Sharepoint
4. Introduzione
Perchè sviluppare?
Servono nuove funzionalità
Adattare le funzionalità esistenti ad esigenze specifiche
Usare dati “Line of Business” in SharePoint
Creare meccanismi di integrazione stretta fra sistemi
differenti
Chi può sviluppare?
Differenti livelli di “sviluppo”:
Administrators - Configuration
Super (Duper?) Power Users – Customizzazione No-Code
Developers – Sviluppo (Code e No-Code)
Implementing Custom Solution in Sharepoint
5. Introduzione
Perchè parlare di sviluppo a degli sviluppatori?
Perchè è l’unica cosa che capiscono, forse….
http://www.sharepointmn.com
Implementing Custom Solution in Sharepoint
6. Introduzione
Perchè parlare di sviluppo a dei non-sviluppatori?
Sapere cosa è possibile fare
Trovare nuovi usi della tecnologia disponibile
Trovare gli usi sbagliati!
Molte delle decisioni nelle Organizzazioni non sono
prese da persone che conoscono le tecnologie
specifiche.
Implementing Custom Solution in Sharepoint
7. Cosa posso usare per sviluppare?
Core Toolset
Sharepoint End-User Web Interface (il browser)
Office Suite
SharePoint Designer
InfoPath
Excel
Visual Studio
Minimo VS2005 + VsWSS 1.1
VS2008 + VsWSS 1.2 (Framework 3.5 - Sharepoint SP1)
come diceva Max Biaggi parlando della moto di Valentino Rossi: “..is much
better!”
http://www.sharepointmn.com
Implementing Custom Solution in Sharepoint
8. Core Technologies
Interfaccia utente di Sharepoint
Funzioni di personalizzazione delle viste, Edit Page, connessioni fra Web Part e Web Part Pages sono
sicuramente gli strumenti più semplici per la customizzazione .
Molto limitata nella logica e difficilmente “trasportabile” nel caso si usino oggetti come Content-Type,
Site Columns, Look-up
Applicazioni Office
Customizzazione relativamente semplice , Power User friendly
Limitata in termini logica applicativa e funzionalità extra-Sharepoint. Problemi di deployment e
“robustezza”
Esempi: InfoPath, Excel, SharePoint Designer
HTML/XML/XSLT/Javascript
Possono dar vita a customizzazioni molto potenti, senza richiedere scrittura di codice
(se consideriamo XSLT un no code)
Occorre conoscere PERFETTAMENTE gli strumenti usati
Esempi: Master Pages, Content Query Web Part, Search Results
.NET
“Extremely powerful”, mette a disposizione un vero arsenale di strumenti e funzionalità
Un developer Sharepoint completo DEVE conoscere BENE, MOLTO BENE .NET e la sua infrastruttura IT
Esempi: Web Parts, Workflows, Events Handlers, Receivers, Jobs
Difficoltà
Implementing Custom Solution in Sharepoint
9. Iniziare a sviluppare su SharePoint:
I Tre pilastri della saggezza…..
Comprendere l’ambiente Sharepoint
Sapere come interagire con SharePoint
Conoscere capacità e limiti di SharePoint’s
Implementing Custom Solution in Sharepoint
10. SharePoint E’ un mix di applicazioni .NET
“A really big, slightly scary, extremely complicated mix
of .NET and ASP.NET applications”
Le conoscenze dello sviluppo “tradizionale” .NET/ASP.NET sono
ancora valide, ma occorre complementarle con quelle proprie di
Sharepoint , Windows Workflow Foundation e con una
conoscenza di base dell’infrastruttura legata ad IIS ed alle
applicazioni Web.
Implementing Custom Solution in Sharepoint
11. Web Browser Office Application
User
Interface
Web App
Tier
Microsoft Office Sharepoint Server 2007 (MOSS)
Windows Sharepoint Services 3(WSS)
.Net Framework 3.0
Internet Information Server 6.0
DataBase
Tier
Configuration
Admin.
Content
Content
Shared
Services
Search
Implementing Custom Solution in Sharepoint
12. (Programatically)
Come “arrivarci” e come lavorare con SharePoint
3 Metodi principali di accesso (APIs)
SharePoint Object Model
SharePoint Web Services
Remote Procedure Calls (RPC)
Implementing Custom Solution in Sharepoint
13. SharePoint Object Model
Accesso Completo (quasi)
Può accedere al 99% delle cose che compongono Sharepoint
(tutto tranne che il motore di storage SQLServer)
Semplice da usare
E’ il metodo più semplice rispetto agli altri.
Il paradigma è intuitivo (SPSite, SPWeb, SPList…..)
Più usato
Supporto: Newsgroups, libri, presentationi…
E’ il metodo usato per costruire le applicazioni
Non supporta Remoting (dolore…)
Implementing Custom Solution in Sharepoint
15. SharePoint Web Services
Metodo standardizzato di accesso da remoto
Indipendente dal linguaggio e dall’OS
Non supporta tutte le operationi
Lievi differenze fra WSS 2.0/SPS2003 e WSS 3.0/MOSS2007
Richiede XML parsing in quantità industriale
Implementing Custom Solution in Sharepoint
16. Remote Procedure Calls
Metodo più potente e condensato per la
contribuzione di documenti
Molto “pericoloso”
Usato da Office 2003/2007 per l’integrazione
con SharePoint
Difficile da usare
Non molto documentato (ma con eccezioni…)
Implementing Custom Solution in Sharepoint
17. SharePoint come Piattaforma di sviluppo
Ora che sappiamo un poco di più sul
”cosa”, passiamo al “come”?
Cosa devo sapere per capire “se e come” il
mio progetto può essere realizzato con
Sharepoint?
Implementing Custom Solution in Sharepoint
18. Key SharePoint Development Platform Scenarios
http://www.sharepointmn.com
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
19. Personalization
Generale
SharePoint conosce l’utente, tranne quello anonimo
Crea un contesto per l’utente
Security first, tutto è reso in funzione di questo requisito
Resa in funzione del ruolo dell’utente
Il profilo utente fornisce le informazioni sui ruoli dell’utente nei confronti del sito
MySites
Personal Location per l’utente
Customizzazione del look and feel
I contentuti di valore sono nel contesto dell’utente
L’ubiquitaria Web Part
Era l’attività di sviluppo più comune in V2 (forse l’unica), in V3 rimane importante ma non
l’unica .
Supporta il ‘targeting’ to groups of users (in MOSS)
Memorizzazione delle preferenze semplice: per tutti o per singolo utente
Mix and Match con le Web Part Connections
No UI Editor for developers out of the Box: SmartPart (per giocare) o ASCX development
http://www.sharepointmn.com
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
20. Demo – Using WebParts
Implementing Custom Solution in Sharepoint
21. Document Centric
Generale
E’ relativa ai Documenti (Document Library)
Finalizzata ad arrichire (Capturing Data) il documento con metadati (interni o esterni a
documento)
Capturing Data
Office Suite Uploads (files and Document Information Panel)
InfoPath Forms (Forms Services) – permette codice .NET
Integrata nativamente in Office 2003/2007
Creazione di Custom Fields, Content Types, Site Columns
Documenti come Business Objects
Policies: Routing e Gestione del Ciclo di Vita (Expiration)
Event Handlers: gestione di eventi ed impostazioni dei metadata, permissions ed
esecuzione di logica applicativa
External Applications: Interfacce con i documenti presenti in SharePoint
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
23. Collaboration
Generale
Più persone hanno necessità di lavorare sugli stessi files
Il Versioning e l’integrazione con le applicazioni (Office) rendono la cosa “semplice”
Il Routing dei documenti diventa il compito più pesante
Workflow
Quello “Out of the Box” offre delle logiche limitate e poche possibilità di modifica dei dati.
SharePoint Designer Workflows – Configuration e Custom Activities –
Solo sequenziale, non portabile su web application diverse, poco potente
Visual Studio Workflows WFW – Tutta la potenza of .NET e dell’Object Model.
Un delirio per lo sviluppatore
Altre Opzioni
Mobile Views – Permette una forma di collaboratione usando device mobili (HTML minimale)
Extranet
ASP Forms Authentication e providers di autenticazione diversi da Windows AD.
SharePoint Designer UI
ASP Master Page
Content Pages
Direct Page Editing
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
25. Accesso a dati LOB (si si, proprio I gestionali….)
Generale
I dati vengono da fonti diverse e disparate.
Il problema è che nessuno ha la pazienza di accedere alle singole fonti per consultarli.
Serve quindi un “qualcosa” per visualizzarli/usarli
Gli strumenti come Dashboard/Analytics Tools spesso lavorano con fonti dati singole.
Customization
Business Data Catalog – XML Configuration
SQL Stored Procedures e/o Web Services possono essere usati per scenari avanzati
DataViews Web Part di SharePoint Designer
Potente ma difficilmente replicabile o “vendibile” come prodotto
Excel Services – Spreadsheets and limited logic available for consumption
Costo non indifferente e funzionalità limitate
3rd Party WebParts (moltissimi venditori e moltissimo materiale Open Source)
Sviluppo
Web Parts + .NET per accedere a dati “inaccessibili” o per funzioni avanzate di UI o
semplicemente per aggiornarli
SQL Server Reporting Services (rigorosamente versione 2008)
PerformancePoint/Business Scorecard Manager
http://www.sharepointmn.com
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
26. Demo – LOB Data
Implementing Custom Solution in Sharepoint
28. LOB Systems – What’d I See?
Dashboard
Many different sources of information
Many different backends
Many different frontends
BDC
BDC itself is XML configurable
Configurable Pages for Database Records
http://www.sharepointmn.com
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
29. Search
Generale
Trovare i dati può essere un compito difficile!
Customization/Configuration
Search Center – XSLT Configuration (tutto è XSLT)
Dati ricercabili : Extra file shares, databases through BDC, Internet, Motori di ricerca
pubblici, quello che vi pare se vi scrivete un handler….
Indexing Enhancements – Best Bets, Thesaurus, Word Stemming
Microsoft Search Server 2008
3rd Party
Sviluppo
Object Model e Web Services
Uso di ASP.NET per simulare BDC Pages nel ‘crawl’ di un database
IFilter – estrazione della parte “human readable” di formati files (PDF, DWG, TIFF ecc)
Custom Security Trimmer – ACL per oggetti esterni a Sharepoint
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
32. Search – What’d I see?
SearchCenter
Search Tab – Configuration
Search Results – XSLT Customization
Search Application
.NET Application
Object Model or Web Services
Can perform SharePoint searches and retrieve resulting data
http://www.sharepointmn.com
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
33. Administrator’s Development
Non ci siamo dimenticati gli “Administrators” (aka Sistemisti o IT Pro)
STSADM
Nuove funzioni possono essere aggiunte(stsadm –o myaction)
CodePlex contiene diverse decine di estensioni a STSADM
PowerShell
Tool generico per Amministratori
Accesso completo all’Object Model di Sharepoint
Custom applications e webparts possono essere distribuite nella Central Admin
http://www.sharepointmn.com
Implementing Custom Solution in Sharepoint
35. “Wow, sembra tutto meraviglioso”
“Scommetto che lo sviluppo è rapidissimo!”
Non esattamente
I progetti V3 sono molto più complessi di un’applicazione
.NET normale
Complessita delle funzionalità core (Web part, Content Type, Workflow,
Event Handler, deploy, debug etc)
Numero di server coinvolti in un progetto
SharePoint 2007 migliora l’esperienza di Deployment
Solutions
Features
http://www.sharepointmn.com
Implementing Custom Solution in Sharepoint
36. Quando NON dovrei usare SharePoint?
Vincoli di Scaling/Sizing
Non è lo storage ideale per disegni CAD enormi o films (ma funziona…)
External Storage API ci mette una pezza ma non è ancora una soluzione matura
Non è geograficamente distribuito (il problema è demandato in toto a
SQLServer. Quando SQLServer sarà geograficamente distribuito lo sarà anche
Sharepoint)
SharePoint NON è un database ad alte prestazioni
Anzi, Sharepoint non è un database, tecnicamente parlando
Non potete usarlo come base per costruire un ERP
Quando non è necessario riscrivere l’applicazione
Si può ospitare una applicazione ASP.NET (e pure ASP) dentro
Sharepoint (in tutti i sensi)
Implementing Custom Solution in Sharepoint
37. Review
SharePoint Toolset
SharePoint as a Development Platform
Common Scenarios
Personalization
Document Centric
Collaboration
Multiple LOB Systems
Search
Administrators
When not to use SharePoint
http://www.sharepointmn.com
SharePointPersonalization
Document
Centric
Collaboration
Multiple LOB
Systems
Search
Implementing Custom Solution in Sharepoint
39. Testi consigliati:
Implementing Custom Solution in Sharepoint
Inside Windows SharePoint Services v3
by Ted Pattison & Dan Larson (MSPRESS)
Microsoft SharePoint: Building Office 2007 Solutions in C# 2005
by Scot Hillier (APRESS)
Inside Microsoft Office SharePoint Server 2007
by Patrick Tisseghem (MSPRESS)
Workflow in the 2007 Microsoft Office System
by David Mann (APRESS)
Professional SharePoint 2007 Development
by [quasi tutti gli MVP di Sharepoint] (WROX)