Agile Methods Chapter 30
Agile Methods Key points ▫No method fits all projects or organizations ▫In General A process to elicit, organize, document, v & v requirements Maintain agreement with the customer What requirements will be addressed Any changes must be agreed upon 2
Agile Methods Key points (cont.) ▫If you want to be successful you must mitigate risks ▫The three processes that are represented in the book Extreme Agile Robust 3
Agile Methods Information exchange: Direct verbal communication is ▫Fastest ▫Cheapest Other processes can take more time and money The larger the team/criticality of the project ▫The more need for structured processes 4
Agile Methods Why is direct verbal communication the best ▫Quick & easy Drawbacks ▫Stakeholders are not always accessible ▫It still needs documented No record of decisions ▫You must have good face to face communication skills 5
Agile Methods Must eliminate as many unnecessary processes as possible ▫If it does not provide value remove it, its wasted effort ▫Over complicated process in large companies Examples? Structured processes are all not bad ▫Almost required for large teams ▫Should be required when dealing with critical systems 6
Agile Methods So when do we need to document ▫Verification ▫Agreement (Internal and external) ▫Training ▫Regulatory 7
Agile Methods Defining the extent documentation ▫How polished should our documents be? Depends on: The document The use Level of sophistication ▫Rules to follow Don’t have to polish every document But don’t toss it out either 8
Agile Methods Extreme requirements (XP) ▫This can be more popular Also very controversial Preaches absolute minimum ▫More technical oriented ▫Designed for smaller teams (less than 10) ▫Customers are either onsite or highly available ▫Iterations should be smaller Shorter time Fewer requirements 9
Agile Methods Extreme requirements (XP) ▫Coding Peer or TSP programming Coding standards defined and followed Write unit tests before coding Code is still refractored often 10
Agile Methods How should we accomplish XP ▫Verbalize instead of documenting Vision Document Project concepts Problem Statements ▫Document Use Cases Sequences/Flow Using Whiteboards Post-it notes 11
Agile Methods How does Agile methods work with larger teams ▫~Civilized XP ▫ ▫Larger teams on multiple sites Suggested agile process ▫Reqs workshops & interviews ▫Use Case model 12
Agile Methods Agile process ▫Still capture URPS+ requirements Keep it high level hitting important concepts Leverage tools whenever possible Refractor diagrams from code Assist project management Configuration management Change Management 13
Agile Methods The Robust process ▫Better for Larger More complex or critical ▫Can handle Large spread teams ▫Documentation-intensive Vision Use Cases & Use Case model Supplementary Specification Other UML models ▫Also uses tools and processess 14