5. SDLC (System Development Life Cycle) (2/2)
PM, BA, CTS, IT, RD, TS
BA, RD
BA, RD
BA, CTS, IT, RD, TS
CTS, IT, TS, SEG
BA, RD, IT, CTS, TS
OperationOperation
Staging/TestingStaging/Testing BA, RD, TS
PM, BA, CTS, IT, RD, TS
BA, RD
BA, RD
BA, CTS, IT, RD, TS
CTS, IT, TS, SEG
BA, RD, IT, CTS, TS
OperationOperation
Staging/TestingStaging/Testing BA, RD, TS
Figure shown above illustrates the relationship for each
stakeholder in every phase within software development
life cycle, where PM stands for Product Managers.
6. Why Waterfall No Longer Works
! Big Risk - Time-consuming
! Slow & late to deliverable
! Change is normal
! Customer interests changed
! Product manager requirements changed
! No longer possible to expect all requirements
! You cannot expect all changes during project
! Therefore projects are bigger
! take longer to develop
! “What I asked for, but not what I want”
Plan
Design
Develop
Test
Fix
Release
Maintain
9. How Projects Really Work (v2.0)
How the customer
explained it.!
How the project
leader understood
it!
How the analyst
designed it!
How the
programmer wrote it!
How the business
consultant described
it!
How the project
was documented!
What operations
installed!
How the customer
was billed!
How it was
supported!
What the customer
really needed!
Ref: http://www.projectcartoon.com/gallery/
What marketing
advertised!
When it was
delivered!
What the digg effect
can do to your site!
The disaster
recover plan!
NewNew
New
New
11. New Development Methods
An Agile process has the ability to improve
• Time to benefits
• Welcome to change requirements
• Deliver working software frequently
• Rapid Deliveries
• Continuous Testing
• Overall quality and efficiency
• Collaboration
Agile processes!
!
!Developer!
R & D!
Project!
manager!
Customer!
Agile
What are Agile Methods?
Agile Methods are lightweight
software methods that use
feedback loops throughout the
development lifecycle
12. Getting Started (1/2)
R3!
Beta I
Beta!
Exit
R4!
Beta II
R5 !
Beta III
3. Multiple Release
S7 S8 S9 S10 S11 S12
Kick-off
• Initiation!
• Requirement!
• Stage Planning
…
1. Initial
R2
S3 S4 S5 S6
R1
Design,
Coding &
Integration
Stage Development !
(x weeks)
Plan Testing & "
Bug fixing Releasing
S1 S2
2. Development
FCS
S13
4. Closure
GM
GraphicRepresentationderivedfromTedHuang’s
TISproject
Only Releasable Code Has Value!
You can actually release to customers can provide
real feedback on how well you’re providing value to
your customers
14. In Practice
! Deliver Frequently
! XP practices help you achieve fast and frequently releases once
you’ve identified what the customer really needs and what makes
the software valuable.
! Short iterations keep the schedule light and manageable
! “Done Done” with discipline keeps you on track
! 10-minute build reminds you to reduce or remove any unnecessary
technical bottlenecks
! Automation
Popular Agile Methods (1/2)
Extreme Programming
15. In Practice - Daily Scrum (Stand-up Meeting)
Popular Agile Methods (2/2)
Scrum
16. In Practice
! 15 minute daily stand up meeting
with 3 special questions
! 30-calendar day iterations
! Stakeholder demo at end of each
iteration
! Team measures progress daily
! Each iteration delivers tested,
fully-functional software
! Never more than 30-days from
potential production release
Popular Agile Methods (2/2)
Scrum
17. Agile Common Practice
• Deliver Frequently
• Short iterations
• Pair Programming
• informative workspace (Story board)
• Root-Cause Analysis
• Energized Work
• Don’t over-design ( )
• Retrospective ( , .)
• Document Barely sufficient ( )
• Continuous communication
• Continuous integration (CI)
(Agile features)
18. Agile Practices (1/5)
• Pair Programming
– How to Pair
– Driving and Navigating
– Pairing Stations
– Challenges
– Mismatched
– Tools and key bindings
– Code Reviews
Reference: http://xp123.com/xplor/room-gallery/index.shtml!
19. Agile Practices (2/5)
• Informative Workspace (1/2)
– Subtle Cues
– Big Visible Charts
– Hand-Drawn Charts
– Process Improvement Charts
Reference: http://cws.internet.com/article/3910-.htm!
( )
(Question/Features/Requirement)
Question: +
& ?
Addition: Only one month.
20. Agile Practices (3/5)
• Informative Workspace (2/2)
– People learn while walking past!
– We need to share status with people who can’t or won’t visit the team
workspace regularly.
– Alternatives
• Teams that are more widely distributed may use electronic tools
supplemented with daily stand-up meetings.
Reference: http://xp123.com/xplor/room-gallery/index.shtml!
,
(Quick sync status/Information)
21. Reference: Creative Root Cause Analysis (CRCA)!
Agile Practices (4/5)
• Root-Cause Analysis
– How do Find the Root Cause
• A Classic approach to root-cause analysis is to ask “Why” five times.
– When Not to Fix the Root Cause
• Chipping away at the biggest problem
– Avoid blaming individuals
– Focus on What is in your control
22. Agile Practices (5/5)
• Energized Work
– How to Be Energized
– Supporting Energized Work
– Taking Breaks
– Questions
– Results
– Contraindications
– Alternatives
Reference: http://hk.88db.com/hk/Services/Post_Detail.page/food_beverage/catering/?PostID=145814&lang=en-us!
Reference: http://0425826069.travel-web.com.tw/!
Question:
I work in a startup and 40 hours
just isn’t enough. Can I work longer hours?
23. Agile Document - “Barely Sufficient”
• Documents team work
– Note team, not process
– Low tech tools (Whiteboard)
– Communication aid
• Documents customer asks for
– Product deliverables
(Manuals, materials to support
maintenance, etc)
– Tracked along with all other
requirements
27. What is Continuous Integration? (2/2)
When you press the
“Integrate button” at every
change, you build a
foundation for reducing
risks early and often, as
indicated in Figure 3-1.
Continuous
Integration
Based on automated builds!
28. "Five O'clock Check-In" Pattern (1/2)
This%alone%may%reduce%build%breakage,%typically%by%20%%to%50%.
h"p://www.view+er.com/support/ar+cles/con+nuous_integra+on_build_breakage_pa"erns.htm;
The Five-O'Clock Check-in is a
quick way to lose friends if
your team follows the rule that
no one goes home.!
when the build breaks. I'm
thinking that there will be a lot
of calls home to explain why
you'll be late ... again.