Transcript Document

Agile Software
Development
Robert Moore
Senior Developer
Curtin University
What is Agile?
• Agile Manifesto - 4 values:
• We are uncovering better ways of developing software by doing it
and helping others do it.
Through this work we have come to value:
•
•
•
•
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
• That is, while there is value in the items on the right, we value the
items on the left more.
What is Agile?
• Agile Manifesto - 4 values:
• In other words: We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
•
•
•
•
People-oriented
Value-driven
Client collaborative
Adaptive and flexible
Traditional Software Engineering
• Fundamentally flawed!
People-oriented
Value-driven
Client-collaborative
Adaptive and flexible
Common Misconceptions
•
•
•
•
Agile is simple, so it must be easy!
Lack of process (cowboy coding)
No documentation
It makes software engineering redundant
Agile Project Management
•
•
•
•
•
•
Self-organising teams
Daily progress communication
Continual process improvement
Regular review, planning and estimation
Very accurate and lightweight project estimation and tracking
Face-to-face communication
Agile Technical Processes
•
•
•
•
Test-driven development
Continuous Integration
Focus on code quality and maintainability
Pair programming and Peer-reviewed production code
Who is doing Agile?
Barriers to adoption
• Agile is common sense. When then isn’t it endemic?
Agile isn’t just Software projects
• The core values behind Agile are relevant for other IT projects
• Agile PM can be applied to non-software projects and teams
• Some companies have looked at how to adopt Agile ideas in
non-IT areas
• Some Agile methodologies are very well suited for operational
work