出版时间:2010-6 出版社:东北大学出版社 作者:李惠明,敖广武 页数:269
Tag标签:无
前言
软件工程是计算机科学与技术领域的一门重要学科。20世纪60年代末期以来,人们为克服“软件危机”在这一领域做了大量工作,逐渐形成了系统的软件开发理论、技术和方法,在软件开发实践中发挥了重要作用。今天,现代科学技术将人类带入了信息社会,计算机软件扮演着十分重要的角色,软件工程已成为信息社会高技术竞争的关键领域之一,而“软件工程”已成为高等学校计算机教育计划中的一门核心课程。 软件工程是应用计算机科学技术、数学、管理学的原理,运用工程科学的理论、方法和技术,研究和指导软件开发和演化的一门交叉学科。其教学目的在于使学生掌握软件工程的基本概念和原则,培养学生使用工程化的方法高效地开发高质量软件的能力,以及进行项目管理的能力。 软件工程是一门理论与实践并重的课程。本书在讲述软件工程的基本概念、原理和方法的基础上,详细而全面地介绍了可以实际用于软件开发实践的各种技能。旨在使学生通过有限课时的学习后,不仅能对软件工程的原理有所认识,而且能具备实际开发软件的各种技能,比如熟练使用各种软件工程工具,按照标准和规范编写文档等。本书使用了两个案例贯穿于各章的实践部分,使读者能通过实例对软件开发过程有一个系统的了解。全书分为四个部分。第一部分:软件工程概述。共2章内容,初步介绍软件工程及软件过程的基本概念和基本内容。 第二部分:传统方法学。在这一部分共安排了3章内容,主要介绍用结构化方法学进行软件分析、设计与实现的原理和方法。本部分通过库存管理系统案例深入理解结构化分析、设计和实现过程。 第三部分:面向对象方法学。在这一部分共安排4章内容,主要介绍用面向对象方法学进行软件分析、设计与实现的原理和方法。本部分通过学生管理系统案例深入理解面向对象分析、设计和实现过程。 第四部分:软件项目管理。在这一部分安排4章内容,主要介绍有效进行软件项目计划、项目组织和项目控制的原理和方法以及软件过程标准和软件文档。
内容概要
《软件工程》是介绍软件开发方法、提高学生软件开发能力的一门课程。《软件工程》采用任务驱动案例教学的方式,详细讲述了软件工程的基本原理、概念、技术和方法。全书分为4篇,主要内容包括软件工程概述、传统开发方法、面向对象开发方法和软件项目管理。《软件工程》是针对高职高专院校计算机应用专业学生编写的教材,同时也适合于应用层次本科计算机专业的学生使用,并可供有一定实践经验的软件开发人员、计算机科学爱好者参考使用。
书籍目录
第一篇 软件工程概述第1章 软件工程1.1 软件1.1.1 软件的发展1.1.2 软件定义1.2 软件危机1.2.1 软件危机及其产生原因1.2.2 解决软件危机的途径1.3 软件工程1.3.1 软件工程的概念1.3.2 软件工程的基本原理1.3.3 软件工程方法学1.4 本章 小结习题第2章 软件过程2.1 软件过程2.2 软件的生命周期2.3 软件过程模型2.3.1 瀑布模型2.3.2 原型模型2.3.3 增量模型2.3.4 螺旋模型2.3.5 变换模型2.3.6 喷泉模型2.3.7 智能模型2.3.8 第四代技术(4GT)模型2.4 软件过程改进2.5 本章 小结第二篇 传统方法学第3章 结构化分析3.1 结构化分析概述3.2 软件计划3.2.1 问题定义3.2.2 可行性分析3.3 需求分析概述3.3.1 需求分析的任务3.3.2 需求分析的过程3.4 需求获取3.5 分析建模3.5.1 分析模型3.5.2 数据流图3.5.3 数据字典3.5.4 加工说明的描述工具3.5.5 实体联系图3.6 需求需求说明书3.7 需求验证3.8 本章 小结习题第4章 结构化设计4.1 结构化设计概述4.1.1 结构化设计的概念与原理4.1.2 模块独立4.1.3 结构设计准则4.2 总体设计4.2.1 总体设计过程4.2.2 面向数据流的设计方法4.2.3 设计优化4.2.4 总体设计说明书4.3 详细设计4.3.1 详细设计概述4.3.2 详细设计工具4.3.3 数据库设计4.3.4 人机界面设计4.3.5 库存管理系统详细设计4.3.6 详细设计说明书4.4 本章 小结习题第5章 结构化实现5.1 程序编码5.1.1 结构化程序设计5.1.2 程序设计语言5.1.3 编码风格5.1.4 编码效率5.2 软件测试5.2.1 测试的基本概念5.2.2 白盒测试5.2.3 黑盒测试5.2.4 单元测试5.2.5 集成测试5.2.6 确认测试5.2.7 系统测试5.2.8 测试策略5.3 软件调试5.3.1 调试过程5.3.2 调试技术5.3.3 调试原则5.4 本章 小结习题第三篇 面向对象方法学第6章 面向对象方法学6.1 面向对象方法概述6.1.1 对象6.1.2 类6.1.3 面向对象的定义6.1.4 面向对象的基本特征6.1.5 面向对象方法的优点6.2 面向对象开发过程6.2.1 面向对象分析6.2.2 面向对象设计6.2.3 面向对象编程6.2.4 面向对象测试6.2.5 面向对象维护6.3 面向对象建模6.3.1 模型6.3.2 建模的目的6.3.3 建模的重要性6.3.4 面向对象建模方法6.4 I.UML6.4.1 UML的组成6.4.2 UML的建模机制6.4.3 常用的UML图6.4.4 UML的主要特点6.4.5 UML的应用领域6.5 本章 小结习题第7章 面向对象分析7.1 面向对象分析概述7.1.1 需求获取7.1.2 面向对象分析模型7.1.3 面向对象分析的步骤7.2 面向对象分析过程7.2.1 问题域分析建立用例模型7.2.2 发现和定义对象与类7.2.3 识别对象的内部特征7.2.4 识别对象的外部联系7.2.5 识别对象之间的交互7.3 本章 小结习题第8章 面向对象设计8.1 面向对象设计概述8.1.1 面向对象设计任务8.1.2 面向对象设计的准则8.2 系统设计8.2.1 子系统划分第九章 面向对象实现第四篇 软件项目管理
章节摘录
(1)面向对象分析的测试(OOA Test) 传统的面向过程分析是一个功能分解的过程,是把一个系统看成可以分解的功能的集合。这种传统的功能分解分析法的着眼点在于一个系统需要什么样的信息处理方法和过程,以过程的抽象来对待系统的需要。而面向对象分析(OOA)是“把E-R图和语义网络模型,即信息造型中的概念,与面向对象程序设计语言中的重要概念结合在一起而形成的分析方法”,最后通常是得到问题空间的图表形式的描述。 OOA直接映射问题空间,全面的将问题空间中实现功能的现实抽象化。将问题空间中的实例抽象为对象,用对象的结构反映问题空间的复杂实例和复杂关系,用属性和方法表示实例的特征和行为。对一个系统而言,与传统分析方法产生的结果相反,行为是相对稳定的,结构是相对不稳定的,这更充分反映了现实的特性。OOA的结果是为后面阶段类的选定和实现,类层次结构的组织和实现提供平台。因此,OOA对问题空间分析抽象的不完整,最终会影响软件的功能实现,导致软件开发后期大量可避免的修补工作;而一些冗余的对象或结构会影响类的选定、程序的整体结构或增加程序员不必要的工作量。因此,本书对OOA的测试重点在其完整性和冗余性。
图书封面
图书标签Tags
无
评论、评分、阅读与下载