Vývoj a nasazování řešení pro SharePoint 2010

Post on 24-Feb-2016

54 views 0 download

description

Vývoj a nasazování řešení pro SharePoint 2010. Průvodce základními principy, možnostmi a doporučenými postupy. 11. 10. 2011, Microsoft Ondřej Tučný, CEO, BoldBrick. Agenda. Vývoj pro SharePoint 2010 Sandboxed solutions Infrastruktura: cloud vs. on-premise Nasazení do produkce. - PowerPoint PPT Presentation

transcript

Vývoj a nasazování řešení pro SharePoint 2010Průvodce základními principy, možnostmi a doporučenými postupy

11. 10. 2011, Microsoft

Ondřej Tučný, CEO, BoldBrick

Agenda

1. Vývoj pro SharePoint 20102. Sandboxed solutions3. Infrastruktura: cloud vs. on-premise4. Nasazení do produkce

1. Vývoj pro SharePoint 2010

Dostupné nástroje pro vývoj

Microsoft• SharePoint Designer• Visual Studio• InfoPath

Třetí strany• Nintex Workflow• Mossquito• …

Web

• Přizpůsobení out-of-the-box vlastností

• Stačí browser

Konfigurace

• Deklarativní vývoj a přizpůsobení

• Deklarativní nástroje třetích stran

Vývoj

• Vývoj vlastních řešení

• Znovupoužitelná řešení

• Visual Studio a další

Porovnání standardních nástrojů

Deklarativně můžete…• Zakládat a editovat stránky• Definovat datový model• Vytvářet formulářové

aplikace• Vytvářet komplexní

workflow• Editovat pokročilé

nastavení web partů• Vytvářet vlastní XSLT view

Vyvíjet můžete…• Vlastní business logiku• Vlastní sloupce• Web party• Event handlery• Workflow aktivity• WCF služby / integraci• Timer joby• Vlastní SPService

Zajímavé novinky v SP2010

• Client Object Model ⇒ práce s Object Modelem z JS a Silverlightu

• XSLT View ⇒ otevírá kreativitu v deklarativnímu vývoji UI

• Sandboxed solutions ⇒ cesta, jak vyvíjet pro Office365

(a spousta dalšího užitečného pro vývoj: REST, PowerShell, Business Connectivity Services, Managed Metadata, vlastní SPServices, …)

XSLT ViewPř ík lad: zobrazení kand idáta (1 /2 )

Standardní view se spoustou sloupců může být pěkně nepřehledné…

Základní verze této aplikace jako open source na http://sp2010recruitment.codeplex.com/

XSLT ViewPř ík lad: zobrazení kand idáta (2 /2 )

Základní verze této aplikace jako open source na http://sp2010recruitment.codeplex.com/

Client Object Model + XSLT ViewPř ík lad: jednoduchý work f low ed i tor (1 /2 )

Podobně nepřehledná situace jako u předchozího příkladu

Základní verze této aplikace jako open source na http://sp2010recruitment.codeplex.com/

Client Object Model + XSLT ViewPř ík lad: jednoduchý work f low ed i tor (2 /2 )

• Přesun položek nahoru a dolů• Rušení položek• Editace položek• Skrývání detailů• AJAX aktualizace seznamu

Základní verze této aplikace jako open source na http://sp2010recruitment.codeplex.com/

Best practices pro vývoj

Používejte funkce k tomu, k čemu jsou určeny Využívejte WSP i pro jednorázová řešení Už při vývoji myslete na deployment a upgrade Nemodifikujte systémové soubory Vhodně omezte kreativitu uživatelů Na hodně aplikací stačí Blank Template

Z reá lného svě ta

2. Sandboxed solutions

Použití

• Vlastní rozšíření Office365 webů• Bezpečnostně silně omezená řešení v on-

premise nasazeních• Delegace nasazení na správce site

kolekcí

• Sandboxed řešení mají řadu restrikcí

Architektura sandboxed řešení

Diagram převzat z http://blogs.msdn.com/b/sharepointpictures/

• Neovlivňuje ostatní procesy

• Řízení spotřeby systémových zdrojů

• Provádění pouze na vybraných serverech

• Nasazování správcem site collection

Co v sandboxu nemůžete

Limitovaná oprávnění kódu Vlastní typy sloupců Web party (kromě ASP.NET) Stránky + master page + site template Limitované používání API Workflow s kódem Volání externích web servisů Práce s file systémem Vytváření timer jobů

Jaké máte naopak možnosti

• Použití SharePoint Designeru ⇒ leccos dokážete vyřešit deklarativně bez

programování• Silverlight a využití Client Object Model

⇒ bohaté UI i přes jistá omezení sandboxu• Hybridní řešení Azure / Office365

⇒ SharePoint jako administrační back-end• Formulářové aplikace pomocí InfoPath

Zejména v kontextu Of f ice365

Jak vytvořit web part pro sandbox1 /3

Jak vytvořit web part pro sandbox2 /3

Vytváříte standardní ASCX kontrol pomocí ASP.NET značek…

Jak vytvořit web part pro sandbox3 /3

…Visual Studio generuje C# kód pro sandbox

Infrastruktura: cloud vs. on-premise

Tři modely infrastruktury pro SharePoint

On-Premise

Private Cloud

Office365

Cloud od Microsoftu: Office365

Výhody• Žádné starosti s

infrastrukturou• Jednoduchá administrace

a integrace s firemním AD• Spolehlivá infrastruktura

garantovaná Microsoftem• Pay-as-you-go

Včetně licencí MS Office• Přirozený mobilní přístup

Nevýhody• Omezené možnosti

customizace a vývoje• Žádné možnosti zásahů

do infrastruktury• Omezení vyplývající z

rychlosti připojení• Omezené integrace

Private Cloud řešení

Výhody• Smluvní SLA• Smluvní garance správy• Řešení na míru• Pay-as-you-go

SPLA licencování• Přirozený mobilní přístup• Vývoj na míru

Nevýhody• Infrastruktura není pod

přímou kontrolou• Omezení vyplývající z

rychlosti připojení• Složitější integrace• Pronájem HW a licencí je

dlouhodobě dražší

On-premise infrastruktura

Výhody• Infrastruktura pod přímou

kontrolou• Software pod přímou

kontrolou• Bezproblémové integrace• Využití všech možností a

variant nasazení• Vývoj na míru

Nevýhody• Zodpovědnost za správu• Počáteční investice

Nákup hardware Nákup licencí Může být zásadní položka

• Složitější mobilní přístup

Kdy se hodí který model?

Office365 Private Cloud On-PremiseSpráva Nechcete se starat o IT

Nepotřebujete sofistikované centrální řízení

Nechcete se starat o IT Nechcete se starat o

SharePoint

Máte vlastní správu IT Potřebujete centrální

správu

Náklady Minimalizujete náklady na IT

Využijete licencování Office pay-as-you-go

Upřednostňujete rozložení nákladů v čase

Stačí vám Foundation Investujete do velkých

projektů

Funkce Potřebujete jednoduše řešit extranety

Stačí vám out-of-the-box funkce

Potřebujete jednoduchý mobilní přístup

Potřebujete jednoduchý mobilní přístup

Potřebujete konkrétní custom řešení

Potřebujete specifické integrované řešení

Potřebujete komplexní řešení pro mnoho různých využití

Máte hodně specifických požadavků

Na co si dát pozor u Private Cloud řešení

• Bezpečnost• Zálohování dat• Budoucí rozšiřitelnost• Propojení infrastruktur• SLA na řešení jako celek• Dopady změn na licencování• Self-service funkce pro uživatele• Multi-tenant vs. Single-tenant model

• Private Cloud ≠ hosting za 1000 Kč / měsíc

Nasazení do produkce

Podpora nasazování na úrovni infrastruktury

Jednoduchý model

Vývojové prostředí (DEV)

Testovací prostředí (TEST)

Produkční prostředí (PROD)

Složitější modelVývojové

prostředí (DEV)

Integrační prostředí (INT)

Akceptační prostředí (ACC)

Produkční prostředí (PROD)

all-in-one / standalone

zjednodušené

1:1 k produkčnímu

Úskalí deploymentu: opakovatelnost

• Jak zajistit přenos mezi prostředími? Instalační postup + konfigurační tabulka prostředí

• Jak zajistit aktualizace datového modelu? Mossquito nabízí režim vývoj → porovnání → nasazení změn

Vývoj

Test

Produkce

Úskalí deploymentu: bezpečnost

• Vývoj typicky probíhá s admin právy• Testování už ale musí používat produkční nastavení práv• SharePoint nabízí značně škálovatelný bezpečnostní model• Neprovozujte produkční farmu jen s jedním účtem

• Zvlášť: Účet pro přístup do SQL Hlavní účet farmy Účty aplikačních poolů jednotlivých web aplikací Účty systémových servisů Účty vlastních servisů

• Vaše aplikace běží v kontextu různých účtů

Best practices pro nasazení

• Dobrý deployment začíná u vývoje• Mějte připraven rollback plán• Dokumentujte si celý proces• Neinstalujte hotfixy a service packy naslepo• Jednorázový proces… s dlouhodobými

dopady• Archivujte zdrojové kódy nasazeného

řešení

Z reá lného svě ta

Děkuji za pozornost

Rád zodpovím Vaše další otázky

tucny@boldbrick.com