Scrum Practice in Project Management)

Source: Internet
Author: User

PS: This is a proposition essay I wrote at HP. e is not good. Please forgive me.

Abstract


Scrum is an iterative incremental process of software development
Commonly used with agile software development. Especially, SCRUM will
Help us to manage the project more efficiently because it is
Adaptive process. However, applying the SCRUM methodology shocould depend
On the different situation during the process of project development.
It's a big issue to solve. This article gives an example to elaborate
How to manage the project with scrum.

Introduction

Software development is a complex endeavor. So the most difficult
Problem is how to handle the complexity through by the science
Project management. extends scientists and software engineers raised
Great number of methodologies for project management such as Waterfall,
Up and agile. In contrast to the heavy methodologies including
Waterfall and up, agile is enough flexible to embrace the change, more
Light to be mastered by project team members, and more focuses on
Communication and release of the usable software rapidly. agile
Methodologies include extreme programming, scrum, feature driven
Development and crystal etc.

Scrum was raised by hirotaka Takeuchi and ikujiro nonaka in 1986. The skeleton is shown in Figure 1.

 

Figure 1

The lower circle represents an iteration of development activities that
Occur one after another. In scrum, it was called sprint. Each sprint is
An iteration of 30 consecutive calendar days. The output of each Sprint
Is an increment of product. The upper circle represents the daily
Inspection that occurs during the sprint, in which the individual team
Members meet to inspect each others 'activities and make appropriate
Adaptations.

There are three roles in Scrum including ScrumMaster, Product Owner and
Team. The ScrumMaster is responsible for the Scrum process,
Teaching Scrum to everyone involved in the project, for implementing
Scrum and ensuring that everyone follows Scrum rules and practices.
Product Owner is responsible for representing the interest
Stakeholders and creating the project's initial overall requirement
Which was called the Product Backlog, for using the Product Backlog
Ensure that the most valuable functionality is produces first and built
Upon. The team is responsible for developing functionality. Teams are
Self-managing, self-organizing, and cross-functional, and they are
Responsible for figuring out how to return Product Backlog into
Increment of functionality within an iteration and managing their own
Work to do so.

Problem Statement

Without doubt, Scrum is one of most popular agile methodologies now.
It, however, is not easy to apply it to project management. Considering
About the following situations please:
1. If the culture of your organization is contradictious with Scrum,
And your leader always interrupts you during the process of project
Development, what shoshould you do?
2. If your team members are not familiar with Scrum, and they don't understand the heart and rules of Scrum, what should you do?
3. Furthermore if your team members didn't master the basic skills
Agile developing such as pair programming, Test Driven Development etc,
What should you do?
4. If your MERs always change their requirement, they are not clear what they want even, what shoshould you do?

Our Solution

In fact, we can't find out the "Silver Bullet" to solve these problems.
We know Scrum is an adaptive process. Scrum makes used rules which
Shocould be followed, but not hidebound. It's agile and flexible. It
Allows us to adjust the way to achieve the goal of project.

The answer to the first question is operating within the culture of
Organization. Don't fight against the culture of your company. If you
Are ScrumMaster, you 'd better walk a fine line between
Organization's need to make changes as quickly as possible and its
Limited tolerance for change. You can adopt Scrum by starting small.
The same time, you shocould try your best to persuade your leader
Support you. Sometimes your leader will build the bridge between
Agile world and non-agile for you. Of course, it needs change,
These changes must be culturally acceptable. If not, you must
Acquiesce. The ScrumMaster is a sheepdog of the team, and his job is
Protect the team from impediments during the Sprint. Remember that
Precondition of which everything is going on well is that the sheepdog
Cannot be dead. After all, Scrum is the art of the possible.

Right, we hope our team members are all software craftsman so that
Everything is OK. Unfortunately, the real world is not as good as that
We recommend CT. In fact, the situation in which most of team members are all
Apprentices is more common. It is true that it is difficult to hire
Experienced software engineer in this industry. So the problem we must
Solve is how to train them. We shocould draw up a training plan. Before
It, we must understand the skill set of everybody. We need to assign
The mentors to the fresh guys. Of course, the best way of training is
Practice. We shocould assign the task to them according to their ability.
At the same time, we have to add the task duration because they are not
Familiar with the related skills. Besides, Pair programming is a good
Way to handle it.

The great character of Scrum is enough flexible to embrace the change.
Scrum is an iterative and incremental process. The iteration is very
Short (30 days) so that we can change our plan in time. The incremental
Development will provide the good policy to submit the release rapidly.
The increment product can give our MERs confidence. And
Customers can understand the difference between what they want and what
We provide though by the running software. Scrum emphasis on
Communication between the team and MERs. Product Owner of Scrum is
Responsible for communicating with the MERs and creating
Product backlog. In case the customers changed their requirements,
Product Owner will discuss with ScrumMaster and Team. If the change is
Acceptable, it is added into the product backlog. If the change is
Within the sprint which the team is developing, the sprint has to halt,
And re-open the new sprint. Beside, the daily scrum will help each team
Member understand the current statue of the project, and the sprint
Review meeting will show the result of the sprint to the MERs in
Order to get the feedback from the customers, the sprint broadcast spection
Meeting will prompt the Scrum process framework and practices.

Evition that the Solution Works

Now we complete the first sprint of the project on time. In a month, we
Went through the whole lifecycle of the software development from
Requirement analysis to designing, coding and testing. Each member is
Familiar with the Scrum gradually. Everything is going on well such
Daily Scrum, Team Work and Sprint Development. In the end of this
Sprint, we submit the increment product to our MERs and get
Feedback from the customers. The most important achievement is that our
Customers approve our approach to develop the product.

Competitive Approaches

We don't follow the rule of Agile Methodology strictly. For instance,
Most of team members are accustomed to the TDD (test driven
Development), so we adopt the traditional way to design and develop
Software such as use case driven development instead of TDD. But we
Require everybody must write the test case for classes and components.
We organize the Pair Programming Group to prompt each other.

Because our customers are off-site, so we require our product owner
Must be in-site and cooperate with them in full time. We create
Communication schedule for the MERs to understand the customers'
Requirement. The product owner is empowered to handle everything
Requirement.

Especially, the ScrumMaster of our project protects the team from
Rest of the non-agile world. We get the enough resources and backup.
For example, we have our own agile coach to direct how to apply
Scrum to our project. He can help us to solve the key problem when we
Are confused of Scrum Methodology.

Current Status

The project is going on well. The first sprint is very successful. Team
Members are all confidence. They regard the Scrum as the valid tive and
Enjoyable process. The customers are satisfied with our process. Most
Of risks had already solved because we emphasis on them and add them
The tasks into the sprint backlog.

Next Steps

Next month, we are going to hold the Sprint into spective meeting
Find out the existed problems in the first sprint. Then we will create
The backlog for next sprint. In this sprint, we will develop the most
Important domain module and let it workable.

Conclusions

Scrum is an excellent agile methodology to release the software product
Rapidly and correctly. It gives all team members the new management
Responsibilities. The process of the project management is visible and
Controllable. The ScrumMaster and Product Owner don't need to write
Redundant documents ents and draw up the unrealistic project plan. The team
Members become more active due to self-organizing and self-managing.

References
1. Agile Project Management with Scrum, Ken Schwaber
2. Software Craftsmanship, Pete McBreen
3. Applying UML And Patterns, Craig Larman

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.