“软件工程”是计算机软件、计算机应用等相关专业的一门理论与实践并重的专业技术课程,是学生学习软件开发和维护的基本方法、基本技术,掌握软件项目开发规范的工程类课程。
传统的软件工程教材,教学内容庞杂、抽象,教学实践环节薄弱,教学实施方面存在较大的难度,不适合高职院校的学生使用。本书是编者在总结近几年教学经验的基础上,根据高职教育的职业性、实践性和先进性的要求进行编写的。以案例项目“新闻发布系统”为例,按照“可行性研究—需求分析—概要设计—详细设计—编码实现—测试—发布与维护—项目管理”这样一个项目开发过程展开教学过程。把该项目自始至终将设计开发过程的文档展现出来,对涉及的知识和技术进行了说明。将软件项目开发实践与软件工程理论自然地融为一体,将面向对象方法与传统方法融为一体。学生通过学习可以了解软件项目开发和维护的一般过程和项目开发规范,掌握结构化方法和面向对象方法等软件开发方法,能够规范地开发、维护软件,规范地编写软件工程文档资料,具备应用所学知识解决实际问题的实践能力,能够参与中小型规模软件的需求调研、设计、编码实现、测试和维护,为以后更深入地学习和从事软件工程实践打下良好的基础。
本书将“新闻发布系统”项目分解为若干项任务,每项任务又划分为若干项典型子任务。使学生在完成每项任务的过程中完成相关知识点和技术的学习,让学生带着问题学习,用解决实际问题的过程驱动学习过程,减少学习的盲目性,提高学习效率。
根据高等职业教育培养高级技能型人才的要求,本书适当削减了理论叙述方面的内容,增加了一些简单、易于理解的实例。这些实例与贯穿全书的案例项目“新闻发布系统”相辅相成,共同使抽象的理论变得形象、具体、直观,更利于学生学习、理解和掌握。
本书的特点如下。
(1) 案例项目导向,任务驱动,项目贯穿课程的始终。围绕项目整合与规范教学内容,以解决实际问题的过程驱动学习过程。(2) 把面向对象方法和传统化方法自然地融合为一体,增加了面向对象方法在本书中所占的比重,突出了面向对象方法和UML技术的应用。
(3) 理论与实践紧密结合,实用性强、实践性强,实现了教、学、做一体化。
(4) 介绍了最新的软件文档编制规范,供读者参考使用。
本课程适宜在程序设计语言、数据库原理等专业课之后,毕业实习、毕业设计之前开设,建议学时数为72学时,适当安排实践环节,边学边做,分阶段逐步完成实践课题。为方便教师的教学与学生学习,本书配有电子课件供读者免费下载。
本书任务1和任务2由王晓蓓编写,刘振华修订,任务3~任务10由刘振华编写和修订,殷广丽参加了本书的编写工作,窦家勇对全书进行了审核。
在本书的编写过程中,作者参阅了大量文献资料,得到了山东师创软件工程有限公司的大力支持,在此向提供帮助的各位同仁表示感谢。
由于编者水平有限,书中难免有疏漏和不当之处,敬请广大读者和同仁批评指正,编者将不胜感激。
编者2015年12月