SlideShare uma empresa Scribd logo
1 de 92
Baixar para ler offline
CUHK CSCI 4140 2016 Spring
Guest Lecture
Life of an Agile Team
PantaRei Design Limited
Wong Hoi Sing, Edison
2016 March 14th
Wong Hoi Sing, Edison
●
CEO, Founder, PantaRei Design
– 2009, PantaRei Design founded
– 2010, HKFYG YBHK applicant
– 2011, ITF SERAP applicant
– 2011, HKSTP Incu-Tech applicant
●
FOSS and Drupal Developer, Contributor and HKDUG Co-founder
– 2000, Debian GNU/Linux 2.2 ('potato')
– 2005, Drupal Developer
– 2008, BarCamp HK Speaker
– 2008, HKDUG Co-founder
– 2011, Drupal 7.x Core Contributor
●
http://hswong3i.net
●
hswong3i@pantarei-design.com
PantaRei Design
●
Everything Changes and Nothing Remains Still
●
Reinvent Enterprise with Open Source Software and Cloud Computing
●
Hong Kong based FOSS Service Provider
– Content Management System (CMS) with Drupal
– Cloud Hosting Solution with Amazon Web Services (AWS)
– Team Collaborate Solution with Atlassian
●
Business Partner with industry leaders
– 2012, AWS Consulting Partner
– 2013, Acquia Partner
– 2013, Atlassian Experts
– 2014, Rackspace Hosting Partner
●
http://pantarei-design.com
Outline
●
What is Agile Development?
●
Why Agile Development?
●
How Agile Team Works Daily?
●
Advanced Topic(s)
What is Agile Development?
●
Agile
●
Scrum
●
Kanban
●
Scrum vs Kanban
Agile
●
A group of software development methods
●
Requirements and solutions evolve through
collaboration between self-organizing, cross-
functional teams
●
Promotes adaptive planning, evolutionary
development, early delivery, continuous
improvement, and encourages rapid and flexible
response to change
Scrum
●
Iterative and incremental
●
Fixed-length iterations (e.g. 2~4 weeks)
●
4 Ceremonies
– Sprint planning
– Daily stand-up
– Sprint demo
– Sprint retrospective
Scrum (cont.)
●
Roles
– Product Owner
– Development Team
– Scrum Master
Scrum (cont.)
●
User stories
– Express customer need as a story
– Set user role
– Small amount of work
– Should include notes for needed
Scrum (cont.)
●
Task
– For developer
– Get engineer talking with product owner
– Get mutual understanding of the story
– Satift customer needs
Scrum (cont.)
●
Burndown chart
– Public displayed chart showing remaing work in
the sprint backlog
– Simple view of the sprint progress
– Quick visualization for reference
Kanban
●
Just-in-time delivery
●
Only focused on work that's actively in
progress
●
Keep pluck the next work item off the top of
the backlog
●
Keep the most important work items on the
top of the backlog
Scrum vs Kanban
Scrum Kanban
Cadence Regular fixed length sprints
(ie, 2 weeks)
Continuous flow
Release methodology At the end of each sprint if
approved by the product
owner
Continuous delivery or at the
team's discretion
Roles Product owner, scrum
master, development team
No existing roles. Some
teams enlist the help of an
agile coach.
Key metrics Velocity Cycle time
Change philosophy Teams should strive to not
make changes to the sprint
forecast during the sprint.
Doing so compromises
learnings around estimation.
Change can happen at any
time
Why Agile Development?
●
Waterfall
●
Agile vs Waterfall
Waterfall
●
Usually sucks
●
Planning far in advance
●
Lack of visibility into rate of progress
●
Project fall behind schedule (easily)
Agile vs Waterfall
Agile Waterfall
Planning scale Short Long
Distance with customer Short Very long
Time to discover problem Short Very long
Ability to respond quickly
to change request
Short N/A
How Agile Team Works Daily?
●
Documentation Management
●
Agile Project Management
●
Code Repository Management
●
Continuos Integration
Documentation Management
●
Product Owner provide the story and requirement
specification, in simple English
●
Project Manager need to covert such simple English
into manageable documentation for Developers
●
Tips: Manage your client! Don’t let them manage you!
●
REMEMBER: YOUR CLIENT IS COMING FROM THE
HELL! THEY DON’T UNDERSTAND HOW
DEVELOPMENT WORKS!
Documentation Management
(cont.)
●
Split the requirement specification into “point form”
●
Each point should be simple English that client can
understand, and able to describe the “Deliverable”, e.g.
– Front Page Layout Design in HTML for Mobile Device
– Contact Form with Exportable Result in CSV/XLS
– Support Multilingual Content in ZH/GB/EN
●
DON’T MANAGE REQUIREMENT SPECIFICATION IN
TASK TICKETS! YOU WILL LOSS IT!
Documentation Management
(cont.)
●
Atlassian Confluence
– Create a page with “Product Requirements”
template
– Manage “Requirement Specification” in point form,
with some detail information
– Link the point to JIRA, so create it as “Story” ticket
for Scrum
●
https://www.atlassian.com/software/confluence
Agile Project Management
●
Project Manager should create Epic / Story / Task ticket for
Developers, and manage it with Scrum / Kanban
●
Developers being assigned for different duty
– When requirement specification is needed, go back to Document
Management for details
– When need to write code, go to Code Repository Management, create a
branch for this duty, get the job done, create a pull request to Project
Manager
●
Once pull request comes, Project Manager check the quality of
deliverable, accept it, merge to master branch, then set ticket as
done
Agile Project Management (cont.)
●
Atlassian JIRA
– Ticket created by Confluence as “Story”
– Story goes to Backlog
– Project Manager groups different Story from
Backlog to on going working Sprint
– Sprint start and Developer get the job done
●
https://www.atlassian.com/software/jira/
Code Repository Management
●
GIT! GIT! GIT!
●
Write test case for all new code!
– PM should NEVER accept new code without test case
●
Ticket > Branch > Commit > Push
– Push will trigger CI to run your test case
– PM should NEVER accept new code if test case failed
●
Pull Request > Peer Review > Merge
●
Once code merged, duty get done, back to Project
Management and set ticket as done, too
Code Repository Management
(cont.)
●
Atlassian BitBucket
– Create branch for ticket
– Clone source code, checkout your branch
– Write new code + test case
– Commit and push
– Create “Pull Request”
– PM merge code once peer review committed
●
https://www.atlassian.com/software/bitbucket
Continuos Integration
●
Developer write code with test case
●
Once code commit and push to Code
Repository, CI server will be triggered
●
CI clone the code, run the test, and report
test case run successful / fail
●
REMEMBER: IF YOUR TEST CASE LOGIC FAIL,
YOU WILL RESULT AS FALSE POSITIVE!
Continuos Integration (cont.)
●
Atlassian Bamboo
– Code commit to BitBucket, so Bamboo being
triggered
– Bamboo clone the code from BitBucket
– Run the defined test procedures
– Return the test result to JIRA/BitBucket
●
https://www.atlassian.com/software/bamboo
/
Advanced Topic(s)
●
Branching Strategies
●
Code Reviews
●
Continuous Integration (CI)
Branching Strategies
●
Centralized Workflow
– Like CVS/SVN, uses a central repository to serve as
the single point-of-entry for all changes to the
project
– Everyone commit all changes and push to “master”
branch
– Need to resolve all conflict before each commit/push
●
https://www.atlassian.com/git/tutorials/compar
ing-workflows/centralized-workflow
Branching Strategies (cont.)
●
Feature Branch Workflow
– All feature development should take place in a
dedicated branch instead of the “master” branch
– Feature branches should have descriptive names,
like animated-menu-items or issue-#1061
– Can do peer review with pull request before merge
into “master” branch
●
https://www.atlassian.com/git/tutorials/compar
ing-workflows/feature-branch-workflow
Branching Strategies (cont.)
●
Gitflow Workflow
– Gitflow Workflow defines a strict branching model designed
around the project release
●
“master” branch stores the official release history
●
“develop” branch serves as an integration branch for features
●
feature branches use “develop” as their parent branch
●
release branch off of “develop”, prepare for merge into “master” branch
●
“hotfix” branches are used to quickly patch production releases
●
http://danielkummer.github.io/git-flow-cheatsheet/
●
https://www.atlassian.com/git/tutorials/comparing-workflow
s/gitflow-workflow
Branching Strategies (cont.)
●
Forking Workflow
– Instead of using a single server-side repository to act as the “central”
codebase, it gives every developer a server-side repository
– Each contributor has a private local and a public server-side Git
repositories
– Developers push to their own server-side repositories
– Only the project maintainer can push to the official repository
– This allows the maintainer to accept commits from any developer
without giving them write access to the official codebase
●
https://www.atlassian.com/git/tutorials/comparing-workflows/
forking-workflow
Code Reviews
●
So, what exactly is a code review?
– When a developer is finished working on an issue, another
developer looks over the code and considers questions
●
Code reviews share knowledge
●
Code reviews make for better estimates
●
Code reviews enable time off
●
Code reviews mentor newer engineers
●
But code reviews take time!
Continuous Integration (CI)
●
Merging all develop working copies with a
share mainline several times a day
●
Protect quality in the code base
– Continuous builds
– Test automation (e.g. phpunit)
●
Branching and CI: a match made in Heaven!
Q&A
References
●
http://en.wikipedia.org/wiki/Agile_software
_development
●
http://en.wikipedia.org/wiki/Scrum_%28sof
tware_development%29
●
http://en.wikipedia.org/wiki/Kanban_%28d
evelopment%29
●
https://www.atlassian.com/agile
Thank You
●
Please feel free to contact us:
– PantaRei Design Limited
– Unit 326, 3/F, Building 16W
No.16 Science Park West Avenue
Hong Kong Science Park, Shatin, N.T.
– Phone: +852 2576 3812
– Fax: +852 3753 3663
– Email: sales@pantarei-design.com
– Web: http://pantarei-design.com

Mais conteĂșdo relacionado

Mais procurados

August OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub ExplainedAugust OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub ExplainedHoward Greenberg
 
OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020Howard Greenberg
 
Behavioral driven development with Behat
Behavioral driven development with BehatBehavioral driven development with Behat
Behavioral driven development with BehatPromet Source
 
Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...
Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...
Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...camunda services GmbH
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentationRohan Maleku
 
FUG Agile software engineering practices
FUG Agile software engineering practicesFUG Agile software engineering practices
FUG Agile software engineering practicesSerena Software
 
mulesoft meetup @ bangalore
mulesoft meetup @ bangaloremulesoft meetup @ bangalore
mulesoft meetup @ bangaloreD.Rajesh Kumar
 
MuleSoft meetup__houston #13
MuleSoft meetup__houston #13MuleSoft meetup__houston #13
MuleSoft meetup__houston #13Jim Andrews
 
Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft
Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft
Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft NaimishKakkad2
 
Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016Serena Software
 
Activiti v6 UI (Activiti Community Day Paris 2015)
 Activiti v6 UI (Activiti Community Day Paris 2015)  Activiti v6 UI (Activiti Community Day Paris 2015)
Activiti v6 UI (Activiti Community Day Paris 2015) Joram Barrez
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentationhda_jim
 
Best Practices For A Successful SOLIDWORKS 2016 Upgrade
Best Practices For A Successful SOLIDWORKS 2016 UpgradeBest Practices For A Successful SOLIDWORKS 2016 Upgrade
Best Practices For A Successful SOLIDWORKS 2016 UpgradeCAPINC
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!Howard Greenberg
 
Dimensions RM: Agile Requirements Management
Dimensions RM: Agile Requirements ManagementDimensions RM: Agile Requirements Management
Dimensions RM: Agile Requirements ManagementSerena Software
 
jBPM Overview & Alfresco Workflows
jBPM Overview &  Alfresco WorkflowsjBPM Overview &  Alfresco Workflows
jBPM Overview & Alfresco WorkflowsFrancesco Valente
 
Launching Activiti v6 (Activiti Community Day Paris 2015)
Launching Activiti v6 (Activiti Community Day Paris 2015) Launching Activiti v6 (Activiti Community Day Paris 2015)
Launching Activiti v6 (Activiti Community Day Paris 2015) Joram Barrez
 
Tips For A Successful SOLIDWORKS Upgrade - 2017
Tips For A Successful SOLIDWORKS Upgrade - 2017Tips For A Successful SOLIDWORKS Upgrade - 2017
Tips For A Successful SOLIDWORKS Upgrade - 2017CAPINC
 
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And DxlBp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxldominion
 

Mais procurados (20)

August OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub ExplainedAugust OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub Explained
 
OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020
 
Behavioral driven development with Behat
Behavioral driven development with BehatBehavioral driven development with Behat
Behavioral driven development with Behat
 
Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...
Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...
Camunda Day New York 2019: Case Study. Organizing a Camunda Hackathon: Lesson...
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentation
 
FUG Agile software engineering practices
FUG Agile software engineering practicesFUG Agile software engineering practices
FUG Agile software engineering practices
 
mulesoft meetup @ bangalore
mulesoft meetup @ bangaloremulesoft meetup @ bangalore
mulesoft meetup @ bangalore
 
MuleSoft meetup__houston #13
MuleSoft meetup__houston #13MuleSoft meetup__houston #13
MuleSoft meetup__houston #13
 
Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft
Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft
Nagpur MuleSoft Meetup Group - Working with API Groups in Mulesoft
 
Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016
 
Activiti v6 UI (Activiti Community Day Paris 2015)
 Activiti v6 UI (Activiti Community Day Paris 2015)  Activiti v6 UI (Activiti Community Day Paris 2015)
Activiti v6 UI (Activiti Community Day Paris 2015)
 
Bpm & activiti
Bpm & activitiBpm & activiti
Bpm & activiti
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentation
 
Best Practices For A Successful SOLIDWORKS 2016 Upgrade
Best Practices For A Successful SOLIDWORKS 2016 UpgradeBest Practices For A Successful SOLIDWORKS 2016 Upgrade
Best Practices For A Successful SOLIDWORKS 2016 Upgrade
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
 
Dimensions RM: Agile Requirements Management
Dimensions RM: Agile Requirements ManagementDimensions RM: Agile Requirements Management
Dimensions RM: Agile Requirements Management
 
jBPM Overview & Alfresco Workflows
jBPM Overview &  Alfresco WorkflowsjBPM Overview &  Alfresco Workflows
jBPM Overview & Alfresco Workflows
 
Launching Activiti v6 (Activiti Community Day Paris 2015)
Launching Activiti v6 (Activiti Community Day Paris 2015) Launching Activiti v6 (Activiti Community Day Paris 2015)
Launching Activiti v6 (Activiti Community Day Paris 2015)
 
Tips For A Successful SOLIDWORKS Upgrade - 2017
Tips For A Successful SOLIDWORKS Upgrade - 2017Tips For A Successful SOLIDWORKS Upgrade - 2017
Tips For A Successful SOLIDWORKS Upgrade - 2017
 
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And DxlBp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
Bp308 Ibm Lotus Domino Web Facelift Using Ajax And Dxl
 

Destaque

Hong Kong Drupal User Group - Nov 8th
Hong Kong Drupal User Group - Nov 8thHong Kong Drupal User Group - Nov 8th
Hong Kong Drupal User Group - Nov 8thWong Hoi Sing Edison
 
Drupal in 5mins + Previewing Drupal 8.x
Drupal in 5mins + Previewing Drupal 8.xDrupal in 5mins + Previewing Drupal 8.x
Drupal in 5mins + Previewing Drupal 8.xWong Hoi Sing Edison
 
The World We Live In
The World We Live InThe World We Live In
The World We Live InCaio Jobim
 
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8Wong Hoi Sing Edison
 
CUHK CSCI 4140 2015 Spring Guest Lecture - Agile Development
CUHK CSCI 4140 2015 Spring Guest Lecture - Agile DevelopmentCUHK CSCI 4140 2015 Spring Guest Lecture - Agile Development
CUHK CSCI 4140 2015 Spring Guest Lecture - Agile DevelopmentWong Hoi Sing Edison
 
BarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management System
BarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management SystemBarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management System
BarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management SystemWong Hoi Sing Edison
 

Destaque (6)

Hong Kong Drupal User Group - Nov 8th
Hong Kong Drupal User Group - Nov 8thHong Kong Drupal User Group - Nov 8th
Hong Kong Drupal User Group - Nov 8th
 
Drupal in 5mins + Previewing Drupal 8.x
Drupal in 5mins + Previewing Drupal 8.xDrupal in 5mins + Previewing Drupal 8.x
Drupal in 5mins + Previewing Drupal 8.x
 
The World We Live In
The World We Live InThe World We Live In
The World We Live In
 
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
[HKDUG] #20160626 - HKOSCon 2015 - Website DIY with Drupal 8
 
CUHK CSCI 4140 2015 Spring Guest Lecture - Agile Development
CUHK CSCI 4140 2015 Spring Guest Lecture - Agile DevelopmentCUHK CSCI 4140 2015 Spring Guest Lecture - Agile Development
CUHK CSCI 4140 2015 Spring Guest Lecture - Agile Development
 
BarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management System
BarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management SystemBarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management System
BarCamp Hong Kong 2015 - AuthBucket - Open Source Identity Management System
 

Semelhante a [20160314][CUHK][CSCI4140]Life of an Agile Team]

Common Sense Agile
Common Sense AgileCommon Sense Agile
Common Sense AgileAlex Apollonsky
 
PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...
PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...
PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...Francis Yan
 
Sakai Technical Future Musings
Sakai Technical Future MusingsSakai Technical Future Musings
Sakai Technical Future MusingsCharles Severance
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development PipelineGlobalLogic Ukraine
 
Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...
Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...
Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...camunda services GmbH
 
Akant SAP ABAP Technical Architect
Akant SAP  ABAP Technical ArchitectAkant SAP  ABAP Technical Architect
Akant SAP ABAP Technical ArchitectAkant Tewari
 
Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Alan Hood
 
Understanding Agile Development with Scrum
Understanding Agile Development with ScrumUnderstanding Agile Development with Scrum
Understanding Agile Development with ScrumiFour Technolab Pvt. Ltd.
 
Chris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris O'Brien
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraLINAGORA
 
Spsnyc transforming share point farm solutions to the add-in model and shar...
Spsnyc   transforming share point farm solutions to the add-in model and shar...Spsnyc   transforming share point farm solutions to the add-in model and shar...
Spsnyc transforming share point farm solutions to the add-in model and shar...spsnyc
 
Mulesoft KL Meetup 2
Mulesoft KL Meetup 2Mulesoft KL Meetup 2
Mulesoft KL Meetup 2NitushreeJena
 
Creating MuleSoft API Template Project Using Maven Archetype
Creating MuleSoft API Template Project Using Maven ArchetypeCreating MuleSoft API Template Project Using Maven Archetype
Creating MuleSoft API Template Project Using Maven ArchetypeManish Kumar Yadav
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile MethodologiesGurdeep Singh
 
Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...
Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...
Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...Asish Padhy
 
India Agile Week 2015
India Agile Week 2015India Agile Week 2015
India Agile Week 2015Sonata Software
 
Arijit_Resume
Arijit_ResumeArijit_Resume
Arijit_ResumeArijit Nath
 
Plone Intranet under the hood
Plone Intranet under the hoodPlone Intranet under the hood
Plone Intranet under the hoodGuido Stevens
 
Introduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKIntroduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKKriangkrai Chaonithi
 

Semelhante a [20160314][CUHK][CSCI4140]Life of an Agile Team] (20)

Common Sense Agile
Common Sense AgileCommon Sense Agile
Common Sense Agile
 
PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...
PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...
PantaRei Design Limited - JIRA Software Introduction - Project - Workflow - D...
 
Sakai Technical Future Musings
Sakai Technical Future MusingsSakai Technical Future Musings
Sakai Technical Future Musings
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Evolve 19 | Gina Petruccelli | Let’s Dig Into Requirements
Evolve 19 | Gina Petruccelli | Let’s Dig Into RequirementsEvolve 19 | Gina Petruccelli | Let’s Dig Into Requirements
Evolve 19 | Gina Petruccelli | Let’s Dig Into Requirements
 
Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...
Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...
Camunda Day Amsterdam 2019: Best Practices for successfully introducing Camun...
 
Akant SAP ABAP Technical Architect
Akant SAP  ABAP Technical ArchitectAkant SAP  ABAP Technical Architect
Akant SAP ABAP Technical Architect
 
Is Being Agile a Good Thing?
Is Being Agile a Good Thing?Is Being Agile a Good Thing?
Is Being Agile a Good Thing?
 
Understanding Agile Development with Scrum
Understanding Agile Development with ScrumUnderstanding Agile Development with Scrum
Understanding Agile Development with Scrum
 
Chris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing work
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
 
Spsnyc transforming share point farm solutions to the add-in model and shar...
Spsnyc   transforming share point farm solutions to the add-in model and shar...Spsnyc   transforming share point farm solutions to the add-in model and shar...
Spsnyc transforming share point farm solutions to the add-in model and shar...
 
Mulesoft KL Meetup 2
Mulesoft KL Meetup 2Mulesoft KL Meetup 2
Mulesoft KL Meetup 2
 
Creating MuleSoft API Template Project Using Maven Archetype
Creating MuleSoft API Template Project Using Maven ArchetypeCreating MuleSoft API Template Project Using Maven Archetype
Creating MuleSoft API Template Project Using Maven Archetype
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...
Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...
Building Responsive Intranet using Sharepoint Framework solutions - Asish Pad...
 
India Agile Week 2015
India Agile Week 2015India Agile Week 2015
India Agile Week 2015
 
Arijit_Resume
Arijit_ResumeArijit_Resume
Arijit_Resume
 
Plone Intranet under the hood
Plone Intranet under the hoodPlone Intranet under the hood
Plone Intranet under the hood
 
Introduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKIntroduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OK
 

Mais de Wong Hoi Sing Edison

[HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution]
[HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution][HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution]
[HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution]Wong Hoi Sing Edison
 
[HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes]
[HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes][HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes]
[HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes]Wong Hoi Sing Edison
 
[HKOSCON][20200613][ Ansible: From VM to Kubernetes]
[HKOSCON][20200613][ Ansible: From VM to Kubernetes][HKOSCON][20200613][ Ansible: From VM to Kubernetes]
[HKOSCON][20200613][ Ansible: From VM to Kubernetes]Wong Hoi Sing Edison
 
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes][HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]Wong Hoi Sing Edison
 
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes][BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]Wong Hoi Sing Edison
 
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...Wong Hoi Sing Edison
 
[HKDUG] #20180512 - Fix Hacked Drupal with GIT
[HKDUG] #20180512 - Fix Hacked Drupal with GIT[HKDUG] #20180512 - Fix Hacked Drupal with GIT
[HKDUG] #20180512 - Fix Hacked Drupal with GITWong Hoi Sing Edison
 
[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?
[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?
[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?Wong Hoi Sing Edison
 
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?Wong Hoi Sing Edison
 
DruStack- a mobile-friendly web content management system (cms
DruStack- a mobile-friendly web content management system (cmsDruStack- a mobile-friendly web content management system (cms
DruStack- a mobile-friendly web content management system (cmsWong Hoi Sing Edison
 
drustack a mobile-friendly web content management system (cms)
drustack   a mobile-friendly web content management system (cms)drustack   a mobile-friendly web content management system (cms)
drustack a mobile-friendly web content management system (cms)Wong Hoi Sing Edison
 
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro WorkshopOpen Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro WorkshopWong Hoi Sing Edison
 
IT Entrepreneurship Talk - City University of Hong Kong
IT Entrepreneurship Talk - City University of Hong KongIT Entrepreneurship Talk - City University of Hong Kong
IT Entrepreneurship Talk - City University of Hong KongWong Hoi Sing Edison
 
OSS Community Meeting - OSS Community Management for Dummy
OSS Community Meeting - OSS Community Management for DummyOSS Community Meeting - OSS Community Management for Dummy
OSS Community Meeting - OSS Community Management for DummyWong Hoi Sing Edison
 
Barcamp Hong Kong 2014 - Introduction to GIT
Barcamp Hong Kong 2014 - Introduction to GITBarcamp Hong Kong 2014 - Introduction to GIT
Barcamp Hong Kong 2014 - Introduction to GITWong Hoi Sing Edison
 
Barcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management System
Barcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management SystemBarcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management System
Barcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management SystemWong Hoi Sing Edison
 
Open Source.HK Workshop - 2014 Oct 11th
Open Source.HK Workshop - 2014 Oct 11thOpen Source.HK Workshop - 2014 Oct 11th
Open Source.HK Workshop - 2014 Oct 11thWong Hoi Sing Edison
 
Barcamp Macau 2014 - Introduction to GIT
Barcamp Macau 2014 - Introduction to GITBarcamp Macau 2014 - Introduction to GIT
Barcamp Macau 2014 - Introduction to GITWong Hoi Sing Edison
 
Barcamp Macau 2014 - Introduction to AWS
Barcamp Macau 2014 - Introduction to AWSBarcamp Macau 2014 - Introduction to AWS
Barcamp Macau 2014 - Introduction to AWSWong Hoi Sing Edison
 

Mais de Wong Hoi Sing Edison (20)

[HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution]
[HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution][HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution]
[HKOSCON][20220611][AlviStack: Hong Kong Based Kubernetes Distribution]
 
[HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes]
[HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes][HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes]
[HKOSCon x COSCUP 2020][20200801][Ansible: From VM to Kubernetes]
 
[HKOSCON][20200613][ Ansible: From VM to Kubernetes]
[HKOSCON][20200613][ Ansible: From VM to Kubernetes][HKOSCON][20200613][ Ansible: From VM to Kubernetes]
[HKOSCON][20200613][ Ansible: From VM to Kubernetes]
 
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes][HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
 
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes][BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
 
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
 
[HKDUG] #20180512 - Fix Hacked Drupal with GIT
[HKDUG] #20180512 - Fix Hacked Drupal with GIT[HKDUG] #20180512 - Fix Hacked Drupal with GIT
[HKDUG] #20180512 - Fix Hacked Drupal with GIT
 
[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?
[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?
[HKDUG] #20161210 - BarCamp Hong Kong 2016 - What's News in PHP?
 
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
 
DruStack- a mobile-friendly web content management system (cms
DruStack- a mobile-friendly web content management system (cmsDruStack- a mobile-friendly web content management system (cms
DruStack- a mobile-friendly web content management system (cms
 
drustack a mobile-friendly web content management system (cms)
drustack   a mobile-friendly web content management system (cms)drustack   a mobile-friendly web content management system (cms)
drustack a mobile-friendly web content management system (cms)
 
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro WorkshopOpen Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
 
IT Entrepreneurship Talk - City University of Hong Kong
IT Entrepreneurship Talk - City University of Hong KongIT Entrepreneurship Talk - City University of Hong Kong
IT Entrepreneurship Talk - City University of Hong Kong
 
OSS Community Meeting - OSS Community Management for Dummy
OSS Community Meeting - OSS Community Management for DummyOSS Community Meeting - OSS Community Management for Dummy
OSS Community Meeting - OSS Community Management for Dummy
 
Barcamp Hong Kong 2014 - Introduction to GIT
Barcamp Hong Kong 2014 - Introduction to GITBarcamp Hong Kong 2014 - Introduction to GIT
Barcamp Hong Kong 2014 - Introduction to GIT
 
Barcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management System
Barcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management SystemBarcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management System
Barcamp Hong Kong 2014 - Commercial Use of OSS Web Content Management System
 
Entrepreneurship Talk
Entrepreneurship TalkEntrepreneurship Talk
Entrepreneurship Talk
 
Open Source.HK Workshop - 2014 Oct 11th
Open Source.HK Workshop - 2014 Oct 11thOpen Source.HK Workshop - 2014 Oct 11th
Open Source.HK Workshop - 2014 Oct 11th
 
Barcamp Macau 2014 - Introduction to GIT
Barcamp Macau 2014 - Introduction to GITBarcamp Macau 2014 - Introduction to GIT
Barcamp Macau 2014 - Introduction to GIT
 
Barcamp Macau 2014 - Introduction to AWS
Barcamp Macau 2014 - Introduction to AWSBarcamp Macau 2014 - Introduction to AWS
Barcamp Macau 2014 - Introduction to AWS
 

Último

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...gurkirankumar98700
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Último (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

[20160314][CUHK][CSCI4140]Life of an Agile Team]

  • 1. CUHK CSCI 4140 2016 Spring Guest Lecture Life of an Agile Team PantaRei Design Limited Wong Hoi Sing, Edison 2016 March 14th
  • 2. Wong Hoi Sing, Edison ● CEO, Founder, PantaRei Design – 2009, PantaRei Design founded – 2010, HKFYG YBHK applicant – 2011, ITF SERAP applicant – 2011, HKSTP Incu-Tech applicant ● FOSS and Drupal Developer, Contributor and HKDUG Co-founder – 2000, Debian GNU/Linux 2.2 ('potato') – 2005, Drupal Developer – 2008, BarCamp HK Speaker – 2008, HKDUG Co-founder – 2011, Drupal 7.x Core Contributor ● http://hswong3i.net ● hswong3i@pantarei-design.com
  • 3.
  • 4.
  • 5.
  • 6.
  • 7. PantaRei Design ● Everything Changes and Nothing Remains Still ● Reinvent Enterprise with Open Source Software and Cloud Computing ● Hong Kong based FOSS Service Provider – Content Management System (CMS) with Drupal – Cloud Hosting Solution with Amazon Web Services (AWS) – Team Collaborate Solution with Atlassian ● Business Partner with industry leaders – 2012, AWS Consulting Partner – 2013, Acquia Partner – 2013, Atlassian Experts – 2014, Rackspace Hosting Partner ● http://pantarei-design.com
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. Outline ● What is Agile Development? ● Why Agile Development? ● How Agile Team Works Daily? ● Advanced Topic(s)
  • 14. What is Agile Development? ● Agile ● Scrum ● Kanban ● Scrum vs Kanban
  • 15. Agile ● A group of software development methods ● Requirements and solutions evolve through collaboration between self-organizing, cross- functional teams ● Promotes adaptive planning, evolutionary development, early delivery, continuous improvement, and encourages rapid and flexible response to change
  • 16.
  • 17. Scrum ● Iterative and incremental ● Fixed-length iterations (e.g. 2~4 weeks) ● 4 Ceremonies – Sprint planning – Daily stand-up – Sprint demo – Sprint retrospective
  • 18.
  • 19.
  • 20. Scrum (cont.) ● Roles – Product Owner – Development Team – Scrum Master
  • 21. Scrum (cont.) ● User stories – Express customer need as a story – Set user role – Small amount of work – Should include notes for needed
  • 22.
  • 23.
  • 24. Scrum (cont.) ● Task – For developer – Get engineer talking with product owner – Get mutual understanding of the story – Satift customer needs
  • 25.
  • 26. Scrum (cont.) ● Burndown chart – Public displayed chart showing remaing work in the sprint backlog – Simple view of the sprint progress – Quick visualization for reference
  • 27.
  • 28.
  • 29. Kanban ● Just-in-time delivery ● Only focused on work that's actively in progress ● Keep pluck the next work item off the top of the backlog ● Keep the most important work items on the top of the backlog
  • 30.
  • 31.
  • 32.
  • 33.
  • 34. Scrum vs Kanban Scrum Kanban Cadence Regular fixed length sprints (ie, 2 weeks) Continuous flow Release methodology At the end of each sprint if approved by the product owner Continuous delivery or at the team's discretion Roles Product owner, scrum master, development team No existing roles. Some teams enlist the help of an agile coach. Key metrics Velocity Cycle time Change philosophy Teams should strive to not make changes to the sprint forecast during the sprint. Doing so compromises learnings around estimation. Change can happen at any time
  • 36. Waterfall ● Usually sucks ● Planning far in advance ● Lack of visibility into rate of progress ● Project fall behind schedule (easily)
  • 37.
  • 38. Agile vs Waterfall Agile Waterfall Planning scale Short Long Distance with customer Short Very long Time to discover problem Short Very long Ability to respond quickly to change request Short N/A
  • 39. How Agile Team Works Daily? ● Documentation Management ● Agile Project Management ● Code Repository Management ● Continuos Integration
  • 40. Documentation Management ● Product Owner provide the story and requirement specification, in simple English ● Project Manager need to covert such simple English into manageable documentation for Developers ● Tips: Manage your client! Don’t let them manage you! ● REMEMBER: YOUR CLIENT IS COMING FROM THE HELL! THEY DON’T UNDERSTAND HOW DEVELOPMENT WORKS!
  • 41. Documentation Management (cont.) ● Split the requirement specification into “point form” ● Each point should be simple English that client can understand, and able to describe the “Deliverable”, e.g. – Front Page Layout Design in HTML for Mobile Device – Contact Form with Exportable Result in CSV/XLS – Support Multilingual Content in ZH/GB/EN ● DON’T MANAGE REQUIREMENT SPECIFICATION IN TASK TICKETS! YOU WILL LOSS IT!
  • 42. Documentation Management (cont.) ● Atlassian Confluence – Create a page with “Product Requirements” template – Manage “Requirement Specification” in point form, with some detail information – Link the point to JIRA, so create it as “Story” ticket for Scrum ● https://www.atlassian.com/software/confluence
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48. Agile Project Management ● Project Manager should create Epic / Story / Task ticket for Developers, and manage it with Scrum / Kanban ● Developers being assigned for different duty – When requirement specification is needed, go back to Document Management for details – When need to write code, go to Code Repository Management, create a branch for this duty, get the job done, create a pull request to Project Manager ● Once pull request comes, Project Manager check the quality of deliverable, accept it, merge to master branch, then set ticket as done
  • 49. Agile Project Management (cont.) ● Atlassian JIRA – Ticket created by Confluence as “Story” – Story goes to Backlog – Project Manager groups different Story from Backlog to on going working Sprint – Sprint start and Developer get the job done ● https://www.atlassian.com/software/jira/
  • 50.
  • 51.
  • 52.
  • 53.
  • 54. Code Repository Management ● GIT! GIT! GIT! ● Write test case for all new code! – PM should NEVER accept new code without test case ● Ticket > Branch > Commit > Push – Push will trigger CI to run your test case – PM should NEVER accept new code if test case failed ● Pull Request > Peer Review > Merge ● Once code merged, duty get done, back to Project Management and set ticket as done, too
  • 55. Code Repository Management (cont.) ● Atlassian BitBucket – Create branch for ticket – Clone source code, checkout your branch – Write new code + test case – Commit and push – Create “Pull Request” – PM merge code once peer review committed ● https://www.atlassian.com/software/bitbucket
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69. Continuos Integration ● Developer write code with test case ● Once code commit and push to Code Repository, CI server will be triggered ● CI clone the code, run the test, and report test case run successful / fail ● REMEMBER: IF YOUR TEST CASE LOGIC FAIL, YOU WILL RESULT AS FALSE POSITIVE!
  • 70. Continuos Integration (cont.) ● Atlassian Bamboo – Code commit to BitBucket, so Bamboo being triggered – Bamboo clone the code from BitBucket – Run the defined test procedures – Return the test result to JIRA/BitBucket ● https://www.atlassian.com/software/bamboo /
  • 71.
  • 72.
  • 73.
  • 74.
  • 75. Advanced Topic(s) ● Branching Strategies ● Code Reviews ● Continuous Integration (CI)
  • 76. Branching Strategies ● Centralized Workflow – Like CVS/SVN, uses a central repository to serve as the single point-of-entry for all changes to the project – Everyone commit all changes and push to “master” branch – Need to resolve all conflict before each commit/push ● https://www.atlassian.com/git/tutorials/compar ing-workflows/centralized-workflow
  • 77.
  • 78. Branching Strategies (cont.) ● Feature Branch Workflow – All feature development should take place in a dedicated branch instead of the “master” branch – Feature branches should have descriptive names, like animated-menu-items or issue-#1061 – Can do peer review with pull request before merge into “master” branch ● https://www.atlassian.com/git/tutorials/compar ing-workflows/feature-branch-workflow
  • 79.
  • 80. Branching Strategies (cont.) ● Gitflow Workflow – Gitflow Workflow defines a strict branching model designed around the project release ● “master” branch stores the official release history ● “develop” branch serves as an integration branch for features ● feature branches use “develop” as their parent branch ● release branch off of “develop”, prepare for merge into “master” branch ● “hotfix” branches are used to quickly patch production releases ● http://danielkummer.github.io/git-flow-cheatsheet/ ● https://www.atlassian.com/git/tutorials/comparing-workflow s/gitflow-workflow
  • 81.
  • 82. Branching Strategies (cont.) ● Forking Workflow – Instead of using a single server-side repository to act as the “central” codebase, it gives every developer a server-side repository – Each contributor has a private local and a public server-side Git repositories – Developers push to their own server-side repositories – Only the project maintainer can push to the official repository – This allows the maintainer to accept commits from any developer without giving them write access to the official codebase ● https://www.atlassian.com/git/tutorials/comparing-workflows/ forking-workflow
  • 83.
  • 84. Code Reviews ● So, what exactly is a code review? – When a developer is finished working on an issue, another developer looks over the code and considers questions ● Code reviews share knowledge ● Code reviews make for better estimates ● Code reviews enable time off ● Code reviews mentor newer engineers ● But code reviews take time!
  • 85.
  • 86.
  • 87. Continuous Integration (CI) ● Merging all develop working copies with a share mainline several times a day ● Protect quality in the code base – Continuous builds – Test automation (e.g. phpunit) ● Branching and CI: a match made in Heaven!
  • 88.
  • 89.
  • 90. Q&A
  • 92. Thank You ● Please feel free to contact us: – PantaRei Design Limited – Unit 326, 3/F, Building 16W No.16 Science Park West Avenue Hong Kong Science Park, Shatin, N.T. – Phone: +852 2576 3812 – Fax: +852 3753 3663 – Email: sales@pantarei-design.com – Web: http://pantarei-design.com