Don't miss an insight. Subscribe to Techopedia for free.


Software Stack

What Does Software Stack Mean?

A software stack is a group of programs that work in tandem to achieve a common goal.


Software stacks can either be built from scratch or put together heuristically after a lot of trial and error. The person responsible for choosing which stack will best support the delivery of an application's services is called the application architect.

One of popular software stacks is LAMP (Linux, Apache, MYSQL, Perl or PHP or Python). LAMP is an open source development platform for creating and managing Web applications. Linux serves as the backend operating system (OS). Apache is the Web server, MySQL is the database, and either PHP, Perl or Python are used for scripts.

MEAN is another popular software stack in use today. It is built on MongoDB, Express.js, Angular.js and Node.js.

Techopedia Explains Software Stack

Software stacks have many benefits:

  • A software stack contains all the software components needed to support an application.
  • They are created with interoperability in mind.
  • They provide the minimum code needed to achieve intended goals.
  • Components can be installed on one individual system or be distributed in the cloud.
  • Most software stacks come with support for the entire package. Some also have community forums.

Related Terms