出版时间:2004-4 出版社:高等教育 作者:高等教育 页数:458 字数:600000
Tag标签:无
前言
近年来,由于计算机硬件、软件、网络的飞速发展和广泛应用,人们迎来了信息社会和知识经济。我国进入了以信息化带动工业化、以工业化促进信息化的新的历史时期。而软件产业肩负着发展信息产业、对传统产业进行信息化改造的历史任务。为适应这一形势发展的需要,我国加快软件人才培养的步伐,扩大软件人才培养规模,深化软件教学改革,加强计算机应用教育,扩大对外交流,短短几年取得了长足进步。 自1997年本书问世以来,软件工程领域涌现了许多新的技术和方法,其中尤以软件能力成熟度模型(CMM)、统一建模语言(UML)以及基于UML的面向对象软件开发方法的影响最为深远。与此同时,"软件工程"课程在高等院校计算机教学计划中的重要性也与日俱增,ACM、IEEE-CS联合推出的CC'2001将软件工程作为计算机学科的14个知识领域之一,还专门制定了软件工程学科方向的教学计划。 为了适应高等院校软件工程教学工作的需要,我们对"软件工程"教材进行了修订。作者在保持第一版基本结构和风格的前提下,增加了软件能力成熟度模型(CMM)的有关内容,以统一建模语言(UML)为基础全部改写了面向对象的需求分析与软件设计两章,并对初版中发现的不妥之处进行了全面修订。希望这些措施能够促进"软件工程"课程的教学内容改革,提高学生的软件开发能力和项目管理能力。 本书主要供计算机及信息领域相关专业高年级本科生及硕士研究生作为软件工程课程的教材使用,同时,也适合软件开发人员与软件项目管理人员用作技术参考书。在教学计划中,如果讲授60学时,建议采用第一至第二十章的自然顺序讲授,其中带"*"的内容可酌情处理。实习以12至20学时为宜。如果以40学时讲授本书,对于高年级本科生,建议的教学内容及次序为:第一、二章→第四至六章→第八至十章→第十二至十五章→第十七、十八章;对于已在本科阶段学过软件工程的硕士研究生,建议的教学内容及次序为:第二、三章第四、六章及第七章中的形式化方法→第十章→第十六章→第十七至十九章→*第二十章。根据培养目标和学生的实际情况,实习以10至20学时为宜。 "软件工程"第一版问世以来,得到了很多高等院校计算机专业老师和同学的大力支持,2000年曾荣获教育部科技进步(教材)二等奖,并被教育部研究生工作办公室推荐为"研究生教学用书",2003年被列入"高等教育百门精品课程教材建设计划"。借此机会,我们再次向为本书付出辛勤劳动的高等教育出版社的领导和编辑、所有使用本书进行教学的老师和同学,以及对本书提出建议和意见的专家和读者表示诚挚的谢意。欢迎大家继续对本书的新版给予支持和指导。
内容概要
软件工程第二版覆盖CC2001对软件工程课程的基本要求,内容包括:软件开发模型,软件项目管理,需求分析,软件设计,软件编码与测试,软件维护,配置管理,软件工程管理,软件工程工具和环境。本书结合目前软件工程教学的需要,特别介绍了统一建摸语言UML,并依次为基础讨论面向对象的需求分析与软件设计方法;介绍集成化CASE环境,java与internet环境下的软件开发技术;介绍支持软件过程改进的"软件能力成熟度模型"(cmm).书中含有丰富的例题与习题,便于教学和自学。 本书强调软件工程的理论与实践相结合,技术与管理相结合,方法与CASE工具相结合。教材思路清晰,语言简练,具有实用性和可操作性,可作为高等院校计算机专业或信息类相关专业高年纪本科生或研究生教材,也可作为软件开发人员的参考书。
书籍目录
第一章 软件与软件工程第二章 软件项目管理第三章 计算机系统工程第四章 需求分析基础第五章 面向数据流的分析方法第六章 面向对象的需求分析第七章 面向数据的分析方法与形式第八章 软件设计基础第九章 面向数据流的设计方法第十章 面向对象的设计方法第十一章 面向数据的设计方法第十二章 人机界面设计第十三章 程序设计语言和编码第十四章 软件测试第十五章 软件维护第十六章 软件配置管理第十七章 软件重用技术第十八章 快速原型技术第十九章 集成化CASE环境第二十章 新型软件开发技术参考文献
章节摘录
插图:在许多软件项目中,应用功能往往都需要一组技术支撑机制为其提供服务。例如,对分布式应用软件(包括电子商务应用、企业ERP系统等)而言,需要数据持久存储服务、安全控制服务、分布式事务管理服务、并发与同步控制服务和可靠消息服务等。这些技术支撑设施并非业务需求的直接组成部分,但形态各异的业务处理功能全都依赖于它们提供的公共技术服务。让每个业务功能的设计者直接面对裸机、基本操作系统或基本网络环境来完成软件实现方案是不可思议的。技术支撑方案应该为多个用例的软件实现提供技术服务,所以,它应该成为整个目标软件系统中全局性的公共技术平台。当用户需求发生变化时,技术支撑方案应具有良好的稳定性。这就要求软件设计者选用开放性和可扩充性较好的技术支撑方案。如果目标软件系统的顶层架构采用分层方式,那么技术支撑方案应该位于层次结构中的较低层次。技术支撑方案的设计一方面取决于目标软件系统对公共技术服务的需求,另一方面取决于设计人员对软件技术手段的把握和选取。例如,对分布式应用系统而言,设计人员必须了解分布构件技术和基于应用服务器的软件开发技术等。本节的后续部分将分别以数据持久存储服务、并发与同步控制服务为例探讨技术支撑方案的设计方法,然后介绍技术支撑方案与用例实现方案的融合。
编辑推荐
《软件工程(第2版)》:面向21世纪课程教材
图书封面
图书标签Tags
无
评论、评分、阅读与下载