自1968年在原西德召开的一次有关计算机软件的NATO会议上提出软件工程概念以来,人们已经逐步认识到了软件开发过程不是一个简单的编程过程,而是一个包含了从计划、分析、设计、编码、测试到维护的一系列工程活动的复杂过程。并且,由于软件开发工具功能和性能的日趋完善,以及朝着越来越实用化、可视化和集成化方向的发展,现在开发一个软件系统,甚至有时可以不编写一句源代码都可以实现,因为有现成的软件构件(积木块)供你使用,只要知道选用哪些积木块、怎样搭配就行。所以今后软件开发的主要任务是分析、设计和维护。目前已经有很多人认识到了这一点,而且也在试图按照软件工程的理论和方法去做。但是,面对着工程中各种各样的实际问题,他们常常感到难于着手进行分析和设计等工作。本课程的目的就是企图为读者提供一套实际可操作的软件开发方法和手段。