Scrumday Vietnam 2013 nguyen vu hung hybrid waterfall and agile in software-system development

download Scrumday Vietnam 2013 nguyen vu hung  hybrid waterfall and agile in software-system development

If you can't read please download the document

Transcript of Scrumday Vietnam 2013 nguyen vu hung hybrid waterfall and agile in software-system development

Nguyn V HngScrumDay Vietnam 2013/10/06, HanoiFaceBook/Email: [email protected]:0904-28-7878

Run

Agile + Waterfall

Chy d n c th hiu qun l d n.Scrum khng dng khi nim project manager hay team lead.

Agenda

Introduction

Experimental Purposes

Agile Manifesto

Conclusions

Project Requirements

Notes on Customers

SDLC

Organization and Communication

Planned/Actual Process

Rough Estimation

First Planning

Requirement Definition

Prototype

Design

Coding/Unit Test

Integration Test

Bugfix/Test/Review

TiDD

Results/Looking Back

Lesson Learned

Q&A

Bui ni chuyn gm cc phn chnh

1. Gii thiu2. Nhn nh v k hoch (planning)3. Chy d n (Executing, Monitor and Control)4. Tng kt

Introduction

Nguyn V HngProject Manager/PMO

Japanese SI/IT Company

In love with FOSS and Agile

Contact InfoFacebook/Email: [email protected]

Tel: 0904-28-7878

What I am Looking for

Balance between Agile and WaterfallOld and New

East and West

Direct and Indirect

Big and Small

East and West

The best SDLCIn general

Suits my needs

Try something new?

Manifesto for Agile Software Development

Today's Topics

Transition: Waterfall Agile Waterfall

Manage Changes

Share Experience

Conclusions

Yes, Agile and Waterfall can be mixed

Overlapped phases

A working product is important

Actual Processes

Estimate

Planning

Requirement Gathering (RD)

Prototype

Basic/Detail Design

Coding/Unit Test (CD/UT)

Integration Test (IT)

Alpha 1, 2, Beta 1, 2, 3, 4, RC, Final

System Test (ST)

User Acceptance Test (UAT)

Project Requirements (business)

Copycat existing productTo develop a product that is similar to an existing one

40-ish main featuresCustomer is unclear on what they must do

10-ish constraints

Time-to-marketAlmost fixed

First outputRough estimation (time and cost)

Nhn nh khch hng

Tham lam Mun nhiu yu cu

Bo thNht Bn, ng

By kinh nghimTui trung bnh PMO: U50

M hnh top-downp t

T chc/quy trnh c (waterfall l duy nht!)

Software Development Lifecycle (SDLC)

Project Orgnization/Communication

Product Owner

Requirement Supplier

Project Management Officer

Development Team

Planned Process (1)

Top-down

Waterfall

Process exit conditionRDDesignCD/UTIT

Planned Process (2)

Top-down

Waterfall

Process exit conditionRDDesignCD/UTIT

FAILED

Rough Estimation

Function Point (FP)Lack of information

Lack of historical data

Less accurate

Actual Estimation MethodNot available: Use case, story points...

Use an FP variant# of screens and the # of input/output on each screen

Effort (man-day) needed to complete a screenRequirement, Design, Coding/UT, IT

Consolidate above efforts

# Sample FP estimation:

Planning

Cng s theo ngiK hoch pht trind kin theo thng

iu phi l l: Project manager phi ln k hoch, d ton khi c rt t thng tin. iu ny nguy him nu plan ny c coi l final.

Actual Progress

It is unique for each project

Re-Plan is occurred until the end of the project

Requirement Gathering (RD)

Scope creep

Greedy customer: They wants everything

Time constraints

Company regulation: RDDesignCD/UT

Could not get approval on RDThis is the weakness of Waterfall

Actual progressPrototype, coding while doing RD/CR, or

Do all process in parallel

Prototype

A working deliverableHelps customers have an idea on what they will have

When RD is not finished

Sub stepsBalsamiq prototype

PhotoshopCSS, HTML, PNG

PHP

# Screenshot is taken from another project

Design

Required deliverableBasic/Detail Design

Prototype

Screen design

Data design

Waste of time with none or little future use

Coding/Unit Test

Training

Proof of ConceptFocus on complicated modules

Technical feasibility to reduce risks

Evaluate performance of PoC code

CodingEvery screens (frontend) and commands (backend)

When the design is done

Customer Review/Update: #1, #2, #3,...

Unit test

Integration Test

Put software components togetherBackend/frontend

With network devicesVarious software configurations

Various Hardware configrations

Test on multiple versionsNetwork devices

Frontend server

Backend services

Sprints: Bugfix/Test/Review

Alpha, Beta, RC, Final8 sprints

Customers/Users involved testing

One Sprint per a week

Customers review (retro)

Test

Bugfix

Enhencement

# 1 week/sprint

# 1 week/sprint

Ticket-Driven Development (TiDD)

TicketTicketTicketTicket

Actual Results

One month behind schedule

Design: 100% rework

Overlapped processes

T4

T5

T6

T7

T8

Lessons Learned

Waterfall Consumes more time than Agile

Not flexible

Predictive (Waterfall) not as good as adaptive (Agile)

Clear exit condition is crucial for both

Free test and CI can cover good quality

Take risk and take responsibility

Ticket-Driven Development (TiDD)

Continuous Integration (not really)

"Khng sng to vi khch hng Nht"?

My Concerns and TODOs -;(

Does it really works?

Does project size matter?

What are the side effects on transition?

Where are the tipping points for innovation?

Redmine + Hudson

Redmine + Jira/TestLink

ISO/IEC 15504: Information Technology - Process Assessment

PMBOK 5th/ISO 21500: Guidance on Project Management

"Agile" Maturity, as in Capability Maturity Model

http://www.ehow.com/info_8774171_phrase-takeaway-points-mean.html

Q

Nguyn V HngScrumDay Vietnam 2013/10/06, HanoiFaceBook/Email: [email protected]:0904-28-7878

Run

Agile + Waterfall

Chy d n c th hiu qun l d n.Scrum khng dng khi nim project manager hay team lead.

ScrumDay Vietnam 2013FPT Aptech, Hanoi, Vietnam

Attribution-ShareAlike CC BY-SA