Chapter 3 Flashcards
How does XP support agile principles?
Incremental development - small, frequent system releases
Customer involvement - full-time customer engagement
People not process - pair programming, collective ownership
Change - regular system releases
Maintaining simplicity - constant refactoring of code
How development is supported in agile method?
extensive tool support (automated testing tools) are used
How outputs are decided in plan-driven development?
produced at each separate development stages.
How does test-first development in XP work?
Test-driven development (tests are written as programs and run automatically when new functionality is added)
Customer involvement (customer writes acceptance tests for system stories/ )
Agile methods can be easily scaled from small to large systems. True/False
False.
Because of their focus on small, tightly-integrated teams, there are problems in scaling agile methods to large systems.
List problems with agile methods:
maintaining customer interest,
team suitability for intense involvement,
difficulty in prioritizing changes with multiple stakeholders,
extra work for simplicity,
potential contract issues, similar to other iterative development approaches.
Describe how Extreme programming (XP) works.
New versions may be built several times per day
Increments are delivered to customers every 2 week
All tests must be run for every build and build is only accepted if tests run successfully.
List key practices of XP:
User stories as specification
Refactoring (constantly improving code, even if it is not immediately necessary)
Test-first development (tested after every change)
Pair programming
Agile methods are based on what approach to software development?
iterative approach
The aim of agile methods?
to reduce overheads in the software process (limiting documentation).
to respond and evolve quickly to meet changing requirements.
List principles of agile method:
Customer involvement
Incremental delivery
People not process
Embrace change
Maintain simplicity
After select in Sprint cycle, the team is isolated from customers and communicate with?
ScrumMaster who has to protect the development team from external distractions.
Agile method is more focused on documentation? True/false?
False. Documentation is minimal. Focus on working code
How output is decided in agile method?
through a process of negotiation during the software development process.
How specification, design, and implementation placed in agile development method?
they are interleaved