Explain the Waterfall and Agile system development approaches and discuss the strengths and weaknesses of the waterfall system development model as a traditional approach and the agile model as a new alternative approach to system development.