+ All Categories
Home > Technology > Git architects

Git architects

Date post: 12-Jul-2015
Category:
Upload: glitchdata
View: 179 times
Download: 0 times
Share this document with a friend
Popular Tags:
24
Git Architects Git Architects © Terence Chia 1 September 2010 Presentation: 1hr Workshop: 1hr Revision: 1.2
Transcript
Page 1: Git architects

Git ArchitectsGit Architects

© Terence Chia1 September 2010

Presentation: 1hrWorkshop: 1hrRevision: 1.2

Page 2: Git architects

Git Architects● System Design ● Team Design● Software Design● Code Organisation● Environment● Infrastructure● Development

Process

● Production Release● Testing● Issue Management● Continuous Integration● Configuration● Backups● Security● Performance

Page 3: Git architects

System Design

● Legacy Systems● Modularity / n-tier● New Systems● Integration● Support

Page 4: Git architects

Team Design

● Existing Team● Skill Sets● Development Capability● Team Evolution – Hiring / Training● Support

Page 5: Git architects

Software Design

● Legacy code● Define Universe● Define Interfaces● Modularity● New Development● Integration● Support

Page 6: Git architects

Code Organisation

● Modularity● Maintenance● Define Interfaces● New Development● Integration● Support

Page 7: Git architects

Environment

● Development Environment● Resource Schedules● Local / Remote / Team size● Tools● Licenses

Page 8: Git architects

Infrastructure

● Servers● Databases● Message Buses● Network Connectivity● Load● Storage● Security / Repository Security● Licenses

Page 9: Git architects

Development Processes

● Agile / Waterfall● Code Access Protocols● Testing● Terminology – Beta / Alpha / RC● Issue Tracking / Notifications● Continuous Integration● Release

Page 10: Git architects

Git Workflow: Centralised

● Centralised● Simple● Possible Conflict● Doesn't Scale● Overall: Below

Average

A

CentralRepo

BC

D E

Page 11: Git architects

Git Workflow: Peer 2 Peer

● N to N Mesh● Self-organising

Teams● Flexible● Possible Conflict● Good for RAD● No Point of Truth● Doesn't Scale● Overall: Bad

A

BC

D E

F

Page 12: Git architects

Git Workflow: Hybrid

● Semi-Centralised● Higher

Complexity● Reduced Conflicts● Point of Truth● Scales● Lacks Process● Overall: Average

A

B

D

E F

CentralRepo

SatelliteRepo

SatelliteRepo

C

G

Page 13: Git architects

Git Workflow: Integration Mgr● Mid-sized Teams● Self-organising

Teams● Integration

Manager● Point of Truth● Not Scalable● Defined Processes● IM Bottleneck● Overall: Better

APrivate

BlessedRepo

GIntegrationManager

APublic

BPrivate

BPublic

CPrivate

CPublic

Page 14: Git architects

Git Workflow: Dictator

● Large Teams● Lieutenant/s (IM)● Large Teams● Overheads● Point of Truth● Scalable● Defined Processes● Overall: Good

APrivate

BlessedRepo

APublic

BPrivate

BPublic

CPrivate

CPublic

FLieutenant

GDictator

ELieutenant

Page 15: Git architects

And so on ...

Page 16: Git architects

Production Release

● Schedule● Dependencies● Git for Configuration● Passwords● Push / Pull / Manual● Code Integrity

Page 17: Git architects

Testing

● Servers● Databases● Message Buses● Network Connectivity● Load● Storage● Security● Licenses

Page 18: Git architects

Issue Management

● Jira / Trac / Redmine / more...● Git for Versioning – Branches & Tags● Issue Aging● Burndown / Burnup● Gantt● Resourcing

Page 19: Git architects

Continuous Integration

● Realtime / Daily Integration● Git Hooks● Jenkins

Page 20: Git architects

Git for Configuration

● Dev / Test / Production Environments● Minor configuration changes● Logging changes● Configuration Security

Page 21: Git architects

Git for Backups

● Code Backups● Data Backups● Redundancy / Replication● Automated● Rsync?

Page 22: Git architects

Security

● Repository Security ● Codebase Signing● Infrastructure Security

Page 23: Git architects

Git Performance

● When is code checked in? ● Code? Data? Media? Configuration?● Binary Files? Or Text?● Repository Size● History● Improving Performance

– git fsck– git gc (packing)

● Case Studies

Page 24: Git architects

Thank You

© Terence Chia1 September 2010

● Questions?● Design Exercises.


Recommended