出版时间:2009-1 出版社:机械工业 作者:刘冰//赖涵//瞿中//王化晶 页数:308
前言
近年来,随着我国信息化建设的全面推进和高等教育的蓬勃发展,高等院校的计算机教育模式也在不断改革,计算机学科的课程体系和教学内容趋于更加科学和合理,计算机教材建设逐渐成熟。在“十五”期间,机械工业出版社组织出版了大量计算机教材,包括“21世纪高等院校计算机教材系列”、“21世纪重点大学规划教材”、“高等院校计算机科学与技术‘十五’规划教材”、“21世纪高等院校应用型规划教材”等,均取得了可喜成果,其中多个品种的教材被评为国家级、省部级的精品教材。为了进一步满足计算机教育的需求,机械工业出版社策划开发了“高等院校规划教材”。这套教材是在总结我社以往计算机教材出版经验的基础上策划的,同时借鉴了其他出版社同类教材的优点,对我社已有的计算机教材资源进行整合,旨在大幅提高教材质量。我们邀请多所高校的计算机专家、教师及教务部门针对此次计算机教材建设进行了充分的研讨,达成了许多共识,并由此形成了“高等院校规划教材”的体系架构与编写原则,以保证本套教材与各高等院校的办学层次、学科设置和人才培养模式等相匹配,满足其计算机教学的需要。本套教材包括计算机科学与技术、软件工程、网络工程、信息管理与信息系统、计算机应用技术以及计算机基础教育等系列。其中,计算机科学与技术系列、软件工程系列、网络工程系列和信息管理与信息系统系列是针对高校相应专业方向的课程设置而组织编写的,体系完整,讲解透彻;计算机应用技术系列是针对计算机应用类课程而组织编写的,着重培养学生利用计算机技术解决实际问题的能力;计算机基础教育系列是为大学公共基础课层面的计算机基础教学而设计的,采用通俗易懂的方法讲解计算机的基础理论、常用技术及应用。本套教材的内容源自致力于教学与科研一线的骨干教师与资深专家的实践经验和研究成果,融合了先进的教学理念,涵盖了计算机领域的核心理论和最新的应用技术,真正在教材体系、内容和方法上做到了创新。同时本套教材根据实际需要配有电子教案、实验指导或多媒体光盘等教学资源,实现了教材的“立体化”建设。本套教材将随着计算机技术的进步和计算机应用领域的扩展而及时改版,并及时吸纳新兴课程和特色课程的教材。我们将努力把这套教材打造成为国家级或省部级精品教材,为高等院校的计算机教育提供更好的服务。对于本套教材的组织出版工作,希望计算机教育界的专家和老师能提出宝贵的意见和建议。衷心感谢计算机教育工作者和广大读者的支持与帮助!
内容概要
本书从实用的角度出发,根据教育部高教司审定的《中国计算机科学与技术学科教程2002》中对软件工程的要求编写,并参照美国ACM和IEEE Computing Curricula 2001教程关于软件工程的描述,吸取了国内外软件工程的精华,详细介绍了软件工程、软件开发过程、软件计划、需求分析、总体设计、详细设计、编码、软件测试、软件维护、软件工程标准化和软件文档、软件工程质量、软件工程项目管理以及软件工程开发实例。各章均配有习题,以指导读者深入地进行学习,部分章后附有经典例题讲解和实验内容,帮助读者掌握相关知识。? 本书既可作为高等学校计算机专业课程的教材或教学参考书,也可作为通信、电子信息、自动化等相关专业的计算机课程教材,还可供软件工程师、软件项目管理者和应用软件开发人员阅读参考。
书籍目录
出版说明前言第1章 基础知识1.1 概述1.1.1 基本概念1.1.2 软件危机1.2 软件生存周期和软件过程1.2.1 软件生存周期1.2.2 软件开发过程模型1.2.3 软件开发方法1.2.4 软件开发工具1.3 经典例题讲解1.4 Visio绘图初步1.4.1 Visio 2007简介1.4.2 Microsoft Office Visio 2007工作环境1.5 Visio操作入门1.5.1 实验目的1.5.2 实验案例1.5.3 实验内容1.6 小结1.7 习题第2章 需求分析2.1 可行性研究2.1.1 问题定义2.1.2 可行性研究的任务2.1.3 可行性研究的步骤2.2 需求分析2.3 获取需求的方法2.4 成本—效益分析2.4.1 成本估算方法2.4.2 成本估算模型2.5 结构化分析方法2.5.1 数据流图2.5.2 数据字典2.5.3 实体关系图2.5.4 描述加工处理的结构化语言2.6 面向对象分析方法2.6.1 面向对象分析简介2.6.2 基于用例的分析建模2.6.3 评审分析模型2.7 快速原型分析方法2.8 经典例题讲解2.9 基于Rational Rose 2003的UML建模2.9.1 Rational Rose 2003简介2.9.2 Rose建模环境2.9.3 Rose模型的视图2.9.4 Rose建模界面2.10 小结2.11 习题第3章 系统设计3.1 系统设计的目的和任务3.2 系统总体设计3.2.1 总体布局3.2.2 设计原则3.2.3 总体设计的启发规则3.2.4 面向数据流的设计方法3.2.5 面向对象的设计方法3.2.6 总体设计的工具3.2.7 模块结构设计3.3 系统详细设计3.3.1 详细设计阶段的任务3.3.2 详细设计的原则3.3.3 详细设计工具3.3.4 代码设计3.3.5 数据库设计3.3.6 用户界面设计3.3.7 Jackson程序设计方法3.3.8 Warnier程序设计方法3.3.9 基于组件的设计方法3.4 经典例题讲解3.5 应用Visio进行数据库建模3.5.1 实验目的3.5.2 实验案例3.5.3 实验内容3.6 应用Visio进行软件界面设计3.6.1 实验目的3.6.2 实验案例3.7 小结3.8 习题第4章 系统实施4.1 系统实施概述4.2 程序设计风格4.3 程序设计语言的选择4.4 程序的复杂性及度量4.4.1 代码行度量法4.4.2 McCabe度量法4.5 小结4.6 习题第5章 系统测试5.1 系统测试的任务和目标5.2 系统测试方法5.2.1 黑盒测试5.2.2 白盒测试5.2.3 灰盒测试5.2.4 面向对象的测试5.2.5 人工测试5.2.6 机器测试5.3 测试步骤5.3.1 单元测试5.3.2 集成测试5.3.3 确认测试5.3.4 系统测试5.3.5 验收测试5.4 面向对象软件测试5.4.1 面向对象测试模型5.4.2 面向对象分析的测试5.4.3 面向对象设计的测试5.4.4 面向对象编程的测试5.4.5 面向对象的单元测试5.4.6 面向对象的集成测试5.4.7 面向对象的系统测试5.5 测试设计和管理5.5.1 错误曲线5.5.2 测试用例设计5.6 软件测试工具5.7 经典例题讲解5.8 小结5.9 习题第6章 系统运行和维护6.1 系统运行管理的任务和目标6.2 软件维护的概念6.3 软件维护的特点6.4 软件维护的步骤6.5 软件的可维护性6.5.1 软件可维护性概述6.5.2 软件维护的类型6.5.3 软件可维护性度量6.6 逆向工程和再工程6.7 经典例题讲解6.8 小结6.9 习题第7章 面向对象建模7.1 面向对象的软件工程7.2 面向对象方法的特点7.3 面向对象方法学当前的研究及实践领域7.4 面向对象的基本概念7.5 统一建模语言和统一过程7.5.1 统一建模语言概述7.5.2 UML的基本实体7.5.3 常用的UML图7.6 经典例题讲解7.7 应用Rose画用例图7.7.1 实验目的7.7.2 实验案例7.7.3 实验内容7.8 应用Rose画交互图7.8.1 实验目的7.8.2 实验案例7.8.3 实验内容7.9 应用Rose画类图7.9.1 实验目的7.9.2 实验案例7.9.3 实验内容7.10 应用Rose画状态图和活动图7.10.1 实验目的7.10.2 实验案例7.10.3 实验内容7.11 应用Rose画组件图和部署图7.11.1 实验目的7.11.2 实验案例7.11.3 实验内容7.12 小结7.13 习题第8章 软件工程标准化和软件文档8.1 软件工程标准化的概念8.2 软件工程标准的制定与推行8.3 软件工程标准的层次和体系框架8.3.1 软件工程标准的层次8.3.2 软件工程过程中版本控制与变更控制处理过程8.3.3 中国的软件工程标准化工作8.4 ISO 9000国际标准概述8.5 软件文档8.5.1 软件文档的作用和分类8.5.2 对软件文档编制的质量要求8.5.3 软件文档的管理和维护8.6 小结8.7 习题第9章 软件工程质量9.1 软件质量特性9.2 软件质量的度量模型9.3 软件质量保证9.4 技术评审9.5 软件质量管理体系9.5.1 软件产品质量管理的特点9.5.2 软件质量管理体系9.6 小结9.7 习题第10章 软件工程项目管理10.1 软件项目管理的特点和职能10.2 软件项目管理活动10.3 计划和组织10.3.1 项目计划的制定10.3.2 项目组人员管理原则10.3.3 人员组织与管理10.4 进度计划10.4.1 制定开发进度计划10.4.2 甘特图与时间管理10.4.3 工程网络与关键路径10.5 风险管理10.6 软件成熟度模型10.6.1 CMM简介10.6.2 CMM成熟度级别10.7 项目管理认证体系IPMP与PMP10.8 经典例题讲解10.9 应用Project 2007进行项目管理10.9.1 Project 2007简介10.9.2 Project 2007工作界面10.9.3 项目管理专用术语概览10.10 Project操作入门10.10.1 实验目的10.10.2 实验案例10.10.3 实验内容10.11 利用Project制定项目计划10.11.1 实验目的10.11.2 实验案例10.11.3 实验内容10.12 小结10.13 习题第11章 开发实例11.1 可行性研究11.2 需求分析11.3 系统设计11.4 系统实施11.5 测试11.6 运行和维护附录 国家标准文档格式下载地址参考文献
章节摘录
插图:第1章 基础知识1.1 概述1.1.1 基本概念1.软件“软件”这个词汇于20世纪60年代被首次提出。一个完整的计算机系统由软件和硬件组成,它们相互依存,缺一不可。IEEE给软件的定义:软件是计算机程序、规程以及运行计算机系统可能需要的相关文档和数据。其中:1)计算机程序是计算机设备可以接受的一系列指令和说明,为计算机的运行提供所需的功能和性能。2)数据是事实、概念或指令的结构化表示,能够被计算机设备接收、理解或处理。3)文档是描述程序研制过程、方法及使用的图文材料。从软件的内容来说,软件更像是一种嵌入式的数字化知识,其形成是一个通过交互对话和抽象理解而不断演化的过程。软件是一种特殊的产品,它具有如下特点。1)复杂性:软件比任何其他人类制造的结构更复杂,甚至硬件的复杂性和软件相比也是微不足道的。软件本质上的复杂性使软件产品难以理解,影响软件过程的有序性和软件产品的可靠性,并使维护过程变得十分困难。2)一致性:软件必须遵从人为的习惯并适应已有的技术和系统,软件需要随接口的不同而改变,随时间的推移而变化,而这些变化是不同的人设计的结果。许多复杂性来自保持与其他接口的一致,对软件的任何再设计,都无法简化这些复杂特性。3)可变性:软件产品扎根于文化的母体中,如各种应用、用户、自然及社会规律、计算机硬件等,这些因素持续不断地发生着变化,而这些变化使软件随之变化。人们总是认为软件是很容易修改的,通常忽视了修改带来的副作用,即引入新的错误,造成故障率的升高。4)不可见性:软件是客观世界和计算机之间的一种逻辑实体,不具有物理的形体特征。软件这种无法可视化的固有特性,剥夺了一些具有强大功能的概念工具的构造思路,不仅限制了个人的设计过程,也严重地阻碍了相互之间的交流。由于软件的不可见性,定义“需要做什么”成为软件开发的根本问题。
编辑推荐
《软件工程实践教程》既可作为高等学校计算机专业课程的教材或教学参考书,也可作为通信、电子信息、自动化等相关专业的计算机课程教材,还可供软件工程师、软件项目管理者和应用软件开发人员阅读参考。
图书封面
评论、评分、阅读与下载