软件工程

出版时间:2009-8  出版社:机械工业出版社  作者:贲可荣,何智勇 编著  页数:277  
Tag标签:无  

前言

软件教学的实践表明,如果没有亲身体验,学生很难相信软件工程技术的好处。让学生相信软件工程对其职业开发生涯至关重要的最有效的方法是让他们实际参与和完成软件项目开发。我们开设的软件工程课程是一门以面向对象的软件开发为重点、集实用性与即用性于一体的课程。6年前,我们翻译出版了美国普利茅斯州立大学Evelyn Stiller和Cathie LeBlanc编写的教材《Project-Based Software Engineering》,并应用于我们的教学。近几年,出于双语教学的需要,我们采用Roger S.Pressman的教材《Software Engineering:A Practitioner’s Approach》。但是,由于学时安排比较少,如何在教学中将教材内容与实践教学紧密结合,一直困扰着我们。目前,市面上有关软件工程方面的教材大多重理论轻实践,一些基于项目的教材并没有把重点放在面向对象的范型上面来。在机械工业出版社华章分社温莉芳总编的鼓励下,我们在这方面进行一些尝试。什么是软件工程“实践”?一般来讲,实践就是软件工程师日常使用概念、原则、方法和开发工具的集合。实践使得项目经理可以管理软件项目,保证软件工程师按时开发出满足客户要求的计算机程序。实践利用由必要技术和管理组成的软件过程模型,保证开发工作顺利开展。实践将一些杂乱的、容易被忽视的方法转化为更具组织性、更高效并且更容易获得成功的重要规章。本书重点讲述软件工程的实际应用,介绍基础和必需的理论概念和术语,并主要论述基于项目的面向对象的软件开发方法。教授一门基于项目的软件工程课程,最重要也最困难的一点是如何选择合适的项目。因为所选项目必须足够复杂,以便学生以3~5人为单位组成一个开发小组,同时又必须能在15周内完成。比达到目标更具挑战性的是所选的项目必须引起学生的兴趣,让其有内在的学习动力。本书提供一种可在15周的学习时间内完成一个大软件项目的专门开发方法。为增强本书的实用性,我们还提供了2个连续的案例分析,用作一个学期的项目开发的样板。在案例分析中含有制品的样本,举例说明了学生在其项目的生命周期中所要交付的资料的类型。本书的另一个重要特点是:重点讲述面向对象的软件开发范型,将面向对象项目按概念、分析、设计及实现的结构予以介绍,提出了软件工程技术的历史性观点,还介绍了面向对象范型的先驱。在介绍组成面向对象思想的技术时,使用了统一建模语言(UML)为软件建模。

内容概要

本书重点讲述软件工程的实际应用,介绍基础和必需的理论概念和术语,并论述基于项目的面向对象的软件开发方法。本书提供一种可在15周时间内完成一个大软件项目的专门开发方法,并给出两个连续的案例分析用作一个学期的项目开发样板。在案例分析中包含制品的样本,举例说明了学生在项目生命周期中所要交付的资料类型。    本书重点讨论面向对象的软件开发范型,将面向对象项目按概念、分析、设计及实现的结构予以介绍,并使用统一建模语言(UML)为软件建模。本书介绍了Web应用系统的分析、设计和测试的全面工程方法,以及软件项目管理方法、软件评价方法和软件维护方法。

书籍目录

前言第1章 软件工程概述  1.1 软件及其特点  1.2 军用软件的作用和特点  1.3 软件工程的定义及内涵  1.4 软件开发范型要素    1.4.1 项目的概念化    1.4.2 项目表示    1.4.3 项目实现  1.5 软件工程技术简史    1.5.1 结构化编程    1.5.2 功能分解    1.5.3 结构化分析与设计    1.5.4 以数据为中心的范型    1.5.5 面向对象范型    1.5.6 面向Agent范型    1.5.7 面向构件的范型    1.5.8 面向服务的软件范型  1.6 软件灾难故事    1.6.1 失效案例简介    1.6.2 失效原因    1.6.3 CONFIRM    1.6.4 电话和通信    1.6.5 阿丽亚娜5型火箭    1.6.6 不按工程生产软件的代价  1.7 为什么软件工程不是万能的  1.8 基于项目学习软件工程    1.8.1 项目的作用    1.8.2 分小组工作    1.8.3 创建项目小组  1.9 班组项目:功能需求    1.9.1 MCGame项目概况    1.9.2 MCGame需求规约  1.10 学期大作业    1.10.1 项目名称    1.10.2 项目时间框架  习题第2章 面向对象范型概述  2.1 熟悉班组项目    2.1.1 创建非正式场景指南    2.1.2 非正式场景示例:用户一个时间片内的鼠标点击  2.2 面向对象概念化    2.2.1 特殊应用关系    2.2.2 继承    2.2.3 聚合/组合    2.2.4 其他关系  2.3 软件开发过程模型    2.3.1 瀑布模型    2.3.2 原型开发    2.3.3 增量模型    2.3.4 螺旋模型    2.3.5 敏捷软件开发过程模型  2.4 面向对象建模    2.4.1 建立模型的作用    2.4.2 创建优质模块    2.4.3 建模符号    2.4.4 软件工程中模型的使用  2.5 良好面向对象系统的属性  2.6 分组工作    2.6.1 主程序员组    2.6.2 召开有效的小组会议  习题第3章 面向对象分析  3.1 需求分析介绍  3.2 需求规约  3.3 案例研究:工资支付系统规约  3.4 评价需求规约  3.5 细化需求规约  3.6 验证需求规约  3.7 通过开发扩展需求  ……第4章 体系结构设计第5章 用户界面设计第6章 类设计第7章 实现第8章 测试第9章 Web应用的分析、设计和测试第10章 项目管理第11章 软件产品评价与软件维护第12章 完成并展示班组项目后记参考文献

章节摘录

插图:第1章 软件工程概述软件在当今的信息社会中占有重要的地位,软件产业是信息社会的支柱产业之一。随着软件应用日益广泛、软件规模日益扩大,人们开发、使用、维护软件必须采用工程的方法,从而经济有效地解决软件问题。软件工程是指开发、使用和维护软件系统的系统、规范、可度量的方法,包括软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具和方法以及软件质量等内容。本章给出了软件的定义、军用软件的作用和特点、软件工程的定义及内涵、软件开发范型、软件工程发展历史、软件灾难故事及软件工程的局限性,介绍了本书的特色——通过项目学习软件工程,描述了本书案例之一“鼠标点击游戏”的需求规约,给出5个大作业题目。1.1 软件及其特点软件是:①指令的集合(计算机程序),通过执行指令可以满足预期的特征、功能和性能需求;②数据结构,它使得程序可以充分利用信息;③描述程序的操作和使用的文档。软件的工作是告诉计算机做什么和如何做。没有软件,计算机就成了一个只有机箱和屏幕的盒子,甚至简单的家用电器如微波炉、洗衣机等都会成为废物。

编辑推荐

《软件工程:基于项目的面相对象研究方法》是由机械工业出版社出版。

图书封面

图书标签Tags

评论、评分、阅读与下载


    软件工程 PDF格式下载


用户评论 (总计5条)

 
 

  •   这本书还是挺有帮助的
  •   刚学完JAVA和ROSE 这本书太适合现在看了
  •   这本书还是不错的,理论结合实际,例子也很好,值得购买的一本书。
  •   呃,本书的标题错了,不是“面相”而是“面向”
  •   自己看看,能学点东西吗,如果可以那再好不过了,是吗你认为呢
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7