Software streaming is an emerging technology that enables S/W applications to be executed on-demand without download and installation, so that the applications are available virtually everywhere in the network. In developing software streaming systems, the engine and protocols must be carefully designed since the performance and reliability of the streamed software are directly affected by that of streaming engine and network status. In this paper, we present the application of formal verification in the design and implementation of the software streaming systems to take precautions against any potential defects. To achieve this goal, we use the model checker SPIN to model and verify the base architecture and protocol of the system. The effects of the use of formal verification is much more satisfactory than we expected.