Welcome to Engineer Academy where we’re exploring an A to Z of Engineering – everything from acoustics to zoos.
In each episode, we spin the wheel to find out what type of engineering we’ll be exploring with the help of Engers, our engineering expert.
You can listen to the full series of the A to Z of Engineering here.
Let’s take a look at Software Engineering. You might not have heard much about software engineering but it’s behind everything from missions to the moon to the video games we play.
What is Software Engineering
It’s almost impossible to imagine a world without computers – not just the ones we use for schoolwork and to play games, but those behind the technology used in almost every field – from Space Rockets to Supermarket tills.
All of these are thanks to software engineering. So what’s so soft about it? Well, software is the name given to a field of engineering that designs and writes programs for computers and other electronic devices to make them carry out a specific set of instructions. Hardware is the stuff you can physically touch, like the keyboard, mouse and cables. There are around 3,000 companies in the UK producing software, employing a massive 400,000 people. So what do all those people do, and just how IS software developed?
Before any software engineer does anything, they need to have a clear idea of what they want the program to do. Is it to solve a problem, like making sure an online shop doesn’t show products that have sold out; or to improve a process – perhaps speeding up the way robots are used on a car production line; or is it just to take a cool story idea and make it into a video game?!
Once they know what the software needs to do, the next step is for the engineers to create a list of all the existing process elements so they can come up with a plan about how each talks to the other. That might be how an online shop talks to its storeroom; or for a video game, it’s important it knows how the consoles behave, how it’ll talk to the system’s memory to save progress and the type of graphics card to get the best visual experience.
After the design phase, each part of the software is coded. That just means instructions are written in a computer language telling the computer exactly what to do at each step and in what order. This stage is sometimes called implementation.
Next up is the critical part of the process – testing! This is vital to see if the program meets all the requirements. If there are bugs or mistakes in the code or the components don’t work together as they should, it’ll be back to the coding to make changes and fix errors.
Some software designers use a wide range of languages, others might have a particular preference. There are different compilers for different languages and so it often doesn’t matter what language was used because at the end of the day it will be converted into machine code – and the process is completed!
And that’s our take on the letter S – it’s been SENSATIONAL!
If you would like to check out some other types of engineering, why not check out Structural, Safety, Supply or even Space engineering.
Join us again next time to spin the wheel and explore another letter in the A to Z of Engineering!