基于程序切片技术的可复用功能模块抽取研究

 2022-02-14 09:02

论文总字数:25959字

摘 要

关键词 IV

Abstract V

Key words V

第一章 绪 论 1

1.1 研究背景 1

1.2 研究目的和意义 1

1.3 研究内容 1

1.4 课题来源 2

1.5论文组织结构 2

第二章 程序切片技术 3

2.1 程序切片技术的概述 3

2.2 切片技术的应用 4

2.3 Java程序切片工具JavaSlicer介绍 5

2.3.1 系统需求描述 5

2.3.2 架构设计 5

2.3.3 Java系统依赖图(JSysDG) 5

2.3.4 Java系统依赖图切片算法:两步遍历切片算法(Two-Pass) 6

2.3.5 存储方案 6

第三章 基于程序切片的可复用功能模块提取 8

3.1 概要设计 8

3.2 技术方案............................. 8

3.2.1 目标................................. 8

3.2.2 概念及公式.............................. 8

3.2.3 步骤 15

第四章 银行系统的可复用功能模块提取和分析 16

4.1 工具的开发与运行环境 16

4.2 测试用例的介绍 16

4.3 后向切片................................... 17

4.4 度量指标结果截图 19

4.5 可复用性分析................................... 19

第五章 结束语 25

5.1 本文的主要工作 25

5.2 展望与未来 25

致谢 26

参考文献 27

附录 28

基于程序切片的可复用功能模块提取技术

71112108 任旸

指导教师 李必信

摘 要

软件系统的范畴越来越大,软件维护工作也将越来越困难和复杂。软件开发的精力都花在旧系统的维护,而不是新系统的重新开发,在任何一种新软件的开发项目中,通常都有需要或希望重用以前项目中开发的功能。很多情况下,之前的应用程序没有考虑到复用,使它很难再利用于一个新的应用程序。

软件切片从一个程序的子集出发,将源程序代码减少为扔能产生源程序行为的最小规模。程序切片技术可以通过去除某些部分的程序,把注意力汇集在那些感兴趣的部分程序。程序切片技术已被应用到许多方面,包括测试、重用、维护和演化。本文主要介绍了程序切片的应用。

本毕业设计要求将程序切片技术应用于提取复用功能模块中,达到基于程序切片的可复用功能模块提取的目的,是程序切片技术的一种应用。本文利用切片工具JavaSlicer来实现基于程序切片的可复用功能模块提取。首先分析给定程序系统中的可复用功能模块接口及其依赖模块,然后利用JavaSlicer切片工具根据功能接口(API)进行后向程序切片,提取可复用功能模块,而后对其通过度量的四个指标(群聚度、复杂度、耦合度、内聚度)进行可复用性验证,并实现了自动化的度量工具。

关键词:程序切片、功能复用、群聚度、复杂度、耦合度、内聚度

Extraction Technology of Reusable Functional module Based on Program Slicing

71112108 Yang Ren

Supervised by Bixin Li

Abstract

The scalability of system software is larger and larger, and the software maintenance work will be more and more complex. The effort of software development is mostly spent on the maintenance of old system rather than new system. The developer always want to reuse previous projects in any kind of new software projects. In many cases, the design of application does not take reusing into account, so that it is very difficult to use in a new application.

Program slicing is start from subset, program slicing may reduced the program to the smallest form that can still produce the former behavior. Program slicing make us pay attention to the part of the program that we interested in by moving unrelated statement. Slicing technique has been applied to many aspects, including testing, reusing, maintenance, evolution, etc. This paper mainly introduces the application of program slicing.

The theme of this paper is extracting multiplexing function module based on program slicing which is a kind of application of program slicing technique. In this paper, I use the slicing tool “JavaSlicer” to implement program slicing of functional module extraction. First, Analyzing the system reusable function module interface and its dependency module. Secondly, use JavaSlicer slicing tool to extract reusable function module in term of function interface (API). Finally, check the reusing degree by measurement of the four indicators, including cluster degree, complexity. coupling, cohesion, and I also implement a automatic metrics tools .朗读

显示对应的拉丁字符的拼音

剩余内容已隐藏,请支付后下载全文,论文总字数:25959字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;