Agile Methods
Fleeting- External reference: https://en.wikipedia.org/wiki/Agile_software_development
- External reference: https://www.agilealliance.org/agile101/
- External reference: https://www.atatus.com/glossary/agile-methodology/
- External reference: https://www.redhat.com/en/topics/devops/what-is-agile-methodology
- External reference: https://stackify.com/agile-methodology/
- External reference: https://docs.microsoft.com/en-us/devops/plan/what-is-agile
- External reference: https://agilemanifesto.org/principles.html
- External reference: https://agilemanifesto.org/
- see,
People often forget that customer is a central role in agile and confuse it with Rapid Application Development or adaptive software development. Also, some people tend to think that agile is about removing the unnecessary, which is more about lean.
In software development, agile (sometimes written Agile) practices include requirements discovery and solutions improvement through the collaborative effort of self-organizing and cross-functional teams with their customer(s)/end user(s), adaptive planning, evolutionary development, early delivery, continual improvement, and flexible responses to changes in requirements, capacity, and understanding of the problems to be solved.
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools,
- Working software over comprehensive documentation,
- Customer collaboration over contract negotiation,
- Responding to change over following a plan,
That is, while there is value in the items on the right, we value the items on the left more.
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Business people and developers must work together daily throughout the project.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity–the art of maximizing the amount of work not done–is essential.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Business people and developers must work together daily throughout the project.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done
individuals and interactions over processes and tools
individuals and interactions over processes and tools
working software over comprehensive documentation
working software over comprehensive documentation
customer collaboration over contract negotiation
customer collaboration over contract negotiation
responding to change over following a plan
responding to change over following a plan
agile encourages continuous improvement
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
most efficient and effective method of conveying information to and within a development team is face-to-face conversation
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
quotes
The term Agile was coined in 2001 in the Agile Manifesto. The manifesto set out to establish principles to guide a better approach to software development.
— https://docs.microsoft.com/en-us/devops/plan/what-is-agile
is not a thing; you don’t do Agile. Rather, Agile is a mindset that drives an approach to software development. As there is no single approach that works for all situations, the term Agile has come to represent a variety of methods and practices that align with the value statements in the manifesto.
— https://docs.microsoft.com/en-us/devops/plan/what-is-agile
Agile Methodology is a people-focused, results-focused approach to software development that respects our rapidly changing world. It’s centered around adaptive planning, self-organization, and short delivery times. It’s flexible, fast, and aims for continuous improvements in quality, using tools like Scrum and eXtreme Programming.
phrase “agile methodology” is misleading because it implies that agile is a singular approach to software development. Agile is not a set of prescriptions for exactly which actions to take in software development. Instead, it is a way of thinking about collaboration and workflows and it is a set of values which guide our choices in regards to what we make and how we make it.
— https://www.redhat.com/en/topics/devops/what-is-agile-methodology
agile software development methodologies are all about delivering small pieces of working software quickly to improve customer satisfaction.
— https://www.redhat.com/en/topics/devops/what-is-agile-methodology
Agile as we know it today traces its history to 2001. Reacting to waterfall approaches to project management, which organizes a software project as a series of linear sequences, a group of software developers penned The Manifesto for Agile Software Development.
— https://www.redhat.com/en/topics/devops/what-is-agile-methodology
Agile methodology is a practice that encourages continuous development and testing throughout the software development lifecycle of a project. Unlike the Waterfall methodology, the Agile methodology allows for parallel development and testing.
Agile methodologies attempt to produce the proper product through small cross-functional self-organizing teams that produce small pieces of functionality on a regular basis, allowing for frequent customer input and course correction as needed.
Agile is the ability to create and respond to change. It is a way of dealing with, and ultimately succeeding in, an uncertain and turbulent environment. The authors of the Agile Manifesto chose “Agile” as the label for this whole idea because that word represented the adaptiveness and response to change which was so important to their approach. It’s really about thinking through how you can understand what’s going on in the environment that you’re in today, identify what uncertainty you’re facing, and figure out how you can adapt to that as you go along.
Agile software development is an umbrella term for a set of frameworks and practices based on the values and principles expressed in the Manifesto for Agile Software Development and the 12 Principles behind it. When you approach software development in a particular manner, it’s generally good to live by these values and principles and use them to help figure out the right things to do given your particular context.
Solutions evolve through collaboration between self-organizing cross-functional teams utilizing the appropriate practices for their context.
teams are cross-functional. Those teams don’t have to have specific roles involved so much as that when you get the team together, you make sure that you have all the right skill sets on the team.
provide the environment that allows the team to be successful.
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software
Simplicity–the art of maximizing the amount of work not done–is essential
Notes linking here
- #NoEstimate
- A release strategy for happier customers, sooner
- Agile & Scrum Don’t Work | Allen Holub In The Engineering Room
- agile fallacy
- agile methods != agility
- Allen Holub
- apprentissage et compréhension de problèmes
- behavior-driven development
- code review
- collaborative organisation tool must accept the changes
- comparons les alternatives comparables
- counter intuitive names
- Footnotes
- gtd: principles vs specification
- individuals and interactions over processes and tools fallacy
- masquarade of pseudo agility
- method
- Move Fast Break Things - Work Chronicles
- persona
- Rapid Application Development
- scrum
- scrum is not agile because formally defined?
- Scrum Master Toolbox Podcast: Agile storytelling from the trenches: BONUS: The Agile Wire hosts interview Vasco Duarte on #NoEstimates
- Simon Brown - Software Architecture for Developers
- software architecture
- tragedy of guestimations in softwares
- tragédie de la définition d’une méthode
- user story
- what is the difference between Scrum and Agile?