计算机科学的诞生,是世人为了用数字手段解决实际生活中的问题.随着时代的发展,技术的进步,人们对于现实世界中的问题理解越来越深刻,描述也越来越抽象,于是对计算机软件的需求也越来越高,越来越复杂,变化也越来越频繁. 而软件技术的发展也是随着人们认知水平和抽象能力的不断提高,从面向过程编程,进化到了面向对象编程,再到日渐红火的面向服务的编程.伴随着思维的不断进步,实现软件的技术手段也随之变迁,从最古老的瀑布流程,到RUP统一过程,到敏捷软件开发,它们的出现无一不体现了需求,变化,效率,时间与质量的多方