Flashcards - FSE Week 3 Computer Sciences Study Set
What is the main focus of Agile software development?
Rapid delivery of working software and adaptability to change.
What does the Agile manifesto value more?
Individuals and interactions over processes and tools.
What is emphasized in Extreme Programming (XP) regarding planning?
Incremental planning with requirements recorded on story cards.
What is the role of customers in Agile development?
Customers should be closely involved throughout the development process.
How are software requirements expressed in XP?
Through user stories or scenarios on cards.
What practice in XP involves two developers working together?
Pair programming.
What is one of the goals of Agile methods?
To reduce overheads in the software process.
What does iterative development in Agile mean?
Starting software development with a small subset of requirements and enhancing versions over time.
In Agile, what is minimal documentation focused on?
Prioritizing working code.
What is the significance of refactoring in XP?
It improves understandability and facilitates easier changes in code.
What kind of development does Agile methods apply well to?
Development of small or medium-sized products for sale.
What is a key benefit of agile development in a fast-changing business environment?
Allows software to evolve quickly to reflect changing business needs.
What is emphasized in Agile methods regarding documentation?
Focus on working software instead of comprehensive documentation.
What does the principle ‘People not process’ imply in Agile development?
Development team members should be left to develop their own ways of working.
What is the core idea of continuous integration in XP?
Integrate work into the whole system as soon as a task is complete.
What does ‘Sustainable pace’ refer to in Agile practices?
Avoiding excessive overtime to maintain code quality and productivity.
What was a major trigger for the creation of Agile methods?
Dissatisfaction with the overheads of traditional software design methods.
What type of techniques does Agile project management involve?
Agile development techniques such as Scrum and Kanban.
How does Extreme Programming (XP) define releases?
Frequent delivery of increments every 2 weeks, with a focus on automated tests.
Why is direct customer involvement crucial in Agile development?
It ensures system requirements are prioritized and evaluated in iterations.
What is one of the practices that results from the Agile principle of embracing change?
Designing the system to accommodate changing requirements.
What is the impact of plan-driven development in Agile environments?
It may not meet the fast-changing business needs required by Agile development.
What is the relationship between Agile development and traditional methods?
Agile seeks to combine agile methods with plan-driven approaches for large systems.