前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇配置管理与变更管理范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
关键词:GJB5000A;软件产品;FireFly;配置管理系统
中图分类号:TN820
配置管理的目的是利用配置标识、配置控制、配置状态记实和配置审核建立和维护工作产品的完整性[1]。GJB5000A对软件配置管理的要求是在整个项目的软件生命周期中建立、维护软件产品的完整性和可追踪性。在缺少有效管理工具时候,软件配置管理处于原始状态,存在很多缺点。引入软件配置管理工具FireFly后,如何利用好FireFly实施有效的软件配置管理是个值得研究的课题。
1 配置管理系统架构
Hansky公司的FireFly是一个软件配置管理工具。它可以提供版本控制、工作空间管理、构建管理、过程控制等功能,本配置管理系统是建立在FireFly基础上。其中,服务器安装在信息中心机房,运行所有系统管理进程,并且创建用来存储海量数据的数据库。系统配置管理员和开发人员在客户端完成各软件配置管理工作,也可以通过网页、命令行等形式进行一些基本操作。
2 三库建立与配置项目录构建
2.1 三库建立。在软件生命周期中,一般需要建立下述三个软件库:开发库、受控库和产品库。开发库:软件开发库是在软件生命周期之中,存放与该阶段软件开发工作有关的软件代码、软件文档、开发工具等相关项的库。受控库:受控库是在软件生命周期的某一阶段结束后,存放的阶段产品或与开发工作有关的计算机/人工可读信息的库。该库中存放的各种信息必须是经过审查、评审并履行过更改确认手续,在正式后处于“冻结”状态的阶段工作产品。产品库:产品库用以存放最终产品,包括交付给用户的和存档的文档和程序代码,产品库管理项目相关的配置项入(产品)库申请单、配置项出(产品)库申请单、软件产品申请单、软件产品交付清单,以及其他有关的表单。在本系统中,产品库的来源为受控库,并且内容在单位的档案室以光盘的形式备份。三库之间的关系如图1所示。
图1 三库关系图
需要说明的是,FireFly在物理上不区分开发库、受控库与产品库,而是软件配置管理员从逻辑上加以区分。受控库的版本必须打上配置标识,并且被锁定,不能随意更改。
2.2 配置项目录结构构建
配置项的内容很多,包括研制任务书、需求规格说明、软件设计文档、代码、测试产品以及GJB5000A要求的众多管理文档等,有的根据项目需要,还会放入开发工具、第三方产品等。配置管理员为每个项目分别创建工程,方便项目之间的权限控制,工程的命名以各单位实际要求为准。基本按照瀑布开发的模型来划分目录,分别代表软件生命周期内的需求、开发、合格性测试阶段,在受控库中建立功能基线、分配基线、产品基线的目录。配置项目的目录结构关系到配置管理员使用该系统的方便性,所有目录结构必须符合单位本地化特点以及标准的合理要求。
3 确立配置标识
配置标识唯一指向各软件配置项。目的是提供软件与软件相关产品的双向追踪能力。本系统中,配置标识包括基线标识、文档标识和代码标识。基线标识按照功能基线、分配基线、产品基线的基线类型和版本号进行标识,如表1所示:
4 配置变更控制
配置管理的变更控制主要针对受控库,变更控制的主要任务就是控制配置项的变更,保持对工作产品基线配置的控制,包括对每个配置项的状态的跟踪、批准新的配置项,必要时对基线进行更新。开发人员首先在配置项所有文件按照规定格式打好标签,经过配置项的评审的10个工作日内必须完成受控库入库手续,填写初始入库申请单。申请单经过项目SCCB批准后,经过配置管理员确认,配置项正式入受控库。当配置项需要修改时,变更申请人填写申请变更内容及其理由、变更优先级、变更可能的影响,填写完整后提交项目SCCB审批,项目SCCB对变更进行影响域分析,以确定变更对该工作产品、有关的工作产品和进度等的影响。审批通过后才能将改动过的配置项入库,形成配置项的新版本。受控库内的配置项,需要提取出库用于不同的用途,如合格性测试等。无论何种用途的出库,都要填写出库申请单,经SCCB审批后通过配置管理员出受控库[3]。
5 配置状态报告
配置状态报告提供了软件开发过程的历史记录,内容应该包括配置项的当前状态以及历史状态。为了便于管理和让利益相关方及时了解配置项状态,配置管理员应该定期或不定期地提供软件配置管理状态报告。
6 配置审核
配置审核主要是为了验证待审核产品是否符合规定的性能指标、设计约束和使用需求,且操作和支持文档是否完备并符合要求。可以通过验证软件或软件单元是否达到规定的功能和性能需求,从技术上保证其正确性;通过客户试用或客观证据审核研制产品是否已满足规定的功能、性能要求。在软件生命周期中,软件配置管理员每当基线建立、基线变更或其他规定的事件已经发生时候,都要进行配置审核,软件配置管理员也要对配置项进行定期审核。配置审核主要分为三种类型:(1)物理配置审核。物理配置审核的目的是验证配置管理计划中的所有配置项是否已经按照规范要求产生;所构造的配置项是否符合定义它的技术文档。基线建立或纳入基线管理的配置项状态发生变化时,配置管理员实施物理配置审核。(2)功能配置审核。功能审核的目的是验证配置项的所有功能特性是否已达到其功能基线文档中所规定的需求,且操作和支持文档是否完备和满意。软件项目产品基线建立或变更时,或纳入产品库管理的软件产品状态发生变化时,软件主管设计师、软件质量保证人员和项目配置管理员组成审核组,对软件产品进行功能配置审核。(3)配置管理审核。配置管理组长选择基线审核的适当时机,会同项目的QA人员等组成审核组,进行配置管理审核。审核工作根据软件配置管理计划评估软件基线的完整性,评估配置管理库系统的结构和设施,同时验证软件基线内容的完备性和正确性。
7 总结
有效地实施软件配置管理将使软件开发过程更成熟、更可控。本文在软件配置管理工具FireFly的基础上从系统建立、配置标识、配置变更控制、配置状态报告、配置审核几方面探讨了软件配置管理的实现,解决了目前舰载软件配置管理中存在的问题,且覆盖了GJB5000A配置管理过程域的主要活动,使整个软件组织的能力成熟度得到提升。
参考文献:
[1]GJB5000A-2008,军用软件研制能力成熟度模型[S].
[2]FireFly Administration Help[M].Hansky Inc.
Abstract: This paper analyzes the configuration management status in scientific research project, describes the difference between scientific research project and product research and the importance of configuration management in the scientific research project. This paper introduces the application of configuration management in scientific research project management from the points of making configuration management plan, changing control, tracking configuration status and configuration audit. It also introduces the guidelines and strategies of implementing configuration management in scientific research project.
关键词: CMMI;配置管理;科研项目
Key words: CMMI;configuration management;scientific research projects
中图分类号:G31 文献标识码:A 文章编号:1006-4311(2012)21-0273-03
0 引言
科研项目目的是探索未知的知识,要求创新性、系统性、工作完整性。最终目标是样机或学术报告。产品研发的目的是研制新的产品,要求经济效益,解决问题,效率高,可使用性和可重复性。产品研发必须有成果,并能将成果转换成有价值的市场产品。虽然科研项目没有市场和客户方面的压力,但是随着科研项目从单一向复杂转变,科研项目管理也越来越复杂,涉及到项目申请、立项论证、组织实施、检查评估、验收鉴定、成果申报、科技推广、档案入卷的全过程资料。而且在科研项目进展过程中往往涉及大量的研究人员。由于管理技术、管理意识以及管理工具应用并没有与研究的内容与成果一起发展,所以在科研项目的管理中常会出现科研任务无法完成或者在完成的科研任务中也存在与研究计划内容大相径庭或者研究结果没有达到相应水平,研究计划滞后,科研经费严重超支等情况。从这些问题反映出作为支持过程的配置管理,在科研项目管理中没有得到应用。在科研项目中应用配置管理会带来一定的额外开销,但不采用配置管理会引起许多问题,科研成果质量也无法保证,而且使效率低下。
目前很多科研人员和项目负责人对配置管理的基本概念并不十分清晰,也很少有在科研项目中使用到配置管理。即使有使用到配置管理的科研项目,也只是形式上使用,表现在对配置管理意识上不够重视,配置管理提供资源条件不足,只重视个人技术,而忽视对配置管理控制。制定了配置管理的流程和规章制度,但无法坚持,配置管理实施效果不佳。有的科研人员无法摆脱小作坊式的管理模式,认为配置管理相对麻烦,不能形成入库的良好习惯。
为此本文提出的在科研项目中借用产品研发的配置管理思路,对科研项目进行有效的配置管理,使科研管理过程有序化。并介绍科研项目中实施配置管理的策略原则,使项目成员建立起配置管理思维,提升科研成果质量和可靠性。
1 科研项目配置管理应用
目前企业在做产品研发的时候都会引入CMMI能力成熟度模型,在CMMI中配置管理作为专门的过程域,对其目的有所描述,其目的是通过配置项识别、配置控制、配置状态报告和配置审计等活动,建立和维护工作产品的完整性。在这个过程中配置管理包含以下活动:识别配置项、基线的管理、构建管理,变更管理、配置状态报告、配置审计。配置管理在产品研发中得到了广泛应用和重视,它是项目的支撑过程,确保产品质量的基础过程。产品研发管理通常从产品规划、立项、需求分析、总体设计、详细设计、实现、验证、等方面进行管理。
科研项目管理通常从项目申请、立项论证、组织实施、检查评估、验收鉴定、成果申报、科技推广、档案入卷的等方面进行管理。在科研项目中借用配置管理思路,同样要从上述配置管理活动入手。下面主要通过:制定配置管理计划、配置项的标识、变更控制、配置状态跟踪、配置物理审计这五个方面,来介绍如何在科研项目中应用配置管理。确保整个科研项目将会有序的进行,通过对过程的管理保障科研成果的质量。
随着计算机应用的深入,软件项目的规模越来越大,复杂性也越来越高。传统的二、三个人搞定一个项目的情况越来越少,稍大一点的项目已经不再是靠某个“技术高手”从头到尾一手操办。从而在我们平时的软件项目中一些混乱现象往往是屡见不鲜。因此,采用科学的配置管理思想,辅之以先进的配置管理工具,解决项目开发过程中由于管理上引起的问题已成为大家关注的重点。
我国软件企业可以从以下思路去实施软件配置管理。
1.列出软件开发、运行、维护各阶段所需的软件配置项
所谓软件配置项就是在软件开发工作进展中得到的许多工作产品、阶段产品、使用的工具软件等信息项。表中列举了若干类软件配置项及其生成的阶段。
只有明确了各阶段有哪些软件配置项,软件企业才能在实施软件配置管理时胸有成竹、游刃有余。
2.对现有软件配置项进行分类、补充,进一步完善软件配置
软件企业在实施某一软件时,针对不同的用户都有不同的需求。为了满足各个用户的使用要求,我们的软件产品必须考虑到这些差异。
为了实现这两种不同的软件配置,在实际开发应用中,我们完全可以将各个配置项分别开发出来,再根据用户的需求,组合成不同的产品。
3.对软件项目的变更要实行有效的控制和管理
软件企业在软件的开发、运行、维护过程中必然要遇到软件的变更。引起软件的变更主要有两方面的因素:一方面是用户,如用户要求修改工作范围和需求等;另一方面是软件开发人员自身,如他们在工作中发现前期工作中的错误而修改源码甚至设计。对于以上两种情况软件企业可以从明确实施变更的双方人员、对变更进行严格的审核、对变更的影响进行评估等方面加以解决。
4.对软件版本进行有效的管理
软件企业开发的软件产品为了适应不同的运行环境、不同的平台、不同用户的使用要求,导致同一软件产生或演化出不同的版本。软件企业可以通过号码版本标识、符号版本标示两种常用的方法进行软件版本控制。
5.实施有效的配置审核
软件企业在实施配置审核时可以从“配置管理活动审核”和“基线审核”两方面进行。
6.进行配置工具选择
软件企业选择商业配置管理工具,可以考虑下面几个因素:
工具的市场占有率:大家都选择的东西通常会是比较好的东西。
工具本身的特性:你应当在投资以前仔细地对工具进行试用和评估。
关键词:测井系统 配置管理 版本控制 基线 变更管理 缺陷管理
中图分类号:TE32 文献标识码:A 文章编号:1672-3791(2014)03(c)-0017-03
ELIS海洋石油成像测井系统(Enhanced Logging Imaging System)是中海油田股份有限公司自主研发具有自主知识产权的用于海上石油勘探开发的电缆测井成像系统,它主要由地面采集系统、井下仪器和数据解释处理三个部分组成。
ELIS地面系统分硬件和软件两大部分,在ELIS地面系统开发的早期阶段,因为开发人员比较少采用代码相互拷贝的方式来完成共同开发,这种方式随着开发人员的逐渐增加越来越显示出严重的问题主要包括:
(1)代码拷贝容易覆盖已经更改的代码,导致代码丢失。
(2)缺乏统一的管理,经常是一个人修改了某个程序,而别人都不知道,仍然使用旧的,并在旧版本的基础上又修改了,造成了不同版本的冲突。
(3)每个人的机器上都维护着一套代码,但它们之间的差别无法明确,也不确定哪个是正确完备的最新版本,导致版本混乱、代码冗余。
(4)为了最新版本,经常要核对各版本的差别,查找因版本混乱引起的错误,带来团队沟通成本增加。
(5)如果新版本失败的话,也很难回到某个旧版本上去,导致维护困难。
(6)随着ELIS系统的持续发展,已经有多个支持不同测井系统的软件平台,还用原来的文档拷贝模式会更加混乱。
1 软件配置概念的引人
软件配置管理(SCM)是处理软件变更管理的软件工程方法。SCM的目标是标识变更、控制变更、确保变更正确实现以及向其它人员报告变更,缺陷管理,版本控制。成功的软件配置管理保证软件开发的每个阶段都是可控的、可重复的,可以有效解决代码丢失、代码冲突、代码冗余、版本混乱、无法追溯旧版本等问题,极大地提高了软件质量、开发效率,缩短了开发周期。
2 软件配置管理工具的选择
2.1 本地软件变更管理工具
最初本计划选择IBM的ClearCase& ClearQuest软件系统来实现ELIS地面系统的软件配置管理,但是在应用的过程中我们发现ClearCase&ClearQuest系统庞大、应用和管理复杂,而且成本高昂,适用于开发人员多,组织机构复杂的大型软件的开发,对我们这样的中小开发团队并不适合,经过仔细研究,我们选择了Dynamsoft SourceAnywhere for VSS(简称:SAW)作为我们的软件配置管理工具。Dynamsoft SourceAnywhere for VSS是一种可视化的 SourceSafe远程获取解决方案。作为一个 SourceSafe中外加的工具,SourceAnywhere for VSS为SourceSafe的用户提供了更快,更可信,更安全的远程获取功能。
Dynamsoft SourceAnywhere for VSS的优点:
(1)强大的功能。
创建项目,增加文件,删除文件或项目,获取最近的版本,签入,签出,撤消,移动,配置,共享,分支,浏览,编辑,显示差别,设置工作文件夹,刷新文件列表,刷新项目树,显示属性,显示历史,标签,锁定,改名,改密码,隐蔽项目,状态搜索,通配符搜索等。
(2)配置、操作简单便于管理、使用。
(3)支持分布式结构使得团队成长―― 通过Client/Server结构进行多点复制和及时的对象版本的更新来实现。
(4)安全性:使用128-bit Blowfish来保护数据,使用强大的密码机制来保护密码,Client-server体系.无需暴露VSS数据库文件夹。
(5)Dynamsoft SourceAnywhere for VSS是开源的,可以在网上下载,节约成本。
因为Dynamsoft SourceAnywhere for VSS采用Client/Server结构,所以ELIS用SAW作为配置管理工具也需要配置服务器端和客户端,服务器端选用一台高性能且磁盘空间大的计算机,安装配置VSS及SourceAnyWhere For Server,为每个项目添加相应的数据库,并把代码拷贝到数据库中(见图1)。
每个开发人员的计算机都要安装SAW的客户端程序,安装完后弹出连接到服务器对话框,输入服务器IP地址和端口号,点击Connect连接(见图2)。
弹出登录界面(见图3)。
在登录界面中选择要登陆的数据库,因为ELIS系统的持续发展,已经有多个支持不同测井系统的软件平台包括:ELIS_FIELD(只支持低端仪器的版本)、ELIS_FCT(支持各种高端仪器的多线程版)、ELIS_MRT(支持核磁仪器的特殊版本)、ELIS_70(挂接小井眼仪器的版本)、ELIS_1000(高速传输版本)、ELIS2_HARDWARE(与ELIS硬件相关的嵌入式软件版本)等,每个版本都有相应的数据库,开发人员登录时在Database选择自己要修改的版本,输入用户名和密码即可登录。每个数据库会对特定的开发人员开发,如果该数据库没有给开发人员分配用户名和密码,则该开发人员是无法进入该数据库的。点击OK弹出SAW客户端界面:(见图4)。
在该界面可以实现创建项目,增加文件,删除文件或项目,获取最近的版本,签入,签出,显示差别,设置工作文件夹等一系列操作。
2.2 本地缺陷管理工具:Bugfree
Dynamsoft SourceAnywhere for VSS主要的作用是对代码的一致性、完整性及软件版本的管理控制,但是对软件开发过程中的缺陷管理并不适用。以前测试出的问题都是以口头或Email的方式指派,问题很容易被忽略或遗忘,随着ELIS系统不断扩展,需要维护的系统和软件版本,这种缺陷管理的方式越来越不适合,因此,我们采用Bugfree问题跟踪系统来管理缺陷,它的主要优点包括:
(1)可以给每个项目分配一个数据库,该项目的所有Bug放在这个数据库里统一编号,方便查询管理。
(2)一个项目内还可以划分多个功能模块,把bug具体归类,便于查找和修改bug。
(3)每个Bug都有明确的发现人、修改人,开发人员登录进去后按自己的名字查询就可以找到本项目中指派给自己的bug。
(4)Bug的状态在修改后需要设置为关闭,这样在查询需要修改的bug时,关闭的bug就不会查询到。
(5)Bugfree还提供上传文本的功能,可以填写bug的复现步骤、解决方案等补充内容。
(6)可以指定bug的优先级,急于解决的bug可以设置较高的优先级,提示修改人优先修改。
Bugfree管理者页面(见图5)。
Bugfree使用者页面。
在使用Bugfree后,ELIS项目管理人员对各项目的bug分布和修改进度一目了然,彻底扭转了以前bug管理混乱的局面。
3 结语
ELIS成像测井地面系统软件通过Dynamsoft SourceAnywhere for VSS和Bugfree成功实现了对软件的配置管理、版本控制、变更管理、缺陷管理,实现对软件的整个生命周期的工程化管理,极大的提高了ELIS系统的软件开发效率、软件的稳定性和健壮性。为ELIS成像测井系统的推广应用起到了非常重要的作用。
参考文献
[1] Jim Beveridge&Robert Wiener. Multithreading Application in Win32[M].华中科技大学出版社,2008.
关键词:电力系统;通信;IT服务管理
一、电力系统通信部门的IT服务管理
电力系统通信部门IT服务管理体系包括展现层、功能层、数据层。通过对各种系统状态进行实时监控,将现有软硬件环境、网络资源、应用系统、人力资源、知识库有机地融为一体,合理调配资源,切实解决了机构人员、管理模式、业务流程、技术集成等方面实际问题,真正实现科学高效的IT服务管理。
二、典型处理流程
IT服务管理是一种面向流程的管理模式。在电力系统通信部门原有的业务流程的基础上,对其进行优化和改造,在此提出了IT服务管理四个典型处理流程,下面分别从流程目的、功能等角度进行说明:
(一)事件管理流程
事件是任何不符合标准操作且已经引起或可能引起服务中断和服务质量下降的事件。在ITSM引入以前,事件管理没有特定的流程,所有事件都通过通信故障专线通知到通信调度部门,然后由值班员派工单给检修班成员,并不区分事件的“轻重缓急”,也没有技术层面的审核,因此故障派修单回单率一直很低,很多单据由于不具备执行条件而在班组和通信科之间来回推诿,降低了故障解决时间,也没有相关考核指标。
事件管理的流程如下:首先,事件通过运行单位填报、用户填报或者通信检修部门巡视发现填报,所有事件记录进系统,对于已经处理的缺陷只要补报即可。接着通信调度进行分类预判断并分派,确定是事件的影响范围和优先等级:如果是事件处理影响范围小或无影响,则直接进行派单;如果事件处理影响范围大,则要求检修部门先进行停服役申请,再进行事件处理。然后,检修部门消缺完毕后,由用户和通信调度分别进行消缺验收,判断是否已解决确定问题:如解决,则由检修班回单给通信科,则纳入审核管理或者填报缺陷归档,关闭记录;如没有解决,则纳入通信科审核管理继续诊断,纳入下一季度大修工程,必要时转省调、厂商和集成商、服务商等进行支持解决等。最后更新文档,必要时进行回顾,事件支持人员将根据管理要求定期产生相关报表。
(二)问题管理流程
问题管理流程设立的主要功能是分析已被列为问题的事件(一组或一个)的根本原因,然后找出和建议永久性解决方案。其目的包括:(1)确保分析并确定事件的根本原因,以防止再次发生;(2)确保问题分派了正确支持人员,提高解决率。(3)根据IT资源情况分派问题优先级;(4)主动提供预防性措施;(5)提高IT服务的可靠性;(5)降低IT支持成本;(6)提高通信部门的整体形象和名誉。
(三)配置管理流程
通信部门的所有资源都通过手工和电子配置管理是通过手工形式派发“电路(设备、线路)投入、改接单”,单据与实际资源状况出入较大。待单据完成后,由专人进行手动的资料更新和管理,而经常出现资料忘记更新或资料更新出错,缺乏必要的考核体系。
配置管理的流程如下:首先进行配置申请。接着配置管理员根据需求进行方案设计,经配置管理经理审批后生成配置工单。配置工单由配置经理审核后进行工单派发,此时由于工单并未真正实施,配置资源处于预占状态。然后配置管理员根据班组回单进行完成确认,若确认完成,则将资源预占状态更改为运行状态;否则取消资源预占状态。并定期进行资源检查验证,流程回顾,每个一个季度由系统自动生成配置管理报告,据此可进行资源分析、预警等。
(四)变更管理流程
变更管理流程将通过标准统一的方法和步骤管理和控制所有对通信系统运行环境有影响的变更。其目的在于:通过对所有变更的正确评估,可以维护通信系统运行环境的完整性;确保变更和变更实施得到正确记录,并提供审核统计;减少或消除由于变更实施准备不当等原因出现的故障;提供一致性的变更实施质量控制;提高资源使用率(如未得到正确控制和授权的变更需要更多的后续资源);确保实施的变更不会超出预定的系统利用限值确保紧急变更请求得到快速实施。
三、IT服务管理体系的实施效果评价
杭州市电力局通信部门IT服务管理系统2006年初上线运行,截止到2007年9月30日,IT服务管理系统的配置项数据包括服务器、客户端设备、网络设备、变电站通信机房、变电站通信屏体信息、数据采集与监视控制系统(SCADA)采集点以及其他各种设备信息,总计有36个分类、95000多条记录。自投运以来总共记录有效服务呼叫8546条,电力通信网和管理信息化共关闭8492条,完成比率达99%。
杭州市电力局通信部门IT服务管理系统固化了18种处理流程及衡量标准、20项事件流程服务指标、10项工作量考核指标、28种事件分类指标等可量化的IT运行维护指标,电力通信网和管理信息化都分别设置了流程经理,每个流程又明确了流程负责人,负责处理流程时限、效率和质量。IT服务管理系统提供了可观、可测、可控、可量化的工作环境,工作量考核、系统风险识别、流程实施关键绩效指标(KPI)、人员技术能力等都可用“数字说话”。通过系统实施,事件处理更加高效,变更管理更加规范、问题管理更加可控、IT服务水平和人员素质得到了极大提高,为IT管理人员提供了方便高效的管理手段。
四、结语
IT服务管理系统运行两年的实践证明了ITSM是一套科学的方法论。实施效果表明该体系应用成效显著,流程清晰,责权分明,运行维护内容可量化,服务质量可考核,运作模式彻底告别了被动的救火队式的管理,开始步入主动的有预案的IT服务管理良性发展轨道。通过系统的实施,各流程的关键绩效指标越来越好,问题的可控程度也越来越高。因此,有计划、分步骤地将各流程应用在日常的系统运行维护和管理中去是现阶段最切实可行的方法。
参考文献
[1]曹汉平,王强,贾素玲.现代IT服务管理——基于ITIL的最佳实践[M].清华大学出版社,2005.
[2]孙强,左天祖,刘伟.IT服务管理——概念、理解与实施[M].机械工业出版社,2007.