SharePoint Dev and IT Pro-living together


Published on

Developer customization is often necessary to address business needs, but customizing SharePoint can introduce security, performance and stability problems. This crossover session covers ways of relieving the friction between Dev and IT Pros, ensuring the best SharePoint experience for all. Focus is on deploying and managing customizations and will cover upgradeability, disaster recovery, and other key areas.

From DevConnections Las Vegas. April 19, 2011

Published in: Technology
1 Comment
  • Hi Randy -

    I really like your Power Point Presentation. Another tool that I've been using that has really helped me is a separate SharePoint Analytics tool. CardioLog is especially made for the SharePoint architecture and has given us great insight into how to improve our portal. You can check out a free trial of Cardiolog at
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SharePoint Dev and IT Pro-living together

  1. 1. Developers and IT Pros – Living Together<br />Randy Williams<br />Synergy<br /><br />
  2. 2. About the Speaker<br />US-West Coast Manager for Synergy<br />Based in San Diego, California<br />Consultant/Trainer/Author<br />SharePoint MVP<br />Specialty in architecting solutions<br />Blog:<br />Twitter: @tweetraw<br />
  3. 3. This Session…<br />Is designed for IT Pros and Developers<br />We will not be writing code<br />Is meant to be fun…and serious<br />
  4. 4. Developers and IT Pros – The Train<br />
  5. 5. The Problem<br />
  6. 6. The problem<br />OOB SharePoint doesn’t deliver 100%<br />Developers enhance SharePoint with custom code<br />IT Pros support SharePoint<br />What happens when something breaks?<br />Who is to blame?<br />
  7. 7. How can Custom Code Pose Problems?<br />It’s the #1 root cause for support issues<br />It can introduce…<br />Security vulnerabilities<br />Performance problems<br />Complicates troubleshooting<br />Isolation and identification<br />Upgrade issues<br />DR issues<br />
  8. 8. Custom Code and Upgrading<br />Most upgrade issues are because of customization<br />SharePoint infrastructure changes<br />SSO and SSPs are gone<br />Database attach upgrade  must reapply customizations<br />Some code needs to be recompiled<br />32 bit code not supported in 2010<br />
  9. 9. Custom Code and DR<br />If SPS_WFE goes down<br />Must recreate the farm & web apps<br />Must reapply all custom code<br />Must restore content from backup<br />
  10. 10. Custom Code and DR<br />Important Point<br />SharePoint’s built-in backup does not include WFE server or any of its customizations<br />
  11. 11. But is Custom Code the Problem?<br />No, just bad custom code<br />Code that is inefficient<br />Code that leaks<br />Code that must elevate trust level in web.config<br />Code that must be deployed manually<br />
  12. 12. How to Relieve the Friction?<br /> Mutual understanding and respect<br />IT Pro and Developer roles are essential <br />and inter-dependent<br />
  13. 13. How to Relieve the Friction?<br />Both IT Pros and Developers must understand SharePoint’s architecture and available tools<br />The 4 Things<br />IT Pros<br />Developers<br />
  14. 14. Architecture and Tools Overview<br />
  15. 15. SharePoint Platform and Product<br />Custom Code<br />Microsoft Product<br />{insert solution here}<br />Platform Infrastructure<br />Base Platform<br />.NET Framework<br />ASP.NET, WCF, Workflow<br />
  16. 16. Tools Used to Enhance SP<br />Use SharePoint UI (websites, pages, lists, libraries)<br />Office Products<br />Access, Excel, InfoPath, Visio<br />SharePoint Designer<br />Visual Studio<br />This is where “custom code” is developed<br />
  17. 17. Visual Studio<br />Best tool for building applications<br />Features, site definitions, web parts, custom field types, event receivers, complex workflow<br />Risk exposure is high<br />Developed in a local development environment<br />Staged deployment into test and production environments<br />
  18. 18. Features<br />Plug-in functionality<br />SharePoint is built on Features<br />Custom Features enhance SharePoint<br />Web parts, pages, workflow, menu commands, ribbon, list templates, others<br />Feature scope<br />Farm, Web application, Site collection, Website<br />
  19. 19. What are Solution (WSP) Packages?<br />Used to deploy custom code<br />Contains all files and deployment instructions<br />WSP extension<br />Internally a cabinet file<br />Created by Visual Studio<br />Farm or Sandboxed<br />Manifest.xml<br />WSP<br />Assembly.dll<br />Image.jpg<br />AppPage.aspx<br />
  20. 20. Sandboxed Solutions<br />Business Agility<br />Security and Stability<br />Essential Agility<br />Essential Stability<br />Simpler development model<br />Easy & Rapid Deployment<br />Office 365 (Cloud) compatible<br />Limited API Access<br />Monitored Resources<br />Site Collection Quotas<br />Separate Process<br />
  21. 21. Demo<br />Working with Farm and Sandboxed Solutions<br />
  22. 22. The 4 Things<br />
  23. 23. The 4 Things – IT Pros<br />Can’t prevent all custom code<br />Must understand WSP Solutions<br /> What they do and how they work<br />Must be competent with PowerShell<br />Must be able to troubleshoot and interpret log files<br /> ULS log files, app event log, IIS log files<br />
  24. 24. SLA<br />The 4 Things – Developers<br />Service Level Agreement<br />Code must be packaged into a WSP<br />Use sandboxed solutions whenever possible<br />Understand supportable changes<br />
  25. 25. Demo<br />Review of Unsupportable changes<br />
  26. 26. Final Thoughts<br />Be sure to have an application lifecycle management (ALM) plan<br />Maintain discipline <br />Have a complete test/staging environment<br />Must match production as closely as possible!<br />Tap into the ever-growing SharePoint community<br />
  27. 27. Group Hug?<br />just kidding <br />
  28. 28. Your Feedback is Important<br />Please fill out a session evaluation form.<br />Thank you!<br />