moss development prozess auf basis der spalm vorgehensweise

45
© Steria Mummert Consulting AG SPALM - SharePoint Application Lifecycle Management Praxisbeispiele für durchgängige SharePoint Entwicklungsprozesse © Steria Mummert Consulting AG

Upload: sharepoint-partner-portal

Post on 29-Nov-2014

1.371 views

Category:

Technology


1 download

DESCRIPTION

SPALM - SharePoint Applikation Lifecycle Management - ist ein bei Steria Mummert Consulting entwickeltes Prozessmodell zur effizienten SharePoint Entwicklung. SPALM wird unterstützt durch verschiedene von Steria Mummert Consulting erstellte Tools wie SharePoint Software Factory (SPSF) und SharePoint Cop (SPCop). Der Vortrag vermittelt praktische Erfahrungen bei der Entwicklung mit Microsoft Team Foundation Server, Visual Studio und SharePoint und zeigt auf, wie SPALM zur Standardisierung von Methoden und Tools beitragen kann. Autor: Torsten Mandelkow, Steria Mummert

TRANSCRIPT

  • 1. www.steria-mummert.de SPALM - SharePoint Application Lifecycle Management Praxisbeispiele fr durchgngige SharePoint Entwicklungsprozesse Steria Mummert Consulting AG
  • 2. Vorstellung Vorstellung Torsten Mandelkow Diplom-Informatiker(FH) Seit 2007 bei Steria Mummert Mehrjhrige SharePoint-Erfahrung als Berater, Architekt, Entwickler Kernkompetenzen Architekturen von groen, globalen SharePoint-Farmen Einfhrung von SharePoint-Entwicklungsprozessen in Unternehmen Kontakt: [email protected] www.steria-mummert.de 21.01.2010 3 Steria Mummert Consulting AG
  • 3. Das Unternehmen Steria: Beratung, IT- und Outsourcing Services Belgien Dnemark Prsenz in Deutschland 16 Lndern ... Frankreich Hongkong Prsenz in Europa Indien Luxemburg Marokko Norwegen sterreich Vor Ort in Polen Off-/Nearshore in Asien Singapur Indien, Osteuropa Spanien und Schweden Marokko Schweiz UK www.steria-mummert.de 21.01.2010 4 Steria Mummert Consulting AG
  • 4. Das Unternehmen Ein Top 10 Player in Europa 1,8 Mrd. Umsatz (Top 10 in Europa) 19.000 Mitarbeiter in Europa Prsenz 25% Mitarbeiter in Indien (grter Anteil fr ein europisches Unternehmen) Vor Ort in Off-/Nearshore in Asien Indien, Osteuropa und Marokko www.steria-mummert.de 21.01.2010 5 Steria Mummert Consulting AG
  • 5. Das Unternehmen Leistungsstarke, kundennahe Organisation Prsenz in Deutschland und sterreich Prsenz in Europa Berlin Dsseldorf Frankfurt Hamburg Kln Vor Ort in Leipzig Off-/Nearshore in Asien Mnchen Indien, Osteuropa Mnster und Wien Marokko www.steria-mummert.de 21.01.2010 6 Steria Mummert Consulting AG
  • 6. Das Unternehmen Marktposition Ranking 2008 TOP 15 der Managementberatungs-Unternehmen in Deutschland 2008 Unternehmen Umsatz in Mio. Euro 2008 im Inland 1 McKinsey & Company Inc. Deutschland, Dsseldorf *) 645,0 2 Roland Berger Strategy Consultants GmbH, Mnchen *) 398,0 3 The Boston Consulting Group GmbH, Dsseldorf/Mnchen *) 369,0 4 Deloitte Consulting GmbH, Hannover 286,0 5 Booz & Company GmbH, Dsseldorf *) 1) 262,0 6 BearingPoint GmbH, Frankfurt am Main *) 246,0 7 Steria Mummert Consulting AG, Hamburg 239,0 8 Capgemini Consulting, Berlin 2) 231,0 9 Oliver Wyman Group, Mnchen *) 228,0 10 A.T. Kearney GmbH, Dsseldorf 209,0 11 Bain & Company Germany Inc., Mnchen 193,0 12 Droege International Group AG, Dsseldorf *) 3) 122,0 13 Horvth AG (Horvth & Partners-Gruppe), Stuttgart 83,1 14 Simon, Kucher & Partners GmbH, Bonn *) 80,7 15 Mercer Deutschland GmbH, Frankfurt am Main *) 79,5 Quelle: Lnendonk, 2009 *) Daten teilweise geschtzt 1) Bis 05/2008 Booz Allen Hamilton GmbH, Vernderung SMC_Unternehmen_20091202.ppt www.steria-mummert.de 21.01.2010 7 durch Split des Unternehmens beeinflusstt 2) OhneSteria Mummert Consulting AG IT-Beratung und Systemintegration 3) Umsatz inkl. Erfolgshonorare
  • 7. Das Unternehmen Kompetenz in Microsoft Technologien Steria Mummert Consulting AG Enge Microsoft Partnership Information Worker Custom Development TFS Inner Circle Partner Team System Quality Board member www.steria-mummert.de
  • 8. SPALM SPALM = SharePoint ALM Durchgngiger SharePoint Entwicklungsprozess Designer Developer Automatisierung wiederkehrender Architect Tester Prozesse Nachvollziehbarkeit aller nderungen Business Project Analyst Manager www.steria-mummert.de 21.01.2010 9 Steria Mummert Consulting AG
  • 9. SPALM SPALM = SharePoint ALM Durchgngiger SharePoint Entwicklungsprozess Designer Developer Automatisierung wiederkehrender Architect Tester Prozesse Nachvollziehbarkeit aller nderungen Business Project Analyst Manager www.steria-mummert.de 21.01.2010 10 Steria Mummert Consulting AG
  • 10. Agenda Ausgangspunkte ALM Anforderungen Besonderheiten im SharePoint Umfeld Wie weit hilft eine Deployment Architektur Untersttzung durch VS 2010 Was muss man noch manuell oder automatisiert Quality machen Development Assurance Test www.steria-mummert.de 21.01.2010 11 Steria Mummert Consulting AG
  • 11. Agenda Anforderungen Anforderungen Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 12 Steria Mummert Consulting AG
  • 12. Anforderungserhebung Anforderungserhebung Ziele: Detailierte Analyse der Anforderungen Stakeholderanalyse Grtmgliche Abdeckung des strukturierten Systems, Unterschiedliche Systemrollen, Unterschiedliche organisatorische Position, Rechtliche Relevanz (Betriebsrat, Datenschutz etc.). Anforderungsanalyse Anforderungen erfassen (Workshop, Interview, Umfrage) Anforderungen verfeinern (Ist-Analyse, Gap-Analyse, angrenzende Systeme) Anforderungen konsolidieren / reviewen / abstimmen Anforderungen priorisieren (fachlich, technisch, strategisch) Spezifizieren www.steria-mummert.de 21.01.2010 13 Steria Mummert Consulting AG
  • 13. Anforderungserhebung Anforderungserhebung Besonderheiten Technisches Wissen bei Anwendern vorhanden -> Anwender formulieren hufig sehr technisch Homogenitt der Plattform: Anforderungen wiederholen oder hneln sich Generelle Anforderung: Nah am Standard Vermeidung von Zusatzentwicklung, wenn hnliche Funktion bereits vorhanden Erleichterung einer spteren Migrierbarkeit www.steria-mummert.de 21.01.2010 14 Steria Mummert Consulting AG
  • 14. Anforderungserhebung SMC Best Practices Erhebungsmethoden Einsatz eines abstrakten Abfragerasters (z.B. Informationraster) Formulierung mit Hilfe einer Anforderungsschablone ( Das System muss dem User die Mglichkeit bieten Metadaten einzugeben.) Funktionales Clustering der Anforderungen (z.B. Dokumenten Management, Personalisierung, Suche, Navigation etc.) www.steria-mummert.de 21.01.2010 15 Steria Mummert Consulting AG
  • 15. Anforderungserhebung RE-Erfahrungen in MOSS Projekten Klaren RE Prozess vereinbaren Frhe Beteiligung der Fachabwendern Demonstration von MOSS Standard vor Fachanwendern vereinfacht RE Prototyping schafft Transparenz der Anforderungen Design und Layout ist die halbe Miete www.steria-mummert.de 21.01.2010 16 Steria Mummert Consulting AG
  • 16. Anforderungserhebung Best Practice: Abfrageraster Abstrakte Einordung der Anforderungen mit Hilfe des SMC Informationrasters Abfragebereich Beschreibung Information aufbereiten Information fr die Zielgruppen bearbeiten, berarbeiten und mit einem geeigneten Layout versehen. Anwendersicht Information verwalten Information strukturieren und organisieren. (Hierarchie, Metadaten,..) Information verteilen Aufbereitete Information den Zielgruppen zur Nutzung bereitstellen. Information suchen/finden Gewnschte Information finden und nutzen. (Suche, Navigation usw.) Information austauschen Interaktiver Informationsaustausch zwischen Anwendern. Information integrieren Information mit anderen Systemen ber eine technische Systemsicht Schnittstelle austauschen. Information schtzen Unberechtigten Zugriff auf Information verhindern. Information sammeln Zugriff auf Informationen protokollieren und aufbereiten. www.steria-mummert.de 21.01.2010 17 Steria Mummert Consulting AG
  • 17. Anforderungserhebung Best Practise: Anforderungsschablone Abstrakte Einordung der Anforderungen mit Hilfe des SMC Informationrasters - muss System Objekts> sollte die Mglichkeit bieten Beispiele Das System muss dem Redakteur die Mglichkeit bieten Metadaten einzugeben. Das System sollte eingegebene Metadaten abhngig vom Dokumenttyp prfen. Das System muss fhig sein Organisationsdaten aus SAP zu importieren. www.steria-mummert.de 21.01.2010 18 Steria Mummert Consulting AG
  • 18. Agenda Architektur Anforderungen Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 19 Steria Mummert Consulting AG
  • 19. Architektur Ziele und Besonderheiten Hufige Ziele Architektur von Lsungen, die nah am Standard sind (Vermeidung von Zusatzentwicklungen) keine Verschlechterung der Performance und Stabilitt Abgrenzung zu anderen Lsungen und Reduzierung von Abhngigkeiten Besonderheiten Wiederkehrende Anforderungen mssen umgesetzt werden Viel SharePoint-Fachwissen notwendig Erfahrung wichtig: vieles, was gehen soll, geht doch nicht wie beschrieben ASP.NET Kenntnisse sehr hilfreich www.steria-mummert.de 21.01.2010 20 Steria Mummert Consulting AG
  • 20. Architektur SMC Best Practices Wiederverwendbarkeit von Lsungen ermglichen Entwicklung im Rahmen von SharePoints Featuremodell (nicht alles in ASP.NET neu machen) Verwendung von Pattern fr die Entwicklung (ServiceLocator, RepositoryPattern), analog zu Empfehlung von Microsoft Klassifizierung von Anwendungsfllen (z.B. Contentorientiert, Applikationsorientiert, Listenorientiert usw.) Testbarkeit von Lsungen ermglichen (z.B. MVP- Pattern fr Webparts) www.steria-mummert.de 21.01.2010 21 Steria Mummert Consulting AG
  • 21. Agenda Development Anforderungen Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 22 Steria Mummert Consulting AG
  • 22. Development Ziele Untersttzung des Entwicklers (Developer Productivity) wichtig Konformitt des erstellten Codes zur Microsoft Vorgaben sicherstellen Konformitt zu Unternehmensvorgaben (Aufbau der Projekte, Namenskonventionen) sicherstellen Hohe Codequalitt (Performance, Stabilitt) erreichen Managebarkeit der Lsung sicherstellen (zentrale Komponenten z.B. fr Logging, Konfiguration usw. bereitstellen) www.steria-mummert.de 21.01.2010 23 Steria Mummert Consulting AG
  • 23. Development Besonderheiten SharePoint Code besteht aus vielen einzelnen Dateien, die untereinander referenziert sind Code besteht viel aus .xml, der hufig manuell erstellt werden muss Referenzen zwischen Artefakten luft hufig ber Guids, die vom Entwickler (mhsam) ausgelesen werden mssen Stark eingeschrnkte Freiheitsgrade innerhalb SharePoint Viel Spezialwissen notwendig www.steria-mummert.de 21.01.2010 24 Steria Mummert Consulting AG
  • 24. Development Demo Vorstellung SPSF SharePoint Software Factory (Eigenentwicklung, basierend auf Microsoft Guidance Automation Extension (GAX)) www.steria-mummert.de 21.01.2010 25 Steria Mummert Consulting AG
  • 25. Agenda Build Anforderungen Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 26 Steria Mummert Consulting AG
  • 26. Build Ziele Zentraler Build einer Lsung Erzeugung eines installierbaren Packages Ablage und Versionierung des Buildergebnisse, um es jederzeit verwenden zu knnen Build gegen eine Konfiguration analog zur produktiven Farm (keine zustzlichen DLLs) Build eines Releases (keine Debug-Lsung geht produktiv) Build von den Artefakten zum installierbarem Package www.steria-mummert.de 21.01.2010 27 Steria Mummert Consulting AG
  • 27. Build Besonderheiten Erstellung eines installierbaren Packages hufig sehr aufwndig Hufige Lsung: Erstellung von Batch- Dateien, Konfigurationsdateien fr Parameter und URLs u.. Erstellung eines MSIs meist nicht zielfhrend www.steria-mummert.de 21.01.2010 28 Steria Mummert Consulting AG
  • 28. Build Demo Vorstellung SPSF SharePoint Software Factory Erstellung eines Setuppackages www.steria-mummert.de 21.01.2010 29 Steria Mummert Consulting AG
  • 29. Agenda Testing Anforderungen Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 30 Steria Mummert Consulting AG
  • 30. Testing Ziele Hauptziel: Automatisierung von Tests Regressionstests: Funktionieren noch alle bestehenden Applikationen, wenn neue Applikationen oder ein Patch installiert werden Funktionale Tests: sind die Anforderungen des Business erfllt Smoke Tests: Minimaler Test, um die Grundfunktionen zu testen, z.B. nach einem Deployment Performance Tests: Wie verndert sich die Performance durch Installation einer Applikation oder Vernderung der Konfiguration www.steria-mummert.de 21.01.2010 31 Steria Mummert Consulting AG
  • 31. Testing Besonderheiten Starke Homogenitt von Lsungen Standardtests sind mglich, z.B. Standard TeamSite-Test: Create Subsite, Upload Document, Create List usw Wiederverwendbarkeit von Tests ist mglich SharePoint ist webbasiert Testtool muss entsprechende Funktionen von SharePoint untersttzen (z.B. AJAX, verschiedene UIs, WebDav usw.) Groes Problem: Unittests Unittests sind sehr schwierig bis unmglich: Mocking von SharePoint-Objekten nur ber Drittanbieter, z.B. TypeMock www.steria-mummert.de 21.01.2010 32 Steria Mummert Consulting AG
  • 32. Testing Demo Vorstellung: Durchfhrung von parametrisierbaren Webtests (basierend auf VS.NET Webtests und MSBuild/MSTest.exe) www.steria-mummert.de 21.01.2010 33 Steria Mummert Consulting AG
  • 33. Agenda Quality Assurance und Anforderungen Code Analyse Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 34 Steria Mummert Consulting AG
  • 34. Code Analyse Ziele einer Code Analyse Analyse des Codes, z.B. Sicherheitsverste (CAS- Policies, RunWith- ElevatedPrivileges) Supportability der SharePoint Farm nicht gefhrden Verste gegen Best practices (MS-Vorgaben, Erfahrungswerte) Verste gegen allgemeine Vorgaben (Untersttzung von Multilanguage, Namenskonventionen) www.steria-mummert.de 21.01.2010 35 Steria Mummert Consulting AG
  • 35. Code Analyse Besonderheiten fr SharePoint Entwicklungsergebnis besteht nur zu einem Teil aus C#-Code Groer Teil besteht aus XML (feature.xml, manifest.xml, usw.) Entwicklung ist verteilt auf viele einzelne Artefakten (XML, Bilder, CSS, DLL usw.) Hohe Abhngigkeit zwischen Artefakten, verteilt auf einzelne Dateien (z.B. Feature referenziert einen ContentType) www.steria-mummert.de 21.01.2010 36 Steria Mummert Consulting AG
  • 36. Code Analyse Anwendungsflle Code Analyse untersttzt z.B. Quality Assurance (Zertifizierung einer WSP- Lsung) Prfung auf Verwendbarkeit als Sandboxed Solutions, Prfung auf Supportlevel (Silver, Gold, Platinum) Prfung auf WSS oder MOSS- Abhngigkeiten Prfung von Drittanbieterlsungen oder externen WSP www.steria-mummert.de 21.01.2010 37 Steria Mummert Consulting AG
  • 37. Code Analyse Demo Toolbasierte Code Analyse auf Basis einer Eigenentwicklung ShareCop www.steria-mummert.de 21.01.2010 38 Steria Mummert Consulting AG
  • 38. Code Analyse Code Metriken Messbarkeit von SharePoint Applikationen mit Zahlen, z.B. Anzahl von Features, Worflows, ContentTypes etc. Anzahl von externe Abhngigkeiten Anzahl von Dateien in einem WSP- Package Ziele Supportability Erkennen, ab wann wird eine Lsung nicht mehr verwaltbar www.steria-mummert.de 21.01.2010 39 Steria Mummert Consulting AG
  • 39. Code Analyse Dependency Management Verwaltung bzw. Analyse der Abhngigkeiten zwischen Applikationen und Artefakten Notwendig fr Aktualisierung von Komponenten oder Deinstallation Beispiel: Feature X aus Applikation Intranet 2.0 referenziert Feature Y aus Applikation Compontents 1.0 Problem: Abhngigkeiten stehen im Code, in XML-Dateien oder sind gar nicht erkennbar (z.b. durch late binding) www.steria-mummert.de 21.01.2010 40 Steria Mummert Consulting AG
  • 40. Code Analyse Demo Toolbasierte berprfung von Entwicklungscode auf Basis einer Eigenentwicklung ShareLog www.steria-mummert.de 21.01.2010 41 Steria Mummert Consulting AG
  • 41. Agenda Deployment Anforderungen Deployment Architektur Quality Development Assurance Test www.steria-mummert.de 21.01.2010 42 Steria Mummert Consulting AG
  • 42. Deployment Ziele Automatisierte Verteilung einer Applikation in einer SharePoint Farm Verteilung eines Installationspakets durch mehrere Server (DEV, Staging, Produktion) Deinstallation einer Applikation soll mglich sein (mglichst spurlos) Hufig auch Deployment von Konfigurationsnderungen notwendig Test Integration Produktion www.steria-mummert.de 21.01.2010 43 Steria Mummert Consulting AG
  • 43. Deployment Besonderheiten Applikation besteht hufig aus mehreren WSPs, die deployed werden mssen Installationspaket bentigt hufig Parameter (z.B URLs fr das Deployment), deshalb muss das Installationspaket parametrisierbar sein Nachtrgliche Konfigurationsschritte sind notwendig, z.B. ActivateFeature, Anpassungen der Suchkonfigurationen o.. Bei Aktualisierung eines Applikation (z.B. Version 2.0) sind hufig sehr lang laufende Aktualisierungen notwendig (z.B. zur Aktivierung eines neues Features in allen bestehenden Webs) www.steria-mummert.de 21.01.2010 44 Steria Mummert Consulting AG
  • 44. Deployment Demo Vorstellung MSBuild Deployment Designer (Eigenentwicklung) www.steria-mummert.de 21.01.2010 45 Steria Mummert Consulting AG
  • 45. Zusammenfassung ALM ist wichtig fr professionelle Anforderungen Entwicklung im Unternehmen VS 2010 ist Deployment Architektur unabdingbar fr Entwicklung im Team und fr groe Projekte Besonderheiten von SharePoint machen durchgngiges ALM Quality Development Assurance schwierig VS.NET 2010 bringt gute Untersttzung in Test einigen Bereichen www.steria-mummert.de 21.01.2010 46 Steria Mummert Consulting AG