Agile method and Scrum process are no longer a new trend but have become a familiar part of software companies in Vietnam.
You are viewing: What is Agile Scrum?
What is Agile and what is Scrum that Developers wholeheartedly “praise”. All will be answered in this article.
Read the article to find out:
What exactly is the Agile concept? What is Scrum?Principles in Agile and ScrumAgile and Scrum Benefits for Product Process
Hundreds of Agile and Scrum jobs on webgiaidap.com
What is Agile?
Agile is an agile software development methodology that gets the product into the hands of the users as quickly as possible as soon as possible.
Agile Manifesto (Agile Manifesto)
The “Manifesto for Agile Software Development” (“Agile Manifesto” for short) sets forth the core values shared by all Agile theorists and practitioners alike. must obey. The full text of the Agile Manifesto is as follows:
Agile Software Development Manifesto
We have discovered how to develop better software by doing it and helping others to do it. Through this work, we have come to appreciate:
Personal and Interaction rather than processes and tools;The software runs fine rather than exhaustive documentation;Collaboration with customers rather than contract negotiation;Respond to changes rather than sticking to the plan.
While the items on the right are still valid, we appreciate them more than the items on the left.
In addition, developers emphasize the twelve principles behind the Agile Manifesto to help developers get suggestions in practice and apply Agile methods in practice. The reasons are listed below:
1-1. Our highest priority is to satisfy our customers through early and continuous delivery of valuable software.
1-2. Welcome to changing requirements, even late in development. Agile processes leverage change for customers’ competitive advantages.
1-3. Regularly deliver well-run software to customers. From weeks to months, give preference to shorter periods.
1-4. Entrepreneur and developer must work together daily throughout the project.
1-5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
1-6. The most effective method of communicating information to the development team and within the development team is face-to-face conversation.
1-7. Software that runs well is a key measure of progress.
1-8. Agile processes promote sustainability. Sponsors, developers, and users can maintain an unlimited continuum.
1-9. Continuity of interest in good engineering and design for increased flexibility.
1-10. Simplicity – the art of maximizing unfinished business – is fundamental.
1-11. The best architectures, best requirements, and best designs are made by self-organizing teams.
1-12. The production team will constantly think about how to become more efficient. They will then adjust and change their behaviors accordingly.
The project will be done in repetitive segments. These segments (known as Iteration or Sprint) are usually short time frames (1 – 4 weeks).
In each of these segments, the development team completes the necessary work such as planning, requirements analysis, design, implementation, testing (with varying degrees) to produce small parts. of the product.
Iterative Sprints in Agile
Agile methods often break down the goal into small pieces with the planning process as simple and compact as possible, and do not do long-term planning.
Incremental and Evolutionary
At the end of the segments, the development team usually releases small pieces of the final product.
These small pieces are usually complete, workable, well tested, and ready to use (called potentially shippable product increment of functionality).
Over time, one segment after another, these executables will accumulate, growing until all customer requirements are satisfied.
adaptive (or adaptive)
Because segments last only a short amount of time, and planning is also constantly adjusted, changes in the development process (change requirements, technology changes, orientation changes) on goals etc) can all be met in an appropriate manner.
Accordingly, Agile processes often adapt very well to changes.
Self-organizing and cross-functional team
Agile team structures are often cross-functionality and self-organizing.
Accordingly, these groups make their own work assignments without relying on hard descriptions of titles or working based on a clear hierarchy in the organization.
Self-organizing team means that it already has the necessary skills (competency) for software development, so it can be empowered to make its own decisions, self-manage, and organize its own work. themselves to achieve maximum efficiency.
Empirical Process Control
Agile teams make decisions based on real data rather than theoretical calculations or prescriptions.
In other words, Agile shortens the feedback life cycle to easily adapt and increase flexibility.
Over time, these strategies will move closer to the optimal state, allowing the team to control the process, and improve worker productivity.
Regarding customer requirements, Agile encourages the development team to talk directly with the customer to better understand what the customer really needs, instead of relying heavily on documents.
In internal development team communication, instead of a programmer (doing the coding) and an engineer (doing the design) communicate with each other through the design.
One of the fundamental principles of Agile is that “well-run software is a measure of progress”. This principle eliminates redundant work that does not directly add value to the product.
In order to operate the “work-by-value” mechanism, the Agile team often works directly and regularly with the customer (or customer representative). Work directly with them to see which requirements have higher priority, bringing more value as soon as possible to the project.
See also: What is Minitab – Minitab is a Computer Software that helps people
As a result, Agile projects often help customers optimize the value of the project. Almost directly, Agile significantly increases customer satisfaction.
Agile Developer Jobs
Senior Agile Developer Jobs
What is Scrum?
Scrum is an Agile software development process. Therefore, it adheres to the principles of Agile Manifesto.
What is the Scrum Framework?
To be able to use Scrum, we need to understand and properly apply the components that make up Scrum including core values (also known as the “three legs”, or three pillars of Scrum), roles, events, and Scrum-specific artifacts.
The Three Legs (or Core Values) of Scrum
Such information can be: product vision, customer requirements, work progress, bottlenecks and barriers etc.
From there people in different roles have enough information needed to make valuable decisions to improve work efficiency.
Scrum tools and meetings ensure that information is transparent to all parties.
Continuous inspection of activities in Scrum ensures the discovery of problems and solutions so that diverse and useful information reaches project stakeholders. Thorough and continuous review is the starting mechanism for adaptation and continuous improvement in Scrum.
Scrum is very flexible like other Agile methods. As a result, it offers a very high adaptability. Based on transparent information from inspection and work processes, Scrum can respond to changes positively, thereby bringing success to the project.
In Scrum, the team involved in software development is divided into three roles with clear responsibilities to ensure the optimization of specific tasks as follows:
Product Owner (product owner)
As the person responsible for the success of the project, who defines the requirements and ultimately evaluates the output of the software developers.
Someone who has a deep understanding of Scrum and ensures the team can work effectively with Scrum.
Development Team (Production Team, or Development Team)
A self-managed cross-functional team that transforms requirements organized in the Product Backlog into system functionality.
Four Meetings (4 Events)
Scrum defines rules for four key events (meetings) to create an environment and way of working and collaborating for project members.
Sprint is an iterative segment in the software development process, usually with a short time frame (1-4 weeks).
Sprint Planning (Sprint Planning Meeting)
The development team meets with the Product Owner to plan the work for a Sprint. Planning includes selecting development requirements, analyzing and identifying tasks along with estimates of the time required to complete the tasks.
Scrum uses a piecemeal and time-incremental planning approach, whereby planning does not happen only once in the life of the project, but iterative, adaptive to the needs of the project. the actual situation in the process of coming to the product.
Daily Scrum (Daily Scrum Meeting)
The Scrum Master organizes a daily meeting for the Production Team for about 15 minutes so that the Development Team can share the work progress as well as share the difficulties encountered during the software development process during a Sprint.
At the end of the Sprint, the development team together with the Product Owner will review the work completed (DONE) in the past Sprint and recommend necessary tweaks or changes to the product.
Sprint Retrospective (Sprint Improvement Meeting)
With the help of the Scrum Master, the development team will thoroughly review the recently concluded Sprint and find ways to improve the workflow and the product itself.
Scrum tools (artifacts)
Scrum uses very simple but effective tools to help with the work.
This is a prioritized list of the project’s features or other outputs. Can be understood as the project’s requirements list.
The Product Owner is responsible for prioritizing each Product Backlog Item in the Product Backlog based on values defined by the Product Owner (usually business value).
This is the blueprint for a Sprint; as a result of the Sprint Planning meeting.
In combination with the Product Owner, the team will analyze the requirements from high to low priority to realize the items in the Product Backlog in the form of a TODO list.
This is a graph that shows the trend of the project based on the amount of time remaining to complete the work.
The Burndown Chart can be used to track the progress of the Sprint (called the Sprint Burndown Chart) or the entire project (Project Burndown Chart).
The burndown chart is not a standard element of Scrum by the new definition, but is still widely used due to its usefulness.
Scrum jobs in HCMC
Scrum jobs in Hanoi
How does the Scrum process work?
Detailed Scrum Process Model
The Product Owner creates the Product Backlog contains project requirements with items sorted in order of priority.The production team will gradually realize the requirements of the Product Owner with repeating sprints of 1 to 4 working weeks (called Sprints). Inputs are Product Backlog items, outputs are Potentially Shippable Product Increment.Before the entire team sprints in the Sprint, the production team meets with the Product Owner to plan each Sprint. The result of the planning session (in the Scrum way) is a Sprint Backlog containing the to-dos during a Sprint.During development, the team will have to update the Sprint Backlog and conduct daily Scrum meetings to share work progress as well as problems in the process of working together. Teams are empowered to self-manage and organize their work to get it done in the Sprint.At the end of the Sprint, the team creates fully functional software packages that are shippable to the customer.. The Sprint Review at the end of the Sprint helps the customer see what the team was able to deliver, what remains to be done, or what remains to be changed or improved.After completing the Sprint review, the Scrum Master and the team hold a Sprint Retrospective meeting. to find improvements before the next Sprint starts, this will help the team continuously learn and grow through each Sprint.
Sprints will be repeated until the items in the Product Backlog are completed or when the Product Owner decides that the project can be stopped based on the facts.
See also: What is a hormone – Types of Female Sex Hormones
Using the “more valuable than first” strategy, the items that bring more value to the project owner are always completed first. Therefore, Scrum always brings the highest value to the project’s investors. Because the process is always improving, the Scrum team is often very productive. These are two great benefits that Scrum brings to the organization.
Resource for you to learn about Agile and Scrum:
If you think these shares can help your friends or colleagues, don’t hesitate to hit the Share button below!