←back to thread

170 points mogambo1 | 8 comments | | HN request time: 0.001s | source | bottom
Show context
danparsonson ◴[] No.45292426[source]
I seem to be in a minority but I find user stories or features to be really awkward and unnatural units of work for building software. Sure these things help to define the expected result but they shouldn't directly drive the development process. Imagine building a house that way - you don't build the living room, then the kitchen, then the bathroom etc.; you build floors, walls, the roof... The 'features' or use cases for the building arise out of the combination of different elements that were put into it, and usually right near the end of the build. The same is true for basically anything else that we build or create - if you're making a sculpture, do you finish working on one leg first before you move onto some other part?

Features are vertical slices through the software cake, but the cake is actually made out of horizontal layers. Creating a bunch of servings of cake and then trying to stick them together just results in a fragile mess that's difficult to work with and easy to break.

replies(9): >>45292458 #>>45292564 #>>45292986 #>>45293703 #>>45294397 #>>45296892 #>>45297236 #>>45298940 #>>45307633 #
1. igouy ◴[] No.45292986[source]
Software is not like "building a house" and is not like a sculpture and is not like a cake because software is (mostly) notional not physical.
replies(2): >>45296294 #>>45300278 #
2. hackable_sand ◴[] No.45296294[source]
I don't see the difference. Could you explain how the physical attributes change the analogies?
replies(2): >>45296515 #>>45298040 #
3. igouy ◴[] No.45296515[source]
The physical constraints govern the development processes described in the analogies.

The process for software is not constrained in that way.

4. fragmede ◴[] No.45298040[source]
I can use simple find and replace to change a variable name. If I've mixed salt and sugar up, there's no undo button.
5. danparsonson ◴[] No.45300278[source]
Yeah the point is about design philosophy. The physicality or not is irrelevant.
replies(1): >>45303934 #
6. igouy ◴[] No.45303934[source]
Demonstrate that is so. Provide examples that are not physical.
replies(1): >>45310394 #
7. danparsonson ◴[] No.45310394{3}[source]
No. You just don't understand what I'm talking about.
replies(1): >>45315217 #
8. igouy ◴[] No.45315217{4}[source]
Perhaps if you talked about software instead of house-building, sculpture, cakes …