SlideShare a Scribd company logo
1 of 25
Download to read offline
1	
  
Perforce Administrative Self
Services at SAP
Wolfram Kramer
Development Architect
SAP AG
TIP Core ECF & Production
2	
  
SAP today
•  232,000
Customers in more than
•  180
countries
•  €16.22bn
Revenue
•  64,422
SAP employees worldwide
•  SAP offices in more than
130 countries
3	
  
Perforce @SAP
•  1998
Introduction of Perforce at SAP
•  10,000
licensed users
•  ~ 100
Perforce server instances
•  2
Perforce server locations
•  ~ 2 TB
Perforce db.* files altogether
•  ~ 10 TB
versioned data
•  ~ 4·108
files (including branches)
@	
  
4	
  
The iOS development process
deploy	
  
and	
  test	
  
idea	
   get	
  SCM	
  	
  
Project	
  
Prepare	
  	
  
development	
  
environment	
  
release	
  and	
  
delivery	
  
exchange	
  
Integrate	
  and	
  release	
  
+	
  
SAP	
  Mobile	
  	
  
Development	
  
Lifecycle	
  
develop	
  
get	
  Libraries	
  
e.g.	
  SUP	
  
inhouse	
  delivery	
  
How are
developer
teams enabled
to work with
Perforce?
5	
  
Provide Perforce access to developer teams
get	
  SCM	
  	
  
Project	
  
•  Get	
  a	
  locaGon	
  in	
  
Perforce	
  where	
  to	
  
put	
  the	
  sources	
  
•  Define	
  access	
  
groups	
  and	
  
protecGons	
  
•  Fill	
  the	
  access	
  
groups	
  with	
  
development	
  team	
  
members	
  
means	
  
How?
Central
Perforce
Administrator
Email	
  
Phone	
  
call	
  
Workflow	
  
Ticket	
  
system	
  
Scalable?	
  
Agile?	
  
6	
  
Perforce depot structure
3 levels:
//depot/project/codeline
The
development
area, product
Component,
subsystem
Branch
Enablement	
  of	
  standardized	
  build	
  and	
  
producGon	
  infrastructure.	
  
Empowered	
  by	
  usage	
  of	
  change-­‐submit	
  
trigger.	
  
7	
  
Permissions and groups
Access group types
•  dev group (Developers)
•  patcher group (Quality Managers, Build
Operators)
Possible group access ranges
•  depot level (shown here), even multiple
depots
•  project level
buildenv-
dev
buildenv-
patcher
write
read
write
write
write group buildenv-dev * //buildenv/*/ct01_stream/...
read group buildenv-dev * //buildenv/*/ct01_publish/...
write group buildenv-patcher * //buildenv/*/ct01_stream/...
write group buildenv-patcher * //buildenv/*/ct01_publish/...
8	
  
Multi-server landscape at SAP
Many servers at SAP since 2000
(Reasons: Performance)
User and Group store per server
instance
groups	
  
users	
  
groups	
  
users	
  
groups	
  
users	
  
groups	
  
users	
  
9	
  
Multiple user and group maintenance
Problem:
Per-server user and group
administration not possible any
more
Boundary condition:
No single-point-of-failure, i.e.
authorization Perforce server is
not an option
groups	
  
users	
  
groups	
  
users	
  
groups	
  
users	
  
groups	
  
users	
  
Central Perforce Administrator
10	
  
Central user and group storage
User and Group data are
maintained in a central application
with an SQL database underneath
(Perforce Management System,
P4MS)
User and group data are
automatically written by P4MS to
dedicated Perforce servers
Perforce	
  Management	
  
System	
  (P4MS)	
  
Central Perforce
Administrator
11	
  
Perforce Management System (P4MS)
12	
  
Centralized user and group management
Problem:
Centralized user and group
management does not scale
Observation:
Decision on granting access
rights of new users is taken
locally
groups	
  
users	
  
Central
Perforce
Administrator
Development team members,
project leads
Access requests
13	
  
Admin groups
New group type
•  admin group (Project Managers)
Admin groups exist only in P4MS, not on
Perforce servers.
Members of an admin group are allowed
to modify group members.
buildenv-
dev
buildenv-
patcher
write
read
write
write
buildenv-
admin
modify
modify
14	
  
Decentralized user and group maintenance
Development Team members
Perforce	
  Management	
  
System	
  (P4MS)	
  
Access requests
Project lead
Notification
Approval
Central
Perforce
Administrator
15	
  
Perforce Access Request
Development
Team member
Types in Path and
Server
Requests access
16	
  
Perforce Access Request Approval
Project lead
Notification
Email
Add user to group
17	
  
Centralized project management
Problem:
Centralized project management
does not scale
Observation:
Development teams know by
themselves which projects and
codelines they need
Central
Perforce
Administrator
Project
leads
Project creation
request
Codeline
creation
request
P4MS	
  Create
project
Generate
path in
Perforce
18	
  
P4MS administrator frontend for project creation
Project creation frontend in P4MS (Administrators only)
Created project in Perforce
19	
  
Self-service for creating a new project in the
Mobile area
Self-service for project
managers (and other people) to
create a new project in the
mobile area
Current restriction:
Only one Perforce server, one
depot enabled
Project
lead
P4MS	
  
Generate
path in
Perforce
Project
creation
request
Project	
  
creaGon	
  
self-­‐service	
  
20	
  
Frontend for project creation self-service
Perforce server selection
(currently only one possible)
Perforce depot selection
(currently only one possible)
Enter team members
21	
  
The future: project creation self-service for all
servers and depots
Perforce
server
selection
Perforce depot
selection
Alternative:
“I want the new
project to be created
at the same location
where I already have
another project”
Create also the
given codelines
22	
  
The sophisticated future: free project and
codeline permission definition
Select the project
Grant accesses to
groups for codelines
of the project
23	
  
The sophisticated future: use-cases for self-
services
Project
managers
P4MS	
  
Generate
path in
Perforce
Project
creation
AdministraGve	
  
Self-­‐services	
  
Codeline
creation
Permission maintenance
for project
Generate
protections
in Perforce
Central Perforce
Administrator
24	
  
Major take-aways
•  Establish standards and enforce them
•  Enable the teams
•  Don‘t be a central bottleneck
25	
  
Thank you!
wolfram.kramer@sap.com

More Related Content

Similar to [SAP] Perforce Administrative Self Services at SAP

Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)Michael Dobe, Ph.D.
 
WinOps meetup April 2016 DevOps lessons from Microsoft \\Build\
WinOps meetup April 2016   DevOps lessons from Microsoft \\Build\WinOps meetup April 2016   DevOps lessons from Microsoft \\Build\
WinOps meetup April 2016 DevOps lessons from Microsoft \\Build\DevOpsGroup
 
Cloud Foundry Roadmap Update - OSCON - May 2017
Cloud Foundry Roadmap Update - OSCON - May 2017Cloud Foundry Roadmap Update - OSCON - May 2017
Cloud Foundry Roadmap Update - OSCON - May 2017Chip Childers
 
How to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCFHow to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCFVMware Tanzu
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern DesktopOren Novotny
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
victoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentvictoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentDariia Seimova
 
DevSecOps - Security in DevOps
DevSecOps - Security in DevOpsDevSecOps - Security in DevOps
DevSecOps - Security in DevOpsAarno Aukia
 
CNCF_ A step to step guide to platforming your delivery setup.pdf
CNCF_ A step to step guide to platforming your delivery setup.pdfCNCF_ A step to step guide to platforming your delivery setup.pdf
CNCF_ A step to step guide to platforming your delivery setup.pdfLibbySchulze
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsCollabNet
 
Building Linux IPv6 DNS Server (Complete Soft Copy)
Building Linux IPv6 DNS Server (Complete Soft Copy)Building Linux IPv6 DNS Server (Complete Soft Copy)
Building Linux IPv6 DNS Server (Complete Soft Copy)Hari
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015WaveMaker, Inc.
 
In Act Developers Platform
In Act Developers PlatformIn Act Developers Platform
In Act Developers PlatformEris Ristemena
 
Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011
Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011
Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011Nuxeo
 
Ria Applications And PHP
Ria Applications And PHPRia Applications And PHP
Ria Applications And PHPJohn Coggeshall
 
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...OpenShift Origin
 

Similar to [SAP] Perforce Administrative Self Services at SAP (20)

Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)
 
WinOps meetup April 2016 DevOps lessons from Microsoft \\Build\
WinOps meetup April 2016   DevOps lessons from Microsoft \\Build\WinOps meetup April 2016   DevOps lessons from Microsoft \\Build\
WinOps meetup April 2016 DevOps lessons from Microsoft \\Build\
 
Cloud Foundry Roadmap Update - OSCON - May 2017
Cloud Foundry Roadmap Update - OSCON - May 2017Cloud Foundry Roadmap Update - OSCON - May 2017
Cloud Foundry Roadmap Update - OSCON - May 2017
 
How to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCFHow to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCF
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Introduction to Code Composer Studio 4
Introduction to Code Composer Studio 4Introduction to Code Composer Studio 4
Introduction to Code Composer Studio 4
 
victoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentvictoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform development
 
DevSecOps - Security in DevOps
DevSecOps - Security in DevOpsDevSecOps - Security in DevOps
DevSecOps - Security in DevOps
 
CNCF_ A step to step guide to platforming your delivery setup.pdf
CNCF_ A step to step guide to platforming your delivery setup.pdfCNCF_ A step to step guide to platforming your delivery setup.pdf
CNCF_ A step to step guide to platforming your delivery setup.pdf
 
Enterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using JenkinsEnterprise CI as-a-Service using Jenkins
Enterprise CI as-a-Service using Jenkins
 
Building Linux IPv6 DNS Server (Complete Soft Copy)
Building Linux IPv6 DNS Server (Complete Soft Copy)Building Linux IPv6 DNS Server (Complete Soft Copy)
Building Linux IPv6 DNS Server (Complete Soft Copy)
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 
In Act Developers Platform
In Act Developers PlatformIn Act Developers Platform
In Act Developers Platform
 
Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011
Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011
Nuxeo World Keynote: Roadmap - What to Expect from Nuxeo in 2011
 
Ria Applications And PHP
Ria Applications And PHPRia Applications And PHP
Ria Applications And PHP
 
FICO Open Shift presentation
FICO Open Shift presentationFICO Open Shift presentation
FICO Open Shift presentation
 
Resume raushan
Resume raushanResume raushan
Resume raushan
 
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
 

More from Perforce

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsPerforce
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...Perforce
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Perforce
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsPerforce
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessPerforce
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsPerforce
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog Perforce
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Perforce
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowPerforce
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldPerforce
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterprisePerforce
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMPerforce
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog Perforce
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Perforce
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure Perforce
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Perforce
 
Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Perforce
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Perforce
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4Perforce
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Perforce
 

More from Perforce (20)

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning Needs
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPs
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development Process
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOps
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New Workflow
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated World
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALM
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2
 
Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison
 

Recently uploaded

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 

Recently uploaded (20)

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 

[SAP] Perforce Administrative Self Services at SAP

  • 1. 1   Perforce Administrative Self Services at SAP Wolfram Kramer Development Architect SAP AG TIP Core ECF & Production
  • 2. 2   SAP today •  232,000 Customers in more than •  180 countries •  €16.22bn Revenue •  64,422 SAP employees worldwide •  SAP offices in more than 130 countries
  • 3. 3   Perforce @SAP •  1998 Introduction of Perforce at SAP •  10,000 licensed users •  ~ 100 Perforce server instances •  2 Perforce server locations •  ~ 2 TB Perforce db.* files altogether •  ~ 10 TB versioned data •  ~ 4·108 files (including branches) @  
  • 4. 4   The iOS development process deploy   and  test   idea   get  SCM     Project   Prepare     development   environment   release  and   delivery   exchange   Integrate  and  release   +   SAP  Mobile     Development   Lifecycle   develop   get  Libraries   e.g.  SUP   inhouse  delivery   How are developer teams enabled to work with Perforce?
  • 5. 5   Provide Perforce access to developer teams get  SCM     Project   •  Get  a  locaGon  in   Perforce  where  to   put  the  sources   •  Define  access   groups  and   protecGons   •  Fill  the  access   groups  with   development  team   members   means   How? Central Perforce Administrator Email   Phone   call   Workflow   Ticket   system   Scalable?   Agile?  
  • 6. 6   Perforce depot structure 3 levels: //depot/project/codeline The development area, product Component, subsystem Branch Enablement  of  standardized  build  and   producGon  infrastructure.   Empowered  by  usage  of  change-­‐submit   trigger.  
  • 7. 7   Permissions and groups Access group types •  dev group (Developers) •  patcher group (Quality Managers, Build Operators) Possible group access ranges •  depot level (shown here), even multiple depots •  project level buildenv- dev buildenv- patcher write read write write write group buildenv-dev * //buildenv/*/ct01_stream/... read group buildenv-dev * //buildenv/*/ct01_publish/... write group buildenv-patcher * //buildenv/*/ct01_stream/... write group buildenv-patcher * //buildenv/*/ct01_publish/...
  • 8. 8   Multi-server landscape at SAP Many servers at SAP since 2000 (Reasons: Performance) User and Group store per server instance groups   users   groups   users   groups   users   groups   users  
  • 9. 9   Multiple user and group maintenance Problem: Per-server user and group administration not possible any more Boundary condition: No single-point-of-failure, i.e. authorization Perforce server is not an option groups   users   groups   users   groups   users   groups   users   Central Perforce Administrator
  • 10. 10   Central user and group storage User and Group data are maintained in a central application with an SQL database underneath (Perforce Management System, P4MS) User and group data are automatically written by P4MS to dedicated Perforce servers Perforce  Management   System  (P4MS)   Central Perforce Administrator
  • 11. 11   Perforce Management System (P4MS)
  • 12. 12   Centralized user and group management Problem: Centralized user and group management does not scale Observation: Decision on granting access rights of new users is taken locally groups   users   Central Perforce Administrator Development team members, project leads Access requests
  • 13. 13   Admin groups New group type •  admin group (Project Managers) Admin groups exist only in P4MS, not on Perforce servers. Members of an admin group are allowed to modify group members. buildenv- dev buildenv- patcher write read write write buildenv- admin modify modify
  • 14. 14   Decentralized user and group maintenance Development Team members Perforce  Management   System  (P4MS)   Access requests Project lead Notification Approval Central Perforce Administrator
  • 15. 15   Perforce Access Request Development Team member Types in Path and Server Requests access
  • 16. 16   Perforce Access Request Approval Project lead Notification Email Add user to group
  • 17. 17   Centralized project management Problem: Centralized project management does not scale Observation: Development teams know by themselves which projects and codelines they need Central Perforce Administrator Project leads Project creation request Codeline creation request P4MS  Create project Generate path in Perforce
  • 18. 18   P4MS administrator frontend for project creation Project creation frontend in P4MS (Administrators only) Created project in Perforce
  • 19. 19   Self-service for creating a new project in the Mobile area Self-service for project managers (and other people) to create a new project in the mobile area Current restriction: Only one Perforce server, one depot enabled Project lead P4MS   Generate path in Perforce Project creation request Project   creaGon   self-­‐service  
  • 20. 20   Frontend for project creation self-service Perforce server selection (currently only one possible) Perforce depot selection (currently only one possible) Enter team members
  • 21. 21   The future: project creation self-service for all servers and depots Perforce server selection Perforce depot selection Alternative: “I want the new project to be created at the same location where I already have another project” Create also the given codelines
  • 22. 22   The sophisticated future: free project and codeline permission definition Select the project Grant accesses to groups for codelines of the project
  • 23. 23   The sophisticated future: use-cases for self- services Project managers P4MS   Generate path in Perforce Project creation AdministraGve   Self-­‐services   Codeline creation Permission maintenance for project Generate protections in Perforce Central Perforce Administrator
  • 24. 24   Major take-aways •  Establish standards and enforce them •  Enable the teams •  Don‘t be a central bottleneck