InfoQ Homepage Software Craftsmanship Content on InfoQ
-
Takeoff: What Software Development Can Learn from Aviation
A lot of professions have been around way longer than software development and have developed "best practices" to handle typical problems and challenges. Software developers can benefit from taking a closer look at aircraft maintenance or a pilot’s processes to learn from them, optimize our processes. and last but not least, try to reduce some of the stress that we experience over and over again.
-
Technical Debt Isn't Technical: What Companies Can Do to Reduce Technical Debt
In this article, three experts discuss some of the key findings of the “State of Technical Debt 2021” report including the impact of technical debt on engineering teams, the pros and cons of dealing with maintenance work continuously, the future of technical debt and what each engineering teams can do to communicate the importance of dealing with technical debt to companies’ leadership.
-
Value Stream Mapping and Value Stream Management: How They Can Work for You
Value stream mapping is a largely qualitative tool that creates visibility into the waste in a system while also creating alignment around ways to improve. Value stream management codifies the system, allowing for continual monitoring and management.
-
Improving Testability: Removing Anti-Patterns through Joint Conversations
Code is always testable, but the cost may be high, and the effort exhausting. We can change code to be highly testable by identifying anti-patterns and fixing them. And developers can make the code fit the test requirements, by having discussions with the testers who actually test it.
-
Easy Guide to Remote Pair Programming
Remote pair programming can be an extremely powerful tool, it's a form of social programming. When pairing remote, you need a lot more setup and more tooling in place, so that the two team members can work together effectively. With remote pair programming quality communication is essential because we lack the physical presence that gives us so much non-verbal communication.
-
Validation of Autonomous Systems
This article introduces validation and certification as well as the general approval of autonomous systems and their components, such as those used in automation technology and robotics. It gives an overview of methods for verification and validation of autonomous systems, sketches current tools and show the evolution towards AI-based techniques for influence analysis of continuous changes.
-
‘Debt’ as a Guide on the Agile Journey: Technical Debt
In this article in a series on how ‘debt’ can be used to guide an agile journey, we will provide two examples of smells that are related to technical debt, explain the symptoms, the impact on the business and in our organization, outline the experiments (countermeasures) that we have introduced in an effort to try to remove the smell, and provide some specific advice for you to be inspired.
-
Signs You’re in a Death Spiral (and How to Turn It around before It’s Too Late)
Don’t let feature work blind you. Enterprises are ramping up their software delivery to compete in the digital-first world. But more features and faster time-to-market can lead your business into a death spiral if you neglect technical debt and risk work. Learn how to use value stream metrics to identify whether your business is in danger and how to reverse the trajectory before it’s too late.
-
The Flow System: Getting Fast Customer Feedback and Managing Flow
The Flow System elevates Lean Thinking in an age of complexity by combining complexity thinking, distributed leadership, and team science into the Triple Helix of Flow, which organizations can use to become more innovative, adaptive, and resilient. This first article explores the importance of quality, getting fast feedback from customers, the concept of flow, and The Flow System.
-
Applying Stoicism in Testing
Agility stands for being aware of your environment. There is a specific set of values for a tester that you should stick to; they set limits to what you can deliver as a tester, and within those limits, you can keep your agility. But your values can cause a “collision” with agile people around you, because they don’t have to be perfectly in line with how people apply the agile principles.
-
The Toyota Way: Learn to Improve Continuously
The book The Toyota Way, 2nd Edition by Jeffrey Liker provides a view of the Toyota Production System with fourteen management principles for continuous improvement and developing people. The book, including the 4P model (Philosophy, Processes, People, Problem solving) and principles, has been updated to reflect new insights in systems thinking.
-
Kick-off Your Transformation by Imagining It Had Failed
Large scale change initiatives have a worryingly high failure rate, the chief reason for which is that serious risks are not identified early. One way to create the safety needed for everyone to speak openly about the risks they see is by running a pre-mortem. In a pre-mortem, we assume that the transformation had already failed and walk backward from there to investigate what led to the failure.