Lecture 2
Lecture 2
Lecture 2
Agile Frameworks
Agile represents a philosophy for software development,
emphasizing the value of iterating quickly and often to satisfy
customers. An agile framework can be defined as a specific
software-development approach based on the agile philosophy
connected in the Agile Manifesto
Agile software development methods support a broad range of
the software development life cycle
Some focus on the practices (e.g., XP, agile modeling)
while some focus on managing the flow of work (e.g., Scrum,
Kanban).
Some support activities for requirements specification and
development (e.g., Feature-Driven Development)
while some seek to cover the full development life cycle (e.g.,
Dynamic System Development Method, ).
These methodologies work on the basis of
continued evolution of requirements and solutions
that occurs by establishing collaboration between
self-organizing cross-functional teams.
A way of encouraging the well-managed and
organized project management process, these
methodologies allow for recurrent inspection and
revision of the tasks.
Giving a scope to adapt the best engineering
practices, these methods also assist in the delivery
of high-quality software products.
Agile methods
While there are a number of different
methodologies available, some of the
common ones used are as mentioned below:
1. Scrum
2. Kanban
3. Extreme Programming (XP)
4. Dynamic Systems Development Method
(DSDM) etc
What is Scrum?
• Scrum is an agile process that allows us to focus
on delivering the highest business value in the
shortest time.
• It allows us to rapidly and repeatedly inspect actual
working software (every two weeks to one month).
• The business sets the priorities. Teams self-
organize to determine the best way to deliver the
highest priority features.
• Every two weeks to a month anyone can see real
working software and decide to release it as is or
continue to enhance it for another sprint.
Sprints
Scrum projects make progress in a series of
“sprints”
Typical duration is 2–4 weeks or a calendar
month at most
A constant duration leads to a better
rhythm
Product is designed, coded, and tested
Design: This list serves as the space in which the cards from the backlog
are moved over to become more fleshed out. This is when the team
needs to do more research or design before moving it into progress.
Team structure
Available resources
Needs of stakeholders
benefits of
adoption
(9 marks)
b. Explain the purpose of Unit Testing, how it is used and its
benefits giving
clear examples.
(8 marks)
c. Explain the purpose of Acceptance Testing, its role and
benefits giving
examples.