Scrum And Extreme Programming Concepts

Print   

02 Nov 2017

Disclaimer:
This essay has been written and submitted by students and is not an example of our work. Please click this link to view samples of our professional work witten by our professional essay writers. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of EssayCompany.

INTRODUCTION

Today a major challenge is being faced by developers and companies who are willing to implement the trending agile methodologies as they try to understand how can they implement the framework and make it work.

Every now and then agile practices are being used and they have become much popular. They are actually based on different sets of principles which are written by seventeen experts and now they are used in every part of the world by multiple companies. Essentially, agile practices are based on agile manifesto written in 2001. If we want to swe must understand The Agile Manifesto. It states that "individuals, and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and responding to change over following a plan". The group procedures which include Extreme Programming (XP), Scrum, Feature Driven Development (FDD), Dynamic System Development Methods (DSDM), Agile Unified Process (AUP) and Crystal Development are similar to those agile processes. Though, moving from traditional development procedures to agile practices is causing a lot troubles in the field of production industries. For moving towards agile practices it is crucial to bring changes in organizational structure, culture and physical settings. The conflicts of people, development process conflicts and business process prevent the top level management not to move towards agile practices. Through finding out the main importance of social action or applied sociology we can identify major organizational challenges, risk factors and other possible solutions for moving towards agile practices from traditional heavy-weight development procedures.

This paper is structured as follows: first section defines background history of software project management and its goal, second section clarify purpose to follow this methodology which leads towards the basic knowledge of agile framework and its procedure proceeding with the information about scrum in section three and its different types followed towards fourth section explain extreme programming and fifth section defines some grounded theory.

AIM OF THE RESEARCH

Focus of this research will be on problems faced when moving on to an agile framework as well as discussion on role played by the project manager in development of an agile project. The agile methodologies, which would be concentrated on, are XP and scrum. Proceeding with scrum and extreme programming (xp) method procedure and grounded theory applied behind these frameworks in the domain of software project management.

MOTIVATION

When mentioning the aim of the research some questions arise to one’s mind such as how will the project manager tackle change towards the agile framework? Is the role of the manager going to change accordingly?

Then on an organizational level, will organizations be willing to switch over to the agile framework? And how far does it go to implement this change?

AGILE FRAMEWORK

The agile approach to development relies on a repeated as well as a step-by-by approach which progressively accommodates changes as requirements are changing. The four basic principles of agile as defined by the agile manifesto are:

Individuals and interactions over process and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan.

The question arises that how different is agile development to the regular or traditional style of development.

In reality during development it is possible to receive requests for changes in requirements from the customer. If the traditional approach is considered, it discouraged to entertain those requests as it did not accommodate rapidly changing requirements however if it is seen in working it is unrealistic. On the other hand the agile style of development accommodates changes by applying an iterative style of development which easily allows change in iteration during the development of the project resulting in customer satisfaction. This made possible in iteration only specific function is worked upon.

SCRUM

Scrum is a software development framework to manage software projects and application development, which follows iterative and incremental agile process. Scrum aim on software development strategy where whole team follows holistic approach and complete project as a unit to reach common goal unlike traditional, sequential approach.

Jeff sutheland put forwarded the theory of scrum methodology in 1993, project management and development is its goal which covers the agile methodology. The scrum team is composed by:

TEAM

PRODUCT

SCRUM MASTER

TEAM, Team include software developer, it composed of 10 developers who only focus on the development of the project it has up to ten developers in which each member has a specific skill set. It’s not hard and fast that each member is banned from another task different from their expertise or not lies in their domain which leads towards the integrated and flexible team whose outcome is productive.

Product owner, This person knows scope of the project. He is the one who assure that what feature must exist in project and how should that feature works? , he defines the functional and non-functional requirement and during whole milestone of project product owner keep assist about his product, he knows the entire requirement and briefly explain each requirement in details. Product owner is generally client representative and help in the development of project where clients need is important.

Scrum master: scrum master is team leader who face hurdles, misunderstanding or difficulty of project, during whole project timeline. Hurdle is something which block your project or any dependency due to which your project is unable to proceed another aspect is misunderstanding or difficulty which says that if developer fails to understand the requirement by requirement analyst and develop project according to what developer understand which implies towards difficulty and appear as big issue, scrum master look over all this issue and mange accordingly. Let suppose, requests to perform activities not related to the project, problems in test server, difficulty with technology and unplanned requisites might leads towards hurdles and cause problem to the sprint.

This report compiles several pronged empirical research on scrum methodology

Methods which compile scrum agile method will be stated along with some branches and its integration concepts. To understand scrum methodology we first need to identify what applicable in scrum and what is not.

Projects that of adopted or are in the process of adopting scrum will be surveyed to identify which scrum practices or variants thereof, they have implemented and the perceived value of the method.

Factors affecting scrum adoption will be investigated

Scrum majorly focus on three practices and three roles which are following

Product Backlog

Sprint & its planning meetings & review

Daily scrum

Backlog sorting

There are even some other related practices which plays important essential role of scrum Master, Product owner and development team. People who perform these three roles the part of scrum team. Daily meeting of scrum are performed with the team members standing in front of the kanban, meeting is generally of 15 to 20 min maximum in which whole team discuss questions from team members, clearly assigned task to each team member and discuss that what they suppose to do and what were the hurdles face by the member so that next time team come up with cope up solution and try to implement them scrum master know the details and tries to eliminate them.

Product Backlog, Product backlog is list which contain list of functionality which clients wants in their product. It is the master list of all functional requirements which has to be there in product along with complete brief description, product importance in project its role, how that functionality must work and how much effort required to carry off that task or feature

[1] The final release model describes overall goal, highest priority items in product backlog, major risk and features and functionality that release model will contain. It conclude delivery date and cost. Backlog is a list of software requisites sorted according to their priority, and develop according to their importance.

Traditionally scrum backlog is consisting of following different types of items:

features

Bugs

Technical work

Knowledge acquisition

It is important for a scrum team to express features on the agile product backlog which must be in the form of user stories. [1]

Sprint, Sprint is one method of scrum agile software development, work is confined to regular and repeatable work cycle knows as sprint or iteration.

[2] Sprint begins with planning meeting during meeting it is finalize among product owner and developer that what work must be accomplished during the sprint. The developer approve according to their need and estimation time to fulfill specific task on the other hand product owner define clearly that what criteria must be met for the work to be approved and accepted. Scrum master mention the duration of sprint. Once teams is involve in discussion to get review that how many day one sprint must last all future sprint would be the same, generally sprint time period is 30days.[2]

Sprint review planning meeting is four to eight hour time boxed meeting for one month sprint and it has two parts: identify what has to be done in sprint and how developer team accomplishes number of tasks to increment during the sprint. In sprint planning meeting sprint backlog is maintain which consist of task list, estimation and assignment for sprint.

The sprint retrospective meeting is three hour meeting after review meeting in which team discuss that what went well in last sprint and can be modify and improve in next sprint

Once the sprint starts now project owner must sit behind and observe, team sets stand up meeting on each start of the day to discuss progress of project and brainstorm over the issues or tasks or any related work to get the effective solution to challenges. Project owner may attend these short stand up meeting as an observer but not allowed to interrupt and ask for changes during sprint only scrum master has the power to interrupt or stop the sprint

In the end of each sprint, the team delivers the work to the project owner, project owners hold the right to accept or reject the sprint on the criteria of sprint backlog which build in sprint planning meeting

Daily Scrum, it is daily short meeting session where each spring goal and current position is being discussed and makes adaptation which optimizes next workday value during the meeting each team member explains:

"

What he or she has done since last daily scrum?

What he or she is going to do before the next daily scrum?

What obstacles are in his or her way?

"

EXTREME PROGRAMMING (XP)

XP is another agile methodology which is quite popular. It was created by Kent Beck. This is mostly targeted at small to medium sized projects.

The approach of this methodology is to focus on five key areas which are communication, simplicity, feedback, courage and respect.

The practices followed are simple design, 40-hour work week, and testing, collective ownership, coding standards, on-site customer and small releases. The requirements are obtained from the customer in the form of

‘user stories’. These are brief descriptions in the words of the customer on how he wants to use the product.

Progress is divided into iterations which contain fulfillment of specific requirements. In XP a working environment is set such that on each unit or module a pair of developers work on it, with maintaining a good speed of progress, performing tests on individual modules as well as integrated modules of the product. It is recommended that the customer is available at the time and place of development to provide feedback. Steps are taken to produce a high quality product by giving it a new touch and removing redundancies. The most important part, testing, is performed regularly to ensure the product is working as it should be so that the product is accepted. The documentation is not given much priority as the agile framework does not encourage it.

\



rev

Our Service Portfolio

jb

Want To Place An Order Quickly?

Then shoot us a message on Whatsapp, WeChat or Gmail. We are available 24/7 to assist you.

whatsapp

Do not panic, you are at the right place

jb

Visit Our essay writting help page to get all the details and guidence on availing our assiatance service.

Get 20% Discount, Now
£19 £14/ Per Page
14 days delivery time

Our writting assistance service is undoubtedly one of the most affordable writting assistance services and we have highly qualified professionls to help you with your work. So what are you waiting for, click below to order now.

Get An Instant Quote

ORDER TODAY!

Our experts are ready to assist you, call us to get a free quote or order now to get succeed in your academics writing.

Get a Free Quote Order Now