From Wikipedia, the free encyclopedia Jump to navigationJump to search "Software stack" redirects here. For other uses, see Stack (disambiguation) § Computing. In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications. Applications are said to "run on" or "run on top of" the resulting platform.
For example, to develop a web application the architect defines the stack as the target operating system, web server, database, and programming language. Another version of a software stack is operating system, middleware, database, and applications. Regularly, the components of a software stack are developed by different developers independently from one another.
Some components/subsystems of an overall system are chosen together often enough that the particular set is referred to by a name representing the whole, rather than by naming the parts. Typically, the name is an acronym representing the individual components.
The term "solution stack" has, historically, occasionally included hardware components as part of a total solution, mixing both the hardware and software in layers of support