Background
Break News
How to add local font to Tailwind Css and NextJS? - Tutorial Design Pattern? - Blockchain Technology, How to create own Bitcoin virtual currency - Zustand mordern management state - Design Pattern - Flyweight Pattern? - Docker Full training Topic

[Tips] An Introduction to "Scrum Process in Software Development": A Comprehensive Overview

Thursday, 18 August 2016
|
Read: Completed in minutes

[Tips] An Introduction to "Scrum Process in Software Development": A Comprehensive Overview

What's Scrum Process?

Scrum is an iterative and incremental agile software development framework for managing product development.

It defines "a flexible, holistic product development strategy where a development team works as a unit to reach a common goal", challenges assumptions of the "traditional, sequential approach" to product development, and enables teams to self-organize by encouraging physical co-location or close online collaboration of all team members, as well as daily face-to-face communication among all team members and disciplines involved.

A key principle of Scrum is its recognition that during product development, the customers can change their minds about what they want and need (often called requirements volatility) , and that unpredicted challenges cannot be easily addressed in a traditional predictive or planned manner. As such, Scrum adopts an evidence-based empirical approach-accepting that the problem cannot be fully understood or defined, focusing instead on maximizing the team's ability to deliver quickly, to respond to emerging requirements and to adapt to evolving technologies and changes in market conditions.


An Introduction to "Scrum Process in Software Development": A Comprehensive Overview


Roles

Product Owner

- The Product Owner represents the product's stakeholders and the voice of the customer
- Focus on business side of product development and spend the majority of their time liaising with stakeholders and should not dictate how the team reaches a technical solution

Development Team

- Responsible for delivering potentially shippable increments (PSIs) of product at the end of each Sprint (the Sprint goal)
- The Development Team in Scrum is self-organizing, even though there may be some interaction with a projects management office (PMOs)

Scrum Master

- Scrum is facilitated by Scrum Master
- The Scrum Master is not a traditional team lead or project manager, but acts as a buffer between the team and any distracting influences.
- Ensures that scrum framework is followed
- Ensure the team follows the agreed processes in the Scrum framework, often facilitates key sessions and encourages the team to improve

Workflow

- A Sprint (or iteration) is the basic unit of development in Scrum.
- The Sprint is a timeboxed effort
- Each Sprint starts with a Sprint planning event that aims to define a Sprint Backlog, identify the work for the Sprint and make an estimated commitment for the Sprint goal

Planning

At the beginning of a Sprint, the Scrum Team holds a Sprint Planning event that:
- Communicates the scope of work likely during that Sprint
- Selects Product Backlog items that likely can be done


- Prepares the Sprint backlog that details the work needed to finish the selected Product backlog items
- Sets a four-hour time limit for Sprint Planning on a two-week Sprint
   + During the first half, the whole Scrum Team (Developement Team, Scrum Master and Product Owner) agree what Product Backlog Items to consider for that Sprint
   + During the second half, the Development Team decomposes the work items (tasks) required to deliver those product Backlog items, resulting in the Sprint Backlog.

Daily Scrum

- Each day during a Sprint, the team holds a Daily Scrum (or stand-up) with specific guidelines
- During the Daily Scrum, each team member answer three questions:
  + What did i do yesterday that helped the Development Team meet the Sprint goal?
  + What will I do today to help the Development Team meet the Sprint goal
  + Do I see any impediment that prevents me or the Development Team form meeting the Sprint goal


Review and retrospective

At the Sprint Review, the team
- Reviews the work that war completed and the planned work that was not completed
- Presents the completed work to the stakeholders


At the Sprint Retrospective, the team
- Reflects on the past Sprint
- Identifies and agrees on continuous process improvement actions



An Introduction to "Scrum Process in Software Development": A Comprehensive Overview

Sprint backlog


- The list of work the Development Team must address during the next Sprint

An Introduction to "Scrum Process in Software Development": A Comprehensive Overview


Sprint burn-down chart

- Sprint is a public displayed chart showing remaining work in the Sprint Backlog.
- Update every day, it gives a simple view of the Sprint process

An Introduction to "Scrum Process in Software Development": A Comprehensive Overview





Tinh chất của Scrum:

- Nhẹ nhàng
- Dễ hiểu
- Khó để tinh thông

Scrum không phải là một quy trình hay một kỹ thuật cụ thể để xây dựng sản phẩm. Nó là một khung làm việc cho phép bạn sử dụng nhiều quy trình trình và kỹ thuật khác nhau.

Scrum được xây dựng dựa trên lý thuyết quản lý tiến trình thực nghiệm gồm: Sự Minh Bạch (transparency), thanh tra (inspection) và thích nghi (adaptation).

Minh Bạch: (transparency)

- Hiển thị rõ rrách nhiệm với thành quả của tiến trình đó

Thanh Tra (inspection)

- Thường xuyên thanh tra và tiến độ đến đích để phát hiện các bất thường không theo ý muốn
- Tần suất không nên quá dày để khỏi ảnh hưởng đến công việc

Thích nghi (adaptation)

- Điều chỉnh lại khi scrum master xác định có vấn đề nào vượt qua giới hạn cho phép và hậu quả của vấn đề đối với sản phẩm là không thể chấp nhận được

Scrum cung cấp 4 phần sau:

1. Họp kế hoạch Sprint (Sprint planning Meeting)
2. Họp Scrum hằng ngày (Daily scrum)
3. Sơ kết Sprint (Sprint Review)
4. Họp cải tiến Sprint (Sprint Retrospective)



An Introduction to "Scrum Process in Software Development": A Comprehensive Overview




Nhóm Scrum:

Product Owner (chủ sản phẩm)

- Chịu trách nhiệm tối đa sản phẩm và công việc của nhóm phát triển.
- Chịu trách nhiệm về việc quản lý product backlog, công cụ quản l
1. Mô tả các hạng mục product backog
2. Trình tự của các hạng mục trong product backlog để đạt được mục đích và hoàn thành các nhiệm vụ
3. Đảm bảo cho product backlog là luôn hiện hữu, thông suốt và rõ ràng tới tất cả mọi người và chỉ ra những gì mà Nhóm Scrum sẽ làm việc
4. Đảm bảo giá trị của các công việc nhóm phát triển
5. Đảm bảo cho nhóm phát triển hiểu rõ các hạng mục trong Product backlog với các mức độ cần thiết



Nhóm phát triển (Development Team)

- Gồm các chuyên gia làm việc để cho ra các phần tăng trưởng có thể phát hành được (potentially releasable) cuối mỗi sprint.
- Họ có các đặc Trưng sau:
1. Nhóm tự tổ chức, không ai (bao gồm Scrum Master) có quyền yêu cầu nhóm phát triển làm thế nào để chuyển product backlog thành các phần tăng trưởng có thể chuyển giao được
2. Nhóm liên chức năng, với tất cả các kỹ năng cần thiết để tạo ra phần tăng trưởng sản phẩm
3. Có kỹ năng chuyên biệt và các chuyên môn đặc thù, nhưng họ phải chịu trách nhiệm dưới một thể thống nhất là nhóm phát triển
4. Nhóm phát triển không chứa các nhóm con nào khác với các chức năng đặc thù như 'nhóm kiểm thử' hay 'phân tích nghiệp vụ'

Scrum Master

- Scrum Master chịu trách nhiệm đảm bảo mọi người hiểu và dùng được Scrum
- Scrum Master là một lãnh đạo, nhưng cũng là người phục vụ nhóm scrum. scrum master giúp đỡ những người ngoài nhóm scrum hiểu cách phải tương tác với nhóm sao cho hiệu quả nhất.
- Scrum Master giúp đỡ tất cả mọi người cải tiến các mối tương tác để tối đa hóa giá trị mà nhóm Scrum tạo ra

Câu hỏi:
1. Scrum Master giúp đỡ gì cho Product Owner?
- Tìm kiếm các kỹ thuật để quản lý hiệu quả Product Backlog
- Giao tiếp tích cực với nhóm phát triển về tầm nhìn, mục đích và các hạng của Product Backlog
- Huấn luyện cho nhóm Phát triển cách tạo ra các hạng mục Product backlog thật rõ ràng và đơn giản
- Hiểu rõ việc lập kế hoạch dài hạn sản phẩm trong môi trường thực nghiệm

2. Scrum Master phục vụ gì cho nhóm Phát Triển?
- Huấn luyện nhóm Phát triển cách tự tổ chức và làm việc cross-team
- Giúp đỡ nhóm tạo ra sản phẩm có giá trị cao
- Gỡ bỏ các khó khăn trong quá trình làm việc
- Huấn luyện nhóm hiểu rõ và ứng dụng đầy đủ về Scrum

3. Scrum Master phục vụ gì cho Tổ Chức?
- Lãnh đạo và huấn luyện tổ chức trong việc áp dụng Scrum
- Lập kế hoach
- Làm việc với các Scrum Master khác để gia tăng hiệu quả của việc áp dụng Scrum trong tổ chức của minh.

=> Các nhóm (self-organizing) và liên chức năng (cross-functional). Các nhóm tự quản tự mình chọn cách thức tốt nhất để hoàn thành công việc của họ, chứ không bị chỉ đạo bởi ai đó bên ngoài nhóm. Các nhóm liên chức năng có đủ kỹ năng cần thiết để hoàn thành công việc mà không phụ thuộc vào bất kỳ người nào khác.

Sự kiện Scrum

Sprint

- Trong suốt quá trình Sprint không cho phép bất kỳ sự thay đổi nào ảnh hưởng đến mục tiêu Sprint Goal
- Thành viên nhóm Phát triển được giữ nguyên
- Mục tiêu chất lượng không được cắt giảm
- Phạm vi có thể được làm rõ và tái thương lượng giữa Product Owner và Nhóm Phát triển

Họp kế hoạch Sprint

- Mục tiêu của Sprint là gì?
- Sprint này phải chuyển giao cho ai
- Làm sao để đạt được điều đó


Họp Scrum hằng ngày

- Tôi đã làm những gì kể từ hôm qua để giúp Nhóm phát triển đạt được mục tiêu Sprint
- Tôi sẽ làm những gì hôm nay để giúp Nhóm phát triển đạt mục tiêu Sprint
- Tôi có nhìn thấy vấn đề gì cản trở nhóm phát triển đạt mục tiêu Sprint?

Sơ Kết Sprint

- Product Owner xác nhận phần nào hoàn thành và phần nào chưa hoàn thành
- Nhóm phát triển thảo luận những điều thuận lợi trong Sprint vừa qua và những khó khăn mà nhóm đã trải qua, cách thức giải quyết các vấn đề đó
- Toàn nhóm thảo luận về những gì sẽ làm

Cải tiến Sprint

Mục đích

- Kiểm tra lại tất cả các yếu tố trong Sprint vừa diễn ra, từ con người, quy trình và công cụ
- Sắp xếp lại các hạng mục chủ chốt đã thực hiện tốt và cải tiến
- Tạo ra một kế hoạch để triển khai các cải tiến cách thức làm việc

Product Backlog

- Liệt kê các tính năng, chức năng, yêu cầu, cải thiện, vá lỗi cần thiết để làm nên sản phẩm trong tương lai

Thank you for reading this post. I hope you found it helpful and easy to follow. If you have any feedback or questions about An Introduction to "Scrum Process in Software Development": A Comprehensive Overview , please share them in the comments below. I would love to hear from you and discuss this topic further
✋✋✋✋  Webzone Tech Tips Zidane, all things tech tips web development  - I am Zidane, See you next time soon ✋✋✋✋

🙇🏼🙇🏼 We Appreciate Your Comments and Suggestions - Webzone, all things Tech Tips web development
Popular Webzone Tech Tips topic maybe you will be like it - by Webzone Tech Tips - Zidane
As a student, I found Blogspot very useful when I joined in 2014. I have been a developer for years . To give back and share what I learned, I started Webzone, a blog with tech tips. You can also search for tech tips zidane on Google and find my helpful posts. Love you all,

I am glad you visited my blog. I hope you find it useful for learning tech tips and webzone tricks. If you have any technical issues, feel free to browse my posts and see if they can help you solve them. You can also leave a comment or contact me if you need more assistance. Here is my blog address: https://learn-tech-tips.blogspot.com.

My blog where I share my passion for web development, webzone design, and tech tips. You will find tutorials on how to build websites from scratch, using hot trends frameworks like nestjs, nextjs, cakephp, devops, docker, and more. You will also learn how to fix common bugs on development, like a mini stackoverflow. Plus, you will discover how to easily learn programming languages such as PHP (CAKEPHP, LARAVEL), C#, C++, Web(HTML, CSS, javascript), and other useful things like Office (Excel, Photoshop). I hope you enjoy my blog and find it helpful for your projects. :)

Thanks and Best Regards!
Follow me on Tiktok @learntechtips and send me a direct message. I will be happy to chat with you.
Webzone - Zidane (huuvi168@gmail.com)
I'm developer, I like code, I like to learn new technology and want to be friend with people for learn each other
I'm a developer who loves coding, learning new technologies, and making friends with people who share the same passion. I have been a full stack developer since 2015, with more than years of experience in web development.
Copyright @2022(November) Version 1.0.0 - By Webzone, all things Tech Tips for Web Development Zidane
https://learn-tech-tips.blogspot.com