Asset and Liability Management (ALIvI) is a well-established method, which enables companies to match future liabilities with future cash flow streams of assets. The first stage is to develop a deterministic model with forecast cash flow streams. In reality this can lead to results that are often volatile to deviations of future cash flows from their predicted values. There are two main stages to this problem. Firstly, there is the issue of representing the future uncertainties. To this end we have developed a scenario generator that forecasts alternative realizations of future cash flows streams of different assets using alternative scenarios about a financial Index and the Capital Asset Pricing Model (CAPM). Considering this with the deterministic model leads to the creation of ALM models which incorporate uncertainty. Having represented the uncertainty, we use an optimisation model to generate the current decisions concerning acquisition and disposal of assets. This model is a two stage stochastic programming model that aims to achieve targeted cash flows for each future year. Risk is represented in the form of assigning shares to different risk groups. In this thesis we describe our models of randomness and how they are captured in the two-stage stochastic programming model. We compare our model to a mean-variance representation. Both models are simulated through time. Backtesting is used to investigate the quality of both approaches.