The Agile Manifesto has 12 principles to focus on the development and also the delivery of high-end, quality worth software for business people and developers, and these principles are:
1- Ensuring customer satisfaction from beginning to end of a project, promising to add valuable software on a continued basis, as and when required:
it’s about giving people what they actually need and not just what they ask for, the customer has a need, and if you’re building software to meet that need, then you have to understand it, whether or not he can communicate it to you,
is getting the development teams to build software that the user actually needs, The 12 principles of agile manifesto depend on the idea that we build projects to deliver value, there will be periodical interaction with the client about the ongoing software development cycle.
Deliver working software frequently, Customers are obviously going to be thrilled to see a working software being delivered every sprint rather than having to go through an ambiguous waiting period at the end of which only they will get to see the product.
2- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage:
Deliver working software is the primary measure of progress, When the development teams are working on the deliverables and there is a new request or a change from the client regarding the ongoing development then the agile helps us to harness that request and adopt the change requested by the client to ongoing development.
Agile helps with adopting the changing market environment and support with each iteration and helps development teams and organizing teams stay ahead of their competitors.
3- Deliver working software frequently, from a couple of weeks to a couple of months with a preference to the shorter timescale:
When we can deliver working software frequently it helps to identify the changes required and miscommunication, if any, with the client. Rather than delivering after all the development in which the developer cannot entertain any changes requested by the client,
The shorter timescale, the more opportunity stakeholders have to voice their input and provide the development teams with feedback. This also provides a level of confidence for stakeholders and helps project managers delivering earlier, with preference to the shorter timescale,
This is because short development cycles take up less time when it comes to drafting and documentation and gives developers more opportunities to validate their ideas and strategies due to frequent customer feedback.
4- Business people and developers must work together daily throughout the project:
From developers to sponsors, Agile principles put a lot of emphasis on effective communication and collaboration. It is considered to be critical for the project’s success. Teams need to communicate on a daily basis,
it helps the developers to work in the right direction and adapt if any changes requested by the customer. And, the client will be aware of the progress that is happening in the team
this Agile principle emphasis that there should be a commitment, direct collaboration, and cooperation in all the phases of a project.
5- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done:
Trust, autonomy and accountability is the agile philosophy, When people who are motivated to work are given the environment and support they need to complete the task, Agile teams need to be made of the right amount of work required to complete a project and deliver on time.
Having trust in the developer and standing by their side will help them to work comfortably without the input of a rigid or restrictive management influence. Micromanagement and top-down techniques don’t allow motivated and talented people to grow and reach their potential.
6- The most efficient and effective method of conveying information to and within a development team is the face-to-face conversation:
Communication is better and more impactful if the teams are in the same location and can meet face to face for discussions, Though sometimes developers will in different places, an effort should be made to have communication even if it is done over a video call to encourage real-time communication about the product.
7- Working software is the primary measure of progress:
Working software is what it’s all about, Working on the software should be the primary target which is to deliver the product, Building working software is the main goal for each project, and it needs to be done in the fastest and most efficient manner,
Regular iterations ensure that the product gets delivered to the consumers as quickly as possible, and with each iteration, developers can ensure that the workable product is improved, listening to customer satisfaction, as this is what defined to be working software. This also tells how well is the progress of the team.
8- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely:
Agile helps the developers to maintain a constant pace throughout the development cycle, the important reason for the team so hurry in adopting agile is to have sustainability and scalability in their product,
as it just cut through the waste, Making everyone to work with constant pace continuously, meaning within with fixed set of scope to achieve it, collectively as a team of sponsors, developer, and manager.
It’s more beneficial to keep the product and development team happy and healthy working at a constant pace and delivering high quality potentially releasable software.
9- Continuous attention to technical excellence and good design enhances agility:
It’s the ability to give the best to the owners, The team should have all the skills and a good product design to handle the changes and produce a high-quality product while being able to incorporate changes, we should give more emphasis on design and technical excellence as nothing else really matters,
So that, Products should be reviewed after each iteration to ensure real improvement is taking place, the ability to give continuous attention to the development is a sign that the team is striving hard to satisfy the customers.
10- The Simplicity of the art of maximizing the amount of work not done is essential:
It is important to prioritize the essential requirements first, It focuses on taking action that has the most impact on the development by effectively prioritizing tasks and features by creating strategies with purpose,
by Keeping the work simple, the Agile team should build exactly what is necessary so the product provides a solution to the customer’s pains, gains, jobs to be done, Adding unnecessary features increase build time and cost while also increasing support and maintenance costs.
11- The best architectures, requirements, and designs emerge from self-organizing teams:
Agile is based on the belief that Management is responsible for making all the decisions and the developers do not have the freedom to create on their own,
They should have the freedom to collaborate and innovate as they see fit, without being hampered by too much oversight, With Agile teams, developers can create self-organizing teams that function on a more horizontal process and do not require the approval of a manager for each decision,
These people are the best in the business; they will help the client to reach the goal with the best advice, with the best work, and with the best solution.
12– At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly:
Agile principles promote the flexibility of teams, Self-improvement leads to quicker results and lesser rework, The team must focus on continuous improvement for efficacy and adaptability,
Once the project is completed, a project review will happen,
This will help the next client to approach in a different way, Another aspect will be after each scrum ends an event called “retrospective” will be kept to know what needs to be improved and what the team has learned about itself from this.