I think this is an interesting question that I'm speculating with regards to vNext of SharePoint. Also to gather everyone's opinion on possibilities and their wishlist.
So I think, some of the interesting usage scenario's for Silverlight in SharePoint are:
- Workflows: Various possibilities where usability on workflow's can be maximized over browser, and not remain exclusivity of SharePoint Designer or Visual Studio. Resulting in greater adoption and their understandability for last-mile users, while encapsulating the complexity that hinders (if any).
- Workflow History: Instead of present approach of showing history in tabular grid form, which is difficult to capture and almost impossible to understand the transition flow. Therefore, a visual map of workflow-history would be far better, where-by in a flow-chart type view we can see various activities and tasks performed (or due!) plotted in a super interactive Silverlight control. Each node (of Activity or Task) showing high-level data, and hovering over would show details pertaining to activity or say visual with a Picture of person who performed the Task. Yes, there should be support for Sequential as well as State-Machine type workflow's.
- Sequential Workflow's: Instead of SharePoint Designer, I think they belong to the Browser. If Nintex Workflow can do that in AJAXy way, I'm sure Microsoft can do that even better with Silverlight! I do not see a reason why that is exclusivity for SP Designer alone, given the RIA richness possible with Silverlight now. Now I'm actually envisioning a case where-by custom developed activities (.actions) better be supported when deployed by developers. The bigger question is, why should it all remain confined to "Sequential" workflow's alone, are the boundaries real for vNext... or it can/will change?
- SharePoint Maps: If Yahoo can do it with Flash, Microsoft can do it better with Silverlight Deep-Zoom! ;-)
- Address/Map Field: There is a need for geo-coded map field, which would be best if implemented in Silverlight. Support all scenarios of New, Edit and Display. That means, we can either enter location by typing address and hence a geocode, or by selecting in Silverlight based map. Same should apply for Edit scenarios in forms. For Display, simply show the Map... preferably through Silverlight, with added cases of PushPins etc.
- Map View: You have existing data in a list which has columns like address, latitude, longitude, city, or country etc. You want to create a view to show that data plotted visually over a Map instead.
- Web-Part Support: Support these views in a web-part as well, so one can lookup the Map view and show on a web-part page with all relevant pushpins populated.
- Web-Part Connections: Support connections to allow scenario's of filtering properties or pushpins populated on the Silverlight map shown in a web-part.
- People Search: Search people by location, in a deep-zoom experience! Or view them plotted across maps, with deep-zoom again.
- SharePoint Views:
- Gantt View: I have heard enough complaints about SP 2007 Gantt View for its limitations for number of items, too much scrolling, and no way of setting zoom levels beyong week, to those for months or even year. I think, instead of going HTML/AJAX route, Gantts can be far better in Silverlight. It would be even better if we can have best of both, and enhance Gantts for AJAXy experience and feature enhancements, on top of those based on Silverlight.
- Calendar View: Well existing calendar views are good, but there are few limitations when it comes to color-coding, overlapping of multiple calendars etc. It would be great if Silverlight could be utilized for allowing overlapped calendars in same List view. Also think adding event into the calendar merely by clicking timeline, and updating Calendar without post-back. Much more can possibly be done, but demands a dedicated post...
- Timeline View: Like those from Visio. I know there is data-integration that can be established to build a Timeline in Visio diagram based on data residing in list, but it would be far more usable to last mile user if Timeline could be one of the View types whenever you want to plot your list items against timespans. Will be a boon for light-weight PM story on SharePoint, with multitude of applications! Silverlight is best fit for it.
- SharePoint Charts (Web Parts): I would vote this to be one of my favorite wish item. Introduce family of web-parts which are entirely Silverlight based, inputs data from any list/web-service/datasource(!)/web-part and renders various chart types in Silverlight.
- Animated Charts: Various possibilities with animations with charts. Dynamic updates can be another, where-by chart self-updates on configured timer based on data changes in source.
- Chart Types: Various types like Column, Pie, Line, Bar, Area, Scatter, Stock, Surface, Doughnut, Bubble, and Radar in combination of 2D/3D, Cones etc. Also various other types like Gauges, Meters etc. Few examples here.
- Libraries as input: How about supporting libraries as input, where by same web-parts can dual-up for showing document-previews, picture galleries (various types!), and various other types, synonymous with Web 2.0 era, like Carousels etc. For example, if you hookup Gallery web-part (of Carousel type) to User-Info list, you could show members of a group in carousel.
- Well chart wish-items sounds much like Dundas charts for SharePoint, spiced with Silverlight... but the point is that we shouldn't wait for SQL-RS 2008 as pre-requisite for making such views available. In my view, it all instead belongs to SharePoint, in addition to RS perhaps!
- Miscellaneous: This can be a very long list given the possibilities with Silverlight. So some conservative last are...
- Media Player Web-Part: Media saved in SharePoint, playable through Silverlight based player UI and windows/web-part.
- Free/Busy for Shared Resources: Most corporate or institutional setups have shared resources like meetings rooms, shared vehicles/projectors etc. In a team setup free/busy tracking becomes essential, and I see different groups doing it differently... some use Exchange accounts, others have custom apps! This is a candidate for SharePoint with Silverlight added. for example:
- Free/busy plotter, silverlight based.
- Allow input of 3D building wireframes, with rooms plotted. Free/busy available on SP UI, with 3D manipulation! Something like this...
- List Relationships: We've empowered last-mile users with SharePoint where-by relational concepts are now applied without steep knowledge curve. Yet classic tooling, like Relationship view, can be a boon to list/site designers. So I wish, having a view of List/Column relationships in a relationship-diagram type view would be great. Various types like Content-Types, Columns, Lists can all be factored into such view generation that will give designers a snapshot view of sites "data schema", and help design it better. I think this could be linked either from "View All Site Content" or through "Site Settings".
Above is a first crack, and is no way comprehensive, given the possibilities with Silverlight. If time and ideas permit, I'd have followup post.
Meantime, please share your ideas on what you think could be wish items.
Disclaimer: This is an independent endeavour. I am neither a member of SharePoint or Silverlight team, nor of Microsoft!