Why do you need server software to install plugins?
What is software? -> What is Spigot and Bukkti?
What is the difference between spigot and bukkit?
So. If you don't even know what "software" is, you shouldn't set up a server. But if you really want: Spigot is especially needed for other players / developers to be able to work with this API and to be able to upload it to the server that it works. I can't describe it differently
Because otherwise you would have to hack / modify the server to make any changes in the game.
Therefore, it is better to use an already hacked / modified server with an easy-to-use interface to make changes. The modified server is "Spigot / Paper / Bukkit", and plugins are pieces of code that can use the interface mentioned above.
A thousand times easier than modifying the server itself.
And Spigot is an extension of Bukkit.
Hardware is everything you can touch on your computer. Software are the programs that run on your computer.
Spigot is an extension of Bukkit. Spigot has couple more options. All Bukkit plugins work with Spigot. But no Spigot plugin works with Bukkit.