Introduction to Windows SharePoint Services DEVELOPMENT

40
INTRODUCTION TO WINDOWS SHAREPOINT SERVICES DEVELOPMENT Christchurch .NET User Group Christchurch SharePoint User Group (C-SPUG)

description

Christchurch .NET User Group Christchurch SharePoint User Group (C-SPUG). Introduction to Windows SharePoint Services DEVELOPMENT. Overview. What is SharePoint (WSS/MOSS)? WSS Out Of The Box WSS Development (select topics) Why SharePoint? Calls to Action and Resources. What is SharePoint?. - PowerPoint PPT Presentation

Transcript of Introduction to Windows SharePoint Services DEVELOPMENT

Slide 1

Introduction to Windows SharePoint Services DEVELOPMENTChristchurch .NET User GroupChristchurch SharePoint User Group (C-SPUG)

1OverviewWhat is SharePoint (WSS/MOSS)?WSS Out Of The BoxWSS Development (select topics)Why SharePoint?Calls to Action and Resources2What is SharePoint?3Titanic Software Stories...Line of Business functionalityContent + Document ManagementGlorified Database Editing ToolsWorkflow and Process EnginesComms Mgmt and ThreadingMulti-Tenant Management/DuplicationExtensible Field ArchitecturesSecurity NightmaresDashboards and Navigation ControlBase Language + API

4Work Smarter, Not Harder!Line of Business functionality.NET + API

Rich Frameworks: WWF, WCF, WPF, App Framework: Windows SharePoint Services5WSS as an App FrameworkMicrosoft Office SharePoint Server (MOSS)Microsoft Project ServerMicrosoft Dynamics CRM?Windows SharePoint Services (WSS)IIS, SQL, ASP.NET, WWF6

Have your Pie (WSS)

CollaborationPlatformServices Workspaces, Mgmt,Security, Storage,Topology, Site ModelDocs/tasks/calendars, blogs, wikis, e-mail integration, project management lite, Outlook integration, offline docs/lists

BusinessIntelligence

Collaboration

Search

Portal

BusinessForms

PlatformServices Workspaces, Mgmt,Security, Storage,Topology, Site Model

ContentManagementServer-based Excel spreadsheets and data visualization, Report Center, BI Web Parts, KPIs/DashboardsIntegrated document management, records management, and Web content management with policies and workflowRich and Web forms based front-ends, LOB actions, enterprise SSODocs/tasks/calendars, blogs, wikis, e-mail integration, project management lite, Outlook integration, offline docs/listsEnterprise scalability,contextual relevance, rich people and business data searchEnterprise Portal template, Site Directory, My Sites, social networking, privacy control and eat it too (MOSS)Single Infrastructure

for Intranet, Internetand Extranet portals9Architecture/Site TopologyFarmWeb Applicationhttp://x.com:1Web Applicationhttp://x.com:2Site Collection/sites/MarketingSite/Div1Site/Div2Root Site/Site/D1ASite/D1BSite Collection/sites/MainSite/Div1Site/Div2Root Site/Site/D2ASite Collection/sites/DevelopmentSite/Div1Root Site/

One Configuration DB per Farm>= 1 Content DB per Web App10WSS-OOTB11Requirements: ChCh DNUG SiteHome page with logo and welcome messageAnnouncements (RSS-able)List of events (sync with Outlook Calendar)Useful links list (configurable)Documents with description (sync with Explorer and RSS)Discussion board (RSS-able, conversation mgmt, posting by e-mail)Editable database of possible topics Ability for members to customise views (e.g. only relevant topics)Search engine on all the aboveNavigation facilitiesFor Dan and Bryn:Interface/admin to update all the above (e.g. upload docs)Wiki for DNUG charter development/collaborationAdmin task list (sync with Outlook Tasks)

12DemoWhirlwind tour of WSS

13Typical Aucklanders!What if Auckland DNUG wants in?Server admin templates (.stp) easy, limitedSite admin templates (.wsp) requires developer, powerfulMany pre-built business solutions are provided this way (Top 40)Community Kit for SharePoint (CKS): UGE!

14Before we code...WSS inherently customisable/flexibleNew breed of solution developers - blurred rolesPower users/IT pros can develop solutions without codeGreat for prototyping and POCsDont worry, coders needed more than ever!For solution development, best to approach in feature-oriented fashion with quality process

15WSS Development16Development Setup: ChecklistServer 2003 hosted in a VMVS 2005SharePoint: .NET 3, WSS, SDKWSS Extensions for VS 2005Ready shortcut to the 12 HIVEU2U Query Builder for CAMLIntelliSense copy 12\Templates\XML\*.xsd to Visual Studio\XML\SchemasSTSADM.EXE in the ClassPathSharePoint DesignerPatience + Coffee

17ExtensibilityEverything you see is exposed programatically via the Object Model, including UIAlso extensible through declarative feature, list and site definitions - CAMLLarge number of web services exposed easy to build composite appsSharePoint plays nice in your SOA or can be a focus of it

18DemoObject Model + Querying with CAML

19Web PartsRe-usable interface componentsBuild from scratch, or with VS WSS extensionsCustomisation and personalisationCustom propertiesCan aggregate standard user controlsCan consume/provide data to/from other partsCan be AJAX-ed

20DemoCreating a Web Part using VSE

21FeaturesMajor new Feature (!) of WSS 3Collections of interdependent componentsDeclarative extensibility (CAML) many elementsActivate/deactivate manually/programaticallyInstalled in Farm, four activation scopesCan have dependent featuresSite definitions Real templates collect all components for a siteBest to simply aggregate and package features22DemoFeatures, Custom Actions, Page Provisioning

23Event ReceiversMost actions in WSS generate eventsBefore (ing) vs After (ed)Pre-synchronous with cancellation supportUseful for plugging in business logic/ validation/integration/Handle through event receiver DLL (in GAC)Best packaged inside featureFeature events themselves can be handledSignificantly improved over WSS 2

24DemoEvent Receiver

25WWF and WSSWSS adds custom extensions to WWF runtimeAllows Workflows to hook into any SharePoint content item, with tasks and notificationsUseful UI for WorkflowGreat for process automation, business process visibility, complianceUse SP Designer (no code) or VS (for tough guys)

DemoWWF and WSS (if time)

27SharePoint DesignerNeeded for drag-and-drop customisationReplaces FrontPage (hooray!)Branding/Style: extensive use of master pages + CSSNo-code WorkflowsCustomised pages vs non-customised pagesData view web part: composite apps with no codeDemoBranding + Style (if time)

Some Other ConceptsSite columnsContent typesCustom field typesList, view, and site definitions in detailSolution packages and provisioning assembliesWorkflow definitions, activities, templatesTimer jobsCustom e-mail connectorsCustom file convertorsSearch extensionsRecords + version managementCustom authenticationAdvanced Web Part techniquesArchitecture/administration/governance: plan plan plan!Deployment/installation/upgradingAll the MOSS stuffChange management, best practices

30Summary: Why SharePoint?31For end users...PersonalisationDesktop integrationCan own the contentWeb 2.0 is SharePoint (!)Can and should contribute to design rapid turnaroundCollaboration and knowledge sharing is a philosophy requires change management and buy-in from all involved

For IT power users...Work smarter, not harderAppear agile to the businessEasy to develop POCsCreate powerful functionality with no-code

For developers...Work smarter, not harderBuild solutions, not foundationsFocus on business value in your softwareRe-use, adapt, customiseLeverage existing skillsExtend reach of softwareSharePoint skills in demand

34For businesses...Powerful base collaboration/ intranet functionality at low costUbiquity fastest growing server platform ever!Scalable road map small stepsMicrosoft are very committed to this platformNo-one was ever fired for choosing IBM SharePoint!Significant improvements in 07 - extensibility + integration

35Calls to Action36Get Started...Install WSS and playDownload the Top 40, and CKS projectsOnline learning resources, labs, web casts (start at http://www.wssdemo.com)Get certified: 70-541 (WSS), 70-542 (MOSS)Try using it within your organisation for collaboration it sells itselfTry it Internally!IT help deskDevelopment wikiDevelopment standards + quality systemsProject workspaces/portalsSocial club portal, events etcProcess automation e.g. leave approvalCustomer portal/support siteKnowledge baseInternal blogs + knowledge sharingYour ideas38Plug for the C-SPUGWant to go deeper?Register at www.sharepointusergroup.net.nzTechnical and business audienceMonthly meetings (approx last Tues)Geek and business user lunches in 2008Knowledge shared as part of the NZ SPUGsLooking for contributors... See Matt Smith or Gary Payne Please tell your friends!

39Resourceshttp://sharepoint.microsoft.com/sharepoint/http://www.sharepointusergroup.net.nzhttp://www.codeplex.com/CKShttp://www.wssdemo.comhttp://www.chandima.nethttp://www.sharepointforbusiness.comhttp://www.mattsmith.co.nz

40