custom code-the missing piece of the sharepoint governance puzzle

28
Custom Code: The Missing Piece of the SharePoint Governance Puzzle MATTHIAS EINIG MVP, CEO OF RENCORE

Upload: spc-adriatics

Post on 12-Apr-2017

109 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Custom Code: The Missing Piece of the SharePoint Governance Puzzle

MATTHIAS EINIGMVP, CEO OF RENCORE

Page 2: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

SPONSORS

Page 3: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Matthias Einig

[email protected]@mattein

CEO, MVPMunich, Germany

Page 4: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

…is the set of policies, roles, responsibilities

and processes that control how an organization's

business divisions and IT teams

work together to achieve its goals.

Governance

Page 5: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

SharePoint GovernanceIT Governance- Services Offered- Control Services- SLA- Manage Growth

Information Management- Documents, Lists, Sites- Usability & Manageability- Access Control- Availability Options

Application Management- Allowed Customziations- Manageability of Customizations- Process to Customize- Application Lifecycle Management

CONTENT

&

INFORMATIO

N

SOFTWARE& SERVICES

CUSTOMIZATIONS

Page 6: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

SharePoint Governance Tools

CONTENT

& INFORMATION

CUSTOMIZATIONS

SOFTWARE& SERVICES

Page 7: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

What is a Customization?

1.Configuration

2.Branding

3.Custom Code

Page 8: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Types of Customizations

Farm SolutionsSandboxed SolutionsAdd-ins

SharePoint DesignerBranding

Site CustomizationsPage ModificationsList Modifications

Developer End-User

Template modifications

Page 9: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Impact of Customizations

Severity

Security

Stability

Availability

Standardization

Accessibility

Usability

Maintainability

Migrateability

Supportability Resources

Performance

Scalability

Page 10: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Memory LeaksPerformance, Availability

Page 11: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Impersonation,Privilege ElevationContext Hijacking

Page 12: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

3rd Party ComponentsLibraries, JavaScript Frameworks

Page 13: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Logging

Page 14: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Hybrid SolutionsSharePoint Versions, Integration, Interaction

Page 15: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

SharePoint DesignerGhosting, DVWP, Workflows

Page 16: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Page ModificationsCEWP / JSWP / Display

Templates

Page 17: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

BrandingCSS, Masterpages, JavaScript

Page 18: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Governance Plan for Customizations (1)

1.What types of customizations do you allow?

2.Who is allowed to customize?3.Which tools are of approved to create customizations?

4.How to implement and update customizations (SLDC)?

5.How do you package and deploy customizations?

Page 19: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Governance Plan for Customizations (2)

6.How are customizations piloted and tested?

7.How to run and maintain customizations (SLA)?

8.How to analyse customizations to know if they are working well?

9.Who is responsible for ongoing support?

Page 20: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Governance for Code1. Farms solutions vs. Add-ins vs. SPFx?2. Usage of artefacts 3. Naming Conventions4. Structure, Complexity and Dependencies5. Deployment methods, locations6. Patterns & Practices7. Usage of Frameworks and 3rd party components8. Documentation9. Code Quality

Page 21: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

When to govern Code?

Design

DevelopmentBuild

DeploymentOperation

TIME

EFFORT

Page 22: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

How to Govern Code?

Pair ProgrammingCode Reviews

Farm & Tenant AuditsPatterns & Practices

Restrictions & PermissionsContinuous IntegrationAutomatic Deployment

Code Analysis ToolsAudit Tools

Manually Automatic

Customization Policies & Standards

Page 23: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Who should govern Code?

Developer Administrator

Architect Quality Manager

• Corporate Policies• Standards• Tools

• Restrictions & Permissions

• Automatic Deployment• Farm & Tenant Audits• Tools

• Customization Policies

• Patterns & Practices• Tools

• Pair Programming• Code Reviews• Practices• Continuous Integration• Tools

Page 24: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Code Analysis ToolsFxCop/VSCAFxCop MetricsCAT.netStyleCopSPDisposeCheckMSOCAFResharper

Checks against general coding errors (not SharePoint-specific)Calculates code metrics (only .NET code, not SharePoint specific)

Checks coding style guidelines(only .NET code, not SharePoint specific)

Analyzes code security(not SharePoint-specific)

Checks memory leaks(SharePoint-specific)Combination of FxCop and SPDisposeCheck for SharePoint Online Developer productivity tool (not SharePoint-specific)

Page 25: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

www.spcaf.com

Page 26: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

SPCAF in the SDLC

Design

Architect

Develop

Developer

Build

Quality Manager

Deploy

Administrator

Operate

Administrator

Change/Migrate

Architect

Project Manager

Page 27: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

Summary1. SharePoint governance includes also

customizations

2.High impact of customizations on the platform3. Customization governance starts in the design

phase

4. The later you govern the more costly it is5.Tools can support and enforce the governance

plan

Page 28: Custom Code-The Missing Piece of the SharePoint Governance Puzzle

thank youquestions?

live ratingsBLOG.SPCAF.COM@MATTEIN

http://spca.biz/UGCP