1 / 36

SharePoint User Group Melbourne May 2007

SharePoint User Group Melbourne May 2007. Ishai Sagi, SharePoint MVP Senior Consultant Ishai.Sagi@uniqueworld.net Blog: www.sharepoint-tips.com. SharePoint Software Architecture. The good, the bad and the ugly of SharePoint. What Kind of a Beast is SharePoint?.

kyros
Download Presentation

SharePoint User Group Melbourne May 2007

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SharePoint User Group Melbourne May 2007 Ishai Sagi, SharePoint MVPSenior ConsultantIshai.Sagi@uniqueworld.netBlog: www.sharepoint-tips.com

  2. SharePoint Software Architecture The good, the bad and the ugly of SharePoint

  3. What Kind of a Beast is SharePoint? A parable if I may?Loosely adapted with permissions from “The Sanity Point” blog

  4. A group of three blind men encountered an elephant and his trainer. "We have never met an elephant before," the men said. "May we touch it so that we may know what an elephant is?" "Of course!" The trainer said, and the men approached the elephant.

  5. The first man walked into the side of the elephant, felt up, and down, and side to side and exclaimed "I have encountered a wall. An elephant is a large, warm wall!"

  6. The second man had walked up to the elephant's leg. He said "Are you crazy? This is no wall, but round, and sturdy, like a tree trunk, or a pillar. An elephant is a kind of tree!"

  7. The third had encountered the trunk and said "You are both wrong. An elephant is a large serpent, like a python, but without bones!"

  8. The trainer intervened: "Gentlemen, you are each right, in your own way, but also all of you are totally wrong. An elephant is neither wall, nor tree, nor serpent, or even bottle brush. “

  9. What is an Elephant? “It is a vast creature of many parts, some of which resemble the familiar things you have perceived. But to truly understand the elephant you must expand your perception, and approach not just the piece you are familiar with, but the entire animal."

  10. What does that have to do with anything? • SharePoint is big • Anyone working with SharePoint approaches it from a different perspective: • Is it a database? • Is it a development platform? • Is it a dashboard platform? • Is it a collaboration platform? • Is it an enterprise data and BI platform? • Is it a workflow engine? • Is it a web forms generator?

  11. What is SharePoint?The answer is Yes to All. SharePoint is all of these things, but is not specialized SharePoint does some things better than others There are some pitfalls you may trip into if you treat SharePoint as a thing it is not

  12. The Good, the Bad and the Ugly • The good – • Best practices (the do’s) • Things made easy • The bad – • Worst practices (the don’ts) • Things that need improvement • The Ugly – • workarounds (the might-do’s)

  13. The Good Best practices in SharePoint Software Architecture

  14. SharePoint is Great for: • Storing documents as part of the system • Searching document contents, list items and sites • Managing security in a very flexible way, out of the box • Creating custom lists, surveys and other collaboration tools

  15. SharePoint as an Object Oriented Database • Use sites and lists in your design, and treat them as objects • Get rid of the “Tables” and Foreign Keys way of thinking

  16. SharePoint as an easy security driven application • Use built in granular security features to set security on objects in your system • Empower users, not developers or administrators to set up security • Think loosely coupled

  17. The BDC – It’s here! • A great way to integrate data from external sources into SharePoint • Add actions to entities to create data manipulation applications that are integrated into SharePoint

  18. User Power! • Train users to use SharePoint, and let them create their own solutions • Review users’ solutions, and add customization only if worth the cost

  19. Business Analysts – Have Fun! • Start with a workshop • Show the users how to create lists, and unleash them!

  20. Plan ahead – Content Types & Site Columns • If you are planning a solution using SharePoint, make sure you define the content types first. This will allow easier search, aggregation and change control • Site columns are a very effective way to have a master list, and looking into it from sub sites

  21. Workflows are easy! • Try SharePoint designer workflows – easy ad hoc workflow for the entire family! • Workflow development is easy in Visual Studio to do more complex stuff

  22. Data Views are Easy! Build XSLT data views in SharePoint Designer to quickly and easily display data from various sources

  23. The Bad Worst practices in SharePoint software architecture

  24. Scalability as a database • Don’t use SharePoint as a data store if you foresee the data growing into the tens of thousands (document library supports 10 million, but views support 2,000) • Never do a lookup allowing multiple selection into a list of thousands (at least until a fix is released)

  25. Deep Hierarchy Navigation • Big sites are hard to find your way through • Remember! There was a reason why you wanted to get rid of the file share • Don’t assume that search will solve all navigation problems

  26. The BDC – Almost there! • Usually requires experience to implement • Does not allow multi select

  27. Instability of custom code • Workflow and event handlers can be problematic to stabilize and maintain • CPU intensive actions like creating web sites, and RAM intensive actions like uploading big documents may cause custom code to break

  28. Business Analysts – beware! • The ominous “Report” • Cascading drop downs • Complex Validation logic

  29. The Ugly Workarounds that work, but are not pretty…

  30. Work around scalability • Plan an archiving solution from the beginning – prevent big lists and libraries • You may want to develop your own custom controls to handle big data

  31. Workaround Stability • When creating a workflow or event handler, plan for the worst. • Assume the user will want to start over • Assume the event handler will fail, and you will need to make it do it’s job again

  32. Workaround Field Validation • You can create your own custom field controls, with custom navigation • You can even develop a complex field control for a BDC multi-valued field…

  33. Conclusion

  34. Use SharePoint as a Development Platform when: • Your solution requires a lot of collaboration functionality • Your solution requires managing and storing documents in a secure environment, with search • The system needs to be flexible, and the users need to be able to manage it • Time is of the essence, and security requirements are more then you want to develop

  35. Don’t use SharePoint when • Users expect high performance when creating objects (like sites) • Complex real-time reporting is essential • Volume is expected to exceed the one thousand in each list • Maintaining data structure, and relationships is critical

  36. Great links SharePoint Tips & Tricks (my blog)www.sharepoint-tips.com The SharePoint Tips Utility Pack (my pet open source project for SharePoint people)www.codeplex.com/spstipsutilitypack My SharePoint Nested Tasks projectwww.codeplex.com/spsnestedtasks The Sanity Point – Your (Share)Point of View http://tinyurl.com/2ofmdw

More Related