Agile Flashcards
Waterfall: predictive and empirical
Predictive Approach:
plan the work, work the plan
everything is planned
Empirical approach:
Fail fast, Fail Safe
Based on experience
The waterfall model: Advantages
the classical model
-imposes structure
-every stage is processed and completed one at a time.
-limited scope for iteration
- used when end user requirements are clearly defined and little to no change throughout the project.
-works well for smaller projects where requirements are very well understood
well understood milestones so we know what should be delivered
- the process and results are well documented.
Waterfall Disadvantages:
no working software until during the end of the lifecycle
- high amounts of risk and uncertainty
not good for complex and long projects
Not suitable for projects where requirements have a high risk of changing
difficult to measure progress within stages
adjusting scope during lifecycle can end a project
Integraion is done as a big bang at the very end ehich doesnt allow any technological or business bottleneck. challenges early
What is Agile Development:
Change is something to embrace in an agile approach, we determine what is best for the project as we go along
instead of a big design upfront and fixed deadlines, we focus more on client/ developer collaboration
keep only the parts of the process that deliver value
Agile is a philosophy not a methodology:
Examples include:
Scum
Extreme programming
DSDM
Crystal
Adaptive software developement
pragmatic approach
KanBan
Projects that are suited for agile delivery:
Aggressive deadlines(Urgent)
-unnecessary documentation
High degree of complexity
high degree of newness(Novelty)
- What we are doing hasn’t be done before
Benefits of Agile:
Agility allows business objectives and IT
-take objectives and turn it into a working software.
Agility provides gains in terms of visibility, adaptability business value and risk reduction
Cost reduction because of better effectiveness
Time to to market reduction
- because of less documentation
control over change cost
-if there is change, less cost
Longer life of software
-obselsence begins as you are still making it
People are more aware of their responsibilities and they are more motivated
Agile drawbacks:
Active user involvement is essential
- close collaboration
Requirements emerg and evolve, if requirements keep changing then nothing is finished
Frequent delivery- between sprints
System structure degrades as new increments are added
Regular changes to the deliverable usually corrupt the structure unless time and money is spent
Agile manifesto
Favour individual interactions over processes and tools
The favour working software over comprehensive documentation
Customer collaboration over contract negotiations
Valises Responding to change over following a plan
Values of Agile:
Trust between:
managers and employees
Colleagues, to help eachother
Transparency:
To identify and prevent obstacles
To be more effective
To facilitate collaboration
To adapt
Transparency is not to watch and oversee employees
Agile: continuous improvement
- At the centre of empirical approach
- agility provided a framework not a recepie
Adapting practices according to:
The project we want to deliver
The skills and talents of teams.
The conditions of the environment
No agility without quality
Agile: Sustainable pace
Working at a sustainable pace:
-Promotes motivation
- increases effectiveness over time
- reduces Likelihood of risk
Traditional projects: (waterfall)
Greater pressure
Agile: deadline almost every week
System of prioritisation: agile
Visibility is central to agile:
- information is shared with all
-problems arise easier
-actors feel responsible
Agile events: sprint planning
Determining what will take place during the sprint, looking at the backlog
Agile events: Daily standup
What did I do yesterday, what will I do today what obstacles am I facing