Lean Management strategy for development in software companies with Scrum and Kanban

Lean Management strategy for development in software companies with Scrum and Kanban

Lean thinking is a set of Agile ideas and practices, including Kaizen that can be successfully applied in software companies today. Lean, Agile, and Kaizen are terms derived from manufacturing companies in the past.

Toyota Corporation is the most famous company that uses processes such as Kanban and today’s Scrum, which are directly related to Lean thinking and Agile production methods. Reference: “What are Lean thinking and MVP in Agile”, (BVOP.org 2019), https://bvop.org/learnagile/lean-mvp/ Today, software development companies around the world are trying to apply these management principles and ideas.

In this report, we present an example of creating a strategy for overall workflow management.

Creating a Lean Management Strategy in a Software Company

Before I start with the assignment, I want to tell you a little bit about how my software company introduced Lean and Agile management processes. I think it will help me make sense of what I have learned.
My company (agency to the ministry, public sector, I’m in the IT department) introduced Lean as a logical step after the introduction of the Agile way of working. For me, this was strange because I didn’t see the connection between Scrum and Lean – I thought they were two different (maybe complementary, but still different) ways of working. I thought they made us use them to judge which one was ‘better’ and finally choose one of them.
I later realized that Lean was just a ‘way of thinking’, just a philosophy. Like Kaizen. I see that in the lecture you also mention Lean, Kaizen (and finally Kanban) in one place – obviously things are connected in some way. Now I find the connection in what my organization has been trying to do – Lean is not something ‘separate’, just for itself. Lean can be introduced and used in conjunction with the basic Agile method the organization has chosen. Lean simply contributes to the more efficient (I’ll explain later what I mean by efficient) production (of the IT product we’re developing).

What did we do? We are divided into teams. As part of the IT department, I receive my assignments from the business. The business, or more precisely the person in charge of the organization, (here things are a bit blurred in terms of organizational structure and who is responsible for what, but this is not important) writes the assignment (creates a task in TFS, backlog item). In TFS we had the opportunity to see things in the form of a Kanban board, and in the form of a Scrum board with sprints, tasks, etc. Reference: “What is Kanban methodology”, (2020 Wikipedia Lab), https://wikipedia-lab.org/what-is-kanban-methodology/

Estimation in Agile and Waterfall project management

Lean was introduced to start estimating these tasks. It is still a bit unclear to me why estimation is associated with Lean (estimation is a major task in any methodology, both in Agile and Waterfall, Reference: “Agile vs Waterfall: The Difference Between Methodologies”, author: Samantha Rhine, 2020 (BUSINESSPAD.ORG), https://www.businesspad.org/agile-vs-waterfall-difference-between-methodologies/). The idea of ​​the estimation was (and hence the main goal) that we had to keep track of how many hours we used for the task in question, whether the initial estimate was correct, the focus was to ‘learn to give a correct estimate’. We also used most of our time to keep track of how many times we were ‘distracted’ (because a colleague came with a question, lunchtime, a toilet, a mid-day meeting, etc.). We had to kind of keep statistics on how many times and for how long (hours and minutes) we shift our focus. The important thing was that it was difficult to ‘go back’ to what you were doing before they distracted you, that you needed time to focus on your task again.

Lean board

The other thing that was introduced was the Lean board. Reference: “Lean and Agile software development”, mpmu.org, 2020, https://mpmu.org/lean-and-agile-software-development/ We took all the tasks from the Kanban visualization in TFS and simply rearranged them into another structure – it was important to mark which tasks were Stuck or On hold. The goal was to have less stuck and on hold.
The problem in the whole thing – at least for me is that:
we’ve been wasting a hell of a lot of time discussing why the estimate is the way it is. It’s often just because I’m missing something as a developer – something the business hasn’t taken care of to provide or order. The discussions did not lead to significant changes …
we wasted a lot of time in ‘statistics’ in which I saw no point. To record when a person interrupted me and when we were ready to talk – it was all a bit manually … we recorded in Excel.
we had to rearrange our whole day – this is OK for me, the problem is that it is a bit unrealistic for our organization… The rearrangement consisted in the fact that we had to implement the so-called silent time, focus hours – hours in which you could not request or schedule meetings with other people. The point, however, is that previously the different departments had different other meetings (department by department) and they adjusted these focus hours only to their own plans already made. If their silent hours were from say 10 to 14, then mine was from 9 to 13. And so suddenly it became almost impossible to arrange a meeting with someone. People at 16 left, they have, say, an hour and 300 people want to make an appointment with them at that one hour.

Did we understand Lean’s idea?

I understand Lean’s idea, but it seemed like all of a sudden it was turning – not in my favor about my image and my team – we were suddenly looking for reasons for a problem in my work or my team’s work when it was obvious that things were ‘clogging up’. for reasons beyond my control. So for me, it was a huge waste of time on unnecessary things. We were trying to improve something that didn’t need improvement.
the whole thing didn’t lead to significant visible results, at least for me. Someone just enjoyed discussing estimates and making an elephant out of a fly. I didn’t see an innovative (smart) solution to the tasks, there was no room to talk about whether things couldn’t be done better, things just had to be done just-in-time … The way they were set.

Lean focuses on 2 topics

to the team and its work – how to reduce waste and unnecessary work and how to produce the right product just-in-time. By the right product, I mean the right amount of product (reduction of overproduction). The aim is to meet the demand by delivering the optimal amount of production. Just-in-time – just when you need it, just when the customer will have to use this product (not store it).

To meet the needs of the client – the client is always right. Creating value (business value) for the client, some idealized perfection.

What problems do I see in Lean

(Except for the ones I mentioned in the prelude with my own experience – I don’t know if these are real problems or I just don’t understand something)
Lack of innovation. Lean suggests that the flow of production must be smooth, synchronous, and timely – this requires both a certain qualification that workers are supposed to already have and the necessary tools (software, tools, machines). When these things are there, the only thing left is just to get the job done. It seems to me that not so much attention is paid to how to make things better in the sense of ‘do we need these machines, or can we avoid them if we do this instead, instead’. There is no room for expression and it does not lead to creative thinking.
Lack of career development – it may be a bit distant, but I think it is quite related to the above. You are there to do this, with these machines and in the exact prescribed way (SOP – according to a certain already written specification). We will teach you how to do it, then you just have to be here and do it mechanically.
Much of the literature describes it as a ‘cheap’ way to make things better. Cheap because it relies on the team and the resources it currently has. There is no emphasis on additional training, replacement with newer machines if the machines are old, the introduction of new technologies to keep the production up to date … That is why I think that it adds water to the career development of each participant.

Proper implementation

Lean requires its proper implementation. Not all of the above is necessarily negative and undesirable, but if Lean completely disrupts production, then it is not appropriate – or at least should not become a major ideology. Example of production breakdown:

A specific machine is needed to be able to deliver the product just-in-time. The machine has been bought, but the cables are too short to put where they need to be – either we will have to rearrange the production line and be patient for the staff to get used to it, or we will have to buy longer cables. , but maybe the connectors won’t fit the ones we have? What if I buy cables that are too long? Do we risk physical injuries to staff? The example is quite simple and funny, but the idea is that if there is any innovation – whether, in the form of a machine or software or a process, it must be pre-specified, analyzed, and calculated exactly how much it will help or maybe will interfere with the work process. Exactly how much this change is needed and whether it will lead to the risk that everything else will have to be rearranged and rearranged. But let’s also emphasize that the machine should not be too good because we do not strive for overproduction. We strive for a 1 to 1 request for supply, in the right place and in the right quantity.

Reducing movement – one of the main goals of Lean. Movement should be understood quite broadly here, but a simple example. We have a person who will help us with improving the security of banking transactions – a functionality that our application has. The person is very busy and constantly in meetings, he is also a consultant and is hired from outside to help us. I am on the 1st floor of the building, it is on the 5th. He doesn’t read emails and doesn’t answer calls because he’s constantly in meetings. Maybe my only option is to try to physically meet him somewhere in the corridors with the 5 minutes between his meetings? But yes, I forgot that we don’t have an elevator … 5 minutes up the floors, 5 minutes down, and he’s only outside for 5 minutes … shouldn’t I get on earlier if he comes out earlier and waiting at the door?

The movement can also be considered as – a product is developed, moved to a test environment, tested (2-3 types of the test) in them, moved on to Production. Employee X has ordered this functionality, but he does not understand any of this work. He ordered it because his colleague Y, who is actually responsible for it, does not have access to TFS. However, as a developer, I don’t know that and I think X is the person I should ask if I have any questions. I send an email to X, he tells me it’s not him, but he will forward the email to Y (not even to Y, but to ‘his colleague who does this’, he doesn’t tell me who). He forwards the email without putting a CC on it. Y answers, but not to me, but to H. X gets sick and I get the answer after XX number of days… This is an example of the unnecessary unraveling of things and the involvement of countless people in something that can be solved so easily. If X had access to TFS and ordered things as prescribed.

The manager did not do his job

The manager was our problem. The bottleneck effect is when a person is responsible for too many things and ‘fails’. People sit and wait for him to ‘get to their problem/task’.

different needs of the organization – some drive with Lean, but others want to ‘test’ some issues 6 months in advance to know what to order and what they need. To be tested, it must be developed. I’m working on the things that are coming to Production after a while, but I have to take the time to develop this test. However, it is not a real product that goes into Production, does not create business value for the customer, because the customer has not seen it and has not tried to use it. It only creates business value for those who order it – so that they understand what they want, to ‘learn’. What if they ordered something wrong? In 2 days they will want me to redo it because it is not what they thought it was. I will redo it, but it will still be a test. Again, it does not create value for the client but takes away from my time (and theirs!). ignorance of the system you are working with, or the machines, as well as the unfamiliarity with this ideal goal, the ideal product that the end customer is looking for, is an obstacle.

Build a Lean Strategy

Let’s start with our Lean strategy. Let’s assume that the company is engaged in the production of the innovative washing machine from the previous task.

We have 30 workers – Five of them are specialists because they participated in the development of the prototype. Five to managers of different levels. 5 of them are administrative or service personnel. 10 of them are those who will actually produce the washing machines. 5 are those who deal with software development. We also have separate suppliers of materials.

Physically, I imagine having a large hall with all the machines – arranged so that the transfer and transmission from one process to another are logical. No scattered tools and long cables on the ground, the floor is clean. Workers are secured with all tools – close to them. But only what they need for this phase and this process. High-level security – relative hanging cables or towers, helmets, comfortable non-slip shoes. Clean clothes, suitable for the season and the temperature in the hall. Sanitary facilities at a tolerable distance from them so that they do not interfere with the production line, but are not too far away. Sufficient lighting and ventilation of the hall. People need to be in the right places, not to interfere with each other, to have the right tools and documents right at the moment they are supposed to need them.

There will be some kind of control – or meetings every morning so that there can be a general idea of ​​where we are and if anyone has a problem. It will be recommended that problems be solved when they arise, but this should not interfere with others. it is not recommended to be every 5 minutes and the whole process should be stopped. Specialists are helpful. They can go around at certain times of the day and possibly help with understanding the specifications and so on.

The role of managers

Managers – they sit on the second floor of the hall in the offices. As far as I read, Lean presupposes the constant involvement of managers of all levels in everyday problems. I guess the CEO doesn’t attend every meeting every day, but let’s say there will be some kind of lower-level managers at these morning meetings – so that the manager can function as a liaison to the top management if there are any problems and can monitor the development of the project. The issues to be discussed are related to the quality, possible delays, and explanations of the SOP if anyone needs it. As well as getting the right machines or supplies.
If there is a new machine or process, it is the turn of specialists to show how things are done in a joint meeting with all workers. Then they just have to repeat what they saw.

Managers monitor the balance in production and demand – we said that there should be no overproduction, but everything should be on time and in the required quantity.
Workers improve in each movement, watching for synchronization between the different ‘rings’ of the chain. They learn from each other. They are not in a hurry and do not rush, they do things with consciousness and a look at the quality of the final product. In case of problems and absences, they turn to the managers, but not in such a way that they suddenly stop everything and hinder the others in the chain.

After the last worker in the chain has completed his task, the product is taken from the factory and transported to the end-user.

What it takes to make Lean work

Clear and legible instructions

People with the right qualifications

Gather all the information about the task before the development process has started. Getting to know the details from the very beginning

Segment the work into fewer tasks, develop and test them separately

Empiricism – scheduling deadlines and budgets based on one’s own experience of past projects or projects of comparable competitors, rather than general theories. Scrum is a good example. Kanban also welcomes empiricism.

Interaction and discipline. Again, let’s quote Kanban and the Scrum framework.

Change in the culture of work – striving for improvement

The implementation of Lean will start with the management. Management will find that there is a problem and that the customer is not happy with what he receives. He will embrace the idea that the production line and processes need to be improved and will want to invest in machines to help workers. An analysis of the client’s wishes and an attempt to implement a solution will follow – through new machines. An open discussion with the workers is important – clarifying the goals of this ‘change’ and a desire to work together, imposing the idea of ​​Kaizen to strive for better, the repayment will be customer satisfaction and a desire to continue contracts and production (compliance) employment of each employee). Raising the company’s image through fast, accurate, and timely delivery of a quality product. Imposing the idea that the processes will be improved by JOINT work, not the work of each team in isolation.

References

“20 Keys to Workplace Improvement (Manufacturing & Production) explained with examples and strategies”

The 20 Keys to Workplace Improvement (Manufacturing & Production) is a popular Kaizen term referring…, https://phron.org/20-keys-to-workplace-improvement-manufacturing-production-explained-with-examples-and-strategies/

“Scrum Development Team Questions and Answers”

Our Scrum Master Amanda Jefferson answers questions about the Development Team responsibilities, work, and…, https://projectmanagers.joomla.com/10-scrum-development-team-faq.html

“Kaizen and the 20 keys to workplace improvement (of Iwao Kobayashi): Real Examples”

The 20 Keys to Workplace Improvement is popular with Kaizen teachings and the entire Agile community…, https://ossalumni.org/kaizen-and-the-20-keys-to-workplace-improvement-of-iwao-kobayashi-real-examples/

“Kaizen strategy for the Scrum Master role”, author: Anton Radev, 2020

А Kaizen strategy is important for any Agile organization and every Scrum Master…, https://managementeducationinc.wordpress.com/2020/09/19/kaizen-strategy-for-the-scrum-master-role/

“Transparency in Scrum teams and Agile organizations” by William Anderson, 2020, (Scrum Time ISSN 2652-5445), https://scrumtime.org/transparency-in-scrum-teams-and-agile-organizations/

“The Kaizen 20 Keys to Workplace Improvement Explained with examples”, author: Stephen Jones, (Agile Programming, ISSN 2652-5925, Australia)

In Kaizen’s methodology, the 20 Keys to Workplace Improvement are popular but very abstract topic…, https://agileprogramming.org/kaizen-20-keys-to-workplace-explained-examples/

“What is Kaizen methodology”

Kaizen (改善, jap. Kai Change, zen for the better), change for the better is a Japanese word for a philosophy of life and work…, https://medfd.org/what-is-kaizen-methodology/

“Modern Kaizen principles and keys to workforce optimization”

The 20 Kaizen Keys to workforce optimization are an interesting topic in today’s Agile society but…, https://www.vbprojects.org/modern-kaizen-principles-and-keys-to-workforce-optimization/

“Build an Agile Kaizen strategy and methodology with 20 keys to workplace improvement” by George Brown, 2020

Creating a Kaizen strategy in modern Agile organizations is entirely possible with Professor…, https://projectmanagers.edublogs.org/2020/09/12/kaizen-strategy-and-methodology-keys-workplace-improvement/

“What is Scrum and Scrum Master”

Scrum is a new approach in the work of organizations that helps people, teams, and organizations to generate…, https://managementwire.wordpress.com/2020/12/18/what-is-scrum-and-scrum-master/

“20 Agile Kaizen keys to workplace improvement”

Kaizen is old Agile teaching aimed at optimizing work processes and the work of both managers and…, https://www.libraryofmu.org/20-agile-kaizen-keys-to-workplace-improvement/

“Kaizen: 20 Keys to Workplace Improvement explained with examples”, Author: Joshua Moore (PM.MBA 2020)

In the 1990s, Professor Iwao Kobayashi announced his work 20 Keys to…, https://pm.mba/posts/kaizen-20-keys-to-workplace-improvement-examples/

Possible problems

The problems I have encountered in my organization and others I have read about in the literature emphasize the lack of innovation. This is a difficult problem to solve, but if the organization does not have to be innovative, if it is not required by the market, Lean is OK. Regarding the ‘self-confidence’ of the employees in such a company, I can say that it will depend on the image of the company as a whole, and not on the personal career development and achievements of each employee individually.
I gave an example with the washing machine company – I am aware that this is also applicable to IT products and even food production – in any factory or workshop. In any bank branch or store. Lean is quite smart – it would definitely give fruitful results, but I think it depends too much on building a vision and culture and assessing the desire to achieve something. He relies too much on personal qualities – to strive for something, to believe in something, to finish details. Very often this is just next to the person. If the culture of the organization is not such that it can directly influence the worldview of each employee, then Lean was difficult to implement.
It is also important that Lean is not needed everywhere. There are things, production processes, or IT processes that can’t get better and don’t need to get better. Lean should be introduced where there is a need for improvement, not just because it sounds good. Not just because it goes hand in hand with any of the other methodologies. It’s just a philosophy – it’s not something that changes work, it’s a way of looking at your work from a different angle.

Author: Anton Radev

Front-End Web Developer

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website with WordPress.com
Get started
%d bloggers like this: