ELI5: Explain Like I'm 5

Software design

Okay, so you know how sometimes you want to play with toys, but you need to figure out how to put them together first? That's kind of like software design.

When people want a program to do something, like play a game or keep track of information, they need to figure out what the program should do, how it should look, and how people will use it.

Software designers are like toy makers. They work with the people who want the program and figure out what it should look like and how it should work. They need to think about all the different ways people might want to use the program and make sure it's easy for them to understand and use.

Once they have a good idea of what the program should do, they start putting it together like a bunch of puzzle pieces. They write down all the instructions the program will need to follow, and they decide what language the program will use to "speak" to the computer.

Then they test the program to make sure it works the way it's supposed to. They make sure all the pieces fit together, and they fix any problems they find along the way.

Finally, when the program is all finished, they give it to the people who wanted it so they can use it to do all kinds of cool things!