Lean developers are guided by the core values of Lean Thinking.
1. Eliminate losses
If the action does not improve the quality of the product, does not bring profit to the customer, and does not save the developer’s time, then it should be excluded.
2. Reinforce learning
To create a quality product, the team must constantly improve their knowledge and skills. And the leader is to provide the team with time and resources.
3. Make important decisions at the last moment
Sometimes a belated decision can ruin all the work done, but for Lean, delaying a decision until the last minute is a way to gather as much information as possible about the issue. So, to be sure of its correctness and to avoid mistakes.
4. Deliver value as early as possible
The sooner the team shows their work to the customer, the sooner they will receive feedback from them. Developers will be sure that everything is done the way the client wants, and will be able to change everything if necessary.
5. Unite employees
When a team works together and understands its value, the process goes faster and more efficiently. Therefore, it is important to trust employees and appreciate what they do.
6. Create a complete product
The team must focus on quality, avoid defects and always prioritize the needs of the customer.
7. Follow the overall process
For the work to go well, everyone on the team must understand the tasks and be able to constantly see the entire process. All project information must be available at all times. For these purposes, in flexible methodologies (Scrum, Kanban) they use a board where goals, tasks, and the process of their implementation are marked.
Types of waste in software development
1. Unfinished work
It may be written but unused code. Extra code is a waste of time.
2. Unnecessary functionality
Capabilities that are added to the software, but that are not used by the consumer, are not useful. The client needs only useful features.
If a developer started one project, and then he was transferred to another, you will have to delve into and collect information again. The same thing happens if a new developer appears in the project team. The whole process will start over.
The project or its parts are transferred from one hand to another. In this way, not only the project is transferred, but also the responsibility for it. As a result, teams lose control of the situation.
5. Switching between tasks
When one developer is working on two projects at the same time and constantly has to switch from one task to another, he loses more time than he could by working on one project.
If the team is constantly engaged in coordinating documents with the customer, it spends a lot of time and, as a result, misses the project deadlines.
The team must monitor the quality of the code even at the initial stages. If at the end of the work critical errors are found, then the project will have to start over.
7. How to create value the right way
Any business creates value: the products or services that the company sells. The value of the product is determined by the wishes of the consumer, and the task of Lean is to optimize the production process in such a way as to create value by reducing costs.
Lean manufacturing is a systematic approach, so the creation and sale of a product are considered as a single path of value from the supplier to the consumer. Comprehensive optimization of the way to create a product is called lean management.
Creating a product consists of different processes. The idea of Lean is to work only with useful ones and exclude unnecessary ones.
Processes that create value
This is all that leads to the desired result. Any process that helps make a product faster and better must be constantly improved.
Processes that do not create value
Everything that does not bring benefits: slows down work or has a bad effect on the quality of the product, does not bring value to the consumer. Such processes should be reduced to a minimum or eliminated completely.
For lean thinking, losses are unacceptable, so they need to be eliminated.
At its core, Lean is a business methodology that promotes the flow of value to the customer through two guiding tenets: continuous improvement and respect for people.
5 Principles of Lean Manufacturing
1. Define value
To better understand the first principle of customer value, it is important to understand what value is. Value is what the customer is willing to pay for. It is extremely important to identify the real or hidden needs of the client.
2. Map the value stream
The second principle of lean manufacturing is the definition and mapping of the value stream. In this step, the goal is to use the customer’s value as a benchmark and identify all activities that contribute to those values. Activities that do not add value to the end consumer are considered waste.
3. Create a flow
Once waste has been removed from the value stream, the next action is to ensure that the remaining steps run smoothly without interruptions or delays.
4. Install traction
a pull-based system ensures just-in-time delivery and production, where products are created at the time they are needed and in the right quantities.
5. Strive for excellence
Every employee must strive for excellence by delivering products based on customer needs. The company should be a learning organization and always find ways to get a little better every day.
By applying all 5 principles, an organization can stay competitive, add value to customers, reduce the cost of doing business, and improve profitability.