Are good SharePoint solutions only a myth?

321
-1

Published on

Session on SharePoint solutions architecture at ShareCamp, Rovinj/Croatia, April 2012

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
321
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Are good SharePoint solutions only a myth?

  1. 1. Rovinj, 23. – 26. travnja 2012.
  2. 2. Are good SharePointsolutions only a myth?ADIS JUGOMVPPlanB.
  3. 3. Sponzori
  4. 4. Isključite zvuktelefona
  5. 5. Are good SharePointsolutions only a myth?
  6. 6. Are good SharePoint solutions only a myth?... the developer community is full with statements like "there aregood developers, there are bad developers, and then there areSharePoint developers"; or "there is solid software architecture, andthen there are SharePoint solutions"
  7. 7. Perception of SharePoint ApplicationsWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  8. 8. Expectations…WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  9. 9. Time and costs estimationWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  10. 10. Architecting SharePoint solutionsWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  11. 11. What is wrong with this web part? Adis Jugo, PlanB.
  12. 12. Types of SharePoint solutions • Enterprise SharePoint Solutions • SharePoint SandBox Solutions • Solutions that use SharePoint dataWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  13. 13. 4 questions for architects • How will the users be using the application? • How will the application be deployed into production and managed? • What are the quality attribute requirements for the application (security, performance, concurrency, localization, and configuration) • How can the application be designed to be flexible and maintainable over time?WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  14. 14. Architecture Considerations Quality attributes – Security – Performance – Concurrency – Localization / Internationalization – Configuration • Considerations – … • Impersonation • Logging • Caching • Testing • Deployment • Flexibility / Manageability / FutureProofWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  15. 15. ENTERPRISESHAREPOINTSOLUTIONS
  16. 16. A SharePoint Solution Managet Code / Workflows Silverlight Ajax Office Timer Jobs Clients !NET / Event Mobile/ Receivers Tablet InPage SP WinRT / Solution Metro
  17. 17. BL Classes not SPContext Aware SPContextTransport/Creation? SPContext Aware Infrastructure Layer Classes Dependency injection
  18. 18. WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  19. 19. Logging • Logging from the BL • ULS for SharePoint LOGGING • Different implementations
  20. 20. Caching, Persistence • Caching in front- end Web Server – AppFabric for Caching, persistence Windows Server – NCache • Persistence – SPPersistedObject
  21. 21. Localization / Internationalization • Chrome • User InterfaceWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER • Navigation • Content
  22. 22. Architecting InPage Elements: MVP ModelWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  23. 23. Unit Testing nUnit SharePoint DAL Infrastr. Layer Business Layer – Logging – Caching SharePoint is no – Configuration excuse for lack of VS Unit Testing Presenter (MVP) Unit TestingWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  24. 24. Problems, problems… • Everything is SharePoint App Pool • Deep impact on SharePoint Server • Deployment to SharePoint Web Front Server(s) • Policies? • Maintenance • Not possible with Office 365 (or other hosted services)WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  25. 25. SharePoint Enterprise Solutions Architectural considerations Quality Attributes Impersonation Security Logging Performance Caching Concurrency Testing Localization / Internationalization Deployment Configuration Flexibility / Future ProofWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  26. 26. UMJESTO DEMOAblog.sharedove.com/adisjugosharedove.codeplex.com
  27. 27. SHAREPOINTSANDBOXSOLUTIONS
  28. 28. SHAREPOINTSANDBOXSOLUTIONS
  29. 29. SandBox Solutions Architectural considerations Quality Attributes Impersonation Security Logging Performance Caching Concurrency Testing Localization / Internationalization Deployment Configuration Flexibility / Future ProofWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  30. 30. SOLUTIONSWHICH USESHAREPOINTDATA
  31. 31. SharePoint on Premise + Application Server Business processes Your Data Solutions … Collaboration All custom Portals development …WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  32. 32. SharePoint Online (O365) + Windows Azure Worker Processes Your Data Azure Services Collaboration Web Sites Portals …WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  33. 33. No SPContextaware Components
  34. 34. SOLUTIONS WITH SHAREPOINT DATA Architectural considerations Quality Attributes Impersonation Security Logging Performance Caching Concurrency Testing Localization / Internationalization Deployment Configuration Flexibility / Future ProofWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  35. 35. Limitations • Limited access possibilities • ASMX Services • OData • CSOM (Client SharePoint Object Model) • No advanced list-data management • No Event Receivers, Timer Jobs • Outside of SharePoint user interface • Suitable for integrating other solutions with SharePointWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  36. 36. IT’S YOUR CHOICE
  37. 37. And FinallyWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
  38. 38. Resources • Asterix and Cleopatra http://www.amazon.com/s/ref=nb_sb_noss?url=search- alias%3Daps&field- keywords=asterix+and+cleopatra&x=0&y=0 • MS P&P: SharePoint Guide http://spg.codeplex.com • MVP pattern in SharePoint InPage elements (WebParts, ASPX) http://msdn.microsoft.com/en-us/library/ee413740.aspxWINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER http://www.planb.ba
  39. 39. Pitanja @adisjugo

×