empirical process, Empirical Process Control

Empirical Process Control In Scrum

Empirical Process Control

Empirical Process Control

It is often said that Scram is an Empirical Process, so the question is whether it is true and if so, what does it really mean?

Empirical

This means that information is collected by viewing, experiencing or using the experiment.

Empirical Process

Is used to handle processes that are complex and are not very well understood.

So let’s see how it is defined.

An Empirical Process Control is seen as a black box and you have evaluated it and done it in output. This is done to define the checkpoints which should be on the predefined points.

So what do we have in the scrum?

We have sprints in the form of a black box, in the sense that the work that is done in Sprint should not be interrupted. We have backlog items which have not been initialized as input and have lost the backlog items in the form of output.

In the form of checkpoints in Scrum we have daily scripts, sprint planning meetings, sprint review meetings and sprint retrospective. Since each sprinting is boxed on time, the checkpoints are always at a predetermined time. Inspection is done at each checkpoint so that you can optimize the Empirical Process with information collected through observation, experience and experimentation.

Another important aspect of an Empirical Process is that the process model (which we work) comes directly from input and output data. So how to work out from the outside process, there should be no possibility of changing it. This is the reason that we do not add more backlog items in Sprint compared to the previous sprint, which proves that we can do this even though it is coming from high management. We need to be truthful and protect the scrum Empirical Process Control.

So now we know that the Scrum is an Empirical Process, but why is it so good? Why not use the defined process? It is very much estimated.

In order to answer this question, we need to look a bit deeper about what is facing the system while developing the system and what is the defined process.

Empirical Defined Process

A defined process has been taken from the first principles, which means science has to follow the rules of nature and other fundamental and well-defined laws.

A more understandable description was made by Ken Schwaber in Agile Software Development with Scrum.

“The defined Empirical Process Control model requires that every piece of work be fully understood. Given a well-defined set of input, each time the same output is produced. A defined process can be started and can be allowed to run till completion, with the same result every time. ”

This is theoretical truth but there will be a variance in the real world but will be held till a minimum. There is no need for feedback because you will always know what to do next.

So here is the variance of Ken Schwaber definition.

“A defined process is a quantity of tightly coupled steps where the output from one stage is input to the next stage and where no overview or evaluation of the process is done for the reaction. Once started, a defined process will run till the end of the stairs. The output should always be the same from the defined process or there should be a slight variance with the input similar to the process. ”

The Empirical Process can be very complicated but it needs to be well understood before execution.

It is typical for a “waterfall” like the process, where everything needs to be defined in the beginning and then you follow a cookbook such as the recipe and you should get a desired result. Therefore, if system development should fit in this process, then it should be highly anticipated, non-constructive and should not demand any ideas during the execution phase in Empirical Process Control.

It’s not that I or many of my colleagues think about system development. For us it is a highly creative and intellectual process that demands a higher level of thinking. We should expect unexpected and be able to take action on it in a complex environment.

Complexity in system development often happens with 3 key areas, needs, technology and people.

– Requirements are often not understood very well, they are transmitted badly and disappear.

– In a system development project we are working with at least 10 different techniques and it is in a small or medium sized project. For example: A bunch of Java, JavaScript (and other scripting languages), XML, SQL, XSLT, JSP, Spring, Web Services, Schema, Maven and other frameworks that we need to meet our needs.

And the people who can change anything in the other two, it means that we have very unpredictable complexity.

So a waterfall like this process is not good for the development of the system, but what about all the other repetition processes that are out there? Should not they work with scams?

To answer that question, we have to look at each of this Empirical Process and see if this is a Most Agile Processes.

Advertisements
Standard
empirical process, Empirical Process Control

How Empirical Process is controlled in Scrum Project?

Empirical Process Control

Generally, in the Scrum method of project management, decisions are taken based on observation and experimentation. There are three main ideas behind the application of Empirical Process: Transparency, inspection and adaptation.

  1. Transparency: It includes all the facets of Scrum process to be observed by everyone whosoever is interested to do so. This promotes an easy and transparent flow of information in the entire organization. This leads to open work culture. Transparency is measured through:
  1. Artifacts: Vision statement of the project, prioritized product backlog and planning schedule.
  1. Meetings: Regular standup meetings and Sprint review meetings.
  1. Information Radiators: Burndown charts and scrum boards.

After the transparency is measured, it is then inspected in the Scrum project using:

  1.     B) Inspection: It is revealed in Scrum through:
  • Use of a unique scrum board and other related scrum information radiators.
  • Collection of feedback from the customer and other stakeholders during the develop Epic and carry out release planning processes.
  • Inspection and approval of project deliverables by the Scrum Master and product owners and the customer in demonstrate and validate sprint scrum process.

 

  1. C) Adaptation: This happens as the Scrum core team and the stakeholders master the art through transparency. Inspect it and then adapt by making any required changes as well as improvements in the work they are doing.

The changes must match the project requirements and once these are done. One can see adaptation changes in the following ways:

  • Stand up meetings
  • Identifying constant risks
  • Changing the requests
  • Scrum Guidance
  • Check the sprint meeting
  • Check the project meeting

In this way, the entire Empirical Process is controlled in the Scrum project. These three factors determine the success of the entire process in the Scrum project. This is the unique feature of Scrum that makes it different from other scrum projects.

It is nothing but a creation of small sample of the product to check the end results. Empirical Process is an important part because in Scrum, product development is significant and with too many variations in the product groups, there’s a set of defined formulas for the entire process.

In order to support the entire process, it emphasizes on principles such as transparency and self managing teams. Appropriate process is required to generate transparency, inspection and adaptation cycle which is at the heart of Empirical Process.

The main aim of Scrum is to maintain transparency and emphasize on inspect adapt cycle so that groups can continuously enhance their own ways of working. These Scrum practices and Project structure make it easy to start. However, for some reasons, these are incomplete so that groups have space for learning for every situation and adaptation required in complex domains such as product development.

In a nutshell:

Do you feel Empirical Process is maintained properly in your organization in Scrum? If yes, it’s great. If no, find out what’s missing among the three factors. Make sure to cross check everything and then fix the issues to let the scrum process run smoothly.

To know more about Scrum and its Empirical Process, Lean Agile Training is here for you.

Standard