Agile Design and Development
So that you can get feedback on it and make it better
The most rewarding iterations
Building is never a straight line
Product owner vs. product manager
A Product Owner is focused on output i.e. how quickly can we build these features?
Product Management, on the other hand, is focused on outcomes i.e. why are we building these features in the first place?
Good design is redesign
Good design is redesign. It's rare to get things right the first time. Experts expect to throw away some early work. They plan for plans to change.
It helps to have a medium that makes change easy. When oil paint replaced tempera in the fifteenth century, it helped painters to deal with difficult subjects like the human figure because, unlike tempera, oil can be blended and overpainted.
Finish designing as close to the end of a sprint as possible
The traditional process of delivering design, vs. delivering design just in time.
Designers are often working at least one sprint ahead of engineers. While one sprint might not seem like much of a lag, a typical product team learns a lot after the design hand-off. ...Instead of working ahead, we should finish designing as close to the end of a sprint as possible: just-in-time design.
We optimize what we measure
Scrum does not say “only focus on output”, but, unfortunately, humans will optimize for what they measure.
If you worry about story points & hitting your estimations, that’s what is going to consume your attention. That is what you and your team will optimize for.
And that is the core critique of Scrum as it is practiced: That it focuses a product team’s attention so heavily on delivery — on building lots of features quickly & efficiently — that teams fail to focus on spending time to discover what the right thing to build is.
How we can do better
It actually doesn't matter whether you actually have a formal retrospective. It doesn't matter whether you have four or five labels of things on your retro board, or exactly how you do the retro. What does matter is the notion of thinking about what we're doing and how we can do better, and it is the team that's doing the work that does this, that is the central thing.
The 'date scrum' anti-pattern
Date Scrum is an R&D pattern where developers are asked to estimate software project requirements upfront for the entirety of the project. After the project is green lighted and the budget is set based on the final estimates, the team then holds daily scrums to status and manage risk as they “iterate” the solution toward the release date. To some, this approach is described as doing Waterfall in sprints.
The fundamental problem with Date Scrum is that the team is de-focused from discovering the best solution. Instead they are heavily focused on delivering Something™ by the Date™. Engineers are problem solvers, and if the primary problem becomes delivering Something™ that will pass QA by the Date™, they will, with enough pressure, solve that exact problem.
That which requires caring
Today's real world of technology is characterized by the dominance of prescriptive technologies.
The temptation to design more or less everything according to prescriptive and broken-up technologies is so strong that it is even applied to those tasks that should be conducted in a holistic way. Any tasks that require caring, whether for people or nature, any tasks that require immediate feedback and adjustment, are best done holistically. Such tasks cannot be planed, coordinated, and controlled the way prescriptive tasks must be.
Prescriptive technologies eliminate the occasions for decision-making and judgment in general and especially for the making of principled decisions. Any goal of the technology is incorporated a priori in the design and is not negotiable.
Manifesto for Agile Software Development
A DefinitionWe are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Agile Scrum is not working
The Agile founders had it right, one size doesn't fit all. What the founders perhaps didn’t foresee, or couldn’t agree on, is that in order for the world to scale and consume their wisdom, it had to be packaged as concrete practices, not as abstract classes with virtual methods to be defined in context. And to the proponents of Agile Scrum, give them their due, for their part, they made it concrete – Agile Scrum has been packaged and delivered. Yet much work remains to realize the promise of Agile, which in summary is, the realization of wise use of lightweight development practices and workflows that flexibly adapt to the changing and evolving needs of customers.
Driving engineers to an arbitrary date is a value destroying mistake
An Article by Gandalf HudlowWhat happens when you apply date pressure to software engineers working on high value software projects? The engineers will focus on delivering Something™ by the Date™! This fatal flaw results in delivery of a Something™ full of chaos and features that nobody really wants or needs.
Beware SAFe, an Unholy Incarnation of Darkness
An Article by Sean DexterThe Lean Portfolio Management function that controls funding, are given sole authority to approve which Portfolio Epics move into each stream. Epics are not explanations about a problem that needs to be solved. They are pre-formed ideas about how best to solve those problems.
Right away we can see signs of the old-school mindset of viewing teams as a “delivery” function instead of a strategic one. The high level thinkers come up with ideas, and the low level doers execute on those ideas. Ignored is the possibility that those closest to the work might be best equipped to make decisions about it. Escaping from this misguided mindset is a core goal of Agile thinking that SAFe fails to remotely accomplish.
Why Scrum is killing your product
An Article by Henry LathamDesign Systems, Agile, and Industrialization
An Article by Brad FrostI’ve come to the conclusion that “enterprise web development” is just regular web development, only stripped of any joy or creativity or autonomy. It’s plugging a bunch of smart people into the matrix and forcing them to crank out widgets and move the little cards to the right.
In these structures, people are stripped of their humanity as they’re fed into the machine. It becomes “a developer resource is needed” rather than “Oh, Samantha would be a great fit for this project.” And the effect of all this on individuals is depressing. When people’s primary motivation is to move tickets over a column, their ability to be creative or serve a higher purpose are almost completely quashed. Interaction with other humans seems to be relegated to yelling at others to tell them they’re blocked.
Reading “AS PER THE REQUIREMENTS” in tickets makes me dry heave. How did such sterile, shitty language seep into my everyday work?
The value-destroying effect of arbitrary date pressure on code
An Article by Gandalf HudlowThe mandate from above is clear, just get it done! Avoid everything that's in the way: all advice, all expertise, all discovery efforts that detract from hitting the Date™!
What these organizations don't realize is that all software change can be modeled as three components: Value, Filler and Chaos. Chaos destroys Value and Filler is just functionality that nobody wants. When date pressure is applied to software projects, the work needed to remove Chaos is subtly placed on the chopping block. Work like error handling, clear logging, chaos & load testing and other quality work is quietly deferred in favor of hitting the Date™.
Agile is Dead (Long Live Agility)
An Article by Dave ThomasThe word “agile” has been subverted to the point where it is effectively meaningless, and what passes for an agile community seems to be largely an arena for consultants and vendors to hawk services and products.
…Let’s abandon the word agile to the people who don’t do things. Instead, let’s use a word that describes what we do. Let’s develop with agility.
- You aren’t an agile programmer—you’re a programmer who programs with agility.
- You don’t work on an agile team—your team exhibits agility.
- You don’t use agile tools—you use tools that enhance your agility.
/
Individuals and Interactions over Processes and Tools
Working Software over Comprehensive Documentation
Customer Collaboration over Contract Negotiation, and
Responding to Change over Following a PlanTraditional companies are losing because they mismanage software engineers
An Article by Emma WattersonInnovation is messy, and frankly Anti-Steve [Jobs] can’t figure out why you wouldn’t just tell people the right thing to build and skip all the trial and error that comes with innovation. Anti-Steve and his board of directors that keep him in place fundamentally believe that they know what needs to be built. Or at least that they can hire the messiah that will come down off the mountain and tell everyone what to build. There is no such messiah.
Why we stopped breaking down stories into tasks
An Article by Adam SilverThe Scrum process says to break down stories into tasks to make estimation easier, encourage collaboration and to be able to show more granular progress during a sprint.
But after a few sprints, we decided to do the next sprint without creating tasks. As a result we drastically increased our velocity and never went back. Here I'll jot down some of the reasons we decided to do this:
- Breaking down stories into tasks is time consuming
- The tasks we came up with invariably would change as we worked on the stories
- Tasks are repetitive
- Tasks were often carried out in parallel
- Our estimates didn't improve
- It decluttered our task board
- It encouraged collaboration throughout the sprint
While we started our process by following Scrum to the letter, we soon realised that breaking down stories into tasks was something that wasn’t worthwhile for us. In the end we realised that it was overplanning and poor use of our time. In the end we used that time to get on with the work and deliver at a significantly faster pace.
Why We Don't Do Daily Stand-Ups at Supercede
An Article by Jezen ThomasYesterday I worked on the widget.
Today I will work on the widget.
I have no blockers.Are you asleep yet? The developers are. You promise them an intellectually stimulating work environment and what they end up with is drudgery.
What value can be had from these meetings anyway? Using “alignment” for justification is so nebulous that it is essentially meaningless. Engineers align themselves. They talk. Especially if you hire good ones (which, you know, you’ll struggle to if you have a culture of coercing them into this kind of busywork). Where does the real discussion happen? It’s written down.
Software that nobody wants
An Article by Gandalf HudlowFinding value is the result of enabling individual and group-level discovery attempts. It's not the result of everyone following one leader's gut.
What just happened is a new software product/feature was created that no customer wanted. This happens way too often. In fact, most hyper important software projects that must be done by date certain or else, have deep flaws that cause some variation of this phenomenon, flaws that include:
- Not wanted - Company specified a solution to a problem that customers don't actually have
- No Rarity - Company is pursuing an iKnockoff of existing products. The market already has two scaled competitors with working solutions, customers naturally spend budget on products that are already successful to avoid risk
- Incorrect Packaging - Customers need a website, but the company created an iOS app instead
- Incorrect Pricing - Customers need SaaS pricing, but the company created a shrink wrapped, on-premise solution with CapEx and maintenance agreements instead
Making sense of MVP
An ArticleHenrik Kniberg:
The top scenario (delivering a front tire) sucks because we keep delivering stuff that the customer can’t use at all. If you know what you’re doing – your product has very little complexity and risk, perhaps you’ve built that type of thing hundreds of times before – then go ahead and just do big bang. Build the thing and deliver it when done.
Doing It Right
An Article by Brad FrostDoing it right requires a different pace of working and a much broader thought process than “ok, let’s get this thing out the door.” Which is super tough because most workplaces place a huge emphasis on getting things out the door, and fast. Little agile tickets that are expected to be completed in micro sprints to me seem to be antithetical to doing it right.
Planning doesn't make for better software
A Fragment by Robin RendleMy own time in a Silicon Valley startup has proved this much to be true; planning doesn’t make for better software. In fact today our design systems team doesn’t have sprints, we don’t have tickets or a daily standup. Each day we come to work, figure out what’s the most important thing that we could be doing, and then we—gasp!—actually do it.
Watching so many other teams slowly flail about whilst they plan for quarter 3.2 of subplan A, whilst our team produces more work in a week than they all do combined in a quarter has been shocking to me.
After four years of working in a large startup, I know what I always assumed was true: you don’t need a plan to make a beautiful thing. You really don’t. In fact, there’s a point where overplanning can be a signal of inexperience and fear and bullshit. The scrum board and the sprints and the inane meetings each and every day are not how you build another Super Mario 64.
Instead all you have to do is hire smart people, trust them to do their best work, and then get the hell out of their way.
Agile as Trauma
An Essay by Dorian TaylorThe Agile Manifesto is an immune response on the part of programmers to bad management.
Yagni
A Definition by Martin FowlerYagni originally is an acronym that stands for "You Aren't Gonna Need It". It is a mantra from Extreme Programming that's often used generally in agile software teams. It's a statement that some capability we presume our software needs in the future should not be built now because "you aren't gonna need it".
The State of Agile Software in 2018
A Talk by Martin FowlerOn the surface, the world of agile software development is bright, since it is now mainstream. But the reality is troubling, because much of what is done is faux-agile, disregarding agile's values and principles. The three main challenges we should focus on are: fighting the Agile Industrial Complex and its habit of imposing process upon teams, raising the importance of technical excellence, and organizing our teams around products (rather than projects).
Product vs. Feature Teams
An Article by Marty CaganThis article is certain to upset many people.
Infrastructure: A Guide to the Industrial Landscape
Savage, hostile, and cruel
Some may find puzzling or distasteful the parallel I am drawing between the study of nature and the study of technology. After all, nature is good and good for you, whereas everyone knows that technology is ugly, evil, and dangerous.
A few centuries ago—say, on the American western frontier—a quite different view prevailed. Nature was seen as savage, hostile, cruel. Mountains and forests were barriers, not refuges. The lights of civilization were a comforting sight. We took our charter from the book of Genesis, which grants mankind dominion over the beasts, and felt it was both our entitlement and our duty to tame the wilderness, fell the trees, plow the land, and dam the rivers.
Nature undisturbed
My chief aim is simply to describe and explain the technological fabric of society, not to judge whether it is good or bad, beautiful or ugly. And yet I would not argue that technology is neutral or value-free. Quite the contrary: I suggest that the signs of human presence are the only elements of the landscape that have and moral or aesthetic significance at all. In nature undisturbed, a desert is not better or worse than a forest or a swamp; there is simply no scale on which to rank such things unless it is a human scale of utility or beauty. Only when people intervene in nature is there any question of right or wrong, better or worse.
The raw materials of society
A big hole in the ground: This is where most of the raw materials of an industrial society come from. To appreciate the scale of this excavation, note that the bright blue object on a shelf near the center of the image is a Porta Potti.
The dragline
A dragline is the largest of the machines used to strip away the overburden and mine the ore layer at an open-cast mine. A bucketload for this particular dragline, one of the world's largest, is 220 cubic yards. Note the school bus, which would easily fit in the bucket.
Dark satanic steel
When poet William Blake wrote of "dark satanic mills", he couldn't have been looking at a steel mill because there were none in 1804. Nevertheless, when I visit a steel mill, Blake's phrase always comes to mind. With the heat and the pounding noise, the dust and smoke, and the red glow against the night sky, it's hard not to see these places as infernal. And yet the process of making steel also produces some of the most hauntingly beautiful images found anywhere in the world of industry.
Strength from both mass and form
Hoover Dam has the shape of an arch dam, but it is actually a hybrid structure, gathering strength from both mass and form. The dam is often ranked as one of the most exquisite of all engineered structures. It is fitted to its site so well that the gnarly canyon wall looks like an organic growth engulfing the mass of concrete.
Warmed by the afternoon sun
Textbooks on water-system engineering state that supply mains are generally installed on the north side of the street in the Northern Hemisphere and on the south side in the Southern Hemisphere, so that the sun will warm them. In both hemispheres they are supposed to be on the east side of north-south streets, on the premise that the afternoon sun is warmer than the morning sun.
Trompe l'oeil fantasies
In residential neighborhoods some sewage-pumping stations are trompe l'oeil fantasies, dressed up to look like the split-level or colonial houses that surround them. If you look closely, it's not hard to spot these disguised pumphouses: the heavy-duty power connections, the big ventilating fans, and the diesel generator in the backyard are all tip-offs. Furthermore, the windows are often fakes, with sash and shutters adorning a blank wall.
Quaker Square Inn
The modernist architect Le Corbusier was an admirer of American grain elevators, suggesting that their regularity and modularity could serve as a model for other kinds of buildings. At least one later architect took the suggestion seriously. The Quaker Square Inn in Akron, Ohio, occupies the shell of a former elevator. If you're in town for the night, you can rent a round room in one of the silos.
A metropolis for hydrocarbons
An oil refinery suggests the image of a metropolis for hydrocarbons, the pipe manifolds like expressways, the distillation towers like skyscrapers.
A haunting, syncopated music
"Rappers" on the roof of the electrostatic precipitator knock the accumulated dust free, letting it fall into the storage hopper. Each rapper is the size and shape of a baseball bat. Inside is an electromagnet that pulls a steel plunger upward, then allows it to fall again, producing a sharp knock. The rappers are energized at seemingly random intervals, producing a haunting, syncopated music. (The rhythm seemed more modern jazz than rap.)
Safety cut rope axe man
In the first nuclear reactor, constructed by Enrico Fermi in 1942 under the bleachers of the University of Chicago football stadium, the control rods were held up by a manila rope. A man with an axe was told to cut the rope if the reactor got out of hand. This "safety cut rope axe man" is supposedly the origin of the term SCRAM for an emergency shutdown procedure.
Pylons
Not all the towers along a transmission line are identical. Look closely at a tower where the line makes a sharp turn and you will likely find it is wider and beefier than other towers along the route. The added strength and weight are needed to resist the unbalanced pull of the conductors, which might overturn an ordinary tower. These special towers are called deviation or angle towers.
The transmission-line tower everybody knows is an Erector Set latticework of steel girders and diagonal braces. The techniques for designing and building these towers are the same ones used in constructing steel bridge trusses or crane booms. The individual pieces can be made cheaply from rolled steel and then bolted together on the site. This last point is more important than it might seem: transporting a fully assembled tower 100 feet tall is an awkward and expensive business.
Color coding
Telephone wires erupt in a multicolor cascade in a ground-level, pedestal-type splice case on a city street.
Dividing the set of 10 colors into two contrasting groups of 5 allows for exactly 25 combinations with one color from each group; thus, each pair in a bundle can be uniquely colored. A similar color code is applied to the ribbons that bind together all the pairs in a bundle, and to those of the superbundles. The result is highly festive! A specific wire might be identified as the blue-red conductor within the orange-black bundle within the brown-yellow superbundle.
The Iridium System
Several Low-Earth-Orbit (LEO) networks were proposed, but only one got off the ground: the Iridium system. The original Iridium proposal called for a "constellation" of 77 satellites, which gave the plan its name: the element iridium has atomic number 77, meaning that an iridium atom has 77 orbiting electrons. Before the satellites were launched, the constellation was scaled back to 66 active satellites, but no one wanted to change the name to Dysprosium.
Roads to nowhere
Among real-estate developers, straight lines and right angles went out of fashion sometime in the middle of the twentieth century. If you look at a town or a residential neighborhood laid out since then, you are more likely to find sinuous, serpentine roads—whether or not the topography offers any excuse for such curves. Many of these roads go nowhere: they are loops that bring you back to where you started, or they are cul-de-sacs. Making it easy to find your way through the network of streets is obviously not a high priority. This is an interesting development in urban geography: having redesigned the city to accommodate the automobile, we now search for ways to discourage people from driving on the streets.
A gradual refinement
The steel rail is an artifact whose form has been carefully optimized. This gradual refinement of the design was done not by a single brilliant engineer but by more than a century of industrial evolution. The rail was never meant to be an object of beauty, but its cross section has all the elegance of fine typography.
Hyperart: U.S. Rail
The steepest grade on U.S. main-line track is at the small town of Saluda, on a Norfolk Southern route between Spartanburg, South Carolina, and Asheville, North Carolina. The grade goes on for three miles at a slope of 4 or 5 percent. Trains have not been running on the line since 2001, but the tracks are still maintained.
An emblem of friendship
Bridges make connections; they bring people together—a role that has made them a traditional emblem of friendship. Consider the town of Mostar in Bosnia-Herzegovina. When fighting between ethnic factions broke out there in the 1990s, nothing symbolized the social disintegration more clearly than the destruction of a sixteenth-century stone-arch bridge that had linked the two parts of the town on opposite banks of the Neretva River. And the emblem of efforts to heal the divisions is a rebuilt bridge, opened with fireworks and fanfare in July of 2004.
Routine design
When we think of bridges, it is the dramatic and monumental long spans that come to mind first, especially the lithe suspension bridges such as the Golden Gate and the pure geometric arches such as Sydney Harbour. But the majority of bridges are not such spectacular structures. Most of them are ordinary overpasses, with spans of 30 or 40 feet, carrying roadways or rails across other thoroughfares or over small streams. You see such bridges by the dozen on any drive down the Interstate. They may be lacking in glamour, but they are more representative of a bridge builder's art.
The engineering and construction of girder bridges are pretty routine these days, but the bridges are not quite standard items you order from a catalogue. The girders, whether of steel or concrete, are custom-build for each bridge, then trucked to the site and hoisted into place with a crane. The designer still has scope for variation and creativity, and it shows out on the highways: some overpasses are prettier than others.
No Smoking
What's that big electrical cord that also connects the ship to the dock? It's not a power cord to run machinery aboard ship; it's a grounding strap, to prevent sparks from static electricity. Something else you're sure to notice on a tanker is a big warning sign about the fire hazard. Frederick Allen, the editor of American Heritage of Invention & Technology, has remarked that all tankers seem to be named No Smoking.
Port furniture
All the miscellaneous fittings and fixtures on wharves and piers and elsewhere in nautical neighborhoods are known by the charming term port furniture.
The mirror-image economy
When we enter the world of refuse and waste, we cross over into a mirror-image economy. In the "normal" world, we pay to acquire things; on the other side of the looking glass, we pay to get rid of them. Junk isn't merely worthless; it has negative value.
A chemical engineer once told me about a recent improvement in a manufacturing process; by fine-tuning a chemical synthesis he had increased the yield of a certain commodity from 98 percent to 99 percent. I congratulated him, but I couldn't help remarking that this seemed like a rather paltry improvement. "Ah, you miss the important point," he said. "The amount of waste goes from 2 percent down to 1 percent. It's cut in half. We save tremendously on disposal costs."
NIMBY, BANANA, NOPE
Waste-disposal facilities of all kinds—landfills, incinerators, even transfer stations—are sure bets for generating the NIMBY response: not in my backyard. In its most cynical form, NIMBY is the attitude of citizens who acknowledge the need for a facility, somewhere, but who oppose a plan for building it simply because the selected site is too close to their own property. But opposition to landfills and many other kinds of development goes well beyond cynical NIMBY. Another catch phrase for this phenomenon is BANANA: build absolutely nothing anywhere near anybody. Or else it's NOPE: not on planet earth.
Creations of human artifice
In the twenty-first century, the question most of us ask when disaster strikes is not "How could God let that happen?" but "Who screwed up?" This is a salutary development: We take responsibility for the world we live in. Whether or not our world is the best of all possible worlds, it is a world we have made for ourselves. We live in an engineered landscape, on an engineered planet. Our cities and farms, our dwellings and vehicles, our power plans and communication networks—these are all creations of human artifice. If we don't like it here, we have only ourselves to blame.
What kind of world it's going to be
The wonderful thing about living in a world of our own creation is that we get to choose what kind of world it's going to be—at least in principle. But the promise is meaningful only if a broad enough "we" can be engaged in the process. At present, mechanisms and democratic institutions for making collective decisions about the deployment of technology are hopelessly cumbersome. How can anyone make a sensible choice without being able to weigh one alternative against another?