|
Find Your Metaphor for Agile Software Design How you think about software design can have a big impact on how effective you are when you do it. All of us have different criteria for success, and some of them aren’t even conscious. We have to figure out what resonates for us so that we make the right choices, and we can get a clue about the right choices for us by looking at the metaphors we use when we talk about software.
|
|
|
The Art of Maximizing Work Not Done One of the twelve principles behind the Agile Manifesto is “Simplicity—the art of maximizing the amount of work not done—is essential.” Why is this principle called an art, while the others aren’t? And why should we maximize the amount of work "not" done? This article analyzes the importance of simplicity in agile projects.
|
|
|
ADC West 2015 Keynote: Lean UX: Turn User Experience Design Inside Out When developing products, features, and enhancements, you have to have your customers’ best interests at heart. “We’re not just creating software,” speaker Jeff Patton said. “We’re changing the world.” You need to better understand the people you’re building things for, and the only way to do that is to spend more time with them.
|
|
|
Getting Started with Mob Programming Mob programming is a software development approach where the whole team works on the same thing at the same time, in the same space, and at the same computer. Collaborating like this can have great benefits for everyone involved. Here, Woody Zuill details some practices his team uses to make this collaboration work for them.
|
|
|
An Experience Where Agile Approaches Helped This article addresses a process where a team moved from a traditional waterfall model to using agile elements in order to deliver a product to a government agency. It talks about typical problems that come up in a transition to agile, complications from distributed teams, and the advantages and disadvantages of the process for government or nongovernment clients.
|
|
|
On Sumo, Architecture, and Enterprise Agile In order to be successful in the ring, a sumo wrestler needs to maintain a heavy body weight and at the same time be in peak physical condition. Just as these Japanese athletes have to find the right balance through a well thought-out combination of diet and training regimen, software development organizations need a balanced approach to implementing application architecture on agile projects.
|
|
|
Bare Minimum Internationalization of Software Internationalization isn’t only about dealing with other nationalities and languages. It’s about creating software for a multicultural world. Even if the software you’re testing won’t be translated entirely into another language, it still should meet some basic requirements for international visitors.
|
|
|
Test-Driven Design for the Project Manager Many developers and testers are familiar with test-driven design (TDD), but how can managers use it to drive project implementation? In this article, John Goodpasture offers a guide to TDD design from the project manager’s perspective.
|
|
|
Mocks and Making Tests Easier to Read There has been a lot of recent discussion on Twitter about the use of mocking frameworks and writing readable tests. Here is a roundup of some of the recent blogs on the subject.
Making Tests More Readable
|
|
|
Learning from Reading (and Rewriting) the Tests Automated unit tests verify that a component is working as expected. They also serve as a way to understand how code works, though this doesn't always happen by reading tests. Sometimes understanding comes from tweaking the tests to observe new failures, or rewriting the tests themselves.
|
|