• Save
Best Practices for SharePoint Application Lifecycle Management with Team Foundation Server
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Best Practices for SharePoint Application Lifecycle Management with Team Foundation Server

  • 3,506 views
Uploaded on

These are my slides from the SharePoint konferenz in Vienna on 17th/18th of June 2013 http://www.sharepointkonferenz.at ...

These are my slides from the SharePoint konferenz in Vienna on 17th/18th of June 2013 http://www.sharepointkonferenz.at

SharePoint is typically a strategic decision for companies who intend to use it on a long-term basis. Customizations and enhancements, which means usually farm solutions or apps, are often designed and implemented with disregard to the overall life cycle of the platform.
Future changes of the solutions, changing developers with different preferences in the code design, technical knowledge, documentation standards and quality understanding cause a considerable additional expense for maintenance and operation of solutions.
By applying consistent SharePoint Application Lifecycle Management with Team Foundation Server 2010/2012 and simple "rules of conduct" will allow you to prevent having to start over again when the "expert who knew everything" suddenly leaves the company or the CIO decides once again to replace the consulting firm.
This session presents best practices for SharePoint ALM and tools which can help to spare you the “why didn’t we think about that”-moment in a couple of years from now.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,506
On Slideshare
2,552
From Embeds
954
Number of Embeds
6

Actions

Shares
Downloads
0
Comments
0
Likes
2

Embeds 954

http://www.matthiaseinig.de 929
http://www.feedspot.com 19
http://cloud.feedly.com 2
http://digg.com 2
http://translate.googleusercontent.com 1
http://feedreader.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Platin-Partner: Gold-Partner: Veranstaltungs-Partner: Medien-Partner:Best Practices for SharePointApplication Lifecycle Management withTeam Foundation ServerMatthias Einig
  • 2. Contact@matteinmail@matthiaseinig.dewww.matthiaseinig.deWho is that guy?• SharePoint developer since SPS2003• MCSE, MCPD, MCITP, MSCA inSharePoint 2007-2013• SCRUM Master and Product OwnerMatthias EinigSharePoint ArchitectSteria AB, www.steria.comStockholm, SwedenMain Focus:• Solution Architecture,• Solution Development,• SharePoint ALM,• Solution Quality Assurancesharepoint-community.net
  • 3. Application Lifecycle Management“is a continuous process of managing thelife of an application through governance,development and maintenance“ ** wikipedia.org
  • 4. SharePointApplicationLifecycleSpecifyDesignCodeDeployValidate&TestRunBuild&Package1. Requirements Management2. Solution Architecture3. Development4. Quality Assurance / Testing5. Build and Package6. Solution Deployment7. Operation8. Project and ReleaseManagementWhat is SharePoint ALM?
  • 5. Requirements ManagementObjectives• Stakeholder Analysis• Requirements analysis• Manage and trackrequirementsChallenges• Align requirements with SPusability• Avoid re-implementing standardfunctionality• Identifying „missing“requirements
  • 6. • Business analyst knowSharePoint!• Demo SharePoint toStakeholders• Use Wireframes and UI mockups• Standardize the syntax ofrequirements• Avoid changing SharePointstandard behaviour• Manage and track requirementsie. in Team Foundations Server<role><can|must><verb><object><condition>Auser can upload a document with member permissions.Best Practices
  • 7. Work Items inTeam Foundation ServiceDEMO
  • 8. Solution ArchitectureObjectives• Re-use components• Stability andPerformance• „Build to last, build tochange“Challenges• Complexity of SharePoint• Requirements deviatefrom SharePointstandards• Existing solutions onenvironment
  • 9. Best Practices• Know SharePoint out-of-the-box capabilities!• Use SharePoint standard features wherepossible• Design reusable modules• Use existing patterns i.e. service locator,repository pattern etc.• Build vs. buy?
  • 10. DevelopmentObjectives• High quality• Conformance to codingguidelines / conventions• TestabilityChallenges• Multiple languages C#, XML,HTML, CSS, JavaScript• Cryptic dependencies• Team development
  • 11. • Use source control and workitems• Structure application in multiplesolutions• Be consistent in coding approach(declarative vs. programmatic)• Convention over Configuration• Specialized developers• Standardize development environment• Use the SharePoint Software FactoryDownload for free! http://spsf.codeplex.comBest Practices
  • 12. SharePoint Software Factory&TFS Source ControlDEMO
  • 13. Build & PackageObjectives• Deployable solution package• Build against production-likeenvironment• Continuous integrationChallenges• Developer environment mightdeviate from production• “It builds on my machine…”• DEBUG build on PROD
  • 14. • Use central team build• Build server should runon production-likesystem• Integrate periodically tofind problems soonerBest Practices
  • 15. Team Build inTeam Foundation ServiceDEMO
  • 16. Quality AssuranceObjectives• Ensure maintainability of code• Validate against companyspecific rules and policies• Identify unneeded dependenciesChallenges• SP Solutions have loads of files• XML is not validated• Do the same a 100 ways• Deploy into SharePoint “Hive”
  • 17. • Assure quality on check in• Establish software qualitygates• Use FxCop, StyleCop andSPDisposeChecker• Make regular code reviews• Check SharePoint “code”automatically with SPCAFDownload free beta at http://www.spcaf.comBest Practices
  • 18. No DEMOSee session at 16:00, room 3:Automated Code QualityAnalysis of SharePoint Solutions
  • 19. TestingObjectives• Test against requirements• Identify bugs early• Test stress scenariosChallenges• Unit testing complicated• Solution affects standardfunctionality• XML code cannot be tested• Manual testing costs time
  • 20. • Specify test cases in TFS• Link tests to workitems• Separate business logic from SP Code• Use mocking frameworks(TypeMock, JustMock, Moles, Shims)• Use Coded UI Tests in VS• Use VS TestManagerBest Practices
  • 21. Solution DeploymentObjectives• Complete (customization,configuration, content)• Fully automated /reproducible• Support retraction / upgradeChallenges• Manual steps often required• Multiple environments (DEV,TEST, ACC, PROD)• IT Pros don’t trust developers
  • 22. • Standardize deployment• Use PowerShell• Include configuration andcontent• Parameterize deployment fordifferent environments• Log all deployment steps• Automate staging through TFSDownload for free! http://spsd.codeplex.comBest Practices
  • 23. OperationObjectives• Maintain a stable farmenvironment• Allow application changeswith minimal impact• Reduce downtimesChallenges• Multiple solutions on a farm• SP Updates might affectsolutions• Some bugs can be onlyreproduced on production
  • 24. • Have a test farm!• Expect change and prepare• Classify and prioritize changes• Use scripts for changes• Import live content to test farmregularly• Use third party tools to manageyour farm (i.e. DocAve)Best Practices
  • 25. SummarySharePoint ALM works for… any team size (even one person)… any project size… any project process (agile or classic)Introduce it step by step!Use ALM tools like TFS!
  • 26. The SharePoint ALM toolkit!Download at www.spcaf.comMatthias Einig@matteinwww.matthiaseinig.deFollow us!TheSharePointCodeQualityTeamTorsten Mandelkow@tmandelkowblogs.msdn.com/b/torstenmandelkowSharePoint Code Quality Tools
  • 27. FRAGEN ?
  • 28. SharePoint Campab 08. Juli in Münchenab 05. August in Berlinab 02. September in Karlsruhein zwei speziellen Versionenwww.SharePointCamp.deTrainings und Events der ppedvMehr als 100 verschiedene Trainings aufMicrosoft-Technologien spezialisiert11 Standorte in AT & D Maßgeschneiderte Trainings direkt bei Ihnen vor Ort!www.ppedv.atWir sehen uns wieder!
  • 29. Hat Ihnen mein Vortrag gefallen?Ich freue mich auf Ihr Feedback!
  • 30. VIELEN DANK!Platin-Partner: Gold-Partner: Veranstaltungs-Partner: Medien-Partner: