0% found this document useful (0 votes)
7 views

Lecture 1b Introduction to Agile Methods

The document provides an introduction to Agile methods in software development, highlighting key principles such as customer satisfaction, adaptability to change, and iterative progress. It outlines various Agile methodologies including Scrum and Extreme Programming, emphasizing their collaborative and incremental nature. The Agile Manifesto and its principles are also discussed, showcasing the importance of flexibility and responsiveness in a competitive business environment.

Uploaded by

carlesfornes003
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Lecture 1b Introduction to Agile Methods

The document provides an introduction to Agile methods in software development, highlighting key principles such as customer satisfaction, adaptability to change, and iterative progress. It outlines various Agile methodologies including Scrum and Extreme Programming, emphasizing their collaborative and incremental nature. The Agile Manifesto and its principles are also discussed, showcasing the importance of flexibility and responsiveness in a competitive business environment.

Uploaded by

carlesfornes003
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Lecture 01b: Introduction to Agile Methods

IBE205 Agile Methods

Yauhen Maisiuk
Molde University College, Faculty of Logistics
August 27, 2024
1
Topics
• Introduction
• Agile Software Development
• The Agile Manifesto
• Some Agile Methodologies
• References

2
What Is Agile
Agile - readiness for motion, nimbleness (sharp, quickness of mind, activity,
dexterity (skill in performing tasks) in motion

Agility - the ability to both create and respond to change in order to profit in a
turbulent business environment
• Companies need to determine the amount of agility they need to be
competitive
Chaordic - exhibiting properties of both chaos and order
• The blend of chaos and order inherent in the external environment and
in people themselves, argues against the prevailing wisdom about
predictability and planning
• Things get done because people adapt, not because they slavishly (great
efforts or determination) follow processes

3
Agile Independence

Not created by any single company, but by a group of software industry experts
to find “better ways of developing software by doing it and helping others do
it.”*

Agile Principles:
highest priority is customer satisfaction
welcomes changing requirements
frequently deliver working software
advocates close collaboration and rapid feedback
reinforces “inspect and adapt”

* www.agilealliance.org
4
Agile Software Development

• Agile software development is a conceptual framework for software


engineering that promotes development iterations throughout the life-cycle of
the project.

• Software developed during one unit of time is referred to as an iteration, which


may last from one to four weeks.

• Agile methods also emphasize working software as the primary measure of


progress

5
Agile Software Development characteristics (2)

• Light Weighted methodology


• Small to medium sized teams
• Vague and/or changing requirements
• Vague and/or changing techniques
• Simple design
• Minimal system into production

6
Agile Software Development characteristics (3)

• Modularity
• Iterative
• Time-bound
• Incremental
• Convergent (concurrent)
• People-oriented
• Collaborative

7
Agile Software Development principles
• Assume Simplicity
• Embrace Change
• Enabling the Next Effort is Your Secondary Goal
• Incremental Change
• Maximize Stakeholder Investment

Source: http://www.agilemodeling.com/principles.htm

8
Agile Manifesto

Source: https://agilemanifesto.org/

9
Agile Methods

• Extreme Programming (XP) (Kent Beck, Ward Cunningham, Ron Jeffries)


• Scrum (Jeff Sutherland, Mike Beedle, Ken Schwaber)
• DSDM – Dynamic Systems Development Method (Community owned)
• Crystal (Alistair Cockburn)
• ASD – Adaptive Software Development (Jim Highsmith)
• XBreed (Mike Beedle)

10
All Agile Methods

• Maximize value by minimizing anything that does not directly contribute to


product development and delivery of customer value
• Respond to change by inspecting and adapting
• Stress evolutionary, incremental development
• Build on success, not hope

11
All Agile Methods (2)
• Lean Manufacturing (1990, Toyota)
• Agile Manufacturing
• Just-in-time JIT
• Common goals include:
– Reduce Cycle Time
– Maximize Quality
– Reduce Costs

12
Agile Modeling Principles

• Model With a Purpose


• Multiple Models
• Quality Work
• Rapid Feedback
• Software Is Your Primary Goal
• Travel Light
• Content is More Important Than Representation
• Open and Honest Communication

13
Extreme Programming

• Most prominent Agile Software development method


• Prescribes a set of daily stakeholder practices
• “Extreme” levels of practicing leads to more responsive software.
• Changes are more realistic, natural, inescapable.

• A collection of best practices – each done to the “extreme”


• Sounds extreme, but very disciplined
• Created by Kent Beck, Ward Cunningham, Ron Jeffries

14
Agile Unified Process (AUP)

• AUP is a simplified version of RUP


• Phases of AUP
• Inception
• Elaboration
• Construction
• Transition

15
Disciplines of AUP

• Model
• Implementation
• Test
• Deployment
• Configuration Management
• Project Management
• Environment

16
Scrum
It is an Agile Software development method for project management.
Characteristics:
• Prioritized work is done.
• Completion of backlog items
• Progress is explained
• Agile Software Development

• Term in rugby to get an out-of-play ball back into play


• Term used in Japan in 1987 to describe hyper-productive development
• Used by Ken Schwaber and Mike Beedle to describe their Agile methodology

17
Scrum with Extreme Programming
• Scrum works well as a wrapper around
Extreme Programming

18
References

[1]. Abrahamsson P, Salo O and Ronkainen J. Agile software development methods


(Review and analysis).
[2]. Scott W Ambler. Agile model driven development.
[3]. Cohen D, Lindvall M, Costa P. Agile software development.

19
Questions?

20

You might also like