Ep structured share point development - v.4

665 views
587 views

Published on

SharePoint architecture
Review typical SharePoint Development
SharePoint customization vs development
Development with SharePoint Features
Deployment using WSS solution packages
Tips and tricks to SharePoint development

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
665
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ep structured share point development - v.4

  1. 1. A Structured / Repeatable Approach to Building SharePoint Solutions <br />Ivan Sanders<br />SharePoint ArchitectDimension Solutions inc.<br />ivan@dimension-si.com<br />
  2. 2. Agenda<br />SharePoint architecture<br />Review typical SharePoint Development<br />SharePoint customization vs development<br />Development with SharePoint Features<br />Deployment using WSS solution packages<br />Tips and tricks to SharePoint development<br />
  3. 3. SharePoint Architecture<br />SharePoint v4 built on top of .NET 3.5<br />Majority of SharePoint files installedwithin SharePoint “14” RootFolder<br />Each SharePoint Web applicationhas its own Web root on file system<br />File system of SharePoint sites is virtualized<br />Many pages and files map to files on the file system<br />But not all…<br />
  4. 4. Templates Versus Instances Concept <br />Files in a site exist in the siteobject model as SPFile objects<br />All files live within folders (SPFolder)<br />Customized versus uncustomized files<br />Uncustomized file – source on the file system<br />Customized file – source in sites content DB<br />Customization appliesonly to site pages and files<br />Application pages (/_layouts/*) don’t apply<br />
  5. 5. File Source Retrieval Process<br />SharePoint Designer<br />Browser/Web Services<br />SharePoint(HTTP Application/Modules/Handlers)<br />Source of the file is retrieved… first <br />the content database is checked<br />SPFile<br />http://foo/somePage.aspx<br />* if file is uncustomized, underlying template is fetched<br />File template/definition<br />[ .. ]12TEMPLATEFEATURESSomeFeaturePageTemplate.aspx<br />
  6. 6. Typical Site Development<br />Infrastructure assets<br />Create site column andcontent types via browser<br />Layout assets<br />Create master pages and pagelayouts with SharePoint Designer 2010<br />Modify look and feel, adding CSS and images using SharePoint Designer 2010<br />
  7. 7. "Big Picture" Challenges<br />How do you make this development process repeatable? How to automate it?<br />What about source control?<br />SharePoint has version control on lists and libraries<br />No version control for infrastructure assets<br />No version control for site pages and files<br />What about a true softwaredevelopment lifecycle process?<br />What about change management process?<br />
  8. 8. SharePoint Customization<br />Creating and editing instances of assetsthat live exclusively in the site’s content DB<br />Even if originally based off a template,source still lives in content DB<br />Tools used in SharePoint customization<br />SharePoint API <br />SharePoint browser interface<br />SharePoint Designer 2010<br />
  9. 9. SharePoint Customization<br />Advantages<br />Plenty of resources documenting the process<br />WYSIWYG developmentwith SharePoint Designer 2010<br />Easily make changes in multiple environments<br />Disadvantages<br />Site columns and content types arenot easily moved between environments<br />Challenging to package and deploy<br />New files and changes to existing files<br />Multiple environments<br />
  10. 10. Challenges In Creating Publishing Sites<br />Publishing sites exacerbate the challenges<br />All projects require sharing assets<br />Between developers on project team<br />Between environments (Dev/QA/UAT/Prod)<br />How to move asset change to other environments?<br />Manually move infrastructure and layout assets<br />Backup/restore (*** bad badbad option! ***)<br />Content deployment<br />Does not promote code reuse!<br />
  11. 11. SharePoint Development<br />Goals<br />Developers work at a lower level (file system)<br />Keep infrastructure/layout assets out of DB<br />Developers DevelopersDevelopers<br />SharePoint Feature schemaallows creation of all kinds of assets<br />Upon activation, Feature creates uncustomized instances in the site<br />SharePoint solutions enable packagingof Features in one portable file<br />
  12. 12. SP DevelopmentDisadvantages<br />SharePoint Features are tedious to build<br />No visual designer<br />Lots of CAML (XML) markup<br />Minimal debugging support<br />Provisioning files requires double development (but does it)<br />Feature deactivation leaves artifacts (Can this be avoided)<br />Current tools do not promote this approach (Tooling)<br />
  13. 13. SP DevelopmentAdvantages<br />Developers stay in Visual Studio<br />Keeps layout files uncustomized on server<br />Easy to package changes in order to<br />Share with other members on project dev team<br />Deploy to other environments<br />Fully leverage existing SCM solutions<br />Easier to adhere to SDL and change control<br />Full control of site columns and content types<br />Avoiding the _x0020_ in site columns!<br />
  14. 14. Structured SharePoint Solution Development<br />Demo…<br />
  15. 15. Tips And Tricks To SP Dev<br />Add CAML IntelliSense to Visual Studio<br />via Visual Studio XML Schema Cache<br />Using existing tools as IDE, then “Featurize”<br />Use browser for site column and content types<br />Use SharePoint Designer 2010 to createmaster pages and page layouts faster<br />Utilize SharePoint API to extract assets<br />STSADM.EXE Custom Commands<br />VSeWSS 1.3<br />Automate process of building WSP’s<br />WSPBuilder<br />
  16. 16. Third Party Tools & Demos<br />Stramit.CamlViewer2010<br />Beyond Compare 2<br />Elumenotion SharePoint Skinner<br />AFR<br />SharePoint_Tips_Utility_Pack<br />SPContentDeploymentWizard<br />Fiddler2<br />SharePoint Manager 2010<br />Visual Studio 2008 SP1 – VSTA, VSTO, SharePoint SDKs, Windows SDK<br />ColorPic<br />Bewise.SharePoint.QuickLaunch<br />Bewise.View.Permissions<br />PowerISO<br />WildCard Search<br />Faceted Search<br />Cascading Lookup Columns<br />

×