软件工程作为一门学科,从20世纪70年代以来,始终处在发展变化和探索前进之中。随着我国国民经济的起飞,软件产业逐步成为支撑国民经济发展的重���产业部门。**成立示范性软件学院,也正是意识到传统计算机科学与技术专业学生培养的模式并不能适应现代企业发展的需要,这就要求软件学院从教学体制、教学内容、教学方式等方面做更深入的改革。但是,实事求是地讲,虽然很多软件学院为此进行了艰苦的努力,也取得了一定的进步,但大的格局没有发生根本的改变,很多基本要素没有发生质的变化。软件学院的教学和实践内容、教学组织形式和学科体系建设,都还处在“大拼盘”阶段。而从大的方面讲,我们现在的教育体系如何与国际接轨、与社会发展需求接轨,并不是引进几个人、请一些外教就能解决的。当然,这已经超出了我们这门软件工程课程要讨论的范围。
我在国内的IT企业待T20多年,也曾出国进修深造,过去多年的绝大部分时间是在软件公司从事开发和技术管理工作。因为一个偶然的机会,我受聘为东南大学软件学院讲授《软件项目管理》、《现代软件工程》等课程,期望利用自己的专业特长和企业背景,教书育人,使我所教授的学生在学习和掌握理论知识的同时,更多地了解现代软件企业的实践,毕业后更好地适应新的岗位,发挥出自己的潜力。
我在跟朋友聊天的时候,他们都建议我把这些年的经历写出来,特别是这20多年从事软件开发和管理的体会。同时,我也看到上海林锐博士的(《软工思想))以及((我的大学十年))大受学生们的欢迎,很受启发和鼓舞,所以就萌发了编著本书的想法。在机械工业出版社华章公司的促成下,几经努力,终于成书。
本书的内容和想法如下。
一、教学目标和指导思想
软件学院的软件工程专业的培养目标是为软件企业培养“软件生产”所需要的工程技术和管理专业人才。因此,“软件工程”作为软件工程专业的核心课程,应在理论一技术一工程一管理的链条上,明确以工程为核心,以技术和管理为半径,建立教学和实践体系。这是本课程的基本指导思想。
美国电气与电子工程师协会等编制的《软件工程知识体系指南》2004版(简称:SWEBOK 2004)概括了现代软件工程知识体系的11个领域,特别是后6个领域,成为软件工程的重要组成部分,是现代软件工程的核心内容。本书将明确以SwEBOK 2004~本蓝本,学生通过学习本书,能在已经获得的软件基础知识和语言编程技能的基础上,逐步开始建立将软件开发作为一个生产过程的概念,并初步学习和掌握软件工程的需求分析、系统设计和实现、软件测试等专门的工程技术方法,学习和了解软件产品管理、项目管理、质量管理、过程控制等基本过程管理知识。在同步的项目实践的配合下,亲身完成一个项目开发过程,感受作为一个***同时也是过程控制和管理者所必须注意的各个环节要点。这是本课程的基本教学目标。