当前位置:文档之家› 【】:逆向工程过程在真实情况中的应用的分析毕业设计外文文献翻译

【】:逆向工程过程在真实情况中的应用的分析毕业设计外文文献翻译

【】:逆向工程过程在真实情况中的应用的分析毕业设计外文文献翻译
【】:逆向工程过程在真实情况中的应用的分析毕业设计外文文献翻译

Analyzing the Application of a Reverse Engineering Process to a Real

Situation

Fabio Abbattista (*), Gregorio M.G. Fatone (**), Filippo Lanubile (*), Giuseppe Visaggio (*)

(*) Dipartimento di Inform atica, University of Bari, Italy

(**) Basica S.p.A., Potenza, Italy

Abstract

A reverse engineering process model was applied and on the basis of the data collected, some modifications were made aiming to improve its efficacy.The experience gave rise to various considerations of interest, first among them being the clear interaction between the quality of the product and the quality of the process. A method of synergetic application of static and dynamic analysis to improve understanding of the program was consolidated. The experience enabled modifications to be introduced connecting the reverse engineering process more closely with the understanding of the programs and information deriving from the application domain.

Finally, the problem of the efficacy of the tools used to obtain the reverse engineering products was made evident during the experimentation on the field.

1: Introduction

We present an experience in which process qualityand product quality interact and mutually improve one another. The process is reverse engineering while the product is the documentation of programs necessary to exploit the program better. The salient point to be gained from the experience are, in general, the model as it appears after improvements stemming from trial on the field and, in particular, the method for integrating static and dynamic analyses to improve the process.

The paper describes the application of a process model to a real situation. The scenario is a set of programs with the following characteristics:

language:COBOL

operating system:BS2000

total no. of programs:653

no. of on-line programs:348

no. of batch programs:305

no. of files:70

no. of data:9 000

no. of Instructions:900 000

2: The reverse engineering process

Our reverse engineering process had two main objectives: (1) to increase the ease of maintenance of the software system, and (2) to improve its usability by the final users and the ease of knowledge transfer among different users [5].

The first involved reconstruction of the project design documentation and restoration of the most degraded arts while the second required reconstruction of the user documentation and the data conceptual model. This elps users to understand their own information system etter from the point of view of the data processed [4],[6].

Figure 1 shows the process model, which is briefly described underneath. Further details may be obtained from [10].

1. Inventory Software System. The following cross references are extracted from the old software system:call dependence X-ref, copybook X-ref, and file access X-ref.

2. Reconstruct Logical Level of Data. From the data description, the hierarchical structure constituting the logical data model is reconstructed. The aliases are recognizable entities in the application domain. Figure 2 shows a record declaration, as input to the phase, and the relative hierarchical diagram, as output from the phase.The arrows represent the hierarchical relationships between the substructures in the record; elementary data are not shown. The data are classified as application domain data, control data, and structural data.Application domain data are the attributes of recognizable entities in the application domain. For example, the field named MT02-02 representing the "amount" is also an attribute of MORTGAGE and is therefore recognizable in the application domain.Control data have no correspondence with the application domain but are used to record the occurrence of an event during the execution of a program, so that other programs can adapt accordingly; flags validated by one program and used by others, asynchronously, to determine their behavior according to the previous history of the software system, are typical examples of control data. For example, the field MT02-33 is preset to indicate the existence of an agreement for taking out the mortgage, which must form the basis of the variation in interest rate to be applied when calculating the instalment; it is a typical example of control data.Structural data are data necessary for managing the organization of data bases or files. The field MT01-05 is a typical example of structural data, because it identifies the record type inside the MORTGAGE file.

3. Abstract Data. All the data in the application domain which belong to the logical model and are not dead are associated with the corresponding meaningful concept for the application domain [1].

4. Analysis of Existing Information. This activity involves identifying the expected functions in the program being reversed using two types of information.

The first is static knowledge, i. e. the internal and external documentation of the rules governing the application domain of the function. The second is dynamic, derived from the experience of the programmers and users who interact with the working programs.

Figure 2. Input and output of "Reconstruct Logical Level of Data" phase

Figure 3. Equivalence test of the system before and after reverse engineering

5. Reconstruct Logical Level of Programs. Each program is associated with a structure chart in which each module corresponds to a SECTION or an external subroutine of the program. In this phase, both dead data and dead instructions are identified. These are data not used by the program and instructions which cannot be run, respectively. The former are communicated to the "Abstract Data" activity while the latter are erased from the structure chart , which thus constitutes the logical model of the functions.

6. Restore Logical Model. Restoration involves introducing changes to improve the structure of the programs and make them easier to maintain, without causing repercussions on the data or interfaces with other systems. Some examples of

modifications are renaming of variables, making their identifiers more meaningful; extracting modules with high internal cohesion from those with low cohesion and isolating them in the structure ([7], [8], [12], [13]); externalizing modules which, in the present process, are in line with the main;localizing variables declared to be global but used locally in both existing modules and in processes extracted during restoration. Execution of these activities is facilitated by the expected functions derived from the phase of analysis of existing information. In fact, thanks to this knowledge, the operators can extract the functions from the modules present in the logical model. This makes the logical model more readable and its modules less complex.

7. Abstract Functions. The functions abstracted during restoration are documented. The aim of each function is described in textual form. The relationships between functions are also documented by means of data flow diagrams. The latter, together with the description of each function, constitute the conceptual model [9].

The reverse engineering process is not symmetrical because the programs are restored while the data are not,because any interference with the latter would affect the procedures and make the whole restoration process very expensive. In fact, restoration of the programs is confined to the instructions of each single program, a much simpler and more economical process.

The reverse engineering process described modifies code, so that it is necessary to verify that the working programs are equivalent to those produced by the process. A test process is used and, as the only reliable component in the working system is the code in question, it is only possible to test the equivalence between the actual and the reversed program. Test cases obtained during normal working of the actual system are used. The equivalence test is modeled in Figure 3.

3: Operative results

The planned process was put in production in the scenario described earlier and after seventeen calendar months of work on a production line, the first results were obtained.

It should be noted that a production line refers to an organizational unit which has all the resources required for executing the process autonomously. In this case, the production line is composed of eight reverse operators and one reverse engineer. The former execute the

procedures according to the defined process models while the latter coordinates activities and takes all the decisions necessary for solving all indeterminate points in the execution procedures. The production line shares an expert in the application domain with other organizational units in the company.

These first operative results can be analyzed from the point of view of both efficiency and efficacy. Although efficiency was not the main aim of this work, the data on the activities for reverse engineering of the programs and of the data are summarized in Tables I and II,respectively. Two important considerations can be made.

The productivity of the operators for reverse engineering the programs is correlated with their experience in the application domain; this explains the differences seen in Table I. In reverse engineering the data, the difference in productivity has less correlation with experience because there is very little automation of the activities and so the man time required is very high in any case.

The second point is that commercially available tools are often inadequate for large projects. For example, the tool used in extracting the data structure becomes unacceptably slow when access to previously inserted information is required, if the data are more than a thousand or if access is to an entity with more than one hundred attributes. The tool used for the programs, on the other hand, shows an abrupt drop in performance (answers to questions on data and control flow slow down) as soon as the threshold of 8000 lines of code is passed. Clearly, inefficient automatic tools require more man time to attain the objectives.

As regards the efficacy of the process, the following points can be made.

The logical data model is not very useful to the maintainer because he can read the information he needs more easily from the record layout described in code.This is due to the complicated structure of the files in the old system, which is difficult to clarify and represent. It is necessary, however, to know the relationships existing between the files that manage the system; there are many of these, so maintenance is a high risk procedure. For example, the relationships between the CUSTOMERS' INFORMATION file and the MORTGAGE: CLIENT TAKES OUT MORTGAGE is expressed in the field MT02-01 which represents the customer's number and unequivocally identified in the CUSTOMER'S' INFORMATION file all the information on the above client.

Table III. Complexity of some programs and their extracted modules During restoration, thanks to BACHMAN’s tool [2]and VIASOFT’s tool [14], and to the techniques used,the reverse operator extracts a lot of information which can not be expressed in any of the documents produced.In particular, for many modules in the restored program,he will know not only their description but the algorithms themselves contained in the module. In fact,referring back in Figure 1, the document including the description of the behavior of the modules belongs to the flow named "restored logical model". Only a textual, not a formal, description of the aim of the module is provided for.

The data in the files formalize many design decisions taken during the past life cycle of the system, whose reasoning has been lost. As they affect the actual structure of the programs, their inadequate use prevents the reverse operator from being able to extract some functions implemented by the code, derived from these decisions which have left no traceable reasoning. For example, the field MT02-08, which represents the total amount the client must pay in instalments to pay off the mortgage, is calculated from the mortgage amount(MT02-02), the total number of instalments (MT02-05) and the interest rate (MT02-03). The design decision has decreed that this datum be stored rather than calculated each time. The main consequence is that many modules identified during the reverse engineering process have low cohesion and high complexity and will obviously be difficult to maintain. Table III shows the complexity of sets of modules extracted from some programs, which is,in some cases, still very high. Performing test cases helps to understand very complex modules.

4: Modifying the process

After the first experimental period on the field, some opportune modifications were made to the process model and to the product.

To increase the reverse operator's efficiency,depending on prior knowledge of the application domain, systematic training is necessary. It is not possible to have specialized reverse operators for each

domain because this would make the "system to be reversed” - “operator to be used" pairing far too rigid.

We therefore decided to alter the process, as can be observed in Figure 3, inserting training activities which,by using the expected functions, explain to the operators what they should find in the programs and in the data they process. This activity is carried out by the expert in the application domain and aims to provide the operator

It is not possible to formalize in the process the information that the tools, even when commercially

known, must be carefully assessed for their efficiency,not only for their efficacy. Fortunately, in this case, the most inefficient tool was the one which derived the structure of the files, so reconstruction of the logical level of the data was modified (see Figure 2) to produce the classification of the data as

conceptual, control or structural, and the description of the relationships between files.

Figure 5. Original module for dynamic slicing

The formalization of the modules is included in the structure of the logical model deliverable, whose compilation standard changes. To increase the abstraction of the information on the decisions affecting

the data, it is best that the control and structural data, first, and the calculated data, successively, be analyzed by the application domain expert so that he can complete the set of expected functions, where necessary. Thus, in the process model, changes have been made to increase the communication between the data and the process reverse engineering (see Figure 4).

Finally, the experience with the test cases suggested using them to perform dynamic slicing of too complex modules, during the restoration phase. A formal description of this dynamic slicing can be found in [11].

Given a module M and supposing it contains a set of functions (F1,..., Fn); in the set of test cases used to verify the functions of M, some subsets of test cases(T1,..., Tn) must be identified, in which the generic Ti contains the equivalence classes of function Fi. Thus the test cases Ti will activate in M all and only the instructions that implement the function Fi. These instructions constitute the module Mi corresponding to the function Fi. Once the modules (M1,...,Mn) corresponding to (F1,...,Fn) have been extracted, a complementary module Mc to the modules

(M1,...,Mn) can be found in M. Mc will be the module managing(M1,...,Mn).For example, for the module shown in Figure 5, the data for which the test cases have been constructed are:

IDX-ETI-002 :{1, (20)

Index of types of transaction table

FLAGTR-WS :{0, (9)

Work area flag whose value is paired with the index of types of transaction table.

The combined values of these two variables specify the exact nature of the transaction the client intends to make with the bank.

KI-0 :{true, false}

Control variable which states the result of access to the file. If true, access exists, if false, then access to the file was not possible.

The value of this variable is tested (in the cases in Figure 6) only on exit from PERFORM, which enables reading of the files.

Thus the original module was substituted by the structure shown in Figure 7.

The complexity is modified as shown in Table IV.This is formalized in the reverse engineering process model by modifying the procedure corresponding to the activity “reconstruct logical level of programs". In fact for all modules exceeding a predefined level of complexity, dynamic slicing will be performed using the test cases relative to the module in question.

Figure 6. Results of dynamic slicing

Figure 7. Program structure after dynamic slicing

Table IV. Module complexity before and after extraction

5: Conclusions

This paper describes the results of experimentation on the field of a reverse engineering process and the

improvements made on the basis of the data obtained.

The feedback gained from the quality of the product and the quality of the process is particularly

enlightening. In this case, the usability of the documentation to understand the programs better suggested some improvements to the process. This feedback enabled closer connection to be made in the

process model between the static and the dynamic information which can be extracted from the application domain and the user context of programs.

In addition, a synergetic analysis in the process of learning about the programs was defined. The programs to be documented were so complex that dynamic analysis alone would have been inadequate: in fact, in the original programs, each test case would have activated so many instructions that a great deal of man time would have been required to understand them. Instead, using prior static analysis, the programs were decomposed and classified essentially into two types:modules whose aim and behavior are clear, and modules whose aim is clear but behavior is not. The latter, more complex modules, can be understood better after dynamic analysis with the test cases used to verify the results of the reverse engineering process.

Unfortunately, the modified process has been operative for too short a time for data to be available to

assess its quality after the modifications.

Finally, the experience highlighted the need to improve testing and validation of the functionality and efficacy of the tools used. Even well known tools which have been on the market some time may be inadequate because, for the most part, they have been used in pilot projects rather than effective production. Hence, the reverberations of their actions are still unknown.

References

[1] F. Abbattista, F. Lanubile, and G. Visaggio,"Recovering conceptual data models is human intensive", Fifth International Conference on Software engineering and Knowledge engineering, San Francisco,California, 1993.

[2]BACHMAN, Bachman/Analyst Reference Manual,Release 4.10.

[3] G. Canfora, A. Cimitile, and U. De Carlini, "A logic based approach to reverse engineering tool production",Conference on Software Maintenance, Sorrento, Italy,1991.

[4] G. Canfora, A. Cimitile, and M. Munro "RE2: reverse engineering and reuse re-engineering", Computer Science Technical Report 8/92, University of Duhram,

School of Engineering and Computer Science, 1992.

[5] E. J. Chikofsky, and J. H. Cross II, "Reverse engineering and design recovery: a taxonomy", IEEE Software, January 1990.

[6] G. Como, F. Lanubile, and G. Visaggio, "Design recovery of a data-strong application", 3rd International Conference on Software engineering and Knowledge

engineering, Illinois,USA,1991.

[7]F. Cutillo, F. Lanubile, and G. Visaggio, "Extracting application domain functions from old code: a real experience",2nd Work shop on Program Comprehension, Capri, Italy, 1993.

[8] F. Cutillo, P. Fiore, and G. Visaggio, "Identification and extraction of domain independent components in large

programs",Working Conference on Reverse Engineering, Baltimora, 1993.

[9]F. Cutillo, F. Lanubile, and G. Visaggio, "Using program slicing for software comprehension", IEEE Workshop Notes on Software Comprehension, Orlando, Florida, 1992.

10]FORMATICA, "Definition of the production line.reverse engineering: process model", Int. doc. no. 69.September 1992

[11]R. Gopal, "Dynamic program slicing based on dependence relationships", Conference on Software Maintenance, Sorrento, Italy, 1991.

[12]F. Lanubile, and G.Visaggio, "Function recovery based on program slicing", Conference on Software Maintenance, Montreal, Quebec, Canada, 1993.

[13]M. Weiser, "Program Slicing", IEEE Transactions on Software Engineering, vol.SE-10, n°4, July 1984.

[14]VIASOFT, VIA/Renaissance User Manual, VIA/InsightUser Manual, VIA/SmartDoc User Manual.

逆向工程过程在真实情况中的应用的分析

Fabio Abbattista (*), Gregorio M.G. Fatone (**), Filippo Lanubile (*), Giuseppe Visaggio (*)

(*)Dipartimento DI Informatica,意大利巴里大学

(**)BASICA S.p.A.获意大利波坦察

摘要

逆向工程处理模型的应用和对在所收集数据的基础上做出的一些修改旨在改善其效能。经验给人们带来了出于利益的各种考虑,第一就是他们之间的产品质量和加工质量的明确互动。一种协同利用静态和动态分析的方法来提高程序的理解性和可掌握性。经验修改后被引入逆向工程处理中,更加清楚的表达了程序和从应用领域所产生的方案的理解性。

最后,使用的工具来取得逆向工程产品功效的问题在该领域的实验期间取得了明显的进展。

1 简介

我们提出了一个让加工质量和产品质量进行交互和彼此相互提高的经验。这个过程是逆向工程,而该产品是必要的程序文件以更好地利用此方案。这些方法突出的一点是需要从经验中获得,一般来说,模型都是在实地实验改善后出现,尤其是结合静态和动态分析来提高处理质量的方法。

本文介绍了一个处理模型应用到实际情况的方案。该方案是一套方案具有以下特点:

语言:COBOL语言

操作系统:BS2000

总方案:653

上线方案:348

批处理程序:305

文件:70

数据:9 000

说明:900 000

2 逆向工程处理

逆向工程处理中有两个主要目标:(1)、增加软件系统的易于维修性,(2)、提高其可用性,最终方便用户和不同的用户[5]之间的知识转移。

第一需要重建是项目的设计文件和恢复退化最严重的艺术,而第二需要重建的是用户的文档和数据的概念模型。这可以帮助用户了解自己的信息系统,从数据处理的角度来看信息[4],[6]。

图1简要介绍了处理模型的过程。进一步的细节可从[10]中了解。

1、库存软件系统。从旧的软件系统中提取以下交叉引用:依存度X文献的调用,

复制图书的X文献,档案获取的X文献。

图1:过程模型

2、重建数据逻辑水平。从数据说明来看,层次结构构成逻辑数据模型的重建。别名是在应用领域的可识别实体。图2显示了一条纪录的申报作为输入的阶段,相应的分层图作为相应的输出。箭头代表该纪录的子结构之间的层次关系;基本数据都没有显示。这些数据被归类为应用程序域的数据,控制数据和结构数据。应用

程序域的数据是在应用程序域识别实体的属性。例如,名为MT02-02的字段代表“数量”也可表示抵押权的属性,因此应用在程序域的识别上。控制数据虽然没有与应用程序域的对应,但是用来记录程序执行过程中发生的事件,所以其他程序可以做出相应的调整;控制数据的典型例子是以异步方式通过一个程序和使用它的人进行验证,以确定他们的行为是根据以往历史的软件系统为标志。例如,MT02-33的字段是预设表明采取了抵押贷款,必须按照的利率的变更来计算分期付款时,要应用于的达成协议的存在的基础上;它是控制数据的一个典型例子。结构数据是管理组织的数据库或文件所必需的。因为MT01-05的字段确定了按揭文件内的记录类型,所以它是一个典型的例子。

3、抽象数据。在应用领域中属于逻辑模型和与相应的应用程序域[1]相关的有意义的概念的非死数据的所有数据。

4、现有的资料分析。这项活动涉及在使用两种类型的信息被逆转的方案预期功能的确定。

首先是静态的知识,是内部和外部文档规定应用程序域的功能。第二个是动态的,来自程序员的经验和用户的工作方案的互动。

图2:“重建数据的逻辑水平”阶段的输入和输出

图3:逆向工程前后的等价测试系统

5、重建方案的逻辑水平。每个程序与结构图中每个模块的一个部分或外部子程序的程序对应。在这一阶段,所有死数据和死的指示都被标识。这些数据都不能按照计划和说明来运行。前者是传达“抽象数据”的活动,而后者则是从结构图中删除,从而构成了具有指定功能的逻辑模型。

6、还原逻辑模型。恢复涉及引入的变化,以提高程序的结构,且不造成影响或与其他系统的数据接口冲突,使它们更容易保持。修改一些例子是变量的命名,使他们的标识符更有意义;提高模块内部的凝聚力,从低凝聚力和隔离结构([7] [8],[12] [13]);外部模块,在目前的过程中,在与主线、本土化声明的变量是全球性的,但在现有模块和流程中的本地摘录恢复过程中。执行这些活动促进了从现有资料分析阶段所预期的功能。事实上,由于这方面的知识,经营者可以提取功能从逻辑模型中的模块。这使得逻辑模型更具可读性和它的模块不太复杂。

7、抽象函数。记录恢复过程中提取的功能。以文字的形式描述每个功能的目的。功能之间的关系也由数据流图的方式记录。后者连同每个功能的描述,构成概念模型[9]。

逆向工程过程不是对称的,因为程序恢复的数据都没有,因此与后者的任何干扰都会影响程序,使整个恢复过程非常麻烦。事实上,恢复的程序只限于每一个单一的程序,说明一个更简单,更经济的过程。

逆向工程过程描述修改的代码,所以它是必要的验证工作方案相当于过程所产生

的。测试过程中使用,并作为唯一可靠的工作系统组件是有问题的代码,它是唯一可能的测试等价之间的实际和逆转的方案。实际系统的正常工作期间获得的测试用例。仿照图3中的等价测试系统。

3执行结果

在前面所述的方案和计划的过程投入生产后,经过17个月的工作日在一条生产线,获得了第一名的成绩。

应当指出的是,一条生产线,是指一个组织单位,具有自主执行过程需要的所有资源。在这种情况下,生产线由8个反向的运营商和一个反向工程组成。前者执行程序根据定义的流程模型,而后者的坐标活动,并采取一切必要的措施以解决在执行程序中的所有不确定点。该生产线股在公司中的其他组织单位的应用程序域的专家。

从这些第一次执行的结果分析的效率和效能的角度可以看出:虽然效率不是这项工作的主要目标,但是活动的程序和逆向工程的数据可以作出两个重要的考虑因素,分别列于表I和II。

经营者对逆向工程方案的生产力是与他们在应用领域的经验相关的。逆向工程中的数据中,在生产率上的差异很少与经验有关,因为很少有自动化的操作,所以在任何情况下是人们都需要花非常多的时间。

第二点是,市售可用的工具往往不足以用在大型项目上。例如,当需要访问以前插入的信息时,如果数据超过一千或访问的是一百多个属性的实体,那么提取数据结构所使用的工具就会变得非常慢。在另一方面,该方案所使用的工具一旦通过8000行代码的阈值,显示性能的急剧下降(数据和控制流放慢的问题的答

案)。显然,效率低下的自动化工具需要更多时间来实现这个目标。

至于过程中的效果,有以下几点可以看出。

对维护者来说,逻辑数据模型并不是非常有用的,因为他可以更容易的从代码中描述的记录布局阅读到他所需要的信息。这是由于在旧体制中文件的结构复杂,很难明确和体现。然而,了解文件、管理、系统等之间存在的很多关系和维修是一项高风险的过程是必需的。例如,客户的信息文件和抵押之间的关系:客户拿出抵押贷款上MT02-01的字段表示客户的数量和客户的信息文件中明确确定上述客户端上的所有信息。

表三:一些方案的复杂性及其提取模块

在恢复过程中,归功于巴赫曼的工具[2]和VIASOFT的工具[14],扭转运营商使用技术提取了大量不能表达任何文件的信息。尤其是在还原程序的许多模块中,他不仅会知道他们的描述,而且有模块本身所包含的算法。事实上,参考图1,包括模块的行为描述的文件属于一个名为“恢复逻辑模型”的流动。只有文字,不

是一个正式的,说明模块的目的是提供。

这些文件中的数据正规化许多设计在过去的生命周期的系统,已经失去其推理作出的决定。因为它们影响到自己的不足,使用方案的实际结构,防止反向操作者能够提取由这些决定没有留下可追溯推理所得的代码,实现了一些功能。例如,外地MT02-08,代表客户端必须在分期付款还清房贷总额,计算按揭金额(MT02-02),分期付款的总数(MT02-05)和利率(MT02-03)。下旨,这个基准,而不是计算每次存储的设计决定。主要的后果是,逆向工程过程中发现的许多模块

显然是低的凝聚力和高复杂性和难以维持。表三显示了提取一些方案,这是在某些情况下,仍然非常高的模块集的复杂性。执行测试用例有助于理解非常复杂的模块。

图4:修改后的逆向工程过程

4 修改过程

后该领域的第一次试验期间,一些适当的修改过程模型和产品。

为了提高反向操作的效率,取决于应用程序的先验知识域,系统的培训是必

要的。它是不可能有每个专门反向运营商域,因为这会使被逆转“系统” - “运营商要使用”配对过于死板。因此,我们决定改变的过程,在图3中可以观察,插入的培训活动,通过预期的功能,运营商的方案和在这些过程的数据,他们应该找到解释。开展这项活动是在应用领域的专家,旨在提供运营商这是不可能在这个过程中正式的信息工具,甚至当商业众所周知,必须仔细评估其效率,不仅为他们的疗效。幸运的是,在这种情况下,最没有效率的工具是一个派生文件的结构,所以重建的逻辑级别的数据进行了修改(见图2)生产的概念,控制或结构的数据分类和文件之间的关系的描述。

图5:原来模块的动态切片

在逻辑模型的交付,其结构包括模块的形式化编制标准的变化。加大对影响决策的信息的抽象的数据,这是最好的控制和结构的数据,首先,计算数据,先后被应用领域的专家分析,使他能够完成预期的功能,在必要时。因此,在这个过程中模型,改变已作出增加之间的数据通信过程中逆向工程(见图4)。

最后,建议使用它们来执行动态切片过于复杂的模块,在恢复阶段,测试用例的经验。 [11]中可以找到一个正式描述这种动态切片。

由于一个模块中号和假设,它包含了一组函数(F,...,Fn)的;一套测试用例,用来验证男,测试用例的一些子集(的T1,...,TN)的功能必须确定,在通用钛包含连接功能等价类。因此测试用例TI将激活在所有M,只说明实现功能连接。这些指示构成模块米,相应的功能连接。一旦已提取的模块供应量(M1,...,锰),相应的(F,...,Fn)的,互补的模块MC模块供应量(M1,...,锰),

可以发现在M. MC将模块管理(M1,...,Mn)的,例如,在图5所示的模块,测试用例已建成的数据是:

IDX的的的ETI-002:{1, (20)

事务的表类型的索引

FLAGTR-WS:{0, (9)

工作区标志,其价值是搭配类型的事务表的索引。

这两个变量的组合值指定的客户打算与银行交易的确切性质。

KI-0:{真,假}

控制变量,其中规定对文件的访问的结果。如果属实,访问存在,如果为false,然后访问该文件是不可能的。

这个变量的值进行测试(在图6的情况下)只从演奏的退出,使文件的阅读。

因此在图7所示的结构取代原有的模块。

被修改的复杂性作为正式通过修改相应的“重建方案的逻辑水平”活动过程中的逆向工程过程模型在表IV.This显示,事实上所有模块,超过预定水平的复杂性,动态切片使用测试用例相对的模块中的问题。

毕业设计外文翻译资料

外文出处: 《Exploiting Software How to Break Code》By Greg Hoglund, Gary McGraw Publisher : Addison Wesley Pub Date : February 17, 2004 ISBN : 0-201-78695-8 译文标题: JDBC接口技术 译文: JDBC是一种可用于执行SQL语句的JavaAPI(ApplicationProgrammingInterface应用程序设计接口)。它由一些Java语言编写的类和界面组成。JDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。 一、ODBC到JDBC的发展历程 说到JDBC,很容易让人联想到另一个十分熟悉的字眼“ODBC”。它们之间有没有联系呢?如果有,那么它们之间又是怎样的关系呢? ODBC是OpenDatabaseConnectivity的英文简写。它是一种用来在相关或不相关的数据库管理系统(DBMS)中存取数据的,用C语言实现的,标准应用程序数据接口。通过ODBCAPI,应用程序可以存取保存在多种不同数据库管理系统(DBMS)中的数据,而不论每个DBMS使用了何种数据存储格式和编程接口。 1.ODBC的结构模型 ODBC的结构包括四个主要部分:应用程序接口、驱动器管理器、数据库驱动器和数据源。应用程序接口:屏蔽不同的ODBC数据库驱动器之间函数调用的差别,为用户提供统一的SQL编程接口。 驱动器管理器:为应用程序装载数据库驱动器。 数据库驱动器:实现ODBC的函数调用,提供对特定数据源的SQL请求。如果需要,数据库驱动器将修改应用程序的请求,使得请求符合相关的DBMS所支持的文法。 数据源:由用户想要存取的数据以及与它相关的操作系统、DBMS和用于访问DBMS的网络平台组成。 虽然ODBC驱动器管理器的主要目的是加载数据库驱动器,以便ODBC函数调用,但是数据库驱动器本身也执行ODBC函数调用,并与数据库相互配合。因此当应用系统发出调用与数据源进行连接时,数据库驱动器能管理通信协议。当建立起与数据源的连接时,数据库驱动器便能处理应用系统向DBMS发出的请求,对分析或发自数据源的设计进行必要的翻译,并将结果返回给应用系统。 2.JDBC的诞生 自从Java语言于1995年5月正式公布以来,Java风靡全球。出现大量的用java语言编写的程序,其中也包括数据库应用程序。由于没有一个Java语言的API,编程人员不得不在Java程序中加入C语言的ODBC函数调用。这就使很多Java的优秀特性无法充分发挥,比如平台无关性、面向对象特性等。随着越来越多的编程人员对Java语言的日益喜爱,越来越多的公司在Java程序开发上投入的精力日益增加,对java语言接口的访问数据库的API 的要求越来越强烈。也由于ODBC的有其不足之处,比如它并不容易使用,没有面向对象的特性等等,SUN公司决定开发一Java语言为接口的数据库应用程序开发接口。在JDK1.x 版本中,JDBC只是一个可选部件,到了JDK1.1公布时,SQL类包(也就是JDBCAPI)

本科毕业设计文献综述范例(1)

###大学 本科毕业设计(论文)文献综述 课题名称: 学院(系): 年级专业: 学生姓名: 指导教师: 完成日期:

燕山大学本科生毕业设计(论文) 一、课题国内外现状 中厚板轧机是用于轧制中厚度钢板的轧钢设备。在国民经济的各个部门中广泛的采用中板。它主要用于制造交通运输工具(如汽车、拖拉机、传播、铁路车辆及航空机械等)、钢机构件(如各种贮存容器、锅炉、桥梁及其他工业结构件)、焊管及一般机械制品等[1~3]。 1 世界中厚板轧机的发展概况 19世纪五十年代,美国用采用二辊可逆式轧机生产中板。轧机前后设置传动滚道,用机械化操作实现来回轧制,而且辊身长度已增加到2m以上,轧机是靠蒸汽机传动的。1864年美国创建了世界上第一套三辊劳特式中板轧机,当时盛行一时,推广于世界。1918年卢肯斯钢铁公司科茨维尔厂为了满足军舰用板的需求,建成了一套5230mm四辊式轧机,这是世界上第一套5m以上的轧机。1907年美国钢铁公司南厂为了轧边,首次创建了万能式厚板轧机,于1931年又建成了世界上第一套连续式中厚板轧机。欧洲国家中厚板生产也是较早的。1910年,捷克斯洛伐克投产了一套4500mm二辊式厚板轧机。1940年,德国建成了一套5000mm四辊式厚板轧机。1937年,英国投产了一套3810mm中厚板轧机。1939年,法国建成了一套4700mm 四辊式厚板轧机。这些轧机都是用于生产机器和兵器用的钢板,多数是为了二次世界大战备战的需要。1941年日本投产了一套5280mm四辊式厚板轧机,主要用于满足海军用板的需要。20世纪50年代,掌握了中厚板生产的计算机控制。20世纪80年代,由于中厚板的使用部门萧条,许多主要产钢国家的中厚板产量都有所下降,西欧国家、日本和美国关闭了一批中厚板轧机(宽度一般在3、4米以下)。国外除了大的厚板轧机以外,其他大型的轧机已很少再建。1984年底,法国东北方钢铁联营敦刻尔克厂在4300mm轧机后面增加一架5000mm宽厚板轧机,增加了产量,且扩大了品种。1984年底,苏联伊尔诺斯克厂新建了一套5000mm宽厚板轧机,年产量达100万t。1985年初,德国迪林冶金公司迪林根厂将4320mm轧机换成4800mm 轧机,并在前面增加一架特宽得5500mm轧机。1985年12月日本钢管公司福山厂新型制造了一套4700mmHCW型轧机,替换下原有得轧机,更有效地控制板形,以提高钢板的质量。 - 2 -

毕业论文外文翻译模板

农村社会养老保险的现状、问题与对策研究社会保障对国家安定和经济发展具有重要作用,“城乡二元经济”现象日益凸现,农村社会保障问题客观上成为社会保障体系中极为重要的部分。建立和完善农村社会保障制度关系到农村乃至整个社会的经济发展,并且对我国和谐社会的构建至关重要。我国农村社会保障制度尚不完善,因此有必要加强对农村独立社会保障制度的构建,尤其对农村养老制度的改革,建立健全我国社会保障体系。从户籍制度上看,我国居民养老问题可分为城市居民养老和农村居民养老两部分。对于城市居民我国政府已有比较充足的政策与资金投人,使他们在物质和精神方面都能得到较好地照顾,基本实现了社会化养老。而农村居民的养老问题却日益突出,成为摆在我国政府面前的一个紧迫而又棘手的问题。 一、我国农村社会养老保险的现状 关于农村养老,许多地区还没有建立农村社会养老体系,已建立的地区也存在很多缺陷,运行中出现了很多问题,所以完善农村社会养老保险体系的必要性与紧迫性日益体现出来。 (一)人口老龄化加快 随着城市化步伐的加快和农村劳动力的输出,越来越多的农村青壮年人口进入城市,年龄结构出现“两头大,中间小”的局面。中国农村进入老龄社会的步伐日渐加快。第五次人口普查显示:中国65岁以上的人中农村为5938万,占老龄总人口的67.4%.在这种严峻的现实面前,农村社会养老保险的徘徊显得极其不协调。 (二)农村社会养老保险覆盖面太小 中国拥有世界上数量最多的老年人口,且大多在农村。据统计,未纳入社会保障的农村人口还很多,截止2000年底,全国7400多万农村居民参加了保险,占全部农村居民的11.18%,占成年农村居民的11.59%.另外,据国家统计局统计,我国进城务工者已从改革开放之初的不到200万人增加到2003年的1.14亿人。而基本方案中没有体现出对留在农村的农民和进城务工的农民给予区别对待。进城务工的农民既没被纳入到农村养老保险体系中,也没被纳入到城市养老保险体系中,处于法律保护的空白地带。所以很有必要考虑这个特殊群体的养老保险问题。

毕业设计外文翻译附原文

外文翻译 专业机械设计制造及其自动化学生姓名刘链柱 班级机制111 学号1110101102 指导教师葛友华

外文资料名称: Design and performance evaluation of vacuum cleaners using cyclone technology 外文资料出处:Korean J. Chem. Eng., 23(6), (用外文写) 925-930 (2006) 附件: 1.外文资料翻译译文 2.外文原文

应用旋风技术真空吸尘器的设计和性能介绍 吉尔泰金,洪城铱昌,宰瑾李, 刘链柱译 摘要:旋风型分离器技术用于真空吸尘器 - 轴向进流旋风和切向进气道流旋风有效地收集粉尘和降低压力降已被实验研究。优化设计等因素作为集尘效率,压降,并切成尺寸被粒度对应于分级收集的50%的效率进行了研究。颗粒切成大小降低入口面积,体直径,减小涡取景器直径的旋风。切向入口的双流量气旋具有良好的性能考虑的350毫米汞柱的低压降和为1.5μm的质量中位直径在1米3的流量的截止尺寸。一使用切向入口的双流量旋风吸尘器示出了势是一种有效的方法,用于收集在家庭中产生的粉尘。 摘要及关键词:吸尘器; 粉尘; 旋风分离器 引言 我们这个时代的很大一部分都花在了房子,工作场所,或其他建筑,因此,室内空间应该是既舒适情绪和卫生。但室内空气中含有超过室外空气因气密性的二次污染物,毒物,食品气味。这是通过使用产生在建筑中的新材料和设备。真空吸尘器为代表的家电去除有害物质从地板到地毯所用的商用真空吸尘器房子由纸过滤,预过滤器和排气过滤器通过洁净的空气排放到大气中。虽然真空吸尘器是方便在使用中,吸入压力下降说唱空转成比例地清洗的时间,以及纸过滤器也应定期更换,由于压力下降,气味和细菌通过纸过滤器内的残留粉尘。 图1示出了大气气溶胶的粒度分布通常是双峰形,在粗颗粒(>2.0微米)模式为主要的外部来源,如风吹尘,海盐喷雾,火山,从工厂直接排放和车辆废气排放,以及那些在细颗粒模式包括燃烧或光化学反应。表1显示模式,典型的大气航空的直径和质量浓度溶胶被许多研究者测量。精细模式在0.18?0.36 在5.7到25微米尺寸范围微米尺寸范围。质量浓度为2?205微克,可直接在大气气溶胶和 3.85至36.3μg/m3柴油气溶胶。

软件开发概念和设计方法大学毕业论文外文文献翻译及原文

毕业设计(论文)外文文献翻译 文献、资料中文题目:软件开发概念和设计方法文献、资料英文题目: 文献、资料来源: 文献、资料发表(出版)日期: 院(部): 专业: 班级: 姓名: 学号: 指导教师: 翻译日期: 2017.02.14

外文资料原文 Software Development Concepts and Design Methodologies During the 1960s, ma inframes and higher level programming languages were applied to man y problems including human resource s yste ms,reservation s yste ms, and manufacturing s yste ms. Computers and software were seen as the cure all for man y bu siness issues were some times applied blindly. S yste ms sometimes failed to solve the problem for which the y were designed for man y reasons including: ?Inability to sufficiently understand complex problems ?Not sufficiently taking into account end-u ser needs, the organizational environ ment, and performance tradeoffs ?Inability to accurately estimate development time and operational costs ?Lack of framework for consistent and regular customer communications At this time, the concept of structured programming, top-down design, stepwise refinement,and modularity e merged. Structured programming is still the most dominant approach to software engineering and is still evo lving. These failures led to the concept of "software engineering" based upon the idea that an engineering-like discipl ine could be applied to software design and develop ment. Software design is a process where the software designer applies techniques and principles to produce a conceptual model that de scribes and defines a solution to a problem. In the beginning, this des ign process has not been well structured and the model does not alwa ys accurately represent the problem of software development. However,design methodologies have been evolving to accommo date changes in technolog y coupled with our increased understanding of development processes. Whereas early desig n methods addressed specific aspects of the

毕业设计文献综述范文

四川理工学院毕业设计(文献综述)红外遥控电动玩具车的设计 学生:程非 学号:10021020402 专业:电子信息工程 班级:2010.4 指导教师:王秀碧 四川理工学院自动化与电子信息学院 二○一四年三月

1前言 1.1 研究方向 随着科技的发展,越来越多的现代化电器走进了普通老百姓的家庭,而这些家用电器大都由红外遥控器操控,过多不同遥控器的混合使用带来了诸多不便。因此,设计一种智能化的学习型遥控器,学习各种家用电器的遥控编码,实现用一个遥控器控制所有家电,已成为迫切需求。首先对红外遥控接收及发射原理进行分析,通过对红外编码理论的学习,设计以MSP430单片机为核心的智能遥控器。其各个模块设计如下:红外遥控信号接收,红外接收器把接收到的红外信号经光电二极管转化成电信号,再对电信号进行解调,恢复为带有一定功能指令码的脉冲编码;接着是红外编码学习,利用单片机的输入捕捉功能捕捉载波的跳变沿,并通过定时器计时记下载波的周期和红外信号的波形特征,进行实时编码;存储电路设计,采用I2C总线的串行E2PROM(24C256)作为片外存储器,其存储容量为8192个字节,能够满足所需要的存取需求;最后是红外发射电路的设计,当从存储模块中获取某红外编码指令后,提取红外信号的波形特征信息并进行波形还原;将其调制到38KHZ的载波信号上,通过三极管放大电路驱动红外发光二极管发射红外信号,达到红外控制的目的。目前,国外进口的万能遥控器价格比较昂贵,还不能真正走进普通老百姓的家中。本文在总结和分析国外设计的基础上,设计一款以MSP430单片机为核心的智能型遥控器,通过对电视机和空调的遥控编码进行学习,能够达到预期的目的,具有一定的现实意义。 1.2 发展历史 红外遥控由来已久,但是进入90年代,这一技术又有新的发张,应用范围更加广泛。红外遥控是一种无线、非接触控制技术,具有抗干扰能力强,信息传输可靠,功耗低,成本低,易实现等显著优点,被诸多电子设备特别是家用电器广泛采用,并越来越多的应用到计算机系统中。 60年代初,一些发达国家开始研究民用产品的遥控技术,单由于受当时技术条件限制,遥控技术发展很缓慢,70年代末,随着大规模集成电路和计算机技术的发展,遥控技术得到快速发展。在遥控方式上大体经理了从有线到无限的超声波,从振动子到红外线,再到使用总线的微机红外遥控这样几个阶段。无论采用何种方式,准确无误传输新信号,最终达到满意的控制效果是非常重要的。最初的无线遥控装置采用的是电磁波传输信号,由于电磁波容易产生干扰,也易受干扰,因此逐渐采用超声波和红外线媒介来传输信号。与红外线相比,超声传感器频带窄,所能携带的信息量少扰而引起误动作。较为理想的是光控方式,逐渐采用红外线的遥控方式取代了超声波遥控方式,出现了红外线多功能遥控器,成为当今时代的主流。 1.3 当前现状 红外线在频谱上居于可见光之外,所以抗干扰性强,具有光波的直线传播特性,不易产生相互间的干扰,是很好的信息传输媒体。信息可以直接对红外光进行调制传输,例如,信息直接调制红外光的强弱进行传输,也可以用红外线产生一定频率的载波,再用信息对载波进调制,接收端再去掉载波,取到信息。从信

毕业设计外文翻译

毕业设计(论文) 外文翻译 题目西安市水源工程中的 水电站设计 专业水利水电工程 班级 学生 指导教师 2016年

研究钢弧形闸门的动态稳定性 牛志国 河海大学水利水电工程学院,中国南京,邮编210098 nzg_197901@https://www.doczj.com/doc/849007450.html,,niuzhiguo@https://www.doczj.com/doc/849007450.html, 李同春 河海大学水利水电工程学院,中国南京,邮编210098 ltchhu@https://www.doczj.com/doc/849007450.html, 摘要 由于钢弧形闸门的结构特征和弹力,调查对参数共振的弧形闸门的臂一直是研究领域的热点话题弧形弧形闸门的动力稳定性。在这个论文中,简化空间框架作为分析模型,根据弹性体薄壁结构的扰动方程和梁单元模型和薄壁结构的梁单元模型,动态不稳定区域的弧形闸门可以通过有限元的方法,应用有限元的方法计算动态不稳定性的主要区域的弧形弧形闸门工作。此外,结合物理和数值模型,对识别新方法的参数共振钢弧形闸门提出了调查,本文不仅是重要的改进弧形闸门的参数振动的计算方法,但也为进一步研究弧形弧形闸门结构的动态稳定性打下了坚实的基础。 简介 低举升力,没有门槽,好流型,和操作方便等优点,使钢弧形闸门已经广泛应用于水工建筑物。弧形闸门的结构特点是液压完全作用于弧形闸门,通过门叶和主大梁,所以弧形闸门臂是主要的组件确保弧形闸门安全操作。如果周期性轴向载荷作用于手臂,手臂的不稳定是在一定条件下可能发生。调查指出:在弧形闸门的20次事故中,除了极特殊的破坏情况下,弧形闸门的破坏的原因是弧形闸门臂的不稳定;此外,明显的动态作用下发生破坏。例如:张山闸,位于中国的江苏省,包括36个弧形闸门。当一个弧形闸门打开放水时,门被破坏了,而其他弧形闸门则关闭,受到静态静水压力仍然是一样的,很明显,一个动态的加载是造成的弧形闸门破坏一个主要因素。因此弧形闸门臂的动态不稳定是造成弧形闸门(特别是低水头的弧形闸门)破坏的主要原是毫无疑问。

本科毕业设计方案外文翻译范本

I / 11 本科毕业设计外文翻译 <2018届) 论文题目基于WEB 的J2EE 的信息系统的方法研究 作者姓名[单击此处输入姓名] 指导教师[单击此处输入姓名] 学科(专业 > 所在学院计算机科学与技术学院 提交日期[时间 ]

基于WEB的J2EE的信息系统的方法研究 摘要:本文介绍基于工程的Java开发框架背后的概念,并介绍它如何用于IT 工程开发。因为有许多相同设计和开发工作在不同的方式下重复,而且并不总是符合最佳实践,所以许多开发框架建立了。我们已经定义了共同关注的问题和应用模式,代表有效解决办法的工具。开发框架提供:<1)从用户界面到数据集成的应用程序开发堆栈;<2)一个架构,基本环境及他们的相关技术,这些技术用来使用其他一些框架。架构定义了一个开发方法,其目的是协助客户开发工程。 关键词:J2EE 框架WEB开发 一、引言 软件工具包用来进行复杂的空间动态系统的非线性分析越来越多地使用基于Web的网络平台,以实现他们的用户界面,科学分析,分布仿真结果和科学家之间的信息交流。对于许多应用系统基于Web访问的非线性分析模拟软件成为一个重要组成部分。网络硬件和软件方面的密集技术变革[1]提供了比过去更多的自由选择机会[2]。因此,WEB平台的合理选择和发展对整个地区的非线性分析及其众多的应用程序具有越来越重要的意义。现阶段的WEB发展的特点是出现了大量的开源框架。框架将Web开发提到一个更高的水平,使基本功能的重复使用成为可能和从而提高了开发的生产力。 在某些情况下,开源框架没有提供常见问题的一个解决方案。出于这个原因,开发在开源框架的基础上建立自己的工程发展框架。本文旨在描述是一个基于Java的框架,该框架利用了开源框架并有助于开发基于Web的应用。通过分析现有的开源框架,本文提出了新的架构,基本环境及他们用来提高和利用其他一些框架的相关技术。架构定义了自己开发方法,其目的是协助客户开发和事例工程。 应用程序设计应该关注在工程中的重复利用。即使有独特的功能要求,也

毕业设计外文翻译-中文版

本科生毕业设计(论文)外文科技文献译文 译文题目(外文题目)学院(系)Socket网络编程的设计与实现A Design and Implementation of Active Network Socket Programming 机械与能源工程学院 专学业 号 机械设计制造及其自动化 071895 学生姓名李杰林 日期2012年5月27日指导教师签名日期

摘要:编程节点和活跃网络的概念将可编程性引入到通信网络中,并且代码和数据可以在发送过程中进行修改。最近,多个研究小组已经设计和实现了自己的设计平台。每个设计都有其自己的优点和缺点,但是在不同平台之间都存在着互操作性问题。因此,我们引入一个类似网络socket编程的概念。我们建立一组针对应用程序进行编程的简单接口,这组被称为活跃网络Socket编程(ANSP)的接口,将在所有执行环境下工作。因此,ANSP 提供一个类似于“一次性编写,无限制运行”的开放编程模型,它可以工作在所有的可执行环境下。它解决了活跃网络中的异构性,当应用程序需要访问异构网络内的所有地区,在临界点部署特殊服务或监视整个网络的性能时显得相当重要。我们的方案是在现有的环境中,所有应用程序可以很容易地安装上一个薄薄的透明层而不是引入一个新的平台。 关键词:活跃网络;应用程序编程接口;活跃网络socket编程

1 导言 1990年,为了在互联网上引入新的网络协议,克拉克和藤农豪斯[1]提出了一种新的设 计框架。自公布这一标志性文件,活跃网络设计框架[2,3,10]已经慢慢在20世纪90 年代末成形。活跃网络允许程序代码和数据可以同时在互联网上提供积极的网络范式,此外,他们可以在传送到目的地的过程中得到执行和修改。ABone作为一个全球性的骨干网络,开 始进行活跃网络实验。除执行平台的不成熟,商业上活跃网络在互联网上的部署也成为主要障碍。例如,一个供应商可能不乐意让网络路由器运行一些可能影响其预期路由性能的未知程序,。因此,作为替代提出了允许活跃网络在互联网上运作的概念,如欧洲研究课题组提出的应用层活跃网络(ALAN)项目[4]。 在ALAN项目中,活跃服务器系统位于网络的不同地址,并且这些应用程序都可以运行在活跃系统的网络应用层上。另一个潜在的方法是网络服务提供商提供更优质的活跃网络服务类。这个服务类应该提供最优质的服务质量(QOS),并允许路由器对计算机的访问。通过这种方法,网络服务提供商可以创建一个新的收入来源。 对活跃网络的研究已取得稳步进展。由于活跃网络在互联网上推出了可编程性,相应 地应建立供应用程序工作的可执行平台。这些操作系统平台执行环境(EES),其中一些已 被创建,例如,活跃信号协议(ASP)[12]和活跃网络传输系统(ANTS)[11]。因此,不 同的应用程序可以实现对活跃网络概念的测试。 在这些EES 环境下,已经开展了一系列验证活跃网络概念的实验,例如,移动网络[5],网页代理[6],多播路由器[7]。活跃网络引进了很多在网络上兼有灵活性和可扩展性的方案。几个研究小组已经提出了各种可通过路由器进行网络计算的可执行环境。他们的成果和现有基础设施的潜在好处正在被评估[8,9]。不幸的是,他们很少关心互操作性问题,活跃网络由多个执行环境组成,例如,在ABone 中存在三个EES,专为一个EES编写的应用程序不能在其他平台上运行。这就出现了一种资源划分为不同运行环境的问题。此外,总是有一些关键的网络应用需要跨环境运行,如信息收集和关键点部署监测网络的服务。 在本文中,被称为活跃网络Socket编程(ANSP)的框架模型,可以在所有EES下运行。它提供了以下主要目标: ??通过单一编程接口编写应用程序。 由于ANSP提供的编程接口,使得EES的设计与ANSP 独立。这使得未来执行环境的发展和提高更加透明。

大学本科毕业设计文献翻译模板

模型预测油田水中溶解的碳酸钙含量: 压力和温度的影响 XXX 译 摘要:油田中水垢沉积会对储层造成伤害、堵塞地层孔道、表面以及注入设备。碳酸钙是水中最常见的结垢化合物之一,储层产生的盐水会使压力和温度降低,储层压力降低会使CaCO3的溶解度降低,进而提高体系中碳酸钙的饱和速率,而温度下降会产生相反的结果。因此温度和压力一起作用的结果可能增加或减小CaCO3溶解度,用体系温度的变化来指定其压力的变化。因此,在石油生产系统中精确的预测方法的应用备受关注。目前的研究重点是运用基于最小二乘支持向量机(LSSVM)预测模型来估计油田水中溶解碳酸钙浓度的大小。用超优化参数(r和C2)的遗传算法(GA)嵌入到LSSVM模型,这种方法可简单准确的预测油田卤水中溶解碳酸钙浓度的最小量。 1.引言 随着油田卤水压力和温度变化,气体可能会从储层到地表的运动,导致某些固体沉淀。为了保持注水井压力平衡并将油运移到生产井,有时需要将卤水注入到储层中,因此,过量的盐垢可以沉积在储层或井眼内。对于大部分油田结垢多会发生在此过程中。 碳酸钙沉积通常是一个自发的过程,沉积形成的主要原因是二氧化碳从水相逸出,导致油气层的压力下降,该过程会除去了水中的碳酸,直到方解石溶解完全。在恒定二氧化碳分压下,方解石的溶解性随温度的降低而降低[1-4]。根据公式(1),碳酸钙沉积垢来自碳酸钙沉淀: Ca2+ + CO32-→ CaCO3↓ 下面的公式为碳酸的电离式[5–7]: CO2 + H2O → H2CO3 H2CO3→ H+ + HCO3- HCO3-→ H+ + CO32- 若要形成碳酸氢根离子和氢离子,碳酸要电离,因为碳酸的第一电离常数远大于它的第二电离常数,从碳酸第一电离离子化的氢离子与水中自由的碳酸根离子结合。此外,碳酸钙沉淀的方程式可以说明[8–10]:

毕业设计外文翻译格式实例.

理工学院毕业设计(论文)外文资料翻译 专业:热能与动力工程 姓名:赵海潮 学号:09L0504133 外文出处:Applied Acoustics, 2010(71):701~707 附件: 1.外文资料翻译译文;2.外文原文。

附件1:外文资料翻译译文 基于一维CFD模型下汽车排气消声器的实验研究与预测Takeshi Yasuda, Chaoqun Wua, Noritoshi Nakagawa, Kazuteru Nagamura 摘要目前,利用实验和数值分析法对商用汽车消声器在宽开口喉部加速状态下的排气噪声进行了研究。在加热工况下发动机转速从1000转/分钟加速到6000转/分钟需要30秒。假定其排气消声器的瞬时声学特性符合一维计算流体力学模型。为了验证模拟仿真的结果,我们在符合日本工业标准(JIS D 1616)的消声室内测量了排气消声器的瞬态声学特性,结果发现在二阶发动机转速频率下仿真结果和实验结果非常吻合。但在发动机高阶转速下(从5000到6000转每分钟的四阶转速,从4200到6000转每分钟的六阶转速这样的高转速范围内),计算结果和实验结果出现了较大差异。根据结果分析,差异的产生是由于在模拟仿真中忽略了流动噪声的影响。为了满足市场需求,研究者在一维计算流体力学模型的基础上提出了一个具有可靠准确度的简化模型,相对标准化模型而言该模型能节省超过90%的执行时间。 关键字消声器排气噪声优化设计瞬态声学性能 1 引言 汽车排气消声器广泛用于减小汽车发动机及汽车其他主要部位产生的噪声。一般而言,消声器的设计应该满足以下两个条件:(1)能够衰减高频噪声,这是消声器的最基本要求。排气消声器应该有特定的消声频率范围,尤其是低频率范围,因为我们都知道大部分的噪声被限制在发动机的转动频率和它的前几阶范围内。(2)最小背压,背压代表施加在发动机排气消声器上额外的静压力。最小背压应该保持在最低限度内,因为大的背压会降低容积效率和提高耗油量。对消声器而言,这两个重要的设计要求往往是互相冲突的。对于给定的消声器,利用实验的方法,根据距离尾管500毫米且与尾管轴向成45°处声压等级相近的排气噪声来评估其噪声衰减性能,利用压力传感器可以很容易地检测背压。 近几十年来,在预测排气噪声方面广泛应用的方法有:传递矩阵法、有限元法、边界元法和计算流体力学法。其中最常用的方法是传递矩阵法(也叫四端网络法)。该方

本科毕业设计外文翻译

Section 3 Design philosophy, design method and earth pressures 3.1 Design philosophy 3.1.1 General The design of earth retaining structures requires consideration of the interaction between the ground and the structure. It requires the performance of two sets of calculations: 1)a set of equilibrium calculations to determine the overall proportions and the geometry of the structure necessary to achieve equilibrium under the relevant earth pressures and forces; 2)structural design calculations to determine the size and properties of thestructural sections necessary to resist the bending moments and shear forces determined from the equilibrium calculations. Both sets of calculations are carried out for specific design situations (see 3.2.2) in accordance with the principles of limit state design. The selected design situations should be sufficiently Severe and varied so as to encompass all reasonable conditions which can be foreseen during the period of construction and the life of the retaining wall. 3.1.2 Limit state design This code of practice adopts the philosophy of limit state design. This philosophy does not impose upon the designer any special requirements as to the manner in which the safety and stability of the retaining wall may be achieved, whether by overall factors of safety, or partial factors of safety, or by other measures. Limit states (see 1.3.13) are classified into: a) ultimate limit states (see 3.1.3); b) serviceability limit states (see 3.1.4). Typical ultimate limit states are depicted in figure 3. Rupture states which are reached before collapse occurs are, for simplicity, also classified and

毕业设计外文翻译原文

编号: 毕业设计(论文)外文翻译 (原文) 院(系):应用科技学院 专业:机械设计制造及其自动化 学生姓名:邓瑜 学号:0501120501 指导教师单位:应用科技学院 姓名:黄小能 职称: 2009年 5 月20 日

The Injection Molding The Introduction of Molds The mold is at the core of a plastic manufacturing process because its cavity gives a part its shape. This makes the mold at least as critical-and many cases more so-for the quality of the end product as, for example, the plasticiting unit or other components of the processing equipment. Mold Material Depending on the processing parameters for the various processing methods as well as the length of the production run, the number of finished products to be produced, molds for plastics processing must satisfy a great variety of requirements. It is therefore not surprising that molds can be made from a very broad spectrum of materials, including-from a technical standpoint-such exotic materials as paper matched and plaster. However, because most processes require high pressures, often combined with high temperatures, metals still represent by far the most important material group, with steel being the predominant metal. It is interesting in this regard that, in many cases, the selection of the mold material is not only a question of material properties and an optimum price-to-performance ratio but also that the methods used to produce the mold, and thus the entire design, can be influenced. A typical example can be seen in the choice between cast metal molds, with their very different cooling systems, compared to machined molds. In addition, the production technique can also have an effect; for instance, it is often reported that, for the sake of simplicity, a prototype mold is frequently machined from solid stock with the aid of the latest technology such as computer-aided (CAD) and computer-integrated manufacturing (CIM). In contrast to the previously used methods based on the use of patterns, the use of CAD and CAM often represents the more economical solution today, not only because this production capability is available pin-house but also because with any other technique an order would have to be placed with an outside supplier. Overall, although high-grade materials are often used, as a rule standard materials are used in mold making. New, state-of-the art (high-performance) materials, such as ceramics, for instance, are almost completely absent. This may be related to the fact that their desirable characteristics, such as constant properties up to very high temperatures, are not required on molds, whereas their negative characteristics, e. g. low tensile strength and poor thermal conductivity, have a clearly related to ceramics, such as sintered material, is found in mild making only to a limited degree. This refers less to the modern materials and components

抛光瓷砖毕业设计外文文献翻译

毕业设计外文资料翻译 题目POLISHING OF CERAMIC TILES 抛光瓷砖 学院材料科学与工程 专业复合材料与工程 班级 学生 学号 指导教师 二〇一二年三月二十八日

MATERIALS AND MANUFACTURING PROCESSES, 17(3), 401–413 (2002) POLISHING OF CERAMIC TILES C. Y. Wang,* X. Wei, and H. Yuan Institute of Manufacturing Technology, Guangdong University ofTechnology, Guangzhou 510090, P.R. China ABSTRACT Grinding and polishing are important steps in the production of decorative vitreous ceramic tiles. Different combinations of finishing wheels and polishing wheels are tested to optimize their selection. The results show that the surface glossiness depends not only on the surface quality before machining, but also on the characteristics of the ceramic tiles as well as the performance of grinding and polishing wheels. The performance of the polishing wheel is the key for a good final surface quality. The surface glossiness after finishing must be above 208 in order to get higher polishing quality because finishing will limit the maximum surface glossiness by polishing. The optimized combination of grinding and polishing wheels for all the steps will achieve shorter machining times and better surface quality. No obvious relationships are found between the hardness of ceramic tiles and surface quality or the wear of grinding wheels; therefore, the hardness of the ceramic tile cannot be used for evaluating its machinability. Key Words: Ceramic tiles; Grinding wheel; Polishing wheel

相关主题
文本预览
相关文档 最新文档