Agile learning with projects

16
SESSION 3 AGILE LEARNING WITH PROJECTS AgileDev Tour Duong Trong Tan [email protected] Hanoi, December 2010

description

This presentation shows some notes about learning with agile projects. As the final words of the AgileDev Tour, this presenation combines learning and agile methodologies with reflection on the current context of VNese students.

Transcript of Agile learning with projects

Page 1: Agile learning with projects

SESSION 3AGILE LEARNING WITH PROJECTS

AgileDev Tour

Duong Trong [email protected]

Hanoi, December 2010

Page 2: Agile learning with projects

TurboBoost your development performance

2

Objectives

Requirements for agile adoption and adjustment

Team OrganizationProcessingToolingContinuous improvementProject-based learning and AgileDevBuilding Community of AgileDev in Hanoi

Page 3: Agile learning with projects

TurboBoost your development performance

3

LET’S GET LOUD!

Recap 1: Agile Manifesto

Page 4: Agile learning with projects

TurboBoost your development performance

4

Recap 2: Agile Methods

Methods

XP

Scrum

KanbanRAD

YAADM

Page 5: Agile learning with projects

TurboBoost your development performance

5

Requirements for agile adoption

People believe that Agile methods are for senior developers; Agile methods are for small projects; Agile methods are for small teams.

People (inc. me) also BELIEVE that Junior developers benefit from agile adoptions; Big projects can be efficient with agile methods; Big teams can work as agile teams.

Page 6: Agile learning with projects

TurboBoost your development performance

6

How can you break the Waterfall model?

Page 7: Agile learning with projects

TurboBoost your development performance

7

Team Organization

There must be at least one senior developer in the group.

Based on the overall expertise, select the correct methods. Ask: does the decision make sense?

Do good training for at least 2 purposes Technical knowledge and skills Team understanding and communication

Keep in mind the “agile spirit” during setting up your team.

Page 8: Agile learning with projects

TurboBoost your development performance

8

Process

By answer some questions How frequently can you talk with customer? Can your team mates manage them selves? How do you best fit with meeting and task

assignment? Can all your team do Unit Testing well? Who are senior in your team? Can you do estimation well?

You’ll select a well-defined method from your toolbox;

or build your own from best practices (YAADM)

Page 9: Agile learning with projects

TurboBoost your development performance

9

Tooling

Agile project management tool (not MS Project!) such as a whiteboard, an online dashboard, ticket management system, issue management system such as Redmine.org , assembla.com, Google Code, JIRA).

Software Configuration Management (SCM) system: SVN, CVS, Git, etc.

Unit Testing framework (xUnit family: JUnit, NUnit, HttpUnit, etc.)

Build Automation: Ant, Maven, MakeContinuous Integration (CI): Hudson, CruiseControl,

MS Team Foundation ServerAgile languages and frameworks

Page 10: Agile learning with projects

TurboBoost your development performance

10

Kaizen

Think small “How can I now how many code I write a day?”, “how

much time does my team save by using code template?”, “Is there any better way to generate useful JavaDoc automatically?”

Support your idea with “productivity” word in mind.

Measure your action with useful metricsKeep writing to save your “theory”, and share

it.

Page 11: Agile learning with projects

TurboBoost your development performance

11

Metrics and Measurement

LOC, KLOCKLOCs/DAY, KLOCs/SprintFeatures/Day, Features/SprintBugs Rate, Bugs DensityCohesion Degree, Coupling DegreeCyclomatic complexityProgram Load time, Execution time

Page 12: Agile learning with projects

TurboBoost your development performance 12

What can you learn from projects

Page 13: Agile learning with projects

TurboBoost your development performance

13

Project-based learning

Project-based learning, is the use of in-depth and rigorous classroom projects to facilitate learning and assess student competence. Students use technology and inquiry to respond to a complex issue, problem or challenge.

Wikipedia.org

Why do agile methods support PBL?

Page 14: Agile learning with projects

TurboBoost your development performance 14

QnAThere is no dummy question!

Page 15: Agile learning with projects

TurboBoost your development performance 15

Hanoi Agile Methods User Group?

Agile Hanoi, It should be appended here: http://www.agilealliance.org/resources/agile-user-groups/

Page 16: Agile learning with projects

TurboBoost your development performance

16

WITH AGILE METHODS

Looking forward for a new beginning