Agile Programming (OCR A Level Computer Science)

Revision Note

Callum Davies

Written by: Callum Davies

Reviewed by: James Woodhouse

Agile (Extreme Programming)

Extreme Programming (XP) is a type of Agile software development methodology that promotes adaptability and high customer involvement.

Steps in the model:

  1. Planning: Customers and developers define the scope and priorities, including writing user stories

  2. Design: Developers create a simple design for the system that can evolve over time

  3. Coding: Coding is done in small increments with frequent integration and pair programming to ensure quality

  4. Testing: Continuous testing throughout the coding process, with automated tests developed before or alongside the code

  5. Integration: Regular and frequent integration of code, with continuous integration tools ensuring that the system works as a whole

  6. Feedback and Iteration: Constant feedback from stakeholders is used to guide future development cycles, leading to iterative and incremental development

The Extreme Programming (Agile) Model

The Extreme Programming (Agile) Model

Benefits:

  • Highly adaptable: Can quickly respond to changes in requirements, even late in development

  • Frequent communication: Encourages constant communication between team members and stakeholders

  • Quality focus: Emphasizes technical excellence and good design, with continuous testing throughout the development cycle

  • Customer collaboration: Encourages working closely with customers to ensure the developed product meets their needs

Drawbacks:

  • Requires experienced team members: Can be challenging to implement without knowledgeable and skilled developers

  • Intensive collaboration can lead to burnout: The constant communication and collaboration can be tiring for team members

  • May lack documentation: The focus on adaptability and immediate coding may result in insufficient documentation

  • Scope creep: The flexible nature may lead to uncontrolled changes in requirements

Suitability:

  • Extreme Programming is most suitable for small to medium-sized projects where requirements can change and customer involvement is high

Last updated:

You've read 0 of your 10 free revision notes

Unlock more, it's free!

Join the 100,000+ Students that ❤️ Save My Exams

the (exam) results speak for themselves:

Did this page help you?

Callum Davies

Author: Callum Davies

Expertise: Computer Science

Callum is an experienced teacher of GCSE and A-Level Computer Science. He has 4 years of teaching experience and has detailed knowledge of how to achieve exam success, having marked for OCR A-Level. Callum is now a software engineer and regularly mentors new engineers.

James Woodhouse

Author: James Woodhouse

Expertise: Computer Science

James graduated from the University of Sunderland with a degree in ICT and Computing education. He has over 14 years of experience both teaching and leading in Computer Science, specialising in teaching GCSE and A-level. James has held various leadership roles, including Head of Computer Science and coordinator positions for Key Stage 3 and Key Stage 4. James has a keen interest in networking security and technologies aimed at preventing security breaches.