Abstract

Design models and code are products of different stages in the software development process. The conformance of design models and code plays an important role in software development process, also is a key principle to improve the maintainability of the software. Currently, the conformance on different level of abstraction is verified mostly by manual inspection. In order to avoid the errors and omissions, we propose a conformance verification approach between design models and code based on abstract syntax tree. The approach verifies the conformance by comparing the class diagram, sequence diagram with the code. Firstly, we discuss how to extract and recover model information from the abstract syntax tree, then give the conformance verification approach between class diagram, sequence diagram and code, finally implement a semi-automatic verification tool based on the approach.

Highlights

  • Traditional object-oriented software development process is divided into several stages including requirement analysis, software design and implementation

  • The class model corresponding to code is obtained by analyzing the abstract syntax tree of the code, and the interaction information is organized into a tree structure, called message tree, and the conformance verification between class diagram, sequence diagram and code is carried out by comparing the class model, the tree structure with the source code

  • Step2: After the implementation class model is extracted from the source code, it is compared with the design class diagram

Read more

Summary

Introduction

Traditional object-oriented software development process is divided into several stages including requirement analysis, software design and implementation. As a result, corresponding software products are requirement model, design models and code. Ensuring conformance of these products is an important principle in software development life. There are many factors which may reduce the conformance between design models and the code. The code is changed while the corresponding design model is not updated. There have been some tools on consistent maintenance between design models and code. These tools are mostly based on formal language [1]. Conformance verification between UML design models and source code is accomplished by manual inspection. It will be better to carry out the conformance verification depends on the support of the computer aided tools

Conformance verification based on abstract syntax tree
Abstract sytax tree of code
Conformance verification between class diagram and code
Conformance verification between sequence diagram and code
A prototype tool
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call