I have been doing a lot of reading recently for various interviews, its interesting how you can relate ideas from one industry to another.
You can tell a lot about people approach to how they go about their work, I saw a guy cutting a hedge last week, I could see how it was before, how he was going about the job, I thought that the job he was doing was brilliant.
Could this guy be a good software tester?
In fact, I once met a guy that was painting an office, he asked a manager what people in the office were doing. The manager said
Manager: They are software testing
Painter: Can I have a go?
Manager: Sure
And that’s how he got started in software testing, and he was very good at software testing, he must have been good at painting too. If you were an office manager looking at paint on the floor, you wouldn’t let that guy near a computer!
Now, introducing LEAN, a method that came from Production line engineering
The story of things, get LEAN
Lean manufacturing or lean production, often simply “lean“, is a systematic method for the elimination of waste (“Muda”) within a manufacturing system.
Lean also takes into account waste created through overburden (“Muri”) and waste created through unevenness in work loads (“Mura”).
Principles include:
- Eliminate waste
- Build quality in
- Create knowledge
- Defer commitment
- Deliver fast
- Respect people
- Optimise the whole
1, Waste can be defined as:
- unnecessary code or functionality
- starting more than can be completed
- delay in the software development process
- unclear or constantly changing requirements
- bureaucracy
- slow or ineffective communication
- partially done work
- defects and quality issues
- task switching
2, Types of Quality to be built in
- continuous integration (CI)
- continuous deployment
- Automation of the regression tests
- Constant feedback following an Agile process
3, Types of knowledge to be created
- Documentation
- Commented code
- Version controlling
- Building Automation scripts that other testers can used in other tests
- Pair Programming
- Code reviews
- Knowledge sharing
- User stories
- Training
4, Defer commitment
Decide when you have learned as much as possible to make the best decision
5, Deliver fast
- Keep it simple
- Work as a team
- Eliminate waste
- Build quality in
- Hire the right people and then get out of their way
6, Respect people
- Communicate the Pros and Cons
- Empower people and let them have their say
7, Optimise the whole
Its no good just optimise one part of the process, the whole process should be reviewed to ensure, what gets measured gets managed.
If each subsystem, regarded separately, is made to operate with maximum efficiency, the system as a whole will not operate with utmost efficiency. – General Systems Theory (Lars Skyttne)
Some food for thought…
Leave a Reply