Agile
Introduction
agile เป็นกระบวนการส่งมอบงานเพื่อให้ได้รับ feedback อย่างต่อเนื่อง ปรับเปลื่ยนให้เข้ากับการแข่งขันได้ตลอดเวลา สิ่งที่ agile focus เลยคือการ feedback ,collaboration และ value
Agile four values
- Individuals and Interactions over Processes and Tools
 - Working software over the comprehensive documentation
 - Customer collaboration over contract negotiation
 - Responding to change over following a plan
 
Agile Principals
- Customer satisfaction through early and continuous software delivery – Customers are happier when they receive working software at regular intervals, rather than waiting extended periods of time between releases.
 - Accommodate changing requirements throughout the development process – The ability to avoid delays when a requirement or feature request changes.
 - Frequent delivery of working software – Scrum accommodates this principle since the team operates in software sprints or iterations that ensure regular delivery of working software.
 - Collaboration between the business stakeholders and developers throughout the project – Better decisions are made when the business and technical team are aligned.
 - Support, trust, and motivate the people involved – Motivated teams are more likely to deliver their best work than unhappy teams.
 - Enable face-to-face interactions – Communication is more successful when development teams are co-located.
 - Working software is the primary measure of progress – Delivering functional software to the customer is the ultimate factor that measures progress.
 - Agile processes to support a consistent development pace – Teams establish a repeatable and maintainable speed at which they can deliver working software, and they repeat it with each release.
 - Attention to technical detail and design enhances agility – The right skills and good design ensures the team can maintain the pace, constantly improve the product, and sustain change.
 - Simplicity – Develop just enough to get the job done for right now.
 - Self-organizing teams encourage great architectures, requirements, and designs – Skilled and motivated team members who have decision-making power, take ownership, communicate regularly with other team members, and share ideas that deliver quality products.
 - Regular reflections on how to become more effective – Self-improvement, process improvement, advancing skills, and techniques help team members work more efficiently.
 
Agile Methodologies
- Scrum
 - Kanban
 - Extreme Programming
 - DAD
 - Crystal