在计算中，解决方案堆栈或软件栈是一套用于创建完整平台的软件子系统或部件，而无需额外的软件（即应用程序“运行于”目标平台上）。举个例子，要开发一款网络应用程序，架构师需要定义目标操作系统、网页伺服器、数据库及编程语言（即栈），或可能需要定义操作系统、中间件、数据库及应用程序。通常情况下，不同的开发者负责开发不同的软件栈部分。从历史角度探究，术语“解决方案栈”有时也会将硬件部分包含在内，故此词既可描述软件层面或硬件层面，也可包含两者。
示例.部分部件或子系统的组合常被使用，因此