首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 图书频道 > 计算机与网络 > 软件工程 >

软件工程基础

2010-04-04 
基本信息·出版社:机械工业出版社 ·页码:178 页 ·出版日期:2008年08月 ·ISBN:7111244885/9787111244882 ·条形码:9787111244882 ·版本:第1版 · ...
商家名称 信用等级 购买信息 订购本书
软件工程基础 去商家看看
软件工程基础 去商家看看

 软件工程基础


基本信息·出版社:机械工业出版社
·页码:178 页
·出版日期:2008年08月
·ISBN:7111244885/9787111244882
·条形码:9787111244882
·版本:第1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:职业教育"十一五"规划教材计算机类专业
·图书品牌:华章图书

内容简介 软件工程已成为计算机科学领域中的一个重要学科。本书着重从实用角度讲述软件工程的基本概念、原理、方法和工具,系统地介绍目前较成熟的、广泛使用的软件工程技术。
本书内容包括:软件工程概述,可行性研究,需求分析,系统设计(概要设计、详细设计),面向对象设计方法和UML的使用,编码,质量保证与软件测试、软件维护以及软件工程管理技术等。每章都有小结,并配有习题供读者练习、提高。
本书可作为职业院校计算机专业及其相关专业的教材,也可供从事计算机软件开发及应用的广大科技人员参考。
本书赠送电子课件,方便教学,需要者请登录www.cmpedu.com免费注册后下载,或联系责任编辑(010-88379194)索取。
编辑推荐 典型案例引领教学
行业企业指导编写——学(在学校)以致用(在企业)的教材
初级培训班、自学爱好者的良师益友——培训用书、自学参考
目录
前言
第1章软件工程概述
1.1软件
1.1.1软件的发展
1.1.2软件的定义及其特点
1.1.3软件的分类
1.2软件工程的产生与发展
1.2.1软件危机
1.2.2软件工程
1.3软件工程的研究对象和基本原理
1.3.1软件工程的研究对象
1.3.2软件工程的基本原理
1.4软件的生存周期及常用的开发模型
1.4.1软件的生存周期
1.4.2常用的软件开发模型
1.5软件过程技术与软件重用技术(阅读内容)
1.5.1软件过程技术
1.5.2软件重用技术
本章小结
习题

第2章可行性研究
2.1可行性研究的任务
2.1.1可行性研究的要素
2.1.2可行性研究的步骤
2.2系统流程图
2.2.1系统流程图的作用
2.2.2系统流程图的符号
2.2.3系统流程图的示例
2.3成本—效益分析
2.3.1成本估算
2.3.2费用估算
2.3.3几种度量效益的方法
2.4可行性研究的文档
本章小结
习题

第3章软件需求分析
3.1软件需求分析的目标和任务
3.1.1软件需求分析的目标
3.1.2软件需求分析的任务
3.2软件需求分析的步骤
3.2.1问题的分析
3.2.2问题评估和方案综合
3.2.3拟定软件需求分析文件
3.2.4软件需求分析的复审
3.3需求分析的原则
3.3.1指导性原则
3.3.2操作性原则
3.4需求分析的方法
3.4.1需求分析方法概述
3.4.2结构化分析方法
3.4.3数据流图
3.4.4数据字典
3.4.5其他分析方法
3.5加工逻辑说明
3.6软件需求分析文件与复审
本章小结
习题

第4章软件的概要设计
4.1软件设计的基本概念
4.2软件设计的原则
4.2.1模块的独立性原则
4.2.2信息隐藏和局部化原则
4.2.3抽象的原则
4.2.4控制层次适中的原则
4.3概要设计的过程
4.4软件设计的方法
4.4.1面向数据流的结构化设计方法
4.4.2面向数据结构的分析设计方法
4.4.3程序的逻辑构造方法
4.5概要设计文件与复审
4.5.1概要设计说明书
4.5.2概要设计的复审
本章小结
习题

第5章软件的详细设计
5.1详细设计的任务和方法
5.1.1详细设计的任务
5.1.2详细设计的方法
5.2详细设计工具
5.2.1程序流程图
5.2.2N-S图
5.2.3PAD图
5.2.4HIPO图
5.2.5判定表和判定树
5.2.6过程设计语言PDL
5.3人—机界面设计
5.3.1人—机界面设计准则
5.3.2人—机界面设计过程
5.4详细设计原则
本章小结
习题

第6章面向对象的分析和设计方法
6.1面向对象方法学
6.1.1面向对象方法学的基本思想
6.1.2面向对象的几个概念..
6.1.3面向对象方法的基本特征
6.1.4面向对象软件开发的三个阶段
6.2面向对象分析
6.2.1对象模型
6.2.2动态模型
6.2.3功能模型
6.2.4项目训练:电梯问题的面向对象分析过程
6.3面向对象设计
6.3.1面向对象设计原则
6.3.2面向对象设计过程
6.4统一建模语言UML
6.4.1UML的概念模型
6.4.2UML的软件开发步骤
本章小结
习题

第7章编码
7.1程序设计语言
7.1.1程序设计语言的分类
7.1.2程序设计语言的特点
7.1.3程序设计语言的选择
7.2结构化程序设计
7.2.1结构化程序设计的概念
7.2.2结构化程序设计的标准结构
7.2.3结构化程序设计的特点
7.3编程风格
7.4程序设计效率
7.4.1代码效率
7.4.2内存效率
7.4.3I/O效率
7.5编程安全
7.5.1冗余编程
7.5.2容错程序设计
本章小结
习题

第8章软件质量与软件测试
8.1软件质量
8.2软件质量保证策略
8.2.1软件质量保证的涵义
8.2.2软件质量保证的实施
8.3软件测试
8.3.1软件测试的基本概念
8.3.2软件测试的过程与策略
8.4软件测试方法
8.4.1软件的静态分析
8.4.2软件的动态测试
8.5软件测试用例设计
8.5.1设计测试方案
8.5.2等价类划分
8.5.3边界值分析
8.5.4错误推测法
8.5.5逻辑覆盖法
8.5.6因果图
8.5.7测试方法选择的综合策略
8.6软件调试
8.6.1调试的步骤
8.6.2几种主要的调试方法
8.6.3调试原则
本章小结
习题

第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.2.5评价维护活动
9.3.软件维护的副作用
9.3.1修改代码的副作用
9.3.2修改数据的副作用
9.3.3修改文档的副作用
9.4软件的可维护性
9.4.1影响可维护性的因素
9.4.2可维护性的度量
9.4.3可维护性复审
9.4.4提高可维护性的方法
本章小结
习题

第10章软件项目计划与管理
10.1软件项目
10.1.1软件项目特点
10.1.2软件项目计划
10.2软件管理的功能
10.3软件配置管理的过程
10.3.1启动一个软件项目
10.3.2制定项目计划
10.3.3计划的追踪和控制
10.3.4评审和评价计划的完成程度
10.3.5评审编写管理文档
10.4软件开发进度安排
10.4.1软件开发小组人数与软件生产率
10.4.2任务的确定与并行性
10.4.3制定开发进度计划
10.4.4进度安排的方法
10.4.5项目的追踪和控制
10.5软件项目的组织
10.5.1项目任务的划分
10.5.2软件项目组织的建立
10.5.3人员配备
10.5.4指导与检验
本章小结
习题
参考文献
……
序言 随着计算机科学技术的快速发展和计算机应用领域的不断扩大,软件的复杂程度不断增加,对软件的规范化、可维护性和可重用性的要求也越来越高,因而,软件工程技术变得日益重要。
借鉴职业教育教学经验,为适应当前教学的需要,按照职业院校的教学要求和教材特点,编写了这本教材。本书编写时除保证应用性强外,还特别注意保持语言精炼、易于理解、可读性好的特点。为方便读者掌握重点和巩固学习内容,每章后都有小结和习题,供读者复习选用。
本书从实用角度介绍了软件工程的基础知识和软件工程技术方法。全书共分10章。第1章软件工程概述,主要介绍了软件工程基本概念以及软件开发模型;第2章软件的可行性研究,主要介绍了可行性研究的任务、系统流程图、软件的成本一效益分析;第3章软件需求分析,主要介绍了软件需求分析的步骤、原则和方法,重点介绍了面向数据流的需求分析方法;第4章软件的概要设计,主要介绍了软件概要设计任务、设计过程、设计原则,重点介绍了面向数据结构的分析设计方法等;第5章软件的详细设计,主要讲述了软件详细设计的任务和方法,重点介绍了详细设计工具;第6章面向对象的分析和设计方法,主要讲述了面向对象方法学、面向对象的基本特征、统一建模语言UML等,重点介绍了面向对象的分析和设计;第7章编码,主要讲述了程序设计语言的分类、特点、选择、编程风格、程序设计效率和编码安全等;第8章软件质量与软件测试,主要讲述了软件质量、软件质量保证策略、软件测试方法和步骤、软件测试中的可靠性分析,重点介绍了软件测试用例技术;第9章软件维护,主要讲述了软件维护的基本概念,软件维护的过程,软件维护的副作用,软件的可维护性等;第10章项目计划与管理,主要讲述了软件项目特点、软件管理的功能、软件配置管理的过程、开发进度的安排、软件项目的组织等。
本书主要作为职业院校计算机专业及其相关专业的教材,同时也可供从事计算机软件开发及应用的广大科技人员作为工具参考书。
本书卣李国彬主编,孙心义担任主审,王洪香、张莹、包剑、郑艳杰参与了编写。其中第1、2、9章由李国彬编写,第7章由王洪香编写,第5、6章由张莹编写,第8、10章由包剑编写,第3、4章由郑艳杰编写。在本书的编写过程中,辽宁工程技术大学职业技术学院计算机系的领导给予了大力的支持,黄金波、沈淑清、冀明等老师为本书提出了许多宝贵意见,阜新市五星电子商务中心为本书的编写提供了方便,在此一并致以谢意!
由于作者水平有限,加之编写时间仓促,书中疏漏和欠妥之处在所难免,欢迎广大师生和读者提出批评指正。
文摘 第1章软件工程概述
软件工程学是引导计算机软件产业发展的一个标志性学科。随着微电子技术的飞速发展,计算机硬件设备的价格急剧下降,功能不断提高,但软件生产的成本却居高不下,导致软件系统的开发成本逐年上升,产品质量难以控制,成品不便于维护,生产率也远远跟不上实际需求。因此,软件的生产与维护,成为了限制计算机应用系统继续快速发展的关键因素。西方计算机科学家把在软件开发和维护过程中遇到的一系列严重问题统称为“软件危机”,并从20世纪60年代末开始认真研究解决软件危机的方法,从而逐步形成了一门新兴的学科——计算机软件工程学。
1.1 软件
1946年,世界上诞生了第一台电子计算机,当时并没有软件的概念,更没有软件工程的概念,程序的编写多是由经过训练的数学家和电子工程师来完成。进入20世纪60年代,美国大学里开始出现计算机专业,软件产业从此开始起步。经过多年的发展,软件产业已经成为推动人类社会发展的龙头产业,并造就了一批百万、亿万富翁。随着信息产业的不断发展,软件产业对人类社会产生的影响将越来越重要。
1.1.1软件的发展
随着计算机硬件性能的极大提高和计算机体系结构的不断变化,计算机软件系统更加成熟且更为复杂,从而促使计算机软件的角色发生了巨大的变化,人们对软件的认识也因此经历了一个由浅到深的过程,其发展过程大致可以分为如图1-1所示的4个阶段。
1.程序设计阶段
20世纪50年代初期至60年代初期的十余年,是计算机系统开发的初期阶段,称为程序设计阶段。这个阶段硬件已经通用化,而软件几乎都是为每个具体应用专门编写的,编写者和使用者往往是同一个或同一组人。在这些个体化的程序设计环境中,人们的头脑中根本就没有软件设计这个概念,除了最后的程序清单外,没有其他任何文档资料保存下来。
在程序设计阶段,人们认为计算机的主要用途就是快速运算,程序的编写非常简单,不存在什么系统化的方法,对开发没有任何管理,程序的质量完全依赖于程序员个人的技巧。而且,为了提高计算机的使用效率,初期开发的计算机系统采用了批处理技术,但事与愿违的是,这种做法使得程序的设计、调试和修改都变得非常麻烦。
热点排行