出版时间:2009-3 出版社:陈雄峰 机械工业出版社 (2009-03出版) 作者:陈雄峰 页数:227
前言
软件开发成功最主要的标准是用户正在使用该软件,且可以通过使用该软件方便快捷地完成自身的业务过程。然而,软件的应用范围和规模在不断扩大,要成功地开发一个软件并不容易,常常出现进度超期、成本超标和质量无法保证等问题,统称为软件危机。实践证明,解决软件危机的主要途径就是软件工程化,即把软件工程的理论和方法有计划、有步骤地应用于软件开发的过程中。软件工程化的核心工作是软件开发过程的工程化和标准化。现阶段的软件开发技术,如构件、可视化编程等技术及其辅助工具,已经为实现软件工程化提供了一定的技术基础,但由于软件本身复杂性等特点和开发工具自动化程度相对滞后等原因,软件产业还是智力密集型产业,所以,是否能有效实现软件工程化在很大程度上取决于软件人员是否受到足够的工程化和标准化训练。也就是说,只有当软件人员掌握并深刻理解了软件工程的基本原理和方法,能借助适当的工具把这些原理和方法运用于软件开发过程的相应阶段,养成了工程化的良好职业素养,才能真正在软件开发过程中落实质量保证的各种活动。本书系在总结编者多年的实际软件项目开发和相关课程教学经验的基础上编写而成的,按照软件开发过程模型的顺序,并结合相对完整的实践案例,系统地介绍基本过程、原理、方法等实用的软件工程知识,可以帮助读者更为真切地体会并合理运用这些原理和方法,以便尽快适应软件开发工程化的要求。本书可分成两个部分:第一部分为软件工程基础,包括第l一4章,介绍软件工程基本概念、过程建立、质量保证、项目管理和系统思维等贯穿整个软件生存期的保护性活动及其方法;第二部分为软件工程过程与方法,包括第5-10章,顺序介绍从整个计算机系统的可行性研究,软件的需求分析、设计、编码、测试到维护各个阶段的活动、任务及其方法,其中,第6-7章结合案例“图书管理系统”分别介绍两种最常用的系统分析与设计方法,即结构化和面向对象分析与设计方法。各章所介绍的具体内容有:第l章首先介绍软件工程产生的背景、软件的基本概念、软件工程的定义及其要素,而后围绕软件工程中的过程、方法和工具三要素进一步介绍软件过程与软件生命周期、软件工程方法学和软件开发工具与环境。第2章首先介绍软件工程标准的分类、层次以及中国的国家标准:然后详细说明了软件文档的种类及其编写要求、软件质量的特性以及两种常用的软件质量保证与过程改进的体系标准。第3章首先简要介绍项目开始之前的项目选择,以及项目结束时的项目总结,而后重点围绕制定计划、建立组织、配备人员、协调和控制五大项目管理职能介绍相应的管理方法,最后介绍贯穿全过程的保护性活动——软件配置管理。第4章作为后续系统分析与设计学习的知识准备,首先介绍系统工程、需求工程、系统、计算机系统和信息系统的基本概念,然后介绍系统和系统思维的特点,以及培养系统思维的技巧和需求获取的常用方法。
内容概要
《实用软件工程教程》按照软件开发过程模型的顺序,并结合相对完整的实践案例,系统地介绍基本过程、原埋和方法等实用的软件工程知识。第1~4章介绍软件工程基本概念、过程建立、质量保证、项目管理和系统思维等贯穿整个软件生存期的保护性活动及其方法;第5~10章顺序介绍从整个计算机系统的可行性研究、软件的需求分析、设计、编码、测试到维护等软件开发全过程各个阶段的活动、任务及其方法,其中,第6—7章结合案例“图书管理系统”分别介绍两种最常用的系统分析与设计方法,即结构化和面向对象分析与设计方法。为了配合教学,《实用软件工程教程》每章均有教学要点、小结和思考题,附录中有“软件上程实践指导书”和系统的设计文档案例 《实用软件工程教程》系在总结编者多年的实际软件项目开发和相关课程教学经验的基础上编写而成的,内容及其编排顺序可以让读者较为真切地体会和掌握如何在软件开发过程中运用软件工程的实用知以,体验软件开发丁程化的全过程,以便能尽快适应软件开发工程化的要求。
书籍目录
前言第1章 软件工程概述1.1 软件工程产生背景1.1.1 软件特点及分类1.1.2 软件危机1.2 软件工程的要素1.2.1 软件翻里的定义1.2.2 软件工程三要素1.2.3 软件丁程原理与原则1.3 软件过程与软件生存周期1.3.1 软件过程的概念1.3.2 软件过程的构造1.3.3 软件生存周期1.4 软件工程方法学与软件开发模型1.4.1 软件工程方法学1.4.2 软件开发模犁1.5 软件开发工具与环境1.5.1 软件工具1.5.2 软件开发环境本章小结思考题1第2章 软件工程标准化与工程化2.1 软件工程标准2.1.1 软件工程标准概述2.1.2 软件工程标准的层次2.1.3 我国的软件标准2.2 软件文档与编写要求2.2.1 文档的分类2.2.2 文档编制的要求2.3 软件质量2.4 软件质量保证与过程改进2.4.1 质量保证的概念2.4.2 软件过程改进2.4.3 软件过程成熟度模型2.4.4 ISO9000标准及软件质量认证2.4.5 软件过程工程化本章小结思考题2第3章 软件项目管理3.1 软件项目管理概述3.2 软件项目启动与计划3.3 软件项目人员组织与技能3.3.1 项目组织结构的形式3.3.2 程序设计小组的形式3.3.3 人员配备3.4 软件项目实施与控制3.4.1 软件项目风险管理3.4.2 软件项目进度管理3.4.3 软件项目质量管理3.5 软件配置管理本章小结思考题3第4章 系统工程与需求工程方法4.1 系统思维方法4.1.1 系统的概念4.1.2 系统思维4.1.3 系统分析员4.2 计算机系统工程4.3 需求获取方法本章小结思考题4第5章 可行性研究5.1 可行性研究步骤与任务5.2 可行性分析本章小结思考题5第6章 结构化分析与设计6.1 需求分析任务6.1.1 需求分析任务与步骤6.1.2 需求获取的内容6.2 结构化分析6.2.1 功能建模6.2.2 数据建模6.2.3 行为建模6.3 需求规格说明书编写与评审6.4 结构化设计概述6.4.1 任务与步骤6.4.2 设计原则与原理6.5 软件结构设计6.5.1 结构表示6.5.2 面向数据流的设计方法6.6 人机界面设计6.6.1 人机界面设计问题6.6.2 人机界面设计过程6.6.3 人机界面设计指南6.6.4 人机界面测试与评估6.7 过程设计6.7.1 结构化程序设计方法6.7.2 图形表示法6.7.3 表格表示法6.7.4 语言描述法6.8 软件设计规格说明书编写与评审本章小结思考题6第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.3 面向对象设计7.3.1 系统设计7.3.2 对象设计案例:“图书管理系统”面向对象分析与设计本章小结思考题7第8章 编码与实现8.1 结构化程序设计8.1.1 程序设计语言的选择8.1.2 程序设计风格8.2 程序结构复杂程度的度量8.2.1 McCabe方法8.2.2 Halstead方法8.3 面向对象实现本章小结思考题8第9章 软件测试9.1 软件测试目标和方法9.1.1 测试目标9.1.2 测试方法9.1.3 测试原则9.2 测试步骤9.2.1 单元测试9.2.2 集成测试9.2.3 确认测试9.2.4 系统测试9.3 测试用例设计9.3.1 黑盒法9.3.2 白盒法9.4 调试9.5 可靠性分析9.6 面向对象测试策略本章小结思考题9第10章 软件维护10.1 软件维护过程10.1.1 软件维护的定义10.1.2 软件维护的特点10.1.3 软件维护的过程10.2 可维护性10.2.1 决定可维护性的因素10.2.2 提高可维护性的方法10.3 再工程本章小结思考题10附录附录A 图书管理系统可行性研究报告附录B 图书管理系统项目开发计划附录C 图书管理系统需求规格说明书附录D 图书管理系统软件设计规格说明书附录E 软件工程实践指导书参考文献
章节摘录
插图:第1章 软件工程概述教学要点:本章首先介绍软件工程产生的背景、软件的基本概念、软件工程的定义及其要素,而后围绕软件工程中的过程、方法和工具三要素进一步介绍软件过程与软件生命周期、软件工程方法学和软件开发工具与环境的主要含义,以使学习者对软件主程有一个较全面的认识和理解。重点掌握:软件、软件三要素和软件工程化的含义。1.1 软件工程产生背景人们对软件的认识和理解有一个逐步深入的过程,直到现在还有许多人错误地认为软件就是程序。实际上,软件是由计算机程序、数据及文档组成的。准确地说,软件是当它被执行时提供所希望功能和性能的计算机程序,以及使得程序能够适当地操作信息的数据结构和描述程序的操作使用的文档。虽然软件已经成为基于计算机的系统及相关产品的关键因素,但它不能脱离其运行环境而独立发挥作用,软件只是计算机系统或产品的一个组成部分,软件与硬件、数据库、人、过程等共同构成一个相互联系和相互作用的计算机系统。另外,软件本身又是一个内部组成部分之间相互联系和作用的整体,通常也可称为软件系统。系统的特点要求开发软件时必须使用系统思维充分地综合考虑软件内部之问及其与计算机系统其他组成元素之问的联系。同时计算机应用范围及其所需软件规模在日益扩大,导致了计算机发展初期的基于程序设计的思维无法保证开发出有一定规模的高质量软件,在软件开发过程中出现了一些问题,通常统称为软件危机。
编辑推荐
《普通高等教育"十一五"计算机类规划教材•实用软件工程教程》既可作为高等院校计算机及相关本、专科专业的实用软件工程或软件工程概论教材,也可作为软件开发和管理人员的阅读参考书。
图书封面
评论、评分、阅读与下载