AGILE IS MINDSET
Abstract
If someone asked what is agile? How we can explain it. In general, we said this kind of processor kind of methodology or something. but in this article, I discuss what is agile in a proper manner. And also discuss the development management briefly and history of the agile. Agile is a larger concept so only agile values we discuss deeply here.
Introduction
According to project management history, we can realize technology improvement enhances the development process step by step. In that way can capitalize 4 industry versions,
1. Industry 1.0 — Depend on Mechanization, steam, power, weaving loom
2. Industry 2.0 — Depend on Mass production, assembly line, electrical energy
3. Industry 3.0 — Depend on automation computers and electronics.
So project management also adapts to this technology version and people introduce new projects management concepts moment by moment. According to that plan-driven mean completely planned and following plan concept and also change driven which means an evolving plan that is changing throughout the tips concepts much utilize the industry. In people identify the plan-driven management has many drawbacks than change-driven management way because when starting the project there are many external and also the internal barriers and challenges could be can change the project path. So plan-driven concepts are not much reliable in that manner. According to that agile concept come to the world.
Birth of Agile Manifesto
On 2001 February 11th, 17 software engineering related persons was gathered to discuss the that time software industry status. So discuss what should want to improve? how the enhance the software development process, what are the most important terms to implement the right concept to project handling? and many other things. After around 3-day discussion they create a document including 73 words. They give name it to agile manifesto. That 73 magical words enhance the software industry performance and that is official born of the agile concept.
Agile
Agile manifesto document first phase is “We uncovering better ways of developing software by doing it and helping others to do it. Through this work we have come to value.” This first 3 lines explain the whole agile concept. In here they mean all the parties who involve in the project like development team, customer, management all the entities. So it expresses all that parties should want find the better ways to develop the software when doing it and always support others to do it. It expresses all the parties should have responsibilities achieved the project goal not think as individually. And last sentence express when during project process always try to improve it step by step. That is the agile, agile is the concept that maintain the mindset to achieve the goals in the certain project. So adopting is important during the project. So that’s why in the present agile is most usable and most reputed software development concept in the field.
Agile is not a methodology
Methodology means a collection of methods. Methods mean a systematic procedure for getting something done. Agile is not have procedure to following. It is adoptable than predictable.
Agile is not a process
Process means a series of steps done in a particular order. Agile hasn’t that kind have steps to follow. So we can say agile is not a process also.
Agile is not a standard
Standard we can define as a expected norm or a level of quality to be attained. In agile never expected this quality was should we want to maintain in software process. I always showing improve the software development process moment by moment review the certain levels in certain time.
Agile is mindset
So we can say agile is the mental vision through which we see the project and the environment in certain levels. So most effective way looking at something is breakdown the features to small pieces and analysis it. So that concept always utilizes in the agile.
collection of frameworks
Framework we can define as a set of building box that build using certain main concept. So agile also has that kind various frameworks. We can divide them to 2 main categories. One is a lightweight approach use to lightweight software and Fuller approaches which use by some larger software developments. Some frameworks are given below,
Agile Values
Regarding agile, we can say agile is a match for the iceberg concept. Why we can say that way? Because all the developers and other parties can visible the agile practices methods only but that practices maintain by several principles and values. We can large iceberg to mindset. That’s why we can say agile is always depend on the mindset. So in here we discuss agile values. That values also mention in agile manifesto document. So it is the core implementation of the agile.
Individuals and interactions over process and tools
Generally, communications and interaction are very important terms should want to handle in the agile related software development project. So this value defines not over depend on tools or process when you interact with each other. Normally we all using social media platforms and other professional platform to maintain the interaction with each other. According this value that is not good practice because it is not much reliable and effective than communicate with physically.
Working software over comprehensive documentation
This is great value in agile concept to skip the most development process weakness. Most software development process models are much depending on the documentation. It is very much headache to all the people who involve in software project. So this value express not over depend on the comprehensive documentation.
Customer collaboration over contract negotiation
Generally, when start the development project customer and working team should agree to agreements. So that agreement mentions the deadlines and purchases and other all the stuffs. So this value express not over depend on that contract. The team who involve with the project should involve to the project as much as possible because it is perfect way to express to customer to how the project going on. It is very much helpful to express the status of the project.
Responding to change over following plan
This value express to main concept of the agile which always adopt to the plans respond to the following situation. When over depend on following plan it is cause to the fail the project. Covid-19 pandemic is good example for it because software industry not adopt to this kind situation they can’t survive it. So it also important value.
Agile Principles
Satisfy the customer
In the agile, always customer has some highest priority, his/her satisfaction are the major point to continue the project. It is the major measurement in the review process. So early and continuous delivery and also the maintain the valuables of the software when delivery project in customer in certain phases is very important.
Welcome to changes
Software project requirements and environment could be change. So previously we disused adoptive planning value is very much important to manage the project proper way.
Shorter time scale use to deliver working project
This very much important in agile. As we know agile always prefer to review and improve the project tasks. So technically we can identify those errors quick and possible it is a great achievement to fix that error. So that’s why delivery working software frequently is a given as agile principle.
Always involve with business people
Normally we know, organization has several business people. In the software industry also same. So many employ and management rolls are there. So in the agile always mentions the all the parties who involve in the project is very much important to deliver the successful project. So it is important to business people and developers must work together daily throughout the project.
Build projects around motivated individuals.
As we know software projects make by the people. So every people has different skills and behaviors. So person to person motivation terms are difference and it is important because motivation related environment is the perfect place to deliver something amazing. We can divide two major motivation terminology according to internal and external.
Face to face conversation along with development team
As we know most efficient and effective method of conveying information to and discuss the development team is face to face method because it is more reliable than other ways. So it is very important to review and planning the project.
Working software is the primary measure of progress.
Most software development model main measurement of progress is documentation. Actually it is not perfect theory to in the software project because customer or development team can’t realize the what are major issues and major concerns in the real project in that way.
Agile process promotes sustainable development
As we previously mention this software is made by people. So they have some life to spend in their world and also they have rights. So always project managers and leaders in the project should want to be concern it. Otherwise can’t create good and likely environment to workers. So that is why say agile process always promotes sustainable development.
Always maintain the parallel technical and quality of the project.
As we know project should want to concern the technical and design aspects but it not parallel going on quality, we can’t say that is quality project. So it is enhancing the agility of the project.
Simplicity
This is art of maximizing the amount of work not done is essential. Stage by stage run down the process and prioritize is become to this principle. So it is simplicity the work and easy to understand and deliver the task
Empowered self-organizing teams
As we know agile is a not one-man show. So every person should involve to actively success the project. In this principle mention empowered self-organizing team. It is very beautiful concept because in this way teams in project can get a power to manage their work own way. They have to do task but that task can manage with self-organizing way. So strategically team have freedom to done their works right manner so they can concrete that work only and efficient and effective of that work progress is increasing.
Reviewing reflect and improving
Agile concept main term is always try to improving the path of the process. At regular intervals, the team reflects on how to become more effective than tunes and adjust its behavior accordingly.
Agile Practices
Visualize the work
This is the common and important agile practice in industry because in this way project team can get idea what point we are in and how many work we have left and how can manage the path the such a situation. Other thing is it is really helpful to review the project and express the path of the project to the customer and other parties.
Break down works
As we know software project has a several tasks to do. In that manner it is easy to identify the task when we break down to task smaller peaces . It is helpful to identify task and deliver it to certain team or person. And other thing is it is very much helpful to get the core idea about task.
Prioritize
This is very common and useful agile practice. Prioritizing the task very important term in agile software development because in agile main concept is customer is the key person. So all the requirements should want to identify and prioritize is very useful to get the customer satisfaction.
An agile team
Agile always related with team work so all the team members should have responsibility to deliver the quality project on right time. So every team member should give the 100% to achieve it. So every team member should work constant manner.
Trust
Trust is most important essential requirement for work because it is increase the confidence of the people. So project team always want to trust their team and motivate them and also project team also want keep that trust possible way.
Conclusion
Agile concept creates to respond to the certain situation in certain way. So according all the stuff the we can say agile depend on the mindset of the people. So there so many frameworks to manage that core principles and values and practice the agile. We can visible only that practices but all the practice driven on that values and principles. So when we identify that values and principles we can recognize and we manipulate the new agile practices in various way.