Top Banner
Working process and Git branch strategy John Lu 2016/9/27
20

Working process and git branch strategy

Jan 22, 2018

Download

Engineering

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Working process and git branch strategy

Working process and Git branch strategy

John Lu 2016/9/27

Page 2: Working process and git branch strategy

Agenda

● Sharing of prior experience● Current developing flow● Which I think a better flow● Discussion of developing flow● Discussion of strategy of Git branch

Page 3: Working process and git branch strategy

Sharing of prior experience

● Just share a common way of developing workflow in this industry.● The scale of a product includes hardware/mechanical/UX/software/QA● The issues could be count in number of hundreds.● Hope we can have a smooth workflow

Page 4: Working process and git branch strategy

Sharing of prior experience::Role

Leader

Leader

Engineer/Design

Product Manager

Tester (QA)

Customer

Manager

Page 5: Working process and git branch strategy

Sharing of prior experience::Before Starting a Project

● Engineer (Project) Leader will give a guideline for this project○ How workflow (schedule/testing/git/….)○ Naming of git branch (there is a case the branch is created by leader)○ Issue Template on BTS (Bug Tracking System)○ Commit Template (one of reason is that BTS is able to hook commits)○ How many reviewer

Page 6: Working process and git branch strategy

Sharing of prior experience::Workflow

Discussion Designing

Prototyping/ Implementing Testing

Investigating (H/S)

Release

Page 7: Working process and git branch strategy

Sharing of prior experience::Workflow

1. Discussion: Schedule!Schedule!Schedule!

Leader

PM

Leader

Customer

Page 8: Working process and git branch strategy

Sharing of prior experience::Workflow

2. Investigating: Cost evaluation,Purchase,Software Tech Survey

Leader

PM

Page 9: Working process and git branch strategy

Sharing of prior experience::Workflow

3. Designing: UX survey/experiment/Case study,Flow design (including gesture and transition),Graphic design,Release SPEC (including revised history)

Leader

PM

Leader

Page 10: Working process and git branch strategy

Sharing of prior experience::Workflow

4. Prototyping/Implementing:Distribute task (consider code review the task should not be very big),Needed time negotiation,Register Issues,Create branch,Unit test,Automated testing after push to remote,Daily build

Leader

Page 11: Working process and git branch strategy

Sharing of prior experience::Workflow

4. Prototyping/Implementing:Code review (Gerrit):

● Whatever I’ve done on local env on Git. Just merge commits into one and push on remote branch for easy reviewing and pretty history.

● Set needed reviewers.● It’s not like Merge/Pull request.● Some cases that doesn’t need to create a

branch. Just need to review.● Branch is merged by leader

Ref: http://docs.openstack.org/infra/manual/developers.html

Page 12: Working process and git branch strategy

Sharing of prior experience::Workflow

5. Testing:The testing application is built by server. QA tester should not test it from Engineer.Pre-alpha testing (allow minor issues/limited major issues),Alpha testing (allow minor issues),Pre-beta testing (limited minor issues),Beta testing,Bugs report,

● QA tester should test base on SPEC.● QA tester should judge UN-SPEC.● QA tester should be like a judge

determines what level of bugs/issues.

Leader

Leader

PM

Page 13: Working process and git branch strategy

Sharing of prior experience::Workflow

6. Release:Consider schedule,What solved issues/bugs should be released,Depending what issue will be includedthen determine which version should be plus one.

Product rolling out party!

We use this, major.minor[.maintenance[.build]]

Ref: https://en.wikipedia.org/wiki/Software_versioning

Leader

PMLeader

Page 14: Working process and git branch strategy

Current developing flow

Page 15: Working process and git branch strategy

Which I think is a better flow

● According we don’t have a role of PM. But we can make a project leader.

● Confused with versions…. We should focus on finishing issues. Let’s version off.

● I still think we need a Spec that we are able to follow. Otherwise, we don’t know what we should focus.

Page 16: Working process and git branch strategy

Which I think is a better flow

Use Voltron as an example.

Takashi

Alan

Jonathon YukaTakashi Alan

Jonathon

Alan

Alan

DiscussionDesign/

Investigation Implement Testing Release

Project Spec

Tasks

Build Report

Spec

Fix

Clear and clean dashboard

Page 17: Working process and git branch strategy

Discussion of developing flow

Shall we have a person to note the discussion?

Page 18: Working process and git branch strategy

Discussion of developing flow

Page 19: Working process and git branch strategy

Discussion of strategy of Git branch

Page 20: Working process and git branch strategy

Discussion of strategy of Git branch