[SAP] Perforce Administrative Self Services at SAP

  • 113 views
Uploaded on

At SAP, a self service is offered to all development teams and automatically creates new development projects in Perforce without the need for approval by a central team. In this talk, learn how SAP …

At SAP, a self service is offered to all development teams and automatically creates new development projects in Perforce without the need for approval by a central team. In this talk, learn how SAP uses Perforce to capitalize on the trend away from centrally-ruled processes toward more self service at the team level.

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
113
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 1  Perforce Administrative SelfServices at SAPWolfram KramerDevelopment ArchitectSAP AGTIP Core ECF & Production
  • 2. 2  SAP today•  232,000Customers in more than•  180countries•  €16.22bnRevenue•  64,422SAP employees worldwide•  SAP offices in more than130 countries
  • 3. 3  Perforce @SAP•  1998Introduction of Perforce at SAP•  10,000licensed users•  ~ 100Perforce server instances•  2Perforce server locations•  ~ 2 TBPerforce db.* files altogether•  ~ 10 TBversioned data•  ~ 4·108files (including branches)@  
  • 4. 4  The iOS development processdeploy  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 aredeveloperteams enabledto work withPerforce?
  • 5. 5  Provide Perforce access to developer teamsget  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?CentralPerforceAdministratorEmail  Phone  call  Workflow  Ticket  system  Scalable?  Agile?  
  • 6. 6  Perforce depot structure3 levels://depot/project/codelineThedevelopmentarea, productComponent,subsystemBranchEnablement  of  standardized  build  and  producGon  infrastructure.  Empowered  by  usage  of  change-­‐submit  trigger.  
  • 7. 7  Permissions and groupsAccess group types•  dev group (Developers)•  patcher group (Quality Managers, BuildOperators)Possible group access ranges•  depot level (shown here), even multipledepots•  project levelbuildenv-devbuildenv-patcherwritereadwritewritewrite 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 SAPMany servers at SAP since 2000(Reasons: Performance)User and Group store per serverinstancegroups  users  groups  users  groups  users  groups  users  
  • 9. 9  Multiple user and group maintenanceProblem:Per-server user and groupadministration not possible anymoreBoundary condition:No single-point-of-failure, i.e.authorization Perforce server isnot an optiongroups  users  groups  users  groups  users  groups  users  Central Perforce Administrator
  • 10. 10  Central user and group storageUser and Group data aremaintained in a central applicationwith an SQL database underneath(Perforce Management System,P4MS)User and group data areautomatically written by P4MS todedicated Perforce serversPerforce  Management  System  (P4MS)  Central PerforceAdministrator
  • 11. 11  Perforce Management System (P4MS)
  • 12. 12  Centralized user and group managementProblem:Centralized user and groupmanagement does not scaleObservation:Decision on granting accessrights of new users is takenlocallygroups  users  CentralPerforceAdministratorDevelopment team members,project leadsAccess requests
  • 13. 13  Admin groupsNew group type•  admin group (Project Managers)Admin groups exist only in P4MS, not onPerforce servers.Members of an admin group are allowedto modify group members.buildenv-devbuildenv-patcherwritereadwritewritebuildenv-adminmodifymodify
  • 14. 14  Decentralized user and group maintenanceDevelopment Team membersPerforce  Management  System  (P4MS)  Access requestsProject leadNotificationApprovalCentralPerforceAdministrator
  • 15. 15  Perforce Access RequestDevelopmentTeam memberTypes in Path andServerRequests access
  • 16. 16  Perforce Access Request ApprovalProject leadNotificationEmailAdd user to group
  • 17. 17  Centralized project managementProblem:Centralized project managementdoes not scaleObservation:Development teams know bythemselves which projects andcodelines they needCentralPerforceAdministratorProjectleadsProject creationrequestCodelinecreationrequestP4MS  CreateprojectGeneratepath inPerforce
  • 18. 18  P4MS administrator frontend for project creationProject creation frontend in P4MS (Administrators only)Created project in Perforce
  • 19. 19  Self-service for creating a new project in theMobile areaSelf-service for projectmanagers (and other people) tocreate a new project in themobile areaCurrent restriction:Only one Perforce server, onedepot enabledProjectleadP4MS  Generatepath inPerforceProjectcreationrequestProject  creaGon  self-­‐service  
  • 20. 20  Frontend for project creation self-servicePerforce 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 allservers and depotsPerforceserverselectionPerforce depotselectionAlternative:“I want the newproject to be createdat the same locationwhere I already haveanother project”Create also thegiven codelines
  • 22. 22  The sophisticated future: free project andcodeline permission definitionSelect the projectGrant accesses togroups for codelinesof the project
  • 23. 23  The sophisticated future: use-cases for self-servicesProjectmanagersP4MS  Generatepath inPerforceProjectcreationAdministraGve  Self-­‐services  CodelinecreationPermission maintenancefor projectGenerateprotectionsin PerforceCentral PerforceAdministrator
  • 24. 24  Major take-aways•  Establish standards and enforce them•  Enable the teams•  Don‘t be a central bottleneck
  • 25. 25  Thank you!wolfram.kramer@sap.com