Scrum Agile Framework

Table of Contents

SCRUM is a framework for developing and maintaining complex products

Scrum is a framework for developing and maintaining complex products, and it is an incremental and iterative development process.In this framework, the entire development process consists of several short iteration cycles. A short iteration cycle is called a Sprint. The recommended length of each Sprint is 2 to 4 weeks (Internet product development can use a 1-week Sprint).In Scrum, the product backlog is used to manage the requirements of the product. The product backlog is a list of requirements sorted by business value, and the list entries are usually in the form of user stories.The Scrum team always develops high-value needs for customers first.In the Sprint, the Scrum team selects the highest priority requirements from the product backlog for development.The selected requirements are discussed, analyzed, and estimated at the Sprint planning meeting to obtain the corresponding task list, which we call the Sprint backlog.At the end of each iteration, the Scrum team will submit potentially deliverable product increments. Scrum originated in software development projects, but it is suitable for any complex or innovative project.

The Scrum process is shown in the figure below:

Scrum process
The SCRUM framework includes 3 roles, 3 artifacts, 5 events, and 5 values
3 roles
Product Owner (Product Owner)
Scrum Master
Development team
3 workpieces
Product Backlog (Product Backlog)
SprintBacklog
Product Increment (Increment)
5 events
Sprint (Sprint itself is an event, including the following 4 events)
Sprint Planning Meeting (Sprint Planning Meeting)
Daily Scrum Meeting (Daily Scrum Meeting)
Sprint Review Meeting (Sprint Review Meeting)
Sprint Retrospective Meeting (Sprint Retrospective Meeting)
5 values
Commitment–willingness to make a commitment to the goal
Focus–use your mind and abilities to the work you promised
Open-Scrum opens everything in the project to everyone
Respect–everyone has his unique background and experience
Courage–Have the courage to make promises, fulfill promises, and accept the respect of others
Fundamentals of SCRUM theory
Scrum is a process based on empirical process control theory (Empiricism).Empiricism advocates that knowledge comes from experience and that decisions are made based on what is known. Scrum uses an iterative and incremental approach to optimize predictability and control risk.

The three pillars of Scrum support the realization of each empirical process control: transparency, inspection, and adaptation. The three pillars of Scrum are as follows:

First: Transparency (Transparency)

Transparency refers to maintaining a high degree of visibility in all aspects of the software development process, and all aspects that affect the deliverables are transparent to everyone involved in the delivery and those who manage the production results. People who manage production results must not only be able to see these aspects of the process, but also understand what they see. In other words, when someone is inspecting a process and is convinced that a certain task has been completed, this completion must be equivalent to their definition of completion.

Second: Inspection (Inspection)

All aspects of the development process must be inspected frequently enough to ensure that major deviations in the process can be found in a timely manner. When determining the frequency of inspection, it is necessary to take into account that the inspection will cause changes in all processes. When the specified inspection frequency exceeds the allowable level of process inspection, then problems will arise. Fortunately, this does not happen in software development. Another factor is the skill level and enthusiasm of the personnel who test the results of the work.

Third: Adaptation (Adaptation)

If the inspector finds that one or more aspects of the process do not meet the acceptance criteria during the inspection, and the final product is unqualified, then the process or material needs to be adjusted. The adjustment work must be implemented as soon as possible to reduce further deviations.

Command PATH Security in Go

Command PATH Security in Go

In the realm of software development, security is paramount. Whether you’re building a small utility or a large-scale application, ensuring that your code is robust

Read More »
Undefined vs Null in JavaScript

Undefined vs Null in JavaScript

JavaScript, as a dynamically-typed language, provides two distinct primitive values to represent the absence of a meaningful value: undefined and null. Although they might seem

Read More »